package com.jeesite.modules.mes.web; import com.alibaba.druid.util.StringUtils; import com.jeesite.common.collect.ListUtils; import com.jeesite.common.collect.MapUtils; import com.jeesite.common.config.Global; import com.jeesite.common.entity.Page; import com.jeesite.common.web.BaseController; import com.jeesite.modules.file.entity.FileUpload; import com.jeesite.modules.file.service.FileUploadService; import com.jeesite.modules.file.utils.FileUploadUtils; import com.jeesite.modules.mes.entity.*; import com.jeesite.modules.mes.resp.CommonResp; import com.jeesite.modules.mes.service.*; import com.jeesite.modules.sys.entity.User; import com.jeesite.modules.sys.utils.UserUtils; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.util.ObjectUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.transaction.Transactional; import java.util.Date; import java.util.List; import java.util.Map; /** * 返修质量确认Controller * @author mes * @version 2023-12-05 */ @Controller @RequestMapping(value = "${adminPath}/mes/mesRepairQuality") public class MesRepairQualityController extends BaseController { @Autowired private MesRepairQualityService mesRepairQualityService; @Autowired private MesRepairService mesRepairService; @Autowired private MesRepairItemsService mesRepairItemsService; @Autowired private FileUploadService fileUploadService; @Autowired private MesProductService mesProductService; @Autowired private MesProductRecordService mesProductRecordService; /** * 获取数据 */ @ModelAttribute public MesRepairQuality get(String id, boolean isNewRecord) { return mesRepairQualityService.get(id, isNewRecord); } /** * 查询列表 */ @RequiresPermissions("mes:mesRepairQuality:view") @RequestMapping(value = {"list", ""}) public String list(MesRepairQuality mesRepairQuality, Model model) { model.addAttribute("mesRepairQuality", mesRepairQuality); return "modules/mes/mesRepairQualityList"; } /** * 查询列表数据 */ @RequiresPermissions("mes:mesRepairQuality:view") @RequestMapping(value = "listData") @ResponseBody public Page listData(MesRepairQuality mesRepairQuality, HttpServletRequest request, HttpServletResponse response) { mesRepairQuality.setPage(new Page<>(request, response)); Page page = mesRepairQualityService.findPage(mesRepairQuality); return page; } /** * 查看编辑表单 */ @RequiresPermissions("mes:mesRepairQuality:view") @RequestMapping(value = "form") public String form(MesRepairQuality mesRepairQuality, Model model) { model.addAttribute("mesRepairQuality", mesRepairQuality); return "modules/mes/mesRepairQualityForm"; } /** * 保存数据 */ @RequiresPermissions("mes:mesRepairQuality:edit") @PostMapping(value = "save") @ResponseBody public String save(@Validated MesRepairQuality mesRepairQuality) { mesRepairQualityService.save(mesRepairQuality); return renderResult(Global.TRUE, text("保存返修质量确认成功!")); } /** * 删除数据 */ @RequiresPermissions("mes:mesRepairQuality:edit") @RequestMapping(value = "delete") @ResponseBody public String delete(MesRepairQuality mesRepairQuality) { mesRepairQualityService.delete(mesRepairQuality); return renderResult(Global.TRUE, text("删除返修质量确认成功!")); } @RequiresPermissions("mes:mesRepairQuality:api") @RequestMapping(value = "ulist") @ResponseBody public CommonResp ulist(MesRepairQuality mesRepairQuality, HttpServletRequest request, HttpServletResponse response) { User user = UserUtils.getUser(); mesRepairQuality.setCreateBy(user.getUserCode()); mesRepairQuality.setPage(new Page<>(request, response)); Page page = mesRepairQualityService.findPage(mesRepairQuality); for (int i=0;i resp = new CommonResp<>(); resp.setData(page); resp.setResult(Global.TRUE); return resp; } @RequiresPermissions("mes:mesRepairQuality:api") @RequestMapping(value = "add") @ResponseBody @Transactional public CommonResp add(HttpServletRequest req) { Map map = MapUtils.newHashMap(); CommonResp> resp = new CommonResp<>(); resp.setResult(Global.FALSE); String sn = req.getParameter("sn"); String remark = req.getParameter("remark"); String result = req.getParameter("result"); if(StringUtils.isEmpty(sn)){ resp.setMessage("参数错误"); return resp; } if(!result.equals("1") && !result.equals("2")){ resp.setMessage("参数错误"); return resp; } String mesRepairQuality_image = req.getParameter("mesRepairQuality_image"); if(StringUtils.isEmpty(mesRepairQuality_image)){ resp.setMessage("图片不能为空"); return resp; } MesProduct mesProduct = new MesProduct(); mesProduct.setSn(sn); MesProduct pd = mesProductService.findInfo(mesProduct); if(com.jeesite.common.lang.ObjectUtils.isEmpty(pd)){ resp.setMessage("产品信息不存在"); return resp; } MesRepair mesRepair1 = new MesRepair(); mesRepair1.setSn(sn); MesRepair mesRepair = mesRepairService.findInfo(mesRepair1); if(ObjectUtils.isEmpty(mesRepair)){ resp.setMessage("返修记录不存在"); return resp; } if(!mesRepair.getState().equals("2")){ resp.setMessage("当前工件已检查!"); return resp; } MesRepairQuality mesRepairQuality = new MesRepairQuality(); mesRepairQuality.setRepairId(mesRepair.getId()); mesRepairQuality.setRemark(remark); mesRepairQuality.setResult(result); mesRepairQualityService.save(mesRepairQuality); FileUploadUtils.saveFileUpload(mesRepairQuality, mesRepairQuality.getId(), "mesRepairQuality_image"); //更新返修单 User user = UserUtils.getUser(); mesRepair.setCheckBy(user.getUserCode()); mesRepair.setCheckDate(new Date()); mesRepair.setState("3"); mesRepair.setResult(result); mesRepairService.save(mesRepair); MesProductRecord mesProductRecord = new MesProductRecord(); mesProductRecord.setSn(mesRepair.getSn()); mesProductRecord.setOprno(mesRepair.getOprno()); mesProductRecord.setCraft("100000"); MesProductRecord pp = mesProductRecordService.findInfo(mesProductRecord); // 更新工件 if(mesRepair.getOprno().equals(mesRepair.getReturnOprno())){ // 返回原工位 pp.setContent("UDF"); mesProductRecordService.save(pp); }else{ pp.setContent("OK"); mesProductRecordService.save(pp); String repairItemId = "18565249649801748481111"; if(mesRepair.getItemId().equals(repairItemId)){ // 底护板更换 String[] qmoprnos = new String[]{"OP330","OP360","OP370","OP380","OP390","OP400","OP410"}; for (String op:qmoprnos){ // 返回工位改成UDF MesProductRecord mesProductRecord2 = new MesProductRecord(); mesProductRecord2.setSn(mesRepair.getSn()); mesProductRecord2.setOprno(op); mesProductRecord2.setCraft("100000"); MesProductRecord pp2 = mesProductRecordService.findInfo(mesProductRecord2); if(!ObjectUtils.isEmpty(pp2) && !pp2.getContent().equals("UDF")){ pp2.setContent("UDF"); mesProductRecordService.save(pp2); } } }else{ // 返回工位改成UDF MesProductRecord mesProductRecord2 = new MesProductRecord(); mesProductRecord2.setSn(mesRepair.getSn()); mesProductRecord2.setOprno(mesRepair.getReturnOprno()); mesProductRecord2.setCraft("100000"); MesProductRecord pp2 = mesProductRecordService.findInfo(mesProductRecord2); pp2.setContent("UDF"); mesProductRecordService.save(pp2); } } if(result.equals("1")){ // 返修OK pd.setState("0"); }else{ // 返修NG pd.setState("4"); // 待处理 } mesProductService.save(pd); resp.setResult(Global.TRUE); return resp; } @RequiresPermissions("mes:mesRepairQuality:api") @RequestMapping(value = "apiDetail") @ResponseBody public CommonResp apiDetail(MesRepairQuality mesRepairQuality, HttpServletRequest req) { CommonResp resp = new CommonResp<>(); MesRepair mesRepair1 = new MesRepair(); mesRepair1.setId(mesRepairQuality.getRepairId()); MesRepair mesRepair = mesRepairService.findInfo(mesRepair1); mesRepairQuality.setSn(mesRepair.getSn()); String host = req.getScheme() + "://" + req.getServerName() + ":" + req.getServerPort() + "/js"; FileUpload fu = new FileUpload(); fu.setBizKey(mesRepairQuality.getId()); fu.setBizType("mesRepairQuality_image"); List finfo = fileUploadService.findList(fu); List imgList = ListUtils.newArrayList(); for (FileUpload fi:finfo){ Map map1 = MapUtils.newHashMap(); map1.put("id",fi.getFileEntity().getFileId()); map1.put("url",host + fi.getFileUrl()); map1.put("name",fi.getFileName()); map1.put("size",fi.getFileEntity().getFileSize()); //imgList.add(host + fi.getFileUrl()); imgList.add(map1); } mesRepairQuality.setImgList(imgList); resp.setData(mesRepairQuality); resp.setResult(Global.TRUE); return resp; } }