Browse Source

feat: 添加Sap批量导入/修改接口

fangxinjian 3 years ago
parent
commit
a589af92fd
17 changed files with 839 additions and 18 deletions
  1. 101 0
      abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/controller/console/BaseSapImportController.java
  2. 6 0
      abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/dao/entity/BaseSapCoverFactory.java
  3. 0 1
      abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/dao/mapper/BaseSapCoverFactoryMapper.java
  4. 47 0
      abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/dto/req/BatchImportCoverFactoryReq.java
  5. 41 0
      abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/dto/req/BatchImportMaterialReq.java
  6. 43 0
      abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/dto/req/BatchImportPackageSapOrderReq.java
  7. 41 0
      abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/dto/req/BatchImportSapBeerFactoryReq.java
  8. 25 0
      abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/BaseSapBeerFactoryService.java
  9. 25 0
      abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/BaseSapCoverFactoryService.java
  10. 25 0
      abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/BaseSapMaterialService.java
  11. 25 0
      abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/QrPackageSapOrderService.java
  12. 107 0
      abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/impl/BaseSapBeerFactoryServiceImpl.java
  13. 126 0
      abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/impl/BaseSapCoverFactoryServiceImpl.java
  14. 114 0
      abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/impl/BaseSapMaterialServiceImpl.java
  15. 94 0
      abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/impl/QrPackageSapOrderServiceImpl.java
  16. 11 9
      abi-cloud-qr-platform-server/src/main/resources/dao/mapper/BaseSapCoverFactoryMapper.xml
  17. 8 8
      abi-cloud-qr-platform-server/src/main/resources/dao/mapper/BaseSapMaterialMapper.xml

+ 101 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/controller/console/BaseSapImportController.java

@@ -2,11 +2,19 @@ package com.abi.qms.platform.controller.console;
 
 import com.abi.qms.platform.annotation.PassToken;
 import com.abi.qms.platform.dto.req.BatchImportBrandReq;
+import com.abi.qms.platform.dto.req.BatchImportCoverFactoryReq;
+import com.abi.qms.platform.dto.req.BatchImportMaterialReq;
 import com.abi.qms.platform.dto.req.BatchImportOrganizationReq;
+import com.abi.qms.platform.dto.req.BatchImportPackageSapOrderReq;
+import com.abi.qms.platform.dto.req.BatchImportSapBeerFactoryReq;
 import com.abi.qms.platform.dto.req.BatchImportSkuReq;
+import com.abi.qms.platform.service.BaseSapBeerFactoryService;
 import com.abi.qms.platform.service.BaseSapBrandService;
+import com.abi.qms.platform.service.BaseSapCoverFactoryService;
+import com.abi.qms.platform.service.BaseSapMaterialService;
 import com.abi.qms.platform.service.BaseSapOrganizationService;
 import com.abi.qms.platform.service.BaseSapSkuService;
