From 792ff6e14b5074d30f8a7bd804d3b8e6454c3969 Mon Sep 17 00:00:00 2001 From: qushaowei <qushaowei@163.com> Date: 星期四, 11 一月 2024 17:41:45 +0800 Subject: [PATCH] 保养拆分 --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentReportRepairController.java | 101 ++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 97 insertions(+), 4 deletions(-) diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentReportRepairController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentReportRepairController.java index 20fe37e..1a0d577 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentReportRepairController.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EquipmentReportRepairController.java @@ -8,6 +8,7 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; +import org.apache.poi.ss.formula.functions.T; import org.apache.shiro.SecurityUtils; import org.jeecg.common.api.dto.message.MessageDTO; import org.jeecg.common.api.vo.Result; @@ -17,19 +18,26 @@ import org.jeecg.common.system.base.controller.JeecgController; import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.common.system.vo.LoginUser; -import org.jeecg.modules.eam.entity.Equipment; -import org.jeecg.modules.eam.entity.EquipmentReportRepair; -import org.jeecg.modules.eam.entity.FaultDescription; -import org.jeecg.modules.eam.entity.QuanlityConfirm; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.eam.entity.*; import org.jeecg.modules.eam.service.*; +import org.jeecg.modules.eam.vo.RepairReportExportVo; import org.jeecg.modules.system.entity.SysUser; import org.jeecg.modules.system.service.ISysUserService; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Lazy; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; +import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; +import java.math.BigDecimal; +import java.util.Arrays; +import java.util.Date; import java.util.List; import java.util.Map; @@ -60,6 +68,10 @@ @Autowired @Lazy private IdentityService sysIdentityService; + @Autowired + private IFaultInfoService faultInfoService; + @Value("${jeecg.path.upload}") + private String upLoadPath; /** @@ -105,6 +117,7 @@ LoginUser curUser= (LoginUser) SecurityUtils.getSubject().getPrincipal(); equipmentReportRepair.setStatus("1"); equipmentReportRepair.setSource("1"); +// equipmentReportRepair.setType("1"); equipmentReportRepair.setIsCreateOrder(0); equipmentReportRepairService.save(equipmentReportRepair); String IS_PRODUCT_YES = "yes"; @@ -120,6 +133,19 @@ quanlityConfirm.setQuantity(equipmentReportRepair.getQuantity()); quanlityConfirm.setOperator(curUser.getId()); quanlityConfirmService.save(quanlityConfirm); + String fNum = sysIdentityService.getNumByTypeAndLength("FaultInfo",4); + FaultInfo faultInfo = new FaultInfo(); + faultInfo.setNum(fNum); + faultInfo.setQuanlityId(quanlityConfirm.getId()); + faultInfo.setOperater(quanlityConfirm.getOperator()); + faultInfo.setIsConfirm(IS_PRODUCT_NO); + String eId = equipmentReportRepair.getEquipmentId(); + Equipment equipment = equipmentService.getById(eId); + faultInfo.setEquipModel(equipment.getModel()); + faultInfo.setEquipName(equipment.getName()); + faultInfo.setEquipNum(equipment.getNum()); + faultInfoService.save(faultInfo); + } Equipment equipment = equipmentService.getById(equipmentReportRepair.getEquipmentId()); equipment.setEquipmentStatus("2"); @@ -240,4 +266,71 @@ IPage<Map<String, Object>> equipmentReportRepairList = equipmentReportRepairService.getReportRepairList(pageNo, pageSize, params); return Result.ok(equipmentReportRepairList); } + + @PutMapping("/accept") + public Result<?> accept(@RequestBody EquipmentReportRepair equipmentReportRepair ){ + if(equipmentReportRepair.getErrUda1().equals("yes")){ + QuanlityConfirm quanlityConfirm = quanlityConfirmService.getOne(new QueryWrapper<QuanlityConfirm>().eq("report_id",equipmentReportRepair.getId()),false); + if(ObjectUtils.isNotNull(quanlityConfirm)){ + String isConfirm1 = quanlityConfirm.getIsConfirm(); + FaultInfo faultInfo = faultInfoService.getOne(new QueryWrapper<FaultInfo>().eq("quanlity_id",quanlityConfirm.getId()),false); + if(ObjectUtils.isNotNull(faultInfo)){ + String isConfirm2 = faultInfo.getIsConfirm(); + if(!isConfirm1.equals("yes")||!isConfirm2.equals("yes")){ + return Result.error("楠屾敹澶辫触锛屼骇鍝佽川閲忛殣鎮g‘璁ゅ拰浜嬫晠鐧昏灏氭湭瀹屾垚锛岃瀹屾垚纭鍚庡啀杩涜楠屾敹"); + } + }else { + return Result.error("楠屾敹澶辫触锛屾湭鐢熸垚浜嬫晠鐧昏鍗�"); + } + }else { + return Result.error("楠屾敹澶辫触锛屾湭鐢熸垚浜у搧璐ㄩ噺纭"); + } + } + LoginUser user= (LoginUser)SecurityUtils.getSubject().getPrincipal(); + equipmentReportRepair.setStatus("5"); + equipmentReportRepair.setAcceptTime(new Date()); + Date start = equipmentReportRepair.getFaultTime(); + Date end = equipmentReportRepair.getAcceptTime(); + if(ObjectUtils.isNotNull(start)){ + long timeDifference =end.getTime() - start.getTime(); + BigDecimal hours = new BigDecimal(timeDifference) + .divide(new BigDecimal(60 * 60 * 1000), 3, BigDecimal.ROUND_HALF_EVEN); + equipmentReportRepair.setFaultHour(hours); + } + equipmentReportRepairService.updateById(equipmentReportRepair); + String equipmentId = equipmentReportRepair.getEquipmentId(); + if(StringUtils.isNotBlank(equipmentId)){ + Equipment equipment = equipmentService.getById(equipmentId); + equipment.setEquipmentStatus("1"); + equipmentService.updateById(equipment); + } + return Result.OK("楠屾敹鎴愬姛"); + } + /** + * 瀵煎嚭excel + * + * @param request + * @param equipmentReportRepair + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, RepairReportExportVo equipmentReportRepair) { + // Step.1 缁勮鏌ヨ鏉′欢 + String title = "鏁呴殰鎶ヤ慨瀵煎嚭"; + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + // Step.2 鑾峰彇瀵煎嚭鏁版嵁 + List<RepairReportExportVo> exportList = equipmentReportRepairService.exportList(equipmentReportRepair); + + // Step.3 AutoPoi 瀵煎嚭Excel + ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); + //姝ゅ璁剧疆鐨刦ilename鏃犳晥 ,鍓嶇浼氶噸鏇存柊璁剧疆涓�涓� + mv.addObject(NormalExcelConstants.FILE_NAME, title); + mv.addObject(NormalExcelConstants.CLASS, RepairReportExportVo.class); + //update-begin--Author:liusq Date:20210126 for锛氬浘鐗囧鍑烘姤閿欙紝ImageBasePath鏈缃�-------------------- + ExportParams exportParams=new ExportParams(title + "鎶ヨ〃", "瀵煎嚭浜�:" + sysUser.getRealname(), title); + exportParams.setImageBasePath(upLoadPath); + //update-end--Author:liusq Date:20210126 for锛氬浘鐗囧鍑烘姤閿欙紝ImageBasePath鏈缃�---------------------- + mv.addObject(NormalExcelConstants.PARAMS,exportParams); + mv.addObject(NormalExcelConstants.DATA_LIST, exportList); + return mv; + } } -- Gitblit v1.9.3