From ba980bb79b84bbd2843188c8080610dfa1e0022f Mon Sep 17 00:00:00 2001
From: Diss <1157651603@qq.com>
Date: Mon, 15 Jan 2024 16:51:16 +0800
Subject: [PATCH] =?UTF-8?q?=E7=94=A8=E5=8C=85=E4=BB=B6=E7=A0=81=E5=92=8C?=
 =?UTF-8?q?=E5=95=86=E5=9C=BA=E5=90=8D=E7=A7=B0=E6=9D=A5=E6=93=8D=E4=BD=9C?=
 =?UTF-8?q?=E8=AE=A2=E5=8D=95=E8=A1=A8=20=E4=BF=AE=E6=94=B9=E5=95=86?=
 =?UTF-8?q?=E5=9C=BA=E5=90=8D=E7=A7=B0=20id=20=20code=20=20=E6=9C=8D?=
 =?UTF-8?q?=E5=8A=A1=E7=B1=BB=E5=9E=8B=20=20=E6=94=B6=E8=B4=A7=E5=8D=95?=
 =?UTF-8?q?=E4=BD=8D?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../BasicdataDriverArteryController.java      | 40 ++++++++++++++++
 .../controller/SyncServiceTypeController.java | 35 ++++++++++++++
 .../patch/mapper/SyncServiceTypeMapper.java   | 16 +++++++
 .../patch/mapper/SyncServiceTypeMapper.xml    | 21 ++++++++
 .../service/ISyncServiceTypeService.java      | 14 ++++++
 .../impl/SyncServiceTypeServiceImpl.java      | 48 +++++++++++++++++++
 6 files changed, 174 insertions(+)
 create mode 100644 blade-service/logpm-patch/src/main/java/com/logpm/patch/controller/SyncServiceTypeController.java
 create mode 100644 blade-service/logpm-patch/src/main/java/com/logpm/patch/mapper/SyncServiceTypeMapper.java
 create mode 100644 blade-service/logpm-patch/src/main/java/com/logpm/patch/mapper/SyncServiceTypeMapper.xml
 create mode 100644 blade-service/logpm-patch/src/main/java/com/logpm/patch/service/ISyncServiceTypeService.java
 create mode 100644 blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/SyncServiceTypeServiceImpl.java

diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataDriverArteryController.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataDriverArteryController.java
index b8975fa25..50071e22c 100644
--- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataDriverArteryController.java
+++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataDriverArteryController.java
@@ -52,6 +52,8 @@ import springfox.documentation.annotations.ApiIgnore;
 
 import javax.servlet.http.HttpServletResponse;
 import javax.validation.Valid;
+import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
 import java.util.Map;
 
@@ -198,6 +200,7 @@ public class BasicdataDriverArteryController extends BladeController {
 
 	/**
 	 * 导出数据
+	 * http://localhost:8400/driverArtery/export-basicdataDriverArtery
 	 */
 	@GetMapping("/export-basicdataDriverArtery")
 	@ApiOperationSupport(order = 9)
@@ -222,4 +225,41 @@ public class BasicdataDriverArteryController extends BladeController {
 		return R.success("操作成功");
 	}
 
+	/**
+	 *  导出数据模板
+	 *  http://localhost:8400/driverArtery/export-basicdataDriverArteryMb
+	 */
+	@GetMapping("/export-basicdataDriverArteryMb")
+	@ApiOperationSupport(order = 10)
+	@ApiOperation(value = "导出数据模板", notes = "传入basicdataDriverArtery")
+	public void exportBasicdataDriverArteryMb(@ApiIgnore @RequestParam Map<String, Object> basicdataDriverArtery, BladeUser bladeUser, HttpServletResponse response) {
+		List<BasicdataDriverArteryImproterExcel> list = new ArrayList<>();
+		//存入模板
+		BasicdataDriverArteryImproterExcel excel = new BasicdataDriverArteryImproterExcel();
+		excel.setName("张三");
+		excel.setPhone("13812345678");
+		excel.setType("1");
+		excel.setJobType("1");
+		excel.setDrivingType("1");
+		excel.setBindVehicle("川A12345,川B56789");
+		excel.setContractStartTime(new Date());
+		excel.setContractEndTime(new Date());
+		excel.setIdCard("440123198012345678");
+		excel.setGender("1");
+		excel.setWarehouseName("龙泉仓");
+		excel.setResidentialAddress("四川省成都市龙泉驿区车城东六路");
+		excel.setBankType("1");
+		excel.setBankCardNub("1234567890123456789");
+		excel.setDriverLicenseNub("A123456789");
+		excel.setDriverLicenseOrgan("四川省成都市市公安局交警支队");
+		excel.setDriverLicenseStartTime(new Date());
+		excel.setDriverLicenseEndTime(new Date());
+		excel.setEmployeeQualificationNub("A987654321");
+		excel.setRoadOperationLicenseNub("B123456789");
+		excel.setCarrierName("汇通运输");
+		excel.setTransportationAgreement("运输协议123");
+		excel.setNotes("这是备注信息");
+		list.add(excel);
+		ExcelUtil.export(response, "司机信息数据模板" + DateUtil.time(), "司机信息数据模板表", list, BasicdataDriverArteryImproterExcel.class);
+	}
 }
