Browse Source

优化送检工单编辑

LLL 1 year ago
parent
commit
49db99cbe7

+ 71 - 34
module_cmms/src/main/java/org/jeecg/modules/cmmsSubmissionEquipment/controller/CmmsSubmissionEquipmentController.java

@@ -1,42 +1,32 @@
 package org.jeecg.modules.cmmsSubmissionEquipment.controller;
 
-import java.util.Arrays;
-import java.util.List;
-import java.util.Map;
-import java.util.stream.Collectors;
-import java.io.IOException;
-import java.io.UnsupportedEncodingException;
-import java.net.URLDecoder;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import org.jeecg.common.api.vo.Result;
-import org.jeecg.common.system.query.QueryGenerator;
-import org.jeecg.common.util.oConvertUtils;
-import org.jeecg.modules.cmmsSubmissionEquipment.entity.CmmsSubmissionEquipment;
-import org.jeecg.modules.cmmsSubmissionEquipment.service.ICmmsSubmissionEquipmentService;
-
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
-
-import org.jeecgframework.poi.excel.ExcelImportUtil;
-import org.jeecgframework.poi.excel.def.NormalExcelConstants;
-import org.jeecgframework.poi.excel.entity.ExportParams;
-import org.jeecgframework.poi.excel.entity.ImportParams;
-import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.modules.cmmsSubmissionEquipment.entity.CmmsSubmissionEquipment;
+import org.jeecg.modules.cmmsSubmissionEquipment.service.ICmmsSubmissionEquipmentService;
+import org.jeecg.modules.tpmEquipment.entity.TpmEquipment;
+import org.jeecg.modules.tpmEquipment.service.ITpmEquipmentService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
-import org.springframework.web.multipart.MultipartFile;
-import org.springframework.web.multipart.MultipartHttpServletRequest;
 import org.springframework.web.servlet.ModelAndView;
-import com.alibaba.fastjson.JSON;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.jeecg.common.aspect.annotation.AutoLog;
 
- /**
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.util.Arrays;
+import java.util.Date;
+import java.util.Optional;
+
+/**
  * @Description: 送检工单设备表
  * @Author: jeecg-boot
  * @Date:   2024-01-29
@@ -49,7 +39,9 @@ import org.jeecg.common.aspect.annotation.AutoLog;
 public class CmmsSubmissionEquipmentController extends JeecgController<CmmsSubmissionEquipment, ICmmsSubmissionEquipmentService> {
 	@Autowired
 	private ICmmsSubmissionEquipmentService cmmsSubmissionEquipmentService;
-	
+	 @Autowired
+	 private ITpmEquipmentService equipmentService;
+
 	/**
 	 * 分页列表查询
 	 *
@@ -71,7 +63,7 @@ public class CmmsSubmissionEquipmentController extends JeecgController<CmmsSubmi
 		IPage<CmmsSubmissionEquipment> pageList = cmmsSubmissionEquipmentService.page(page, queryWrapper);
 		return Result.OK(pageList);
 	}
-	
+
 	/**
 	 *   添加
 	 *
@@ -86,7 +78,7 @@ public class CmmsSubmissionEquipmentController extends JeecgController<CmmsSubmi
 		cmmsSubmissionEquipmentService.save(cmmsSubmissionEquipment);
 		return Result.OK("添加成功!");
 	}
-	
+
 	/**
 	 *  编辑
 	 *
@@ -99,9 +91,54 @@ public class CmmsSubmissionEquipmentController extends JeecgController<CmmsSubmi
 	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
 	public Result<String> edit(@RequestBody CmmsSubmissionEquipment cmmsSubmissionEquipment) {
 		cmmsSubmissionEquipmentService.updateById(cmmsSubmissionEquipment);
+
+		TpmEquipment equipment = equipmentService.getById(cmmsSubmissionEquipment.getEquipmentid());
+		if(equipment!=null){
+			/**有效日期(根据检定日期和周期、周期单位计算出来)*/
+			Date jdDate = Optional.ofNullable(cmmsSubmissionEquipment.getSubmissionDate()).orElse(new Date());
+			if(equipment.getCycleUnit()!=null && !equipment.getCycleUnit().equals("") && equipment.getEquipmentCycle()!=null){
+				LocalDateTime dateTime = jdDate.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
+				int cycle = equipment.getEquipmentCycle();
+				String cycleUnit = equipment.getCycleUnit();
+
+				if(cycleUnit.equals("0")){ //0年、1月、2日
+					LocalDateTime effectiveLocalDate = dateTime.plusYears(cycle);
+					Date effectiveDate = Date.from(effectiveLocalDate.atZone(ZoneId.systemDefault()).toInstant());
+					cmmsSubmissionEquipment.setSubmissionEffectiveDate(effectiveDate);
+				}else if(cycleUnit.equals("1")){
+					LocalDateTime effectiveLocalDate = dateTime.plusMonths(cycle);
+					Date effectiveDate = Date.from(effectiveLocalDate.atZone(ZoneId.systemDefault()).toInstant());
+					cmmsSubmissionEquipment.setSubmissionEffectiveDate(effectiveDate);
+				}else if(cycleUnit.equals("2")){
+					LocalDateTime effectiveLocalDate = dateTime.plusDays(cycle);
+					Date effectiveDate = Date.from(effectiveLocalDate.atZone(ZoneId.systemDefault()).toInstant());
+					cmmsSubmissionEquipment.setSubmissionEffectiveDate(effectiveDate);
+				}
+			}
+		}
+
+		/**根据送检状态修改设备管理状态
+		 * (送检中——管理状态送检中;
+		 * 已返回——根据检定结果改管理状态(合格:在用,限用、禁用))*/
+		if(cmmsSubmissionEquipment.getSubmissionStatus()!=null && !cmmsSubmissionEquipment.getSubmissionStatus().equals("")){
+			/**送检状态(0送检中、1已返回)*/
+			String submissionStatus = cmmsSubmissionEquipment.getSubmissionStatus();
+			/**设备管理状态(0送检中、1在用、2限用、3禁用)*/
+			if(submissionStatus.equals("0")) equipment.setManageStatus("0");
+			else if(submissionStatus.equals("1")){
+				if(cmmsSubmissionEquipment.getSubmissionResult()!=null && !cmmsSubmissionEquipment.getSubmissionResult().equals("")){
+					/**检定结果(0限用、1合格、2禁用)*/
+					String result = cmmsSubmissionEquipment.getSubmissionResult();
+					if(result.equals("0")) equipment.setManageStatus("2");
+					else if(result.equals("1")) equipment.setManageStatus("1");
+					else if(result.equals("2")) equipment.setManageStatus("3");
+				}
+			}
+		}
+		equipmentService.updateById(equipment);
 		return Result.OK("编辑成功!");
 	}
