spss_controller.js 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. 'use strict';
  2. /**
  3. * 标段对比 控制器
  4. *
  5. * @author Mai
  6. * @date 2020/2/21
  7. * @version
  8. */
  9. const measureType = require('../const/tender').measureType;
  10. module.exports = app => {
  11. class SpssController extends app.BaseController {
  12. /**
  13. * 构造函数
  14. *
  15. * @param {Object} ctx - egg全局context
  16. * @return {void}
  17. */
  18. constructor(ctx) {
  19. super(ctx);
  20. ctx.showProject = true;
  21. }
  22. /**
  23. * 台账 对比 页面
  24. *
  25. * @param {Object} ctx - egg全局变量
  26. * @return {void}
  27. */
  28. async compareTz(ctx) {
  29. try {
  30. const renderData = {
  31. jsFiles: this.app.jsFiles.common.concat(this.app.jsFiles.compare.tz)
  32. }
  33. await this.layout('spss/compare_tz.ejs', renderData, 'spss/compare_tz_modal.ejs');
  34. } catch (err) {
  35. ctx.helper.log(err);
  36. }
  37. }
  38. async loadCompareTz(ctx) {
  39. try {
  40. const data = JSON.parse(ctx.request.body.data);
  41. const responseData = {err: 0, msg: '', data: {}};
  42. const tender1 = await ctx.service.tender.getTender(data.tid1);
  43. responseData.data.tender1 = {
  44. name: tender1.name,
  45. bills: await ctx.service.ledger.getData(data.tid1),
  46. pos: tender1.measure_type === measureType.tz.value
  47. ? await ctx.service.pos.getPosData({tid: data.tid1}) : []
  48. };
  49. const tender2 = await ctx.service.tender.getTender(data.tid2);
  50. responseData.data.tender2 = {
  51. name: tender2.name,
  52. bills: await ctx.service.ledger.getData(data.tid2),
  53. pos: tender2.measure_type === measureType.tz.value
  54. ? await ctx.service.pos.getPosData({tid: data.tid2}) : []
  55. };
  56. ctx.body = responseData;
  57. } catch (err) {
  58. ctx.helper.log(err);
  59. ctx.body = this.ajaxErrorBody(err, '查询数据错误');
  60. }
  61. }
  62. /**
  63. * 期计量 对比 页面
  64. *
  65. * @param {Object} ctx - egg全局变量
  66. * @return {void}
  67. */
  68. async compareStage(ctx) {
  69. try {
  70. await this.layout('spss/compare_stage.ejs', {});
  71. } catch (err) {
  72. ctx.helper.log(err);
  73. }
  74. }
  75. /**
  76. * 台账 汇总 页面
  77. *
  78. * @param {Object} ctx - egg全局变量
  79. * @return {void}
  80. */
  81. async gatherTz(ctx) {
  82. try {
  83. await this.layout('spss/compare_stage.ejs', {});
  84. } catch (err) {
  85. ctx.helper.log(err);
  86. }
  87. }
  88. /**
  89. * 期计量 汇总 页面
  90. *
  91. * @param {Object} ctx - egg全局变量
  92. * @return {void}
  93. */
  94. async gatherStage(ctx) {
  95. try {
  96. await this.layout('spss/compare_stage.ejs', {});
  97. } catch (err) {
  98. ctx.helper.log(err);
  99. }
  100. }
  101. }
  102. return SpssController;
  103. };