+import com.abi.qms.platform.service.QrPackageSapOrderService;
 import com.abi.task.common.api.base.BaseResponse;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -38,6 +46,18 @@ public class BaseSapImportController {
     @Autowired
     private BaseSapBrandService baseSapBrandService;
 
+    @Autowired
+    private BaseSapMaterialService baseSapMaterialService;
+
+    @Autowired
+    private BaseSapCoverFactoryService baseSapCoverFactoryService;
+
+    @Autowired
+    private BaseSapBeerFactoryService baseSapBeerFactoryService;
+
+    @Autowired
+    private QrPackageSapOrderService qrPackageSapOrderService;
+
 
     @ApiOperation("批量导入组织架构数据")
     @PostMapping("batchImportOrganization")
@@ -71,5 +91,86 @@ public class BaseSapImportController {
         return BaseResponse.create();
     }
 
+    @ApiOperation("批量导入Sap物料数据")
+    @PostMapping("batchImportMaterial")
+    @PassToken
+    public BaseResponse batchImportMaterial(@RequestBody BatchImportMaterialReq batchImportMaterialReq) {
+
+        baseSapMaterialService.batchImportMaterial(batchImportMaterialReq);
+        //包装出参
+        return BaseResponse.create();
+    }
+
+    @ApiOperation("批量修改Sap物料数据")
+    @PostMapping("batchUpdatetMaterial")
+    @PassToken
+    public BaseResponse batchUpdatetMaterial(@RequestBody BatchImportMaterialReq batchImportMaterialReq) {
+
+        baseSapMaterialService.batchUpdatetMaterial(batchImportMaterialReq);
+        //包装出参
+        return BaseResponse.create();
+    }
+
+    @ApiOperation("批量导入Sap供应商数据")
+    @PostMapping("batchImportCoverFactory")
+    @PassToken
+    public BaseResponse batchImportCoverFactory(@RequestBody BatchImportCoverFactoryReq batchImportCoverFactoryReq) {
+
+        baseSapCoverFactoryService.batchImportCoverFactory(batchImportCoverFactoryReq);
+        //包装出参
+        return BaseResponse.create();
+    }
+
+    @ApiOperation("批量修改Sap供应商数据")
+    @PostMapping("batchUpdateCoverFactory")
+    @PassToken
+    public BaseResponse batchUpdateCoverFactory(@RequestBody BatchImportCoverFactoryReq batchImportCoverFactoryReq) {
+
+        baseSapCoverFactoryService.batchUpdateCoverFactory(batchImportCoverFactoryReq);
+        //包装出参
+        return BaseResponse.create();
+    }
+
+    @ApiOperation("批量导入Sap啤酒厂数据")
+    @PostMapping("batchImportSapBeerFactory")
+    @PassToken
+    public BaseResponse batchImportSapBeerFactory(@RequestBody BatchImportSapBeerFactoryReq batchImportSapBeerFactoryReq) {
+
+        baseSapBeerFactoryService.batchImportSapBeerFactory(batchImportSapBeerFactoryReq);
+        //包装出参
+        return BaseResponse.create();
+    }
+
+    @ApiOperation("批量修改Sap啤酒厂数据")
+    @PostMapping("batchUpdateSapBeerFactory")
+    @PassToken
+    public BaseResponse batchUpdateSapBeerFactory(@RequestBody BatchImportSapBeerFactoryReq batchImportSapBeerFactoryReq) {
+
+        baseSapBeerFactoryService.batchUpdateSapBeerFactory(batchImportSapBeerFactoryReq);
+        //包装出参
+        return BaseResponse.create();
+    }
+
+    @ApiOperation("批量导入Sap码包订单数据")
+    @PostMapping("batchImportPackageSapOrder")
+    @PassToken
+    public BaseResponse batchImportPackageSapOrder(@RequestBody BatchImportPackageSapOrderReq batchImportPackageSapOrderReq) {
+
+        qrPackageSapOrderService.batchImportPackageSapOrder(batchImportPackageSapOrderReq);
+        //包装出参
+        return BaseResponse.create();
+    }
+
+    @ApiOperation("批量修改Sap码包订单数据")
+    @PostMapping("batchUpdatePackageSapOrder")
+    @PassToken
+    public BaseResponse batchUpdatePackageSapOrder(@RequestBody BatchImportPackageSapOrderReq batchImportPackageSapOrderReq) {
+
+        qrPackageSapOrderService.batchUpdatePackageSapOrder(batchImportPackageSapOrderReq);
+        //包装出参
+        return BaseResponse.create();
+    }
+
+
 
 }

+ 6 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/dao/entity/BaseSapCoverFactory.java

@@ -45,6 +45,12 @@ public class BaseSapCoverFactory {
 	@Schema(name = "是否删除")
     private Integer isDelete;
 
+    @Schema(name = "联系人姓名")
+    private String keyManName;
+
+    @Schema(name = "联系人手机号")
+    private String keyManMobile;
+
 
 
 }

+ 0 - 1
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/dao/mapper/BaseSapCoverFactoryMapper.java

@@ -11,5 +11,4 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  * @author Andy.Tan
  */
 public interface BaseSapCoverFactoryMapper extends BaseMapper<BaseSapCoverFactory> {
-
 }

+ 47 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/dto/req/BatchImportCoverFactoryReq.java

@@ -0,0 +1,47 @@
+package com.abi.qms.platform.dto.req;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.ToString;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @author: fangxinjian
+ * @date: 2021/06/04 15:04
+ * @description:
+ */
+@Data
+@ApiModel
+public class BatchImportCoverFactoryReq implements Serializable {
+
+    @ApiModelProperty("sap导入新增供应商List")
+    private List<BatchImportCoverFactory> batchImportCoverFactoryList;
+
+
+    @Data
+    @NoArgsConstructor
+    @AllArgsConstructor
+    @ToString
+    @ApiModel(value = "BatchImportCoverFactoryReq_BatchImportCoverFactory")
+    public static class BatchImportCoverFactory implements Serializable {
+
+        @ApiModelProperty(value = "sap供应商id")
+        private String sapCoverFactoryId;
+
+        @ApiModelProperty(value = "sap供应商名称")
+        private String sapCoverFactoryName;
+
+        @ApiModelProperty(value = "联系人姓名")
+        private String keyManName;
+
+        @ApiModelProperty(value = "联系人手机号")
+        private String keyManMobile;
+
+    }
+
+}

+ 41 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/dto/req/BatchImportMaterialReq.java

