Browse Source

20241112

java8
qiezi 2 years ago
parent
commit
64cfac83b7
  1. 12
      src/main/java/com/xujie/sys/modules/quote/service/impl/QuoteDetailBomServiceImpl.java
  2. 4
      src/main/resources/mapper/quote/QuoteDetailBomTreeMapper.xml

12
src/main/java/com/xujie/sys/modules/quote/service/impl/QuoteDetailBomServiceImpl.java

@ -75,7 +75,9 @@ public class QuoteDetailBomServiceImpl extends ServiceImpl<QuoteDetailBomMapper,
return BigDecimal.ZERO; return BigDecimal.ZERO;
} }
BigDecimal componentUnitScrap = componentScrap.divide(qty, 4, RoundingMode.HALF_UP); BigDecimal componentUnitScrap = componentScrap.divide(qty, 4, RoundingMode.HALF_UP);
BigDecimal needQty = qtyPerAssembly.divide(BigDecimal.ONE.subtract(shrinkageFactor.divide(BigDecimal.valueOf(100),4, RoundingMode.HALF_UP)),4, RoundingMode.HALF_UP)
BigDecimal needQty =
qtyPerAssembly
// .divide(BigDecimal.ONE.subtract(shrinkageFactor.divide(BigDecimal.valueOf(100), 4, RoundingMode.HALF_UP)), 4, RoundingMode.HALF_UP)
.add(componentUnitScrap); .add(componentUnitScrap);
return needQty.multiply(unitPrice).setScale(4, RoundingMode.HALF_UP); return needQty.multiply(unitPrice).setScale(4, RoundingMode.HALF_UP);
@ -99,7 +101,9 @@ public class QuoteDetailBomServiceImpl extends ServiceImpl<QuoteDetailBomMapper,
return BigDecimal.ZERO; return BigDecimal.ZERO;
} }
BigDecimal componentUnitScrap = componentScrap.divide(qty, 4, RoundingMode.HALF_UP); BigDecimal componentUnitScrap = componentScrap.divide(qty, 4, RoundingMode.HALF_UP);
BigDecimal needQty = qtyPerAssembly.divide(BigDecimal.ONE.subtract(shrinkageFactor.divide(BigDecimal.valueOf(100),4, RoundingMode.HALF_UP)),4, RoundingMode.HALF_UP)
BigDecimal needQty =
qtyPerAssembly
// .divide(BigDecimal.ONE.subtract(shrinkageFactor.divide(BigDecimal.valueOf(100), 4, RoundingMode.HALF_UP)), 4, RoundingMode.HALF_UP)
.add(componentUnitScrap); .add(componentUnitScrap);
return needQty.multiply(actualPrice).setScale(4, RoundingMode.HALF_UP); return needQty.multiply(actualPrice).setScale(4, RoundingMode.HALF_UP);
@ -123,7 +127,9 @@ public class QuoteDetailBomServiceImpl extends ServiceImpl<QuoteDetailBomMapper,
return BigDecimal.ZERO; return BigDecimal.ZERO;
} }
BigDecimal componentUnitScrap = componentScrap.divide(qty, 4, RoundingMode.HALF_UP); BigDecimal componentUnitScrap = componentScrap.divide(qty, 4, RoundingMode.HALF_UP);
BigDecimal needQty = qtyPerAssembly.divide(BigDecimal.ONE.subtract(shrinkageFactor.divide(BigDecimal.valueOf(100),4, RoundingMode.HALF_UP)),4, RoundingMode.HALF_UP)
BigDecimal needQty =
qtyPerAssembly
// .divide(BigDecimal.ONE.subtract(shrinkageFactor.divide(BigDecimal.valueOf(100), 4, RoundingMode.HALF_UP)), 4, RoundingMode.HALF_UP)
.add(componentUnitScrap); .add(componentUnitScrap);
return needQty.multiply(quotePrice).setScale(4, RoundingMode.HALF_UP); return needQty.multiply(quotePrice).setScale(4, RoundingMode.HALF_UP);
} }

4
src/main/resources/mapper/quote/QuoteDetailBomTreeMapper.xml

@ -28,7 +28,6 @@
<select id="queryPartBom" resultType="com.xujie.sys.modules.quote.entity.QuoteDetailBomTree"> <select id="queryPartBom" resultType="com.xujie.sys.modules.quote.entity.QuoteDetailBomTree">
select top 1 bd.site, select top 1 bd.site,
#{buNo} as bu_no, #{buNo} as bu_no,
bd.part_no, bd.part_no,
bd.alternative_no, bd.alternative_no,
bd.bom_type, bd.bom_type,
@ -127,7 +126,6 @@
left join part p on bom.part_no = p.part_no and bom.site = p.site left join part p on bom.part_no = p.part_no and bom.site = p.site
where bom.site = #{site} where bom.site = #{site}
and bom.part_no = #{partNo} and bom.part_no = #{partNo}
and bom.status != 'Tentative' and bom.status != 'Tentative'
<if test="bomType != null and bomType != ''"> <if test="bomType != null and bomType != ''">
and bom.bom_type = #{bomType} and bom.bom_type = #{bomType}
@ -140,7 +138,6 @@
select top 1 select top 1
rd.site, rd.site,
#{buNo} as bu_no, #{buNo} as bu_no,
rd.routing_revision, rd.routing_revision,
rd.routing_type, rd.routing_type,
rd.part_no, rd.part_no,
@ -156,7 +153,6 @@
rd.routing_type = rh.routing_type and rd.routing_type = rh.routing_type and
rd.routing_revision = rh.routing_revision rd.routing_revision = rh.routing_revision
where rd.site = #{site} where rd.site = #{site}
and rd.part_no = #{partNo} and rd.part_no = #{partNo}
<if test="engChgLevel == null"> <if test="engChgLevel == null">
and rh.phase_out_date is null and rh.phase_out_date is null

Loading…
Cancel
Save