From d9666ecd3599c458ddd714dafe96f28bfba93cac Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期二, 04 十一月 2025 08:45:40 +0800
Subject: [PATCH] 绩效查询 未完结的客户数量有问题,查找问题
---
CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderDAL.cs | 32 +++++++++++++++++++++-----------
1 files changed, 21 insertions(+), 11 deletions(-)
diff --git a/CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderDAL.cs b/CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderDAL.cs
index 7399928..7ddd3d8 100644
--- a/CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderDAL.cs
+++ b/CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderDAL.cs
@@ -1734,26 +1734,26 @@
string fromSouce = "( ";
- fromSouce += " select os.DepartmentId,os.[Name] as BusinessManager ,os.[Keyid] as BusinessManagerId, os.FirmId,gendan.gendanshuliang,xinzeng.xinzengshuliang,wanjie.wanjieshuliang,xiadan.xiadanshuliang,ob.shuliang,ob.SumPrice,ob.PayedMoney,eob.kaipiaojine,huifang.huifangshuliang ,'"+ chaxuntime + "' as chaxuntime ";
+ fromSouce += " select os.DepartmentId,os.[Name] as BusinessManager ,os.[Keyid] as BusinessManagerId, os.FirmId,gendan.gendanshuliang,xinzeng.xinzengshuliang,wanjie.wanjieshuliang,xiadan.xiadanshuliang,ob.shuliang,ob.SumPrice,ob.PayedMoney,eob.kaipiaojine,huifang.huifangshuliang ,'"+ chaxuntime + "' as chaxuntime,ob.OrAllUnPayedMoney ";
fromSouce += " from [OA_Staff] os ";
fromSouce += " left join ( select COUNT(*) gendanshuliang ,oc.BusinessManagerId from OA_CorporateClients oc where ( oc.Shifouwanjie is null or oc.Shifouwanjie=2 ) and DATEDIFF(MONTH,oc.CreateTime,'" + chaxuntime + "') >=0 group by oc.BusinessManagerId ) gendan on gendan.BusinessManagerId = os.Keyid ";
fromSouce += " left join ( select COUNT(*) xinzengshuliang ,oc.BusinessManagerId from OA_CorporateClients oc where DATEDIFF(MONTH,oc.CreateTime,'"+ chaxuntime + "') =0 group by oc.BusinessManagerId ) xinzeng on xinzeng.BusinessManagerId = os.Keyid ";
fromSouce += " left join ( select COUNT(*) wanjieshuliang ,oc.BusinessManagerId from OA_CorporateClients oc where oc.Shifouwanjie=1 and DATEDIFF(MONTH,oc.[LastUpdateTime],'" + chaxuntime + "') =0 group by oc.BusinessManagerId ) wanjie on wanjie.BusinessManagerId = os.Keyid ";
fromSouce += " left join ( select COUNT( distinct oc.Keyid) xiadanshuliang ,oc.BusinessManagerId from OA_CorporateClients oc Inner Join EC_OrderBasic ob On oc.Keyid=ob.[BuyerId] where DATEDIFF(MONTH,ob.CreateTime,'" + chaxuntime + "') =0 group by oc.BusinessManagerId ) xiadan on xiadan.BusinessManagerId = os.Keyid ";
fromSouce += " left join ( select COUNT(*) huifangshuliang,occ.Creater as BusinessManagerId from OA_CorporateClientsVisit occ where DATEDIFF(MONTH,occ.[VisitTime],'" + chaxuntime + "') =0 group by occ.Creater ) huifang on huifang.BusinessManagerId = os.MemberId ";
- fromSouce += " left join ( select oc.BusinessManagerId,sum(ob.SumPrice) SumPrice,sum(ts.PayedMoney) PayedMoney ,COUNT(*) as shuliang ";
+ fromSouce += " left join ( select oc.BusinessManagerId,sum(ob.SumPrice) SumPrice,sum(ts.PayedMoney) PayedMoney ,COUNT(*) as shuliang ,SUM( Case When ( (ob.SumPrice-ts.PayedMoney) <=0 or ob.PayState =-1) then 0 else (ob.SumPrice-ts.PayedMoney) end) OrAllUnPayedMoney ";
fromSouce += " from EC_OrderBasic ob ";
fromSouce += " Inner Join EC_OrderExtend as oe On(ob.Keyid=oe.Keyid) ";
fromSouce += " Inner Join Pay_TradingSingle as ts On(ob.Keyid = ts.OrderId) ";
fromSouce += " Inner Join OA_CorporateClients as oc On(ob.BuyerId = oc.Keyid) ";
- fromSouce += " left join EC_AwbInfo ea on ob.Keyid = ea.Keyid where DATEDIFF(MONTH,ob.CreateTime,'" + chaxuntime + "') =0 ";
+ fromSouce += " left join EC_AwbInfo ea on ob.Keyid = ea.Keyid where DATEDIFF(MONTH,ob.CreateTime,'" + chaxuntime + "') =0 and ob.OrderState !=0 and ob.OrderState !=-2 and ob.[SumPrice] >0 ";
fromSouce += " group by oc.BusinessManagerId ) ob on os.Keyid = ob.BusinessManagerId ";
fromSouce += " left join ( select oc.BusinessManagerId,sum(ob.SumPrice) kaipiaojine ";
fromSouce += " from EC_OrderBasic ob ";
fromSouce += " Inner Join EC_OrderExtend as oe On(ob.Keyid=oe.Keyid) ";
fromSouce += " Inner Join OA_CorporateClients as oc On(ob.BuyerId = oc.Keyid) ";
fromSouce += " left join EC_AwbInfo ea on ob.Keyid = ea.Keyid ";
- fromSouce += " left join OA_Kaipiaoshenqing ks on ks.Keyid = oe.KaipiaoshenqingId ";
+ fromSouce += " left join OA_Kaipiaoshenqing ks on ks.Keyid = oe.KaipiaoshenqingId and ob.OrderState !=0 and ob.OrderState !=-2 ";
fromSouce += " where ks.Kaipiaoshenqing = 3 and DATEDIFF(MONTH,ob.CreateTime,'" + chaxuntime + "') =0 ";
fromSouce += " group by oc.BusinessManagerId ) eob on os.Keyid = eob.BusinessManagerId ";
fromSouce += " where os.Status='鍦ㄨ亴' And IsBusinessManager='true' " + where;
@@ -1770,27 +1770,28 @@
from.Append(" ( ");
from.Append(" select ob.* from OA_Staff os inner join [OA_CorporateClients] oc on oc.BusinessManagerId = os.Keyid and os.Keyid="+ oA_DeliverPlan.BusinessManagerId + " and oc.Paytime =1 ");
from.Append(" inner join EC_OrderBasic ob on ob.BuyerId =oc.Keyid and ob.OrderState !=0 and ob.OrderState !=-2 and DATEDIFF(MONTH,ob.CreateTime,'" + chaxuntime + "')=0 and DATEDIFF(MONTH,ob.CreateTime,'"+ datetimenow + "') > 0 ");
- from.Append(" inner join EC_OrderExtend oe on ob.Keyid=oe.Keyid and oe.KaipiaoshenqingId is null ");
+ from.Append(" inner join EC_OrderExtend oe on ob.Keyid=oe.Keyid and ob.PayState !=-1 and ob.[SellerId] = '" + FirmId + "' and ob.[SumPrice] >0 "
+ ); //oe.KaipiaoshenqingId is null
from.Append(" UNION ");
from.Append(" select ob.* from OA_Staff os inner join [OA_CorporateClients] oc on oc.BusinessManagerId = os.Keyid and os.Keyid="+ oA_DeliverPlan.BusinessManagerId + " and oc.Paytime =2 ");
from.Append(" inner join EC_OrderBasic ob on ob.BuyerId =oc.Keyid and ob.OrderState !=0 and ob.OrderState !=-2 and DATEDIFF(MONTH,ob.CreateTime,'" + chaxuntime + "')=0 and DATENAME(year, ob.CreateTime) +'绗�'+DATENAME(quarter, ob.CreateTime) <DATENAME(year, '"+ datetimenow + "') +'绗�'+DATENAME(quarter, '"+ datetimenow + "') ");
- from.Append(" inner join EC_OrderExtend oe on ob.Keyid=oe.Keyid and oe.KaipiaoshenqingId is null ");
+ from.Append(" inner join EC_OrderExtend oe on ob.Keyid=oe.Keyid and ob.PayState !=-1 and ob.[SellerId] = '" + FirmId + "' and ob.[SumPrice] >0 ");
from.Append(" UNION ");
from.Append(" select ob.* from OA_Staff os inner join [OA_CorporateClients] oc on oc.BusinessManagerId = os.Keyid and os.Keyid="+ oA_DeliverPlan.BusinessManagerId + " and oc.Paytime =3 ");
from.Append(" inner join EC_OrderBasic ob on ob.BuyerId =oc.Keyid and ob.OrderState !=0 and ob.OrderState !=-2 and DATEDIFF(MONTH,ob.CreateTime,'" + chaxuntime + "')=0 and DATENAME(year, ob.CreateTime) +'绗�'+CONVERT(varchar,(month(ob.CreateTime)+5)/6)+'鍗婂勾'<DATENAME(year,'"+ datetimenow + "') +'绗�'+CONVERT(varchar,(month('"+ datetimenow + "')+5)/6)+'鍗婂勾' ");
- from.Append(" inner join EC_OrderExtend oe on ob.Keyid=oe.Keyid and oe.KaipiaoshenqingId is null ");
+ from.Append(" inner join EC_OrderExtend oe on ob.Keyid=oe.Keyid and ob.PayState !=-1 and ob.[SellerId] = '" + FirmId + "' and ob.[SumPrice] >0 ");
from.Append(" UNION ");
from.Append(" select ob.* from OA_Staff os inner join [OA_CorporateClients] oc on oc.BusinessManagerId = os.Keyid and os.Keyid="+ oA_DeliverPlan.BusinessManagerId + " and oc.Paytime =4 ");
from.Append(" inner join EC_OrderBasic ob on ob.BuyerId =oc.Keyid and ob.OrderState !=0 and ob.OrderState !=-2 and DATEDIFF(MONTH,ob.CreateTime,'" + chaxuntime + "')=0 and DATENAME(year, ob.CreateTime)+'骞�' <DATENAME(year, '"+ datetimenow + "')+'骞�' ");
- from.Append(" inner join EC_OrderExtend oe on ob.Keyid=oe.Keyid and oe.KaipiaoshenqingId is null ");
+ from.Append(" inner join EC_OrderExtend oe on ob.Keyid=oe.Keyid and ob.PayState !=-1 and ob.[SellerId] = '" + FirmId + "' and ob.[SumPrice] >0 ");
from.Append(" UNION ");
from.Append(" select ob.* from OA_Staff os inner join [OA_CorporateClients] oc on oc.BusinessManagerId = os.Keyid and os.Keyid="+ oA_DeliverPlan.BusinessManagerId + " and oc.Paytime =6 and oc.Shifouwanjie=1 ");
from.Append(" inner join EC_OrderBasic ob on ob.BuyerId =oc.Keyid and ob.OrderState !=0 and ob.OrderState !=-2 and DATEDIFF(MONTH,ob.CreateTime,'" + chaxuntime + "')=0 ");
- from.Append(" inner join EC_OrderExtend oe on ob.Keyid=oe.Keyid and oe.KaipiaoshenqingId is null ");
+ from.Append(" inner join EC_OrderExtend oe on ob.Keyid=oe.Keyid and ob.PayState !=-1 and ob.[SellerId] = '" + FirmId + "' and ob.[SumPrice] >0 ");
from.Append(" UNION ");
from.Append(" select ob.* from OA_Staff os inner join [OA_CorporateClients] oc on oc.BusinessManagerId = os.Keyid and os.Keyid="+ oA_DeliverPlan.BusinessManagerId + " and oc.Paytime =7 ");
from.Append(" inner join EC_OrderBasic ob on ob.BuyerId =oc.Keyid and ob.OrderState !=0 and ob.OrderState !=-2 and DATEDIFF(MONTH,ob.CreateTime,'" + chaxuntime + "')=0 and DATEDIFF(day,ob.CreateTime,GETDATE()) > oc.Paydays ");
- from.Append(" inner join EC_OrderExtend oe on ob.Keyid=oe.Keyid and oe.KaipiaoshenqingId is null ");
+ from.Append(" inner join EC_OrderExtend oe on ob.Keyid=oe.Keyid and ob.PayState !=-1 and ob.[SellerId] = '" + FirmId + "' and ob.[SumPrice] >0 ");
from.Append(" UNION ");
from.Append(" select ob.* from OA_Staff os inner join [OA_CorporateClients] oc on oc.BusinessManagerId = os.Keyid and os.Keyid="+ oA_DeliverPlan.BusinessManagerId + " and oc.Paytime =5 ");
from.Append(" inner join EC_OrderBasic ob on ob.BuyerId =oc.Keyid and ob.OrderState !=0 and ob.OrderState !=-2 and DATEDIFF(MONTH,ob.CreateTime,'" + chaxuntime + "')=0 and ");
@@ -1800,7 +1801,7 @@
from.Append(" case when DATEDIFF(day,'"+ datetimenow + "',DATENAME(year, '"+ datetimenow + "')+'-03-01')>0 then CONVERT(varchar,YEAR('"+ datetimenow + "')-1)+'鑷�'+CONVERT(varchar,YEAR('"+ datetimenow + "'))+ '1瀛︽湡' ");
from.Append(" when DATEDIFF(day,'"+ datetimenow + "',DATENAME(year, '"+ datetimenow + "')+'-09-01')<=0 then CONVERT(varchar,YEAR('"+ datetimenow + "'))+'鑷�'+CONVERT(varchar,YEAR('"+ datetimenow + "')+1)+ '1瀛︽湡' ");
from.Append(" else CONVERT(varchar,YEAR('"+ datetimenow + "')-1)+'鑷�'+CONVERT(varchar,YEAR('"+ datetimenow + "'))+'2瀛︽湡' end ");
- from.Append(" inner join EC_OrderExtend oe on ob.Keyid=oe.Keyid and oe.KaipiaoshenqingId is null ");
+ from.Append(" inner join EC_OrderExtend oe on ob.Keyid=oe.Keyid and ob.PayState !=-1 and ob.[SellerId] = '" + FirmId + "' and ob.[SumPrice] >0 ");
from.Append(" ) as t ");
@@ -1808,6 +1809,15 @@
var eC_OrderBasics = _dataBase.SelectModel<Model.EC_OrderBasic>(" t.* ", from.ToString());
oA_DeliverPlan.fapiaoshuliang = eC_OrderBasics.Count;
+ foreach(var eC_OrderBasic in eC_OrderBasics)
+ {
+ oA_DeliverPlan.fapiaoshuliangName += eC_OrderBasic.Keyid + ",";
+ }
+ if (!string.IsNullOrEmpty(oA_DeliverPlan.fapiaoshuliangName))
+ {
+ oA_DeliverPlan.fapiaoshuliangName = oA_DeliverPlan.fapiaoshuliangName.Trim(',');
+ }
+
}
return null == result ? null : result;//杩斿洖缁撴灉
--
Gitblit v1.9.1