diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/ErpFactoryController.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/ErpFactoryController.java index 529fd95..cd0d51f 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/ErpFactoryController.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/ErpFactoryController.java @@ -40,14 +40,14 @@ public class ErpFactoryController { @PostMapping("/create") @Operation(summary = "创建ERP工厂") - @PreAuthorize("@ss.hasPermission('sply:erp-factory:create')") + @PreAuthorize("@ss.hasPermission('base:erp-factory:create')") public CommonResult createErpFactory(@Valid @RequestBody ErpFactorySaveReqVO createReqVO) { return success(erpFactoryService.createErpFactory(createReqVO)); } @PutMapping("/update") @Operation(summary = "更新ERP工厂") - @PreAuthorize("@ss.hasPermission('sply:erp-factory:update')") + @PreAuthorize("@ss.hasPermission('base:erp-factory:update')") public CommonResult updateErpFactory(@Valid @RequestBody ErpFactorySaveReqVO updateReqVO) { erpFactoryService.updateErpFactory(updateReqVO); return success(true); @@ -56,7 +56,7 @@ public class ErpFactoryController { @DeleteMapping("/delete") @Operation(summary = "删除ERP工厂") @Parameter(name = "id", description = "编号", required = true) - @PreAuthorize("@ss.hasPermission('sply:erp-factory:delete')") + @PreAuthorize("@ss.hasPermission('base:erp-factory:delete')") public CommonResult deleteErpFactory(@RequestParam("id") Long id) { erpFactoryService.deleteErpFactory(id); return success(true); @@ -65,7 +65,7 @@ public class ErpFactoryController { @DeleteMapping("/delete-list") @Parameter(name = "ids", description = "编号", required = true) @Operation(summary = "批量删除ERP工厂") - @PreAuthorize("@ss.hasPermission('sply:erp-factory:delete')") + @PreAuthorize("@ss.hasPermission('base:erp-factory:delete')") public CommonResult deleteErpFactoryList(@RequestBody BatchDeleteReqVO req) { erpFactoryService.deleteErpFactoryListByIds(req.getIds()); return success(true); @@ -74,7 +74,7 @@ public class ErpFactoryController { @GetMapping("/get") @Operation(summary = "获得ERP工厂") @Parameter(name = "id", description = "编号", required = true, example = "1024") - @PreAuthorize("@ss.hasPermission('sply:erp-factory:query')") + @PreAuthorize("@ss.hasPermission('base:erp-factory:query')") public CommonResult getErpFactory(@RequestParam("id") Long id) { ErpFactoryDO erpFactory = erpFactoryService.getErpFactory(id); return success(BeanUtils.toBean(erpFactory, ErpFactoryRespVO.class)); @@ -82,7 +82,7 @@ public class ErpFactoryController { @GetMapping("/page") @Operation(summary = "获得ERP工厂分页") - @PreAuthorize("@ss.hasPermission('sply:erp-factory:query')") + @PreAuthorize("@ss.hasPermission('base:erp-factory:query')") public CommonResult> getErpFactoryPage(@Valid ErpFactoryPageReqVO pageReqVO) { PageResult pageResult = erpFactoryService.getErpFactoryPage(pageReqVO); return success(BeanUtils.toBean(pageResult, ErpFactoryRespVO.class)); @@ -90,7 +90,7 @@ public class ErpFactoryController { @GetMapping("/export-excel") @Operation(summary = "导出ERP工厂 Excel") - @PreAuthorize("@ss.hasPermission('sply:erp-factory:export')") + @PreAuthorize("@ss.hasPermission('base:erp-factory:export')") @ApiAccessLog(operateType = EXPORT) public void exportErpFactoryExcel(@Valid ErpFactoryPageReqVO pageReqVO, HttpServletResponse response) throws IOException { @@ -103,7 +103,7 @@ public class ErpFactoryController { @PostMapping("/getErpFactoryTask") @Operation(summary = "定时获得erp工厂数据") - @PreAuthorize("@ss.hasPermission('sply:erp-factory:create')") + @PreAuthorize("@ss.hasPermission('base:erp-factory:create')") public CommonResult getErpFactoryTask() { erpFactoryService.callErpRfcInterface(); return success(true); diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpProcessDetailPageReqVO.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpProcessDetailPageReqVO.java index 9cd7eba..3925ead 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpProcessDetailPageReqVO.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpProcessDetailPageReqVO.java @@ -14,7 +14,7 @@ public class ErpProcessDetailPageReqVO extends PageParam { private String processId; @Schema(description = "工序编码") - private BigDecimal processingNumber; + private String processingNumber; @Schema(description = "工序描述", example = "李四") private String processingName; diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpProcessDetailRespVO.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpProcessDetailRespVO.java index ad2b968..29c9b3a 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpProcessDetailRespVO.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpProcessDetailRespVO.java @@ -22,7 +22,7 @@ public class ErpProcessDetailRespVO { @Schema(description = "工序编码", requiredMode = Schema.RequiredMode.REQUIRED) @ExcelProperty("工序编码") - private BigDecimal processingNumber; + private String processingNumber; @Schema(description = "工序描述", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四") @ExcelProperty("工序描述") diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpProcessDetailSaveReqVO.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpProcessDetailSaveReqVO.java index 97071e4..1986e59 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpProcessDetailSaveReqVO.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/controller/admin/erp/vo/ErpProcessDetailSaveReqVO.java @@ -20,7 +20,7 @@ public class ErpProcessDetailSaveReqVO { @Schema(description = "工序编码", requiredMode = Schema.RequiredMode.REQUIRED) @NotNull(message = "工序编码不能为空") - private BigDecimal processingNumber; + private String processingNumber; @Schema(description = "工序描述", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四") @NotEmpty(message = "工序描述不能为空") diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/dataobject/erp/ErpProcessDetailDO.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/dataobject/erp/ErpProcessDetailDO.java index 31b09f6..c231121 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/dataobject/erp/ErpProcessDetailDO.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/dal/dataobject/erp/ErpProcessDetailDO.java @@ -39,7 +39,7 @@ public class ErpProcessDetailDO { * 工序编码 */ @TableField("PROC_NUM") - private BigDecimal processingNumber; + private String processingNumber; /** * 工序描述 */ diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpBomDetailServiceImpl.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpBomDetailServiceImpl.java index c5ef5f3..7fa332d 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpBomDetailServiceImpl.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpBomDetailServiceImpl.java @@ -122,6 +122,9 @@ public class ErpBomDetailServiceImpl implements ErpBomDetailService { Map existingNumbers = erpConfig.getRedisCacheMap(key); for (ErpBomDetailDO updateReqVO : updateReqVOS) { String mapKey = updateReqVO.getBomId() + "-" + updateReqVO.getErpBomId(); + if (existingNumbers.containsKey(mapKey)) { + updateReqVO.setId(existingNumbers.get(mapKey)); + } if (updateReqVO.getId() == null) { toInsert.add(updateReqVO); } else { diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpProcessDetailServiceImpl.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpProcessDetailServiceImpl.java index 472a12a..c56a898 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpProcessDetailServiceImpl.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpProcessDetailServiceImpl.java @@ -116,7 +116,10 @@ public class ErpProcessDetailServiceImpl implements ErpProcessDetailService { List dataArrayNumbers = new ArrayList<>(); Map existingNumbers = erpConfig.getRedisCacheMap(key); for (ErpProcessDetailDO updateReqVO : updateReqVOS) { - String mapKey = updateReqVO.getProcessId() + "-" + updateReqVO.getProcessingNumber().toEngineeringString(); + String mapKey = updateReqVO.getProcessId() + "-" + updateReqVO.getProcessingNumber()+"-"+updateReqVO.getProcessingName(); + if (existingNumbers.containsKey(mapKey)) { + updateReqVO.setId(existingNumbers.get(mapKey)); + } if (updateReqVO.getId() == null) { toInsert.add(updateReqVO); } else { @@ -144,9 +147,10 @@ public class ErpProcessDetailServiceImpl implements ErpProcessDetailService { new LambdaQueryWrapperX() .in(ErpProcessDetailDO::getProcessId, result.toInsert.stream().map(ErpProcessDetailDO::getProcessId).distinct().collect(Collectors.toList())) .in(ErpProcessDetailDO::getProcessingNumber, result.toInsert.stream().map(ErpProcessDetailDO::getProcessingNumber).distinct().collect(Collectors.toList())) + .in(ErpProcessDetailDO::getProcessingName, result.toInsert.stream().map(ErpProcessDetailDO::getProcessingName).distinct().collect(Collectors.toList())) ); Map numberIdMap = insertedRecords.stream() - .collect(Collectors.toMap(asset -> asset.getProcessId() + "-" + asset.getProcessingNumber(), ErpProcessDetailDO::getId)); + .collect(Collectors.toMap(asset -> asset.getProcessId() + "-" + asset.getProcessingNumber()+"-"+asset.getProcessingName(), ErpProcessDetailDO::getId)); erpConfig.addRedisCacheMap(result.key, numberIdMap); } if (!result.toUpdate.isEmpty()) { @@ -180,7 +184,7 @@ public class ErpProcessDetailServiceImpl implements ErpProcessDetailService { List assets = erpProcessDetailMapper.selectList(new LambdaQueryWrapperX()); Map existingNumbers = new HashMap<>(); for (ErpProcessDetailDO asset : assets) { - String mapKey = asset.getProcessId() + "-" + asset.getProcessingNumber(); + String mapKey = asset.getProcessId() + "-" + asset.getProcessingNumber()+"-"+asset.getProcessingName(); existingNumbers.put(mapKey, asset.getId()); } erpConfig.addRedisCacheMap(key, existingNumbers); diff --git a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpProcessServiceImpl.java b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpProcessServiceImpl.java index 967fdf5..ea7f504 100644 --- a/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpProcessServiceImpl.java +++ b/zt-module-erp/zt-module-erp-server/src/main/java/com/zt/plat/module/erp/service/erp/ErpProcessServiceImpl.java @@ -111,7 +111,7 @@ public class ErpProcessServiceImpl implements ErpProcessService { @XxlJob("getErpProcessTask") public void callErpRfcInterface() { try { - OftenEnum.FuncnrEnum funcnrEnum = OftenEnum.FuncnrEnum.公司代码; + OftenEnum.FuncnrEnum funcnrEnum = OftenEnum.FuncnrEnum.工艺路线; String funcnr = funcnrEnum.getFuncnr(); String key = "erpMap" + funcnr; if (erpConfig.getRedisCacheMap(key).isEmpty()) { @@ -189,7 +189,11 @@ public class ErpProcessServiceImpl implements ErpProcessService { JSONObject itemJson = dataJsonItem.getJSONObject(j); ErpProcessDetailDO detailDO = new ErpProcessDetailDO(); detailDO.setProcessId(String.valueOf(DO.getId())); - detailDO.setProcessingNumber(itemJson.getBigDecimal("VORNR")); + String processingNumber = itemJson.getString("VORNR"); + if (processingNumber != null) { + processingNumber = processingNumber.replaceFirst("^0+(?!$)", ""); + } + detailDO.setProcessingNumber(processingNumber); detailDO.setProcessingName(itemJson.getString("LTXA1")); detailDO.setUom(itemJson.getString("MEINH")); detailDO.setWorkCenterNumber(itemJson.getString("ARBPL"));