From 446f423ccea20bfbcd03b7f2f4a680567277b5c3 Mon Sep 17 00:00:00 2001
From: wujianwei <wjw@11.com>
Date: 星期四, 28 八月 2025 15:32:32 +0800
Subject: [PATCH] 新增前后端

---
 admin/config/test/application-custom.yml                                  |    1 
 admin/pom.xml                                                             |    6 +
 service/src/main/java/com/ruoyi/cwgl/domain/dto/TakeReviewDto.java        |    9 ++-
 service/src/main/java/com/ruoyi/cwgl/domain/dto/ReturnReportDto.java      |    5 +
 api/src/main/java/com/ruoyi/api/third/controller/LockerApiController.java |   31 ++++++----
 service/src/main/resources/mapper/cwgl/KeyCollectionInfoMapper.xml        |   85 ++++++++++++++--------------
 api/pom.xml                                                               |   12 ++-
 7 files changed, 85 insertions(+), 64 deletions(-)

diff --git a/admin/config/test/application-custom.yml b/admin/config/test/application-custom.yml
index 0fe513c..409cad8 100644
--- a/admin/config/test/application-custom.yml
+++ b/admin/config/test/application-custom.yml
@@ -83,6 +83,7 @@
       /captchaImage
       /actuator/**
       /*/api-docs
+      /api/**
       /druid/**
       /webjars/**
       /swagger-resources/**
diff --git a/admin/pom.xml b/admin/pom.xml
index 1f126dd..0d5b648 100644
--- a/admin/pom.xml
+++ b/admin/pom.xml
@@ -59,7 +59,11 @@
             <artifactId>quartz</artifactId>
         </dependency>
 
-
+        <dependency>
+            <groupId>com.ruoyi</groupId>
+            <artifactId>api</artifactId>
+            <version>master</version>
+        </dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-actuator</artifactId>
diff --git a/api/pom.xml b/api/pom.xml
index cd72684..96f11f3 100644
--- a/api/pom.xml
+++ b/api/pom.xml
@@ -10,20 +10,24 @@
     <modelVersion>4.0.0</modelVersion>
 
     <artifactId>api</artifactId>
-
     <dependencies>
+
 
         <dependency>
             <groupId>com.ruoyi</groupId>
-            <artifactId>api-remote</artifactId>
+            <artifactId>common</artifactId>
             <version>${project.version}</version>
         </dependency>
-
+        <!--鎸佷箙鍖栧眰妯″潡-->
+        <dependency>
+            <groupId>com.ruoyi</groupId>
+            <artifactId>framework</artifactId>
+            <version>${ruoyi.version}</version>
+        </dependency>
 
         <dependency>
             <groupId>com.ruoyi</groupId>
             <artifactId>service</artifactId>
-            <version>master</version>
         </dependency>
     </dependencies>
 </project>
\ No newline at end of file
diff --git a/api/src/main/java/com/ruoyi/api/controller/LockerApiController.java b/api/src/main/java/com/ruoyi/api/third/controller/LockerApiController.java
similarity index 67%
rename from api/src/main/java/com/ruoyi/api/controller/LockerApiController.java
rename to api/src/main/java/com/ruoyi/api/third/controller/LockerApiController.java
index ad837e0..e924d06 100644
--- a/api/src/main/java/com/ruoyi/api/controller/LockerApiController.java
+++ b/api/src/main/java/com/ruoyi/api/third/controller/LockerApiController.java
@@ -1,4 +1,4 @@
-package com.ruoyi.api.controller;
+package com.ruoyi.api.third.controller;
 
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.utils.DateUtils;
@@ -8,11 +8,12 @@
 import com.ruoyi.cwgl.domain.dto.TakeReviewDto;
 import com.ruoyi.cwgl.service.IKeyCollectionInfoService;
 import com.ruoyi.cwgl.service.IRequestLogService;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
 
 
 /**
@@ -20,8 +21,10 @@
  * @author wjw
  */
 @RestController
