public QueryResult ExportProductShiftDetail(ProductShiftDetailReportQueryFilter filter) { int totalCount = 0; ProductShiftDetail needManualItem = null; ProductShiftDetailAmtInfo outAmt = null, inAmt = null; var list = ObjectFactory <IProductShiftDetailQueryDA> .Instance.Query(filter, out totalCount, ref outAmt, ref inAmt, ref needManualItem); DataTable dt = new DataTable(); var propertys = typeof(ProductShiftDetail).GetProperties(); foreach (var property in propertys) { dt.Columns.Add(property.Name); } foreach (var data in list) { var newRow = dt.NewRow(); foreach (var property in propertys) { newRow[property.Name] = property.GetValue(data, null); } dt.Rows.Add(newRow); } return(new QueryResult() { TotalCount = totalCount, Data = dt }); }
public List <ProductShiftDetail> Query(ProductShiftDetailReportQueryFilter filter, out int totalCount , ref ProductShiftDetailAmtInfo outAmt, ref ProductShiftDetailAmtInfo inAmt , ref ProductShiftDetail needManualItem) { totalCount = 0; List <ProductShiftDetail> result = null; if (filter.IsCheckCompany || filter.IsCheckDetail) { if (filter.IsCheckDetail) { result = QueryProductShiftDetailCompanyInfos(filter, out totalCount); if (totalCount > 0) { outAmt = QueryCompanyAmtCountInfo(filter)[0]; } } else { List <ProductShiftDetailAmtInfo> listAmtInfo = null; ProductShiftDetail productAdjest = null; result = QueryCompany(filter, ref listAmtInfo, ref productAdjest, out totalCount); if (result.Count > 0 || (listAmtInfo != null && listAmtInfo.Count > 0)) { outAmt = listAmtInfo.Find(item => item.CountType.Value == 1); inAmt = listAmtInfo.Find(item => item.CountType.Value == -1); if (result.Count > 0) { var alertItem = result.Find(x => { return(x.NeedManual == true); }); if (alertItem != null || productAdjest != null) { if (alertItem != null) { needManualItem = alertItem; } else { needManualItem = productAdjest; } } } } } } else { result = QueryProductShiftDetail(filter, out totalCount); } return(result); }
public ProductShiftDetailResp QueryProductShiftDetail(ProductShiftDetailReportQueryFilter filter) { int totalCount = 0; ProductShiftDetail needManualItem = null; ProductShiftDetailAmtInfo outAmt = null, inAmt = null; var list = ObjectFactory <IProductShiftDetailQueryDA> .Instance.Query(filter, out totalCount, ref outAmt, ref inAmt, ref needManualItem); return(new ProductShiftDetailResp() { Data = list, TotalCount = totalCount, OutAmt = outAmt, InAmt = inAmt, NeedManualItem = needManualItem }); }