public QueryResult CouponUseedReportExport(CouponUsedReportFilter filter) { int totalCount; var ds = ObjectFactory <IFinancialReportDA> .Instance.CouponUseedReportQuery(filter, out totalCount); var dataTable = ds.Tables[0]; return(new QueryResult() { Data = dataTable, TotalCount = totalCount }); }
public QueryResultList CouponUseedReportQuery(CouponUsedReportFilter filter) { int totalCount; var ds = ObjectFactory <IFinancialReportDA> .Instance.CouponUseedReportQuery(filter, out totalCount); return(new QueryResultList() { new QueryResult() { Data = ds.Tables[0], TotalCount = totalCount }, new QueryResult() { Data = ds.Tables[1] } }); }
public DataSet CouponUseedReportQuery(CouponUsedReportFilter filter, out int totalCount) { PagingInfoEntity pagingInfo = CreatePagingInfo(filter.PagingInfo); CustomDataCommand dataCommand = DataCommandManager.CreateCustomDataCommandFromConfig("FinancialReport.CouponUsedReportQuery"); DataSet result = null; using (var sqlBuilder = new DynamicQuerySqlBuilder(dataCommand.CommandText, dataCommand, pagingInfo, "OrderDate DESC")) { #region Set dynamic codition for where if (filter.SODateFrom.HasValue) { sqlBuilder.ConditionConstructor.AddCondition( QueryConditionRelationType.AND, "OrderDate", DbType.DateTime, "@OrderDateFrom_query", QueryConditionOperatorType.MoreThanOrEqual, filter.SODateFrom.Value); } if (filter.SODateTo.HasValue) { sqlBuilder.ConditionConstructor.AddCondition( QueryConditionRelationType.AND, "OrderDate", DbType.DateTime, "@SODateTo_query", QueryConditionOperatorType.LessThan, filter.SODateTo.Value); } if (filter.PayTypeSysNo.HasValue) { sqlBuilder.ConditionConstructor.AddCondition( QueryConditionRelationType.AND, "PayTypeSysNo", DbType.Int32, "@PayTypeSysNo_query", QueryConditionOperatorType.Equal, filter.PayTypeSysNo.Value); } if (filter.SoSysNo.HasValue) { sqlBuilder.ConditionConstructor.AddCondition( QueryConditionRelationType.AND, "SOSysNo", DbType.Int32, "@SOSysNo_query", QueryConditionOperatorType.Equal, filter.SoSysNo.Value); } if (filter.Status.HasValue) { sqlBuilder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND, "Status", DbType.Int32, "@Status", QueryConditionOperatorType.Equal, filter.Status.Value); } if (filter.SOPayStatus.HasValue) { sqlBuilder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND, "SOPayStatus", DbType.Int32, "@SOPayStatus", QueryConditionOperatorType.Equal, filter.SOPayStatus.Value); } if (filter.MerchantSysNo.HasValue) { sqlBuilder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND, "VendorSysNo", DbType.Int32, "@MerchantSysNo", QueryConditionOperatorType.Equal, filter.MerchantSysNo.Value); } if (filter.CouponSysNo.HasValue) { sqlBuilder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND, "CouponSysNo", DbType.Int32, "@CouponSysNo", QueryConditionOperatorType.Equal, filter.CouponSysNo.Value); } #endregion EnumColumnList enumColList = new EnumColumnList(); enumColList.Add("Status", typeof(SOStatus)); enumColList.Add("NetPayStatus", typeof(ECCentral.BizEntity.Invoice.NetPayStatus)); enumColList.Add("SOIncomeStatus", typeof(ECCentral.BizEntity.Invoice.SOIncomeStatus)); enumColList.Add("SOPayStatus", typeof(ECCentral.BizEntity.Invoice.SOIncomeStatus)); dataCommand.CommandText = sqlBuilder.BuildQuerySql(); result = dataCommand.ExecuteDataSet(); totalCount = Convert.ToInt32(dataCommand.GetParameterValue("@TotalCount")); if (result.Tables[0] != null && result.Tables[0].Rows.Count > 0) { result.Tables[0].Columns.Add("SOIncomeStatusText", typeof(string)); foreach (DataRow dr in result.Tables[0].Rows) { //int ippStatus = dr["Status"] != null && dr["Status"] != DBNull.Value ? (int)dr["Status"] : int.MinValue; //if (ippStatus != int.MinValue) //{ // int isAutoRMA = dr["HaveAutoRMA"] != null && dr["HaveAutoRMA"] != DBNull.Value ? (int)dr["HaveAutoRMA"] : 0; // int isCombine = dr["IsCombine"] != null && dr["IsCombine"] != DBNull.Value ? (int)dr["IsCombine"] : 0; // int isMergeComplete = dr["IsMergeComplete"] != null && dr["IsMergeComplete"] != DBNull.Value ? (int)dr["IsMergeComplete"] : 0; // SOStatus status = Mapping_SOStatus_IPPToThis(ippStatus, isAutoRMA != 0, isCombine == 1, isMergeComplete == 1); // dr["Status"] = (int)status; //} string soIncomeStatusText = string.Empty; // Set column value for SOIncomeStatusText SOIncomeStatus?soIncomeStatus = dr.IsNull("SOPayStatus") ? new SOIncomeStatus?() : (SOIncomeStatus)dr["SOPayStatus"]; if ((int)dr["SOPayStatus"] == -1) { soIncomeStatusText = ECCentral.BizEntity.Enum.Resources.ResSOEnum.SOPayStatus__NotPay; } //NetPayStatus? netPayStatus = dr.IsNull("SOPayStatus") ? new NetPayStatus?() : (NetPayStatus)dr["SOPayStatus"]; else if ((int)dr["SOPayStatus"] == -999) { soIncomeStatusText = ECCentral.BizEntity.Enum.Resources.ResSOEnum.SOPayStatus__Paied; } else { soIncomeStatusText = EnumHelper.GetDescription(soIncomeStatus.Value); } dr["SOIncomeStatusText"] = soIncomeStatusText; } } dataCommand.ConvertEnumColumn(result.Tables[0], enumColList); } return(result); }