@@ -0,0 +1,41 @@
+package com.abi.qms.platform.dto.req;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.ToString;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @author: fangxinjian
+ * @date: 2021/06/04 11:42
+ * @description: sap批量导入新增物料数据
+ */
+@Data
+@ApiModel
+public class BatchImportMaterialReq implements Serializable {
+
+    @ApiModelProperty("sap导入新增物料List")
+    private List<BatchImportMaterial> batchImportMaterialList;
+
+
+    @Data
+    @NoArgsConstructor
+    @AllArgsConstructor
+    @ToString
+    @ApiModel(value = "BatchImportMaterialReq_BatchImportMaterial")
+    public static class BatchImportMaterial implements Serializable {
+
+        @ApiModelProperty(value = "sap物料id")
+        private String sapMaterialId;
+
+        @ApiModelProperty(value = "sap物料名称")
+        private String sapMaterialName;
+
+    }
+
+}

+ 43 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/dto/req/BatchImportPackageSapOrderReq.java

@@ -0,0 +1,43 @@
+package com.abi.qms.platform.dto.req;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.ToString;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * @author: fangxinjian
+ * @date: 2021/06/04 17:33
+ * @description: sap导入码包订单入参数据
+ */
+@Data
+@ApiModel
+public class BatchImportPackageSapOrderReq implements Serializable {
+
+    @ApiModelProperty("sap码包订单List")
+    private List<BatchImportSapOrder> batchImportSapOrderList;
+
+
+    @Data
+    @NoArgsConstructor
+    @AllArgsConstructor
+    @ToString
+    @ApiModel(value = "BatchImportPackageSapOrderReq_BatchImportSapOrder")
+    public static class BatchImportSapOrder implements Serializable {
+
+        @ApiModelProperty(value = "sap订单号")
+        private String sapOrderNo;
+
+        @ApiModelProperty(value = "订单发起时间")
+        private LocalDateTime sapOrderCommitTime;
+
+    }
+
+
+}

+ 41 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/dto/req/BatchImportSapBeerFactoryReq.java

@@ -0,0 +1,41 @@
+package com.abi.qms.platform.dto.req;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.ToString;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @author: fangxinjian
+ * @date: 2021/06/04 17:15
+ * @description: 导入sap啤酒厂入参数据
+ */
+@Data
+@ApiModel
+public class BatchImportSapBeerFactoryReq implements Serializable {
+
+    @ApiModelProperty("sap导入啤酒厂List")
+    private List<BatchImportBeerFactory> batchImportBeerFactoryList;
+
+
+    @Data
+    @NoArgsConstructor
+    @AllArgsConstructor
+    @ToString
+    @ApiModel(value = "BatchImportSapBeerFactoryReq_BatchImportBeerFactory")
+    public static class BatchImportBeerFactory implements Serializable {
+
+        @ApiModelProperty(value = "sap啤酒场id")
+        private String sapBeerFactoryId;
+
+        @ApiModelProperty(value = "sap啤酒厂名称")
+        private String sapBeerFactoryName;
+
+    }
+}

+ 25 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/BaseSapBeerFactoryService.java

@@ -0,0 +1,25 @@
+package com.abi.qms.platform.service;
+
+import com.abi.qms.platform.dto.req.BatchImportSapBeerFactoryReq;
+
+/**
+ * @author: fangxinjian
+ * @date: 2021/06/04 17:14
+ * @description:
+ */
+public interface BaseSapBeerFactoryService {
+
+    /**
+     * 批量导入Sap啤酒厂数据
+     *
+     * @param batchImportSapBeerFactoryReq
+     */
+    void batchImportSapBeerFactory(BatchImportSapBeerFactoryReq batchImportSapBeerFactoryReq);
+
+    /**
+     * 批量修改Sap啤酒厂数据
+     *
+     * @param batchImportSapBeerFactoryReq
+     */
+    void batchUpdateSapBeerFactory(BatchImportSapBeerFactoryReq batchImportSapBeerFactoryReq);
+}

+ 25 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/BaseSapCoverFactoryService.java

@@ -0,0 +1,25 @@
+package com.abi.qms.platform.service;
+
+import com.abi.qms.platform.dto.req.BatchImportCoverFactoryReq;
+
+/**
+ * @author: fangxinjian
+ * @date: 2021/06/04 15:23
+ * @description:
+ */
+public interface BaseSapCoverFactoryService {
+
+    /**
+     * 批量导入sap供应商数据
+     *
+     * @param batchImportCoverFactoryReq
+     */
+    void batchImportCoverFactory(BatchImportCoverFactoryReq batchImportCoverFactoryReq);
+
+    /**
+     * 批量修改sap供应商数据
+     *
+     * @param batchImportCoverFactoryReq
+     */
+    void batchUpdateCoverFactory(BatchImportCoverFactoryReq batchImportCoverFactoryReq);
+}

+ 25 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/BaseSapMaterialService.java

