package com.iamberry.rst.controllers.pts; import com.iamberry.rst.core.page.PagedResult; import com.iamberry.rst.core.pts.Produce; import com.iamberry.rst.core.pts.ProduceProcess; import com.iamberry.rst.core.pts.PtsBom; import com.iamberry.rst.core.pts.PtsMachineVersion; import com.iamberry.rst.faces.pts.MachineVersionService; import com.iamberry.rst.faces.pts.ProduceService; import com.iamberry.rst.utils.StitchAttrUtil; import com.iamberry.wechat.tools.ResponseJson; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; import java.util.Date; import java.util.List; /** * Created by LJK on 2017/8/29. */ @Controller @RequestMapping("/admin/softwareVersion") public class AdminSoftwareVersionController { @Autowired private MachineVersionService machineVersionService; @Autowired private ProduceService produceService; /** * @新目录—软件版本列表 * 查询生产产品列表 * @param request * @return */ @RequiresPermissions("softwareVersion:select:list") @RequestMapping("/_software_version_list") public ModelAndView selectProduceList(HttpServletRequest request, PtsMachineVersion ptsMachineVersion, @RequestParam(value = "pageSize", defaultValue = "10", required = false) Integer pageSize, @RequestParam(value = "pageNO", defaultValue = "1", required = false) Integer pageNO, @RequestParam(value = "totalNum", defaultValue = "0", required = false) Integer totalNum) { ModelAndView mv = new ModelAndView("pts/softwareVersion/software_version_list"); List produceList = produceService.getProduceList(); PagedResult pagedResult = machineVersionService.listMachineVersion(pageNO, pageSize, ptsMachineVersion, totalNum == 0); if (totalNum != 0) { pagedResult.setTotal(totalNum); } mv.addObject("produceList", produceList); StitchAttrUtil.setModelAndView(ptsMachineVersion, mv, "/admin/softwareVersion/_software_version_list", pagedResult); return mv; } /** * @新目录—软件版本列表 *跳转到添加软件版本 * **/ @RequiresPermissions("softwareVersion:add:softwareVersion") @RequestMapping("/_to_add_version") public ModelAndView toAddMachineVersion(HttpServletRequest request){ ModelAndView mv = new ModelAndView("pts/softwareVersion/software_version_add"); List produceList = produceService.getProduceList(); mv.addObject("produceList", produceList); return mv; } /** * @新目录—软件版本列表 * 添加机器版本 * **/ @ResponseBody @RequiresPermissions("softwareVersion:add:softwareVersion") @RequestMapping("/add_version") public ResponseJson addVersion(HttpServletRequest request,PtsMachineVersion ptsMachineVersion){ if(ptsMachineVersion == null){ return new ResponseJson(500, "添加信息不全", 500); } PtsMachineVersion version = new PtsMachineVersion(); version.setMachineVersionNo(ptsMachineVersion.getMachineVersionNo()); version.setProduceId(ptsMachineVersion.getProduceId()); version.setMachineVersionType(ptsMachineVersion.getMachineVersionType()); version = machineVersionService.getMachineVersion(version); if(version != null){ return new ResponseJson(500, "版本号重复", 500); } ptsMachineVersion.setMachineVersionCreateTime(new Date()); ptsMachineVersion.setMachineVersionType(1);//软件版本默认为1 Integer msg = machineVersionService.addMachineVersion(ptsMachineVersion); if(msg > 0){ return new ResponseJson(200, "添加成功", 200); }else{ return new ResponseJson(500, "添加失败", 500); } } /** * @新目录—软件版本列表 * 进入修改机器版本页面 * **/ @RequiresPermissions("machineVersion:update:machineVersion") @RequestMapping("/_to_update_version") public ModelAndView toUpdateVersion(HttpServletRequest request){ ModelAndView mv = new ModelAndView("pts/softwareVersion/software_version_update"); String machineVersionId = request.getParameter("machineVersionId"); PtsMachineVersion ptsMachineVersion = new PtsMachineVersion(); ptsMachineVersion.setMachineVersionId(Integer.valueOf(machineVersionId)); ptsMachineVersion = machineVersionService.getMachineVersion(ptsMachineVersion); mv.addObject("ptsMachineVersion", ptsMachineVersion); List list = produceService.getProduceList(); mv.addObject("produceList", list); return mv; } /** * @新目录—软件版本列表 * 修改机器版本 * **/ @ResponseBody @RequiresPermissions("machineVersion:update:machineVersion") @RequestMapping("/update_version") public ResponseJson update_version(HttpServletRequest request,PtsMachineVersion ptsMachineVersion){ if(ptsMachineVersion == null){ return new ResponseJson(500, "修改失败", 500); } PtsMachineVersion version = new PtsMachineVersion(); version.setMachineVersionId(ptsMachineVersion.getMachineVersionId()); version = machineVersionService.getMachineVersion(version); boolean flag = false; if(version.getProduceId().equals(ptsMachineVersion.getProduceId())){ if(version.getMachineVersionNo().equals(ptsMachineVersion.getMachineVersionNo())){ flag = true; }else{ PtsMachineVersion version2 = new PtsMachineVersion(); version2.setMachineVersionNo(ptsMachineVersion.getMachineVersionNo()); version2.setProduceId(ptsMachineVersion.getProduceId()); version2 = machineVersionService.getMachineVersion(version2); if(version2 == null){ flag = true; } } }else{ PtsMachineVersion version2 = new PtsMachineVersion(); version2.setMachineVersionNo(ptsMachineVersion.getMachineVersionNo()); version2.setProduceId(ptsMachineVersion.getProduceId()); version2 = machineVersionService.getMachineVersion(version2); if(version2 == null){ flag = true; } } Integer msg = 0; if(flag){ ptsMachineVersion.setMachineVersionUpdateTime(new Date()); msg = machineVersionService.updateVersion(ptsMachineVersion); }else{ return new ResponseJson(500, "版本号重复", 500); } if(msg > 0){ return new ResponseJson(200, "修改成功", 200); }else{ return new ResponseJson(500, "修改失败", 500); } } /** * 进入添加机器版本页面 * **/ @RequiresPermissions("machineVersion:add:machineVersion") @RequestMapping("/_to_add_machineVersion") public ModelAndView toAddMachineVersion(Integer produceId){ ModelAndView mv = new ModelAndView("pts/machineVersion/version_add"); List list = produceService.getProduceList(); mv.addObject("produceList", list); mv.addObject("produceId", produceId); return mv; } /** * 添加机器版本 * **/ @ResponseBody @RequiresPermissions("machineVersion:add:machineVersion") @RequestMapping("/add_machineVersion") public ResponseJson addMachineVersion(HttpServletRequest request,PtsMachineVersion ptsMachineVersion){ ResponseJson responseJson = new ResponseJson(); if(ptsMachineVersion == null){ responseJson.setReturnCode(500); return responseJson; } PtsMachineVersion version = new PtsMachineVersion(); version.setMachineVersionNo(ptsMachineVersion.getMachineVersionNo()); version = machineVersionService.getMachineVersion(version); if(version != null){ responseJson.setReturnCode(500); return responseJson; } ptsMachineVersion.setMachineVersionCreateTime(new Date()); ptsMachineVersion.setMachineVersionType(1);//软件版本默认为1 Integer msg = machineVersionService.addMachineVersion(ptsMachineVersion); if(msg > 0){ responseJson.setReturnCode(200); }else{ responseJson.setReturnCode(500); } return responseJson; } /** * 获取机器版本列表 * * @param request * @return */ @RequiresPermissions("version:select:list") @RequestMapping("/_version_list") public ModelAndView listPtsVersion(HttpServletRequest request,PtsMachineVersion ptsMachineVersion) { ModelAndView mv = new ModelAndView("pts/machineVersion/version_list"); List pagedResult = machineVersionService.listMachineVersion(ptsMachineVersion); //获取产品集合,用于页面选择产品 List list = produceService.getProduceList(); Produce produce = new Produce(); produce.setProduceId(ptsMachineVersion.getProduceId()); produce = produceService.getProduce(produce); mv.addObject("produceList",list); mv.addObject("versionList",pagedResult); mv.addObject("produceName",produce.getProduceName()); mv.addObject("produceId",ptsMachineVersion.getProduceId()); return mv; } /** * 进入修改机器版本页面 * **/ @RequiresPermissions("machineVersion:update:machineVersion") @RequestMapping("/_to_update_machineVersion") public ModelAndView toupdateMachineVersion(HttpServletRequest request){ ModelAndView mv = new ModelAndView("pts/machineVersion/version_update"); String machineVersionId = request.getParameter("machineVersionId"); PtsMachineVersion ptsMachineVersion = new PtsMachineVersion(); ptsMachineVersion.setMachineVersionId(Integer.valueOf(machineVersionId)); ptsMachineVersion = machineVersionService.getMachineVersion(ptsMachineVersion); mv.addObject("ptsMachineVersion", ptsMachineVersion); List list = produceService.getProduceList(); mv.addObject("produceList", list); return mv; } /** * 修改机器版本 * **/ @ResponseBody @RequiresPermissions("machineVersion:update:machineVersion") @RequestMapping("/update_machineVersion") public ResponseJson updateMachineVersion(HttpServletRequest request,PtsMachineVersion ptsMachineVersion){ ResponseJson responseJson = new ResponseJson(); if(ptsMachineVersion == null){ responseJson.setReturnCode(500); return responseJson; } PtsMachineVersion version = new PtsMachineVersion(); version.setMachineVersionId(ptsMachineVersion.getMachineVersionId()); version = machineVersionService.getMachineVersion(version); if(!version.getMachineVersionNo().equals(ptsMachineVersion.getMachineVersionNo())){ PtsMachineVersion version2 = new PtsMachineVersion(); version2.setMachineVersionNo(ptsMachineVersion.getMachineVersionNo()); version2 = machineVersionService.getMachineVersion(version2); if(version2 != null){ responseJson.setReturnCode(500); return responseJson; } } ptsMachineVersion.setMachineVersionUpdateTime(new Date()); Integer msg = machineVersionService.updateVersion(ptsMachineVersion); if(msg > 0){ responseJson.setReturnCode(200); }else{ responseJson.setReturnCode(500); } return responseJson; } }