ソースを参照

[update] 新增货损盘点接口实现

miajio 3 週間 前
コミット
958f33d10b

+ 1 - 0
pom.xml

@@ -21,6 +21,7 @@
         <module>warehouse-admin-server</module>
         <module>warehouse-admin-web</module>
         <module>warehouse-admin-event</module>
+        <module>warehouse-admin-api</module>
     </modules>
 
     <properties>

+ 30 - 0
warehouse-admin-api/pom.xml

@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>com.yr.warehouse.admin</groupId>
+        <artifactId>yr-warehouse-admin</artifactId>
+        <version>${revision}</version>
+    </parent>
+
+    <artifactId>warehouse-admin-api</artifactId>
+    <packaging>jar</packaging>
+    <version>${revision}</version>
+    <name>warehouse-admin-api</name>
+
+    <properties>
+        <maven.compiler.source>17</maven.compiler.source>
+        <maven.compiler.target>17</maven.compiler.target>
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+    </properties>
+
+    <dependencies>
+        <dependency>
+            <groupId>com.yr.bluecat.common</groupId>
+            <artifactId>bluecat-common-entity</artifactId>
+        </dependency>
+    </dependencies>
+
+</project>

+ 18 - 0
warehouse-admin-api/src/main/java/com/yr/warehouse/api/driver/DriverCargoDamageApi.java

@@ -0,0 +1,18 @@
+package com.yr.warehouse.api.driver;
+
+import com.yr.bluecat.common.entity.request.AdminUserRequest;
+import com.yr.bluecat.common.entity.response.Result;
+import com.yr.warehouse.api.driver.request.DriverCargoDamageInventoryRequest;
+
+/**
+ * 司机货损统计Api
+ */
+public interface DriverCargoDamageApi {
+
+    /**
+     * 司机货损统计盘点同步
+     * @return 结果
+     */
+    Result<Void> inventorySync(DriverCargoDamageInventoryRequest request, AdminUserRequest adminUserRequest);
+
+}

+ 41 - 0
warehouse-admin-api/src/main/java/com/yr/warehouse/api/driver/request/DriverCargoDamageInventoryRequest.java

@@ -0,0 +1,41 @@
+package com.yr.warehouse.api.driver.request;
+
+import com.yr.bluecat.common.entity.request.AbstractRequest;
+import jakarta.validation.constraints.NotNull;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * 货损盘点请求参数
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class DriverCargoDamageInventoryRequest  extends AbstractRequest implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 运营商id
+     */
+    @NotNull(message = "请选择运营商")
+    private Long operatorId;
+
+    /**
+     * 区间开始时间
+     */
+    @NotNull(message = "请选择区间开始时间")
+    private LocalDateTime intervalStartTime;
+
+    /**
+     * 区间结束时间
+     */
+    @NotNull(message = "请选择区间结束时间")
+    private LocalDateTime intervalEndTime;
+
+
+}

+ 3 - 0
warehouse-admin-server/src/main/java/com/yr/warehouse/admin/service/driver/impl/DriverGoodsLossIntervalServiceImpl.java

@@ -61,6 +61,9 @@ public class DriverGoodsLossIntervalServiceImpl implements DriverGoodsLossInterv
             throw new MessageException("当前运营商下没有司机");
         }
 
+        bo.setBeginStatDate(bo.getIntervalStartTime().toLocalDate());
+        bo.setEndStatDate(bo.getIntervalEndTime().toLocalDate());
+
         // 获取当前运营商id链
         OrgOperatorVo orgOperatorVo = operatorComponent.queryOperatorById(bo.getOperatorId());
 

+ 6 - 0
warehouse-admin-web/pom.xml

@@ -57,6 +57,12 @@
             <artifactId>warehouse-admin-server</artifactId>
             <version>${revision}</version>
         </dependency>
+
+        <dependency>
+            <groupId>com.yr.warehouse.admin</groupId>
+            <artifactId>warehouse-admin-api</artifactId>
+            <version>${revision}</version>
+        </dependency>
         <!-- 内部三方引用 -->
         <dependency>
             <groupId>com.yr.prism.auth.core</groupId>

+ 1 - 0
warehouse-admin-web/src/main/java/com/yr/warehouse/admin/web/driver/controller/DriverIntervalCargoDamageController.java

