material_replace_controller.js 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  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 stdBills = await materialFacade.getStdBillsByLib(billsLibId);
  37. let randerData = {
  38. title:'材料替换库',
  39. mainURL:'/materialReplace/main',
  40. libName:materialLib.name,
  41. userAccount: request.session.managerData.username,
  42. userID: request.session.managerData.userID,
  43. billsList:JSON.stringify(billsList),
  44. billsLibId:billsLibId,
  45. gljLibID:gljLib.ID,
  46. libID:libID,
  47. //stdBills:JSON.stringify(stdBills),
  48. LicenseKey:config.getLicenseKey(process.env.NODE_ENV),
  49. layout: 'maintain/common/html/edit_layout'
  50. };
  51. response.render("maintain/material_replace_lib/html/edit", randerData);
  52. }else {
  53. response.redirect(request.headers.referer);
  54. }
  55. }
  56. async findLib(request, response){
  57. let result={
  58. error:0
  59. };
  60. try {
  61. let data = request.body.data;
  62. data = JSON.parse(data);
  63. let conditions={};
  64. if(data.compilationID) conditions.compilationId = data.compilationID;
  65. if(data.billLibID) conditions.billsLibId = data.billLibID;
  66. if(data.ID) conditions.ID = data.ID;
  67. let resultData = await materialFacade.findByCondition(conditions);
  68. result.data=resultData;
  69. }catch (err){
  70. console.log(err);
  71. result.error=1;
  72. result.message = err.message;
  73. }
  74. response.json(result);
  75. }
  76. async addLib(request, response){
  77. try {
  78. await materialFacade.addLib(request.body);
  79. }catch (error) {
  80. console.log(error);
  81. }
  82. response.redirect(request.headers.referer);
  83. }
  84. async saveLib(request, response){
  85. let result={
  86. error:0
  87. };
  88. try {
  89. let data = request.body.data;
  90. data = JSON.parse(data);
  91. let resultData= await materialFacade.saveLib(data);
  92. result.data=resultData;
  93. }catch (err){
  94. console.log(err);
  95. result.error=1;
  96. result.message = err.message;
  97. }
  98. response.json(result);
  99. }
  100. async deleteLibByID(request,response){
  101. let result={
  102. error:0
  103. };
  104. try {
  105. let data = request.body.data;
  106. data = JSON.parse(data);
  107. let resultData= await materialFacade.deleteLibByID(data.ID);
  108. result.data=resultData;
  109. }catch (err){
  110. console.log(err);
  111. result.error=1;
  112. result.message = err.message;
  113. }
  114. response.json(result);
  115. }
  116. async saveBills(request,response){
  117. let result={
  118. error:0
  119. };
  120. try {
  121. let data = request.body.data;
  122. data = JSON.parse(data);
  123. let resultData= await materialFacade.saveBills(data);
  124. result.data=resultData;
  125. }catch (err){
  126. console.log(err);
  127. result.error=1;
  128. result.message = err.message;
  129. }
  130. response.json(result);
  131. }
  132. async saveMaterial(request,response){
  133. let result={
  134. error:0
  135. };
  136. try {
  137. let data = request.body.data;
  138. data = JSON.parse(data);
  139. let resultData= await materialFacade.saveMaterial(data);
  140. result.data=resultData;
  141. }catch (err){
  142. console.log(err);
  143. result.error=1;
  144. result.message = err.message;
  145. }
  146. response.json(result);
  147. }
  148. async findMaterial (request,response){
  149. let result={
  150. error:0
  151. };
  152. try {
  153. let data = request.body.data;
  154. data = JSON.parse(data);
  155. let resultData = await materialFacade.getMaterialByBillsID(data.billsItemID);
  156. result.data=resultData;
  157. }catch (err){
  158. console.log(err);
  159. result.error=1;
  160. result.message = err.message;
  161. }
  162. response.json(result);
  163. }
  164. }
  165. export default ReplaceController;