using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using CY.BLL; using CY.BLL.Sys; using CY.Model; using CY.Infrastructure.Query; using CY.Infrastructure.Common; using CY.BLL.EC; using CY.Model.Inquiry; namespace CY.WebForm.Pages.business { //吴辉 //行政管理 public partial class DeliverWorkBookPandian : BasePage { CoreCmsPlanOrderBLL bll_CoreCmsPlanOrderBLL = null; CoreCmsPlanOrderItemBLL bll_CoreCmsPlanOrderItemBLL = null; CoreCmsPlanOrderFahuoBLL bll_coreCmsPlanOrderFahuoBLL = null; EC_OrderBasicBLL _eC_OrderBasicBLL = null; EC_OrderPrintParameterBLL _eC_OrderPrintParameterBLL = null; //初始化 public DeliverWorkBookPandian() { bll_CoreCmsPlanOrderBLL = new CoreCmsPlanOrderBLL(); bll_CoreCmsPlanOrderItemBLL = new CoreCmsPlanOrderItemBLL(); bll_coreCmsPlanOrderFahuoBLL = new CoreCmsPlanOrderFahuoBLL(); _eC_OrderBasicBLL = new EC_OrderBasicBLL(); _eC_OrderPrintParameterBLL = new EC_OrderPrintParameterBLL(); } //页面加载 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { BindList(); } } //绑定数据 private void BindList() { string orderIdStr = Request["orderId"]; this.hideOrderId.Value = orderIdStr; var eC_OrderBasic = _eC_OrderBasicBLL.SelectModelById(orderIdStr.ToInt32().Value); if (eC_OrderBasic != null) { spanBuyerName.InnerText = eC_OrderBasic.BuyerName; } //var cmsPlanOrderItems = bll_CoreCmsPlanOrderItemBLL.GetModelsByZongOrderid(orderIdStr.ToInt32().Value); var coreDeliverOrderItems = bll_CoreCmsPlanOrderItemBLL.GetDeliverModelsByZongOrderid(orderIdStr.ToInt32().Value).Where(x=>x.OrderState == 2); var coreCmsPlanOrderFahuos = bll_coreCmsPlanOrderFahuoBLL.GetModelsByOrderid(orderIdStr.ToInt32().Value); ////订单数量统计 //var cmsPlanOrderItemsgroup = cmsPlanOrderItems.GroupBy(p => new { p.name, p.specification }) // 多个字段作为匿名类型分组键 //.Select(g => new CoreCmsPlanOrderItem //{ // // 分组字段 // name = g.Key.name, // specification = g.Key.specification, // // 统计结果 // //Count = g.Count(), // 每组人数 // //AverageSalary = g.Average(p => p.Salary), // 平均工资 // nums = g.Sum(p => p.nums) // 工资总和 //}).ToList(); EC_OrderPrintParameter _eC_OrderPrintParameter = _eC_OrderPrintParameterBLL.GetModel(orderIdStr.ToInt32().Value); InquiryCommonModel _inquiryCommonModel = null; if (null == _eC_OrderPrintParameter) { _inquiryCommonModel = new InquiryCommonModel(); } else { _inquiryCommonModel = SerializationHelper.DeSerialize(typeof(InquiryCommonModel), _eC_OrderPrintParameter.PrintParameter) as InquiryCommonModel; } var inquiryWorkBookModels = _inquiryCommonModel.InquiryWorkBookList.OrderBy(x => x.WorkBookNameTxt).ThenBy(x => x.WorkBookSizeTxt); var cmsPlanOrderItemsgroup = new List(); foreach (var inquiryWorkBookModel in inquiryWorkBookModels) { var coreCmsPlanOrder = new CoreCmsPlanOrderItem(); // biaotou += " " + inquiryWorkBookModel.WorkBookSizeTxt + inquiryWorkBookModel.WorkBookNameTxt + " "; coreCmsPlanOrder.name = inquiryWorkBookModel.WorkBookNameTxt; coreCmsPlanOrder.specification = inquiryWorkBookModel.WorkBookSizeTxt; var sss = inquiryWorkBookModel.WorkBookCount.ToInt32(); coreCmsPlanOrder.nums = sss.HasValue ? sss.Value : 0; cmsPlanOrderItemsgroup.Add(coreCmsPlanOrder); } //发货数量统计 var coreCmsPlanOrderFahuosgroup = coreCmsPlanOrderFahuos.GroupBy(p => new { p.name, p.specification }) // 多个字段作为匿名类型分组键 .Select(g => new CoreCmsPlanOrderFahuo { // 分组字段 name = g.Key.name, specification = g.Key.specification, // 统计结果 //Count = g.Count(), // 每组人数 //AverageSalary = g.Average(p => p.Salary), // 平均工资 nums = g.Sum(p => p.nums) // 工资总和 }).ToList(); //送货数量统计 var coreDeliverOrderItemsgroup = coreDeliverOrderItems.GroupBy(p => new { p.ZYBName, p.ZYBSpecification }) // 多个字段作为匿名类型分组键 .Select(g => new CoreDeliverOrderItem { // 分组字段 ZYBName = g.Key.ZYBName, ZYBSpecification = g.Key.ZYBSpecification, // 统计结果 //Count = g.Count(), // 每组人数 //AverageSalary = g.Average(p => p.Salary), // 平均工资 Number = g.Sum(p => p.Number) // 工资总和 }).ToList(); foreach(var cmsPlanOrderItem in cmsPlanOrderItemsgroup) { var coreCmsPlanOrderFahuo = coreCmsPlanOrderFahuosgroup.FirstOrDefault(x => x.name == cmsPlanOrderItem.name && x.specification == cmsPlanOrderItem.specification); if (coreCmsPlanOrderFahuo != null) { cmsPlanOrderItem.fahuonums = coreCmsPlanOrderFahuo.nums; } cmsPlanOrderItem.weifahuonums = cmsPlanOrderItem.nums - cmsPlanOrderItem.fahuonums; var coreDeliverOrderItem = coreDeliverOrderItemsgroup.FirstOrDefault(x => x.ZYBName == cmsPlanOrderItem.name && x.ZYBSpecification == cmsPlanOrderItem.specification); if (coreDeliverOrderItem != null) { cmsPlanOrderItem.songhuonums = coreDeliverOrderItem.Number; } cmsPlanOrderItem.kucunnums = cmsPlanOrderItem.fahuonums - cmsPlanOrderItem.songhuonums; cmsPlanOrderItem.weisonghuonums = cmsPlanOrderItem.nums - cmsPlanOrderItem.songhuonums; } this.RepClientList.DataSource = cmsPlanOrderItemsgroup; this.RepClientList.DataBind(); } } }