@@ -0,0 +1,25 @@
+package com.abi.qms.platform.service;
+
+import com.abi.qms.platform.dto.req.BatchImportMaterialReq;
+
+/**
+ * @author: fangxinjian
+ * @date: 2021/06/04 11:39
+ * @description:
+ */
+public interface BaseSapMaterialService {
+
+    /**
+     * sap批量导入物料数据
+     *
+     * @param batchImportMaterialReq
+     */
+    void batchImportMaterial(BatchImportMaterialReq batchImportMaterialReq);
+
+    /**
+     * sap批量修改物料数据
+     *
+     * @param batchImportMaterialReq
+     */
+    void batchUpdatetMaterial(BatchImportMaterialReq batchImportMaterialReq);
+}

+ 25 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/QrPackageSapOrderService.java

@@ -0,0 +1,25 @@
+package com.abi.qms.platform.service;
+
+import com.abi.qms.platform.dto.req.BatchImportPackageSapOrderReq;
+
+/**
+ * @author: fangxinjian
+ * @date: 2021/06/04 17:39
+ * @description:
+ */
+public interface QrPackageSapOrderService {
+
+    /**
+     * 批量导入sap码包订单数据
+     *
+     * @param batchImportPackageSapOrderReq
+     */
+    void batchImportPackageSapOrder(BatchImportPackageSapOrderReq batchImportPackageSapOrderReq);
+
+    /**
+     * 批量修改sap码包订单数据
+     *
+     * @param batchImportPackageSapOrderReq
+     */
+    void batchUpdatePackageSapOrder(BatchImportPackageSapOrderReq batchImportPackageSapOrderReq);
+}

+ 107 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/impl/BaseSapBeerFactoryServiceImpl.java

@@ -0,0 +1,107 @@
+package com.abi.qms.platform.service.impl;
+
+import cn.hutool.core.util.ObjectUtil;
+import com.abi.qms.platform.dao.entity.BaseSapBeerFactory;
+import com.abi.qms.platform.dao.entity.BaseSapCoverFactory;
+import com.abi.qms.platform.dao.mapper.BaseSapBeerFactoryMapper;
+import com.abi.qms.platform.dto.req.BatchImportSapBeerFactoryReq;
+import com.abi.qms.platform.service.BaseSapBeerFactoryService;
+import com.abi.task.common.api.exception.BusinessException;
+import com.abi.task.common.api.exception.ErrorCodeEnum;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * @author: fangxinjian
+ * @date: 2021/06/04 17:14
+ * @description:
+ */
+@Service
+public class BaseSapBeerFactoryServiceImpl implements BaseSapBeerFactoryService {
+
+    @Autowired
+    private BaseSapBeerFactoryMapper baseSapBeerFactoryMapper;
+
+    @Override
+    public void batchImportSapBeerFactory(BatchImportSapBeerFactoryReq req) {
+
+        List<BatchImportSapBeerFactoryReq.BatchImportBeerFactory> beerFactoryList = req.getBatchImportBeerFactoryList();
+        for (BatchImportSapBeerFactoryReq.BatchImportBeerFactory beerFactory : beerFactoryList) {
+
+            BaseSapBeerFactory baseSapBeerFactory = new BaseSapBeerFactory();
+            baseSapBeerFactory.setSapBeerFactoryId(beerFactory.getSapBeerFactoryId());
+            baseSapBeerFactory.setSapBeerFactoryName(beerFactory.getSapBeerFactoryName());
+
+            saveBaseSapBeerFactory(baseSapBeerFactory);
+        }
+
+    }
+
+
+    @Override
+    public void batchUpdateSapBeerFactory(BatchImportSapBeerFactoryReq req) {
+
+        List<BatchImportSapBeerFactoryReq.BatchImportBeerFactory> beerFactoryList = req.getBatchImportBeerFactoryList();
+        for (BatchImportSapBeerFactoryReq.BatchImportBeerFactory beerFactory : beerFactoryList) {
+
+            BaseSapBeerFactory baseSapBeerFactory = new BaseSapBeerFactory();
+            baseSapBeerFactory.setSapBeerFactoryId(beerFactory.getSapBeerFactoryId());
+            baseSapBeerFactory.setSapBeerFactoryName(beerFactory.getSapBeerFactoryName());
+
+            updateBaseSapBeerFactory(baseSapBeerFactory);
+        }
+
+    }
+
+    private void updateBaseSapBeerFactory(BaseSapBeerFactory sapBeerFactory) {
+
+        //根据sap啤酒厂ID查询啤酒厂信息
+        BaseSapBeerFactory baseSapBeerFactory = getBaseSapCoverFactoryInfo(sapBeerFactory.getSapBeerFactoryId());
+
+        if (ObjectUtil.isNull(baseSapBeerFactory)) {
+            throw new BusinessException(ErrorCodeEnum.ERROR_PARAM.getCode(), "Sap啤酒厂ID不存在");
+        }
+
+        sapBeerFactory.setId(baseSapBeerFactory.getId());
+        sapBeerFactory.setUpdateTime(LocalDateTime.now());
+        baseSapBeerFactoryMapper.updateById(sapBeerFactory);
+    }
+
+    private void saveBaseSapBeerFactory(BaseSapBeerFactory sapBeerFactory) {
+        //根据sap啤酒厂ID查询啤酒厂信息
+        BaseSapBeerFactory baseSapBeerFactory = getBaseSapCoverFactoryInfo(sapBeerFactory.getSapBeerFactoryId());
+
+        if (ObjectUtil.isNotNull(baseSapBeerFactory)) {
+            throw new BusinessException(ErrorCodeEnum.ERROR_PARAM.getCode(), "Sap啤酒厂ID已存在");
+        }
+
+        baseSapBeerFactoryMapper.insert(sapBeerFactory);
+
+    }
+
+
+    /**
+     * 根据sap啤酒厂ID查询sap啤酒厂信息
+     *
+     * @param sapBeerFactoryId sap啤酒厂ID
+     * @return
+     */
+    private BaseSapBeerFactory getBaseSapCoverFactoryInfo(String sapBeerFactoryId) {
+
+        QueryWrapper<BaseSapBeerFactory> qw = new QueryWrapper<>();
+        qw.eq("sap_beer_factory_id", sapBeerFactoryId);
+        qw.eq("is_delete", 0);
+
+        //根据sap啤酒厂ID查询sap啤酒厂信息
+        BaseSapBeerFactory baseSapBeerFactory = baseSapBeerFactoryMapper.selectOne(qw);
+
+        return baseSapBeerFactory;
+
+    }
+
+
+}

