package com.jeesite.modules.mes.web; import java.util.Date; import java.util.List; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.jeesite.common.lang.ObjectUtils; import com.jeesite.common.lang.StringUtils; import com.jeesite.modules.mes.entity.MesProduct; import com.jeesite.modules.mes.resp.CommonResp; import com.jeesite.modules.mes.service.MesProductService; 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.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 com.jeesite.common.config.Global; import com.jeesite.common.entity.Page; import com.jeesite.common.web.BaseController; import com.jeesite.modules.mes.entity.MesSnCold; import com.jeesite.modules.mes.service.MesSnColdService; /** * 工件水冷板绑定Controller * @author sxl * @version 2026-07-22 */ @Controller @RequestMapping(value = "${adminPath}/mes/mesSnCold") public class MesSnColdController extends BaseController { @Autowired private MesSnColdService mesSnColdService; @Autowired private MesProductService mesProductService; /** * 获取数据 */ @ModelAttribute public MesSnCold get(String id, boolean isNewRecord) { return mesSnColdService.get(id, isNewRecord); } /** * 查询列表 */ @RequiresPermissions("mes:mesSnCold:view") @RequestMapping(value = {"list", ""}) public String list(MesSnCold mesSnCold, Model model) { model.addAttribute("mesSnCold", mesSnCold); return "modules/mes/mesSnColdList"; } /** * 查询列表数据 */ @RequiresPermissions("mes:mesSnCold:view") @RequestMapping(value = "listData") @ResponseBody public Page listData(MesSnCold mesSnCold, HttpServletRequest request, HttpServletResponse response) { mesSnCold.setPage(new Page<>(request, response)); Page page = mesSnColdService.findPage(mesSnCold); return page; } /** * 查看编辑表单 */ @RequiresPermissions("mes:mesSnCold:view") @RequestMapping(value = "form") public String form(MesSnCold mesSnCold, Model model) { model.addAttribute("mesSnCold", mesSnCold); return "modules/mes/mesSnColdForm"; } /** * 保存数据 */ @RequiresPermissions("mes:mesSnCold:edit") @PostMapping(value = "save") @ResponseBody public String save(@Validated MesSnCold mesSnCold) { mesSnColdService.save(mesSnCold); return renderResult(Global.TRUE, text("保存工件水冷板绑定成功!")); } /** * 删除数据 */ @RequiresPermissions("mes:mesSnCold:edit") @RequestMapping(value = "delete") @ResponseBody public String delete(MesSnCold mesSnCold) { mesSnColdService.delete(mesSnCold); return renderResult(Global.TRUE, text("删除工件水冷板绑定成功!")); } /** *水冷板工件绑定列表 * @param mesSnCold * @return */ @RequestMapping(value = "coldList") @ResponseBody public CommonResp coldList(MesSnCold mesSnCold) { CommonResp> resp = new CommonResp<>(); List list = mesSnColdService.findList(mesSnCold); resp.setData(list); resp.setResult(Global.TRUE); resp.setMessage("操作成功!"); return resp; } /** * 水冷板工件绑定提交 * 传 sn、coldSn、oprno:校验参数与工件后仅写入绑定表(质量校验、工位提交已隐藏) * @param mesSnCold * @return */ @RequestMapping(value = "coldSubmit") @ResponseBody public CommonResp coldSubmit(MesSnCold mesSnCold) { CommonResp resp = new CommonResp<>(); String sn = mesSnCold.getSn(); String coldSn = mesSnCold.getColdSn(); String oprno = mesSnCold.getOprno(); if (StringUtils.isEmpty(sn) || StringUtils.isEmpty(coldSn) || StringUtils.isEmpty(oprno)) { resp.setResult(Global.FALSE); resp.setMessage("参数错误"); return resp; } //判断水冷板码是否已经绑定 MesSnCold mesSnCold1 = new MesSnCold(); mesSnCold1.setColdSn(mesSnCold.getColdSn()); List list1 = mesSnColdService.findList(mesSnCold1); if (!list1.isEmpty()){ resp.setResult(Global.FALSE); resp.setMessage("该水冷板已经绑定!"); return resp; } // 判定工件码是否在数据库中 MesProduct mesProduct1 = new MesProduct(); mesProduct1.setSn(mesSnCold.getSn()); List list = mesProductService.findList(mesProduct1); if (list.isEmpty() || ObjectUtils.isEmpty(list.get(0))){ resp.setResult(Global.FALSE); resp.setMessage("工件不存在"); return resp; } // 仅保存绑定数据(质量校验、工位提交已隐藏) mesSnCold.setUpdateTime(new Date()); mesSnColdService.save(mesSnCold); resp.setResult(Global.TRUE); resp.setMessage("操作成功!"); return resp; } }