-	
+
 	/**
 	 *   通过id删除
 	 *
@@ -116,7 +153,7 @@ public class CmmsSubmissionEquipmentController extends JeecgController<CmmsSubmi
 		cmmsSubmissionEquipmentService.removeById(id);
 		return Result.OK("删除成功!");
 	}
-	
+
 	/**
 	 *  批量删除
 	 *
@@ -131,7 +168,7 @@ public class CmmsSubmissionEquipmentController extends JeecgController<CmmsSubmi
 		this.cmmsSubmissionEquipmentService.removeByIds(Arrays.asList(ids.split(",")));
 		return Result.OK("批量删除成功!");
 	}
-	
+
 	/**
 	 * 通过id查询
 	 *

+ 3 - 2
module_cmms/src/main/java/org/jeecg/modules/cmmsSubmissionEquipment/entity/CmmsSubmissionEquipment.java

@@ -42,6 +42,7 @@ public class CmmsSubmissionEquipment implements Serializable {
     private java.lang.String cmmsSubmissionId;
 	/**设备id*/
 	@Excel(name = "设备id", width = 15)
+    @Dict(dictTable = "tpm_equipment", dicCode = "id", dicText = "equipmentname")
     @ApiModelProperty(value = "设备id")
     private java.lang.String equipmentid;
 	/**检定日期*/
@@ -50,7 +51,7 @@ public class CmmsSubmissionEquipment implements Serializable {
     @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
     @ApiModelProperty(value = "检定日期")
     private java.util.Date submissionDate;
-	/**检定结果*/
+	/**检定结果 (0限用、1合格、2禁用)*/
 	@Excel(name = "检定结果", width = 15, dicCode = "device_verification_result")
 	@Dict(dicCode = "device_verification_result")
     @ApiModelProperty(value = "检定结果")
@@ -69,7 +70,7 @@ public class CmmsSubmissionEquipment implements Serializable {
 	@Excel(name = "备注", width = 15)
     @ApiModelProperty(value = "备注")
     private java.lang.String remark;
-	/**送检状态*/
+	/**送检状态 0送检中、1已返回*/
 	@Excel(name = "送检状态", width = 15, dicCode = "submission_status")
 	@Dict(dicCode = "submission_status")
     @ApiModelProperty(value = "送检状态")

+ 7 - 0
module_cmms/src/main/java/org/jeecg/modules/cmmsSubmissionEquipment/mapper/CmmsSubmissionEquipmentMapper.java

@@ -37,4 +37,11 @@ public interface CmmsSubmissionEquipmentMapper extends BaseMapper<CmmsSubmission
     @Select("SELECT equipmentid FROM cmms_submission_equipment where cmms_submission_id = #{cmmsSubmissionId}")
     List<String> equipmentidList(String cmmsSubmissionId);
 
+    /**
+     * 根据设备id查询该所有工单所有检测时间、检测结果、有效时间
+     * */
+    @Select("select id,submissionDate,submissionResult,submissionEffectiveDate " +
+            "from cmms_submission_equipment " +
+            "order by submissionDate desc")
+    List<CmmsSubmissionEquipment> getSubmissionEquipmentByEquipmentId(String equipmentId);
 }

+ 2 - 2
module_tpm/src/main/java/org/jeecg/modules/tpmEquipment/entity/TpmEquipment.java

@@ -86,7 +86,7 @@ public class TpmEquipment implements Serializable {
     @Excel(name = "周期", width = 15)
     @ApiModelProperty(value = "周期")
     private java.lang.Integer equipmentCycle;
-    /**周期单位*/
+    /**周期单位  0年、1月、2日*/
     @Excel(name = "周期单位", width = 15, dicCode = "cycle_unit")
     @Dict(dicCode = "cycle_unit")
     @ApiModelProperty(value = "周期单位")
@@ -119,7 +119,7 @@ public class TpmEquipment implements Serializable {
     @Excel(name = "领用人", width = 15)
     @ApiModelProperty(value = "领用人")
     private java.lang.String recipient;
-    /**管理状态*/
+    /**管理状态  0送检中、1在用、2限用、3禁用*/
     @Excel(name = "管理状态", width = 15, dicCode = "manage_status")
     @Dict(dicCode = "manage_status")
     @ApiModelProperty(value = "管理状态")