LLL преди 1 година
родител
ревизия
62b7bd155b

+ 65 - 0
module_cmms/src/main/java/org/jeecg/modules/cmmsSubmissionEquipment/controller/CmmsSubmissionEquipmentController.java

@@ -43,6 +43,71 @@ public class CmmsSubmissionEquipmentController extends JeecgController<CmmsSubmi
 	private ICmmsSubmissionEquipmentService cmmsSubmissionEquipmentService;
 	 @Autowired
 	 private ITpmEquipmentService equipmentService;
+
+
+	/**
+	 *  反馈——批量编辑
+	 *
+	 * @param list
+	 * @return
+	 */
+	@AutoLog(value = "送检工单设备表-反馈——批量编辑")
+	@ApiOperation(value="送检工单设备表-反馈——批量编辑", notes="送检工单设备表-反馈——批量编辑")
+	//@RequiresPermissions("org.jeecg.modules:cmms_submission_equipment:edit")
+	@RequestMapping(value = "/fk", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<String> fk(@RequestBody List<CmmsSubmissionEquipment> list) {
+		for (CmmsSubmissionEquipment cmmsSubmissionEquipment:list){
+
+			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);
+					}
+				}
+			}
+
+			cmmsSubmissionEquipmentService.updateById(cmmsSubmissionEquipment);
+
+			/**根据送检状态修改设备管理状态
+			 * (送检中——管理状态送检中;
+			 * 已返回——根据检定结果改管理状态(合格:在用,限用、禁用))*/
+			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查询该所有工单所有检测时间、检测结果、有效时间
 	 * */