cld_controller.js 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. 'use strict';
  2. /**
  3. * CLD接口相关控制器
  4. *
  5. * @author EllisRan.
  6. * @date 2018/9/25
  7. * @version
  8. */
  9. import CLDModel from "../models/cld_model";
  10. import UserModel from "../models/user_model"
  11. import CompilationModel from "../models/compilation_model";
  12. class CLDController {
  13. /**
  14. * 获取cld办事处人员信息
  15. *
  16. * @param request
  17. * @param reponse
  18. * @return {Promise.<void>}
  19. */
  20. async getCategoryStaff(request, response) {
  21. let category = request.query.category;
  22. try {
  23. let cldModel = new CLDModel();
  24. let result = await cldModel.getCategoryStaff(category);
  25. response.json({error: 0, msg: 'success', data: JSON.parse(result)});
  26. } catch (err) {
  27. response.json({error: 1, msg: err});
  28. }
  29. }
  30. /**
  31. * cld 获取建筑用户和编办接口
  32. *
  33. * @param request
  34. * @param response
  35. * @return {Promise.<void>}
  36. */
  37. async getUsersAndCompilationList(request, response) {
  38. let mobile = request.query.mobile;
  39. let ssoID = request.query.ssoID;
  40. try {
  41. //获取用户信息
  42. if (mobile === undefined && ssoID === undefined) {
  43. throw '传参有误';
  44. }
  45. let userModel = new UserModel();
  46. let userData = '';
  47. if (mobile !== undefined) {
  48. userData = await userModel.findDataByMobile(mobile);
  49. } else {
  50. userData = await userModel.findDataBySsoId(ssoID);
  51. }
  52. if (userData === null || userData === '') {
  53. throw '不存在该建筑用户';
  54. }
  55. userData = JSON.parse(JSON.stringify(userData));
  56. userData.company_scale = userData.company_scale === null || userData.company_scale === undefined ? '' : userModel.companyScale[userData.company_scale] + '人';
  57. userData.company_type = userData.company_type === null || userData.company_type === undefined ? '' : userModel.companyType[userData.company_type];
  58. userData.province = userModel.province[userData.province];
  59. //获取编办列表
  60. let compilationModel = new CompilationModel();
  61. let compilationList = JSON.parse(JSON.stringify(await compilationModel.getList()));
  62. if (userData.upgrade_list !== undefined) {
  63. let userUpgradeList = userData.upgrade_list;
  64. for (let i in userUpgradeList) {
  65. let oneCompilationIndex = await compilationList.findIndex(function (item) {
  66. return item._id === userUpgradeList[i].compilationID;
  67. });
  68. if (oneCompilationIndex !== -1) {
  69. compilationList[oneCompilationIndex].isUpgrade = userUpgradeList[i].isUpgrade;
  70. }
  71. }
  72. }
  73. response.json({error: 0, msg: 'success', data: { userInfo: userData, compilationList: compilationList }});
  74. } catch (err) {
  75. response.json({error: 1, msg: err});
  76. }
  77. }
  78. }
  79. export default CLDController;