ration_controller.js 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. /**
  2. * Created by jimiz on 2017/4/9.
  3. */
  4. var rationData = require('../models/ration');
  5. var ration_glj_facade = require('../../ration_glj/facade/ration_glj_facade');
  6. var ration_facade = require('../facade/ration_facade');
  7. let logger = require("../../../logs/log_helper").logger;
  8. let controller = {
  9. insertGLJAsRation:async function (req){
  10. let data = req.body.data;
  11. data = JSON.parse(data);
  12. return await ration_glj_facade.insertGLJAsRation(data);
  13. },
  14. replaceRations:async function (req) {
  15. let data = req.body.data;
  16. data = JSON.parse(data);
  17. let userID = req.session.sessionUser.id;
  18. return await ration_facade.replaceRations(userID,data,req.session.sessionCompilation);
  19. },
  20. addNewRation:async function(req) {
  21. let data = req.body.data;
  22. if(typeof data === 'object'){
  23. data = JSON.stringify(data);
  24. }
  25. data = JSON.parse(data);
  26. return await ration_facade.addNewRation(data,req.session.sessionCompilation);
  27. },
  28. addMultiRation: async function (req) {
  29. let data = req.body.data;
  30. if(typeof data === 'object'){
  31. data = JSON.stringify(data);
  32. }
  33. data = JSON.parse(data);
  34. return await ration_facade.addMultiRation(data.newDatas,req.session.sessionCompilation);
  35. }
  36. };
  37. //统一回调函数
  38. let callback = function(req, res, err, message, data){
  39. res.json({error: err, message: message, data: data});
  40. };
  41. module.exports = {
  42. getData: function(req, res){
  43. var data = JSON.parse(req.body.data);
  44. rationData.getData(data.projectId, function(err, message, rationList){
  45. if (err === 0) {
  46. callback(req, res, err, message, rationList);
  47. } else {
  48. callback(req, res, err, message, null);
  49. }
  50. });
  51. },
  52. getItemTemplate: function(req, res){
  53. //var data = JSON.parse(req.body.data);
  54. rationData.getItemTemplate(function(err, message, rationItem){
  55. if (billsItem) {
  56. callback(req, res, err, message, rationItem);
  57. } else {
  58. callback(req, res, err, message, null);
  59. }
  60. });
  61. },
  62. allocIDs: function(req, res){
  63. rationData.allocIDs(function(err, message, data){
  64. if (err) {
  65. callback(req, res, err, message, data);
  66. } else {
  67. callback(req, res, err, message, null);
  68. }
  69. });
  70. },
  71. action:async function(req,res){//自动跳转到URL对应的controller方法
  72. let result={
  73. error:0
  74. }
  75. try {
  76. let functionName = req.url.replace(/\//g,"");
  77. result.data = controller[functionName]?await controller[functionName](req):"";
  78. }catch (err){
  79. logger.err(err);
  80. result.error=1;
  81. result.message = err.message;
  82. }
  83. res.json(result);
  84. }
  85. };