protected override GetAggSetoffForSourceByConditionListRD ProcessRequest(DTO.Base.APIRequest <GetAggSetoffForSourceListRP> pRequest) { var loggingSessionInfo = new SessionManager().CurrentUserLoginInfo; //登录状态信息 var rd = new GetAggSetoffForSourceByConditionListRD(); var parameter = pRequest.Parameters; Agg_SetoffForSourceBLL bll = new Agg_SetoffForSourceBLL(loggingSessionInfo); List <IWhereCondition> complexCondition = new List <IWhereCondition> { }; complexCondition.Add(new EqualsCondition() { FieldName = "h.CustomerID", Value = loggingSessionInfo.ClientID }); if (!string.IsNullOrEmpty(parameter.SetoffRoleId)) { complexCondition.Add(new EqualsCondition() { FieldName = "h.SetoffRole", Value = parameter.SetoffRoleId }); } if (!string.IsNullOrEmpty(parameter.unitid)) { complexCondition.Add(new EqualsCondition() { FieldName = "h.UnitId", Value = parameter.unitid }); } if (!string.IsNullOrEmpty(parameter.starttime)) { complexCondition.Add(new DirectCondition("h.DateCode>= '" + parameter.starttime + "' ")); } if (!string.IsNullOrEmpty(parameter.endtime)) { complexCondition.Add(new DirectCondition("h.DateCode<= '" + parameter.endtime + "' ")); } if (String.IsNullOrEmpty(parameter.SortName)) { parameter.SortName = "OrderAmount"; } else { parameter.SortName = "" + parameter.SortName; } if (String.IsNullOrEmpty(parameter.SortOrder)) { parameter.SortOrder = "2"; } OrderBy order = null; if (parameter.SortOrder == "1") { order = new OrderBy() { FieldName = parameter.SortName, Direction = OrderByDirections.Asc }; } else { order = new OrderBy() { FieldName = parameter.SortName, Direction = OrderByDirections.Desc }; } //排序参数 List <OrderBy> lstOrder = new List <OrderBy> { }; lstOrder.Add(order); var tempList = bll.FindAllByPage(complexCondition.ToArray(), lstOrder.ToArray(), parameter.PageSize, parameter.PageIndex); rd.TotalPageCount = tempList.PageCount; rd.TotalCount = tempList.RowCount; rd.aggsetoffforSourcelist = tempList.Entities.Select(m => new AggSetoffForSourceByConditionList() { ID = m.ID.ToString(), PushMessageCount = m.PushMessageCount.ToString(), SetoffRole = bll.GetSetoffRoleNameBySetoffRoleId(Convert.ToInt32(m.SetoffRole.ToString())), ShareCount = m.ShareCount.ToString(), UnitName = m.UnitName, UserName = m.UserName, SetoffCount = m.SetoffCount.ToString(), OrderAmount = m.OrderAmount.ToString() }).ToList(); return(rd); }