From 09943dbde1e1aba5a51284828f10b6bbf2772ae5 Mon Sep 17 00:00:00 2001
From: lius <Lius2225@163.com>
Date: 星期二, 26 九月 2023 13:26:03 +0800
Subject: [PATCH] 维修休班管理开放今日数据未计算之前可维护权限

---
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentRepairServiceImpl.java |    6 +-
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcEquipmentRepairController.java    |   81 +++++++++++++++++++++++++++++++++-------
 2 files changed, 69 insertions(+), 18 deletions(-)

diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcEquipmentRepairController.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcEquipmentRepairController.java
index 1322366..d824faf 100644
--- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcEquipmentRepairController.java
+++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcEquipmentRepairController.java
@@ -1,5 +1,6 @@
 package org.jeecg.modules.mdc.controller;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -11,17 +12,18 @@
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.common.system.vo.LoginUser;
-import org.jeecg.modules.mdc.entity.MdcDriveTypeParamConfig;
 import org.jeecg.modules.mdc.entity.MdcEquipmentRepair;
+import org.jeecg.modules.mdc.entity.MdcSystemParameters;
 import org.jeecg.modules.mdc.service.IMdcEquipmentRepairService;
+import org.jeecg.modules.mdc.service.IMdcSystemParametersService;
 import org.jeecg.modules.mdc.util.DateUtils;
 import org.jeecg.modules.mdc.vo.MdcEquipmentRepairVo;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.servlet.ModelAndView;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
