public virtual QueryResult ExportTrackingInfo(TrackingInfoQueryFilter request) { int totalCount; var dataSet = ObjectFactory <ITrackingInfoQueryDA> .Instance.QueryTrackingInfo(request, out totalCount); var dataTable = dataSet.Tables["DataResult"]; dataTable.Columns.Add("EditInfo"); foreach (DataRow row in dataTable.Rows.AsParallel()) { if (!row.IsNull("EditUser") && !string.IsNullOrWhiteSpace(row["EditUser"].ToString())) { row["EditInfo"] = string.Format("{0}\r\n{1}", row["EditUser"].ToString().Split('\\')[0], ((DateTime)row["EditDate"]).ToString(InvoiceConst.StringFormat.LongDateFormat)); } else { row["EditInfo"] = DBNull.Value; } } return(new QueryResult() { Data = dataTable , TotalCount = dataTable.Rows.Count }); }
/// <summary> /// 查询-逾期未收款订单 /// </summary> /// <param name="query"></param> /// <param name="pageSize"></param> /// <param name="pageIndex"></param> /// <param name="sortField"></param> /// <param name="callback"></param> public void QueryTrackingInfo(TrackingInfoQueryVM query, int pageSize, int pageIndex, string sortField, Action <TrackingInfoQueryResultVM> callback) { TrackingInfoQueryFilter filter = query.ConvertVM <TrackingInfoQueryVM, TrackingInfoQueryFilter>(); filter.PagingInfo = new PagingInfo() { PageIndex = pageIndex, PageSize = pageSize, SortBy = sortField }; string relativeUrl = "/InvoiceService/TrackingInfo/Query"; restClient.QueryDynamicData(relativeUrl, filter, (obj, args) => { if (args.FaultsHandle()) { return; } TrackingInfoQueryResultVM result = new TrackingInfoQueryResultVM(); if (args.Result[0] != null && args.Result[0].Rows != null) { Action <dynamic, TrackingInfoVM> manualMap = new Action <dynamic, TrackingInfoVM>(TrackingInfoMapper); result.ResultList = DynamicConverter <TrackingInfoVM> .ConvertToVMList(args.Result[0].Rows, manualMap, "LossType"); result.TotalCount = args.Result[0].TotalCount; } if (args.Result[1] != null && args.Result[1].Rows != null && !(args.Result[1].Rows is DynamicXml.EmptyList)) { result.Statistic = DynamicConverter <TrackingInfoQueryStatisticVM> .ConvertToVM(args.Result[1].Rows[0]); } callback(result); }); }
/// <summary> /// 导出跟踪单 /// </summary> /// <param name="queryVM"></param> /// <param name="columnSet"></param> public void ExportTrackingInfoExcelFile(TrackingInfoQueryVM queryVM, ColumnSet[] columnSet) { TrackingInfoQueryFilter queryFilter = queryVM.ConvertVM <TrackingInfoQueryVM, TrackingInfoQueryFilter>(); queryFilter.PagingInfo = new PagingInfo { PageSize = ECCentral.Portal.Basic.ConstValue.MaxRowCountLimit, PageIndex = 0, SortBy = "Temp.SysNo desc" }; queryFilter.CompanyCode = CPApplication.Current.CompanyCode; string relativeUrl = "/InvoiceService/TrackingInfo/Export"; restClient.ExportFile(relativeUrl, queryFilter, columnSet); }
public virtual QueryResultList QueryTrackingInfo(TrackingInfoQueryFilter request) { int totalCount; var dataSet = ObjectFactory <ITrackingInfoQueryDA> .Instance.QueryTrackingInfo(request, out totalCount); return(new QueryResultList() { new QueryResult() { Data = dataSet.Tables["DataResult"], TotalCount = totalCount }, new QueryResult() { Data = dataSet.Tables["StatisticResult"] } }); }
public DataSet QueryTrackingInfo(TrackingInfoQueryFilter filter, out int totalCount) { DataSet result = null; PagingInfoEntity pagingInfo = CreatePagingInfo(filter.PagingInfo); CustomDataCommand cmd = DataCommandManager.CreateCustomDataCommandFromConfig("QueryTrackingInfo"); using (DynamicQuerySqlBuilder builder = new DynamicQuerySqlBuilder(cmd.CommandText, cmd, pagingInfo, "Temp.SysNo desc")) { if (!string.IsNullOrEmpty(filter.OrderSysNo)) { var orderSysNoList = filter.OrderSysNo.Split('.').ToList() .ConvertAll(x => Convert.ToInt32(x.Trim())); builder.ConditionConstructor.AddInCondition <int>(QueryConditionRelationType.AND, "Temp.OrderSysNo", DbType.Int32, orderSysNoList); } var statusList = new List <string>(); //业务跟进 if (filter.HasStatusFollow) { statusList.Add("A"); } //提交报损 if (filter.HasStatusSubmit) { statusList.Add("S"); } //核销完毕 if (filter.HasStatusConfirm) { statusList.Add("C"); } //部分选择时再添加该条件 if (statusList.Count > 0 && statusList.Count < 3) { builder.ConditionConstructor.AddInCondition <string>(QueryConditionRelationType.AND, "Temp.Status", DbType.AnsiStringFixedLength, statusList); } builder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND, "Temp.OrderType", DbType.Int32, "@OrderType", QueryConditionOperatorType.Equal, filter.OrderType); builder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND, "Temp.IncomeStyle", DbType.Int32, "@IncomeStyle", QueryConditionOperatorType.Equal, filter.IncomeStyle); builder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND, "Temp.PayTypeSysNo", DbType.Int32, "@PayTypeSysNo", QueryConditionOperatorType.Equal, filter.PayTypeSysNo); builder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND, "Temp.OutDate", DbType.DateTime, "@OutFromDate", QueryConditionOperatorType.MoreThanOrEqual, filter.OutFromDate); builder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND, "Temp.OutDate", DbType.DateTime, "@OutToDate", QueryConditionOperatorType.LessThanOrEqual, filter.OutToDate); builder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND, "Temp.ShipTypeSysNo", DbType.Int32, "@ShipTypeSysNo", QueryConditionOperatorType.Equal, filter.ShipTypeSysNo); builder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND, "Temp.LossType", DbType.Int32, "@LossType", QueryConditionOperatorType.Equal, filter.LossType); builder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND, "Temp.ResponsibleUserName", DbType.String, "@ResponsibleUserName", QueryConditionOperatorType.Equal, filter.ResponsibleUserName); builder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND, "Temp.InType", DbType.Int32, "@InType", QueryConditionOperatorType.Equal, filter.InType); builder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND, "Temp.CompanyCode", DbType.AnsiStringFixedLength, "@CompanyCode", QueryConditionOperatorType.Equal, filter.CompanyCode); cmd.AddOutParameter("@OrderAmt", DbType.Double, 12); cmd.AddOutParameter("@PrepayAmt", DbType.Double, 12); cmd.AddOutParameter("@GiftCardPayAmt", DbType.Double, 12); cmd.AddOutParameter("@IncomeAmt", DbType.Double, 12); cmd.AddOutParameter("@UnpayedAmt", DbType.Double, 12); cmd.CommandText = builder.BuildQuerySql(); result = ExecuteDataCommandForTrackingInfo(cmd, out totalCount); } return(result); }