From 0c8a2d35fdf8e402ad34355c545c69a1750d759c Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期二, 09 十二月 2025 17:26:04 +0800
Subject: [PATCH] yys 1.销售台账同步日期 2.销售台账返回车牌号 3.库存管理分组条件修改 4.排产增加产线字段 5.首页增加条幅提醒

---
 src/main/java/com/ruoyi/production/service/impl/SalesLedgerSchedulingServiceImpl.java    |   20 ++++++----
 src/main/java/com/ruoyi/home/controller/HomeController.java                              |    8 ++++
 src/main/resources/mapper/device/DeviceMaintenanceMapper.xml                             |    2 
 src/main/java/com/ruoyi/device/dto/DeviceMaintenanceDto.java                             |    3 -
 src/main/java/com/ruoyi/procurementrecord/service/impl/ProcurementRecordServiceImpl.java |    4 +-
 src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java                           |   23 +++++++++++
 src/main/java/com/ruoyi/production/dto/ProcessSchedulingDto.java                         |    9 ++++
 src/main/java/com/ruoyi/procurementrecord/pojo/CustomStorage.java                        |    7 ++-
 src/main/java/com/ruoyi/production/pojo/SalesLedgerWork.java                             |    7 +++
 src/main/resources/mapper/production/SalesLedgerSchedulingMapper.xml                     |    4 ++
 src/main/java/com/ruoyi/home/service/HomeService.java                                    |    3 +
 src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java            |    3 -
 src/main/java/com/ruoyi/device/pojo/DeviceMaintenance.java                               |    2 
 13 files changed, 76 insertions(+), 19 deletions(-)

diff --git a/src/main/java/com/ruoyi/device/dto/DeviceMaintenanceDto.java b/src/main/java/com/ruoyi/device/dto/DeviceMaintenanceDto.java
index cae0715..de440ca 100644
--- a/src/main/java/com/ruoyi/device/dto/DeviceMaintenanceDto.java
+++ b/src/main/java/com/ruoyi/device/dto/DeviceMaintenanceDto.java
@@ -13,7 +13,6 @@
 
 
     @ApiModelProperty("璁惧淇濆吇id")
-
     private Long id;
 
     @ApiModelProperty("璁惧鍙拌处id")
@@ -41,7 +40,7 @@
     private String maintenanceActuallyTimeReq;
 
     @ApiModelProperty("淇濆吇缁撴灉 0 缁翠慨 1 瀹屽ソ")
-    private Integer maintenanceResult;
+    private String maintenanceResult;
 
     @ApiModelProperty("鐘舵�� 0 寰呬繚鍏� 1 瀹岀粨")
     private Integer status;
diff --git a/src/main/java/com/ruoyi/device/pojo/DeviceMaintenance.java b/src/main/java/com/ruoyi/device/pojo/DeviceMaintenance.java
index f5d5463..c018e4d 100644
--- a/src/main/java/com/ruoyi/device/pojo/DeviceMaintenance.java
+++ b/src/main/java/com/ruoyi/device/pojo/DeviceMaintenance.java
@@ -41,7 +41,7 @@
     private LocalDateTime maintenanceActuallyTime;
 
     @ApiModelProperty("淇濆吇缁撴灉 0 缁翠慨 1 瀹屽ソ")
-    private Integer maintenanceResult;
+    private String maintenanceResult;
 
     @ApiModelProperty("鐘舵�� 0 寰呬繚鍏� 1 瀹岀粨")
     private Integer status;
diff --git a/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java b/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java
index 011d32b..e461a33 100644
--- a/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java
+++ b/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java
@@ -60,8 +60,7 @@
             DeviceMaintenanceExeclDto deviceRepairExeclDto = new DeviceMaintenanceExeclDto();
             BeanUtils.copyProperties(deviceMaintenance,deviceRepairExeclDto);
             deviceRepairExeclDto.setStatus(deviceMaintenance.getStatus() == 0 ? "寰呯淮淇�" : "瀹岀粨");
-            deviceRepairExeclDto.setMaintenanceResult(deviceMaintenance.getMaintenanceResult() != null && deviceMaintenance.getMaintenanceResult() == 0 ? "缁翠慨" : "瀹屽ソ");
-
+//            deviceRepairExeclDto.setMaintenanceResult(deviceMaintenance.getMaintenanceResult() != null && deviceMaintenance.getMaintenanceResult() == 0 ? "缁翠慨" : "瀹屽ソ");
             deviceLedgerExeclDtos.add(deviceRepairExeclDto);
         });
         ExcelUtil<DeviceMaintenanceExeclDto> util = new ExcelUtil<DeviceMaintenanceExeclDto>(DeviceMaintenanceExeclDto.class);