@@ -98,6 +98,7 @@ public class DriverIntervalCargoDamageController extends BaseController {
     public Result<String> generator(@Validated @RequestBody DriverIntervalCargoDamageGeneratorRequest request, AdminUserInfo adminUserInfo) {
         DriverIntervalCargoDamageGeneratorBo bo = DriverIntervalCargoDamageMapStruct.MAPSTRUCT.generatorRequestToBo(request);
         buildUserInfo(bo, adminUserInfo);
+
         driverGoodsLossIntervalService.generator(bo);
         return Result.success("success");
     }

+ 4 - 0
warehouse-admin-web/src/main/java/com/yr/warehouse/admin/web/driver/mapstruct/DriverIntervalCargoDamageMapStruct.java

@@ -1,5 +1,6 @@
 package com.yr.warehouse.admin.web.driver.mapstruct;
 
+import com.yr.bluecat.common.entity.request.AdminUserRequest;
 import com.yr.warehouse.admin.driver.bo.*;
 import com.yr.warehouse.admin.driver.vo.DriverIntervalCargoDamageDetailVo;
 import com.yr.warehouse.admin.driver.vo.DriverIntervalCargoDamageVo;
@@ -13,6 +14,7 @@ import com.yr.warehouse.admin.web.driver.response.DriverIntervalCargoDamageDetai
 import com.yr.warehouse.admin.web.driver.response.DriverIntervalCargoDamageResponse;
 import com.yr.warehouse.admin.web.driver.response.DriverRouteAccountRecordDetailResponse;
 import com.yr.warehouse.admin.web.driver.response.DriverRouteAccountRecordMainResponse;
+import com.yr.warehouse.api.driver.request.DriverCargoDamageInventoryRequest;
 import org.mapstruct.Mapper;
 import org.mapstruct.factory.Mappers;
 
@@ -54,4 +56,6 @@ public interface DriverIntervalCargoDamageMapStruct {
     DriverIntervalRouteAccountRecordEditorBo driverIntervalRouteAccountRecordEditorRequestToBo(DriverIntervalRouteAccountRecordEditorRequest request);
 
     List<DriverRouteAccountRecordDetailExport> routeAccountRecordDetailVoToExport(List<DriverRouteAccountRecordDetailVo> driverRouteDetailVos);
+
+    DriverIntervalCargoDamageGeneratorBo inventoryRequestToBo(DriverCargoDamageInventoryRequest request, AdminUserRequest adminUserRequest);
 }

+ 30 - 0
warehouse-admin-web/src/main/java/com/yr/warehouse/admin/web/driver/provider/DriverCargoDamageApiImpl.java

@@ -0,0 +1,30 @@
+package com.yr.warehouse.admin.web.driver.provider;
+
+import com.yr.bluecat.common.entity.request.AdminUserRequest;
+import com.yr.bluecat.common.entity.response.Result;
+import com.yr.warehouse.admin.driver.bo.DriverIntervalCargoDamageGeneratorBo;
+import com.yr.warehouse.admin.service.driver.DriverGoodsLossIntervalService;
+import com.yr.warehouse.admin.web.driver.mapstruct.DriverIntervalCargoDamageMapStruct;
+import com.yr.warehouse.api.driver.DriverCargoDamageApi;
+import com.yr.warehouse.api.driver.request.DriverCargoDamageInventoryRequest;
+import jakarta.annotation.Resource;
+import org.apache.dubbo.config.annotation.DubboService;
+
+/**
+ * 货损盘点接口实现
+ *
+ * @author dengbp
+ */
+@DubboService
+public class DriverCargoDamageApiImpl implements DriverCargoDamageApi {
+
+    @Resource
+    private DriverGoodsLossIntervalService driverGoodsLossIntervalService;
+
+    @Override
+    public Result<Void> inventorySync(DriverCargoDamageInventoryRequest request, AdminUserRequest adminUserRequest) {
+        DriverIntervalCargoDamageGeneratorBo bo = DriverIntervalCargoDamageMapStruct.MAPSTRUCT.inventoryRequestToBo(request, adminUserRequest);
+        driverGoodsLossIntervalService.generator(bo);
+        return Result.success(null);
+    }
+}