-@RequestMapping("/api/third/locker/")
+@RequestMapping("/api/third/locker")
 public class LockerApiController {
+
+    private static Logger logger = LoggerFactory.getLogger(LockerApiController.class);
 
     @Autowired
     private IKeyCollectionInfoService keyCollectionInfoService;
@@ -31,16 +34,20 @@
     /**
      * 涓婃姤鍙栧嚭瀹℃牳
      */
+    @GetMapping("test")
+    public AjaxResult test(){
+        return AjaxResult.success();
+    }
 
-    @PostMapping("takeReview")
-    public AjaxResult takeReview(@RequestBody TakeReviewDto takeReviewDto){
+    @PostMapping("/takeReview")
+    public AjaxResult takeReview(@Valid @RequestBody TakeReviewDto takeReviewDto){
 
         KeyCollectionInfo keyCollectionInfo = keyCollectionInfoService.selectCwData(takeReviewDto);
         //娣诲姞璇锋眰鏃ュ織
         RequestLog requestLog = new RequestLog();
         requestLog.setDriverCode(takeReviewDto.getDriverCode());
         requestLog.setDriverName(takeReviewDto.getDriverName());
-        requestLog.setReqTime(DateUtils.parseDate(takeReviewDto.getHandleTime()));
+        requestLog.setReqTime(takeReviewDto.getHandleTime());
         requestLog.setType(0);
         logService.insertRequestLog(requestLog);
 
@@ -53,14 +60,14 @@
      * 褰掕繕涓婃姤
      */
 
-    @PostMapping("returnReport")
-    public AjaxResult returnReport(@RequestBody ReturnReportDto returnReportDto){
+    @PostMapping("/returnReport")
+    public AjaxResult returnReport(@Valid @RequestBody ReturnReportDto returnReportDto){
 
         //娣诲姞璇锋眰鏃ュ織
         RequestLog requestLog = new RequestLog();
         requestLog.setDriverCode(returnReportDto.getDriverCode());
         requestLog.setBoxNum(returnReportDto.getBoxNum());
-        requestLog.setReqTime(DateUtils.parseDate(returnReportDto.getSaveTime()));
+        requestLog.setReqTime(returnReportDto.getSaveTime());
         requestLog.setType(1);
         logService.insertRequestLog(requestLog);
 
diff --git a/service/src/main/java/com/ruoyi/cwgl/domain/dto/ReturnReportDto.java b/service/src/main/java/com/ruoyi/cwgl/domain/dto/ReturnReportDto.java
index e36affa..bf6493e 100644
--- a/service/src/main/java/com/ruoyi/cwgl/domain/dto/ReturnReportDto.java
+++ b/service/src/main/java/com/ruoyi/cwgl/domain/dto/ReturnReportDto.java
@@ -1,8 +1,10 @@
 package com.ruoyi.cwgl.domain.dto;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
 
 import javax.validation.constraints.NotBlank;
+import java.util.Date;
 
 /**
  * 涓婃姤鍙栧嚭瀹℃牳dto
@@ -19,6 +21,7 @@
     private  String driverCode ;
     /**鍙告満鍞竴缂栧彿*/
     @NotBlank(message = "瀛樺叆鏃堕棿涓嶈兘涓虹┖")
-    private  String saveTime ;
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date saveTime ;
 
 }
diff --git a/service/src/main/java/com/ruoyi/cwgl/domain/dto/TakeReviewDto.java b/service/src/main/java/com/ruoyi/cwgl/domain/dto/TakeReviewDto.java
index 2edad47..e87eb2c 100644
--- a/service/src/main/java/com/ruoyi/cwgl/domain/dto/TakeReviewDto.java
+++ b/service/src/main/java/com/ruoyi/cwgl/domain/dto/TakeReviewDto.java
@@ -1,8 +1,11 @@
 package com.ruoyi.cwgl.domain.dto;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
 
 import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.util.Date;
 
 /**
  * 涓婃姤鍙栧嚭瀹℃牳dto
@@ -18,7 +21,7 @@
     @NotBlank(message = "鍙告満濮撳悕涓嶈兘涓虹┖")
     private  String driverName ;
     /**鍙告満鍞竴缂栧彿*/
-    @NotBlank(message = "璇锋眰寮�闂ㄦ椂闂翠笉鑳戒负绌�")
-    private  String handleTime ;
-
+    @NotNull(message = "璇锋眰寮�闂ㄦ椂闂翠笉鑳戒负绌�")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date handleTime;
 }
diff --git a/service/src/main/resources/mapper/cwgl/KeyCollectionInfoMapper.xml b/service/src/main/resources/mapper/cwgl/KeyCollectionInfoMapper.xml
index 85a9bd2..4215519 100644
--- a/service/src/main/resources/mapper/cwgl/KeyCollectionInfoMapper.xml
+++ b/service/src/main/resources/mapper/cwgl/KeyCollectionInfoMapper.xml
@@ -80,52 +80,51 @@
         order by thisTab.id desc
     </select>
     <select id="selectCwData" resultType="com.ruoyi.cwgl.domain.KeyCollectionInfo">
-SELECT
-	customer.`NAME` as customerName,
-	bp.`NAME` as carrier,
-	ts.DISPATCH_NO as dispatchNo,
-	driver_m.`NAME` as driverName,
-	driver_m.MOBILE as driverMobile,
-	vhc.LICENSE_PLATE_NUMBER as licensePlateNumber,
-	ord.ORDER_TIME as orderTime,
-	ord.CREATED_TIME as orderCreatedTime,
-	ts.CREATED_TIME as dispatchCreatedTime,
-	now() as keyCollectionTime, -- 鏀捐姹傛煡璇㈠埌鐨勬椂闂�
-	ord.ESTIMATED_DEPARTURE_TIME as estimatedDepartureTime,
-	ord.CONSIGNOR_ADDRESS_ADDR_INFO as consignorAddress,
-	ord.CONSIGNEE_ADDRESS_ADDR_INFO as consigneeAddress,
-	driver_m.`NAME` as mainDriver,
-	ts.POINT_NUM as pointNum,
-	ts.TRANSPORT_MODE as transportMode,
-	driver_a.`NAME` as assistantDriver,
-	ts.QUANTITY as quantity,
-	ts.REQUIRED_ARRIVAL_TIME as ,
-	ts.DISPATCH_QUANTITY as dispatchQuantity,
-	ts.REMARK as remark,
-	TIMESTAMPDIFF(HOUR, ord.ORDER_TIME, ord.CREATED_TIME) as schedulingTimeout,
-	TIMESTAMPDIFF(HOUR, ord.ESTIMATED_DEPARTURE_TIME, NOW()) as keyTimeout
+        SELECT
+        customer.`NAME` as customerName,
+        bp.`NAME` as carrier,
+        ts.DISPATCH_NO as dispatchNo,
+        driver_m.`NAME` as driverName,
+        driver_m.MOBILE as driverMobile,
+        vhc.LICENSE_PLATE_NUMBER as licensePlateNumber,
+        ord.ORDER_TIME as orderTime,
+        ord.CREATED_TIME as orderCreatedTime,
+        ts.CREATED_TIME as dispatchCreatedTime,
+        now() as keyCollectionTime, -- 鏀捐姹傛煡璇㈠埌鐨勬椂闂�
+        ord.ESTIMATED_DEPARTURE_TIME as estimatedDepartureTime,
+        ord.CONSIGNOR_ADDRESS_ADDR_INFO as consignorAddress,
+        ord.CONSIGNEE_ADDRESS_ADDR_INFO as consigneeAddress,
+        driver_m.`NAME` as mainDriver,
+        ts.POINT_NUM as pointNum,
+        ts.TRANSPORT_MODE as transportMode,
+        driver_a.`NAME` as assistantDriver,
+        ts.QUANTITY as quantity,
+        ts.REQUIRED_ARRIVAL_TIME as requiredArrivalTime,  -- 娣诲姞鍒悕
+        ts.DISPATCH_QUANTITY as dispatchQuantity,
+        ts.REMARK as remark,
+        TIMESTAMPDIFF(HOUR, ord.ORDER_TIME, ord.CREATED_TIME) as schedulingTimeout,
+        TIMESTAMPDIFF(HOUR, ord.ESTIMATED_DEPARTURE_TIME, NOW()) as keyTimeout
 
-FROM
-  tms_shipment ts
-  left JOIN oms_order ord ON ts.DISPATCH_NO = ord.DISPATCH_CODE
-  LEFT JOIN base_customer customer ON customer.ID = ord.CUSTOMER_ID
-  LEFT JOIN tms_vehicle vhc ON ts.VEHICLE_ID = vhc.id
-  LEFT JOIN base_provider bp ON bp.ID = ts.CARRIER_ID
-  LEFT JOIN tms_driver driver_m ON driver_m.ID = ts.MAIN_DRIVER_ID
-  LEFT JOIN tms_driver driver_a ON driver_a.ID = ts.ASSISTANT_DRIVER_ID
-WHERE
-  ts.`STATUS` = 'A'
-  <if test="driverCode != null and driverCode != '' ">
-      and driver_m.MOBILE = #{driverCode}
-  </if>
-  <if test="driverName != null and driverName != ''">
-      and driver_m.NAME = #{driverName}
-  </if>
-ORDER BY ord.ESTIMATED_DEPARTURE_TIME asc
-LIMIT 1
+        FROM
+        tms_shipment ts
+        LEFT JOIN oms_order ord ON ts.DISPATCH_NO = ord.DISPATCH_CODE
+        LEFT JOIN base_customer customer ON customer.ID = ord.CUSTOMER_ID
+        LEFT JOIN tms_vehicle vhc ON ts.VEHICLE_ID = vhc.id
+        LEFT JOIN base_provider bp ON bp.ID = ts.CARRIER_ID
+        LEFT JOIN tms_driver driver_m ON driver_m.ID = ts.MAIN_DRIVER_ID
+        LEFT JOIN tms_driver driver_a ON driver_a.ID = ts.ASSISTANT_DRIVER_ID
 
+        WHERE
+        ts.`STATUS` = 'A'
+        <if test="driverCode != null and driverCode != ''">
+            AND driver_m.MOBILE = #{driverCode}
+        </if>
+        <if test="driverName != null and driverName != ''">
+            AND driver_m.NAME = #{driverName}
+        </if>
 
-
+        ORDER BY ord.ESTIMATED_DEPARTURE_TIME ASC
+        LIMIT 1
     </select>
 
     <!-- 鏂板 -->

--
Gitblit v1.8.0