From dfeb8e31336e60f3a1bf0932cf2604e0f61fbca2 Mon Sep 17 00:00:00 2001 From: anthonywj Date: Sat, 11 Sep 2021 17:16:32 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AF=BC=E5=85=A5=E5=AF=BC=E5=87=BA=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3bug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basic/BasicThirdSysController.java | 24 +++++++ .../basic/CorpExportLogController.java | 2 +- .../basic/UdiInfoExportLogController.java | 2 +- .../controller/thrsys/ThrOrderController.java | 70 ++++++++++--------- .../entity/thrsys/ThrCorpExportLogEntity.java | 1 + .../thrsys/ThrInvProductsExportLogEntity.java | 1 + .../glxp/api/admin/httpclient/SmpClient.java | 14 ++++ .../req/basic/FilterUdiEpLogRequest.java | 1 + .../res/basic/BasicThirdSysResponse.java | 12 ++++ .../admin/thread/BasicGenExcelService.java | 48 +++++++++++-- .../api/admin/thread/ThrOrdersDlService.java | 25 ++++++- .../admin/thread/ThrProductsDlService.java | 30 ++++++-- .../com/glxp/api/admin/util/HttpClient.java | 2 - .../mybatis/mapper/basic/CorpExportLogDao.xml | 7 +- .../mapper/basic/UdiInfoExportLogDao.xml | 7 +- .../mapper/thrsys/ThrCorpExportLogDao.xml | 7 +- .../thrsys/ThrInvProductsExportLogDao.xml | 7 +- .../mapper/thrsys/ThrOrderExportLogDao.xml | 7 +- .../mapper/thrsys/ThrProductsExportLogDao.xml | 7 +- 19 files changed, 214 insertions(+), 60 deletions(-) create mode 100644 api-admin/src/main/java/com/glxp/api/admin/httpclient/SmpClient.java create mode 100644 api-admin/src/main/java/com/glxp/api/admin/res/basic/BasicThirdSysResponse.java diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/basic/BasicThirdSysController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/basic/BasicThirdSysController.java index 08370083..744c2cbc 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/basic/BasicThirdSysController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/basic/BasicThirdSysController.java @@ -7,6 +7,8 @@ import com.glxp.api.admin.req.basic.FilterBasicThirdSysDetailRequest; import com.glxp.api.admin.req.basic.FilterBasicThirdSysRequest; import com.glxp.api.admin.req.thrsys.FilterThrOrderDetailRequest; import com.glxp.api.admin.res.PageSimpleResponse; +import com.glxp.api.admin.res.basic.BasicThirdSysResponse; +import com.glxp.api.admin.res.inout.WarehouseResponse; import com.glxp.api.admin.service.basic.BasicThirdSysDetailService; import com.glxp.api.admin.service.basic.BasicThirdSysService; import com.glxp.api.admin.service.basic.UdiRelevanceService; @@ -14,6 +16,7 @@ import com.glxp.api.admin.service.basic.UnitMaintainService; import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.util.ResultVOUtils; +import org.springframework.beans.BeanUtils; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -22,7 +25,9 @@ import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import javax.validation.Valid; +import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; @RestController public class BasicThirdSysController { @@ -54,6 +59,25 @@ public class BasicThirdSysController { return ResultVOUtils.success(pageSimpleResponse); } + @GetMapping("/udiwms/basic/thirdsys/get") + public BaseResponse get(FilterBasicThirdSysRequest filterBasicThirdSysRequest, + BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + List basicThirdSysEntities; + basicThirdSysEntities = basicThirdSysService.filterBasicThiSys(filterBasicThirdSysRequest); + List basicThirdSysResponses = basicThirdSysEntities.stream().map(item -> + { + BasicThirdSysResponse basicThirdSysResponse = new BasicThirdSysResponse(); + BeanUtils.copyProperties(item, basicThirdSysResponse); + return basicThirdSysResponse; + }).collect(Collectors.toList()); + return ResultVOUtils.success(basicThirdSysResponses); + } + + @GetMapping("/udiwms/basic/thirdsys/selectIp") public BaseResponse selectIp(FilterBasicThirdSysDetailRequest filterBasicThirdSysDetailRequest, BindingResult bindingResult) { diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/basic/CorpExportLogController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/basic/CorpExportLogController.java index b6a3ba9f..31572c69 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/basic/CorpExportLogController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/basic/CorpExportLogController.java @@ -129,7 +129,7 @@ public class CorpExportLogController { corpExportLogEntity.setType(BasicProcessStatus.EXPORT_SMP); corpExportLogService.insertCorpExportLog(corpExportLogEntity); basicGenExcelService.uploadCorpSmp(genKey, corpsExportRequest); - return ResultVOUtils.success("后台正在导出生成excel文件,请稍后刷新查看!"); + return ResultVOUtils.success("后台正在上传,请稍后刷新查看!"); } //往来单位接口下载(第三方使用) diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/basic/UdiInfoExportLogController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/basic/UdiInfoExportLogController.java index c6f2f8ee..93dd0c03 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/basic/UdiInfoExportLogController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/basic/UdiInfoExportLogController.java @@ -140,7 +140,7 @@ public class UdiInfoExportLogController { udiInfoExportLogEntity.setDlCount(0); udiInfoExportLogService.insertUdiInfoExportLog(udiInfoExportLogEntity); basicGenExcelService.uploadProductsSmp(genKey, udiInfoExportRequest); - return ResultVOUtils.success("后台正在导出生成excel文件,请稍后刷新查看!"); + return ResultVOUtils.success("后台正在上传,请稍后刷新查看!"); } diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrOrderController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrOrderController.java index 2f869551..e2fb6f31 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrOrderController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrOrderController.java @@ -7,6 +7,7 @@ import com.glxp.api.admin.constant.BasicProcessStatus; import com.glxp.api.admin.entity.info.SystemParamConfigEntity; import com.glxp.api.admin.entity.thrsys.ThrOrderDetailEntity; import com.glxp.api.admin.entity.thrsys.ThrOrderEntity; +import com.glxp.api.admin.entity.thrsys.ThrOrderImportDetailEntity; import com.glxp.api.admin.entity.thrsys.ThrOrderImportLogEntity; import com.glxp.api.admin.req.inout.DeleteRequest; import com.glxp.api.admin.req.thrsys.*; @@ -14,8 +15,10 @@ import com.glxp.api.admin.res.PageSimpleResponse; import com.glxp.api.admin.res.inout.ErpOrderResponse; import com.glxp.api.admin.service.info.SystemParamConfigService; import com.glxp.api.admin.service.thrsys.ThrOrderDetailService; +import com.glxp.api.admin.service.thrsys.ThrOrderImportDetailService; import com.glxp.api.admin.service.thrsys.ThrOrderImportLogService; import com.glxp.api.admin.service.thrsys.ThrOrderService; +import com.glxp.api.admin.thread.ThrOrderImportService; import com.glxp.api.admin.thread.ThrOrdersDlService; import com.glxp.api.admin.util.Constant; import com.glxp.api.admin.util.CustomUtil; @@ -45,9 +48,13 @@ public class ThrOrderController { @Resource private ThrOrderImportLogService thrOrderImportLogService; @Resource + private ThrOrderImportDetailService thrOrderImportDetailService; + @Resource RedisUtil redisUtil; @Resource private SystemParamConfigService systemParamConfigService; + @Resource + ThrOrderImportService thrOrderImportService; @GetMapping("/udiwms/thrsys/getOrders") public BaseResponse getOrders(FilterThrOrderRequest filterThrOrderRequest, @@ -98,48 +105,45 @@ public class ThrOrderController { } ThrOrderImportLogEntity thrOrderImportLogEntity = thrOrderImportLogService.selectByGenKey(genKey); if (thrOrderImportLogEntity == null) { + thrOrderImportLogEntity = new ThrOrderImportLogEntity(); thrOrderImportLogEntity.setGenKey(genKey); thrOrderImportLogEntity.setFromType("第三方系统上传"); - thrOrderImportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_PROCESS); + thrOrderImportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_UNPROCESS); thrOrderImportLogEntity.setUpdateTime(new Date()); thrOrderImportLogEntity.setThirdSysFk(postThrOrderRequest.getThirdSys()); thrOrderImportLogService.insertImportLog(thrOrderImportLogEntity); } - List thrOrderEntities; List erpOrderResponses = postThrOrderRequest.getDatas(); if (erpOrderResponses != null && erpOrderResponses.size() > 0) { - - thrOrderEntities = erpOrderResponses.stream().map( - item -> { - ThrOrderEntity thrOrderEntity = new ThrOrderEntity(); - BeanUtils.copyProperties(item, thrOrderEntity); - thrOrderEntity.setThirdSysFk(postThrOrderRequest.getThirdSys()); - thrOrderService.insertThrOrder(thrOrderEntity); - thrOrderEntity = thrOrderService.findByUnique(thrOrderEntity.getBillNo(), thrOrderEntity.getThirdSysFk()); - List subErpOrders = item.getSubErpOrders(); - if (subErpOrders != null && subErpOrders.size() > 0) { - List thrOrderDetailEntities; - ThrOrderEntity finalThrOrderEntity = thrOrderEntity; - thrOrderDetailEntities = subErpOrders.stream().map(subItem -> - { - ThrOrderDetailEntity thrOrderDetailEntity = new ThrOrderDetailEntity(); - BeanUtils.copyProperties(subItem, finalThrOrderEntity); - thrOrderDetailEntity.setOrderIdFk(finalThrOrderEntity.getId() + ""); - thrOrderDetailEntity.setThirdSysFk(finalThrOrderEntity.getThirdSysFk()); - return thrOrderDetailEntity; - }).collect(Collectors.toList()); - thrOrderDetailService.insertThrOrderDetails(thrOrderDetailEntities); - } - return thrOrderEntity; + List thrOrderImportDetailEntities = new ArrayList<>(); + String finalGenKey = genKey; + for (ErpOrderResponse erpOrderResponse : erpOrderResponses) { + List subErpOrders = erpOrderResponse.getSubErpOrders(); + if (subErpOrders != null && subErpOrders.size() > 0) { + for (ErpOrderResponse.SubErpOrder subErpOrder : subErpOrders) { + ThrOrderImportDetailEntity thrOrderDetailEntity = new ThrOrderImportDetailEntity(); + BeanUtils.copyProperties(erpOrderResponse, thrOrderDetailEntity); + BeanUtils.copyProperties(subErpOrder, thrOrderDetailEntity); + thrOrderDetailEntity.setGenKeyFk(finalGenKey); + thrOrderDetailEntity.setThirdSysFk(postThrOrderRequest.getThirdSys()); + thrOrderDetailEntity.setUpdateTime(new Date()); + thrOrderImportDetailEntities.add(thrOrderDetailEntity); } - ).collect(Collectors.toList()); - thrOrderService.insertThrOrders(thrOrderEntities); - return ResultVOUtils.success("单据上传成功!"); + + } + } + thrOrderImportDetailService.insertOrderImportDetails(thrOrderImportDetailEntities); + thrOrderImportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_UNPROCESS); + thrOrderImportLogEntity.setUpdateTime(new Date()); + thrOrderImportLogService.updateImportLog(thrOrderImportLogEntity); + thrOrderImportService.importThrOrder(finalGenKey); + } else { + thrOrderImportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_FAIL); + thrOrderImportLogEntity.setUpdateTime(new Date()); + thrOrderImportLogService.updateImportLog(thrOrderImportLogEntity); + return ResultVOUtils.error(500, "上传数据为空"); } - thrOrderImportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_SUCCESS); - thrOrderImportLogEntity.setUpdateTime(new Date()); - thrOrderImportLogService.updateImportLog(thrOrderImportLogEntity); - return ResultVOUtils.error(500, "上传数据为空"); + return ResultVOUtils.success("单据上传成功!"); } @PostMapping("/udiwms/thrsys/delOrder") @@ -184,7 +188,7 @@ public class ThrOrderController { thrOrderImportLogEntity.setThirdSysFk(filterThrProductsRequest.getThirdSysFk()); thrOrderImportLogService.insertImportLog(thrOrderImportLogEntity); - thrOrdersDlService.importOrders(genKey,filterThrProductsRequest.getBillAction()); + thrOrdersDlService.importOrders(genKey, filterThrProductsRequest.getBillAction()); return ResultVOUtils.success("后台开始下载更新,请稍后刷新查看"); } } diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrCorpExportLogEntity.java b/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrCorpExportLogEntity.java index 7251c6af..b59212ab 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrCorpExportLogEntity.java +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrCorpExportLogEntity.java @@ -13,4 +13,5 @@ public class ThrCorpExportLogEntity { private String remark; private Integer dlCount; private String filePath; + private Integer type; } diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrInvProductsExportLogEntity.java b/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrInvProductsExportLogEntity.java index 3af16df5..81e87049 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrInvProductsExportLogEntity.java +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrInvProductsExportLogEntity.java @@ -13,4 +13,5 @@ public class ThrInvProductsExportLogEntity { private String remark; private Integer dlCount; private String filePath; + private Integer type; } diff --git a/api-admin/src/main/java/com/glxp/api/admin/httpclient/SmpClient.java b/api-admin/src/main/java/com/glxp/api/admin/httpclient/SmpClient.java new file mode 100644 index 00000000..fad491cb --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/httpclient/SmpClient.java @@ -0,0 +1,14 @@ +package com.glxp.api.admin.httpclient; + +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.TypeReference; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; + +public class SmpClient { + + public void uploadCorp(){ + + } + +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/req/basic/FilterUdiEpLogRequest.java b/api-admin/src/main/java/com/glxp/api/admin/req/basic/FilterUdiEpLogRequest.java index 8817456b..3af81ea9 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/req/basic/FilterUdiEpLogRequest.java +++ b/api-admin/src/main/java/com/glxp/api/admin/req/basic/FilterUdiEpLogRequest.java @@ -10,4 +10,5 @@ public class FilterUdiEpLogRequest extends ListPageRequest { private String genKey; private Integer status; + private Integer type; } diff --git a/api-admin/src/main/java/com/glxp/api/admin/res/basic/BasicThirdSysResponse.java b/api-admin/src/main/java/com/glxp/api/admin/res/basic/BasicThirdSysResponse.java new file mode 100644 index 00000000..1b4a076a --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/res/basic/BasicThirdSysResponse.java @@ -0,0 +1,12 @@ +package com.glxp.api.admin.res.basic; + +import lombok.Data; + +@Data +public class BasicThirdSysResponse { + + private String id; + private String thirdId; + private String thirdName; + +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/thread/BasicGenExcelService.java b/api-admin/src/main/java/com/glxp/api/admin/thread/BasicGenExcelService.java index 1f20f240..cbf3fa2e 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/thread/BasicGenExcelService.java +++ b/api-admin/src/main/java/com/glxp/api/admin/thread/BasicGenExcelService.java @@ -1,14 +1,21 @@ package com.glxp.api.admin.thread; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.TypeReference; import com.glxp.api.admin.constant.BasicProcessStatus; import com.glxp.api.admin.entity.basic.*; +import com.glxp.api.admin.entity.info.SystemParamConfigEntity; import com.glxp.api.admin.req.basic.*; import com.glxp.api.admin.res.basic.UdiRelevanceResponse; import com.glxp.api.admin.service.basic.BasicUnitMaintainService; import com.glxp.api.admin.service.basic.CorpExportLogService; import com.glxp.api.admin.service.basic.UdiInfoExportLogService; import com.glxp.api.admin.service.basic.UdiRelevanceService; +import com.glxp.api.admin.service.info.SystemParamConfigService; import com.glxp.api.admin.util.ExcelUtil; +import com.glxp.api.admin.util.HttpClient; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; import org.springframework.beans.BeanUtils; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; @@ -29,6 +36,8 @@ public class BasicGenExcelService { UdiInfoExportLogService udiInfoExportLogService; @Resource UdiRelevanceService udiRelevanceService; + @Resource + SystemParamConfigService systemParamConfigService; //往来单位导出excel文件 @Async @@ -106,7 +115,6 @@ public class BasicGenExcelService { for (Integer id : ids) { BasicUnitMaintainFilterRequest filterRequest = new BasicUnitMaintainFilterRequest(); filterRequest.setId(id); - List> excelData = new ArrayList<>(); List unitMaintainEntities = basicUnitMaintainService.filterList(filterRequest); if (unitMaintainEntities != null && unitMaintainEntities.size() > 0) { for (BasicUnitMaintainEntity basicUnitMaintainEntity : unitMaintainEntities) { @@ -114,6 +122,7 @@ public class BasicGenExcelService { BeanUtils.copyProperties(basicUnitMaintainEntity, corpImportDetailEntity); corpImportDetailEntities.add(corpImportDetailEntity); } + postCorpsRequest.setDatas(corpImportDetailEntities); } } @@ -130,11 +139,28 @@ public class BasicGenExcelService { BeanUtils.copyProperties(basicUnitMaintainEntity, corpImportDetailEntity); corpImportDetailEntities.add(corpImportDetailEntity); } + postCorpsRequest.setDatas(corpImportDetailEntities); } } + //todo 上传SMP - corpExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_SUCCESS); + SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("smp_service_ip"); + if(systemParamConfigEntity!=null){ + String response = HttpClient.uCloudPost(systemParamConfigEntity.getParamValue()+"/udiwms/basic/corps/upload", postCorpsRequest); + BaseResponse baseResponse = JSONObject.parseObject(response, new TypeReference() {}); + if (baseResponse.getCode() == 20000) { + corpExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_SUCCESS); + } else { + corpExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_FAIL); + } + }else { + corpExportLogEntity.setRemark("SMP服务IP地址未定义!"); + corpExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_FAIL); + } + + + corpExportLogService.updateCorpExportLog(corpExportLogEntity); } @@ -194,6 +220,7 @@ public class BasicGenExcelService { public void uploadProductsSmp(String genKey, UdiInfoExportRequest udiInfoExportRequest) { UdiInfoExportLogEntity udiInfoExportLogEntity = udiInfoExportLogService.selectByGenKey(genKey); PostUdiInfoRequest postUdiInfoRequest = new PostUdiInfoRequest(); + postUdiInfoRequest.setGenKey(genKey); //选中导出 if (udiInfoExportRequest.getUuids() != null && udiInfoExportRequest.getUuids().size() > 0) { List uuids = udiInfoExportRequest.getUuids(); @@ -210,9 +237,20 @@ public class BasicGenExcelService { List genDatas = genSmpData(filterUdiInfoRequest); postUdiInfoRequest.setDatas(genDatas); } - //todo 上传smp - - udiInfoExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_SUCCESS); + //todo 上传SMP + SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("smp_service_ip"); + if(systemParamConfigEntity!=null){ + String response = HttpClient.uCloudPost(systemParamConfigEntity.getParamValue()+"/udiwms/basic/products/upload", postUdiInfoRequest); + BaseResponse baseResponse = JSONObject.parseObject(response, new TypeReference() {}); + if (baseResponse.getCode() == 20000) { + udiInfoExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_SUCCESS); + } else { + udiInfoExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_FAIL); + } + }else { + udiInfoExportLogEntity.setRemark("SMP服务IP地址未定义!"); + udiInfoExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_FAIL); + } udiInfoExportLogService.updateUdiInfoExportLog(udiInfoExportLogEntity); } diff --git a/api-admin/src/main/java/com/glxp/api/admin/thread/ThrOrdersDlService.java b/api-admin/src/main/java/com/glxp/api/admin/thread/ThrOrdersDlService.java index fdcf9f36..f02e044a 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/thread/ThrOrdersDlService.java +++ b/api-admin/src/main/java/com/glxp/api/admin/thread/ThrOrdersDlService.java @@ -1,8 +1,11 @@ package com.glxp.api.admin.thread; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.TypeReference; import com.glxp.api.admin.config.WebSocketServer; import com.glxp.api.admin.constant.BasicProcessStatus; import com.glxp.api.admin.entity.basic.BasicThirdSysDetailEntity; +import com.glxp.api.admin.entity.info.SystemParamConfigEntity; import com.glxp.api.admin.entity.thrsys.*; import com.glxp.api.admin.httpclient.ErpOrderClient; import com.glxp.api.admin.req.basic.FilterUdiIpLogRequest; @@ -15,9 +18,11 @@ import com.glxp.api.admin.res.PageSimpleResponse; import com.glxp.api.admin.res.inout.ErpOrderResponse; import com.glxp.api.admin.service.basic.BasicThirdSysDetailService; import com.glxp.api.admin.service.basic.BussinessTypeService; +import com.glxp.api.admin.service.info.SystemParamConfigService; import com.glxp.api.admin.service.thrsys.*; import com.glxp.api.admin.util.Constant; import com.glxp.api.admin.util.ExcelUtil; +import com.glxp.api.admin.util.HttpClient; import com.glxp.api.admin.util.RedisUtil; import com.glxp.api.common.res.BaseResponse; import org.springframework.beans.BeanUtils; @@ -49,6 +54,10 @@ public class ThrOrdersDlService { ThrOrderImportDetailService thrOrderImportDetailService; @Resource ThrOrderImportService thrOrderImportService; + @Resource + SystemParamConfigService systemParamConfigService; + + @Async public void importOrders(String genKey, String action) { @@ -189,7 +198,6 @@ public class ThrOrdersDlService { } else { FilterThrOrderRequest filterThrOrderRequest = new FilterThrOrderRequest(); BeanUtils.copyProperties(thrOrderExportRequest, filterThrOrderRequest); - List> excelData = new ArrayList<>(); List thrOrderEntities = thrOrderService.filterThrOrder(filterThrOrderRequest); for (ThrOrderEntity thrOrderEntity : thrOrderEntities) { ErpOrderResponse erpOrderResponse = new ErpOrderResponse(); @@ -210,10 +218,25 @@ public class ThrOrdersDlService { } } + postThrOrderRequest.setDatas(erpOrderResponses); } //toDo 上傳SMP postThrOrderRequest.setGenKey(genKey); postThrOrderRequest.setThirdSys(thrOrderExportRequest.getThirdSysFk()); + SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("smp_service_ip"); + if(systemParamConfigEntity!=null){ + String response = HttpClient.uCloudPost(systemParamConfigEntity.getParamValue()+"/udiwms/thrsys/postOrderDetail", postThrOrderRequest); + BaseResponse baseResponse = JSONObject.parseObject(response, new TypeReference() {}); + if (baseResponse.getCode() == 20000) { + thrOrderExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_SUCCESS); + } else { + thrOrderExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_FAIL); + } + }else { + thrOrderExportLogEntity.setRemark("SMP服务IP地址未定义!"); + thrOrderExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_FAIL); + } + thrOrderExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_SUCCESS); thrOrderExportLogService.updateThrOrderExportLog(thrOrderExportLogEntity); } diff --git a/api-admin/src/main/java/com/glxp/api/admin/thread/ThrProductsDlService.java b/api-admin/src/main/java/com/glxp/api/admin/thread/ThrProductsDlService.java index 46d50ac4..72f09b57 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/thread/ThrProductsDlService.java +++ b/api-admin/src/main/java/com/glxp/api/admin/thread/ThrProductsDlService.java @@ -1,8 +1,11 @@ package com.glxp.api.admin.thread; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.TypeReference; import com.glxp.api.admin.config.WebSocketServer; import com.glxp.api.admin.constant.BasicProcessStatus; import com.glxp.api.admin.entity.basic.BasicThirdSysDetailEntity; +import com.glxp.api.admin.entity.info.SystemParamConfigEntity; import com.glxp.api.admin.entity.thrsys.*; import com.glxp.api.admin.httpclient.ErpBasicClient; import com.glxp.api.admin.req.basic.FilterErpGoodsRequest; @@ -13,12 +16,14 @@ import com.glxp.api.admin.req.thrsys.ThrProductsExportRequest; import com.glxp.api.admin.res.PageSimpleResponse; import com.glxp.api.admin.res.basic.ErpProductsResponse; import com.glxp.api.admin.service.basic.BasicThirdSysDetailService; +import com.glxp.api.admin.service.info.SystemParamConfigService; import com.glxp.api.admin.service.thrsys.ThrProductsExportLogService; import com.glxp.api.admin.service.thrsys.ThrProductsImportDetailService; import com.glxp.api.admin.service.thrsys.ThrProductsImportLogService; import com.glxp.api.admin.service.thrsys.ThrProductsService; import com.glxp.api.admin.util.Constant; import com.glxp.api.admin.util.ExcelUtil; +import com.glxp.api.admin.util.HttpClient; import com.glxp.api.admin.util.RedisUtil; import com.glxp.api.common.res.BaseResponse; import org.springframework.beans.BeanUtils; @@ -45,7 +50,8 @@ public class ThrProductsDlService { ThrProductsImportDetailService thrProductsImportDetailService; @Resource ThrProductsExportLogService thrProductsExportLogService; - + @Resource + SystemParamConfigService systemParamConfigService; //主动下载产品信息 @Async @@ -166,7 +172,6 @@ public class ThrProductsDlService { postThrProductsRequest.setGenKey(genKey); postThrProductsRequest.setThirdSys(thrProductsExportRequest.getThirdSys()); postThrProductsRequest.setUploadType("接口上传"); - //Todo 接口上传SMP } else {//一键导出 @@ -208,12 +213,27 @@ public class ThrProductsDlService { postThrProductsRequest.setThirdSys(thrProductsExportRequest.getThirdSys()); postThrProductsRequest.setUploadType("接口上传"); } - //Todo 接口上传SMP - thrProductsExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_SUCCESS); - thrProductsExportLogService.updateThrProductsExportLog(thrProductsExportLogEntity); } + + //Todo 接口上传SMP + SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("smp_service_ip"); + if(systemParamConfigEntity!=null){ + String response = HttpClient.uCloudPost(systemParamConfigEntity.getParamValue()+"/udiwms/thrsys/postThrProducts", postThrProductsRequest); + BaseResponse baseResponse = JSONObject.parseObject(response, new TypeReference() {}); + if (baseResponse.getCode() == 20000) { + thrProductsExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_SUCCESS); + } else { + thrProductsExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_FAIL); + } + }else { + thrProductsExportLogEntity.setRemark("SMP服务IP地址未定义!"); + thrProductsExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_FAIL); + } + + thrProductsExportLogEntity.setStatus(BasicProcessStatus.UDIINFO_IMPORT_SUCCESS); + thrProductsExportLogService.updateThrProductsExportLog(thrProductsExportLogEntity); } // //接收第三方上传或文件导入数据 diff --git a/api-admin/src/main/java/com/glxp/api/admin/util/HttpClient.java b/api-admin/src/main/java/com/glxp/api/admin/util/HttpClient.java index 46172c28..4caccdd6 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/util/HttpClient.java +++ b/api-admin/src/main/java/com/glxp/api/admin/util/HttpClient.java @@ -49,8 +49,6 @@ public class HttpClient { public static String uCloudPost(String url, Object object) { RestTemplate restTemplate = new RestTemplate(); String json = JSONObject.toJSON(object).toString(); -// MultiValueMap postParameters = new LinkedMultiValueMap<>(); -// postParameters.add("params", json); logger.info(url+"\n"+json); HttpHeaders headers = new HttpHeaders(); headers.add("Content-Type", "application/json"); diff --git a/api-admin/src/main/resources/mybatis/mapper/basic/CorpExportLogDao.xml b/api-admin/src/main/resources/mybatis/mapper/basic/CorpExportLogDao.xml index 4848d1dd..0f2df686 100644 --- a/api-admin/src/main/resources/mybatis/mapper/basic/CorpExportLogDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/basic/CorpExportLogDao.xml @@ -13,6 +13,9 @@ AND status = #{status} + + AND `type` = #{type} + @@ -21,12 +24,12 @@ insert INTO basic_corps_export_log - (genKey,updateTime,dlCount,status,filePath,remark) + (genKey,updateTime,dlCount,status,filePath,remark,`type`) values ( #{genKey}, #{updateTime}, - #{dlCount},#{status},#{filePath},#{remark} + #{dlCount},#{status},#{filePath},#{remark},#{type} ) diff --git a/api-admin/src/main/resources/mybatis/mapper/basic/UdiInfoExportLogDao.xml b/api-admin/src/main/resources/mybatis/mapper/basic/UdiInfoExportLogDao.xml index cdaed33a..d10ec581 100644 --- a/api-admin/src/main/resources/mybatis/mapper/basic/UdiInfoExportLogDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/basic/UdiInfoExportLogDao.xml @@ -13,6 +13,9 @@ AND status = #{status} + + AND `type` = #{type} + @@ -21,12 +24,12 @@ insert INTO basic_products_export_log - (genKey,updateTime,dlCount,status,filePath,remark) + (genKey,updateTime,dlCount,status,filePath,remark,`type`) values ( #{genKey}, #{updateTime}, - #{dlCount},#{status},#{filePath},#{remark} + #{dlCount},#{status},#{filePath},#{remark},#{type} ) diff --git a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrCorpExportLogDao.xml b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrCorpExportLogDao.xml index f2704219..01643803 100644 --- a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrCorpExportLogDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrCorpExportLogDao.xml @@ -13,6 +13,9 @@ AND status = #{status} + + AND `type` = #{type} + @@ -21,12 +24,12 @@ insert INTO thr_corp_export_log - (genKey,updateTime,dlCount,status,filePath,remark) + (genKey,updateTime,dlCount,status,filePath,remark,`type`) values ( #{genKey}, #{updateTime}, - #{dlCount},#{status},#{filePath},#{remark} + #{dlCount},#{status},#{filePath},#{remark},#{type} ) diff --git a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrInvProductsExportLogDao.xml b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrInvProductsExportLogDao.xml index aea95a43..47d68535 100644 --- a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrInvProductsExportLogDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrInvProductsExportLogDao.xml @@ -13,6 +13,9 @@ AND status = #{status} + + AND `type` = #{type} + @@ -21,12 +24,12 @@ insert INTO thr_inv_products_export_log - (genKey,updateTime,dlCount,status,filePath,remark) + (genKey,updateTime,dlCount,status,filePath,remark,`type`) values ( #{genKey}, #{updateTime}, - #{dlCount},#{status},#{filePath},#{remark} + #{dlCount},#{status},#{filePath},#{remark},#{type} ) diff --git a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrOrderExportLogDao.xml b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrOrderExportLogDao.xml index cdec802b..45eb81b1 100644 --- a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrOrderExportLogDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrOrderExportLogDao.xml @@ -13,6 +13,9 @@ AND status = #{status} + + AND `type` = #{type} + @@ -21,12 +24,12 @@ insert INTO thr_order_export_log - (genKey,updateTime,dlCount,status,filePath,remark) + (genKey,updateTime,dlCount,status,filePath,remark,`type`) values ( #{genKey}, #{updateTime}, - #{dlCount},#{status},#{filePath},#{remark} + #{dlCount},#{status},#{filePath},#{remark},#{type} ) diff --git a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrProductsExportLogDao.xml b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrProductsExportLogDao.xml index f87916a8..d6dab2d8 100644 --- a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrProductsExportLogDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrProductsExportLogDao.xml @@ -13,6 +13,9 @@ AND status = #{status} + + AND `type` = #{type} + @@ -21,12 +24,12 @@ insert INTO thr_products_export_log - (genKey,updateTime,dlCount,status,filePath,remark) + (genKey,updateTime,dlCount,status,filePath,remark,`type`) values ( #{genKey}, #{updateTime}, - #{dlCount},#{status},#{filePath},#{remark} + #{dlCount},#{status},#{filePath},#{remark},#{type} )