From ecc864c184fd99d3397a7b46dd189735d56fff67 Mon Sep 17 00:00:00 2001 From: liweidong-hj Date: Fri, 22 May 2026 21:00:49 +0800 Subject: [PATCH] =?UTF-8?q?=E9=9B=B6=E4=BB=B6=E4=BF=AE=E6=94=B9=E7=89=88?= =?UTF-8?q?=E6=9C=AC=E5=8F=B7=E8=A7=84=E5=88=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pojo/entity/DsPartRelationEntity.java | 8 ++ .../entity/DsProcessMeasuringToolEntity.java | 2 +- .../mapper/DsPartRelationMapper.java | 4 + .../desk/dashboard/mapper/PartMapper.xml | 2 +- .../dashboard/mapper/PartRelationMapper.xml | 6 + .../service/IDsPartRelationService.java | 10 ++ .../impl/DsPartRelationServiceImpl.java | 6 + .../service/impl/DsTaskingServiceImpl.java | 116 +++++++++++++----- 8 files changed, 119 insertions(+), 35 deletions(-) diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsPartRelationEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsPartRelationEntity.java index dda7c39a5..1198cb33a 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsPartRelationEntity.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsPartRelationEntity.java @@ -71,4 +71,12 @@ public class DsPartRelationEntity extends BaseEntity { @Schema(description = "子件号") private String childPartCode; + /** + * 定额 + */ + @Schema(description = "定额") + private Double quota; + + + } diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessMeasuringToolEntity.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessMeasuringToolEntity.java index 06f1f67cb..6db67e33a 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessMeasuringToolEntity.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/pojo/entity/DsProcessMeasuringToolEntity.java @@ -86,7 +86,7 @@ public class DsProcessMeasuringToolEntity extends BaseEntity { * 图纸尺寸 */ @Schema(description = "图纸尺寸") - private String drawingSize; + private String ruleSize; /** * 备注 diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/mapper/DsPartRelationMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/mapper/DsPartRelationMapper.java index 3ae4c87b0..c0fe075bb 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/mapper/DsPartRelationMapper.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/mapper/DsPartRelationMapper.java @@ -33,6 +33,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.apache.ibatis.annotations.Param; +import org.springblade.scheduling.pojo.entity.PartRelationEntity; + import java.util.List; /** @@ -68,4 +70,6 @@ public interface DsPartRelationMapper extends BaseMapper { @Param("bPartVersion")String bPartVersion, @Param("zPartVersion") String zPartVersion, @Param("zPartIdList")List zPartIdList); + + PartRelationEntity selectByPartCodeAndSubCode(@Param("partCode") String parentPartCode,@Param("subCode") String subCode); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/mapper/PartMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/mapper/PartMapper.xml index 6c0d4fe0e..c8eade279 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/mapper/PartMapper.xml +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/mapper/PartMapper.xml @@ -394,7 +394,7 @@ src.PART_CODE, src.SUB_CODE, src.SUB_NAME, src.QUOTA, src.SUB_TYPE, src.PRODUCT_TYPE, src.AREA, src.CONFIG_NO, src.PLATE, src.MATERIAL, src.PLATE_CODE, src.SIN_TER_TYPE - FROM MJMES.DS_PART_SUB src where src.PART_CODE = #{partCode} + FROM TOOL_MES.DS_PART_SUB src where src.PART_CODE = #{partCode} + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/IDsPartRelationService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/IDsPartRelationService.java index 92e59235b..02bd99cbb 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/IDsPartRelationService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/IDsPartRelationService.java @@ -32,6 +32,8 @@ import org.springblade.desk.dashboard.pojo.vo.DsPartRelationVO; import org.springblade.desk.dashboard.excel.DsPartRelationExcel; import com.baomidou.mybatisplus.core.metadata.IPage; import org.springblade.core.mp.base.BaseService; +import org.springblade.scheduling.pojo.entity.PartRelationEntity; + import java.util.List; /** @@ -76,4 +78,12 @@ public interface IDsPartRelationService extends BaseService selectDsPartRelationByPartCodeAndChildPartCode (String bPartCode, String zPartCode, String bPartVersion, String zPartVersion,List zPartId); + + /** + * 根据部件和子件查询 + * @param parentPartCode + * @param subCode + * @return + */ + PartRelationEntity selectByPartCodeAndSubCode(String parentPartCode, String subCode); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/impl/DsPartRelationServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/impl/DsPartRelationServiceImpl.java index 7fef9de94..22968ecc7 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/impl/DsPartRelationServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/impl/DsPartRelationServiceImpl.java @@ -32,6 +32,7 @@ import org.springblade.desk.dashboard.pojo.vo.DsPartRelationVO; import org.springblade.desk.dashboard.excel.DsPartRelationExcel; import org.springblade.desk.dashboard.mapper.DsPartRelationMapper; import org.springblade.desk.dashboard.service.IDsPartRelationService; +import org.springblade.scheduling.pojo.entity.PartRelationEntity; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.Wrapper; @@ -78,4 +79,9 @@ public class DsPartRelationServiceImpl extends BaseServiceImpl selectAssignList(IPage page, DsTaskingVO dsTasking) { List dsTaskingVOS = baseMapper.selectDsTaskingPage(page, dsTasking); @@ -1892,7 +1898,6 @@ public class DsTaskingServiceImpl extends BaseServiceImpl 生成版本号 -> 创建新零件 -> 创建版本记录 -> 同步工艺 -> 处理子件 */ - // 同时补充修正 processPartRecursively 中对空数据的兼容逻辑 private DsPartEntity processPartRecursively(DsPartEntity oldMesPart) { String partCode = oldMesPart.getPartCode(); Long oldMesPartId = oldMesPart.getId(); @@ -1906,7 +1911,8 @@ public class DsTaskingServiceImpl extends BaseServiceImpl { item.setId(null); item.setProcessId(dsProcessEntity.getId()); + MeasurementRecordsEntity measurementRecords = measurementRecordsService.getById(item.getMtId()); + item.setToolInfo(measurementRecords.getMcName()); + item.setToolSize(measurementRecords.getNorms()); }); if(!CollectionUtils.isEmpty(processMeasuringToolList)){ boolean measuringToolSaveBatch = processMeasuringToolService.saveBatch(processMeasuringToolList); @@ -2151,52 +2169,83 @@ public class DsTaskingServiceImpl extends BaseServiceImpl newId:{}", oldId, newPart.getId()); + if (null == partEntity) { + try { + //查询老mes零件 + List dsPartEntityList = taskingMapper.getOldMesAllPart(null,null,Arrays.asList(oldMesPart.getPartCode())); + if(!CollectionUtils.isEmpty(dsPartEntityList)){ + DsPartEntity oldMesPartEntity = dsPartEntityList.get(0); + Long oldId = oldMesPartEntity.getId(); + oldMesPartEntity.setId(null); + + boolean saved = partService.save(oldMesPartEntity); + if (!saved) { + log.error("零件新增失败:{}", oldMesPartEntity.getPartCode()); + return null; + } - return newPart; - } catch (Exception e) { - log.error("创建新零件异常:{}", oldMesPart.getPartCode(), e); - return null; + DsPartEntity newPart = partService.getById(oldMesPartEntity.getId()); + log.info("零件新增成功,oldId:{} -> newId:{}", oldId, oldMesPartEntity.getId()); + return newPart; + }else { + Long oldId = oldMesPart.getId(); + oldMesPart.setId(null); + boolean saved = partService.save(oldMesPart); + if (!saved) { + log.error("零件新增失败:{}", oldMesPart.getPartCode()); + return null; + } + DsPartEntity newPart = partService.getById(oldMesPart.getId()); + log.info("零件新增成功,oldId:{} -> newId:{}", oldId, oldMesPart.getId()); + return newPart; + } + + } catch (Exception e) { + log.error("创建新零件异常:{}", oldMesPart.getPartCode(), e); + return null; + } } + + return partEntity; } /** * 创建版本号记录 */ private boolean createPartVersion(Long partId, String partCode, String version) { - try { - DsPartVersionEntity partVersion = new DsPartVersionEntity(); - partVersion.setPartId(partId); - partVersion.setPartCode(partCode); - partVersion.setPartVersion(version); - - boolean saved = partVersionService.save(partVersion); - if (saved) { - log.info("版本号记录创建成功:{} -> 版本{}", partCode, version); - } else { - log.error("版本号记录创建失败:{} -> 版本{}", partCode, version); + // 1. 根据零件编码 + 新版本号查询是否已存在 + DsPartEntity partEntity = partService.selectDsPartByPatCodeAndVersion(partCode, version); + if(partEntity == null){ + try { + DsPartVersionEntity partVersion = new DsPartVersionEntity(); + partVersion.setPartId(partId); + partVersion.setPartCode(partCode); + partVersion.setPartVersion(version); + + boolean saved = partVersionService.save(partVersion); + if (saved) { + log.info("版本号记录创建成功:{} -> 版本{}", partCode, version); + } else { + log.error("版本号记录创建失败:{} -> 版本{}", partCode, version); + } + return saved; + } catch (Exception e) { + log.error("创建版本号记录异常:{}", partCode, e); + return false; } - return saved; - } catch (Exception e) { - log.error("创建版本号记录异常:{}", partCode, e); - return false; + }{ + log.info("版本号已存在,无需新增:{} -> 版本{}", partCode, version); + return true; } } /** * 创建零件-子件关联关系 */ - private boolean createPartRelation(Long partId, String partCode, Long childPartId, String childPartCode) { + private boolean createPartRelation(Long partId, String partCode, Long childPartId, String childPartCode,Double quota) { try { DsPartRelationEntity relation = new DsPartRelationEntity(); relation.setPartId(partId); @@ -2206,6 +2255,7 @@ public class DsTaskingServiceImpl extends BaseServiceImpl