From e52888ec01a11ad8423e30b9505fee9624e88422 Mon Sep 17 00:00:00 2001 From: username@email.com <yzy2002yzy@163.com> Date: 星期二, 24 九月 2024 09:01:08 +0800 Subject: [PATCH] 查询,批量操作优化,排版等修改 --- CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderDAL.cs | 127 ++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 127 insertions(+), 0 deletions(-) diff --git a/CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderDAL.cs b/CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderDAL.cs index a7c47f2..4f5b643 100644 --- a/CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderDAL.cs +++ b/CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderDAL.cs @@ -608,6 +608,19 @@ //return null == result || result.Count < 1 ? null : result[0]; } + + /// <summary> + /// 鏍规嵁璁㈠崟缂栧彿鑾峰彇璁㈠崟 + /// </summary> + /// <param name="orderIds">璁㈠崟缂栧彿</param> + /// <returns></returns> + public IEnumerable<EC_OrderBasic> GetOrderByIds(string orderIds) + { + //return _eC_OrderBasicDAL.SelectModelById(orderId); + IList<EC_OrderBasic> result = _dataBase.SelectModel<EC_OrderBasic>(" * ", "EC_OrderBasic ", string.Format(" Keyid in ({0})", orderIds)); + return null == result || result.Count < 1 ? null : result; + } + /// <summary> /// 鑾峰彇宸叉敮浠樿鍗曠殑鏄庣粏 /// </summary> @@ -812,6 +825,50 @@ new SqlParameter("@KaipiaoshenqingId",trueModel.KaipiaoshenqingId), }; string sql = " Update EC_OrderExtend Set KaipiaoshenqingTime=@KaipiaoshenqingTime ,Kaipiaoshenqing=@Kaipiaoshenqing ,KaipiaoshenqingCreater=@KaipiaoshenqingCreater ,KaipiaoshenqingId=@KaipiaoshenqingId Where Keyid =@keyid "; + try + { + _dataBase.ExecuteSql(sql, sqlParms.ToArray<SqlParameter>()); + } + catch (Exception ex) + { + throw ex; + } + return true; + } + + + + /// <summary> + /// 淇敼 + /// </summary> + /// <param name="model"></param> + /// <returns></returns> + public bool OldUpdateKaipiaoshenqings(EC_OrderExtend model,string ids) + { + + Model.EC_OrderExtend trueModel = model; + if (trueModel == null) + { + return false; + } + SqlParameter KaipiaoshenqingTime = null; + if (trueModel.KaipiaoshenqingTime.HasValue) + { + KaipiaoshenqingTime = new SqlParameter("@KaipiaoshenqingTime", trueModel.KaipiaoshenqingTime); + } + else + { + KaipiaoshenqingTime = new SqlParameter("@KaipiaoshenqingTime", DBNull.Value); + } + IList<SqlParameter> sqlParms = new List<SqlParameter>() + { + //new SqlParameter("@Keyid",trueModel.Keyid), + KaipiaoshenqingTime, + new SqlParameter("@Kaipiaoshenqing",trueModel.Kaipiaoshenqing), + new SqlParameter("@KaipiaoshenqingCreater",trueModel.KaipiaoshenqingCreater), + new SqlParameter("@KaipiaoshenqingId",trueModel.KaipiaoshenqingId), + }; + string sql = " Update EC_OrderExtend Set KaipiaoshenqingTime=@KaipiaoshenqingTime ,Kaipiaoshenqing=@Kaipiaoshenqing ,KaipiaoshenqingCreater=@KaipiaoshenqingCreater ,KaipiaoshenqingId=@KaipiaoshenqingId Where Keyid in ("+ ids + ") ";//@keyid try { _dataBase.ExecuteSql(sql, sqlParms.ToArray<SqlParameter>()); @@ -1369,5 +1426,75 @@ return null == result ? null : result;//杩斿洖缁撴灉 } + + + /// <summary> + /// 鑾峰彇涓氬姟缁忕悊涓氱哗 + /// </summary> + /// <returns></returns> + + public IEnumerable<OA_DeliverPlan> GetyewurenportList(Infrastructure.Query.Pagination pagination, Guid FirmId, string BusinessManagerId, string chaxuntimestart, string chaxuntimeend) + { + string selectTarget = " t.* "; + string where = " and os.[FirmId] ='" + FirmId + "'"; + + if (!string.IsNullOrEmpty(BusinessManagerId)) + { + where += " and os.Keyid='" + BusinessManagerId + "'"; + } + + 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 ,'" + chaxuntimestart + "' as chaxuntimestart ,'" + chaxuntimeend + "' as chaxuntimeend ,obhuikuan.huikuankehu,obweihuikuan.weihuikuankehu "; + 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(DAY,oc.CreateTime,'" + chaxuntimestart + "') <=0 and DATEDIFF(DAY,oc.CreateTime,'" + chaxuntimeend + "') >=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(DAY,oc.CreateTime,'" + chaxuntimestart + "') <=0 and DATEDIFF(DAY,oc.CreateTime,'" + chaxuntimeend + "') >=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(DAY,oc.[LastUpdateTime],'" + chaxuntimestart + "') <=0 and DATEDIFF(DAY,oc.[LastUpdateTime],'" + chaxuntimeend + "') >=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(DAY,ob.CreateTime,'" + chaxuntimestart + "') <=0 and DATEDIFF(DAY,ob.CreateTime,'" + chaxuntimeend + "') >=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(DAY,occ.[VisitTime],'" + chaxuntimestart + "') <=0 and DATEDIFF(DAY,occ.[VisitTime],'" + chaxuntimeend + "') >=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 += " 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(DAY,ob.CreateTime,'" + chaxuntimestart + "') <=0 and DATEDIFF(DAY,ob.CreateTime,'" + chaxuntimeend + "') >=0 "; + fromSouce += " group by oc.BusinessManagerId ) ob on os.Keyid = ob.BusinessManagerId "; + + fromSouce += " left join ( select oc.BusinessManagerId ,COUNT( distinct ob.BuyerId ) as huikuankehu "; + 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(DAY,ob.CreateTime,'" + chaxuntimestart + "') <=0 and DATEDIFF(DAY,ob.CreateTime,'" + chaxuntimeend + "') >=0 and ob.PayState = -1 "; + fromSouce += " group by oc.BusinessManagerId ) obhuikuan on os.Keyid = obhuikuan.BusinessManagerId "; + + + fromSouce += " left join ( select oc.BusinessManagerId ,COUNT( distinct ob.BuyerId ) as weihuikuankehu "; + 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(DAY,ob.CreateTime,'" + chaxuntimestart + "') <=0 and DATEDIFF(DAY,ob.CreateTime,'" + chaxuntimeend + "') >=0 and ob.PayState != -1 "; + fromSouce += " group by oc.BusinessManagerId ) obweihuikuan on os.Keyid = obweihuikuan.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 += " where ks.Kaipiaoshenqing = 3 and DATEDIFF(DAY,ob.CreateTime,'" + chaxuntimestart + "') <=0 and DATEDIFF(DAY,ob.CreateTime,'" + chaxuntimeend + "') >=0 "; + fromSouce += " group by oc.BusinessManagerId ) eob on os.Keyid = eob.BusinessManagerId "; + fromSouce += " where os.Status='鍦ㄨ亴' And IsBusinessManager='true' " + where; + + + fromSouce += " )as t "; + + var result = _dataBase.SelectModelPage<Model.OA_DeliverPlan>(pagination, selectTarget, fromSouce, " DepartmentId ASC");//鎵ц鏌ヨ + return null == result ? null : result;//杩斿洖缁撴灉 + } + + } } -- Gitblit v1.9.1