Browse Source

成本发票

zengtx 1 year ago
parent
commit
59701e6c0b

+ 10 - 8
jeecg-boot-module-system/src/main/java/org/jeecg/modules/cost/mapper/xml/SyCostAllocationFabricMapper.xml

@@ -60,8 +60,8 @@ where trim(cSOCode) like CONCAT(#{code},'%') and cSOCode not like '%样%'
 		(
 		select i.cInvCode,max(i.cInvName) as cInvName,sum(rs.iQuantity) as purchaseQuantity,max(rs.cBatch) as cBatch from UFDATA_101_2021.dbo.rdrecords01 rs
 		join UFDATA_101_2021.dbo.Inventory i on rs.cInvCode=i.cInvCode
-		where iordercode in (
-		select distinct od.csocode
+		where cPOID in (
+		select distinct om.cPOID
 		from UFDATA_101_2021.dbo.PO_POmain om
 		join UFDATA_101_2021.dbo.PO_PODetails od on om.poid=od.poid
 		join UFDATA_101_2021.dbo.Inventory omi on omi.cInvCode=od.cInvCode
@@ -74,8 +74,8 @@ where trim(cSOCode) like CONCAT(#{code},'%') and cSOCode not like '%样%'
 		(
 		select i.cInvCode,max(i.cInvName) as cInvName,sum(rs.iQuantity) as jian,max(rs.cBatch) as cBatch from UFDATA_101_2021.dbo.rdrecords11 rs
 		join UFDATA_101_2021.dbo.Inventory i on rs.cInvCode=i.cInvCode
-		where iordercode in (
-		select distinct od.csocode
+		where comcode in (
+		select distinct om.ccode
 		from UFDATA_101_2021.dbo.om_momain om
 		join UFDATA_101_2021.dbo.OM_MODetails od on om.moid=od.moid
 		join UFDATA_101_2021.dbo.Inventory omi on omi.cInvCode=od.cInvCode
@@ -126,8 +126,8 @@ where trim(cSOCode) like CONCAT(#{code},'%') and cSOCode not like '%样%'
 		(
 		select i.cInvCode as cInvCode,max(i.cInvName) as cInvName,sum(rs.iQuantity) as purchaseQuantity,max(rs.cBatch) as cBatch from UFDATA_103_2021.dbo.rdrecords01 rs
 		join UFDATA_103_2021.dbo.Inventory i on rs.cInvCode=i.cInvCode
-		where iordercode in (
-		select distinct od.csocode
+		where cPOID in (
+		select distinct om.cPOID
 		from UFDATA_103_2021.dbo.PO_POmain om
 		join UFDATA_103_2021.dbo.PO_PODetails od on om.poid=od.poid
 		join UFDATA_103_2021.dbo.Inventory omi on omi.cInvCode=od.cInvCode
@@ -140,8 +140,8 @@ where trim(cSOCode) like CONCAT(#{code},'%') and cSOCode not like '%样%'
 		(
 		select  i.cInvCode as cInvCode,max(i.cInvName) as cInvName,sum(rs.iQuantity) as jian,max(rs.cBatch) as cBatch from UFDATA_103_2021.dbo.rdrecords11 rs
 		join UFDATA_103_2021.dbo.Inventory i on rs.cInvCode=i.cInvCode
-		where iordercode in (
-		select distinct od.csocode
+		where comcode in (
+		select distinct om.ccode
 		from UFDATA_103_2021.dbo.om_momain om
 		join UFDATA_103_2021.dbo.OM_MODetails od on om.moid=od.moid
 		join UFDATA_103_2021.dbo.Inventory omi on omi.cInvCode=od.cInvCode
@@ -233,6 +233,8 @@ where trim(cSOCode) like CONCAT(#{code},'%') and cSOCode not like '%样%'
 		where tab2.jian-isnull(tab1.purchaseQuantity,0) > 0 and tab2.cinvName = #{goodName}
     </select>
 
+
+	<!--	面料余下数量链接方法-->
 	<select id="queryRemainingByFabric" resultType="org.jeecg.modules.cost.entity.SyRemaining">
 		select oti.cInvName as goodsName,ot.cFree1 as color,max(om.ccode) as planCode,sum(ot.iQuantity) as number
 	from UFDATA_101_2021.dbo.om_momain om

+ 30 - 39
jeecg-boot-module-system/src/main/java/org/jeecg/modules/cost/mapper/xml/SyCostAllocationIngredientMapper.xml

@@ -273,7 +273,7 @@
 		select cInvCode from UFDATA_103_2021.dbo.cost_allocation_fabric_view vif
 		where trim(vif.cCode) like CONCAT(#{code},'%')
 		)
-		GROUP BY t4.cInvCode,t4.goodsName
+		GROUP BY t4.cInvCode,t4.goodsName,t4.supper
 
 		) tab
 		left join
@@ -303,12 +303,13 @@
 		and omi.cInvCcode like '19%' and om.cCode LIKE CONCAT(#{code},'%')
 		)
 		GROUP BY i.cInvCode,i.cInvName
-		)tab2 on tab2.cInvName=tab.goodsName and tab1.cInvCode=tab.cInvCode
+		)tab2 on tab2.cInvName=tab.goodsName and tab2.cInvCode=tab.cInvCode
 	</select>
 
 
+	<!--	辅料转入数量链接方法-->
 	<select id="queryTransferByIngredient" resultType="org.jeecg.modules.cost.entity.SyTransfer">
-		select tab1.cInvName as goodsName,tab1.cCode as planCode,isnull(tab2.jian,0)-isnull(tab1.purchaseQuantity,0) as number,
+		select tab1.cInvName as goodsName,tab2.cBatch as planCode,isnull(tab2.jian,0)-isnull(tab1.purchaseQuantity,0) as number,
 				tab.cost as unitCost,(isnull(tab2.jian,0)-isnull(tab1.purchaseQuantity,0))*tab.cost as cost
 		from
 		(
@@ -349,23 +350,18 @@
 				GROUP BY oti.cInvName
 		) tab
 		join
-		(
-				select i.cInvName,sum(rs.iQuantity) as purchaseQuantity,rs.cBatch,max(om.cCode) as ccode
--- 				(
--- 						select distinct om.cCode
--- 						from UFDATA_101_2021.dbo.om_momain om
--- 						join UFDATA_101_2021.dbo.OM_MODetails od on om.moid=od.moid
--- 						join UFDATA_101_2021.dbo.Inventory omi on omi.cInvCode=od.cInvCode
--- 						WHERE om.iVerifyStateNew = 2 and (om.cCloser is null or om.cCloser='asuser')
--- 									and omi.cInvCcode like '19%' and od.csocode=rs.iordercode
--- 				) as ccode
-				from UFDATA_101_2021.dbo.rdrecords01 rs
-				join UFDATA_101_2021.dbo.Inventory i on rs.cInvCode=i.cInvCode
-				left join UFDATA_101_2021.dbo.OM_MODetails od on od.csocode=rs.iordercode
-				join UFDATA_101_2021.dbo.om_momain om on om.moid=od.moid
-				where (i.cInvCcode like '05%' or i.cInvCcode like '06%' or i.cInvCcode like '07%'
-						or i.cInvCCode = '0399' or i.cInvCCode = '0499' or i.cInvCCode = '0299')
-				GROUP BY i.cInvName,rs.cBatch,rs.iordercode
+				(
+			select i.cInvName,sum(rs.iQuantity) as purchaseQuantity,rs.cBatch,max(rs.cPOID) as ccode from UFDATA_101_2021.dbo.rdrecords01 rs
+		join UFDATA_101_2021.dbo.Inventory i on rs.cInvCode=i.cInvCode
+		where cPOID in (
+		select om.cPOID
+		from UFDATA_101_2021.dbo.PO_POmain om
+		join UFDATA_101_2021.dbo.PO_PODetails od on om.POID=od.POID
+		join UFDATA_101_2021.dbo.Inventory omi on omi.cInvCode=od.cInvCode
+		WHERE om.cVerifier is not null and (om.cCloser is null or om.cCloser='asuser')
+		and om.cPOID like CONCAT(#{code},'%')
+		)
+		GROUP BY i.cInvCode,i.cInvName,rs.cBatch
 		)tab1 on tab1.cInvName=tab.goodsName
 		 join
 		(
@@ -381,12 +377,12 @@
 				) and (i.cInvCcode like '05%' or i.cInvCcode like '06%' or i.cInvCcode like '07%'
 						or i.cInvCCode = '0399' or i.cInvCCode = '0499' or i.cInvCCode = '0299')
 				GROUP BY i.cInvName,rs.cBatch
-		)tab2 on tab2.cInvName=tab1.cInvName and tab1.cBatch=tab2.cBatch
+		)tab2 on tab2.cInvName=tab1.cInvName
 		 where isnull(tab2.jian,0)-isnull(tab1.purchaseQuantity,0)>0
 
 		 union all
 
-		 select tab1.cInvName as goodsName,tab1.cCode as planCode,isnull(tab2.jian,0)-isnull(tab1.purchaseQuantity,0) as number,
+		 select tab1.cInvName as goodsName,tab2.cBatch as planCode,isnull(tab2.jian,0)-isnull(tab1.purchaseQuantity,0) as number,
 				tab.cost as unitCost,(isnull(tab2.jian,0)-isnull(tab1.purchaseQuantity,0))*tab.cost as cost
 		from
 		(
@@ -411,22 +407,17 @@
 		) tab
 		join
 		(
-				select i.cInvName,sum(rs.iQuantity) as purchaseQuantity,rs.cBatch,max(om.cCode) as ccode
--- 				(
--- 						select distinct om.cCode
--- 						from UFDATA_103_2021.dbo.om_momain om
--- 						join UFDATA_103_2021.dbo.OM_MODetails od on om.moid=od.moid
--- 						join UFDATA_103_2021.dbo.Inventory omi on omi.cInvCode=od.cInvCode
--- 						WHERE om.iVerifyStateNew = 2 and (om.cCloser is null or om.cCloser='asuser')
--- 									and omi.cInvCcode like '19%' and od.csocode=rs.iordercode
--- 				) as ccode
-				from UFDATA_103_2021.dbo.rdrecords01 rs
-				join UFDATA_103_2021.dbo.Inventory i on rs.cInvCode=i.cInvCode
-				left join UFDATA_103_2021.dbo.OM_MODetails od on od.csocode=rs.iordercode
-				join UFDATA_103_2021.dbo.om_momain om on om.moid=od.moid
-				where (i.cInvCcode like '05%' or i.cInvCcode like '06%' or i.cInvCcode like '07%'
-						or i.cInvCCode = '0399' or i.cInvCCode = '0499' or i.cInvCCode = '0299')
-				GROUP BY i.cInvName,rs.cBatch,rs.iordercode
+			select i.cInvName,sum(rs.iQuantity) as purchaseQuantity,rs.cBatch,max(rs.cPOID) as ccode from UFDATA_103_2021.dbo.rdrecords01 rs
+		join UFDATA_103_2021.dbo.Inventory i on rs.cInvCode=i.cInvCode
+		where cPOID in (
+		select om.cPOID
+		from UFDATA_103_2021.dbo.PO_POmain om
+		join UFDATA_103_2021.dbo.PO_PODetails od on om.POID=od.POID
+		join UFDATA_103_2021.dbo.Inventory omi on omi.cInvCode=od.cInvCode
+		WHERE om.cVerifier is not null and (om.cCloser is null or om.cCloser='asuser')
+		and om.cPOID like CONCAT(#{code},'%')
+		)
+		GROUP BY i.cInvCode,i.cInvName,rs.cBatch
 		)tab1 on tab1.cInvName=tab.goodsName
 		 join
 		(
@@ -442,7 +433,7 @@
 				) and (i.cInvCcode like '05%' or i.cInvCcode like '06%' or i.cInvCcode like '07%'
 						or i.cInvCCode = '0399' or i.cInvCCode = '0499' or i.cInvCCode = '0299')
 				GROUP BY i.cInvName,rs.cBatch
-		)tab2 on tab2.cInvName=tab1.cInvName and tab1.cBatch=tab2.cBatch
+		)tab2 on tab2.cInvName=tab1.cInvName
 		 where isnull(tab2.jian,0)-isnull(tab1.purchaseQuantity,0)>0
     </select>