+ 126 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/impl/BaseSapCoverFactoryServiceImpl.java

@@ -0,0 +1,126 @@
+package com.abi.qms.platform.service.impl;
+
+import cn.hutool.core.util.ObjectUtil;
+import com.abi.qms.platform.dao.entity.BaseSapCoverFactory;
+import com.abi.qms.platform.dao.mapper.BaseSapCoverFactoryMapper;
+import com.abi.qms.platform.dto.req.BatchImportCoverFactoryReq;
+import com.abi.qms.platform.service.BaseSapCoverFactoryService;
+import com.abi.task.common.api.exception.BusinessException;
+import com.abi.task.common.api.exception.ErrorCodeEnum;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * @author: fangxinjian
+ * @date: 2021/06/04 15:23
+ * @description:
+ */
+@Service
+public class BaseSapCoverFactoryServiceImpl implements BaseSapCoverFactoryService {
+
+    @Autowired
+    private BaseSapCoverFactoryMapper baseSapCoverFactoryMapper;
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void batchImportCoverFactory(BatchImportCoverFactoryReq req) {
+
+        List<BatchImportCoverFactoryReq.BatchImportCoverFactory> sapCoverFactoryList = req.getBatchImportCoverFactoryList();
+
+        for (BatchImportCoverFactoryReq.BatchImportCoverFactory coverFactory : sapCoverFactoryList) {
+
+            BaseSapCoverFactory baseSapCoverFactory = new BaseSapCoverFactory();
+            baseSapCoverFactory.setSapCoverFactoryId(coverFactory.getSapCoverFactoryId());
+            baseSapCoverFactory.setSapCoverFactoryName(coverFactory.getSapCoverFactoryName());
+            baseSapCoverFactory.setKeyManName(coverFactory.getKeyManName());
+            baseSapCoverFactory.setKeyManMobile(coverFactory.getKeyManMobile());
+
+            saveBaseSapCoverFactory(baseSapCoverFactory);
+        }
+
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void batchUpdateCoverFactory(BatchImportCoverFactoryReq req) {
+
+        List<BatchImportCoverFactoryReq.BatchImportCoverFactory> sapCoverFactoryList = req.getBatchImportCoverFactoryList();
+
+        for (BatchImportCoverFactoryReq.BatchImportCoverFactory coverFactory : sapCoverFactoryList) {
+
+            BaseSapCoverFactory baseSapCoverFactory = new BaseSapCoverFactory();
+            baseSapCoverFactory.setSapCoverFactoryId(coverFactory.getSapCoverFactoryId());
+            baseSapCoverFactory.setSapCoverFactoryName(coverFactory.getSapCoverFactoryName());
+            baseSapCoverFactory.setKeyManName(coverFactory.getKeyManName());
+            baseSapCoverFactory.setKeyManMobile(coverFactory.getKeyManMobile());
+
+            updateBaseSapCoverFactory(baseSapCoverFactory);
+        }
+
+    }
+
+    /**
+     * 更新Sap供应商信息
+     *
+     * @param sapCoverFactory
+     */
+    private void updateBaseSapCoverFactory(BaseSapCoverFactory sapCoverFactory) {
+
+        //根据sap供应商ID查询供应商信息
+        BaseSapCoverFactory baseSapCoverFactory = getBaseSapCoverFactoryInfo(sapCoverFactory.getSapCoverFactoryId());
+
+        if (ObjectUtil.isNull(baseSapCoverFactory)) {
+            throw new BusinessException(ErrorCodeEnum.ERROR_PARAM.getCode(), "Sap供应商ID不存在");
+        }
+
+        sapCoverFactory.setId(baseSapCoverFactory.getId());
+        sapCoverFactory.setUpdateTime(LocalDateTime.now());
+        baseSapCoverFactoryMapper.updateById(sapCoverFactory);
+
+    }
+
+
+    /**
+     * 保存Sap供应商信息
+     *
+     * @param sapCoverFactory
+     */
+    private void saveBaseSapCoverFactory(BaseSapCoverFactory sapCoverFactory) {
+
+        //根据sap供应商ID查询供应商信息
+        BaseSapCoverFactory baseSapCoverFactory = getBaseSapCoverFactoryInfo(sapCoverFactory.getSapCoverFactoryId());
+
+        if (ObjectUtil.isNotNull(baseSapCoverFactory)) {
+            throw new BusinessException(ErrorCodeEnum.ERROR_PARAM.getCode(), "Sap供应商ID已存在");
+        }
+
+        baseSapCoverFactoryMapper.insert(sapCoverFactory);
+    }
+
+
+    /**
+     * 根据sap供应商ID查询sap供应商信息
+     *
+     * @param sapCoverFactoryId sap供应商ID
+     * @return
+     */
+    private BaseSapCoverFactory getBaseSapCoverFactoryInfo(String sapCoverFactoryId) {
+
+        QueryWrapper<BaseSapCoverFactory> qw = new QueryWrapper<>();
+        qw.eq("sap_cover_factory_id", sapCoverFactoryId);
+        qw.eq("is_delete", 0);
+
+        //根据sap供应商id查询供应商信息
+        BaseSapCoverFactory baseSapCoverFactory = baseSapCoverFactoryMapper.selectOne(qw);
+
+        return baseSapCoverFactory;
+
+    }
+
+
+}

+ 114 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/impl/BaseSapMaterialServiceImpl.java

@@ -0,0 +1,114 @@
+package com.abi.qms.platform.service.impl;
+
+import cn.hutool.core.util.ObjectUtil;
+import com.abi.qms.platform.dao.entity.BaseSapMaterial;
+import com.abi.qms.platform.dao.mapper.BaseSapMaterialMapper;
+import com.abi.qms.platform.dto.req.BatchImportMaterialReq;
+import com.abi.qms.platform.service.BaseSapMaterialService;
+import com.abi.task.common.api.exception.BusinessException;
+import com.abi.task.common.api.exception.ErrorCodeEnum;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * @author: fangxinjian
+ * @date: 2021/06/04 11:40
+ * @description:
+ */
+@Service
+public class BaseSapMaterialServiceImpl implements BaseSapMaterialService {
+
+    @Autowired
+    private BaseSapMaterialMapper baseSapMaterialMapper;
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void batchImportMaterial(BatchImportMaterialReq req) {
+        List<BatchImportMaterialReq.BatchImportMaterial> sapMaterialList = req.getBatchImportMaterialList();
+
+        for (BatchImportMaterialReq.BatchImportMaterial material : sapMaterialList) {
+
+            BaseSapMaterial baseSapMaterial = new BaseSapMaterial();
+            baseSapMaterial.setSapMaterialId(material.getSapMaterialId());
+            baseSapMaterial.setSapMaterialName(material.getSapMaterialName());
+
+            saveBaseSapMaterial(baseSapMaterial);
+        }
+
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void batchUpdatetMaterial(BatchImportMaterialReq req) {
+        List<BatchImportMaterialReq.BatchImportMaterial> sapMaterialList = req.getBatchImportMaterialList();
+
+        for (BatchImportMaterialReq.BatchImportMaterial material : sapMaterialList) {
+
+            BaseSapMaterial baseSapMaterial = new BaseSapMaterial();
+            baseSapMaterial.setSapMaterialId(material.getSapMaterialId());
+            baseSapMaterial.setSapMaterialName(material.getSapMaterialName());
+
+            updateBaseSapMaterial(baseSapMaterial);
+        }
+
+    }
+
+    /**
+     * 更新Sap物料信息
+     *
+     * @param sapMaterial
+     */
+    private void updateBaseSapMaterial(BaseSapMaterial sapMaterial) {
+
+        //根据sap物料ID查询物料信息
+        BaseSapMaterial baseSapMaterial = getBaseSapMaterialInfo(sapMaterial.getSapMaterialId());
+
+        if (ObjectUtil.isNull(baseSapMaterial)) {
+            throw new BusinessException(ErrorCodeEnum.ERROR_PARAM.getCode(), "Sap物料ID不存在");
+        }
+
+        sapMaterial.setId(baseSapMaterial.getId());
+        sapMaterial.setUpdateTime(LocalDateTime.now());
+        baseSapMaterialMapper.updateById(sapMaterial);
+
+    }
+
+
+    /**
+     * 保存Sap物料信息
+     *
+     * @param sapMaterial
+     */
+    private void saveBaseSapMaterial(BaseSapMaterial sapMaterial) {
+
+        //根据sap物料ID查询物料信息
+        BaseSapMaterial baseSapMaterial = getBaseSapMaterialInfo(sapMaterial.getSapMaterialId());
+
+        if (ObjectUtil.isNotNull(baseSapMaterial)) {
+            throw new BusinessException(ErrorCodeEnum.ERROR_PARAM.getCode(), "Sap物料ID已存在");
+        }
+
+        baseSapMaterialMapper.insert(sapMaterial);
+    }
+
+
+    private BaseSapMaterial getBaseSapMaterialInfo(String sapMaterialId) {
+
+        QueryWrapper<BaseSapMaterial> qw = new QueryWrapper<>();
+        qw.eq("sap_material_id", sapMaterialId);
+        qw.eq("is_delete", 0);
+
+        //根据sap物料id查询物料信息
+        BaseSapMaterial baseSapMaterial = baseSapMaterialMapper.selectOne(qw);
+
+        return baseSapMaterial;
+
+    }
+
+
+}

+ 94 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/impl/QrPackageSapOrderServiceImpl.java

@@ -0,0 +1,94 @@
+package com.abi.qms.platform.service.impl;
+
+import cn.hutool.core.util.ObjectUtil;
+import com.abi.qms.platform.dao.entity.QrPackageSapOrder;
+import com.abi.qms.platform.dao.mapper.QrPackageSapOrderMapper;
+import com.abi.qms.platform.dto.req.BatchImportPackageSapOrderReq;
+import com.abi.qms.platform.service.QrPackageSapOrderService;
+import com.abi.task.common.api.exception.BusinessException;
+import com.abi.task.common.api.exception.ErrorCodeEnum;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * @author: fangxinjian
+ * @date: 2021/06/04 17:40
+ * @description:
+ */
+@Service
+public class QrPackageSapOrderServiceImpl implements QrPackageSapOrderService {
+
+    @Autowired
+    private QrPackageSapOrderMapper qrPackageSapOrderMapper;
+
+    @Override
+    public void batchImportPackageSapOrder(BatchImportPackageSapOrderReq req) {
+
+        List<BatchImportPackageSapOrderReq.BatchImportSapOrder> sapOrderList = req.getBatchImportSapOrderList();
+        for (BatchImportPackageSapOrderReq.BatchImportSapOrder order : sapOrderList) {
+            QrPackageSapOrder sapOrder = new QrPackageSapOrder();
+            sapOrder.setSapOrderCommitTime(order.getSapOrderCommitTime());
+            sapOrder.setSapOrderNo(order.getSapOrderNo());
+
+            saveQrPackageSapOrder(sapOrder);
+        }
+
+    }
+
+    @Override
+    public void batchUpdatePackageSapOrder(BatchImportPackageSapOrderReq req) {
+
+        List<BatchImportPackageSapOrderReq.BatchImportSapOrder> sapOrderList = req.getBatchImportSapOrderList();
+        for (BatchImportPackageSapOrderReq.BatchImportSapOrder order : sapOrderList) {
+            QrPackageSapOrder sapOrder = new QrPackageSapOrder();
+            sapOrder.setSapOrderCommitTime(order.getSapOrderCommitTime());
+            sapOrder.setSapOrderNo(order.getSapOrderNo());
+
+            updateQrPackageSapOrder(sapOrder);
+        }
+
+    }
+
+    private void updateQrPackageSapOrder(QrPackageSapOrder sapOrder) {
+
+        //根据sap订单号查询订单信息
+        QrPackageSapOrder qrPackageSapOrder = getQrPackageSapOrderInfo(sapOrder.getSapOrderNo());
+
+        if (ObjectUtil.isNull(qrPackageSapOrder)) {
+            throw new BusinessException(ErrorCodeEnum.ERROR_PARAM.getCode(), "Sap订单号不存在");
+        }
+
+        sapOrder.setId(qrPackageSapOrder.getId());
+        sapOrder.setUpdateTime(LocalDateTime.now());
+        qrPackageSapOrderMapper.updateById(sapOrder);
+    }
+
+    private void saveQrPackageSapOrder(QrPackageSapOrder sapOrder) {
+
+        //根据sap订单号查询订单信息
+        QrPackageSapOrder qrPackageSapOrder = getQrPackageSapOrderInfo(sapOrder.getSapOrderNo());
+
+        if (ObjectUtil.isNotNull(qrPackageSapOrder)) {
+            throw new BusinessException(ErrorCodeEnum.ERROR_PARAM.getCode(), "Sap订单号已存在");
+        }
+
+        qrPackageSapOrderMapper.insert(sapOrder);
+    }
+
+    private QrPackageSapOrder getQrPackageSapOrderInfo(String sapOrderNo) {
+
+        QueryWrapper<QrPackageSapOrder> qw = new QueryWrapper<>();
+        qw.eq("sap_order_no", sapOrderNo);
+        qw.eq("is_delete", 0);
+
+        //根据sap订单号查询码包订单信息
+        QrPackageSapOrder qrPackageSapOrder = qrPackageSapOrderMapper.selectOne(qw);
+
+        return qrPackageSapOrder;
+
+    }
+}

+ 11 - 9
abi-cloud-qr-platform-server/src/main/resources/dao/mapper/BaseSapCoverFactoryMapper.xml

@@ -4,19 +4,21 @@
 
     <!-- 通用查询映射结果 -->
     <resultMap id="BaseResultMap" type="com.abi.qms.platform.dao.entity.BaseSapCoverFactory">
-        <id column="ID" property="id" />
-        <result column="SAP_COVER_FACTORY_ID" property="sapCoverFactoryId" />
-        <result column="SAP_COVER_FACTORY_NAME" property="sapCoverFactoryName" />
-        <result column="CREATE_TIME" property="createTime" />
-        <result column="CREATE_BY" property="createBy" />
-        <result column="UPDATE_TIME" property="updateTime" />
-        <result column="UPDATE_BY" property="updateBy" />
-        <result column="IS_DELETE" property="isDelete" />
+        <id column="ID" property="id"/>
+        <result column="SAP_COVER_FACTORY_ID" property="sapCoverFactoryId"/>
+        <result column="SAP_COVER_FACTORY_NAME" property="sapCoverFactoryName"/>
+        <result column="CREATE_TIME" property="createTime"/>
+        <result column="CREATE_BY" property="createBy"/>
+        <result column="UPDATE_TIME" property="updateTime"/>
+        <result column="UPDATE_BY" property="updateBy"/>
+        <result column="IS_DELETE" property="isDelete"/>
+        <result column="keyman_name" property="keyManName"/>
+        <result column="keyman_mobile" property="keyManMobile"/>
     </resultMap>
 
     <!-- 通用查询结果列 -->
     <sql id="Base_Column_List">
-        ID, SAP_COVER_FACTORY_ID, SAP_COVER_FACTORY_NAME, CREATE_TIME, CREATE_BY, UPDATE_TIME, UPDATE_BY, IS_DELETE
+        ID, SAP_COVER_FACTORY_ID, SAP_COVER_FACTORY_NAME, CREATE_TIME, CREATE_BY, UPDATE_TIME, UPDATE_BY, IS_DELETE,keyman_name,keyman_mobile
     </sql>
 
 </mapper>

+ 8 - 8
abi-cloud-qr-platform-server/src/main/resources/dao/mapper/BaseSapMaterialMapper.xml

@@ -4,14 +4,14 @@
 
     <!-- 通用查询映射结果 -->
     <resultMap id="BaseResultMap" type="com.abi.qms.platform.dao.entity.BaseSapMaterial">
-        <id column="ID" property="id" />
-        <result column="SAP_MATERIAL_ID" property="sapMaterialId" />
-        <result column="SAP_MATERIAL_NAME" property="sapMaterialName" />
-        <result column="CREATE_TIME" property="createTime" />
-        <result column="CREATE_BY" property="createBy" />
-        <result column="UPDATE_TIME" property="updateTime" />
-        <result column="UPDATE_BY" property="updateBy" />
-        <result column="IS_DELETE" property="isDelete" />
+        <id column="ID" property="id"/>
+        <result column="SAP_MATERIAL_ID" property="sapMaterialId"/>
+        <result column="SAP_MATERIAL_NAME" property="sapMaterialName"/>
+        <result column="CREATE_TIME" property="createTime"/>
+        <result column="CREATE_BY" property="createBy"/>
+        <result column="UPDATE_TIME" property="updateTime"/>
+        <result column="UPDATE_BY" property="updateBy"/>
+        <result column="IS_DELETE" property="isDelete"/>
     </resultMap>
 
     <!-- 通用查询结果列 -->