protected virtual void ExecuteQueryCommand() { if (CreateTime != null && EndCreateTime != null && CreateTime.Value.CompareTo(EndCreateTime.Value) > 0) { UIManager.ShowMessage("购买日期选择开始日期大于结束日期"); return; } //查询实体赋值 var rqp = new RequestQueryInsurancePurchaseByBussinessman { BuyEndTime = EndCreateTime, BuyStartTime = CreateTime, RequestFrom = 0, TradeNo = OutTradeNo }; if (SelectedTravelStatus.HasValue) { rqp.RecordType = SelectedTravelStatus.Value; } IsBusy = true; //执行查询购买记录 Action action = () => CommunicateManager.Invoke <IInsuranceService>(service => { #region 保险相关设置 var re = service.GetCurentInsuranceCfgInfo(true); if (re.IsOpenCurrenCarrierInsurance && re.IsOpenUnexpectedInsurance) { LeaveCount = re.LeaveCount; } #endregion var data = service.QueryInsurancePurchaseByBussinessman(rqp, CurrentPageIndex, PageSize); if (data.List == null) { return; } TotalCount = data.TotalCount; InsuranceDepositLogs = data.List; }, UIManager.ShowErr); Task.Factory.StartNew(action).ContinueWith(task => { Action setBusyAction = () => { IsBusy = false; }; DispatcherHelper.UIDispatcher.Invoke(setBusyAction); }); }
public DataPack <ResponseInsurancePurchaseByBussinessman> QueryInsurancePurchaseByBussinessman(RequestQueryInsurancePurchaseByBussinessman request, int pageIndex, int pageSize = 20) { if (request == null) { throw new CustomException(10004, "请求不可为空。"); } pageIndex = (pageIndex - 1) * pageSize; string buyerCode = request.BuyerCode; string carrierCode = request.CarrierCode; //实例化领域服务 var insuranceDomainService = ObjectFactory.GetInstance <InsuranceDomainService>(); IQueryable <InsurancePurchaseByBussinessman> result; switch (request.RequestFrom) { case 0: //买票宝 //查询 buyerCode = AuthManager.GetCurrentUser().Code; break; case 1: //卖票宝 carrierCode = AuthManager.GetCurrentUser().Code; break; case 2: //控台 break; default: throw new CustomException(10001, "非法客户端编号。"); } result = insuranceDomainService.QueryInsurancePurchaseByBussinessman( request.BuyStartTime, request.BuyEndTime, request.RecordType, request.TradeNo, request.PayNo, buyerCode, carrierCode, request.PayStatus); //排序 result = result.OrderByDescending(p => p.BuyTime); //获取总数 var total = result.Count(); //分页 result = result.Skip(pageIndex).Take(pageSize); //数据转换 var data = new DataPack <ResponseInsurancePurchaseByBussinessman> { TotalCount = total, List = AutoMapper.Mapper.Map <List <InsurancePurchaseByBussinessman>, List <ResponseInsurancePurchaseByBussinessman> >(result.ToList()) }; return(data); }