material_replace_controller.js 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. /**
  2. * Created by zhang on 2018/8/22.
  3. */
  4. import BaseController from "../../common/base/base_controller";
  5. import materialFacade from "../facade/material_replace_facade";
  6. let config = require("../../../config/config.js");
  7. class ReplaceController extends BaseController{
  8. /**
  9. * 材料替换库页面
  10. *
  11. * @param {object} request
  12. * @param {object} response
  13. * @return {void}
  14. */
  15. async main(request, response) {
  16. let materialLibs = await materialFacade.findByCondition({},null,false);
  17. let randerData = {
  18. title:'材料替换库',
  19. userAccount: request.session.managerData.username,
  20. userID: request.session.managerData.userID,
  21. materialLibs:materialLibs,
  22. layout: 'maintain/common/html/layout'
  23. };
  24. response.render("maintain/material_replace_lib/html/main", randerData);
  25. }
  26. async edit(request,response){
  27. //先取出替换库信息:
  28. let libID = request.params.libID;
  29. let materialLib = await materialFacade.findByCondition({'ID':libID});
  30. if(materialLib){
  31. let billsLibId = materialLib.billsLibId;
  32. let compilationId = materialLib.compilationId;
  33. let gljLib = await materialFacade.findGLJLibByComID(compilationId);
  34. let billsList = await materialFacade.findBillsByLibID(libID);
  35. //let templateDatas = await materialFacade.getTemplateDatasByLibID(libID);
  36. let randerData = {
  37. title:'材料替换库',
  38. mainURL:'/materialReplace/main',
  39. libName:materialLib.name,
  40. userAccount: request.session.managerData.username,
  41. userID: request.session.managerData.userID,
  42. billsList:JSON.stringify(billsList),
  43. billsLibId:billsLibId,
  44. gljLibID:gljLib.ID,
  45. libID:libID,
  46. LicenseKey:config.getLicenseKey(process.env.NODE_ENV),
  47. layout: 'maintain/common/html/edit_layout'
  48. };
  49. response.render("maintain/material_replace_lib/html/edit", randerData);
  50. }else {
  51. response.redirect(request.headers.referer);
  52. }
  53. }
  54. async findLib(request, response){
  55. let result={
  56. error:0
  57. };
  58. try {
  59. let data = request.body.data;
  60. data = JSON.parse(data);
  61. let conditions={};
  62. if(data.compilationID) conditions.compilationId = data.compilationID;
  63. if(data.billLibID) conditions.billsLibId = data.billLibID;
  64. if(data.ID) conditions.ID = data.ID;
  65. let resultData = await materialFacade.findByCondition(conditions);
  66. result.data=resultData;
  67. }catch (err){
  68. console.log(err);
  69. result.error=1;
  70. result.message = err.message;
  71. }
  72. response.json(result);
  73. }
  74. async addLib(request, response){
  75. try {
  76. await materialFacade.addLib(request.body);
  77. }catch (error) {
  78. console.log(error);
  79. }
  80. response.redirect(request.headers.referer);
  81. }
  82. async saveLib(request, response){
  83. let result={
  84. error:0
  85. };
  86. try {
  87. let data = request.body.data;
  88. data = JSON.parse(data);
  89. let resultData= await materialFacade.saveLib(data);
  90. result.data=resultData;
  91. }catch (err){
  92. console.log(err);
  93. result.error=1;
  94. result.message = err.message;
  95. }
  96. response.json(result);
  97. }
  98. async deleteLibByID(request,response){
  99. let result={
  100. error:0
  101. };
  102. try {
  103. let data = request.body.data;
  104. data = JSON.parse(data);
  105. let resultData= await materialFacade.deleteLibByID(data.ID);
  106. result.data=resultData;
  107. }catch (err){
  108. console.log(err);
  109. result.error=1;
  110. result.message = err.message;
  111. }
  112. response.json(result);
  113. }
  114. async saveBills(request,response){
  115. let result={
  116. error:0
  117. };
  118. try {
  119. let data = request.body.data;
  120. data = JSON.parse(data);
  121. let resultData= await materialFacade.saveBills(data);
  122. result.data=resultData;
  123. }catch (err){
  124. console.log(err);
  125. result.error=1;
  126. result.message = err.message;
  127. }
  128. response.json(result);
  129. }
  130. async saveMaterial(request,response){
  131. let result={
  132. error:0
  133. };
  134. try {
  135. let data = request.body.data;
  136. data = JSON.parse(data);
  137. let resultData= await materialFacade.saveMaterial(data);
  138. result.data=resultData;
  139. }catch (err){
  140. console.log(err);
  141. result.error=1;
  142. result.message = err.message;
  143. }
  144. response.json(result);
  145. }
  146. async findMaterial (request,response){
  147. let result={
  148. error:0
  149. };
  150. try {
  151. let data = request.body.data;
  152. data = JSON.parse(data);
  153. let resultData = await materialFacade.getMaterialByBillsID(data.billsItemID);
  154. result.data=resultData;
  155. }catch (err){
  156. console.log(err);
  157. result.error=1;
  158. result.message = err.message;
  159. }
  160. response.json(result);
  161. }
  162. }
  163. export default ReplaceController;