MesWarehouseRefundController.java 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. package com.jeesite.modules.mes.web;
  2. import java.util.List;
  3. import javax.servlet.http.HttpServletRequest;
  4. import javax.servlet.http.HttpServletResponse;
  5. import com.alibaba.fastjson.JSON;
  6. import com.jeesite.common.lang.DateUtils;
  7. import com.jeesite.common.utils.excel.ExcelExport;
  8. import com.jeesite.modules.mes.entity.*;
  9. import com.jeesite.modules.mes.resp.CommonResp;
  10. import org.apache.shiro.authz.annotation.RequiresPermissions;
  11. import org.springframework.beans.factory.annotation.Autowired;
  12. import org.springframework.stereotype.Controller;
  13. import org.springframework.ui.Model;
  14. import org.springframework.validation.annotation.Validated;
  15. import org.springframework.web.bind.annotation.ModelAttribute;
  16. import org.springframework.web.bind.annotation.PostMapping;
  17. import org.springframework.web.bind.annotation.RequestMapping;
  18. import org.springframework.web.bind.annotation.ResponseBody;
  19. import com.jeesite.common.config.Global;
  20. import com.jeesite.common.entity.Page;
  21. import com.jeesite.common.web.BaseController;
  22. import com.jeesite.modules.mes.service.MesWarehouseRefundService;
  23. /**
  24. * 退货单Controller
  25. * @author hzd
  26. * @version 2023-06-28
  27. */
  28. @Controller
  29. @RequestMapping(value = "${adminPath}/mes/mesWarehouseRefund")
  30. public class MesWarehouseRefundController extends BaseController {
  31. @Autowired
  32. private MesWarehouseRefundService mesWarehouseRefundService;
  33. /**
  34. * 获取数据
  35. */
  36. @ModelAttribute
  37. public MesWarehouseRefund get(String id, boolean isNewRecord) {
  38. return mesWarehouseRefundService.get(id, isNewRecord);
  39. }
  40. /**
  41. * 查询列表
  42. */
  43. @RequiresPermissions("mes:mesWarehouseRefund:view")
  44. @RequestMapping(value = {"list", ""})
  45. public String list(MesWarehouseRefund mesWarehouseRefund, Model model) {
  46. model.addAttribute("mesWarehouseRefund", mesWarehouseRefund);
  47. return "modules/mes/mesWarehouseRefundList";
  48. }
  49. /**
  50. * 查询列表数据
  51. */
  52. @RequiresPermissions("mes:mesWarehouseRefund:view")
  53. @RequestMapping(value = "listData")
  54. @ResponseBody
  55. public Page<MesWarehouseRefund> listData(MesWarehouseRefund mesWarehouseRefund, HttpServletRequest request, HttpServletResponse response) {
  56. mesWarehouseRefund.setPage(new Page<>(request, response));
  57. Page<MesWarehouseRefund> page = mesWarehouseRefundService.findPage(mesWarehouseRefund);
  58. return page;
  59. }
  60. @RequiresPermissions("mes:mesWarehouseRefund:view")
  61. @RequestMapping(value = {"items", ""})
  62. public String items(MesWarehouseRefund mesWarehouseRefund, Model model) {
  63. model.addAttribute("mesWarehouseRefund", mesWarehouseRefund);
  64. return "modules/mes/mesWarehouseRefundItems";
  65. }
  66. /**
  67. * 查询子表数据
  68. */
  69. @RequiresPermissions("mes:mesWarehouseRefund:view")
  70. @RequestMapping(value = "mesWarehouseRefundItemsListData")
  71. @ResponseBody
  72. public Page<MesWarehouseRefundItems> subListData(MesWarehouseRefundItems mesWarehouseRefundItems, HttpServletRequest request, HttpServletResponse response) {
  73. mesWarehouseRefundItems.setPage(new Page<>(request, response));
  74. Page<MesWarehouseRefundItems> page = mesWarehouseRefundService.findSubPage(mesWarehouseRefundItems);
  75. return page;
  76. }
  77. /**
  78. * 查看编辑表单
  79. */
  80. @RequiresPermissions("mes:mesWarehouseRefund:view")
  81. @RequestMapping(value = "form")
  82. public String form(MesWarehouseRefund mesWarehouseRefund, Model model) {
  83. model.addAttribute("mesWarehouseRefund", mesWarehouseRefund);
  84. return "modules/mes/mesWarehouseRefundForm";
  85. }
  86. @RequiresPermissions("mes:mesWarehouseRefund:view")
  87. @RequestMapping(value = "info")
  88. public String info(MesWarehouseRefund mesWarehouseRefund, Model model) {
  89. model.addAttribute("mesWarehouseRefund", mesWarehouseRefund);
  90. return "modules/mes/mesWarehouseRefundInfo";
  91. }
  92. /**
  93. * 保存数据
  94. */
  95. @RequiresPermissions("mes:mesWarehouseRefund:edit")
  96. @PostMapping(value = "save")
  97. @ResponseBody
  98. public String save(@Validated MesWarehouseRefund mesWarehouseRefund) {
  99. mesWarehouseRefundService.save(mesWarehouseRefund);
  100. return renderResult(Global.TRUE, text("保存退货单成功!"));
  101. }
  102. /**
  103. * 删除数据
  104. */
  105. @RequiresPermissions("mes:mesWarehouseRefund:edit")
  106. @RequestMapping(value = "delete")
  107. @ResponseBody
  108. public String delete(MesWarehouseRefund mesWarehouseRefund) {
  109. mesWarehouseRefundService.delete(mesWarehouseRefund);
  110. return renderResult(Global.TRUE, text("删除退货单成功!"));
  111. }
  112. /**
  113. * 导出数据
  114. */
  115. @RequiresPermissions("mes:mesWarehouseRefund:view")
  116. @RequestMapping(value = "exportData")
  117. public void exportData(MesWarehouseRefundItems mesWarehouseRefundItems, HttpServletResponse response) {
  118. List<MesWarehouseRefundItems> list = mesWarehouseRefundService.findSubList(mesWarehouseRefundItems);
  119. String fileName = "物料退货记录" + DateUtils.getDate("yyyyMMddHHmmss") + ".xlsx";
  120. try(ExcelExport ee = new ExcelExport("物料退货记录", MesWarehouseRefundItems.class)){
  121. ee.setDataList(list).write(response, fileName);
  122. }
  123. }
  124. @RequiresPermissions("mes:mesWarehouseIn:api")
  125. @PostMapping(value = "add")
  126. @ResponseBody
  127. public String add(@Validated MesWarehouseRefund mesWarehouseRefund, HttpServletRequest request) {
  128. // String items = request.getParameter("items");
  129. // if(items.isEmpty()){
  130. // return renderResult(Global.FALSE, text("请选择物料!"));
  131. // }
  132. // List<MesWarehouseRefundItems> list = JSON.parseArray(items,MesWarehouseRefundItems.class);
  133. List<MesWarehouseRefundItems> list = mesWarehouseRefund.getMesWarehouseRefundItemsList();
  134. if(list.size() == 0){
  135. return renderResult(Global.FALSE, text("请选择物料!"));
  136. }
  137. for (int i = 0; i < list.size(); i++) {
  138. if(list.get(i).getWarehouseId().isEmpty()){
  139. return renderResult(Global.FALSE, text("参数错误!"));
  140. }
  141. if(list.get(i).getCount() <= 0){
  142. return renderResult(Global.FALSE, text("物料数量必须大于0"));
  143. }
  144. }
  145. // mesWarehouseRefund.setMesWarehouseRefundItemsList(list);
  146. mesWarehouseRefundService.save(mesWarehouseRefund);
  147. return renderResult(Global.TRUE, text("操作成功!"));
  148. }
  149. @RequiresPermissions("mes:mesWarehouseIn:api")
  150. @RequestMapping(value = "ulist")
  151. @ResponseBody
  152. public CommonResp ulist(MesWarehouseRefund mesWarehouseRefund, HttpServletRequest request, HttpServletResponse response) {
  153. mesWarehouseRefund.setPage(new Page<>(request, response));
  154. Page<MesWarehouseRefund> page = mesWarehouseRefundService.findPage(mesWarehouseRefund);
  155. CommonResp<Page> resp = new CommonResp<>();
  156. resp.setData(page);
  157. resp.setResult(Global.TRUE);
  158. return resp;
  159. }
  160. }