diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/basic/CorpImportLogController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/basic/CorpImportLogController.java index 6b79a0bb..de773b77 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/basic/CorpImportLogController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/basic/CorpImportLogController.java @@ -113,7 +113,7 @@ public class CorpImportLogController { } - //产品信息文件导入 + //往来单位信息文件导入 @PostMapping("/udiwms/corps/importLog/upload") public BaseResponse uploadProducts(@RequestParam("file") List files, @RequestParam("thirdSys") String thirdSys) { @@ -318,7 +318,7 @@ public class CorpImportLogController { } - //产品信息接口上传 + //往来单位信息接口上传 @PostMapping("/udiwms/corps/importLog/post") public BaseResponse postUdiInfo(@RequestBody PostCorpsRequest postCorpsRequest, BindingResult bindingResult) { if (bindingResult.hasErrors()) { @@ -343,7 +343,7 @@ public class CorpImportLogController { if (corpImportLogEntity == null) { corpImportLogEntity = new CorpImportLogEntity(); corpImportLogEntity.setGenKey(genKey); - corpImportLogEntity.setFromType("文件导入"); + corpImportLogEntity.setFromType("接口上传"); corpImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_UNPROCESS); corpImportLogEntity.setUpdateTime(new Date(System.currentTimeMillis())); corpImportLogService.insertImportLog(corpImportLogEntity); diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/inout/OrderDetailController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/inout/OrderDetailController.java index 38b7cd24..978b15f8 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/inout/OrderDetailController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/inout/OrderDetailController.java @@ -8,7 +8,10 @@ import com.glxp.api.admin.entity.basic.BussinessTypeEntity; import com.glxp.api.admin.entity.info.SystemParamConfigEntity; import com.glxp.api.admin.entity.inout.ErpOrderEntity; import com.glxp.api.admin.entity.inout.FilterErpOrderRequest; +import com.glxp.api.admin.entity.thrsys.ThrOrderDetailEntity; +import com.glxp.api.admin.entity.thrsys.ThrOrderEntity; import com.glxp.api.admin.httpclient.ErpOrderClient; +import com.glxp.api.admin.req.thrsys.FilterThrOrderDetailRequest; import com.glxp.api.admin.req.thrsys.FilterThrOrderRequest; import com.glxp.api.admin.res.basic.BussinessTypResponse; import com.glxp.api.admin.res.inout.ErpOrderResponse; @@ -24,6 +27,7 @@ import com.glxp.api.admin.service.info.SystemParamConfigService; import com.glxp.api.admin.service.inout.OrderDetailService; import com.glxp.api.admin.service.inout.OrderService; import com.glxp.api.admin.service.inout.CodesService; +import com.glxp.api.admin.service.thrsys.ThrOrderDetailService; import com.glxp.api.admin.service.thrsys.ThrOrderService; import com.glxp.api.admin.thread.IoTransInoutService; import com.glxp.api.common.enums.ResultEnum; @@ -65,6 +69,8 @@ public class OrderDetailController { private BussinessTypeService bussinessTypeService; @Resource private ThrOrderService thrOrderService; + @Resource + private ThrOrderDetailService thrOrderDetailService; @GetMapping("/udiwms/erpOrder/filter") public BaseResponse filterErpOrder(FilterOrderRequest filterErpOrderRequest, @@ -84,15 +90,35 @@ public class OrderDetailController { //todo 订单查询,需加日期 FilterThrOrderRequest filterThrOrderRequest = new FilterThrOrderRequest(); BeanUtils.copyProperties(filterErpOrderRequest, filterThrOrderRequest); - if(filterThrOrderRequest.getBillAction()!=null){ - BussinessTypeEntity bussinessTypeEntity = bussinessTypeService.findBTByAction(filterErpOrderRequest.getBillAction()); - filterThrOrderRequest.setBillAction(bussinessTypeEntity.getName()); - } +// if (filterThrOrderRequest.getBillAction() != null) { +// BussinessTypeEntity bussinessTypeEntity = bussinessTypeService.findBTByAction(filterErpOrderRequest.getBillAction()); +// filterThrOrderRequest.setBillAction(bussinessTypeEntity.getName()); +// } filterThrOrderRequest.setPage(filterErpOrderRequest.getPage()); filterThrOrderRequest.setLimit(filterErpOrderRequest.getLimit()); - List erpOrderResponses = thrOrderService.filterAllDetail(filterThrOrderRequest); - PageInfo pageInfo; - pageInfo = new PageInfo<>(erpOrderResponses); + List erpOrderResponses = new ArrayList<>(); + List data = thrOrderService.filterThrOrder(filterThrOrderRequest); + if (data != null && data.size() > 0) { + for (ThrOrderEntity thrOrderEntity : data) { + FilterThrOrderDetailRequest filterThrOrderDetailRequest = new FilterThrOrderDetailRequest(); + filterThrOrderDetailRequest.setOrderIdFk(thrOrderEntity.getId() + ""); + List thrOrderDetailEntities =thrOrderDetailService.filterThrOrderDetailDetail(filterThrOrderDetailRequest); + ErpOrderResponse erpOrderResponse = new ErpOrderResponse(); + BeanUtils.copyProperties(thrOrderEntity, erpOrderResponse); + List subErpOrders = new ArrayList<>(); + if (thrOrderDetailEntities != null && thrOrderDetailEntities.size() > 0) { + for (ThrOrderDetailEntity thrOrderDetailEntity : thrOrderDetailEntities) { + ErpOrderResponse.SubErpOrder subErpOrder = new ErpOrderResponse.SubErpOrder(); + BeanUtils.copyProperties(thrOrderDetailEntity, subErpOrder); + subErpOrders.add(subErpOrder); + } + } + erpOrderResponse.setSubErpOrders(subErpOrders); + erpOrderResponses.add(erpOrderResponse); + } + } + PageInfo pageInfo; + pageInfo = new PageInfo<>(data); PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); pageSimpleResponse.setTotal(pageInfo.getTotal()); pageSimpleResponse.setList(erpOrderResponses); diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrCorpImportLogController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrCorpImportLogController.java index c3da163c..516c0e72 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrCorpImportLogController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrCorpImportLogController.java @@ -1,10 +1,13 @@ package com.glxp.api.admin.controller.thrsys; import com.github.pagehelper.PageInfo; +import com.glxp.api.admin.entity.thrsys.ThrCorpImportDetailEntity; import com.glxp.api.admin.entity.thrsys.ThrCorpImportLogEntity; +import com.glxp.api.admin.entity.thrsys.ThrProductsImportDetailEntity; import com.glxp.api.admin.req.basic.FilterUdiIpLogRequest; import com.glxp.api.admin.req.inout.DeleteRequest; import com.glxp.api.admin.res.PageSimpleResponse; +import com.glxp.api.admin.service.thrsys.ThrCorpImportDetailService; import com.glxp.api.admin.service.thrsys.ThrCorpImportLogService; import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.res.BaseResponse; @@ -14,6 +17,7 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; + import javax.annotation.Resource; import java.util.List; @@ -25,6 +29,8 @@ public class ThrCorpImportLogController { @Resource ThrCorpImportLogService thrCorpImportLogService; + @Resource + ThrCorpImportDetailService thrCorpImportDetailService; @GetMapping("/udiwms/thrCorp/importLog/filter") public BaseResponse filter(FilterUdiIpLogRequest filterUdiIpLogRequest, @@ -43,6 +49,22 @@ public class ThrCorpImportLogController { return ResultVOUtils.success(pageSimpleResponse); } + @GetMapping("/udiwms/thrCorp/importLog/filterDetail") + public BaseResponse filterDetail(FilterUdiIpLogRequest filterUdiIpLogRequest, + BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + List thrCorpImportDetailEntities + = thrCorpImportDetailService.filterCorpDetailImport(filterUdiIpLogRequest); + PageInfo pageInfo; + pageInfo = new PageInfo<>(thrCorpImportDetailEntities); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(thrCorpImportDetailEntities); + return ResultVOUtils.success(pageSimpleResponse); + } @PostMapping("/udiwms/thrCorp/importLog/deleteLog") public BaseResponse deleteLog(@RequestBody DeleteRequest deleteRequest, BindingResult bindingResult) { @@ -57,11 +79,10 @@ public class ThrCorpImportLogController { if (thrCorpImportLogEntities != null && thrCorpImportLogEntities.size() > 0) { ThrCorpImportLogEntity thrCorpImportLogEntity = thrCorpImportLogEntities.get(0); thrCorpImportLogService.deleteById(thrCorpImportLogEntity.getId() + ""); + thrCorpImportDetailService.deleteByGenkey(thrCorpImportLogEntity.getGenKey()); } - return ResultVOUtils.success("删除成功"); } - } diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrCorpsController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrCorpsController.java index 9b4de78d..946f23e1 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrCorpsController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrCorpsController.java @@ -3,10 +3,7 @@ package com.glxp.api.admin.controller.thrsys; import com.github.pagehelper.PageInfo; import com.glxp.api.admin.constant.UdiInfoImportStatus; import com.glxp.api.admin.entity.inventory.StockPrintEntity; -import com.glxp.api.admin.entity.thrsys.ThrCorpEntity; -import com.glxp.api.admin.entity.thrsys.ThrCorpImportLogEntity; -import com.glxp.api.admin.entity.thrsys.ThrOrderImportLogEntity; -import com.glxp.api.admin.entity.thrsys.ThrProductsImportLogEntity; +import com.glxp.api.admin.entity.thrsys.*; import com.glxp.api.admin.req.basic.FilterStockprintRequest; import com.glxp.api.admin.req.inout.DeleteRequest; import com.glxp.api.admin.req.thrsys.FilterThrCorpRequest; @@ -15,6 +12,7 @@ import com.glxp.api.admin.req.thrsys.PostThrCorpRequest; import com.glxp.api.admin.res.PageSimpleResponse; import com.glxp.api.admin.res.basic.ErpUnitsResponse; import com.glxp.api.admin.res.inout.WarehouseResponse; +import com.glxp.api.admin.service.thrsys.ThrCorpImportDetailService; import com.glxp.api.admin.service.thrsys.ThrCorpImportLogService; import com.glxp.api.admin.service.thrsys.ThrCorpService; import com.glxp.api.admin.service.thrsys.ThrOrderImportLogService; @@ -44,6 +42,9 @@ public class ThrCorpsController { private ThrCorpsDlService thrCorpsDlService; @Resource private ThrCorpImportLogService thrCorpImportLogService; + @Resource + private ThrCorpImportDetailService thrCorpImportDetailService; + @GetMapping("/udiwms/thrsys/getCorps") public BaseResponse getCorps(FilterThrCorpRequest filterThrCorpRequest, @@ -88,7 +89,6 @@ public class ThrCorpsController { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } - List thrCorpEntities; List erpUnitsResponses = postThrCorpRequest.getCorps(); if (erpUnitsResponses != null && erpUnitsResponses.size() > 0) { String genKey = postThrCorpRequest.getGenKey(); @@ -108,25 +108,13 @@ public class ThrCorpsController { thrCorpImportLogEntity.setThirdSysFk(postThrCorpRequest.getThirdSys()); thrCorpImportLogService.insertImportLog(thrCorpImportLogEntity); } - thrCorpEntities = erpUnitsResponses.stream().map( - item -> { - ThrCorpEntity thrCorpEntity = new ThrCorpEntity(); - BeanUtils.copyProperties(item, thrCorpEntity); - thrCorpEntity.setUnitId(item.getId()); - thrCorpEntity.setThirdSysFk(postThrCorpRequest.getThirdSys()); - return thrCorpEntity; - } - ).collect(Collectors.toList()); - thrCorpService.insertThrCorpss(thrCorpEntities); - thrCorpImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_SUCCESS); - thrCorpImportLogEntity.setUpdateTime(new Date()); - thrCorpImportLogService.updateImportLog(thrCorpImportLogEntity); - return ResultVOUtils.success("往来单位上传成功!"); + thrCorpsDlService.insertData(genKey,postThrCorpRequest.getThirdSys(),erpUnitsResponses); + return ResultVOUtils.success("往来单位上传成功!后台正在处理,请稍后刷新查看!"); } return ResultVOUtils.error(500, "上传数据为空"); } - //接口一键导入 + //接口一键全部 @RequestMapping("/udiwms/thrsys/corp/downloadAll") public BaseResponse downloadAll(FilterThrProductsRequest filterThrProductsRequest) { String data = (String) redisUtil.get(Constant.dlThrProducts); @@ -145,7 +133,7 @@ public class ThrCorpsController { thrCorpImportLogEntity.setUpdateTime(new Date()); thrCorpImportLogEntity.setThirdSysFk(filterThrProductsRequest.getThirdSysFk()); thrCorpImportLogService.insertImportLog(thrCorpImportLogEntity); - thrCorpsDlService.importCorps(genKey,filterThrProductsRequest.getThirdSysFk()); + thrCorpsDlService.importCorps(genKey, filterThrProductsRequest.getThirdSysFk()); return ResultVOUtils.success("后台开始下载更新,请稍后刷新查看"); } } diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrInvProductsController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrInvProductsController.java index d8b939f3..007635cb 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrInvProductsController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrInvProductsController.java @@ -61,6 +61,8 @@ public class ThrInvProductsController { return ResultVOUtils.success(pageSimpleResponse); } + + //第三方服务上传(包括文件导入后上传) @PostMapping("/udiwms/thrsys/postInvProducts") public BaseResponse postInvProducts(@RequestBody PostThrInvProductsRequest postThrInvProductsRequest, BindingResult bindingResult) { @@ -68,7 +70,7 @@ public class ThrInvProductsController { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } - List thrInvProductsEntities; + List erpOnHandResponses = postThrInvProductsRequest.getDatas(); String genKey = postThrInvProductsRequest.getGenKey(); @@ -89,23 +91,8 @@ public class ThrInvProductsController { thrInvProductsImportLogService.insertImportLog(thrInvProductsImportLogEntity); } if (erpOnHandResponses != null && erpOnHandResponses.size() > 0) { - - thrInvProductsEntities = erpOnHandResponses.stream().map( - item -> { - ThrInvProductsEntity thrInvProductsEntity = new ThrInvProductsEntity(); - BeanUtils.copyProperties(item, thrInvProductsEntity); - thrInvProductsEntity.setInventoryCode(item.getCode()); - thrInvProductsEntity.setInventoryName(item.getName()); - thrInvProductsEntity.setThirdSysFk(postThrInvProductsRequest.getThirdSys()); - return thrInvProductsEntity; - } - ).collect(Collectors.toList()); - thrInvProductsService.insertThrInvProducts(thrInvProductsEntities); - - thrInvProductsImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_SUCCESS); - thrInvProductsImportLogEntity.setUpdateTime(new Date()); - thrInvProductsImportLogService.updateImportLog(thrInvProductsImportLogEntity); - return ResultVOUtils.success("库存产品信息上传成功!"); + thrInvProductsDlService.insertInvProducts(genKey, postThrInvProductsRequest.getThirdSys(), erpOnHandResponses); + return ResultVOUtils.success("库存产品信息上传成功,后台正在处理,请稍后重试!"); } thrInvProductsImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_FAIL); thrInvProductsImportLogEntity.setUpdateTime(new Date()); diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrInvProductsImportLogController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrInvProductsImportLogController.java index 2f2130be..b868221e 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrInvProductsImportLogController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrInvProductsImportLogController.java @@ -1,10 +1,13 @@ package com.glxp.api.admin.controller.thrsys; import com.github.pagehelper.PageInfo; +import com.glxp.api.admin.entity.thrsys.ThrCorpImportDetailEntity; +import com.glxp.api.admin.entity.thrsys.ThrInvProductsImportDetailEntity; import com.glxp.api.admin.entity.thrsys.ThrInvProductsImportLogEntity; import com.glxp.api.admin.req.basic.FilterUdiIpLogRequest; import com.glxp.api.admin.req.inout.DeleteRequest; import com.glxp.api.admin.res.PageSimpleResponse; +import com.glxp.api.admin.service.thrsys.ThrInvProductsDetailService; import com.glxp.api.admin.service.thrsys.ThrInvProductsImportLogService; import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.res.BaseResponse; @@ -24,6 +27,8 @@ public class ThrInvProductsImportLogController { @Resource ThrInvProductsImportLogService thrInvProductsImportLogService; + @Resource + ThrInvProductsDetailService thrInvProductsDetailService; @GetMapping("/udiwms/thrInvProducts/importLog/filter") public BaseResponse filter(FilterUdiIpLogRequest filterUdiIpLogRequest, @@ -42,6 +47,22 @@ public class ThrInvProductsImportLogController { return ResultVOUtils.success(pageSimpleResponse); } + @GetMapping("/udiwms/thrInvProducts/importLog/filterDetail") + public BaseResponse filterDetail(FilterUdiIpLogRequest filterUdiIpLogRequest, + BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + List thrInvProductsImportDetailEntities + = thrInvProductsDetailService.filterInvProductsDetailImport(filterUdiIpLogRequest); + PageInfo pageInfo; + pageInfo = new PageInfo<>(thrInvProductsImportDetailEntities); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(thrInvProductsImportDetailEntities); + return ResultVOUtils.success(pageSimpleResponse); + } @PostMapping("/udiwms/thrInvProducts/importLog/deleteLog") public BaseResponse deleteLog(@RequestBody DeleteRequest deleteRequest, BindingResult bindingResult) { diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrOrderImportLogController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrOrderImportLogController.java index d53a0752..96eb8466 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrOrderImportLogController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrOrderImportLogController.java @@ -4,6 +4,7 @@ package com.glxp.api.admin.controller.thrsys; import com.github.pagehelper.PageInfo; import com.glxp.api.admin.constant.UdiInfoImportStatus; import com.glxp.api.admin.entity.basic.BasicThirdSysEntity; +import com.glxp.api.admin.entity.basic.BussinessTypeEntity; import com.glxp.api.admin.entity.thrsys.ThrOrderImportDetailEntity; import com.glxp.api.admin.entity.thrsys.ThrOrderImportLogEntity; import com.glxp.api.admin.req.basic.FilterUdiIpLogRequest; @@ -41,15 +42,11 @@ public class ThrOrderImportLogController { @Resource ThrOrderImportLogService thrOrderImportLogService; @Resource - BasicThirdSysService basicThirdSysService; - @Resource ThrOrderImportDetailService thrOrderImportDetailService; @Resource - ThrOrderService thrOrderService; - @Resource - ThrOrderDetailService thrOrderDetailService; - @Resource ThrOrderImportService thrOrderImportService; + @Resource + BussinessTypeService bussinessTypeService; @GetMapping("/udiwms/thrOrder/importLog/filter") public BaseResponse filter(FilterUdiIpLogRequest filterUdiIpLogRequest, @@ -121,7 +118,6 @@ public class ThrOrderImportLogController { @PostMapping("/udiwms/thrOrder/importLog/upload") public BaseResponse uploadProducts(@RequestParam("file") List files, @RequestParam("thirdSys") String thirdSys) { - BasicThirdSysEntity basicThirdSysEntity = basicThirdSysService.selectMainThrSys(); String filePath = "D:\\udiwms\\filePath\\"; File createFile = new File(filePath); if (!createFile.exists()) { @@ -150,6 +146,7 @@ public class ThrOrderImportLogController { ThrOrderImportLogEntity thrOrderImportLogEntity = new ThrOrderImportLogEntity(); String genKey = CustomUtil.getId(); thrOrderImportLogEntity.setGenKey(genKey); + thrOrderImportLogEntity.setThirdSysFk(thirdSys); thrOrderImportLogEntity.setFromType("文件导入"); thrOrderImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_UNPROCESS); thrOrderImportLogEntity.setUpdateTime(new Date(System.currentTimeMillis())); @@ -194,7 +191,13 @@ public class ThrOrderImportLogController { Cell cell5 = row.getCell(4); if (cell5 != null) { cell5.setCellType(CellType.STRING); - corpImportDetailEntity.setBillType(cell5.getStringCellValue()); + String billType = cell5.getStringCellValue(); + BussinessTypeEntity bussinessTypeEntity = bussinessTypeService.findBTByName(billType); + if(bussinessTypeEntity!=null){ + corpImportDetailEntity.setBillType(bussinessTypeEntity.getAction()); + }else + corpImportDetailEntity.setBillType(billType); + } Cell cell6 = row.getCell(5); @@ -252,42 +255,4 @@ public class ThrOrderImportLogController { return ResultVOUtils.success("上传成功"); } - -// //产品信息接口上传 -// @PostMapping("/udiwms/thrOrder/importLog/post") -// public BaseResponse postUdiInfo(@RequestBody PostCorpsRequest postCorpsRequest, BindingResult bindingResult) { -// if (bindingResult.hasErrors()) { -// return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); -// } -// -// -// String genKey = postCorpsRequest.getGenKey(); -// if (genKey == null) { -// genKey = CustomUtil.getId(); -// } -// ThrOrderImportLogEntity corpImportLogEntity = corpImportLogService.selectByGenKey(genKey); -// List corpImportDetailEntities = postCorpsRequest.getDatas(); -// if (corpImportDetailEntities != null) { -// for (ThrOrderImportDetailEntity corpImportDetailEntity : corpImportDetailEntities) { -// corpImportDetailEntity.setGenKeyFk(genKey); -// corpImportDetailEntity.setImportStatus(UdiInfoImportStatus.UDIINFO_IMPORT_CODE_UNPROCESS); -// corpImportDetailEntity.setUpdateTime(new java.util.Date()); -// corpImportDetailService.insertCorpImport(corpImportDetailEntity); -// } -// } -// if (corpImportLogEntity == null) { -// corpImportLogEntity = new ThrOrderImportLogEntity(); -// corpImportLogEntity.setGenKey(genKey); -// corpImportLogEntity.setFromType("文件导入"); -// corpImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_UNPROCESS); -// corpImportLogEntity.setUpdateTime(new Date(System.currentTimeMillis())); -// corpImportLogService.insertImportLog(corpImportLogEntity); -// } else { -// corpImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_UNPROCESS); -// corpImportLogService.updateImportLog(corpImportLogEntity); -// } -// basicCorpImportService.importCorps(genKey); -// return ResultVOUtils.success("上传成功"); -// } - } diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrProductsController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrProductsController.java index bf33185b..7eb20c8c 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrProductsController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrProductsController.java @@ -57,6 +57,26 @@ public class ThrProductsController { return ResultVOUtils.success(pageSimpleResponse); } + + @PostMapping("/udiwms/thrsys/delThrProducts") + public BaseResponse delThrProducts(@RequestBody DeleteRequest deleteRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + String id = deleteRequest.getId(); + thrProductsService.deleteById(id); + return ResultVOUtils.success("删除成功"); + } + + @RequestMapping("/udiwms/thrsys/products/delAll") + public BaseResponse delAll() { + thrProductsService.deleteAll(); + return ResultVOUtils.success("删除成功"); + } + + + //第三方服务上传(包括文件导入后上传) @PostMapping("/udiwms/thrsys/postThrProducts") public BaseResponse postThrProducts(@RequestBody PostThrProductsRequest postThrProductsRequest, BindingResult bindingResult) { @@ -85,22 +105,9 @@ public class ThrProductsController { thrProductsImportLogService.insertImportLog(thrProductsImportLogEntity); } - if (erpProductsResponses != null && erpProductsResponses.size() > 0) { - thrProductsEntities = erpProductsResponses.stream().map( - item -> { - ThrProductsEntity thrProductsEntity = new ThrProductsEntity(); - BeanUtils.copyProperties(item, thrProductsEntity); - thrProductsEntity.setThirdSysFk(postThrProductsRequest.getThirdSys()); - return thrProductsEntity; - } - ).collect(Collectors.toList()); - thrProductsService.insertThrProductss(thrProductsEntities); - thrProductsImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_SUCCESS); - thrProductsImportLogEntity.setUpdateTime(new Date()); - thrProductsImportLogService.updateImportLog(thrProductsImportLogEntity); + thrProductsDlService.insertData(genKey, erpProductsResponses, postThrProductsRequest.getThirdSys()); return ResultVOUtils.success("产品信息上传成功!"); - } thrProductsImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_FAIL); thrProductsImportLogEntity.setUpdateTime(new Date()); @@ -109,43 +116,26 @@ public class ThrProductsController { return ResultVOUtils.error(500, "上传数据为空"); } - @PostMapping("/udiwms/thrsys/delThrProducts") - public BaseResponse delThrProducts(@RequestBody DeleteRequest deleteRequest, BindingResult bindingResult) { - - if (bindingResult.hasErrors()) { - return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); - } - String id = deleteRequest.getId(); - thrProductsService.deleteById(id); - return ResultVOUtils.success("删除成功"); - } - - @RequestMapping("/udiwms/thrsys/products/delAll") - public BaseResponse delAll() { - thrProductsService.deleteAll(); - return ResultVOUtils.success("删除成功"); - } - - + //接口一键下载全部 @RequestMapping("/udiwms/thrsys/products/downloadAll") public BaseResponse downloadAll(FilterThrProductsRequest filterThrProductsRequest) { String data = (String) redisUtil.get(Constant.dlThrProducts); if (data != null && data.equals("true")) { return ResultVOUtils.error(500, "当前任务正在下载更新产品信息,请稍后重试!"); } else { - redisUtil.set(Constant.dlThrProducts, "true", 30); + redisUtil.set(Constant.dlThrProducts, "true", 60 * 15); if (filterThrProductsRequest.getThirdSysFk() == null) { return ResultVOUtils.error(500, "未选择第三方系统!"); } ThrProductsImportLogEntity thrProductsImportLogEntity = new ThrProductsImportLogEntity(); String genKey = CustomUtil.getId(); thrProductsImportLogEntity.setGenKey(genKey); - thrProductsImportLogEntity.setFromType("第三方系统获取"); + thrProductsImportLogEntity.setFromType("第三方系统下载"); thrProductsImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_PROCESS); thrProductsImportLogEntity.setUpdateTime(new Date()); thrProductsImportLogEntity.setThirdSysFk(filterThrProductsRequest.getThirdSysFk()); thrProductsImportLogService.insertImportLog(thrProductsImportLogEntity); - thrProductsDlService.importProducrs(genKey,filterThrProductsRequest.getThirdSysFk()); + thrProductsDlService.importProducrs(genKey, filterThrProductsRequest.getThirdSysFk()); return ResultVOUtils.success("后台开始下载更新,请稍后刷新查看"); } } diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrProductsImportLogController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrProductsImportLogController.java index 51aaed6e..1999f2f9 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrProductsImportLogController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrProductsImportLogController.java @@ -1,11 +1,14 @@ package com.glxp.api.admin.controller.thrsys; import com.github.pagehelper.PageInfo; +import com.glxp.api.admin.entity.thrsys.ThrOrderImportDetailEntity; +import com.glxp.api.admin.entity.thrsys.ThrProductsImportDetailEntity; import com.glxp.api.admin.entity.thrsys.ThrProductsImportLogEntity; import com.glxp.api.admin.req.basic.FilterUdiIpLogRequest; import com.glxp.api.admin.req.inout.DeleteRequest; import com.glxp.api.admin.res.PageSimpleResponse; import com.glxp.api.admin.service.thrsys.ThrInvProductsImportLogService; +import com.glxp.api.admin.service.thrsys.ThrProductsImportDetailService; import com.glxp.api.admin.service.thrsys.ThrProductsImportLogService; import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.res.BaseResponse; @@ -24,8 +27,11 @@ public class ThrProductsImportLogController { @Resource ThrProductsImportLogService thrProductsImportLogService; + @Resource + ThrProductsImportDetailService thrProductsImportDetailService; @GetMapping("/udiwms/thrProducts//importLog/filter") + public BaseResponse filter(FilterUdiIpLogRequest filterUdiIpLogRequest, BindingResult bindingResult) { @@ -42,6 +48,22 @@ public class ThrProductsImportLogController { return ResultVOUtils.success(pageSimpleResponse); } + @GetMapping("/udiwms/thrProducts/importLog/filterDetail") + public BaseResponse filterDetail(FilterUdiIpLogRequest filterUdiIpLogRequest, + BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + List thrProductsImportDetailEntities + = thrProductsImportDetailService.filterProductsDetailImport(filterUdiIpLogRequest); + PageInfo pageInfo; + pageInfo = new PageInfo<>(thrProductsImportDetailEntities); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(thrProductsImportDetailEntities); + return ResultVOUtils.success(pageSimpleResponse); + } @PostMapping("/udiwms/thrProducts//importLog/deleteLog") public BaseResponse deleteLog(@RequestBody DeleteRequest deleteRequest, BindingResult bindingResult) { @@ -56,6 +78,7 @@ public class ThrProductsImportLogController { if (thrProductsImportLogEntities != null && thrProductsImportLogEntities.size() > 0) { ThrProductsImportLogEntity thrInvProductsImportLogEntity = thrProductsImportLogEntities.get(0); thrProductsImportLogService.deleteById(thrInvProductsImportLogEntity.getId() + ""); + thrProductsImportDetailService.deleteByGenkey(thrInvProductsImportLogEntity.getGenKey()); } return ResultVOUtils.success("删除成功"); diff --git a/api-admin/src/main/java/com/glxp/api/admin/dao/thrsys/ThrCorpImportDetailDao.java b/api-admin/src/main/java/com/glxp/api/admin/dao/thrsys/ThrCorpImportDetailDao.java new file mode 100644 index 00000000..dd9a12b0 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/dao/thrsys/ThrCorpImportDetailDao.java @@ -0,0 +1,23 @@ +package com.glxp.api.admin.dao.thrsys; + +import com.glxp.api.admin.entity.thrsys.ThrCorpImportDetailEntity; +import com.glxp.api.admin.req.basic.FilterUdiIpLogRequest; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface ThrCorpImportDetailDao { + List filterCorpDetailImport(FilterUdiIpLogRequest filterInCodeLogRequest); + + boolean insertCorpDetailImport(ThrCorpImportDetailEntity thrCorpImportDetailEntity); + + boolean updateCorpDetailImport(ThrCorpImportDetailEntity thrCorpImportDetailEntity); + + boolean insertCorpDetailImports(@Param("corps") List thrCorpImportDetailEntities); + + boolean deleteById(@Param("id") String id); + + boolean deleteByGenkey(@Param("genKey") String genKey); +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/dao/thrsys/ThrInvProductsDetailDao.java b/api-admin/src/main/java/com/glxp/api/admin/dao/thrsys/ThrInvProductsDetailDao.java new file mode 100644 index 00000000..e21902ad --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/dao/thrsys/ThrInvProductsDetailDao.java @@ -0,0 +1,23 @@ +package com.glxp.api.admin.dao.thrsys; + +import com.glxp.api.admin.entity.thrsys.ThrInvProductsImportDetailEntity; +import com.glxp.api.admin.req.basic.FilterUdiIpLogRequest; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface ThrInvProductsDetailDao { + List filterInvProductsDetailImport(FilterUdiIpLogRequest filterInCodeLogRequest); + + boolean insertInvProductsDetailImport(ThrInvProductsImportDetailEntity thrInvProductsImportDetailEntity); + + boolean updateInvProductsDetailImport(ThrInvProductsImportDetailEntity thrInvProductsImportDetailEntity); + + boolean insertInvProductsDetailImports(@Param("invProducts") List thrInvProductsImportDetailEntities); + + boolean deleteById(@Param("id") String id); + + boolean deleteByGenkey(@Param("genKey") String genKey); +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/dao/thrsys/ThrProductsImportDetailDao.java b/api-admin/src/main/java/com/glxp/api/admin/dao/thrsys/ThrProductsImportDetailDao.java new file mode 100644 index 00000000..af6380eb --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/dao/thrsys/ThrProductsImportDetailDao.java @@ -0,0 +1,26 @@ +package com.glxp.api.admin.dao.thrsys; + +import com.glxp.api.admin.entity.thrsys.ThrProductsImportDetailEntity; +import com.glxp.api.admin.req.basic.FilterUdiIpLogRequest; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface ThrProductsImportDetailDao { + + + List filterProductsDetailImport(FilterUdiIpLogRequest filterInCodeLogRequest); + + boolean insertProductsDetailImport(ThrProductsImportDetailEntity thrOrderImportDetailEntity); + + boolean updateProductsDetailImport(ThrProductsImportDetailEntity thrOrderImportDetailEntity); + + boolean insertProductsDetailImports(@Param("products") List thrOrderImportDetailEntities); + + boolean deleteById(@Param("id") String id); + + boolean deleteByGenkey(@Param("genKey") String genKey); + +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrCorpImportDetailEntity.java b/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrCorpImportDetailEntity.java new file mode 100644 index 00000000..47cbc392 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrCorpImportDetailEntity.java @@ -0,0 +1,22 @@ +package com.glxp.api.admin.entity.thrsys; + +import lombok.Data; + +import java.util.Date; + +@Data +public class ThrCorpImportDetailEntity { + + private String id; + private String unitId; + private String name; + private String spell; + private String addr; + private String creditNo; + private String contact; + private String mobile; + private String thirdSysFk; + private Date updateTime; + private String genKeyFk; + +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrInvProductsImportDetailEntity.java b/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrInvProductsImportDetailEntity.java new file mode 100644 index 00000000..29ebfd67 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrInvProductsImportDetailEntity.java @@ -0,0 +1,25 @@ +package com.glxp.api.admin.entity.thrsys; + +import lombok.Data; + +import java.util.Date; + +@Data +public class ThrInvProductsImportDetailEntity { + private Integer id; + private String inventoryCode; + private String inventoryName; + private String spec; + private Integer count; + private String batchNo; + private String warehouseName; + private String warehouseCode; + private String registerCertNo; + private String manufacturingDate; + private String expirationDate; + private String spaceCode; + private String spaceName; + private String thirdSysFk; + private Date updateTime; + private String genKeyFk; +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrOrderImportDetailEntity.java b/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrOrderImportDetailEntity.java index 96dea3eb..677ab7b5 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrOrderImportDetailEntity.java +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrOrderImportDetailEntity.java @@ -26,7 +26,6 @@ public class ThrOrderImportDetailEntity { private Date updateTime; private String remark; private String genKeyFk; - private String thirdSysFk; diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrProductsImportDetailEntity.java b/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrProductsImportDetailEntity.java new file mode 100644 index 00000000..afcbe353 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrProductsImportDetailEntity.java @@ -0,0 +1,29 @@ +package com.glxp.api.admin.entity.thrsys; + +import lombok.Data; + +import java.util.Date; + +@Data +public class ThrProductsImportDetailEntity { + private Integer id; + private String code; + private String name; + private String measname; + private String spec; + private String registerNo; + private String manufactory; + private String thirdSysFk; + private String cplb; + private String flbm; + private String qxlb; + private String ybbm; + private String sptm; + private String tyshxydm; + private String zczbhhzbapzbh; + private String ylqxzcrbarmc; + private String ylqxzcrbarywmc; + private String cpms; + private Date updateTime; + private String genKeyFk; +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/ThrCorpImportDetailService.java b/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/ThrCorpImportDetailService.java new file mode 100644 index 00000000..ad557dcc --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/ThrCorpImportDetailService.java @@ -0,0 +1,25 @@ +package com.glxp.api.admin.service.thrsys; + +import com.glxp.api.admin.entity.thrsys.ThrCorpImportDetailEntity; +import com.glxp.api.admin.req.basic.FilterUdiIpLogRequest; +import org.apache.ibatis.annotations.Param; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public interface ThrCorpImportDetailService { + + List filterCorpDetailImport(FilterUdiIpLogRequest filterInCodeLogRequest); + + boolean insertCorpDetailImport(ThrCorpImportDetailEntity thrCorpImportDetailEntity); + + boolean updateCorpDetailImport(ThrCorpImportDetailEntity thrCorpImportDetailEntity); + + boolean insertCorpDetailImports( List thrCorpImportDetailEntities); + + boolean deleteById( String id); + + boolean deleteByGenkey( String genKey); + +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/ThrInvProductsDetailService.java b/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/ThrInvProductsDetailService.java new file mode 100644 index 00000000..fe5dd73a --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/ThrInvProductsDetailService.java @@ -0,0 +1,20 @@ +package com.glxp.api.admin.service.thrsys; + +import com.glxp.api.admin.entity.thrsys.ThrInvProductsImportDetailEntity; +import com.glxp.api.admin.req.basic.FilterUdiIpLogRequest; + +import java.util.List; + +public interface ThrInvProductsDetailService { + List filterInvProductsDetailImport(FilterUdiIpLogRequest filterInCodeLogRequest); + + boolean insertInvProductsDetailImport(ThrInvProductsImportDetailEntity thrInvProductsImportDetailEntity); + + boolean updateInvProductsDetailImport(ThrInvProductsImportDetailEntity thrInvProductsImportDetailEntity); + + boolean insertInvProductsDetailImports(List thrInvProductsImportDetailEntities); + + boolean deleteById(String id); + + boolean deleteByGenkey(String genKey); +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/ThrProductsImportDetailService.java b/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/ThrProductsImportDetailService.java new file mode 100644 index 00000000..230ac442 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/ThrProductsImportDetailService.java @@ -0,0 +1,21 @@ +package com.glxp.api.admin.service.thrsys; + +import com.glxp.api.admin.entity.thrsys.ThrProductsImportDetailEntity; +import com.glxp.api.admin.req.basic.FilterUdiIpLogRequest; + +import java.util.List; +public interface ThrProductsImportDetailService { + + List filterProductsDetailImport(FilterUdiIpLogRequest filterInCodeLogRequest); + + boolean insertProductsDetailImport(ThrProductsImportDetailEntity thrOrderImportDetailEntity); + + boolean updateProductsDetailImport(ThrProductsImportDetailEntity thrOrderImportDetailEntity); + + boolean insertProductsDetailImports(List thrOrderImportDetailEntities); + + boolean deleteById(String id); + + boolean deleteByGenkey(String genKey); + +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/impl/ThrCorpImportDetailServiceImpl.java b/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/impl/ThrCorpImportDetailServiceImpl.java new file mode 100644 index 00000000..6a25f41d --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/impl/ThrCorpImportDetailServiceImpl.java @@ -0,0 +1,57 @@ +package com.glxp.api.admin.service.thrsys.impl; + +import com.github.pagehelper.PageHelper; +import com.glxp.api.admin.dao.thrsys.ThrCorpImportDetailDao; +import com.glxp.api.admin.entity.thrsys.ThrCorpImportDetailEntity; +import com.glxp.api.admin.req.basic.FilterUdiIpLogRequest; +import com.glxp.api.admin.service.thrsys.ThrCorpImportDetailService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Collections; +import java.util.List; + +@Service +public class ThrCorpImportDetailServiceImpl implements ThrCorpImportDetailService { + + @Resource + ThrCorpImportDetailDao thrCorpImportDetailDao; + + @Override + public List filterCorpDetailImport(FilterUdiIpLogRequest filterUdiIpLogRequest) { + if (filterUdiIpLogRequest == null) { + return Collections.emptyList(); + } + if (filterUdiIpLogRequest.getPage() != null) { + int offset = (filterUdiIpLogRequest.getPage() - 1) * filterUdiIpLogRequest.getLimit(); + PageHelper.offsetPage(offset, filterUdiIpLogRequest.getLimit()); + } + List data = thrCorpImportDetailDao.filterCorpDetailImport(filterUdiIpLogRequest); + return data; + } + + @Override + public boolean insertCorpDetailImport(ThrCorpImportDetailEntity thrCorpImportDetailEntity) { + return thrCorpImportDetailDao.insertCorpDetailImport(thrCorpImportDetailEntity); + } + + @Override + public boolean updateCorpDetailImport(ThrCorpImportDetailEntity thrCorpImportDetailEntity) { + return thrCorpImportDetailDao.updateCorpDetailImport(thrCorpImportDetailEntity); + } + + @Override + public boolean insertCorpDetailImports(List thrCorpImportDetailEntities) { + return thrCorpImportDetailDao.insertCorpDetailImports(thrCorpImportDetailEntities); + } + + @Override + public boolean deleteById(String id) { + return thrCorpImportDetailDao.deleteById(id); + } + + @Override + public boolean deleteByGenkey(String genKey) { + return thrCorpImportDetailDao.deleteByGenkey(genKey); + } +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/impl/ThrInvProductsDetailServiceImpl.java b/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/impl/ThrInvProductsDetailServiceImpl.java new file mode 100644 index 00000000..8840f348 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/impl/ThrInvProductsDetailServiceImpl.java @@ -0,0 +1,58 @@ +package com.glxp.api.admin.service.thrsys.impl; + +import com.github.pagehelper.PageHelper; +import com.glxp.api.admin.dao.thrsys.ThrInvProductsDetailDao; +import com.glxp.api.admin.entity.thrsys.ThrCorpImportDetailEntity; +import com.glxp.api.admin.entity.thrsys.ThrInvProductsImportDetailEntity; +import com.glxp.api.admin.req.basic.FilterUdiIpLogRequest; +import com.glxp.api.admin.service.thrsys.ThrInvProductsDetailService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Collections; +import java.util.List; + +@Service +public class ThrInvProductsDetailServiceImpl implements ThrInvProductsDetailService { + + @Resource + ThrInvProductsDetailDao thrInvProductsDetailDao; + + @Override + public List filterInvProductsDetailImport(FilterUdiIpLogRequest filterUdiIpLogRequest) { + if (filterUdiIpLogRequest == null) { + return Collections.emptyList(); + } + if (filterUdiIpLogRequest.getPage() != null) { + int offset = (filterUdiIpLogRequest.getPage() - 1) * filterUdiIpLogRequest.getLimit(); + PageHelper.offsetPage(offset, filterUdiIpLogRequest.getLimit()); + } + List data = thrInvProductsDetailDao.filterInvProductsDetailImport(filterUdiIpLogRequest); + return data; + } + + @Override + public boolean insertInvProductsDetailImport(ThrInvProductsImportDetailEntity thrInvProductsImportDetailEntity) { + return thrInvProductsDetailDao.insertInvProductsDetailImport(thrInvProductsImportDetailEntity); + } + + @Override + public boolean updateInvProductsDetailImport(ThrInvProductsImportDetailEntity thrInvProductsImportDetailEntity) { + return thrInvProductsDetailDao.updateInvProductsDetailImport(thrInvProductsImportDetailEntity); + } + + @Override + public boolean insertInvProductsDetailImports(List thrInvProductsImportDetailEntities) { + return thrInvProductsDetailDao.insertInvProductsDetailImports(thrInvProductsImportDetailEntities); + } + + @Override + public boolean deleteById(String id) { + return thrInvProductsDetailDao.deleteById(id); + } + + @Override + public boolean deleteByGenkey(String genKey) { + return thrInvProductsDetailDao.deleteByGenkey(genKey); + } +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/impl/ThrProductsImportDetailServiceImpl.java b/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/impl/ThrProductsImportDetailServiceImpl.java new file mode 100644 index 00000000..9a9fb98c --- /dev/null +++ b/api-admin/src/main/java/com/glxp/api/admin/service/thrsys/impl/ThrProductsImportDetailServiceImpl.java @@ -0,0 +1,57 @@ +package com.glxp.api.admin.service.thrsys.impl; + +import com.github.pagehelper.PageHelper; +import com.glxp.api.admin.dao.thrsys.ThrProductsImportDetailDao; +import com.glxp.api.admin.entity.thrsys.ThrProductsImportDetailEntity; +import com.glxp.api.admin.req.basic.FilterUdiIpLogRequest; +import com.glxp.api.admin.service.thrsys.ThrProductsImportDetailService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Collections; +import java.util.List; + +@Service +public class ThrProductsImportDetailServiceImpl implements ThrProductsImportDetailService { + + @Resource + ThrProductsImportDetailDao thrProductsImportDetailDao; + + @Override + public List filterProductsDetailImport(FilterUdiIpLogRequest filterUdiIpLogRequest) { + if (filterUdiIpLogRequest == null) { + return Collections.emptyList(); + } + if (filterUdiIpLogRequest.getPage() != null) { + int offset = (filterUdiIpLogRequest.getPage() - 1) * filterUdiIpLogRequest.getLimit(); + PageHelper.offsetPage(offset, filterUdiIpLogRequest.getLimit()); + } + List data = thrProductsImportDetailDao.filterProductsDetailImport(filterUdiIpLogRequest); + return data; + } + + @Override + public boolean insertProductsDetailImport(ThrProductsImportDetailEntity thrOrderImportDetailEntity) { + return thrProductsImportDetailDao.insertProductsDetailImport(thrOrderImportDetailEntity); + } + + @Override + public boolean updateProductsDetailImport(ThrProductsImportDetailEntity thrOrderImportDetailEntity) { + return thrProductsImportDetailDao.updateProductsDetailImport(thrOrderImportDetailEntity); + } + + @Override + public boolean insertProductsDetailImports(List thrOrderImportDetailEntities) { + return thrProductsImportDetailDao.insertProductsDetailImports(thrOrderImportDetailEntities); + } + + @Override + public boolean deleteById(String id) { + return thrProductsImportDetailDao.deleteById(id); + } + + @Override + public boolean deleteByGenkey(String genKey) { + return thrProductsImportDetailDao.deleteByGenkey(genKey); + } +} diff --git a/api-admin/src/main/java/com/glxp/api/admin/thread/ThrCorpsDlService.java b/api-admin/src/main/java/com/glxp/api/admin/thread/ThrCorpsDlService.java index f5c12f48..952e26ae 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/thread/ThrCorpsDlService.java +++ b/api-admin/src/main/java/com/glxp/api/admin/thread/ThrCorpsDlService.java @@ -7,6 +7,7 @@ import com.glxp.api.admin.entity.thrsys.*; import com.glxp.api.admin.httpclient.ErpBasicClient; import com.glxp.api.admin.req.basic.BasicUnitMaintainFilterRequest; import com.glxp.api.admin.req.basic.FilterErpGoodsRequest; +import com.glxp.api.admin.req.basic.FilterUdiIpLogRequest; import com.glxp.api.admin.req.thrsys.FilterThrCorpRequest; import com.glxp.api.admin.req.thrsys.ThrCorpExportRequest; import com.glxp.api.admin.res.PageSimpleResponse; @@ -43,7 +44,10 @@ public class ThrCorpsDlService { ThrCorpImportLogService thrCorpImportLogService; @Resource ThrCorpExportLogService thrCorpExportLogService; + @Resource + private ThrCorpImportDetailService thrCorpImportDetailService; + //主动下载第三方系统往来单位信息 @Async public void importCorps(String genKey, String thirdSys) { BasicThirdSysDetailEntity piDetailEntity = basicThirdSysDetailService.selectByKey("corpUrl", thirdSys); @@ -56,46 +60,25 @@ public class ThrCorpsDlService { int page = 1; int limit = 100; while (page != -1) { - page = getCorps(page, limit, piDetailEntity.getValue(), thrProductsImportLogEntity,thirdSys); + page = getCorps(page, limit, piDetailEntity.getValue(), thrProductsImportLogEntity, thirdSys, genKey); } + FilterUdiIpLogRequest filterUdiIpLogRequest = new FilterUdiIpLogRequest(); + filterUdiIpLogRequest.setGenKey(genKey); + List thrCorpImportDetailEntities = thrCorpImportDetailService.filterCorpDetailImport(filterUdiIpLogRequest); + List thrCorpEntities = thrCorpImportDetailEntities.stream().map( + item -> { + ThrCorpEntity thrProductsEntity = new ThrCorpEntity(); + BeanUtils.copyProperties(item, thrProductsEntity); + thrProductsEntity.setThirdSysFk(thirdSys); + return thrProductsEntity; + } + ).collect(Collectors.toList()); + thrCorpService.insertThrCorpss(thrCorpEntities); redisUtil.set(Constant.dlThrProducts, "false"); WebSocketServer.sendInfo("往来单位信息下载已完成,请刷新查看!", "sid"); } - public int getCorps(int page, int limit, String corpUrl, ThrCorpImportLogEntity thrCorpImportLogEntity,String thirdSys) { - BasicUnitMaintainFilterRequest basicUnitMaintainFilterRequest = new BasicUnitMaintainFilterRequest(); - basicUnitMaintainFilterRequest.setPage(page); - basicUnitMaintainFilterRequest.setLimit(limit); - BaseResponse> erpCrops = new ErpBasicClient().getErpCrop(basicUnitMaintainFilterRequest, corpUrl); - if (erpCrops==null || erpCrops.getCode() != 20000) { - - thrCorpImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_FAIL); - thrCorpImportLogEntity.setRemark(erpCrops.getMessage()); - thrCorpImportLogService.updateImportLog(thrCorpImportLogEntity); - return -1; - } - List erpUnitsResponses = erpCrops.getData().getList(); - if (erpUnitsResponses != null && erpUnitsResponses.size() > 0) { - List thrCorpEntities = erpUnitsResponses.stream().map( - item -> { - ThrCorpEntity thrProductsEntity = new ThrCorpEntity(); - BeanUtils.copyProperties(item, thrProductsEntity); - thrProductsEntity.setUnitId(item.getId()); - thrProductsEntity.setThirdSysFk(thirdSys); - return thrProductsEntity; - } - ).collect(Collectors.toList()); - thrCorpService.insertThrCorpss(thrCorpEntities); - page++; - if (page * limit < erpCrops.getData().getTotal()) { - return page; - } - } - thrCorpImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_SUCCESS); - thrCorpImportLogService.updateImportLog(thrCorpImportLogEntity); - return -1; - } - + //导出生成Excel文件 @Async public void genExcel(String genKey, ThrCorpExportRequest thrCorpExportRequest) { ThrCorpExportLogEntity thrCorpExportLogEntity = thrCorpExportLogService.selectByGenKey(genKey); @@ -110,7 +93,7 @@ public class ThrCorpsDlService { head.add("联系电话"); excelData.add(head); //选中导出 - if (thrCorpExportRequest.getThrCorpEntities() != null && thrCorpExportRequest.getThrCorpEntities().size()>0) { + if (thrCorpExportRequest.getThrCorpEntities() != null && thrCorpExportRequest.getThrCorpEntities().size() > 0) { List corpEntities = thrCorpExportRequest.getThrCorpEntities(); for (ThrCorpEntity thrCorpEntity : corpEntities) { List rows = new ArrayList<>(); @@ -155,6 +138,85 @@ public class ThrCorpsDlService { } + //接收第三方上传或文件导入数据 + @Async + public void insertData(String genKey, String thirdSys, List erpUnitsResponses) { + + ThrCorpImportLogEntity thrCorpImportLogEntity = thrCorpImportLogService.selectByGenKey(genKey); + //转入临时表 + List thrCorpEntities; + List thrCorpImportDetailEntities; + String finalGenKey = genKey; + thrCorpImportDetailEntities = erpUnitsResponses.stream().map( + item -> { + ThrCorpImportDetailEntity thrCorpEntity = new ThrCorpImportDetailEntity(); + BeanUtils.copyProperties(item, thrCorpEntity); + thrCorpEntity.setUnitId(item.getId()); + thrCorpEntity.setGenKeyFk(finalGenKey); + thrCorpEntity.setUpdateTime(new Date()); + thrCorpEntity.setThirdSysFk(thirdSys); + return thrCorpEntity; + } + ).collect(Collectors.toList()); + thrCorpImportDetailService.insertCorpDetailImports(thrCorpImportDetailEntities); + thrCorpEntities = thrCorpImportDetailEntities.stream().map( + item -> { + ThrCorpEntity thrCorpEntity = new ThrCorpEntity(); + BeanUtils.copyProperties(item, thrCorpEntity); +// thrCorpEntity.setUnitId(item.getId()); + thrCorpEntity.setThirdSysFk(thirdSys); + return thrCorpEntity; + } + ).collect(Collectors.toList()); + thrCorpService.insertThrCorpss(thrCorpEntities); + thrCorpImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_SUCCESS); + thrCorpImportLogEntity.setUpdateTime(new Date()); + thrCorpImportLogService.updateImportLog(thrCorpImportLogEntity); + } + + + public int getCorps(int page, int limit, String corpUrl, ThrCorpImportLogEntity thrCorpImportLogEntity, String thirdSys, String genKey) { + BasicUnitMaintainFilterRequest basicUnitMaintainFilterRequest = new BasicUnitMaintainFilterRequest(); + basicUnitMaintainFilterRequest.setPage(page); + basicUnitMaintainFilterRequest.setLimit(limit); + BaseResponse> erpCrops = new ErpBasicClient().getErpCrop(basicUnitMaintainFilterRequest, corpUrl); + if (erpCrops == null || erpCrops.getCode() != 20000) { + + thrCorpImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_FAIL); + thrCorpImportLogEntity.setRemark(erpCrops.getMessage()); + thrCorpImportLogService.updateImportLog(thrCorpImportLogEntity); + return -1; + } + List erpUnitsResponses = erpCrops.getData().getList(); + if (erpUnitsResponses != null && erpUnitsResponses.size() > 0) { + + List thrCorpImportDetailEntities; + String finalGenKey = genKey; + thrCorpImportDetailEntities = erpUnitsResponses.stream().map( + item -> { + ThrCorpImportDetailEntity thrCorpEntity = new ThrCorpImportDetailEntity(); + BeanUtils.copyProperties(item, thrCorpEntity); + thrCorpEntity.setUnitId(item.getId()); + thrCorpEntity.setGenKeyFk(finalGenKey); + thrCorpEntity.setUpdateTime(new Date()); + thrCorpEntity.setThirdSysFk(thirdSys); + return thrCorpEntity; + } + ).collect(Collectors.toList()); + thrCorpImportDetailService.insertCorpDetailImports(thrCorpImportDetailEntities); + + + page++; + if (page * limit < erpCrops.getData().getTotal()) { + return page; + } + } + thrCorpImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_SUCCESS); + thrCorpImportLogService.updateImportLog(thrCorpImportLogEntity); + return -1; + } + + public List exportCorps(ThrCorpExportRequest thrCorpExportRequest) { BasicThirdSysDetailEntity corpEntity = basicThirdSysDetailService.selectByKey("corpUrl", thrCorpExportRequest.getThirdSys()); int page = 1; diff --git a/api-admin/src/main/java/com/glxp/api/admin/thread/ThrInvProductsDlService.java b/api-admin/src/main/java/com/glxp/api/admin/thread/ThrInvProductsDlService.java index f8d1eab8..a9e3d419 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/thread/ThrInvProductsDlService.java +++ b/api-admin/src/main/java/com/glxp/api/admin/thread/ThrInvProductsDlService.java @@ -7,6 +7,7 @@ import com.glxp.api.admin.entity.thrsys.*; import com.glxp.api.admin.httpclient.ErpBasicClient; import com.glxp.api.admin.httpclient.ErpInvClient; import com.glxp.api.admin.req.basic.FilterErpGoodsRequest; +import com.glxp.api.admin.req.basic.FilterUdiIpLogRequest; import com.glxp.api.admin.req.inventory.ErpOnhandRequest; import com.glxp.api.admin.req.thrsys.FilterThrInvProductsRequest; import com.glxp.api.admin.req.thrsys.ThrCorpExportRequest; @@ -15,10 +16,7 @@ import com.glxp.api.admin.res.PageSimpleResponse; import com.glxp.api.admin.res.basic.ErpProductsResponse; import com.glxp.api.admin.res.inventory.ErpInvProductResponse; import com.glxp.api.admin.service.basic.BasicThirdSysDetailService; -import com.glxp.api.admin.service.thrsys.ThrInvProductsExportLogService; -import com.glxp.api.admin.service.thrsys.ThrInvProductsImportLogService; -import com.glxp.api.admin.service.thrsys.ThrInvProductsService; -import com.glxp.api.admin.service.thrsys.ThrProductsService; +import com.glxp.api.admin.service.thrsys.*; import com.glxp.api.admin.util.Constant; import com.glxp.api.admin.util.CustomUtil; import com.glxp.api.admin.util.ExcelUtil; @@ -47,6 +45,8 @@ public class ThrInvProductsDlService { ThrInvProductsImportLogService thrInvProductsImportLogService; @Resource ThrInvProductsExportLogService thrInvProductsExportLogService; + @Resource + ThrInvProductsDetailService thrInvProductsDetailService; @Async public void importProducrs(String thirdSys) { @@ -66,8 +66,19 @@ public class ThrInvProductsDlService { int page = 1; int limit = 100; while (page != -1) { - page = getInvmandoc(page, limit, piDetailEntity.getValue(), thrInvProductsImportLogEntity); + page = getInvmandoc(page, limit, piDetailEntity.getValue(), thrInvProductsImportLogEntity, genKey, thirdSys); } + FilterUdiIpLogRequest filterUdiIpLogRequest = new FilterUdiIpLogRequest(); + filterUdiIpLogRequest.setGenKey(genKey); + List thrInvProductsImportDetailEntities = thrInvProductsDetailService.filterInvProductsDetailImport(filterUdiIpLogRequest); + List thrInvProductsEntities = thrInvProductsImportDetailEntities.stream().map( + item -> { + ThrInvProductsEntity thrInvProductsEntity = new ThrInvProductsEntity(); + BeanUtils.copyProperties(item, thrInvProductsEntity); + return thrInvProductsEntity; + } + ).collect(Collectors.toList()); + thrInvProductsService.insertThrInvProducts(thrInvProductsEntities); redisUtil.set(Constant.dlThrProducts, "false"); WebSocketServer.sendInfo("库存产品信息下载已完成,请刷新查看!", "sid"); } @@ -87,7 +98,7 @@ public class ThrInvProductsDlService { head.add("联系电话"); excelData.add(head); //选中导出 - if (thrInvProductsExportRequest.getThrInvProductsEntities() != null && thrInvProductsExportRequest.getThrInvProductsEntities().size()>0) { + if (thrInvProductsExportRequest.getThrInvProductsEntities() != null && thrInvProductsExportRequest.getThrInvProductsEntities().size() > 0) { List thrInvProductsEntities = thrInvProductsExportRequest.getThrInvProductsEntities(); excelData.addAll(getRows(thrInvProductsEntities)); } else {//一键导出 @@ -121,7 +132,43 @@ public class ThrInvProductsDlService { thrInvProductsExportLogService.updateThrInvProductsExportLog(thrInvProductsExportLogEntity); } - public int getInvmandoc(int page, int limit, String productUrl, ThrInvProductsImportLogEntity thrInvProductsImportLogEntity) { + @Async + public void insertInvProducts(String genKey, String thirdSys, List erpOnHandResponses) { + + ThrInvProductsImportLogEntity thrInvProductsImportLogEntity = thrInvProductsImportLogService.selectByGenKey(genKey); + + List thrInvProductsImportDetailEntities; + thrInvProductsImportDetailEntities = erpOnHandResponses.stream().map( + item -> { + ThrInvProductsImportDetailEntity thrInvProductsImportDetailEntity = new ThrInvProductsImportDetailEntity(); + BeanUtils.copyProperties(item, thrInvProductsImportDetailEntity); + thrInvProductsImportDetailEntity.setInventoryCode(item.getCode()); + thrInvProductsImportDetailEntity.setInventoryName(item.getName()); + thrInvProductsImportDetailEntity.setThirdSysFk(thirdSys); + thrInvProductsImportDetailEntity.setGenKeyFk(genKey); + thrInvProductsImportDetailEntity.setUpdateTime(new Date()); + return thrInvProductsImportDetailEntity; + } + ).collect(Collectors.toList()); + thrInvProductsDetailService.insertInvProductsDetailImports(thrInvProductsImportDetailEntities); + + List thrInvProductsEntities; + thrInvProductsEntities = thrInvProductsImportDetailEntities.stream().map( + item -> { + ThrInvProductsEntity thrInvProductsEntity = new ThrInvProductsEntity(); + BeanUtils.copyProperties(item, thrInvProductsEntity); + return thrInvProductsEntity; + } + ).collect(Collectors.toList()); + thrInvProductsService.insertThrInvProducts(thrInvProductsEntities); + + thrInvProductsImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_SUCCESS); + thrInvProductsImportLogEntity.setUpdateTime(new Date()); + thrInvProductsImportLogService.updateImportLog(thrInvProductsImportLogEntity); + } + + + public int getInvmandoc(int page, int limit, String productUrl, ThrInvProductsImportLogEntity thrInvProductsImportLogEntity, String genKey, String thirdSys) { ErpOnhandRequest erpOnhandRequest = new ErpOnhandRequest(); erpOnhandRequest.setPage(page); @@ -138,14 +185,19 @@ public class ThrInvProductsDlService { List erpInvProductResponses = responseBaseResponse.getData().getList(); if (erpInvProductResponses != null && erpInvProductResponses.size() > 0) { - List thrProductsEntities = erpInvProductResponses.stream().map( + List thrProductsEntities = erpInvProductResponses.stream().map( item -> { - ThrInvProductsEntity thrProductsEntity = new ThrInvProductsEntity(); + ThrInvProductsImportDetailEntity thrProductsEntity = new ThrInvProductsImportDetailEntity(); BeanUtils.copyProperties(item, thrProductsEntity); + thrProductsEntity.setInventoryCode(item.getCode()); + thrProductsEntity.setInventoryName(item.getName()); + thrProductsEntity.setGenKeyFk(genKey); + thrProductsEntity.setThirdSysFk(thirdSys); + thrProductsEntity.setUpdateTime(new Date()); return thrProductsEntity; } ).collect(Collectors.toList()); - thrInvProductsService.insertThrInvProducts(thrProductsEntities); + thrInvProductsDetailService.insertInvProductsDetailImports(thrProductsEntities); page++; if (page * limit < responseBaseResponse.getData().getTotal()) { return page; diff --git a/api-admin/src/main/java/com/glxp/api/admin/thread/ThrOrderImportService.java b/api-admin/src/main/java/com/glxp/api/admin/thread/ThrOrderImportService.java index 2f71a6e3..f0e94fe8 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/thread/ThrOrderImportService.java +++ b/api-admin/src/main/java/com/glxp/api/admin/thread/ThrOrderImportService.java @@ -36,7 +36,7 @@ public class ThrOrderImportService { @Async public void importThrOrder(String genKey) { ThrOrderImportLogEntity thrOrderImportLogEntity = thrOrderImportLogService.selectByGenKey(genKey); - if (thrOrderImportLogEntity.getStatus() == UdiInfoImportStatus.UDIINFO_IMPORT_CODE_UNPROCESS) { + if (thrOrderImportLogEntity.getStatus() == UdiInfoImportStatus.UDIINFO_IMPORT_UNPROCESS) { FilterUdiIpLogRequest filterUdiIpLogRequest = new FilterUdiIpLogRequest(); filterUdiIpLogRequest.setGenKey(genKey); List thrOrderImportDetailEntities = thrOrderImportDetailService.filterOrderImportDetail(filterUdiIpLogRequest); @@ -60,6 +60,9 @@ public class ThrOrderImportService { } + thrOrderImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_SUCCESS); + thrOrderImportLogService.updateImportLog(thrOrderImportLogEntity); + } } 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 8d024c3b..ccb597ee 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 @@ -6,12 +6,14 @@ import com.glxp.api.admin.entity.basic.BasicThirdSysDetailEntity; import com.glxp.api.admin.entity.thrsys.*; import com.glxp.api.admin.httpclient.ErpBasicClient; import com.glxp.api.admin.req.basic.FilterErpGoodsRequest; +import com.glxp.api.admin.req.basic.FilterUdiIpLogRequest; import com.glxp.api.admin.req.thrsys.FilterThrProductsRequest; 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.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; @@ -40,8 +42,12 @@ public class ThrProductsDlService { @Resource ThrProductsImportLogService thrProductsImportLogService; @Resource + ThrProductsImportDetailService thrProductsImportDetailService; + @Resource ThrProductsExportLogService thrProductsExportLogService; + + //主动下载产品信息 @Async public void importProducrs(String genKey, String thirdSys) { ThrProductsImportLogEntity thrProductsImportLogEntity = thrProductsImportLogService.selectByGenKey(genKey); @@ -57,14 +63,28 @@ public class ThrProductsDlService { int page = 1; int limit = 100; while (page != -1) { - page = getInvmandoc(thrProductsImportLogEntity,page, limit, piDetailEntity.getValue()); + page = getInvmandoc(thrProductsImportLogEntity, page, limit, piDetailEntity.getValue(), thirdSys); } + FilterUdiIpLogRequest filterUdiIpLogRequest = new FilterUdiIpLogRequest(); + filterUdiIpLogRequest.setGenKey(genKey); + List thrProductsImportDetailEntities = + thrProductsImportDetailService.filterProductsDetailImport(filterUdiIpLogRequest); + List thrProductsEntities = thrProductsImportDetailEntities.stream().map( + item -> { + ThrProductsEntity thrProductsEntity = new ThrProductsEntity(); + BeanUtils.copyProperties(item, thrProductsEntity); + return thrProductsEntity; + } + ).collect(Collectors.toList()); + thrProductsService.insertThrProductss(thrProductsEntities); + redisUtil.set(Constant.dlThrProducts, "false"); thrProductsImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_SUCCESS); thrProductsImportLogService.updateImportLog(thrProductsImportLogEntity); WebSocketServer.sendInfo("产品信息下载已完成,请刷新查看!", "sid"); } + //导出生成Excel文件 @Async public void genExcel(String genKey, ThrProductsExportRequest thrProductsExportRequest) { @@ -80,7 +100,7 @@ public class ThrProductsDlService { head.add("生产厂家"); excelData.add(head); //选中导出 - if (thrProductsExportRequest.getThrProductsEntities() != null && thrProductsExportRequest.getThrProductsEntities().size()>0) { + if (thrProductsExportRequest.getThrProductsEntities() != null && thrProductsExportRequest.getThrProductsEntities().size() > 0) { List thrProductsEntities = thrProductsExportRequest.getThrProductsEntities(); excelData.addAll(getRows(thrProductsEntities)); @@ -115,8 +135,40 @@ public class ThrProductsDlService { } + // //接收第三方上传或文件导入数据 + @Async + public void insertData(String genKey, List erpProductsResponses, String thirdSys) { + ThrProductsImportLogEntity thrProductsImportLogEntity = thrProductsImportLogService.selectByGenKey(genKey); + if (erpProductsResponses != null && erpProductsResponses.size() > 0) { + List thrProductsImportDetailEntities; + thrProductsImportDetailEntities = erpProductsResponses.stream().map( + item -> { + ThrProductsImportDetailEntity thrProductsImportDetailEntity = new ThrProductsImportDetailEntity(); + BeanUtils.copyProperties(item, thrProductsImportDetailEntity); + thrProductsImportDetailEntity.setThirdSysFk(thirdSys); + thrProductsImportDetailEntity.setGenKeyFk(genKey); + return thrProductsImportDetailEntity; + } + ).collect(Collectors.toList()); + thrProductsImportDetailService.insertProductsDetailImports(thrProductsImportDetailEntities); + + List thrProductsEntities; + thrProductsEntities = thrProductsImportDetailEntities.stream().map( + item -> { + ThrProductsEntity thrProductsEntity = new ThrProductsEntity(); + BeanUtils.copyProperties(item, thrProductsEntity); + return thrProductsEntity; + } + ).collect(Collectors.toList()); + thrProductsService.insertThrProductss(thrProductsEntities); + thrProductsImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_SUCCESS); + thrProductsImportLogEntity.setUpdateTime(new Date()); + thrProductsImportLogService.updateImportLog(thrProductsImportLogEntity); + } + } - public int getInvmandoc(ThrProductsImportLogEntity thrProductsImportLogEntity,int page, int limit, String productUrl) { + public int getInvmandoc(ThrProductsImportLogEntity thrProductsImportLogEntity, int page, int limit, String + productUrl, String thirdSys) { FilterErpGoodsRequest filterErpGoodsRequest = new FilterErpGoodsRequest(); filterErpGoodsRequest.setPage(page); @@ -125,14 +177,17 @@ public class ThrProductsDlService { if (erpProducts != null && erpProducts.getCode() == 20000) { List erpProductsResponses = erpProducts.getData().getList(); if (erpProductsResponses != null && erpProductsResponses.size() > 0) { - List thrProductsEntities = erpProductsResponses.stream().map( + List thrProductsImportDetailEntities; + thrProductsImportDetailEntities = erpProductsResponses.stream().map( item -> { - ThrProductsEntity thrProductsEntity = new ThrProductsEntity(); - BeanUtils.copyProperties(item, thrProductsEntity); - return thrProductsEntity; + ThrProductsImportDetailEntity thrProductsImportDetailEntity = new ThrProductsImportDetailEntity(); + BeanUtils.copyProperties(item, thrProductsImportDetailEntity); + thrProductsImportDetailEntity.setThirdSysFk(thirdSys); + thrProductsImportDetailEntity.setGenKeyFk(thrProductsImportLogEntity.getGenKey()); + return thrProductsImportDetailEntity; } ).collect(Collectors.toList()); - thrProductsService.insertThrProductss(thrProductsEntities); + thrProductsImportDetailService.insertProductsDetailImports(thrProductsImportDetailEntities); page++; if (page * limit < erpProducts.getData().getTotal()) { return page; @@ -140,7 +195,7 @@ public class ThrProductsDlService { } else { return -1; } - }else { + } else { thrProductsImportLogEntity.setRemark(erpProducts.getMessage()); thrProductsImportLogEntity.setStatus(UdiInfoImportStatus.UDIINFO_IMPORT_FAIL); thrProductsImportLogService.updateImportLog(thrProductsImportLogEntity); @@ -160,8 +215,8 @@ public class ThrProductsDlService { thrProductsEntities.addAll(datas); page++; - } else{ - if(datas!=null){ + } else { + if (datas != null) { thrProductsEntities.addAll(datas); } break; @@ -171,7 +226,8 @@ public class ThrProductsDlService { return thrProductsEntities; } - public List getThrProducrts(int page, int limit, String productUrl, FilterThrProductsRequest filterThrProductsRequest) { + public List getThrProducrts(int page, int limit, String + productUrl, FilterThrProductsRequest filterThrProductsRequest) { FilterErpGoodsRequest filterErpGoodsRequest = new FilterErpGoodsRequest(); BeanUtils.copyProperties(filterThrProductsRequest, filterErpGoodsRequest); diff --git a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrCorpImportDetailDao.xml b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrCorpImportDetailDao.xml new file mode 100644 index 00000000..597678f0 --- /dev/null +++ b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrCorpImportDetailDao.xml @@ -0,0 +1,92 @@ + + + + + + + + + + insert INTO thr_corp_import_detail + ( + unitId,name,spell,addr,creditNo, + contact,mobile,thirdSysFk,updateTime ,genKeyFk + ) + values + ( + #{unitId}, + #{name}, + #{spell}, + #{addr}, + #{creditNo}, + #{contact}, + #{mobile}, + #{thirdSysFk}, + #{updateTime}, + #{genKeyFk} + ) + + + + insert INTO thr_corp_import_detail + ( + unitId,name,spell,addr,creditNo, + contact,mobile,thirdSysFk ,updateTime ,genKeyFk ) + values + + ( + #{item.unitId}, + #{item.name}, + #{item.spell}, + #{item.addr}, + #{item.creditNo}, + #{item.contact}, + #{item.mobile}, + #{item.thirdSysFk} ,#{item.updateTime},#{item.genKeyFk} ) + + + + DELETE FROM thr_corp_import_detail WHERE id = #{id} + + + DELETE FROM thr_corp_import_detail WHERE genKeyFk = #{genKey} + + + + UPDATE thr_corp_import_detail + + unitId=#{unitId}, + name=#{name}, + spell=#{spell}, + addr=#{addr}, + creditNo=#{creditNo}, + contact=#{contact}, + mobile=#{mobile}, + thirdSysFk=#{thirdSysFk}, + updateTime=#{updateTime}, + genKeyFk=#{genKeyFk}, + + WHERE id = #{id} + + + \ No newline at end of file diff --git a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrInvProductsDao.xml b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrInvProductsDao.xml index 3c9c9ef4..b7eeda78 100644 --- a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrInvProductsDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrInvProductsDao.xml @@ -36,7 +36,7 @@ #{inventoryCode}, #{inventoryName}, #{count}, #{spec}, #{warehouseName}, #{warehouseCode}, #{registerCertNo}, #{manufacturingDate}, #{expirationDate}, - #{thirdSysFk},#{batchNo},#{spaceCode},,#{spaceName} + #{thirdSysFk},#{batchNo},#{spaceCode},#{spaceName} ) @@ -55,7 +55,7 @@ #{item.inventoryCode}, #{item.inventoryName}, #{item.count}, #{item.spec}, #{item.warehouseName}, #{item.warehouseCode}, #{item.registerCertNo}, #{item.manufacturingDate}, #{item.expirationDate}, - #{item.thirdSysFk},#{item.batchNo},#{item.spaceCode},,#{item.spaceName} + #{item.thirdSysFk},#{item.batchNo},#{item.spaceCode},#{item.spaceName} ) diff --git a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrInvProductsDetailDao.xml b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrInvProductsDetailDao.xml new file mode 100644 index 00000000..f33977ac --- /dev/null +++ b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrInvProductsDetailDao.xml @@ -0,0 +1,92 @@ + + + + + + + + + + insert INTO thr_inv_products_import_detail + ( + inventoryCode,inventoryName,count,spec, + warehouseName,warehouseCode,registerCertNo,manufacturingDate, + expirationDate,thirdSysFk,batchNo,spaceCode,spaceName,updateTime ,genKeyFk + ) + values + ( + #{inventoryCode}, #{inventoryName}, #{count}, #{spec}, + #{warehouseName}, #{warehouseCode}, #{registerCertNo}, #{manufacturingDate}, + #{expirationDate}, + #{thirdSysFk},#{batchNo},#{spaceCode},#{spaceName}, + #{updateTime}, + #{genKeyFk} + ) + + + + insert INTO thr_inv_products_import_detail + ( + inventoryCode,inventoryName,count,spec, + warehouseName,warehouseCode,registerCertNo,manufacturingDate, + expirationDate,thirdSysFk,batchNo,spaceCode,spaceName,updateTime ,genKeyFk ) + values + + ( + #{item.inventoryCode}, #{item.inventoryName}, #{item.count}, #{item.spec}, + #{item.warehouseName}, #{item.warehouseCode}, #{item.registerCertNo}, + #{item.manufacturingDate}, #{item.expirationDate}, + #{item.thirdSysFk},#{item.batchNo},#{item.spaceCode},#{item.spaceName} + ,#{item.updateTime},#{item.genKeyFk} ) + + + + DELETE FROM thr_inv_products_import_detail WHERE id = #{id} + + + DELETE FROM thr_inv_products_import_detail WHERE genKeyFk = #{genKey} + + + + UPDATE thr_inv_products_import_detail + + inventoryCode=#{inventoryCode}, + inventoryName=#{inventoryName}, + spec=#{spec}, + count=#{count}, + batchNo=#{batchNo}, + warehouseName=#{warehouseName}, + warehouseCode=#{warehouseCode}, + registerCertNo=#{registerCertNo}, + manufacturingDate=#{manufacturingDate}, + expirationDate=#{expirationDate}, + spaceCode=#{spaceCode}, + spaceName=#{spaceName}, + thirdSysFk=#{thirdSysFk}, + updateTime=#{updateTime}, + genKeyFk=#{genKeyFk}, + + WHERE id = #{id} + + + \ No newline at end of file diff --git a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrOrderImportDetailDao.xml b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrOrderImportDetailDao.xml index 655e7bfe..0105273b 100644 --- a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrOrderImportDetailDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrOrderImportDetailDao.xml @@ -28,19 +28,21 @@ parameterType="com.glxp.api.admin.entity.thrsys.ThrOrderImportDetailEntity"> insert INTO thr_order_import_detail ( - billNo,billdate,corpId,corpName,billType,billFlag,productId,productName,spec,batchNo,expireDate,productDate,count,reCount,status,updateTime,remark,genKeyFk + billNo,billdate,corpId,corpName,billType,billFlag,productId,productName,spec,batchNo,expireDate, + productDate,count,reCount,status,updateTime,remark,genKeyFk,thirdSysFk ) values ( #{billNo},#{billdate},#{corpId},#{corpName},#{billType},#{billFlag},#{productId},#{productName},#{spec}, - #{batchNo},#{expireDate},#{productDate},#{count},#{reCount},#{status},#{updateTime},#{remark},#{genKeyFk} + #{batchNo},#{expireDate},#{productDate},#{count},#{reCount},#{status},#{updateTime},#{remark},#{genKeyFk},#{thirdSysFk} ) insert INTO thr_order_import_detail ( - billNo,billdate,corpId,corpName,billType,billFlag,productId,productName,spec,batchNo,expireDate,productDate,count,reCount,status,updateTime,remark,genKeyFk + billNo,billdate,corpId,corpName,billType,billFlag,productId,productName,spec, + batchNo,expireDate,productDate,count,reCount,status,updateTime,remark,genKeyFk,thirdSysFk ) values @@ -80,6 +82,8 @@ updateTime=#{updateTime}, genKeyFk=#{genKeyFk}, remark=#{remark}, + thirdSysFk=#{thirdSysFk}, + WHERE id = #{id} diff --git a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrProductsImportDetailDao.xml b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrProductsImportDetailDao.xml new file mode 100644 index 00000000..cc89b172 --- /dev/null +++ b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrProductsImportDetailDao.xml @@ -0,0 +1,102 @@ + + + + + + + + + + insert INTO thr_products_import_detail + ( + code,name,measname,spec,registerNo,manufactory, + cplb,flbm,qxlb,ybbm,sptm,tyshxydm,zczbhhzbapzbh,ylqxzcrbarmc,ylqxzcrbarywmc,cpms, + thirdSysFk,updateTime ,genKeyFk ) + values + ( + #{code}, + #{name}, + #{measname}, + #{spec}, + #{registerNo}, + #{manufactory}, + #{cplb}, #{flbm}, #{qxlb}, #{ybbm},#{sptm}, + #{tyshxydm}, #{zczbhhzbapzbh}, #{ylqxzcrbarmc}, #{ylqxzcrbarywmc},#{cpms} + #{thirdSysFk},#{updateTime},#{genKeyFk} + ) + + + + insert INTO thr_products_import_detail + ( + code,name,measname,spec,registerNo,manufactory, + cplb,flbm,qxlb,ybbm,sptm,tyshxydm,zczbhhzbapzbh,ylqxzcrbarmc,ylqxzcrbarywmc,cpms, + thirdSysFk ,updateTime ,genKeyFk ) + values + + ( + #{item.code}, + #{item.name}, + #{item.measname}, + #{item.spec}, + #{item.registerNo}, + #{item.manufactory}, + #{item.cplb}, #{item.flbm}, #{item.qxlb}, #{item.ybbm},#{item.sptm}, + #{item.tyshxydm}, #{item.zczbhhzbapzbh}, #{item.ylqxzcrbarmc}, #{item.ylqxzcrbarywmc},#{item.cpms}, + #{item.thirdSysFk} ,#{item.updateTime},#{item.genKeyFk} ) + + + + DELETE FROM thr_products_import_detail WHERE id = #{id} + + + DELETE FROM thr_products_import_detail WHERE genKeyFk = #{genKey} + + + + UPDATE thr_products_import_detail + + code=#{code}, + name=#{name}, + measname=#{measname}, + spec=#{spec}, + registerNo=#{registerNo}, + cplb=#{cplb}, + flbm=#{flbm}, + qxlb=#{qxlb}, + ybbm=#{ybbm}, + sptm=#{sptm}, + tyshxydm=#{tyshxydm}, + zczbhhzbapzbh=#{zczbhhzbapzbh}, + ylqxzcrbarmc=#{ylqxzcrbarmc}, + ylqxzcrbarywmc=#{ylqxzcrbarywmc}, + manufactory=#{manufactory}, + cpms=#{cpms}, + thirdSysFk=#{thirdSysFk}, + updateTime=#{updateTime}, + genKeyFk=#{genKeyFk}, + + WHERE id = #{id} + + + \ No newline at end of file