familyController.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. 'use strict';
  2. const Controller = require('../extend/baseController');
  3. class FamilyController extends Controller {
  4. tag() {
  5. return this.ctx.service.familyService;
  6. }
  7. async bindList() {
  8. const { ctx } = this;
  9. const user = ctx.user;
  10. const level = user.dept.level;
  11. // 判断当前的dept权限 和传入的5级权限 不能超过当前人dept
  12. if (!ctx.query.dept1) {
  13. delete ctx.query.dept1;
  14. }
  15. if (!ctx.query.dept2) {
  16. delete ctx.query.dept2;
  17. }
  18. if (!ctx.query.dept3) {
  19. delete ctx.query.dept3;
  20. }
  21. if (!ctx.query.dept4) {
  22. delete ctx.query.dept4;
  23. }
  24. if (!ctx.query.dept5) {
  25. delete ctx.query.dept5;
  26. }
  27. delete ctx.query.deptId;
  28. // admin的dept 存在冲突,所以它不需要结合
  29. if (user.role._id != this.app.config.defaultAdminRoleId) {
  30. ctx.query['dept' + level] = user.dept._id;
  31. }
  32. // 判断如果当前是采集员看数据的话 只能看他自己
  33. if (user.role._id + '' == this.app.config.defaultUserRoleId) {
  34. ctx.query.loginName = user.loginName;
  35. }
  36. const result = await this.tag().bindList(ctx.query);
  37. ctx.success(result);
  38. }
  39. }
  40. module.exports = FamilyController;