From 3520a82706848eb939f2fb2ecfbeb07ce8d79e3a Mon Sep 17 00:00:00 2001 From: maxiangong <298222784@qq.com> Date: Thu, 18 Jun 2026 10:09:15 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=8C=E6=AD=A5=E6=97=A7MES=E9=95=80?= =?UTF-8?q?=E5=B1=82=E5=8E=9A=E5=BA=A6=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../desk/oem/pojo/vo/StatementVO.java | 3 + .../desk/oem/mapper/OemStatementMapper.java | 27 ++++++-- .../desk/oem/mapper/OemStatementMapper.xml | 19 +++++- .../oem/service/IOemStatementService.java | 11 +++ .../service/impl/OemStatementServiceImpl.java | 67 +++++++++++++++++-- 5 files changed, 118 insertions(+), 9 deletions(-) diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/oem/pojo/vo/StatementVO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/oem/pojo/vo/StatementVO.java index 1bb143d8d..bf2418fdb 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/oem/pojo/vo/StatementVO.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/oem/pojo/vo/StatementVO.java @@ -87,4 +87,7 @@ public class StatementVO extends OemStatementEntity { @Schema(description = "计量单位") private String unitName; + @Schema(description = "镀种编号") + private String plateCode; + } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/mapper/OemStatementMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/mapper/OemStatementMapper.java index f43f0735d..29f3fb12f 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/mapper/OemStatementMapper.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/mapper/OemStatementMapper.java @@ -1,15 +1,15 @@ package org.springblade.desk.oem.mapper; -import org.springblade.desk.oem.pojo.entity.OemStatementEntity; -import org.springblade.desk.oem.pojo.excel.OemStatementExcel; -import org.springblade.desk.oem.pojo.request.StatementQuery; 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.desk.oem.pojo.entity.OemStatementEntity; +import org.springblade.desk.oem.pojo.excel.OemStatementExcel; +import org.springblade.desk.oem.pojo.request.StatementQuery; import org.springblade.desk.oem.pojo.vo.StatementVO; import java.util.List; +import java.util.Map; /** * 外协结算单 Mapper 接口 @@ -83,4 +83,23 @@ public interface OemStatementMapper extends BaseMapper { * @return */ List selectUnsettledByMjMes(StatementQuery query); + + /** + * 查询旧MES配置 + * + * @param bcTag + * @param bcName + * @return + */ + List> getBusConfigByMjMes(@Param("bcTag") String bcTag, @Param("bcName") String bcName); + + /** + * 查询旧MES镀层信息 + * + * @param plateCode + * @param pqCode + * @param special + * @return + */ + List> getThicknessByMjMes(@Param("plateCode") String plateCode, @Param("pqCode") String pqCode, @Param("special") Boolean special); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/mapper/OemStatementMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/mapper/OemStatementMapper.xml index ed93d9772..e10529f89 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/mapper/OemStatementMapper.xml +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/mapper/OemStatementMapper.xml @@ -104,6 +104,7 @@ + @@ -598,7 +599,8 @@ i.ca_name, g.STATEMENT_CATEGORY_ID, j.STATEMENT_CATEGORY, - d.CARD_NO + d.CARD_NO, + p.plate_code FROM MJMES.rb_pr_work_plan a INNER JOIN MJMES.bs_procedure_set b on a.pps_id = b.pps_id @@ -627,4 +629,19 @@ + + + + + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/service/IOemStatementService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/service/IOemStatementService.java index 74fff3a29..0b3fd03be 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/service/IOemStatementService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/service/IOemStatementService.java @@ -160,4 +160,15 @@ public interface IOemStatementService extends BaseService { * @return */ R generateSettlementByMjMes(StatementQuery mesOemStatement); + + /** + * 查询旧MES镀层厚度 + * + * @param partCode + * @param plateThickness + * @param plateCode + * @param prodIdent + * @return + */ + String getThicknessByMjMes(String partCode, String plateThickness, String plateCode, String prodIdent); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/service/impl/OemStatementServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/service/impl/OemStatementServiceImpl.java index 3d5278792..62b36b46b 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/service/impl/OemStatementServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/oem/service/impl/OemStatementServiceImpl.java @@ -4,14 +4,12 @@ import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.nacos.common.utils.CollectionUtils; import com.alibaba.nacos.shaded.com.google.common.collect.Lists; -import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; import org.springblade.core.mp.base.BaseServiceImpl; @@ -22,7 +20,6 @@ import org.springblade.desk.common.enums.MesApprovalRecordBizTypeEnum; import org.springblade.desk.common.factory.MesApprovalDetailFactory; import org.springblade.desk.common.feign.IMesApprovalRecordClient; import org.springblade.desk.common.feign.IMesNotifyMessageClient; -import org.springblade.desk.common.pojo.dto.MesApprovalRecordFeignDTO; import org.springblade.desk.common.pojo.entity.MesNotifyMessageEntity; import org.springblade.desk.common.service.IMesApprovalRecordService; import org.springblade.desk.oem.mapper.OemStatementMapper; @@ -57,6 +54,7 @@ import java.util.*; import java.util.concurrent.CompletableFuture; import java.util.concurrent.atomic.AtomicInteger; import java.util.stream.Collectors; +import java.util.stream.Stream; /** * 外协结算单 服务实现类 @@ -1550,9 +1548,10 @@ public class OemStatementServiceImpl extends BaseServiceImpl> bc = baseMapper.getBusConfigByMjMes("BC_TYPE_PROD_IDENT", "镀层质量等级标识"); + String[] identList = new String[]{"JII", "JI", "JHT", "JIIR", "JIR", "JZ","JIX"}; + if (!CollectionUtils.isEmpty(bc)) { + if(bc.get(0).get("bc_value") != null){ + String bcValue = (String) bc.get(0).get("bc_value"); + identList = bcValue.split("/"); + } + } + //镀层零件标识 + bc = baseMapper.getBusConfigByMjMes("PLATE_PART", "镀层零件标识"); + String[] partList = new String[]{"21E8-210"}; + if (!CollectionUtils.isEmpty(bc)) { + if(bc.get(0).get("bc_value") != null) { + String bcValue = (String) bc.get(0).get("bc_value"); + partList = bcValue.split("/"); + } + } + special = Stream.of(identList).anyMatch(item -> prodIdent.equals(item)); + if (special) { + special = Stream.of(partList).anyMatch(item -> partCode.contains(item)); + } + } else if ("4.1.2.6".equals(plateCode)) { + //镀层质量等级标识 + String[] identList = new String[]{"JI", "JIR", "JHT", "JZ","J","JIX"}; + //镀层零件标识 + String[] partList = new String[]{"21E8-210"}; + + special = Stream.of(identList).anyMatch(item -> prodIdent.equals(item)); + if (special) { + special = Stream.of(partList).anyMatch(item -> partCode.contains(item)); + } + } + List> thicknessList = baseMapper.getThicknessByMjMes(plateCode, prodIdent, special); + if (!CollectionUtils.isEmpty(thicknessList)) { + if(thicknessList.get(0).get("thickness") != null){ + String thickness = (String) thicknessList.get(0).get("thickness"); + return thickness; + } + } + return null; + } + }