MesRepairQualityController.java 8.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267
  1. package com.jeesite.modules.mes.web;
  2. import com.alibaba.druid.util.StringUtils;
  3. import com.jeesite.common.collect.ListUtils;
  4. import com.jeesite.common.collect.MapUtils;
  5. import com.jeesite.common.config.Global;
  6. import com.jeesite.common.entity.Page;
  7. import com.jeesite.common.web.BaseController;
  8. import com.jeesite.modules.file.entity.FileUpload;
  9. import com.jeesite.modules.file.service.FileUploadService;
  10. import com.jeesite.modules.file.utils.FileUploadUtils;
  11. import com.jeesite.modules.mes.entity.*;
  12. import com.jeesite.modules.mes.resp.CommonResp;
  13. import com.jeesite.modules.mes.service.*;
  14. import com.jeesite.modules.sys.entity.User;
  15. import com.jeesite.modules.sys.utils.UserUtils;
  16. import org.apache.shiro.authz.annotation.RequiresPermissions;
  17. import org.springframework.beans.factory.annotation.Autowired;
  18. import org.springframework.stereotype.Controller;
  19. import org.springframework.ui.Model;
  20. import org.springframework.util.ObjectUtils;
  21. import org.springframework.validation.annotation.Validated;
  22. import org.springframework.web.bind.annotation.ModelAttribute;
  23. import org.springframework.web.bind.annotation.PostMapping;
  24. import org.springframework.web.bind.annotation.RequestMapping;
  25. import org.springframework.web.bind.annotation.ResponseBody;
  26. import javax.servlet.http.HttpServletRequest;
  27. import javax.servlet.http.HttpServletResponse;
  28. import javax.transaction.Transactional;
  29. import java.util.Date;
  30. import java.util.List;
  31. import java.util.Map;
  32. /**
  33. * 返修质量确认Controller
  34. * @author mes
  35. * @version 2023-12-05
  36. */
  37. @Controller
  38. @RequestMapping(value = "${adminPath}/mes/mesRepairQuality")
  39. public class MesRepairQualityController extends BaseController {
  40. @Autowired
  41. private MesRepairQualityService mesRepairQualityService;
  42. @Autowired
  43. private MesRepairService mesRepairService;
  44. @Autowired
  45. private MesRepairItemsService mesRepairItemsService;
  46. @Autowired
  47. private FileUploadService fileUploadService;
  48. @Autowired
  49. private MesProductService mesProductService;
  50. @Autowired
  51. private MesProductRecordService mesProductRecordService;
  52. /**
  53. * 获取数据
  54. */
  55. @ModelAttribute
  56. public MesRepairQuality get(String id, boolean isNewRecord) {
  57. return mesRepairQualityService.get(id, isNewRecord);
  58. }
  59. /**
  60. * 查询列表
  61. */
  62. @RequiresPermissions("mes:mesRepairQuality:view")
  63. @RequestMapping(value = {"list", ""})
  64. public String list(MesRepairQuality mesRepairQuality, Model model) {
  65. model.addAttribute("mesRepairQuality", mesRepairQuality);
  66. return "modules/mes/mesRepairQualityList";
  67. }
  68. /**
  69. * 查询列表数据
  70. */
  71. @RequiresPermissions("mes:mesRepairQuality:view")
  72. @RequestMapping(value = "listData")
  73. @ResponseBody
  74. public Page<MesRepairQuality> listData(MesRepairQuality mesRepairQuality, HttpServletRequest request, HttpServletResponse response) {
  75. mesRepairQuality.setPage(new Page<>(request, response));
  76. Page<MesRepairQuality> page = mesRepairQualityService.findPage(mesRepairQuality);
  77. return page;
  78. }
  79. /**
  80. * 查看编辑表单
  81. */
  82. @RequiresPermissions("mes:mesRepairQuality:view")
  83. @RequestMapping(value = "form")
  84. public String form(MesRepairQuality mesRepairQuality, Model model) {
  85. model.addAttribute("mesRepairQuality", mesRepairQuality);
  86. return "modules/mes/mesRepairQualityForm";
  87. }
  88. /**
  89. * 保存数据
  90. */
  91. @RequiresPermissions("mes:mesRepairQuality:edit")
  92. @PostMapping(value = "save")
  93. @ResponseBody
  94. public String save(@Validated MesRepairQuality mesRepairQuality) {
  95. mesRepairQualityService.save(mesRepairQuality);
  96. return renderResult(Global.TRUE, text("保存返修质量确认成功!"));
  97. }
  98. /**
  99. * 删除数据
  100. */
  101. @RequiresPermissions("mes:mesRepairQuality:edit")
  102. @RequestMapping(value = "delete")
  103. @ResponseBody
  104. public String delete(MesRepairQuality mesRepairQuality) {
  105. mesRepairQualityService.delete(mesRepairQuality);
  106. return renderResult(Global.TRUE, text("删除返修质量确认成功!"));
  107. }
  108. @RequiresPermissions("mes:mesRepairQuality:api")
  109. @RequestMapping(value = "ulist")
  110. @ResponseBody
  111. public CommonResp ulist(MesRepairQuality mesRepairQuality, HttpServletRequest request, HttpServletResponse response) {
  112. User user = UserUtils.getUser();
  113. mesRepairQuality.setCreateBy(user.getUserCode());
  114. mesRepairQuality.setPage(new Page<>(request, response));
  115. Page<MesRepairQuality> page = mesRepairQualityService.findPage(mesRepairQuality);
  116. for (int i=0;i<page.getList().size();i++){
  117. MesRepair mesRepair = new MesRepair();
  118. mesRepair.setId(page.getList().get(i).getRepairId());
  119. MesRepair rr = mesRepairService.findInfo(mesRepair);
  120. page.getList().get(i).setSn(ObjectUtils.isEmpty(rr)?"":rr.getSn());
  121. }
  122. CommonResp<Page> resp = new CommonResp<>();
  123. resp.setData(page);
  124. resp.setResult(Global.TRUE);
  125. return resp;
  126. }
  127. @RequiresPermissions("mes:mesRepairQuality:api")
  128. @RequestMapping(value = "add")
  129. @ResponseBody
  130. @Transactional
  131. public CommonResp add(HttpServletRequest req) {
  132. Map<String, Object> map = MapUtils.newHashMap();
  133. CommonResp<Map<String, Object>> resp = new CommonResp<>();
  134. resp.setResult(Global.FALSE);
  135. String sn = req.getParameter("sn");
  136. String remark = req.getParameter("remark");
  137. String result = req.getParameter("result");
  138. String returnOprno = req.getParameter("returnOprno");
  139. if(StringUtils.isEmpty(sn)){
  140. resp.setMessage("参数错误");
  141. return resp;
  142. }
  143. if(StringUtils.isEmpty(returnOprno)){
  144. resp.setMessage("参数错误");
  145. return resp;
  146. }
  147. if(!result.equals("1") && !result.equals("2")){
  148. resp.setMessage("参数错误");
  149. return resp;
  150. }
  151. String mesRepairQuality_image = req.getParameter("mesRepairQuality_image");
  152. if(StringUtils.isEmpty(mesRepairQuality_image)){
  153. resp.setMessage("图片不能为空");
  154. return resp;
  155. }
  156. MesProduct mesProduct = new MesProduct();
  157. mesProduct.setSn(sn);
  158. MesProduct pd = mesProductService.findInfo(mesProduct);
  159. if(com.jeesite.common.lang.ObjectUtils.isEmpty(pd)){
  160. resp.setMessage("产品信息不存在");
  161. return resp;
  162. }
  163. MesRepair mesRepair1 = new MesRepair();
  164. mesRepair1.setSn(sn);
  165. MesRepair mesRepair = mesRepairService.findInfo(mesRepair1);
  166. if(ObjectUtils.isEmpty(mesRepair)){
  167. resp.setMessage("返修记录不存在");
  168. return resp;
  169. }
  170. if(mesRepair.getState().equals("1")){
  171. resp.setMessage("当前工件未维修!");
  172. return resp;
  173. }
  174. if(mesRepair.getState().equals("3")){
  175. resp.setMessage("当前工件已检查!");
  176. return resp;
  177. }
  178. MesRepairQuality mesRepairQuality = new MesRepairQuality();
  179. mesRepairQuality.setRepairId(mesRepair.getId());
  180. mesRepairQuality.setRemark(remark);
  181. mesRepairQuality.setResult(result);
  182. mesRepairQualityService.save(mesRepairQuality);
  183. FileUploadUtils.saveFileUpload(mesRepairQuality, mesRepairQuality.getId(), "mesRepairQuality_image");
  184. //更新返修单
  185. User user = UserUtils.getUser();
  186. mesRepair.setCheckBy(user.getUserCode());
  187. mesRepair.setCheckDate(new Date());
  188. mesRepair.setState("3");
  189. mesRepair.setResult(result);
  190. mesRepair.setReturnOprno(returnOprno);
  191. mesRepairService.save(mesRepair);
  192. MesProductRecord mesProductRecord = new MesProductRecord();
  193. mesProductRecord.setSn(mesRepair.getSn());
  194. mesProductRecord.setOprno(mesRepair.getOprno());
  195. mesProductRecord.setCraft("100000");
  196. MesProductRecord pp = mesProductRecordService.findInfo(mesProductRecord);
  197. // 更新工件
  198. if(mesRepair.getOprno().equals(mesRepair.getReturnOprno())){ // 返回原工位
  199. pp.setContent("UDF");
  200. mesProductRecordService.save(pp);
  201. }else{
  202. pp.setContent("OK");
  203. mesProductRecordService.save(pp);
  204. }
  205. if(result.equals("1")){ // 返修OK
  206. pd.setState("0");
  207. }else{ // 返修NG
  208. pd.setState("4"); // 待处理
  209. }
  210. mesProductService.save(pd);
  211. resp.setResult(Global.TRUE);
  212. return resp;
  213. }
  214. @RequiresPermissions("mes:mesRepairQuality:api")
  215. @RequestMapping(value = "apiDetail")
  216. @ResponseBody
  217. public CommonResp apiDetail(MesRepairQuality mesRepairQuality, HttpServletRequest req) {
  218. CommonResp<MesRepairQuality> resp = new CommonResp<>();
  219. MesRepair mesRepair1 = new MesRepair();
  220. mesRepair1.setId(mesRepairQuality.getRepairId());
  221. MesRepair mesRepair = mesRepairService.findInfo(mesRepair1);
  222. mesRepairQuality.setSn(mesRepair.getSn());
  223. String host = req.getScheme() + "://" + req.getServerName() + ":" + req.getServerPort() + "/js";
  224. FileUpload fu = new FileUpload();
  225. fu.setBizKey(mesRepairQuality.getId());
  226. fu.setBizType("mesRepairQuality_image");
  227. List<FileUpload> finfo = fileUploadService.findList(fu);
  228. List imgList = ListUtils.newArrayList();
  229. for (FileUpload fi:finfo){
  230. Map<String, Object> map1 = MapUtils.newHashMap();
  231. map1.put("id",fi.getFileEntity().getFileId());
  232. map1.put("url",host + fi.getFileUrl());
  233. map1.put("name",fi.getFileName());
  234. map1.put("size",fi.getFileEntity().getFileSize());
  235. //imgList.add(host + fi.getFileUrl());
  236. imgList.add(map1);
  237. }
  238. mesRepairQuality.setImgList(imgList);
  239. resp.setData(mesRepairQuality);
  240. resp.setResult(Global.TRUE);
  241. return resp;
  242. }
  243. }