/// <summary> /// 获取集合 /// </summary> /// <param name="param"></param> /// <returns></returns> public List <STK_OutLineResult> GetList(STK_OutLineParam param) { this.CheckSession(); List <STK_OutLineResult> ret = new List <STK_OutLineResult>(); try { WhereClip whereClip = GetWhereClip(param); ret = this.SelectList <STK_OutLineResult>(whereClip, STK_OutLine._.CreatedTime.Asc); if (ret != null && ret.Count > 0) { Guid?[] StkOutGuids = ret.Select(a => a.StkOutGuid).Distinct().ToArray(); Guid?[] ItemCodes = ret.Select(a => a.ItemCode).Distinct().ToArray(); STK_OutBLL stkOutBLL = new STK_OutBLL(); stkOutBLL.SessionInfo = this.SessionInfo; List <STK_OutResult> outResultList = stkOutBLL.GetList(new STK_OutParam() { StkOutGuids = StkOutGuids }); STK_StockBLL stockBLL = new STK_StockBLL(); stockBLL.SessionInfo = this.SessionInfo; List <STK_StockResult> stockResultList = stockBLL.GetList(new STK_StockParam() { ItemCodes = ItemCodes }); foreach (STK_OutLineResult outLineResult in ret) { STK_OutResult outResult = outResultList.FirstOrDefault(a => a.StkOutGuid == outLineResult.StkOutGuid); if (outResult != null) { outLineResult.StkOutBillNo = outResult.BillNo; outLineResult.SourceBillNo = outResult.SourceBillNo; } STK_StockResult stockResult = stockResultList.FirstOrDefault(a => a.ItemCode == outLineResult.ItemCode); if (stockResult != null) { outLineResult.BuyerID = stockResult.BuyerID; outLineResult.BuyerName = stockResult.BuyerName; } } } } catch (WarnException exp) { throw exp; } catch (System.Exception exp) { LogInfoBLL.WriteLog(this.SessionInfo, exp); throw exp; } return(ret); }
/// <summary> /// 获取出库明细的分页信息 /// </summary> /// <param name="param"></param> /// <returns></returns> public PageList <STK_OutLineResult> GetPageList(STK_OutLineParam param) { PageList <STK_OutLineResult> ret = new PageList <STK_OutLineResult>(); try { STK_OutParam outParam = new STK_OutParam() { SourceBillNo = param.SourceBillNo, BillNo = param.StkOutBillNo, PageIndex = 1, PageSize = 5000, Status = param.Status }; STK_OutBLL outBLL = new STK_OutBLL(); outBLL.SessionInfo = this.SessionInfo; PageList <STK_OutResult> outList = outBLL.GetPageList(outParam); if (outList != null && outList.ResultList.Count > 0) { Guid?[] StkOutGuids = outList.ResultList.Select(a => (Guid?)a.StkOutGuid).Distinct().ToArray(); param.StkOutGuids = StkOutGuids; ret = this.SelectList <STK_OutLineResult>(param.PageIndex.GetValueOrDefault(1), param.PageSize.GetValueOrDefault(50), new List <Field>() { Field.All }, GetWhereClip(param), STK_OutLine._.CreatedTime.Desc); if (ret != null && ret.ResultList.Count > 0) { foreach (STK_OutLineResult outLineResult in ret.ResultList) { //获取出库单号 STK_OutResult outResult = outList.ResultList.FirstOrDefault(a => a.StkOutGuid == outLineResult.StkOutGuid); if (outResult != null) { outLineResult.StkOutBillNo = outResult.BillNo; outLineResult.SourceBillNo = outResult.SourceBillNo; } } } } } catch (WarnException exp) { throw exp; } catch (System.Exception exp) { LogInfoBLL.WriteLog(this.SessionInfo, exp); throw exp; } return(ret); }