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 DeliverWorkBookAnPaiDetail : BasePage { CoreCmsPlanOrderBLL _CoreCmsPlanOrderBLL = null; CoreCmsPlanOrderItemBLL _CoreCmsPlanOrderItemBLL = null; OA_StaffBLL bll_OA_StaffBLL = null; OA_CarManageBll _OA_CarManageBll = null; CoreDeliverOrderBLL _CoreDeliverOrderBLL = null; CoreDeliverOrderItemBLL _CoreDeliverOrderItemBLL = null; //初始化 public DeliverWorkBookAnPaiDetail() { _CoreCmsPlanOrderBLL = new CoreCmsPlanOrderBLL(); bll_OA_StaffBLL = new OA_StaffBLL(); _OA_CarManageBll = new OA_CarManageBll(); _CoreDeliverOrderBLL = new CoreDeliverOrderBLL(); _CoreDeliverOrderItemBLL = new CoreDeliverOrderItemBLL(); _CoreCmsPlanOrderItemBLL = new CoreCmsPlanOrderItemBLL(); } //页面加载 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { BindList(); } } //绑定数据 private void BindList() { string orderIdStr = Request["orderId"]; var coreDeliverOrder = _CoreDeliverOrderBLL.GetModelByKeyid(orderIdStr); var coreCmsPlanOrder = _CoreCmsPlanOrderBLL.GetModelByKeyid(coreDeliverOrder.OrderId.Value); var cmsPlanOrderItems = _CoreCmsPlanOrderItemBLL.GetModelsByOrderid(coreDeliverOrder.OrderId.Value); var coreDeliverOrderItems = _CoreDeliverOrderItemBLL.GetModelsByOrderid(orderIdStr); //已经送货数量 var coreDeliverOrderItemssonghuo = _CoreCmsPlanOrderItemBLL.GetDeliverModelsByZongOrderid(coreCmsPlanOrder.orderkeyid.Value).Where(x=>x.PlanOrderId == coreCmsPlanOrder.id ); //送货数量统计 var coreDeliverOrderItemsgroup = coreDeliverOrderItemssonghuo.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), // 工资总和 LessNumber = g.Sum(p => p.LessNumber) }).ToList(); this.spanpianqu.InnerText = coreCmsPlanOrder.pianqu; this.spanxuexiao.InnerText = coreCmsPlanOrder.shipAddress; this.spanDizhi.InnerText = coreCmsPlanOrder.shouhuoAddress; this.spanLianxiren.InnerText = coreCmsPlanOrder.shipName; this.spanDianhua.InnerText = coreCmsPlanOrder.shipMobile; this.spanShijian.InnerText = coreDeliverOrder.MakeTime.Value.ToString("yyyy-MM-dd HH:mm:ss"); this.spanZhuangtai.InnerText = coreDeliverOrder.OrderStateName; foreach (var coreDeliverOrderItem in coreDeliverOrderItems) { var deliverOrderItem = coreDeliverOrderItemsgroup.Where(x => x.ZYBName == coreDeliverOrderItem.ZYBName && x.ZYBSpecification == coreDeliverOrderItem.ZYBSpecification).FirstOrDefault(); var cmsPlanOrderItem = cmsPlanOrderItems.Where(x => x.name == coreDeliverOrderItem.ZYBName && x.specification == coreDeliverOrderItem.ZYBSpecification).FirstOrDefault(); if (cmsPlanOrderItem != null) { coreDeliverOrderItem.DingdanNumber = cmsPlanOrderItem.nums; if (deliverOrderItem != null) { var weisong = cmsPlanOrderItem.nums - (deliverOrderItem.Number + deliverOrderItem.LessNumber); coreDeliverOrderItem.WeisongNumber = (weisong > 0 ? weisong : 0); } else { coreDeliverOrderItem.WeisongNumber = cmsPlanOrderItem.nums ; } } } this.RepClientList.DataSource = coreDeliverOrderItems; this.RepClientList.DataBind(); } } }