Explorar o código

添加学生/教练由学校创建的处理

lrf %!s(int64=2) %!d(string=hai) anos
pai
achega
07c09f0d0c

+ 2 - 2
app/controller/user/config/.coach.js

@@ -1,6 +1,6 @@
 module.exports = {
   create: {
-    requestBody: ['name', 'icon', 'card', 'gender', 'age', 'phone', 'major', 'level', 'brief', 'honor', 'exp', 'user_id'],
+    requestBody: ['name', 'icon', 'card', 'gender', 'age', 'phone', 'major', 'level', 'brief', 'honor', 'exp', 'user_id', 'school_id'],
   },
   destroy: {
     params: ['!id'],
@@ -8,7 +8,7 @@ module.exports = {
   },
   update: {
     params: ['!id'],
-    requestBody: ['name', 'icon', 'card', 'gender', 'age', 'phone', 'major', 'level', 'brief', 'honor', 'exp', 'user_id'],
+    requestBody: ['name', 'icon', 'card', 'gender', 'age', 'phone', 'major', 'level', 'brief', 'honor', 'exp', 'user_id', 'school_id'],
   },
   show: {
     parameters: {

+ 2 - 2
app/controller/user/config/.student.js

@@ -1,6 +1,6 @@
 module.exports = {
   create: {
-    requestBody: ['name', 'icon', 'gender', 'age', 'phone', 'level', 'brief', 'honer', 'exp', 'user_id'],
+    requestBody: ['name', 'icon', 'gender', 'age', 'phone', 'level', 'brief', 'honer', 'exp', 'user_id', 'school_id'],
   },
   destroy: {
     params: ['!id'],
@@ -8,7 +8,7 @@ module.exports = {
   },
   update: {
     params: ['!id'],
-    requestBody: ['name', 'icon', 'gender', 'age', 'phone', 'level', 'brief', 'honer', 'exp', 'user_id'],
+    requestBody: ['name', 'icon', 'gender', 'age', 'phone', 'level', 'brief', 'honer', 'exp', 'user_id', 'school_id'],
   },
   show: {
     parameters: {

+ 9 - 0
app/service/user/coach.js

@@ -9,6 +9,15 @@ class CoachService extends CrudService {
   constructor(ctx) {
     super(ctx, 'coach');
     this.model = this.ctx.model.User.Coach;
+    this.rcsModel = this.ctx.model.Relation.RelationCoachSchool;
+  }
+
+  async afterCreate(body, data) {
+    if (!_.get(body, 'school_id')) return data;
+    const { _id: coach_id } = data;
+    const obj = { school_id: _.get(body, 'school_id'), coach_id };
+    await this.rcsModel.create(obj);
+    return data;
   }
 }
 

+ 8 - 1
app/service/user/student.js

@@ -9,8 +9,15 @@ class StudentService extends CrudService {
   constructor(ctx) {
     super(ctx, 'student');
     this.model = this.ctx.model.User.Student;
+    this.rssModel = this.ctx.model.Relation.RelationStudentSchool;
+  }
+  async afterCreate(body, data) {
+    if (!_.get(body, 'school_id')) return data;
+    const { _id: student_id } = data;
+    const obj = { school_id: _.get(body, 'school_id'), student_id };
+    await this.rssModel.create(obj);
+    return data;
   }
-
 }
 
 module.exports = StudentService;

+ 1 - 1
package.json

@@ -14,7 +14,7 @@
     "egg-scripts": "^2.11.0",
     "lodash": "^4.17.21",
     "moment": "^2.29.1",
-    "naf-framework-mongoose-free": "^0.0.24"
+    "naf-framework-mongoose-free": "^0.0.26"
   },
   "devDependencies": {
     "autod": "^3.0.1",