diff --git a/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/report/service/impl/ReportServiceImpl.java b/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/report/service/impl/ReportServiceImpl.java index c2d6b98..feb6339 100644 --- a/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/report/service/impl/ReportServiceImpl.java +++ b/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/report/service/impl/ReportServiceImpl.java @@ -525,6 +525,11 @@ public class ReportServiceImpl implements ReportService if (diff.getUpdateCount() > 0) { int update = reportProdService.batchUpdate(diff.getUpdateList()); ServiceUtil.assertion(update != diff.getUpdateCount(), "修改报表产量明细失败"); + if (update > 0) { + // 重置priceId 为 null 的数据 + List prodIds = diff.getUpdateList().stream().filter(item -> item.getPriceId() == null).map(ReportProd::getId).collect(Collectors.toList()); + reportProdService.resetPriceId(prodIds); + } result += update; } if (diff.getDelCount() > 0) { diff --git a/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/reportProd/mapper/ReportProdMapper.java b/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/reportProd/mapper/ReportProdMapper.java index 7448278..599584f 100644 --- a/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/reportProd/mapper/ReportProdMapper.java +++ b/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/reportProd/mapper/ReportProdMapper.java @@ -1,13 +1,12 @@ package com.ruoyi.yh.reportProd.mapper; -import java.util.List; - -import org.apache.ibatis.annotations.Param; - import com.ruoyi.yh.reportProd.domain.ReportProd; import com.ruoyi.yh.reportProd.domain.ReportProdQuery; import com.ruoyi.yh.reportProd.domain.ReportProdVO; import com.ruoyi.yh.reportProd.domain.dto.ReportProdNewPriceDTO; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 报表产量Mapper接口 @@ -94,4 +93,9 @@ public interface ReportProdMapper * 刷新匹配的工序 */ int refreshPriceMatch(@Param("list") List list); + + /** + * 重置单价ID + */ + int resetPriceId(@Param("ids") List ids); } diff --git a/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/reportProd/mapper/ReportProdMapper.xml b/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/reportProd/mapper/ReportProdMapper.xml index 2bceef4..fba4350 100644 --- a/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/reportProd/mapper/ReportProdMapper.xml +++ b/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/reportProd/mapper/ReportProdMapper.xml @@ -613,4 +613,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and brp.price_id is null and br.status in ('1', '4') + + + update bst_report_prod brp + set brp.price_id = null + where id in + + #{item} + + diff --git a/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/reportProd/service/ReportProdService.java b/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/reportProd/service/ReportProdService.java index 363ba59..6149e5c 100644 --- a/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/reportProd/service/ReportProdService.java +++ b/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/reportProd/service/ReportProdService.java @@ -1,12 +1,12 @@ package com.ruoyi.yh.reportProd.service; -import java.util.List; - import com.ruoyi.yh.reportProd.domain.ReportProd; import com.ruoyi.yh.reportProd.domain.ReportProdQuery; import com.ruoyi.yh.reportProd.domain.ReportProdVO; import com.ruoyi.yh.reportProd.domain.dto.ReportProdNewPriceDTO; +import java.util.List; + /** * 报表产量Service接口 * @@ -105,4 +105,9 @@ public interface ReportProdService * @return */ int refreshPriceMatch(List ids); + + /** + * 重置单价ID + */ + int resetPriceId(List ids); } diff --git a/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/reportProd/service/impl/ReportProdServiceImpl.java b/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/reportProd/service/impl/ReportProdServiceImpl.java index 973a2a6..5fe8ccd 100644 --- a/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/reportProd/service/impl/ReportProdServiceImpl.java +++ b/common-ruoyi/ruoyi-system/src/main/java/com/ruoyi/yh/reportProd/service/impl/ReportProdServiceImpl.java @@ -238,6 +238,14 @@ public class ReportProdServiceImpl implements ReportProdService return result == null ? 0 : result; } + @Override + public int resetPriceId(List ids) { + if (CollectionUtils.isEmptyElement(ids)) { + return 0; + } + return reportProdMapper.resetPriceId(ids); + } + private List selectByIds(List ids) { if (CollectionUtils.isEmptyElement(ids)) { return Collections.emptyList();