diff --git a/src/main/java/com/ruoyi/home/controller/HomeController.java b/src/main/java/com/ruoyi/home/controller/HomeController.java
index d0af0b5..5af8bb8 100644
--- a/src/main/java/com/ruoyi/home/controller/HomeController.java
+++ b/src/main/java/com/ruoyi/home/controller/HomeController.java
@@ -23,6 +23,7 @@
 
 import java.text.ParseException;
 import java.util.List;
+import java.util.Map;
 
 /**
  * @author :yys
@@ -77,5 +78,12 @@
         return AjaxResult.success(statisticsReceivablePayable);
     }
 
+    @GetMapping("/approveAndDeviceTodos")
+    @ApiOperation("瀹℃壒鍗忓悓锛岃澶囨姤淇緟鍔炰簨椤�")
+    public AjaxResult approveAndDeviceTodos(){
+        Map<String, Object> map = homeService.approveAndDeviceTodos();
+        return AjaxResult.success(map);
+    }
+
 
 }
diff --git a/src/main/java/com/ruoyi/home/service/HomeService.java b/src/main/java/com/ruoyi/home/service/HomeService.java
index 1902488..266a8ce 100644
--- a/src/main/java/com/ruoyi/home/service/HomeService.java
+++ b/src/main/java/com/ruoyi/home/service/HomeService.java
@@ -8,6 +8,7 @@
 
 import java.text.ParseException;
 import java.util.List;
+import java.util.Map;
 
 /**
  * @author :yys
@@ -26,4 +27,6 @@
     List<ApproveProcess> todos() throws ParseException;
 
     StatisticsReceivablePayableDto statisticsReceivablePayable(Integer type);
+
+    Map<String, Object> approveAndDeviceTodos();
 }
diff --git a/src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java b/src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java
index e593667..1dddeb8 100644
--- a/src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java
+++ b/src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java
@@ -4,6 +4,10 @@
 import com.ruoyi.approve.mapper.ApproveProcessMapper;
 import com.ruoyi.approve.pojo.ApproveProcess;
 import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.device.mapper.DeviceMaintenanceMapper;
+import com.ruoyi.device.mapper.DeviceRepairMapper;
+import com.ruoyi.device.pojo.DeviceMaintenance;
+import com.ruoyi.device.pojo.DeviceRepair;
 import com.ruoyi.dto.MapDto;
 import com.ruoyi.framework.security.LoginUser;
 import com.ruoyi.home.dto.*;
@@ -409,4 +413,23 @@
 
         return statisticsReceivablePayableDto;
     }
+
+    @Autowired
+    private DeviceRepairMapper deviceRepairMapper;
+
+    @Override
+    public Map<String, Object> approveAndDeviceTodos() {
+        // 瀹℃壒鍗忓悓寰呭姙
+        Long aLong = approveProcessMapper.selectCount(new LambdaQueryWrapper<ApproveProcess>()
+                .eq(ApproveProcess::getApproveUserCurrentId, SecurityUtils.getUserId())
+                .in(ApproveProcess::getApproveStatus, 0, 1, 3));
+        // 璁惧鎶ヤ慨寰呭姙
+        Long aLong1 = deviceRepairMapper.selectCount(new LambdaQueryWrapper<DeviceRepair>()
+                .eq(DeviceRepair::getStatus, 0)
+                .eq(DeviceRepair::getRepairName, SecurityUtils.getLoginUser().getNickName()));
+        return new HashMap<String, Object>() {{
+            put("approveTodo", aLong);
+            put("deviceRepairTodo", aLong1);
+        }};
+    }
 }
diff --git a/src/main/java/com/ruoyi/procurementrecord/pojo/CustomStorage.java b/src/main/java/com/ruoyi/procurementrecord/pojo/CustomStorage.java
index 62da339..776eaf7 100644
--- a/src/main/java/com/ruoyi/procurementrecord/pojo/CustomStorage.java
+++ b/src/main/java/com/ruoyi/procurementrecord/pojo/CustomStorage.java
@@ -29,6 +29,9 @@
     @Excel(name = "鍏ュ簱鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd")
     private Date inboundDate;
 
+    @TableField(exist = false)
+    private String timeStr;
+
     /**
      * 寰呭嚭搴撴暟閲�
      */