+import java.util.Date;
 
 /**
  * @Description: 璁惧缁翠慨浼戠彮
@@ -34,8 +36,10 @@
 @RequestMapping("/mdc/mdcEquipmentRepair")
 public class MdcEquipmentRepairController extends JeecgController<MdcEquipmentRepair, IMdcEquipmentRepairService> {
 
-    @Autowired
+    @Resource
     private IMdcEquipmentRepairService mdcEquipmentRepairService;
+    @Resource
+    private IMdcSystemParametersService mdcSystemParametersService;
 
     /**
      * 璁惧缁翠慨浼戠彮-鏂板
@@ -49,9 +53,27 @@
         if (StringUtils.isBlank(repairVo.getEquipmentIds())) {
             return Result.error("鏈�夋嫨璁惧锛岃鎺掓煡锛�");
         }
-        boolean result = mdcEquipmentRepairService.addMdcRepair(repairVo);
+        boolean result = false;
+        Date date = new Date();
+        String todayDay = DateUtils.format(date, DateUtils.STRDATE);
+        String startTime = DateUtils.format(DateUtils.getFormatDate(repairVo.getStartTime(), DateUtils.STR_DATE_TIME_SMALL), DateUtils.STRDATE);
+        MdcSystemParameters mdcSystemParameters = mdcSystemParametersService.getOne(new LambdaQueryWrapper<MdcSystemParameters>().eq(MdcSystemParameters::getCode, "equip_log_statis_time"));
+        if (mdcSystemParameters != null) {
+            String time = mdcSystemParameters.getValue();
+            Date keyDate = DateUtils.setTimeForDay(date, time);
+            if (Integer.parseInt(todayDay) <= Integer.parseInt(startTime)) {
+                result = mdcEquipmentRepairService.addMdcRepair(repairVo);
+            } else if ((Integer.parseInt(todayDay) - Integer.parseInt(startTime)) == 1 && keyDate.after(date)) {
+                result = mdcEquipmentRepairService.addMdcRepair(repairVo);
+            }
+        } else {
+            if (Integer.parseInt(todayDay) > Integer.parseInt(startTime)) {
+                return Result.error("鏂板澶辫触!");
+            }
+            result = mdcEquipmentRepairService.addMdcRepair(repairVo);
+        }
         if (!result) {
-            return Result.error("鏃堕棿娈垫暟鎹凡缁忓瓨鍦紝璇锋帓鏌ワ紒");
+            return Result.error("鏂板澶辫触锛�");
         }
         return Result.OK("鏂板鎴愬姛");
     }
@@ -97,7 +119,25 @@
                 return Result.error("淇敼澶辫触锛佸師绾綍寮�濮嬫椂闂村皬浜庡綋鍓嶆椂闂达紒");
             }
         }
-        boolean result = mdcEquipmentRepairService.updateMdcRepair(repair);
+        boolean result = false;
+        Date date = new Date();
+        String todayDay = DateUtils.format(date, DateUtils.STRDATE);
+        String startTime = DateUtils.format(repair.getStartTime(), DateUtils.STRDATE);
+        MdcSystemParameters mdcSystemParameters = mdcSystemParametersService.getOne(new LambdaQueryWrapper<MdcSystemParameters>().eq(MdcSystemParameters::getCode, "equip_log_statis_time"));
+        if (mdcSystemParameters != null) {
+            String time = mdcSystemParameters.getValue();
+            Date keyDate = DateUtils.setTimeForDay(date, time);
+            if (Integer.parseInt(todayDay) <= Integer.parseInt(startTime)) {
+                result = mdcEquipmentRepairService.updateMdcRepair(repair);
+            } else if ((Integer.parseInt(todayDay) - Integer.parseInt(startTime)) == 1 && keyDate.after(date)) {
+                result = mdcEquipmentRepairService.updateMdcRepair(repair);
+            }
+        } else {
+            if (Integer.parseInt(todayDay) > Integer.parseInt(startTime)) {
+                return Result.error("鍒犻櫎澶辫触!姝ら厤缃凡浣滀负璁惧鍩虹鏁版嵁璁$畻鏁堢巼锛�");
+            }
+            result = mdcEquipmentRepairService.updateMdcRepair(repair);
+        }
         if (!result) {
             return Result.error("鏃堕棿娈垫暟鎹凡缁忓瓨鍦紝璇锋帓鏌ワ紒");
         }
@@ -115,19 +155,30 @@
     @DeleteMapping(value = "/delete")
     public Result<?> delete(@RequestParam(name = "id", required = true) String id) {
         boolean b = false;
+        Date date = new Date();
         MdcEquipmentRepair mdcEquipmentRepair = mdcEquipmentRepairService.getById(id);
-        if (mdcEquipmentRepair.getStartTime().before(DateUtils.getTodayZero(DateUtils.getNow()))) {
-            //璁板綍寮�濮嬫椂闂村湪浠婂ぉ涔嬪墠
-            return Result.error("鍒犻櫎澶辫触!褰撳墠璁板綍宸茶绠楃粺璁℃暟鎹紒");
+        String todayDay = DateUtils.format(date, DateUtils.STRDATE);
+        String startTime = DateUtils.format(mdcEquipmentRepair.getStartTime(), DateUtils.STRDATE);
+        MdcSystemParameters mdcSystemParameters = mdcSystemParametersService.getOne(new LambdaQueryWrapper<MdcSystemParameters>().eq(MdcSystemParameters::getCode, "equip_log_statis_time"));
+        if (mdcSystemParameters != null) {
+            String time = mdcSystemParameters.getValue();
+            Date keyDate = DateUtils.setTimeForDay(date, time);
+            // 20230920   20230910 20230922
+            if (Integer.parseInt(todayDay) <= Integer.parseInt(startTime)) {
+                mdcEquipmentRepairService.removeById(id);
+                return Result.OK("鍒犻櫎鎴愬姛!");
+            } else if ((Integer.parseInt(todayDay) - Integer.parseInt(startTime)) == 1 && keyDate.after(date)) {
+                mdcEquipmentRepairService.removeById(id);
+                return Result.OK("鍒犻櫎鎴愬姛!");
+            }
         } else {
-            //姝e父鍒犻櫎
-            b = mdcEquipmentRepairService.removeById(id);
-        }
-        if (b) {
+            if (Integer.parseInt(todayDay) > Integer.parseInt(startTime)) {
+                return Result.error("鍒犻櫎澶辫触!姝ら厤缃凡浣滀负璁惧鍩虹鏁版嵁璁$畻鏁堢巼锛�");
+            }
+            mdcEquipmentRepairService.removeById(id);
             return Result.OK("鍒犻櫎鎴愬姛!");
-        } else {
-            return Result.error("鍒犻櫎澶辫触");
         }
+        return Result.error("鍒犻櫎澶辫触!姝ら厤缃凡浣滀负璁惧鍩虹鏁版嵁璁$畻鏁堢巼锛�");
     }
 
     /**
diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentRepairServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentRepairServiceImpl.java
index 3391b4a..c74ce79 100644
--- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentRepairServiceImpl.java
+++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentRepairServiceImpl.java
@@ -12,9 +12,9 @@
 import org.jeecg.modules.mdc.service.IMdcEquipmentService;
 import org.jeecg.modules.mdc.util.DateUtils;
 import org.jeecg.modules.mdc.vo.MdcEquipmentRepairVo;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import java.util.*;
 import java.util.stream.Collectors;
@@ -26,8 +26,8 @@
  */
 @Service
 public class MdcEquipmentRepairServiceImpl extends ServiceImpl<MdcEquipmentRepairMapper, MdcEquipmentRepair> implements IMdcEquipmentRepairService {
-    //璁惧
-    @Autowired
+
+    @Resource
     private IMdcEquipmentService mdcEquipmentService;
 
     @Override

--
Gitblit v1.9.3