cld_controller.js 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  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. //获取编办列表
  56. let compilationModel = new CompilationModel();
  57. let compilationList = JSON.parse(JSON.stringify(await compilationModel.getList()));
  58. if (userData.upgrade_list !== undefined) {
  59. let userUpgradeList = JSON.parse(JSON.stringify(userData.upgrade_list));
  60. for (let i in userUpgradeList) {
  61. let oneCompilationIndex = await compilationList.findIndex(function (item) {
  62. return item._id === userUpgradeList[i].compilationID;
  63. });
  64. if (oneCompilationIndex !== -1) {
  65. compilationList[oneCompilationIndex].isUpgrade = userUpgradeList[i].isUpgrade;
  66. }
  67. }
  68. }
  69. response.json({error: 0, msg: 'success', data: { userInfo: userData, compilationList: compilationList }});
  70. } catch (err) {
  71. response.json({error: 1, msg: err});
  72. }
  73. }
  74. }
  75. export default CLDController;