@@ -83,7 +86,7 @@
      * 鍏ュ簱鐢ㄦ埛id
      */
     @TableField(fill = FieldFill.INSERT)
-    private Long createUser;
+    private Integer createUser;
 
     /**
      * 鍏ュ簱鏃堕棿
@@ -97,7 +100,7 @@
      * 淇敼鑰�
      */
     @TableField(fill = FieldFill.INSERT_UPDATE)
-    private Long updateUser;
+    private Integer updateUser;
 
     /**
      * 淇敼鏃堕棿
diff --git a/src/main/java/com/ruoyi/procurementrecord/service/impl/ProcurementRecordServiceImpl.java b/src/main/java/com/ruoyi/procurementrecord/service/impl/ProcurementRecordServiceImpl.java
index 6583532..151c186 100644
--- a/src/main/java/com/ruoyi/procurementrecord/service/impl/ProcurementRecordServiceImpl.java
+++ b/src/main/java/com/ruoyi/procurementrecord/service/impl/ProcurementRecordServiceImpl.java
@@ -464,8 +464,8 @@
                 customStorageLambdaQueryWrapper.like(CustomStorage::getSupplierName, customStorage.getSupplierName());
             }
             // 绛涢�夊叆搴撴椂闂�
-            if(customStorage.getInboundDate() != null){
-                customStorageLambdaQueryWrapper.eq(CustomStorage::getInboundDate, customStorage.getInboundDate());
+            if(customStorage.getTimeStr() != null){
+                customStorageLambdaQueryWrapper.eq(CustomStorage::getInboundDate, customStorage.getTimeStr());
             }
         }
         customStorageLambdaQueryWrapper.orderByDesc(CustomStorage::getCreateTime);
diff --git a/src/main/java/com/ruoyi/production/dto/ProcessSchedulingDto.java b/src/main/java/com/ruoyi/production/dto/ProcessSchedulingDto.java
index 8df5d32..1143abd 100644
--- a/src/main/java/com/ruoyi/production/dto/ProcessSchedulingDto.java
+++ b/src/main/java/com/ruoyi/production/dto/ProcessSchedulingDto.java
@@ -30,7 +30,6 @@
     @ApiModelProperty(value = "鎺掍骇鏁伴噺")
     private BigDecimal schedulingNum;
 
-
     /**
      * 宸ユ椂瀹氶
      */
@@ -38,10 +37,18 @@
     private BigDecimal workHours;
 
     /**
+     * 浜х嚎
+     */
+    @ApiModelProperty(value = "浜х嚎")
+    private String productionLine;
+
+    /**
      * 宸ュ簭
      */
     @ApiModelProperty(value = "宸ュ簭")
     private String process;
+
+
     /**
      * 鎺掍骇鏃ユ湡
      */
diff --git a/src/main/java/com/ruoyi/production/pojo/SalesLedgerWork.java b/src/main/java/com/ruoyi/production/pojo/SalesLedgerWork.java
index 50e9ca9..42d9e95 100644
--- a/src/main/java/com/ruoyi/production/pojo/SalesLedgerWork.java
+++ b/src/main/java/com/ruoyi/production/pojo/SalesLedgerWork.java
@@ -1,6 +1,7 @@
 package com.ruoyi.production.pojo;
 
 import com.baomidou.mybatisplus.annotation.*;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Builder;
 import lombok.Data;
 
@@ -67,6 +68,12 @@
      * 宸ュ簭
      */
     private String process;
+
+
+    /**
+     * 浜х嚎
+     */
+    private String productionLine;
     /**
      * 鎺掍骇鏃ユ湡
      */
diff --git a/src/main/java/com/ruoyi/production/service/impl/SalesLedgerSchedulingServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/SalesLedgerSchedulingServiceImpl.java
index 5070319..cc6292e 100644
--- a/src/main/java/com/ruoyi/production/service/impl/SalesLedgerSchedulingServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/SalesLedgerSchedulingServiceImpl.java
@@ -66,6 +66,7 @@
         salesLedgerWorkLambdaQueryWrapper.in(SalesLedgerWork::getSalesLedgerProductId, collect)
                 .ne(SalesLedgerWork::getStatus, 1);
         List<SalesLedgerWork> salesLedgerWorks = salesLedgerWorkMapper.selectList(salesLedgerWorkLambdaQueryWrapper);
