From 4dbe349f48fdeca1f72405cb9323fe13762e127b Mon Sep 17 00:00:00 2001 From: yuyubo <1870149533@qq.com> Date: Wed, 6 Aug 2025 09:31:32 +0800 Subject: [PATCH] 11 --- .../SpecialDetails/SpecialDetailsReport.cs | 65 ++++----------- 非C#代码文件/收款单核销流水存储过程.sql | 2 +- 非C#代码文件/特价明细表SQL22.sql | 80 +++++++------------ 3 files changed, 48 insertions(+), 99 deletions(-) diff --git a/Pilot.Report.Exploitation/SpecialDetails/SpecialDetailsReport.cs b/Pilot.Report.Exploitation/SpecialDetails/SpecialDetailsReport.cs index c1b17cc..7339b3a 100644 --- a/Pilot.Report.Exploitation/SpecialDetails/SpecialDetailsReport.cs +++ b/Pilot.Report.Exploitation/SpecialDetails/SpecialDetailsReport.cs @@ -204,7 +204,8 @@ FROM T_SAL_ORDERENTRY B --销售订单明细表 JOIN T_SAL_ORDER A --销售订单表 ON A.FID = B.FID LEFT JOIN T_SAL_ORDERENTRY_F B2 --销售订单明细_F表 - ON B.FENTRYID = B2.FENTRYID + ON B.FENTRYID = B2.FENTRYID + left join T_SAL_ORDERFIN fin on a.fid=fin.fid LEFT JOIN ( SELECT FNUMBER, @@ -217,7 +218,7 @@ FROM T_SAL_ORDERENTRY B --销售订单明细表 ON A.F_ORDERCATEGORY = D.FMASTERID WHERE (D.FNUMBER IN ( 'P', 'E', 'C', 'S' )) - AND (B.F_SPECIALOFFER = '1' OR B2.FALLAMOUNT < B.F_SettlementAmount) + AND (B.F_SPECIALOFFER = '1' OR B2.FTaxPrice*fin.FExchangeRate < B.F_SettlementP) AND B.F_YKQC_CHECKBOX_QTR != '1' AND A.FDOCUMENTSTATUS = 'C' AND A.FBUSINESSTYPE = 'NORMAL' @@ -431,62 +432,30 @@ FROM #PLChongDianZhuangHeTong ;"); H5.FDATAVALUE AS 'SpecialCauseType', --特价原因分类 A.FCRMSPECIALPRICINGREASON AS 'CRMSpecialCause', --CRM特价原因 CASE - WHEN (AAA.F_ORDERTYPE = 'YB' or AAA.F_ORDERTYPE = 'CDZYB') THEN + WHEN (AAA.TableName IN ( '#YiBiaoHeTong','#XNChongDianZhuangHeTong')) THEN B.F_SETTLEMENTP ELSE NULL - END AS 'CurrentSettledUpset1', --当期结算价(仪表) + END AS 'CurrentSettledUpset1', --当期结算价(仪表) - CASE - WHEN (AAA.F_ORDERTYPE = 'CDZXT') THEN - isnull(g.F_JSJ,0)* B.FQTY +isnull(( CASE WHEN F_SSRT = ' ' THEN 0 ELSE CONVERT(DECIMAL(18,10), F_SSRT) END),0)*800 - + isnull(( CASE WHEN F_SJRT = ' ' THEN 0 ELSE CONVERT(DECIMAL(18,10), F_SJRT) END),0) *800 - + isnull(( CASE WHEN F_KFYS = ' ' THEN 0 ELSE CONVERT(DECIMAL(18,10), F_SJRT) END),0) - + isnull(( CASE WHEN F_SGCB = ' ' THEN 0 ELSE CONVERT(DECIMAL(18,10), F_SJRT) END),0) - WHEN AAA.F_ORDERTYPE = 'XT' - AND ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN + CASE + WHEN (AAA.TableName IN ('#XiTongHeTong','#PLChongDianZhuangHeTong')) + AND ROW_NUMBER() OVER (PARTITION BY A.FID,AAA.TableName ORDER BY a.FID,AAA.TableName,b.FENTRYID) = 1 THEN CAST(ISNULL(A.F_VRYF_AMOUNT_YRR, 0) AS FLOAT) ELSE NULL - END AS 'CurrentSettledUpset2', --当期结算价(系统) - (B2.FTAXPRICE - B.F_SETTLEMENTP) AS 'Difference', --差额(单价-底价) - --P、C、E、S + END AS 'CurrentSettledUpset2', --当期结算价(系统) CASE - WHEN - ( - D.FNUMBER = 'P' - OR D.FNUMBER = 'C' - OR D.FNUMBER = 'E' - OR D.FNUMBER = 'S' - ) THEN - ((B2.FTAXPRICE - B.F_SETTLEMENTP) * B.FQTY) --(仪表) - --ES、W、SX、D、CY - WHEN ( - D.FNUMBER = 'ES' - OR D.FNUMBER = 'W' - OR D.FNUMBER = 'SX' - OR D.FNUMBER = 'D' - OR D.FNUMBER = 'CY' - ) - AND ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN - C.FBILLALLAMOUNT_LC - CAST(ISNULL(A.F_YKQC_TEXT_QTR, 0) AS FLOAT) - --CS、CW - WHEN ( - D.FNUMBER = 'CS' - OR D.FNUMBER = 'CW' - ) - AND A.FSALEORGID = 100303 THEN - ((B2.FTAXPRICE - B.F_SETTLEMENTP) * B.FQTY) - WHEN ( - D.FNUMBER = 'CS' - OR D.FNUMBER = 'CW' - ) - AND A.FSALEORGID != 100303 - AND ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN - C.FBILLALLAMOUNT_LC - CAST(ISNULL(A.F_YKQC_TEXT_QTR, 0) AS FLOAT) + WHEN (AAA.TableName IN ( '#YiBiaoHeTong','#XNChongDianZhuangHeTong')) THEN (B2.FTAXPRICE - B.F_SETTLEMENTP)*B.FQTY + ELSE NULL END AS 'Difference', --差额(单价-底价) + CASE + WHEN (AAA.TableName IN ('#XiTongHeTong','#PLChongDianZhuangHeTong')) + AND ROW_NUMBER() OVER (PARTITION BY A.FID,AAA.TableName ORDER BY a.FID,AAA.TableName,b.FENTRYID) = 1 THEN + C.FBillAllAmount_LC - CAST(ISNULL(A.F_VRYF_Amount_yrr, 0) AS FLOAT) + ELSE NULL - END AS 'TotalSpread', --总价差(终) + END AS 'TotalSpread', --总价差(终) C2.FNAME AS 'PaymentMethods', --付款方式 CASE WHEN A.F_ORDERTYPE = 'YB' THEN diff --git a/非C#代码文件/收款单核销流水存储过程.sql b/非C#代码文件/收款单核销流水存储过程.sql index 1744a12..102ca2f 100644 --- a/非C#代码文件/收款单核销流水存储过程.sql +++ b/非C#代码文件/收款单核销流水存储过程.sql @@ -190,7 +190,7 @@ LEFT JOIN dbo.T_AR_RECMACTHLOGENTRY b ON a.FID=b.FID WHERE b.FSRCBILLNO=@FBILLN --ON a.XiaoShouFid=b.۵ID --ORDER BY a.XiaoShouFid - UPDATE [ZZZ_HeXiaoBook] SET ZhangLing= ISNULL( ROUND( DATEDIFF(DAY,[ʱ],[ZZZ_HeXiaoBook].ShouKuanFDate) / 30.00,2) ,0 ) + UPDATE [ZZZ_HeXiaoBook] SET ZhangLing= ISNULL( ROUND( DATEDIFF(DAY,[ʱ],[ZZZ_HeXiaoBook].ShouKuanFDate) / 30.00,0) ,0 ) FROM (SELECT a.XiaoShouFid,a.XiaoShouBillNo,[XiaoShouHeTong],a.ShouKuanFDate,b.ԤƵʱ,b.ʱ FROM [ZZZ_HeXiaoBook] a LEFT JOIN (SELECT b.۵ID,MAX(b.ԤƵʱ) AS ԤƵʱ ,max (b.ʱ) AS ʱ FROM [ZRP_YingShouMingXi_yuyubo] b GROUP BY ۵ID) b ON a.XiaoShouFid=b.۵ID) b diff --git a/非C#代码文件/特价明细表SQL22.sql b/非C#代码文件/特价明细表SQL22.sql index ee1f292..6c89bc7 100644 --- a/非C#代码文件/特价明细表SQL22.sql +++ b/非C#代码文件/特价明细表SQL22.sql @@ -42,7 +42,8 @@ FROM T_SAL_ORDERENTRY B -- JOIN T_SAL_ORDER A --۶ ON A.FID = B.FID LEFT JOIN T_SAL_ORDERENTRY_F B2 --۶ϸ_F - ON B.FENTRYID = B2.FENTRYID + ON B.FENTRYID = B2.FENTRYID + left join T_SAL_ORDERFIN fin on a.fid=fin.fid LEFT JOIN ( SELECT FNUMBER, @@ -55,7 +56,7 @@ FROM T_SAL_ORDERENTRY B -- ON A.F_ORDERCATEGORY = D.FMASTERID WHERE (D.FNUMBER IN ( 'P', 'E', 'C', 'S' )) - AND (B.F_SPECIALOFFER = '1' OR B2.FALLAMOUNT < B.F_SettlementAmount) + AND (B.F_SPECIALOFFER = '1' OR B2.FTaxPrice*fin.FExchangeRate < B.F_SettlementP) AND B.F_YKQC_CHECKBOX_QTR != '1' AND A.FDOCUMENTSTATUS = 'C' AND A.FBUSINESSTYPE = 'NORMAL' @@ -254,7 +255,7 @@ FROM #PLChongDianZhuangHeTong ; -SELECT DISTINCT TableName FROM #TempTable3 +--SELECT DISTINCT TableName FROM #TempTable3 /*dialect*/ @@ -329,61 +330,34 @@ A.FBILLNO AS 'AFBILLNO', H5.FDATAVALUE AS 'SpecialCauseType', --ؼԭ A.FCRMSPECIALPRICINGREASON AS 'CRMSpecialCause', --CRMؼԭ CASE - WHEN (AAA.F_ORDERTYPE = 'YB' or AAA.F_ORDERTYPE = 'CDZYB') THEN + WHEN (AAA.TableName IN ( '#YiBiaoHeTong','#XNChongDianZhuangHeTong')) THEN B.F_SETTLEMENTP ELSE NULL END AS 'CurrentSettledUpset1', --ڽۣDZ - CASE - WHEN (AAA.F_ORDERTYPE = 'CDZXT') THEN - isnull(g.F_JSJ,0)* B.FQTY +isnull(( CASE WHEN F_SSRT = ' ' THEN 0 ELSE CONVERT(DECIMAL(18,10), F_SSRT) END),0)*800 - + isnull(( CASE WHEN F_SJRT = ' ' THEN 0 ELSE CONVERT(DECIMAL(18,10), F_SJRT) END),0) *800 - + isnull(( CASE WHEN F_KFYS = ' ' THEN 0 ELSE CONVERT(DECIMAL(18,10), F_SJRT) END),0) - + isnull(( CASE WHEN F_SGCB = ' ' THEN 0 ELSE CONVERT(DECIMAL(18,10), F_SJRT) END),0) - WHEN AAA.F_ORDERTYPE = 'XT' - AND ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN + + CASE + WHEN (AAA.TableName IN ('#XiTongHeTong','#PLChongDianZhuangHeTong')) + AND ROW_NUMBER() OVER (PARTITION BY A.FID,AAA.TableName ORDER BY a.FID,AAA.TableName,b.FENTRYID) = 1 THEN CAST(ISNULL(A.F_VRYF_AMOUNT_YRR, 0) AS FLOAT) ELSE NULL END AS 'CurrentSettledUpset2', --ڽۣϵͳ - (B2.FTAXPRICE - B.F_SETTLEMENTP) AS 'Difference', ---׼ۣ + CASE + WHEN (AAA.TableName IN ( '#YiBiaoHeTong','#XNChongDianZhuangHeTong')) THEN (B2.FTAXPRICE - B.F_SETTLEMENTP)*B.FQTY + ELSE NULL END AS 'Difference', ---׼ۣ --PCES CASE - WHEN - ( - D.FNUMBER = 'P' - OR D.FNUMBER = 'C' - OR D.FNUMBER = 'E' - OR D.FNUMBER = 'S' - ) THEN - ((B2.FTAXPRICE - B.F_SETTLEMENTP) * B.FQTY) --DZ - --ESWSXDCY - WHEN ( - D.FNUMBER = 'ES' - OR D.FNUMBER = 'W' - OR D.FNUMBER = 'SX' - OR D.FNUMBER = 'D' - OR D.FNUMBER = 'CY' - ) - AND ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN - C.FBILLALLAMOUNT_LC - CAST(ISNULL(A.F_YKQC_TEXT_QTR, 0) AS FLOAT) - --CSCW - WHEN ( - D.FNUMBER = 'CS' - OR D.FNUMBER = 'CW' - ) - AND A.FSALEORGID = 100303 THEN - ((B2.FTAXPRICE - B.F_SETTLEMENTP) * B.FQTY) - WHEN ( - D.FNUMBER = 'CS' - OR D.FNUMBER = 'CW' - ) - AND A.FSALEORGID != 100303 - AND ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN - C.FBILLALLAMOUNT_LC - CAST(ISNULL(A.F_YKQC_TEXT_QTR, 0) AS FLOAT) + WHEN (AAA.TableName IN ('#XiTongHeTong','#PLChongDianZhuangHeTong')) + AND ROW_NUMBER() OVER (PARTITION BY A.FID,AAA.TableName ORDER BY a.FID,AAA.TableName,b.FENTRYID) = 1 THEN + C.FBillAllAmount_LC - CAST(ISNULL(A.F_VRYF_Amount_yrr, 0) AS FLOAT) + ELSE NULL END AS 'TotalSpread', --ܼ۲գ + + + C2.FNAME AS 'PaymentMethods', --ʽ CASE WHEN A.F_ORDERTYPE = 'YB' THEN @@ -414,7 +388,7 @@ A.FBILLNO AS 'AFBILLNO', NULL END AS 'OrderAllAmount', --ܶ CASE - WHEN ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN + WHEN ROW_NUMBER() OVER (PARTITION BY A.FID,AAA.TableName ORDER BY a.FID,AAA.TableName,b.FENTRYID) = 1 THEN C.FBILLALLAMOUNT_LC - ISNULL(ABS(B3.FBillAllAmount_LC), 0) - ISNULL(H6.FALLAMOUNT_LC, 0) ELSE NULL @@ -683,8 +657,14 @@ A.FBILLNO AS 'AFBILLNO', ) H7 ON B.FENTRYID = H7.FSID; - SELECT * FROM #tempDaBiao aaa - WHERE AAA.ContractNumber='E202506190002' AND AAA.FSALEORGID=100302 + SELECT fid,AllAmount,TaxPrice,CurrentSettledUpset1,CurrentSettledUpset2,[Difference],TotalSpread, * FROM #tempDaBiao aaa + WHERE AAA.ContractNumber='P202507300030' + --AND AAA.FSALEORGID=100302 + --WHERE aaa.fid=208563 - --SELECT * FROM dbo.T_SAL_ORDERPLAN j WHERE j.FID=214506 ---DROP TABLE #PaiChuGongSi , #YiBiaoHeTong , #XiTongHeTong ,#TempTable3, #TempTable4 ,#tempDaBiao,#XNChongDianZhuangHeTong,#PLChongDianZhuangHeTong,#TMP55555 \ No newline at end of file + ORDER BY aaa.FID,FENTRYID + + --SELECT * FROM dbo.T_SAL_ORDERFIN j WHERE j.FID=208563 +--DROP TABLE #PaiChuGongSi , #YiBiaoHeTong , #XiTongHeTong ,#TempTable3 ,#tempDaBiao,#XNChongDianZhuangHeTong,#PLChongDianZhuangHeTong,#TMP55555 + + \ No newline at end of file