/// <summary> /// 获取库存信息 /// </summary> /// <param name="request"></param> /// <returns></returns> public RawMaterialStockModel GetRawMaterialStockData(HomeRequest request) { //建筑钢筋 var buildingData = GetStockRecordByRebarType(1, request); //型钢 var sectionData = GetStockRecordByRebarType(2, request); var retData = new RawMaterialStockModel() { BuildingSteel = new RebarTypeRetModel(buildingData), SectionSteel = new RebarTypeRetModel(sectionData) }; return(retData); }
/// <summary> /// 获取生产计划阶段数据 /// </summary> /// <param name="request"></param> /// <returns></returns> public PlanRawMaterialStockModel GetRawMaterialStockPlanData(HomeRequest request) { #region 查询条件 var whereSupply = new Where <TbSupplyList>(); whereSupply.And(p => p.StateCode != "未供货"); #endregion var retData = new PlanRawMaterialStockModel(); //月度计划 var monthList = GetPlanDataList(request); if (!monthList.Any()) { return(retData); } var monthPlan = new RawMaterialStockModel(monthList); retData.MonthPlan = monthPlan; //批次计划 List <string> demandNumList = monthList.Select(p => p.DemandPlanCode).ToList(); var bpn = monthList.Where(p => p.BatchPlanNum != null).Select(p => p.BatchPlanNum).Distinct().ToList(); demandNumList.AddRange(bpn); var batchList = GetBatchNeedList(request, demandNumList); if (!batchList.Any()) { return(retData); } var batchPlan = new RawMaterialStockModel(batchList); retData.BatchPlan = batchPlan; //供应 var batchPlanNumList = batchList.Select(p => p.BatchPlanNum).ToList(); whereSupply.And(p => p.BatchPlanNum.In(batchPlanNumList)); var supplyList = Db.Context.From <TbSupplyList>().Select( TbSupplyList._.SteelsTypeCode.As("RebarType"), TbSupplyList._.HasSupplierTotal.As("TotalWeight")) .Where(whereSupply).ToList <PlanDataModel>(); var supplyData = new RawMaterialStockModel(supplyList); retData.SupplyData = supplyData; retData.LabShow(); return(retData); }