public ActionResult GetFlowDetailsPage(PageParm parm) { int totalCount = 0; TipIncomeDetailModel sumModel = new TipIncomeDetailModel(); var res = sysTipIncomeDetailLogic.GetTipIncomeDetailPage(parm, ref totalCount, ref sumModel); var result = new { code = 0, msg = "success", data = res, count = totalCount, // pageData.Count totalRow = new //合计 { AnchorIncome = sumModel.AnchorIncome.ToString(), UserIncome = sumModel.UserIncome.ToString(), PlatformIncome = sumModel.PlatformIncome.ToString(), totalamount = sumModel.totalamount.ToString(), } }; return(Content(result.ToJson())); }
/// <summary> /// 礼物返点信息 分页信息 /// </summary> /// <param name="parm"></param> /// <returns></returns> public List <TipIncomeDetailModel> GetTipIncomeDetailPage(PageParm parm, ref int totalCount, ref TipIncomeDetailModel sumModel) { var res = new List <TipIncomeDetailModel>(); try { if (parm == null) { parm = new PageParm(); } Dictionary <string, object> dic = new Dictionary <string, object>(); if (!string.IsNullOrEmpty(parm.where)) { dic = JsonConvert.DeserializeObject <Dictionary <string, object> >(parm.where); } using (var db = GetSqlSugarDB(DbConnType.QPAnchorRecordDB)) { var query = db.Queryable <SysTipIncomeDetailEntity, SysUser, SysAnchor, TipEntity, SysShopAnchorEntity>((at, bt, ct, dt, ot) => new object[] { JoinType.Left, at.UserID == bt.Id, JoinType.Left, at.AnchorID == ct.id, JoinType.Left, at.orderno == dt.orderno, JoinType.Left, ct.id == ot.AnchorID }) .Where((at, bt, ct, dt) => at.StartDate >= Convert.ToDateTime(dic["startTime"]) && at.StartDate < Convert.ToDateTime(dic["endTime"]).AddDays(1)) .WhereIF(dic.ContainsKey("AgentName") && !string.IsNullOrEmpty(dic["AgentName"].ToString()), (at, bt, ct, dt) => bt.Account.Contains(dic["AgentName"].ToString())) .WhereIF(dic.ContainsKey("AnchorName") && !string.IsNullOrEmpty(dic["AnchorName"].ToString()), (at, bt, ct, dt) => ct.anchorName.Contains(dic["AnchorName"].ToString()) || ct.nickName.Contains(dic["AnchorName"].ToString())) .WhereIF(dic.ContainsKey("Type") && Convert.ToInt32(dic["Type"].ToString()) != -1, (at, bt, ct, dt) => at.TipType == (TipTypeEnum)Convert.ToInt32(dic["Type"].ToString())) .WhereIF(dic.ContainsKey("incomeType") && Convert.ToInt32(dic["incomeType"].ToString()) != -1, (at, bt, ct, dt) => at.IncomeType == (IncomeTypeEnum)Convert.ToInt32(dic["incomeType"].ToString())) .WhereIF(dic.ContainsKey("ShopID") && Convert.ToInt32(dic["ShopID"]) != -1, (at, bt, ct, dt, ot) => ot.ShopID == Convert.ToInt32(dic["ShopID"])); sumModel = query.Clone().Select((at, bt, ct, dt) => new TipIncomeDetailModel { AnchorIncome = SqlFunc.AggregateSum(at.AnchorIncome), UserIncome = SqlFunc.AggregateSum(at.UserIncome), PlatformIncome = SqlFunc.AggregateSum(at.PlatformIncome), totalamount = SqlFunc.AggregateSum(dt.totalamount) }).WithCache(10).First(); res = query .Select((at, bt, ct, dt) => new TipIncomeDetailModel { UserName = bt.Account, AnchorName = ct.anchorName, AnchorNickName = ct.nickName, UserIncome = at.UserIncome, AnchorIncome = at.AnchorIncome, PlatformIncome = at.PlatformIncome, UserRebate = at.UserRebate, PlatformRebate = at.PlatformRebate, orderno = dt.orderno, totalamount = dt.totalamount, CreateTime = at.CreateTime, Type = at.TipType, incomeType = at.IncomeType, }).WithCache(10) .OrderBy(" at.CreateTime desc") .ToPageList(parm.page, parm.limit, ref totalCount); } } catch (Exception ex) { new LogLogic().Write(Level.Error, "礼物返点信息 分页信息", ex.Message, ex.StackTrace); } return(res); }