package com.jeesite.modules.mes.web; import java.util.ArrayList; import java.util.List; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.jeesite.modules.mes.entity.MesCheckItems; import com.jeesite.modules.mes.entity.MesCheckItemsFail; import com.jeesite.modules.mes.resp.CommonResp; import com.jeesite.modules.mes.resp.ComListResp; import com.jeesite.modules.mes.resp.MesCheckFormResp; import com.jeesite.modules.mes.service.MesCheckItemsService; import com.jeesite.modules.mes.util.CopyUtil; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.checkerframework.checker.units.qual.A; 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.MesCheck; import com.jeesite.modules.mes.entity.MesCheckForm; import com.jeesite.modules.mes.service.MesCheckService; /** * 质量检验类型Controller * @author hzd * @version 2023-07-13 */ @Controller @RequestMapping(value = "${adminPath}/mes/mesCheck") public class MesCheckController extends BaseController { @Autowired private MesCheckService mesCheckService; @Autowired private MesCheckItemsService mesCheckItemsService; /** * 获取数据 */ @ModelAttribute public MesCheck get(String id, boolean isNewRecord) { return mesCheckService.get(id, isNewRecord); } /** * 查询列表 */ @RequiresPermissions("mes:mesCheck:view") @RequestMapping(value = {"list", ""}) public String list(MesCheck mesCheck, Model model) { model.addAttribute("mesCheck", mesCheck); return "modules/mes/mesCheckList"; } /** * 查询列表数据 */ @RequiresPermissions("mes:mesCheck:view") @RequestMapping(value = "listData") @ResponseBody public Page listData(MesCheck mesCheck, HttpServletRequest request, HttpServletResponse response) { mesCheck.setPage(new Page<>(request, response)); Page page = mesCheckService.findPage(mesCheck); return page; } /** * 查询子表数据 */ @RequiresPermissions("mes:mesCheck:view") @RequestMapping(value = "mesCheckFormListData") @ResponseBody public Page subListData(MesCheckForm mesCheckForm, HttpServletRequest request, HttpServletResponse response) { mesCheckForm.setPage(new Page<>(request, response)); Page page = mesCheckService.findSubPage(mesCheckForm); return page; } /** * 查看编辑表单 */ @RequiresPermissions("mes:mesCheck:view") @RequestMapping(value = "form") public String form(MesCheck mesCheck, Model model) { model.addAttribute("mesCheck", mesCheck); return "modules/mes/mesCheckForm"; } /** * 保存数据 */ @RequiresPermissions("mes:mesCheck:edit") @PostMapping(value = "save") @ResponseBody public String save(@Validated MesCheck mesCheck) { mesCheckService.save(mesCheck); return renderResult(Global.TRUE, text("保存质量检验类型成功!")); } /** * 停用数据 */ @RequiresPermissions("mes:mesCheck:edit") @RequestMapping(value = "disable") @ResponseBody public String disable(MesCheck mesCheck) { mesCheck.setStatus(MesCheck.STATUS_DISABLE); mesCheckService.updateStatus(mesCheck); return renderResult(Global.TRUE, text("停用质量检验类型成功")); } /** * 启用数据 */ @RequiresPermissions("mes:mesCheck:edit") @RequestMapping(value = "enable") @ResponseBody public String enable(MesCheck mesCheck) { mesCheck.setStatus(MesCheck.STATUS_NORMAL); mesCheckService.updateStatus(mesCheck); return renderResult(Global.TRUE, text("启用质量检验类型成功")); } /** * 删除数据 */ @RequiresPermissions("mes:mesCheck:edit") @RequestMapping(value = "delete") @ResponseBody public String delete(MesCheck mesCheck) { mesCheckService.delete(mesCheck); return renderResult(Global.TRUE, text("删除质量检验类型成功!")); } @RequiresPermissions("mes:mesProductCheck:api") @RequestMapping(value = "all") @ResponseBody public CommonResp all(MesCheck mesCheck) { mesCheck.setStatus("0"); List lists = mesCheckService.findList(mesCheck); // 列表复制 List result = CopyUtil.copyList(lists, ComListResp.class); CommonResp> resp = new CommonResp<>(); resp.setData(result); resp.setResult(Global.TRUE); return resp; } @RequiresPermissions("mes:mesProductCheck:api") @RequestMapping(value = "checkItems") @ResponseBody public CommonResp checkItems(MesCheckForm mesCheckForm) { List lists = new ArrayList<>(); if(!mesCheckForm.getCheckId().equals("") && mesCheckForm.getCheckId() != null){ lists = mesCheckService.findSubList(mesCheckForm); } for (MesCheckForm mcf : lists){ MesCheckItems mesCheckItems = new MesCheckItems(); mesCheckItems.setId(mcf.getItemsId()); MesCheckItemsFail mesCheckItemsFail = new MesCheckItemsFail(); mesCheckItemsFail.setStatus("0"); mesCheckItemsFail.setItemId(mesCheckItems); List fails = mesCheckItemsService.findSub(mesCheckItemsFail); mcf.setMesCheckItemsFail(fails); } // 列表复制 List result = CopyUtil.copyList(lists, MesCheckFormResp.class); CommonResp> resp = new CommonResp<>(); resp.setData(result); resp.setResult(Global.TRUE); return resp; } }