MesMaterialCheckItemsController.java 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  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.jeesite.common.collect.ListUtils;
  6. import com.jeesite.common.mybatis.mapper.query.QueryType;
  7. import com.jeesite.modules.mes.entity.MesMaterial;
  8. import com.jeesite.modules.mes.entity.MesMaterialCheck;
  9. import com.jeesite.modules.mes.service.MesMaterialCheckService;
  10. import com.jeesite.modules.mes.service.MesMaterialService;
  11. import org.apache.shiro.authz.annotation.RequiresPermissions;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import org.springframework.stereotype.Controller;
  14. import org.springframework.ui.Model;
  15. import org.springframework.util.StringUtils;
  16. import org.springframework.validation.annotation.Validated;
  17. import org.springframework.web.bind.annotation.ModelAttribute;
  18. import org.springframework.web.bind.annotation.PostMapping;
  19. import org.springframework.web.bind.annotation.RequestMapping;
  20. import org.springframework.web.bind.annotation.ResponseBody;
  21. import com.jeesite.common.config.Global;
  22. import com.jeesite.common.entity.Page;
  23. import com.jeesite.common.web.BaseController;
  24. import com.jeesite.modules.mes.entity.MesMaterialCheckItems;
  25. import com.jeesite.modules.mes.service.MesMaterialCheckItemsService;
  26. /**
  27. * 物料检查内容Controller
  28. * @author mes
  29. * @version 2024-04-02
  30. */
  31. @Controller
  32. @RequestMapping(value = "${adminPath}/mes/mesMaterialCheckItems")
  33. public class MesMaterialCheckItemsController extends BaseController {
  34. @Autowired
  35. private MesMaterialCheckItemsService mesMaterialCheckItemsService;
  36. @Autowired
  37. private MesMaterialCheckService mesMaterialCheckService;
  38. @Autowired
  39. private MesMaterialService mesMaterialService;
  40. /**
  41. * 获取数据
  42. */
  43. @ModelAttribute
  44. public MesMaterialCheckItems get(String id, boolean isNewRecord) {
  45. return mesMaterialCheckItemsService.get(id, isNewRecord);
  46. }
  47. /**
  48. * 查询列表
  49. */
  50. @RequiresPermissions("mes:mesMaterialCheckItems:view")
  51. @RequestMapping(value = {"list", ""})
  52. public String list(MesMaterialCheckItems mesMaterialCheckItems, Model model) {
  53. model.addAttribute("mesMaterialCheckItems", mesMaterialCheckItems);
  54. return "modules/mes/mesMaterialCheckItemsList";
  55. }
  56. /**
  57. * 查询列表数据
  58. */
  59. @RequiresPermissions("mes:mesMaterialCheckItems:view")
  60. @RequestMapping(value = "listData")
  61. @ResponseBody
  62. public Page<MesMaterialCheckItems> listData(MesMaterialCheckItems mesMaterialCheckItems, HttpServletRequest request, HttpServletResponse response) {
  63. mesMaterialCheckItems.setPage(new Page<>(request, response));
  64. Page<MesMaterialCheckItems> page = mesMaterialCheckItemsService.findPage(mesMaterialCheckItems);
  65. return page;
  66. }
  67. /**
  68. * 查看编辑表单
  69. */
  70. @RequiresPermissions("mes:mesMaterialCheckItems:view")
  71. @RequestMapping(value = "form")
  72. public String form(MesMaterialCheckItems mesMaterialCheckItems, Model model) {
  73. model.addAttribute("mesMaterialCheckItems", mesMaterialCheckItems);
  74. MesMaterial mesMaterial = new MesMaterial();
  75. mesMaterial.setId(mesMaterialCheckItems.getMaterialId());
  76. MesMaterial mml = mesMaterialService.get(mesMaterial);
  77. model.addAttribute("mml", mml);
  78. MesMaterialCheck mesMaterialCheck = new MesMaterialCheck();
  79. List<MesMaterialCheck> ml = mesMaterialCheckService.findList(mesMaterialCheck);
  80. model.addAttribute("ml", ml);
  81. return "modules/mes/mesMaterialCheckItemsForm";
  82. }
  83. /**
  84. * 保存数据
  85. */
  86. @RequiresPermissions("mes:mesMaterialCheckItems:edit")
  87. @PostMapping(value = "save")
  88. @ResponseBody
  89. public String save(@Validated MesMaterialCheckItems mesMaterialCheckItems,HttpServletRequest req) {
  90. String checkId = mesMaterialCheckItems.getMaterialCheckId();
  91. if(StringUtils.isEmpty(checkId)){
  92. return renderResult(Global.FALSE, text("请选择检查内容!"));
  93. }
  94. String[] checkIds = checkId.split(",");
  95. for (String item:checkIds){
  96. if(mesMaterialCheckItems.getIsNewRecord()){
  97. MesMaterialCheckItems mesMaterialCheckItems1 = new MesMaterialCheckItems();
  98. mesMaterialCheckItems1.setMaterialId(mesMaterialCheckItems.getMaterialId());
  99. mesMaterialCheckItems1.setMaterialCheckId(item);
  100. List<MesMaterialCheckItems> mmc = mesMaterialCheckItemsService.findList(mesMaterialCheckItems1);
  101. if(!ListUtils.isEmpty(mmc)){
  102. return renderResult(Global.FALSE, text(mmc.get(0).getMaterialCheckTitle())+":已存在");
  103. }
  104. }else {
  105. MesMaterialCheckItems mesMaterialCheckItems1 = new MesMaterialCheckItems();
  106. mesMaterialCheckItems1.setMaterialId(mesMaterialCheckItems.getMaterialId());
  107. mesMaterialCheckItems1.setMaterialCheckId(item);
  108. mesMaterialCheckItems1.getSqlMap().getWhere()
  109. .and("id",QueryType.NE,mesMaterialCheckItems.getId());
  110. List<MesMaterialCheckItems> mmc = mesMaterialCheckItemsService.findList(mesMaterialCheckItems1);
  111. if(!ListUtils.isEmpty(mmc)){
  112. return renderResult(Global.FALSE, text(mmc.get(0).getMaterialCheckTitle())+":已存在");
  113. }
  114. }
  115. mesMaterialCheckItems.setMaterialCheckId(item);
  116. mesMaterialCheckItemsService.save(mesMaterialCheckItems);
  117. }
  118. return renderResult(Global.TRUE, text("保存物料检查内容成功!"));
  119. }
  120. /**
  121. * 删除数据
  122. */
  123. @RequiresPermissions("mes:mesMaterialCheckItems:edit")
  124. @RequestMapping(value = "delete")
  125. @ResponseBody
  126. public String delete(MesMaterialCheckItems mesMaterialCheckItems) {
  127. mesMaterialCheckItemsService.delete(mesMaterialCheckItems);
  128. return renderResult(Global.TRUE, text("删除物料检查内容成功!"));
  129. }
  130. }