From ba19d4f1be9ca57470605bc668f2bfcff2caa9ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Wed, 27 Mar 2024 09:46:33 +0800 Subject: [PATCH 1/6] =?UTF-8?q?fix(feature/DM/nflg-bom):=20=E4=BF=AE?= =?UTF-8?q?=E6=94=B9pbom=E5=AF=BC=E5=87=BA=E5=8A=9F=E8=83=BD=EF=BC=8C?= =?UTF-8?q?=E5=88=86=E4=B8=BA=E6=8C=89=E6=9F=A5=E8=AF=A2=E6=9D=A1=E4=BB=B6?= =?UTF-8?q?=E5=AF=BC=E5=87=BA=E5=92=8C=E6=8C=89rowid=E5=AF=BC=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../nflg/product/bomnew/api/user/PBomApi.java | 62 ++++++++++++------- .../service/BomNewPbomParentService.java | 8 +-- 2 files changed, 45 insertions(+), 25 deletions(-) diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/PBomApi.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/PBomApi.java index 2f097f7f..d8771396 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/PBomApi.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/PBomApi.java @@ -1,6 +1,7 @@ package com.nflg.product.bomnew.api.user; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.convert.Convert; import com.baomidou.mybatisplus.core.metadata.IPage; import com.mzt.logapi.context.LogRecordContext; import com.mzt.logapi.starter.annotation.LogRecord; @@ -16,7 +17,9 @@ import com.nflg.product.bomnew.pojo.query.BomNewPbomParentQuery; import com.nflg.product.bomnew.pojo.vo.BaseMaterialVO; import com.nflg.product.bomnew.pojo.vo.BomCopyCheckResultVO; import com.nflg.product.bomnew.pojo.vo.BomNewPbomParentVO; +import com.nflg.product.bomnew.pojo.vo.BomNewPbomWorkExcelVO; import com.nflg.product.bomnew.service.*; +import com.nflg.product.bomnew.util.EecExcelUtil; import com.nflg.product.bomnew.util.VUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -27,6 +30,7 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; import java.io.IOException; +import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.concurrent.ExecutionException; @@ -75,35 +79,51 @@ public class PBomApi extends BaseApi { } @PostMapping("exportWorkDetailsListByPage") - @ApiOperation("导出工作列表--导出") + @ApiOperation("导出工作列表--按查询条件") @LogRecord(success = "PBom-导出工作列表,操作结果:{{#_ret}}", bizNo = "",type = "PBom-导出工作列表") - public void exportWorkDownLoad(@RequestBody BomNewPbomParentQuery query ,HttpServletResponse response) throws IOException { - bomNewPbomParentService.workDetailsExcel(query,response); + public void exportWorkDownLoad(@RequestBody BomNewPbomParentQuery query, HttpServletResponse response) throws IOException { + //bomNewPbomParentService.workDetailsExcel(query,response); + IPage data = bomNewPbomParentService.workDetailsListByPage(query); + List out = new ArrayList<>(); + if (!data.getRecords().isEmpty()) { + out = Convert.toList(BomNewPbomWorkExcelVO.class, data.getRecords()); + } + EecExcelUtil.export(response, out, BomNewPbomWorkExcelVO.class, "pbom明细列表"); } @PostMapping("releaseListDownLoad") - @ApiOperation("PBom已发布工作列表--导出") + @ApiOperation("导出正式列表--按查询条件") @LogRecord(success = "PBom-导出已发布工作列表,操作结果:{{#_ret}}", bizNo = "",type = "PBom-已发布工作列表") public void releaseListDownLoad(@RequestBody BomNewPbomParentQuery query ,HttpServletResponse response) throws IOException { - bomNewPbomParentService.releaseListExcel(query,response); + //bomNewPbomParentService.releaseListExcel(query,response); + IPage data = bomNewPbomParentService.releaseListByPage(query); + List out = new ArrayList<>(); + if (!data.getRecords().isEmpty()) { + out = Convert.toList(BomNewPbomWorkExcelVO.class, data.getRecords()); + } + EecExcelUtil.export(response, out, BomNewPbomWorkExcelVO.class, "pbom已发布工作列表"); } -// @PostMapping("exportWorkDetailsListByPage") -// @ApiOperation("导出工作列表--导出") -// @LogRecord(success = "PBom-导出工作列表,操作结果:{{#_ret}}", bizNo = "",type = "PBom-导出工作列表") -// public void exportWorkDownLoad(@RequestBody List bomRowIds, HttpServletResponse response) throws IOException { -// List data = bomNewPbomParentService.exportExcel(bomRowIds); -// //new Workbook().addSheet(new ListSheet<>(data)).writeTo(response.getOutputStream()); -// EecExcelUtil.export(response, data, BomNewPbomWorkExcelVO.class, "pbom明细列表"); -// } -// -// @PostMapping("releaseListDownLoad") -// @ApiOperation("PBom已发布工作列表--导出") -// @LogRecord(success = "PBom-导出已发布工作列表,操作结果:{{#_ret}}", bizNo = "",type = "PBom-已发布工作列表") -// public void releaseListDownLoad(@RequestBody List bomRowIds, HttpServletResponse response) throws IOException { -// List data = bomNewPbomParentService.exportExcel(bomRowIds); -// EecExcelUtil.export(response, data, BomNewPbomWorkExcelVO.class, "pbom已发布明细列表"); -// } + @PostMapping("exportWorkDetailsListByIds") + @ApiOperation("导出工作列表--按rowid") + @LogRecord(success = "PBom-导出工作列表,操作结果:{{#_ret}}", bizNo = "",type = "PBom-导出工作列表") + public void exportWorkDownLoad(@RequestBody List bomRowIds, HttpServletResponse response) throws IOException { + VUtils.isTure(CollUtil.isEmpty(bomRowIds)).throwMessage("请选择要导出的行"); + + List data = bomNewPbomParentService.exportExcel(bomRowIds); + //new Workbook().addSheet(new ListSheet<>(data)).writeTo(response.getOutputStream()); + EecExcelUtil.export(response, data, BomNewPbomWorkExcelVO.class, "pbom明细列表"); + } + + @PostMapping("releaseListDownLoadByIds") + @ApiOperation("导出正式列表--按rowid") + @LogRecord(success = "PBom-导出已发布工作列表,操作结果:{{#_ret}}", bizNo = "",type = "PBom-已发布工作列表") + public void releaseListDownLoad(@RequestBody List bomRowIds, HttpServletResponse response) throws IOException { + VUtils.isTure(CollUtil.isEmpty(bomRowIds)).throwMessage("请选择要导出的行"); + + List data = bomNewPbomParentService.exportExcel(bomRowIds); + EecExcelUtil.export(response, data, BomNewPbomWorkExcelVO.class, "pbom已发布明细列表"); + } @GetMapping("getChild") @ApiOperation("获取子级") diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomParentService.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomParentService.java index ddbf0aef..caee4bc6 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomParentService.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomParentService.java @@ -112,7 +112,7 @@ public class BomNewPbomParentService extends ServiceImpl parentMaterialByMaterialNo = getParentMaterialByMaterialNo(materialNo).stream().collect(Collectors.toList()); + List parentMaterialByMaterialNo = new ArrayList<>(getParentMaterialByMaterialNo(materialNo)); parentMaterialByMaterialNo.add(materialNo); if (CollUtil.isNotEmpty(parentMaterialByMaterialNo)) { List parents = this.getBaseMapper().getParentForMaterialNoSeach(StrUtil.isBlank(userRoleService.getUserFactory()) ? userRoleService.getUserFactory() : query.getFacCode(), parentMaterialByMaterialNo); @@ -131,7 +131,7 @@ public class BomNewPbomParentService extends ServiceImpl(); + return new Page<>(); } else { Page result = this.getBaseMapper().workDetailsListByPage(new Page<>(query.getPage(), query.getPageSize()), query, userRoleService.getUserFactory()); materialMainService.intiMaterialInfo(result.getRecords(), EBomConstant.EBOM_IGNORED_FIELDS_INIT_MATERIAL_DEFAULT); @@ -141,8 +141,8 @@ public class BomNewPbomParentService extends ServiceImpl handSeachToTree(List parents, List childs) { Page resutlData = new Page<>(); - Set parentSet = parents.stream().map(u -> u.getMaterialNo()).collect(Collectors.toSet()); - Set childSet = childs.stream().map(u -> u.getMaterialNo()).collect(Collectors.toSet()); + Set parentSet = parents.stream().map(BaseMaterialVO::getMaterialNo).collect(Collectors.toSet()); + Set childSet = childs.stream().map(BaseMaterialVO::getMaterialNo).collect(Collectors.toSet()); Set difference = Sets.difference(parentSet, childSet); List resultParents = parents.stream().filter(u -> difference.contains(u.getMaterialNo())).collect(Collectors.toList()); resutlData.setTotal(difference.size()); From e04e638f037156e2681d5b44959f55687fbd72fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Wed, 27 Mar 2024 14:44:22 +0800 Subject: [PATCH 2/6] =?UTF-8?q?feat(feature/DM/nflg-bom):=20=E5=8E=9F?= =?UTF-8?q?=E5=A7=8Bbom=E6=98=8E=E7=BB=86=E8=A1=A8=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E6=B7=BB=E5=8A=A0=E2=80=9C=E6=98=AF=E5=90=A6?= =?UTF-8?q?=E4=BB=85=E6=98=BE=E7=A4=BA=E8=87=AA=E5=B7=B1=E7=9A=84=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bomnew/pojo/query/OriginalBomQuery.java | 10 ++-------- .../service/BomNewOriginalParentService.java | 17 +++++++++-------- .../master/BomNewOriginalParentMapper.xml | 3 +++ 3 files changed, 14 insertions(+), 16 deletions(-) diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/query/OriginalBomQuery.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/query/OriginalBomQuery.java index 8e980530..36db3a8c 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/query/OriginalBomQuery.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/pojo/query/OriginalBomQuery.java @@ -1,6 +1,5 @@ package com.nflg.product.bomnew.pojo.query; -import cn.hutool.core.convert.Convert; import cn.hutool.core.util.StrUtil; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -8,7 +7,6 @@ import lombok.Data; import lombok.experimental.Accessors; import java.util.Arrays; -import java.util.Date; import java.util.List; /** @@ -20,8 +18,6 @@ import java.util.List; @ApiModel(value = "com-nflg-product-bom-obom-pojo-query-BomOriginalParentEntityQuery") public class OriginalBomQuery extends BasePageQuery { - - @ApiModelProperty(value = "图号集合,英文逗号隔开") private String drawingNoList; @@ -45,12 +41,10 @@ public class OriginalBomQuery extends BasePageQuery { @ApiModelProperty(value = "状态:1=待转换、2=已转换") private Integer status; - - private String startDate; private String endDate; - - + @ApiModelProperty(value = "是否仅显示自己的数据:0=所有人的数据;1=仅自己的数据,默认为0") + private Integer showMySelfOnly = 0; } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewOriginalParentService.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewOriginalParentService.java index 9daa48f4..2bf44b63 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewOriginalParentService.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewOriginalParentService.java @@ -145,11 +145,9 @@ public class BomNewOriginalParentService extends ServiceImpl result = new Page<>(); //物料编码搜索或图号搜索 if (CollUtil.isNotEmpty(query.getMaterialNos()) || CollUtil.isNotEmpty(query.getDrawingNos())) { - List queryDrawingNos = new ArrayList<>(); - queryDrawingNos.addAll(query.getDrawingNos()); - List drawingParentNos=new ArrayList<>(); + List queryDrawingNos = new ArrayList<>(query.getDrawingNos()); if (CollUtil.isNotEmpty(query.getMaterialNos())) { - drawingParentNos = this.getBaseMapper().getDrawingNoByMaterialNos(query.getMaterialNos()); + List drawingParentNos = this.getBaseMapper().getDrawingNoByMaterialNos(query.getMaterialNos()); if (CollUtil.isNotEmpty(drawingParentNos)) { queryDrawingNos.addAll(drawingParentNos); } @@ -160,7 +158,7 @@ public class BomNewOriginalParentService extends ServiceImpl parentDrawingNos = getParentDrawingNoByMaterialNo(queryDrawingNos).stream().collect(Collectors.toList()); + List parentDrawingNos = new ArrayList<>(getParentDrawingNoByMaterialNo(queryDrawingNos)); parentDrawingNos.addAll(queryDrawingNos); if (CollUtil.isNotEmpty(parentDrawingNos)) { List parents = this.getBaseMapper().getParentForDrawingNoSeach(parentDrawingNos, query.getStatus()); @@ -173,8 +171,11 @@ public class BomNewOriginalParentService extends ServiceImpl(query.getPage(), query.getPageSize()), query, SessionUtil.getUserCode()); + String userCode = null; + if (query.getShowMySelfOnly() == 1) { + userCode = SessionUtil.getUserCode(); + } + result = this.getBaseMapper().getOriginalBomListPage(new Page<>(query.getPage(), query.getPageSize()), query, userCode); materialMainService.intiMaterialInfo(result.getRecords()); } return result; @@ -201,7 +202,7 @@ public class BomNewOriginalParentService extends ServiceImpl delRowIds = bom.getBomList().stream().filter(u -> u.getRowId() > 0).map(u -> u.getRowId()).collect(Collectors.toList()); + List delRowIds = bom.getBomList().stream().map(BomOriginalListVO::getRowId).filter(rowId -> rowId > 0).collect(Collectors.toList()); originalChildService.getBaseMapper().delOriginalChildNotInRowIds(delRowIds, bom.getParentRowId()); originalChildService.saveOrUpdateBatch(childEntities); } diff --git a/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewOriginalParentMapper.xml b/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewOriginalParentMapper.xml index 66ca1288..986de007 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewOriginalParentMapper.xml +++ b/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewOriginalParentMapper.xml @@ -70,6 +70,9 @@ and created_time between #{query.startDate} and DATE_ADD(#{query.endDate}, INTERVAL 1 DAY) + + and created_by=#{userCode} + From 83a94ead2338ef41225d7f5ad5815be422d620cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Wed, 27 Mar 2024 17:25:23 +0800 Subject: [PATCH 3/6] =?UTF-8?q?fix(feature/DM/nflg-bom):=20=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E9=80=9A=E8=BF=87=E5=80=BC=E5=8F=8D=E6=9F=A5=E6=9E=9A?= =?UTF-8?q?=E4=B8=BE=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/nflg/product/bomnew/constant/EBomStatusEnum.java | 9 +++++++++ .../product/bomnew/service/BomNewEbomParentService.java | 3 +-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/constant/EBomStatusEnum.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/constant/EBomStatusEnum.java index da0e0c6e..f7c8951b 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/constant/EBomStatusEnum.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/constant/EBomStatusEnum.java @@ -20,4 +20,13 @@ public enum EBomStatusEnum implements ValueEnum { private final Integer value; private final String description; + + public static EBomStatusEnum findByValue(Integer value) { + for (EBomStatusEnum statusEnum : EBomStatusEnum.values()) { + if (statusEnum.getValue().equals(value)) { + return statusEnum; + } + } + throw new IllegalArgumentException("无效的值"); + } } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java index 7fcd1570..14517eee 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewEbomParentService.java @@ -6,7 +6,6 @@ import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.lang.TypeReference; import cn.hutool.core.thread.ThreadUtil; -import cn.hutool.core.util.EnumUtil; import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.NumberUtil; import cn.hutool.core.util.ObjectUtil; @@ -1489,7 +1488,7 @@ public class BomNewEbomParentService extends ServiceImpl Date: Wed, 27 Mar 2024 21:15:52 +0800 Subject: [PATCH 4/6] =?UTF-8?q?perf(feature/DM/nflg-bom):=20=E5=90=8C?= =?UTF-8?q?=E6=AD=A5=E8=99=9A=E6=8B=9F=E7=89=A9=E6=96=99=E5=88=B0OA?= =?UTF-8?q?=E6=94=B9=E4=B8=BA=E5=BC=82=E6=AD=A5=EF=BC=8Chttp=E8=AF=B7?= =?UTF-8?q?=E6=B1=82=E6=B7=BB=E5=8A=A0=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../product/bomnew/config/TaskPoolConfig.java | 13 ++++++++++ .../bomnew/service/MaterialService.java | 9 ++++++- .../nflg/product/bomnew/util/HttpUtils.java | 26 ++++++++++++++----- 3 files changed, 41 insertions(+), 7 deletions(-) diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/config/TaskPoolConfig.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/config/TaskPoolConfig.java index 710bf2b7..bfb9579b 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/config/TaskPoolConfig.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/config/TaskPoolConfig.java @@ -28,4 +28,17 @@ public class TaskPoolConfig { taskExecutor.setThreadFactory(new ThreadFactoryBuilder().setNamePrefix("plm-searcher-thread-").build()); return taskExecutor; } + + @Bean("syncOAThreadPool") + public ThreadPoolTaskExecutor syncOAThreadPool() { + ThreadPoolTaskExecutor taskExecutor = new ThreadPoolTaskExecutor(); + taskExecutor.setCorePoolSize(10); + taskExecutor.setMaxPoolSize(30); + taskExecutor.setQueueCapacity(2000); + taskExecutor.setKeepAliveSeconds(100); + taskExecutor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy()); + //设置线程池的线程名称,方便日志追踪 + taskExecutor.setThreadFactory(new ThreadFactoryBuilder().setNamePrefix("sync-oa-").build()); + return taskExecutor; + } } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/MaterialService.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/MaterialService.java index 42726c78..79590791 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/MaterialService.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/MaterialService.java @@ -25,6 +25,8 @@ import lombok.extern.slf4j.Slf4j; import nflg.product.common.constant.STATE; import nflg.product.common.vo.ResultVO; import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -32,6 +34,7 @@ import javax.annotation.Resource; import java.io.IOException; import java.time.LocalDateTime; import java.util.*; +import java.util.concurrent.CompletableFuture; import java.util.stream.Collectors; @Service @@ -44,6 +47,10 @@ public class MaterialService { @Resource MaterialMainService materialMainService; + @Resource + @Qualifier("syncOAThreadPool") + ThreadPoolTaskExecutor syncOAThreadPool; + /** * 申请物料 * @@ -202,7 +209,7 @@ public class MaterialService { materialMainService.saveOrUpdateBatch(resultList); initCategoryInfo(syncOaEnts); //同步OA - sysnToOa(syncOaEnts); + CompletableFuture.runAsync(() -> sysnToOa(syncOaEnts),syncOAThreadPool); return result; } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/util/HttpUtils.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/util/HttpUtils.java index 57f486fa..ab9a4bd6 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/util/HttpUtils.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/util/HttpUtils.java @@ -1,10 +1,13 @@ package com.nflg.product.bomnew.util; +import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.nflg.product.base.core.exception.NflgBusinessException; import lombok.extern.slf4j.Slf4j; import nflg.product.common.constant.STATE; import okhttp3.*; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.http.HttpStatus; import java.io.File; @@ -23,6 +26,8 @@ public class HttpUtils { //请求类 private OkHttpClient okHttpClient; + private static final Logger LOGGER = LoggerFactory.getLogger(HttpUtils.class); + //请求头类型 private final MediaType jsonMediaType = MediaType.parse("application/json;charset=utf-8"); @@ -210,13 +215,22 @@ public class HttpUtils { * @throws IOException e */ public String doPost(String url, String json) throws IOException { - System.out.println(url); - System.out.println(json); - Response response = doPostRtnRsp(url, json); - if (response == null || response.body() == null) { - return null; + String ret = null; + String traceId = IdWorker.getIdStr(); + LOGGER.info(traceId + ",http请求,地址:" + url + ",参数:" + json); + long start = System.currentTimeMillis(); + try (Response response = doPostRtnRsp(url, json)) { + if (response == null || response.body() == null) { + return null; + } + ret = response.body().string(); + } catch (Exception ex) { + LOGGER.error(traceId + ",http请求,出错", ex); + } finally { + long end = System.currentTimeMillis(); + LOGGER.info(traceId + ",http请求,耗时:" + (end - start) + "毫秒,返回:" + ret); } - return response.body().string(); + return ret; } /** From 0a2b65f0d1a6e4fd31edd534c5dd610c49aa7251 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Thu, 28 Mar 2024 13:33:33 +0800 Subject: [PATCH 5/6] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8Droot=5Fis=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/nflg/product/bomnew/api/user/OriginalBomApi.java | 1 + .../bomnew/mapper/master/BomNewOriginalParentMapper.java | 2 +- .../product/bomnew/service/BomNewOriginalParentService.java | 2 +- .../src/main/resources/mapper/master/BomNewEbomParentMapper.xml | 2 +- .../main/resources/mapper/master/BomNewOriginalParentMapper.xml | 2 +- 5 files changed, 5 insertions(+), 4 deletions(-) diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/OriginalBomApi.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/OriginalBomApi.java index 458a3ab2..35887dcf 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/OriginalBomApi.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/OriginalBomApi.java @@ -167,6 +167,7 @@ public class OriginalBomApi extends BaseApi { //更新-原始BOM跟节点 CompletableFuture.runAsync(() -> { + originalParentService.getBaseMapper().updateRootState_1(OriginalStatusEnum.OVER_CONVERT.getValue()); originalParentService.getBaseMapper().updateRootState_2(OriginalStatusEnum.OVER_CONVERT.getValue()); originalParentService.getBaseMapper().updateRootState_3(OriginalStatusEnum.OVER_CONVERT.getValue()); }); diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/mapper/master/BomNewOriginalParentMapper.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/mapper/master/BomNewOriginalParentMapper.java index 4bcdc20c..c9bd1591 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/mapper/master/BomNewOriginalParentMapper.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/mapper/master/BomNewOriginalParentMapper.java @@ -38,7 +38,7 @@ public interface BomNewOriginalParentMapper extends BaseMapper update t_bom_new_ebom_parent set root_is=0, user_root_is=0 - where last_version_is = 1; + where last_version_is = 1 AND `status` < 4; update t_bom_new_ebom_parent a left join ( diff --git a/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewOriginalParentMapper.xml b/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewOriginalParentMapper.xml index 986de007..4f560eb6 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewOriginalParentMapper.xml +++ b/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewOriginalParentMapper.xml @@ -146,7 +146,7 @@ update t_bom_new_original_parent set root_is=0, user_root_is=0 - where last_version_is = 1 + where last_version_is = 1 and `status`= #{status} From 756ce302371566b7e1f5e4c3abf2041e86d1161c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Thu, 28 Mar 2024 13:34:48 +0800 Subject: [PATCH 6/6] =?UTF-8?q?fix:=20=E6=B7=BB=E5=8A=A0=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bomnew/service/domain/EBom/VirtualPackageBase.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/VirtualPackageBase.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/VirtualPackageBase.java index 5b1e7c05..2e56294e 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/VirtualPackageBase.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/VirtualPackageBase.java @@ -126,7 +126,11 @@ public abstract class VirtualPackageBase { protected BomNewEbomParentEntity buildParentVirtualPackage(Long rowId,VirtualPackageTypeEnum virtualPackageTypeEnum) throws IOException { AddVirtrualMaterialDTO addM = vMNos.get(StrUtil.join("",rowId,virtualPackageTypeEnum.getConMaterialName())); - BomNewEbomParentEntity oldParent= SpringUtil.getBean(BomNewEbomParentService.class).lambdaQuery().eq(BomNewEbomParentEntity::getMaterialNo, addM.getMaterialNo()).eq(BomNewEbomParentEntity::getLastVersionIs,1).one(); + BomNewEbomParentEntity oldParent= SpringUtil.getBean(BomNewEbomParentService.class).lambdaQuery() + .eq(BomNewEbomParentEntity::getMaterialNo, addM.getMaterialNo()) + .eq(BomNewEbomParentEntity::getLastVersionIs,1) + .ne(BomNewEbomParentEntity::getStatus,4) + .one(); if(Objects.nonNull(oldParent)){ oldParent.setLastVersionIs(0);