| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229 |
- 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.lang.DateUtils;
- import com.jeesite.common.lang.ObjectUtils;
- import com.jeesite.common.utils.excel.ExcelExport;
- 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.MesProduct;
- import com.jeesite.modules.mes.entity.MesRepair;
- import com.jeesite.modules.mes.entity.MesScrap;
- import com.jeesite.modules.mes.resp.CommonResp;
- import com.jeesite.modules.mes.service.MesProductService;
- import com.jeesite.modules.mes.service.MesScrapService;
- 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.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.List;
- import java.util.Map;
- /**
- * 报废记录Controller
- * @author mes
- * @version 2023-11-27
- */
- @Controller
- @RequestMapping(value = "${adminPath}/mes/mesScrap")
- public class MesScrapController extends BaseController {
- @Autowired
- private MesScrapService mesScrapService;
- @Autowired
- private MesProductService mesProductService;
- @Autowired
- private FileUploadService fileUploadService;
- /**
- * 获取数据
- */
- @ModelAttribute
- public MesScrap get(String id, boolean isNewRecord) {
- return mesScrapService.get(id, isNewRecord);
- }
- /**
- * 查询列表
- */
- @RequiresPermissions("mes:mesScrap:view")
- @RequestMapping(value = {"list", ""})
- public String list(MesScrap mesScrap, Model model) {
- model.addAttribute("mesScrap", mesScrap);
- return "modules/mes/mesScrapList";
- }
- /**
- * 查询列表数据
- */
- @RequiresPermissions("mes:mesScrap:view")
- @RequestMapping(value = "listData")
- @ResponseBody
- public Page<MesScrap> listData(MesScrap mesScrap, HttpServletRequest request, HttpServletResponse response) {
- mesScrap.setPage(new Page<>(request, response));
- Page<MesScrap> page = mesScrapService.findPage(mesScrap);
- return page;
- }
- /**
- * 查看编辑表单
- */
- @RequiresPermissions("mes:mesScrap:view")
- @RequestMapping(value = "form")
- public String form(MesScrap mesScrap, Model model) {
- model.addAttribute("mesScrap", mesScrap);
- return "modules/mes/mesScrapForm";
- }
- @RequiresPermissions("mes:mesScrap:view")
- @RequestMapping(value = "detail")
- public String detail(MesScrap mesScrap, Model model) {
- model.addAttribute("mesScrap", mesScrap);
- return "modules/mes/mesScrapDetail";
- }
- /**
- * 保存数据
- */
- @RequiresPermissions("mes:mesScrap:edit")
- @PostMapping(value = "save")
- @ResponseBody
- public String save(@Validated MesScrap mesScrap) {
- mesScrapService.save(mesScrap);
- return renderResult(Global.TRUE, text("保存报废记录成功!"));
- }
- /**
- * 删除数据
- */
- @RequiresPermissions("mes:mesScrap:edit")
- @RequestMapping(value = "delete")
- @ResponseBody
- public String delete(MesScrap mesScrap) {
- mesScrapService.delete(mesScrap);
- return renderResult(Global.TRUE, text("删除报废记录成功!"));
- }
- /**
- * 导出数据
- */
- @RequiresPermissions("mes:mesScrap:view")
- @RequestMapping(value = "exportData")
- public void exportData(MesScrap mesScrap, HttpServletResponse response) {
- List<MesScrap> list = mesScrapService.findList(mesScrap);
- String fileName = "报废记录" + DateUtils.getDate("yyyyMMddHHmmss") + ".xlsx";
- try(ExcelExport ee = new ExcelExport("报废记录", MesScrap.class)){
- ee.setDataList(list).write(response, fileName);
- }
- }
- @RequiresPermissions("mes:mesScrap:api")
- @RequestMapping(value = "add")
- @ResponseBody
- @Transactional
- public CommonResp add(MesScrap mesScrap, HttpServletRequest request) {
- Map<String, Object> map = MapUtils.newHashMap();
- CommonResp<Map<String, Object>> resp = new CommonResp<>();
- resp.setResult(Global.FALSE);
- if(StringUtils.isEmpty(mesScrap.getSn())){
- resp.setMessage("工件码不能为空");
- return resp;
- }
- if(StringUtils.isEmpty(mesScrap.getReason())){
- resp.setMessage("报废原因不能为空!");
- return resp;
- }
- MesProduct mesProduct1 = new MesProduct();
- mesProduct1.setSn(mesScrap.getSn());
- mesProduct1.setCate(mesScrap.getProductCate());
- MesProduct mesProduct = mesProductService.findInfo(mesProduct1);
- if(ObjectUtils.isEmpty(mesProduct)){
- resp.setMessage("产品信息不存在");
- return resp;
- }
- if(mesProduct.getState().equals("3")){
- resp.setMessage("产品已报废");
- return resp;
- }
- // if(!mesProduct.getState().equals("4")){
- // resp.setMessage("只能报废待处理状态的产品");
- // return resp;
- // }
- // mesScrap.setProductCate(mesProduct.getCate());
- mesScrapService.save(mesScrap);
- //保存图片上传
- FileUploadUtils.saveFileUpload(mesScrap, mesScrap.getId(), "mesScrap_image");
- // 更新产品状态
- mesProduct.setState("3");
- mesProductService.update(mesProduct);
- resp.setResult(Global.TRUE);
- return resp;
- }
- @RequiresPermissions("mes:mesScrap:api")
- @RequestMapping(value = "ulist")
- @ResponseBody
- public CommonResp ulist(MesScrap mesScrap, HttpServletRequest request, HttpServletResponse response) {
- User user = UserUtils.getUser();
- mesScrap.setCreateBy(user.getUserCode());
- mesScrap.setPage(new Page<>(request, response));
- Page<MesScrap> page = mesScrapService.findPage(mesScrap);
- CommonResp<Page> resp = new CommonResp<>();
- resp.setData(page);
- resp.setResult(Global.TRUE);
- return resp;
- }
- /**
- * 详情
- */
- @RequiresPermissions("mes:mesScrap:api")
- @RequestMapping(value = "info")
- @ResponseBody
- public CommonResp info(MesScrap mesScrap, HttpServletRequest request) {
- mesScrap.setId(request.getParameter("id"));
- MesScrap info = mesScrapService.get(mesScrap);
- String host = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + "/js";
- FileUpload fu = new FileUpload();
- fu.setBizKey(info.getId());
- fu.setBizType("mesScrap_image");
- List<FileUpload> finfo = fileUploadService.findList(fu);
- List imgList = ListUtils.newArrayList();
- for (FileUpload fi:finfo){
- Map<String, Object> 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(map1);
- }
- info.setImg(imgList);
- CommonResp<MesScrap> resp = new CommonResp<>();
- resp.setData(info);
- return resp;
- }
- }
|