修改S类合同为系统合同特价

This commit is contained in:
2025-09-03 17:11:55 +08:00
parent c437b24ab8
commit f929d05e89
2 changed files with 38 additions and 34 deletions

View File

@@ -85,6 +85,7 @@ namespace Pilot.Report.Exploitation.SpecialDetails
header.AddChild("CurrentSettledUpsetJinE", new LocaleValue("当期结算价*数量(仪表)"), SqlStorageType.SqlDecimal);
header.AddChild("F_VRYF_Amount_yrr", new LocaleValue("整单结算总价"), SqlStorageType.SqlDecimal);
header.AddChild("CurrentSettledUpset1", new LocaleValue("当期结算价(仪表)"), SqlStorageType.SqlDecimal);
header.AddChild("newJieSuanJia", new LocaleValue("最新结算价(仪表)"), SqlStorageType.SqlDecimal);
header.AddChild("CurrentSettledUpset2", new LocaleValue("当期结算价(系统)"), SqlStorageType.SqlDecimal);
header.AddChild("Difference", new LocaleValue("差额(单价-结算价)"), SqlStorageType.SqlDecimal);
header.AddChild("TotalSpreadYiBiao", new LocaleValue("仪表总价差(终)"), SqlStorageType.SqlDecimal);
@@ -221,7 +222,7 @@ FROM T_SAL_ORDERENTRY B --销售订单明细表
) D --合同类型#(辅助资料表)
ON A.F_ORDERCATEGORY = D.FMASTERID
WHERE
(D.FNUMBER IN ( 'P', 'E', 'C', 'S','B' ))
(D.FNUMBER IN ( 'P', 'E', 'C','B' ))
AND (B.F_SPECIALOFFER = '1' OR B2.FTaxPrice*fin.FExchangeRate < B.F_SettlementP OR (B2.FTaxPrice*fin.FExchangeRate < B.F_SHOUGONGJIESUANJIA AND B.F_SettlementP=0 ) )
AND B.F_YKQC_CHECKBOX_QTR != '1'
AND A.FDOCUMENTSTATUS = 'C'
@@ -235,7 +236,7 @@ WHERE
SELECT FID FROM #PaiChuGongSi
) {wheresql} ; ");
//系统合同
//系统合同 20250903 郭靖要求把S类合同改成系统合同特价
sql += string.Format($@"/*dialect*/
SELECT A.FBILLNO AS 'AFBILLNO',
'XT' F_ORDERTYPE,
@@ -263,7 +264,7 @@ FROM T_SAL_ORDERENTRY B --销售订单明细表
ON A.F_ORDERCATEGORY = D.FMASTERID
--ES、W、SX、CW、D、CY
WHERE D.FNUMBER NOT IN ( 'P', 'E', 'C', 'S','CS','CW','B' )
WHERE D.FNUMBER NOT IN ( 'P', 'E', 'C','CS','CW','B' )
AND (A.F_SpecialContracts = '是' OR a.F_GROSSMARGIN1='<35%' OR a.F_VRYF_Amount_yrr > c.FBillAllAmount ) AND (a.F_CancelSpecialContracts !='是' or a.F_CancelSpecialContracts is null )
AND B.FQTY >= 0
AND A.FDOCUMENTSTATUS = 'C'
@@ -433,7 +434,7 @@ FROM #PLChongDianZhuangHeTong ;");
CASE
WHEN (AAA.TableName IN ( '#YiBiaoHeTong','#XNChongDianZhuangHeTong')) THEN
B.F_SETTLEMENTP*B.FQTY
(CASE when B.F_SETTLEMENTP=0 THEN g.F_JSJ ELSE B.F_SETTLEMENTP END) *B.FQTY
ELSE
NULL
END AS 'CurrentSettledUpsetJinE', --当期结算价*数量(仪表)
@@ -448,11 +449,13 @@ FROM #PLChongDianZhuangHeTong ;");
CASE
WHEN (AAA.TableName IN ( '#YiBiaoHeTong','#XNChongDianZhuangHeTong')) THEN
B.F_SETTLEMENTP
B.F_SETTLEMENTP
ELSE
NULL
END AS 'CurrentSettledUpset1', --当期结算价(仪表)
g.F_JSJ AS newJieSuanJia, --最新结算价
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
@@ -461,10 +464,10 @@ FROM #PLChongDianZhuangHeTong ;");
NULL
END AS 'CurrentSettledUpset2', --当期结算价(系统)
CASE
WHEN (AAA.TableName IN ( '#YiBiaoHeTong','#XNChongDianZhuangHeTong')) THEN (B2.FTAXPRICE - B.F_SETTLEMENTP)
WHEN (AAA.TableName IN ( '#YiBiaoHeTong','#XNChongDianZhuangHeTong')) THEN (B2.FTAXPRICE - (CASE when B.F_SETTLEMENTP=0 THEN g.F_JSJ ELSE B.F_SETTLEMENTP END) )
ELSE NULL END AS 'Difference', --差额(单价-底价)
CASE
WHEN (AAA.TableName IN ( '#YiBiaoHeTong','#XNChongDianZhuangHeTong')) THEN (B2.FTAXPRICE - B.F_SETTLEMENTP)*B.FQTY
WHEN (AAA.TableName IN ( '#YiBiaoHeTong','#XNChongDianZhuangHeTong')) THEN (B2.FTAXPRICE - (CASE when B.F_SETTLEMENTP=0 THEN g.F_JSJ ELSE B.F_SETTLEMENTP END) )*B.FQTY
ELSE NULL END AS 'TotalSpreadYiBiao', --仪表总价差(终)
CASE
WHEN (AAA.TableName IN ('#XiTongHeTong','#PLChongDianZhuangHeTong'))
@@ -848,6 +851,7 @@ WHERE F_K3SEQ=k3.行号 AND #tempDaBiao.ContractNumber=k3.合同号;
,[SpecialCauseType]
,[CRMSpecialCause]
,[CurrentSettledUpset1]
,newjiesuanjia
,CurrentSettledUpsetJinE
,F_VRYF_Amount_yrr
,[CurrentSettledUpset2]
@@ -885,6 +889,7 @@ WHERE F_K3SEQ=k3.行号 AND #tempDaBiao.ContractNumber=k3.合同号;
'',
'',
SUM(t1.CurrentSettledUpset1),
SUM(newjiesuanjia),
SUM(CurrentSettledUpsetJinE)
,SUM(F_VRYF_Amount_yrr),
SUM(t1.CurrentSettledUpset2),