+        List<SalesLedgerSchedulingDto> list1 = new ArrayList<>();
         list.getRecords().forEach(i -> {
             // 鑾峰彇瀹屾垚鏁伴噺
             i.setSuccessNum(salesLedgerWorks
@@ -73,14 +74,7 @@
                     .filter(j -> j.getSalesLedgerProductId().equals(i.getSalesLedgerProductId()))
                     .map(SalesLedgerWork::getFinishedNum)
                     .reduce(BigDecimal.ZERO, BigDecimal::add));
-            // 鐘舵�� = 鏁伴噺鍜屽畬宸ユ暟閲忔瘮杈�
-            if(i.getSchedulingNum().compareTo(new BigDecimal(0)) == 0){
-                i.setStatus("鏈畬鎴�");
-            } else if(i.getSchedulingNum().compareTo(i.getSuccessNum()) == 0){
-                i.setStatus("宸插畬鎴�");
-            }else{
-                i.setStatus("鐢熶骇涓�");
-            }
+
             // 璁$畻鐢熶骇鎬婚噺 = 瑙勬牸 * 鏁伴噺 / 1000
             String[] split = i.getSpecificationModel().split("\\*");
             if(split.length == 2 && isNumeric(split[0]) && isNumeric(split[1])){
@@ -88,6 +82,15 @@
                         .multiply(new BigDecimal(split[1])
                                 .multiply(i.getQuantity()).divide(new BigDecimal(1000),2, RoundingMode.CEILING));
                 i.setTotalProduction(multiply);
+            }
+
+            // 鐘舵�� = 鏁伴噺鍜屽畬宸ユ暟閲忔瘮杈�
+            if(i.getSchedulingNum().compareTo(new BigDecimal(0)) == 0){
+                i.setStatus("鏈畬鎴�");
+            } else if(i.getQuantity().compareTo(i.getSchedulingNum()) <= 0){
+                i.setStatus("宸插畬鎴�");
+            }else{
+                i.setStatus("鐢熶骇涓�");
             }
 
         });
@@ -339,6 +342,7 @@
                     .salesLedgerSchedulingId(salesLedgerScheduling.getId())
                     .salesLedgerId(salesLedgerScheduling.getSalesLedgerId())
                     .remark(processSchedulingDto.getRemark())
+                    .productionLine(processSchedulingDto.getProductionLine())
                     .type(processSchedulingDto.getType())
                     .loss(processSchedulingDto.getLoss())
                     .receive(processSchedulingDto.getReceive())
diff --git a/src/main/resources/mapper/device/DeviceMaintenanceMapper.xml b/src/main/resources/mapper/device/DeviceMaintenanceMapper.xml
index 347db76..9d5dd33 100644
--- a/src/main/resources/mapper/device/DeviceMaintenanceMapper.xml
+++ b/src/main/resources/mapper/device/DeviceMaintenanceMapper.xml
@@ -20,7 +20,7 @@
         dm.maintenance_actually_name,
         dl.device_name,
         dl.device_model,
-        su.user_name as create_user_name
+        su.nick_name as create_user_name
         from device_maintenance dm
         left join device_ledger dl on dm.device_ledger_id = dl.id
         left join sys_user su on dm.create_user = su.user_id
diff --git a/src/main/resources/mapper/production/SalesLedgerSchedulingMapper.xml b/src/main/resources/mapper/production/SalesLedgerSchedulingMapper.xml
index 6009d15..47f3c8c 100644
--- a/src/main/resources/mapper/production/SalesLedgerSchedulingMapper.xml
+++ b/src/main/resources/mapper/production/SalesLedgerSchedulingMapper.xml
@@ -43,6 +43,10 @@
             </if>
         </where>
         GROUP BY T2.id
+        <if test="salesLedgerDto.status != null and salesLedgerDto.status.equals('true')">
+            HAVING quantity - schedulingNum > 0
+        </if>
+        order by T1.entry_date desc
     </select>
     <select id="list" resultType="com.ruoyi.production.dto.SalesLedgerSchedulingDto">
         SELECT

--
Gitblit v1.9.3