瀏覽代碼

成员所在团队列表

guhongwei 3 年之前
父節點
當前提交
83d8a08462
共有 3 個文件被更改,包括 16 次插入0 次删除
  1. 8 0
      app/controller/.team.js
  2. 7 0
      app/service/team.js
  3. 1 0
      app/z_router/team.js

+ 8 - 0
app/controller/.team.js

@@ -69,4 +69,12 @@ module.exports = {
     },
     service: "leaves",
   },
+  userteam: {
+    parameters: {
+      query: {
+        user_id: "user_id",
+      },
+    },
+    service: "userteams",
+  },
 };

+ 7 - 0
app/service/team.js

@@ -10,6 +10,7 @@ class TeamService extends CrudService {
     super(ctx, 'team');
     this.model = this.ctx.model.Team;
   }
+  // 用户退出团队
   async leaves({ team_id, user_id } = {}) {
     const res = await this.model.findById(team_id);
     if (!res) throw new BusinessError(ErrorCode.DATA_NOT_EXIST);
@@ -17,6 +18,12 @@ class TeamService extends CrudService {
     res.members = members;
     await res.save();
   }
+  // 用户所在团队列表
+  async userteams({ user_id } = {}) {
+    const res = await this.model.find({ members: { $elemMatch: { id: user_id } } });
+    if (!res) throw new BusinessError(ErrorCode.DATA_NOT_EXIST);
+    return res;
+  }
 }
 
 module.exports = TeamService;

+ 1 - 0
app/z_router/team.js

@@ -4,6 +4,7 @@ const rkey = 'team';
 const ckey = 'team';
 const keyZh = '团队';
 const routes = [
+  { method: 'get', path: `${rkey}/userteams`, controller: `${ckey}.userteam`, name: `${ckey}Userteam`, zh: `${keyZh}用戶团队` },
   { method: 'get', path: `${rkey}/leaves`, controller: `${ckey}.leave`, name: `${ckey}Leave`, zh: `${keyZh}退出团队` },
   { method: 'get', path: `${rkey}`, controller: `${ckey}.index`, name: `${ckey}Query`, zh: `${keyZh}列表查询` },
   { method: 'get', path: `${rkey}/:id`, controller: `${ckey}.show`, name: `${ckey}Show`, zh: `${keyZh}查询` },