/// <summary> /// 从ERP中获取截止到给定月份的合格供应商清册列表 /// </summary> /// <param name="endYearMonth">年份格式yyyyMM</param> /// <returns></returns> public List <SuppliersSumInfoVM> GetQualifiedSupplierList(string endYearMonth) { List <SuppliersSumInfoVM> SupplierInfoVmDatas = new List <SuppliersSumInfoVM>(); SuppliersSumInfoVM modelVm = null; string startYearMonth = (int.Parse(endYearMonth) - 100).ToString(); //获取供应商信息 var supplierInfoList = GetSupplierInformationListBy(startYearMonth, endYearMonth); if (supplierInfoList == null || supplierInfoList.Count == 0) { return(SupplierInfoVmDatas); } supplierInfoList.ForEach(supplierInfo => { if (supplierInfo.IsCooperate.ToString() == "True") { ///供应商信息加载最后二次采购信息 modelVm = GetSuppliersInfoAddrLatestTwoPurchaseInfo(supplierInfo); } if (modelVm != null && !SupplierInfoVmDatas.Contains(modelVm)) { SupplierInfoVmDatas.Add(modelVm); } }); return(SupplierInfoVmDatas.OrderBy(e => e.SupplierId).ToList()); }
/// <summary> ///通过供应商信息得到证书信息 /// </summary> /// <param name="supplierInfo"></param> /// <returns></returns> private SuppliersSumInfoVM GetSuppliersInfoAddrLatestTwoPurchaseInfo(SupplierInfoModel supplierInfo) { //从ERP中得到最新二次采购信息 //// 获取供应商证书字典 //var certificateDictionary = CertificateDictionary(supplierInfo.SupplierId); SuppliersSumInfoVM m = new SuppliersSumInfoVM(); OOMaper.Mapper <SupplierInfoModel, SuppliersSumInfoVM>(supplierInfo, m); SupplierLatestTwoPurchaseCell LatestTwoPurchaseModel = new SupplierLatestTwoPurchaseCell(); //从ERP中得到最新二次采购信息 var supplierLatestTwoPurchase = PurchaseDbManager.PurchaseDb.FindSupplierLatestTwoPurchaseBy(supplierInfo.SupplierId); if (supplierLatestTwoPurchase != null) { LatestTwoPurchaseModel.LastPurchaseDate = supplierLatestTwoPurchase[0].PurchaseDate.Trim().ToDate(); LatestTwoPurchaseModel.UpperPurchaseDate = supplierLatestTwoPurchase[1].PurchaseDate.Trim().ToDate(); LatestTwoPurchaseModel.PurchaseUser = supplierLatestTwoPurchase[0].PurchasePerson.Trim(); } OOMaper.Mapper <SupplierLatestTwoPurchaseCell, SuppliersSumInfoVM>(LatestTwoPurchaseModel, m); return(m); }