Browse Source

面料损耗更新

fenghaifu 2 years ago
parent
commit
6290ca8610

+ 3 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/report/entity/FabricCostInvoice.java

@@ -42,4 +42,7 @@ public class FabricCostInvoice {
 	//金额
 	@ApiModelProperty(value = "金额")
 	private  Double iMoney;
+	//业务类型(采购/委外)
+	@ApiModelProperty(value = "业务类型(采购/委外)")
+	private  String cBusType;
 }

+ 3 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/report/mapper/FabricLossMapper.java

@@ -88,6 +88,9 @@ public interface FabricLossMapper extends BaseMapper<FabricLoss> {
 	// 获取委外订单发票金额
 	@DS("multi-three")
 	List<FabricCostInvoice> getOmInvoiceMoneyList(@Param("code")String code);
+	// 获取委外订单运费发票金额
+	@DS("multi-three")
+	List<FabricCostInvoice> getOmInvoiceMoneyYfList(@Param("code")String code);
 	// 开票成本-成衣
 	@DS("multi-three")
 	List<FabricCostClothes> getCostClothesList(@Param("code")String code);

+ 27 - 4
jeecg-boot-module-system/src/main/java/org/jeecg/modules/report/mapper/xml/FabricLossMapper.xml

@@ -376,18 +376,20 @@
 	</select>
 	<!--获取采购入库价格列表-->
 	<select id="getPurchuseInPriceList" resultType="org.jeecg.modules.report.entity.FabricCostInvoice">
-		select distinct e.cVCName,d.cVenName ,d.cVenAbbName,c.iUnitCost ,c.cInvCode,c.cFree1 as cColor
+		select distinct '普通采购' as cBusType,e.cVCName,d.cVenName ,d.cVenAbbName,c.iUnitCost ,c.cInvCode,c.cFree1 as cColor
 		from PO_Pomain a
 		inner join PO_Podetails b on  a.poid=b.poid
 		inner join Vendor  d on a.cVenCode=d.cVenCode
 		inner join VendorClass e on d.cVCCode =e.cVCCode
 		inner join RdRecords01 c on c.iposid=b.id
+		inner join Inventory f on c.cinvcode=f.cinvcode
 		where a.cPOID like CONCAT(#{code},'%') and e.cVCName not like '成衣厂'
+			and (f.cInvCCode in ('0201','0301','0401') or f.cInvCCode like '01%')
 	</select>
 	<!--获取委外订单发票金额-->
 	<select id="getOmInvoiceMoneyList" resultType="org.jeecg.modules.report.entity.FabricCostInvoice">
 
-		select g.cVCName,f.cVenName ,f.cVenAbbName,isnull(sum(c.iSum),0) as iMoney
+		select a.cBusType,g.cVCName,f.cVenName ,f.cVenAbbName,isnull(sum(c.iSum),0) as iMoney
 			from RdRecord01 a
 			inner join RdRecords01 b on a.id=b.id
 			inner join PurBillVouchs c on c.RdsId=b.autoid
@@ -395,11 +397,32 @@
 			inner join om_momain e on d.moid = e.moid
 			inner join Vendor  f on f.cVenCode=e.cVenCode
 		inner join VendorClass g on g.cVCCode =f.cVCCode
+		inner join Inventory h on b.cinvcode=h.cinvcode
 			where a.cbustype='委外加工'
 			and e.cCode  like CONCAT(#{code},'%')
 			and g.cVCName not like '成衣厂'
-			group by g.cVCName,f.cVenName ,f.cVenAbbName
-			order by g.cVCName,f.cVenName ,f.cVenAbbName
+			and (h.cInvCCode IN ('0201','0301','0401','0299','0399','0499') OR h.cInvCCode like '01%')
+			and and b.cInvCode &lt;&gt; 'N3000002426'
+			group by a.cBusType,g.cVCName,f.cVenName ,f.cVenAbbName
+			order by a.cBusType,g.cVCName,f.cVenName ,f.cVenAbbName
+	</select>
+	<!--获取委外订单运费发票金额-->
+	<select id="getOmInvoiceMoneyYfList" resultType="org.jeecg.modules.report.entity.FabricCostInvoice">
+
+		select '运费发票' as cBusType,g.cVCName,f.cVenName ,f.cVenAbbName,isnull(sum(c.iSum),0) as iMoney
+			from RdRecord01 a
+			inner join RdRecords01 b on a.id=b.id
+			inner join PurBillVouchs c on c.RdsId=b.autoid
+			inner join OM_MODetails d on d.MODetailsID=b.iOMoDID
+			inner join om_momain e on d.moid = e.moid
+			inner join Vendor  f on f.cVenCode=e.cVenCode
+		inner join VendorClass g on g.cVCCode =f.cVCCode
+			where a.cbustype='委外加工'
+			and e.cCode  like CONCAT(#{code},'%')
+			and g.cVCName not like '成衣厂'
+			and b.cInvCode='N3000002426'
+			group by a.cBusType,g.cVCName,f.cVenName ,f.cVenAbbName
+			order by a.cBusType,g.cVCName,f.cVenName ,f.cVenAbbName
 	</select>
 	<!--开票成本-成衣-->
 	<select id="getCostClothesList" resultType="org.jeecg.modules.report.entity.FabricCostClothes">

+ 12 - 2
jeecg-boot-module-system/src/main/java/org/jeecg/modules/report/service/impl/FabricLossServiceImpl.java

@@ -383,6 +383,7 @@ public class FabricLossServiceImpl extends ServiceImpl<FabricLossMapper, FabricL
 				if (findItem.isPresent()) {
 					newItem = findItem.get();
 				}else{
+					newItem.setCBusType(fabricCostInvoice.getCBusType());
 					newItem.setIMoney(new Double(0));
 					newItem.setCVCName(fabricCostInvoice.getCVCName());
 					newItem.setCVenName(fabricCostInvoice.getCVenName());
@@ -413,6 +414,9 @@ public class FabricLossServiceImpl extends ServiceImpl<FabricLossMapper, FabricL
 			//获取委外订单发票金额
 			List<FabricCostInvoice> fabricCostInvoiceList2 = fabricLossMapper.getOmInvoiceMoneyList(code);
 			fabricCostInvoiceList.addAll(fabricCostInvoiceList2);
+			//获取委外订单运费发票金额
+			List<FabricCostInvoice> fabricCostInvoiceList3 = fabricLossMapper.getOmInvoiceMoneyYfList(code);
+			fabricCostInvoiceList.addAll(fabricCostInvoiceList3);
 			// 织、染、印排序
 			List<FabricCostInvoice> fabricCostInvoiceListOrder = new ArrayList<>();
 			List<FabricCostInvoice> fabricCostInvoiceListTmp = fabricCostInvoiceList.stream().filter(e->e.getCVCName().indexOf("织")==0).collect(Collectors.toList());
@@ -1052,8 +1056,14 @@ public class FabricLossServiceImpl extends ServiceImpl<FabricLossMapper, FabricL
 				invIdGwList.add(omOrder.getCInvCode()+omOrder.getCColor()+rkItem.getCBatch());
 			}
 		}
-		List<FabricPoOrderOut> invOutGnList = fabricLossMapper.getOmInGnOutList(invIdGnList);   //国内出库数量
-		List<FabricPoOrderOut> invOutGwList = fabricLossMapper.getOmInGwOutList(invIdGwList);   //国外出库数量
+		List<FabricPoOrderOut> invOutGnList = new ArrayList<>();
+		if (invIdGnList.size()>0){
+			fabricLossMapper.getOmInGnOutList(invIdGnList);   //国内出库数量
+		}
+		List<FabricPoOrderOut> invOutGwList = new ArrayList<>();
+		if (invIdGwList.size()>0){
+			fabricLossMapper.getOmInGwOutList(invIdGwList);   //国外出库数量
+		}
 		// 扣减出库数量
 		List<FabricOMOrder> omOrderListAll = new ArrayList<>();
 		omOrderListAll.addAll(omOrderListGn);