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 DeliverWorkBookFahuo : BasePage { CoreCmsPlanOrderBLL bll_CoreCmsPlanOrderBLL = null; CoreCmsPlanOrderItemBLL bll_CoreCmsPlanOrderItemBLL = null; CoreCmsPlanOrderFahuoBLL bll_coreCmsPlanOrderFahuoBLL = null; EC_OrderBasicBLL _eC_OrderBasicBLL = null; EC_OrderPrintParameterBLL _eC_OrderPrintParameterBLL = null; //初始化 public DeliverWorkBookFahuo() { 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); 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.WorkBookSizeTxt).ThenBy(x => x.WorkBookNameTxt); 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), // 工资总和 LessNumber = g.Sum(p => p.LessNumber) }).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.LessNumber = coreDeliverOrderItem.LessNumber; } cmsPlanOrderItem.kucunnums = cmsPlanOrderItem.fahuonums - cmsPlanOrderItem.songhuonums; cmsPlanOrderItem.weisonghuonums = cmsPlanOrderItem.nums - cmsPlanOrderItem.songhuonums - cmsPlanOrderItem.LessNumber; } this.RepClientList.DataSource = cmsPlanOrderItemsgroup; this.RepClientList.DataBind(); } //查询事件 protected void btn_Search_Click(object src, EventArgs e) { BindList(); } //提交事件 protected void btn_Submit_form(object sender, EventArgs e) { try { var orderIdStr = this.hideOrderId.Value ; var hidspecification = Request["hidspecification"]; var hidname = Request["hidname"]; var fahuoCount = Request["fahuoCount"]; var hidweifahuonums = Request["hidweifahuonums"]; var fahuos = fahuoCount.Split(','); var names = hidname.Split(','); var specifications = hidspecification.Split(','); var weifahuonumss = hidweifahuonums.Split(','); bool yanzheng = false; for (int i = 0; i < fahuos.Length; i++) { var fahuo = fahuos[i].ToInt32(); if (fahuo.HasValue && fahuo.Value != 0) { yanzheng = true; } //var weifahuonums = weifahuonumss[i].ToInt32(); //if(fahuo.Value > weifahuonums.Value) //{ // JavaScript.MessageBox((i+1)+"行发货数量大于未发货数量", this); // return; //} } if (!yanzheng) { JavaScript.MessageBox( "没有填写发货数量", this); return; } var createtimea = DateTime.Now; var ssss = false; for (int i = 0; i < fahuos.Length; i++) { var coreCmsPlanOrder = new CoreCmsPlanOrderFahuo(); coreCmsPlanOrder.orderId = orderIdStr.ToInt32().Value; coreCmsPlanOrder.name = names[i]; coreCmsPlanOrder.specification = specifications[i]; coreCmsPlanOrder.nums = fahuos[i].ToInt32().Value; coreCmsPlanOrder.createTime = createtimea; coreCmsPlanOrder.upDataTime = coreCmsPlanOrder.createTime; coreCmsPlanOrder.createBy = CurrentUser.ShortName; coreCmsPlanOrder.upDataBy = CurrentUser.ShortName; ssss= bll_coreCmsPlanOrderFahuoBLL.InsertModel(coreCmsPlanOrder); } //bll_EC_SpecialOrdersBLL.AddSpecialForums(m_EC_OrderOperate, m_EC_SpecialOrders, m_OA_OrderWorkListRelation, m_EC_SpecialForumsList, m_OA_InventoryList, m_OA_OutOfStorageList) if (ssss) { JavaScript.MessageBox("操作成功", this,true,false); } else { JavaScript.MessageBox("提交失败", this); } } catch (Exception ex) { PAGEHandleException(ex); JavaScript.MessageBox("提交失败", this); } } } }