diff --git a/blade-service/logpm-patch/src/main/java/com/logpm/patch/controller/SyncServiceTypeController.java b/blade-service/logpm-patch/src/main/java/com/logpm/patch/controller/SyncServiceTypeController.java
new file mode 100644
index 000000000..d616090de
--- /dev/null
+++ b/blade-service/logpm-patch/src/main/java/com/logpm/patch/controller/SyncServiceTypeController.java
@@ -0,0 +1,35 @@
+package com.logpm.patch.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import com.logpm.patch.dto.SyncInventoryDTO;
+import com.logpm.patch.entity.SyncInventoryEntity;
+import com.logpm.patch.service.ISyncServiceTypeService;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springblade.core.tool.api.R;
+import org.springframework.web.bind.annotation.*;
+
+/*
+ *  logisticsplatform-service
+ *  @Author   Diss
+ *  @Create   2024/1/15  12:30
+ */
+@Slf4j
+@RestController
+@AllArgsConstructor
+@RequestMapping("/syncServiceType")
+@Api(value = "同步订单信息控制器", tags = "同步订单信息接口")
+public class SyncServiceTypeController {
+	private final ISyncServiceTypeService syncServiceTypeService;
+	@ResponseBody
+	@PostMapping("/change")
+	@ApiOperation(value = "分页", notes = "传入运单号,仓库名称,商店名称")
+	public R change(@RequestParam String id, @RequestParam String warehouseName, @RequestParam String mallName) {
+		syncServiceTypeService.syncServiceType(id, warehouseName, mallName);
+		return R.success("修改成功");
+	}
+}
diff --git a/blade-service/logpm-patch/src/main/java/com/logpm/patch/mapper/SyncServiceTypeMapper.java b/blade-service/logpm-patch/src/main/java/com/logpm/patch/mapper/SyncServiceTypeMapper.java
new file mode 100644
index 000000000..13ff20c55
--- /dev/null
+++ b/blade-service/logpm-patch/src/main/java/com/logpm/patch/mapper/SyncServiceTypeMapper.java
@@ -0,0 +1,16 @@
+package com.logpm.patch.mapper;
+
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+/*
+ *  logisticsplatform-service
+ *  @Author   Diss
+ *  @Create   2024/1/15  14:46
+ */
+@Mapper
+public interface SyncServiceTypeMapper {
+	void syncServiceTypeByMallName(@Param("stockArticleId")Long stockArticleId, @Param("mallName")String mallName);
+
+	void syncServiceTypeByWarehouseName(@Param("stockArticleId")Long stockArticleId, @Param("warehouseName") String warehouseName);
+}
diff --git a/blade-service/logpm-patch/src/main/java/com/logpm/patch/mapper/SyncServiceTypeMapper.xml b/blade-service/logpm-patch/src/main/java/com/logpm/patch/mapper/SyncServiceTypeMapper.xml
new file mode 100644
index 000000000..b3722ce89
--- /dev/null
+++ b/blade-service/logpm-patch/src/main/java/com/logpm/patch/mapper/SyncServiceTypeMapper.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.logpm.patch.mapper.SyncServiceTypeMapper">
+
+
+    <update id="syncServiceTypeByMallName">
+        UPDATE logpm_distribution_stock_article ldsa
+            LEFT JOIN logpm_basicdata_client lbc ON lbc.client_name = #{mallName} AND lbc.is_deleted = 0
+            LEFT JOIN logpm_basicdata_store_business lbsb ON lbsb.client_id = lbc.id
+            SET ldsa.mall_id = COALESCE(lbc.id, ldsa.mall_id),
+                ldsa.mall_code = COALESCE(lbc.client_code, ldsa.mall_code),
+                ldsa.mall_name = COALESCE(lbc.client_name, ldsa.mall_name),
+                ldsa.type_service = COALESCE(lbsb.type_service, ldsa.type_service),
+                ldsa.consignee_unit = #{mallName}
+        WHERE ldsa.id = #{stockArticleId};
+    </update>
+
+    <update id="syncServiceTypeByWarehouseName">
+
+    </update>
+</mapper>
diff --git a/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/ISyncServiceTypeService.java b/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/ISyncServiceTypeService.java
new file mode 100644
index 000000000..3820da314
--- /dev/null
+++ b/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/ISyncServiceTypeService.java
@@ -0,0 +1,14 @@
+package com.logpm.patch.service;
+/*
+ *  logisticsplatform-service
+ *  @Author   Diss
+ *  @Create   2024/1/15  13:57
+ */
+
+import org.springframework.web.bind.annotation.RequestParam;
+
+public interface ISyncServiceTypeService {
+
+     void syncServiceType( String id,  String warehouseName,  String shopName) ;
+
+    }
diff --git a/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/SyncServiceTypeServiceImpl.java b/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/SyncServiceTypeServiceImpl.java
new file mode 100644
index 000000000..54560a76b
--- /dev/null
+++ b/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/SyncServiceTypeServiceImpl.java
@@ -0,0 +1,48 @@
+package com.logpm.patch.service.impl;
+/*
+ *  logisticsplatform-service
+ *  @Author   Diss
+ *  @Create   2024/1/15  14:04
+ */
+
+import com.logpm.distribution.entity.DistributionParcelListEntity;
+import com.logpm.distribution.feign.IDistributionParcelListClient;
+import com.logpm.patch.controller.SyncServiceTypeController;
+import com.logpm.patch.mapper.SyncServiceTypeMapper;
+import com.logpm.patch.service.ISyncServiceTypeService;
+import lombok.AllArgsConstructor;
+import lombok.extern.log4j.Log4j2;
+import org.springblade.core.log.exception.ServiceException;
+import org.springframework.stereotype.Service;
+
+import java.util.Objects;
+
+@Log4j2
+@Service
+@AllArgsConstructor
+public class SyncServiceTypeServiceImpl implements ISyncServiceTypeService {
+	private final IDistributionParcelListClient distributionParcelListClient;
+	private final SyncServiceTypeMapper syncServiceTypeMapper;
+
+	@Override
+	public void syncServiceType(String id, String warehouseName, String mallName) {
+		DistributionParcelListEntity distributionParcelListEntity = distributionParcelListClient.findByOrderPackageCodeAndStatus(id);
+		if (distributionParcelListEntity==null){
+			throw new ServiceException("订单号不存在");
+		}
+		Long stockArticleId = distributionParcelListEntity.getStockArticleId();
+		//判断那个是仓库名称和商店名称谁是null
+		if (Objects.isNull(warehouseName) || warehouseName.isEmpty()){
+			//用订单和商店名称来操作  //修改商场名称 id  code  服务类型  收货单位
+
+			syncServiceTypeMapper.syncServiceTypeByMallName(stockArticleId,mallName);
+
+		}else if(Objects.isNull(mallName) || mallName.isEmpty()){
+			//用订单号和仓库名称来操作
+			syncServiceTypeMapper.syncServiceTypeByWarehouseName(stockArticleId,warehouseName);
+		}else {
+			throw new ServiceException("请传入仓库名称或商店名称");
+		}
+
+	}
+}