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 DeliverWorkBookSonghuo : BasePage
{
CoreCmsPlanOrderBLL bll_CoreCmsPlanOrderBLL = null;
CoreCmsPlanOrderItemBLL bll_CoreCmsPlanOrderItemBLL = null;
EC_OrderPrintParameterBLL _eC_OrderPrintParameterBLL = null;
public string biaotou = "";
public string biaowei = "";
//初始化
public DeliverWorkBookSonghuo()
{
bll_CoreCmsPlanOrderBLL = new CoreCmsPlanOrderBLL();
bll_CoreCmsPlanOrderItemBLL = new CoreCmsPlanOrderItemBLL();
_eC_OrderPrintParameterBLL = new EC_OrderPrintParameterBLL();
}
//页面加载
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindList("diyici");
}
}
//绑定数据
private void BindList(string diyici="")
{
string orderIdStr = Request["orderId"];
this.hideOrderId.Value = orderIdStr;
var coreCmsPlanOrders = bll_CoreCmsPlanOrderBLL.GetModelByorderid(orderIdStr.ToInt32().Value);
var xuexiao = this.txtxuexiao.Value.Trim();
if (!string.IsNullOrEmpty(xuexiao))
{
coreCmsPlanOrders = coreCmsPlanOrders.Where(x => x.shipAddress.Contains(xuexiao));
}
var ids = coreCmsPlanOrders.Select(x => x.id).ToArray();
var cmsPlanOrderItems = bll_CoreCmsPlanOrderItemBLL.GetModelsByZongOrderid(orderIdStr.ToInt32().Value).Where(x=> ids.Contains( x.orderId));
var coreDeliverOrderItems = bll_CoreCmsPlanOrderItemBLL.GetDeliverModelsByZongOrderid(orderIdStr.ToInt32().Value).Where(x => ids.Contains(x.PlanOrderId));
var BeginDate = this.txtBeginDate.Value.Trim();
if (!string.IsNullOrEmpty(BeginDate))
{
var sss = BeginDate.ToDateTime2().Value;
coreDeliverOrderItems = coreDeliverOrderItems.Where(x => x.MakeTime >= sss);
}
var EndDate = this.txtEndDate.Value.Trim();
if (!string.IsNullOrEmpty(EndDate))
{
var sss = EndDate.ToDateTime2().Value.AddDays(1);
coreDeliverOrderItems = coreDeliverOrderItems.Where(x => x.MakeTime <= sss);
}
var OrderState = this.selstatus.Value.Trim();
//if (!string.IsNullOrEmpty(OrderState))
//{
// var sss = OrderState.ToInt32().Value;
// coreDeliverOrderItems = coreDeliverOrderItems.Where(x => x.OrderState == sss);
//}
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);
if (string.IsNullOrEmpty(biaotou))
{
string biaotou2 = "
| | | | ";
foreach (var inquiryWorkBookModel in inquiryWorkBookModels)
{
biaotou += " " + inquiryWorkBookModel.WorkBookSizeTxt + inquiryWorkBookModel.WorkBookNameTxt + " | ";
biaotou2+= " 已送 | 未送 | ";
}
biaotou +=""+ biaotou2+ "
";
}
List PlanOrderid = new List();
foreach (var coreCmsPlanOrder in coreCmsPlanOrders)
{
var cmsPlanOrderItems1 = cmsPlanOrderItems.Where(x => x.orderId == coreCmsPlanOrder.id);
foreach (var inquiryWorkBookModel in inquiryWorkBookModels)
{
string biaoge = "";
var cmsPlanOrderItem = cmsPlanOrderItems1.Where(x => x.name == inquiryWorkBookModel.WorkBookNameTxt && x.specification == inquiryWorkBookModel.WorkBookSizeTxt).FirstOrDefault();
if (cmsPlanOrderItem != null)
{
var coreDeliverOrderItems1 = coreDeliverOrderItems.Where(x =>x.PlanOrderId == coreCmsPlanOrder.id && x.ZYBName == inquiryWorkBookModel.WorkBookNameTxt && x.ZYBSpecification == inquiryWorkBookModel.WorkBookSizeTxt);
var Number = coreDeliverOrderItems1.Sum(x => x.Number);
var LessNumber = coreDeliverOrderItems1.Sum(x => x.LessNumber);
if (cmsPlanOrderItem.nums > 0)
{
if (cmsPlanOrderItem.nums - LessNumber - Number > 0)
{
biaoge += " " + Number + " | " + (cmsPlanOrderItem.nums - LessNumber - Number) + " | ";
}
else
{
biaoge += " " + Number + " | " + (cmsPlanOrderItem.nums - LessNumber - Number) + " | ";
}
}
else
{
biaoge += " | | ";
}
}
else
{
biaoge += " | | ";
}
if (string.IsNullOrEmpty(OrderState))
{
if (string.IsNullOrEmpty(diyici))
{
coreCmsPlanOrder.biaoge += biaoge;
if (PlanOrderid.Count(x => x == coreCmsPlanOrder.id) == 0)
{
PlanOrderid.Add(coreCmsPlanOrder.id);
}
}
else
{
var jihuashuliang = cmsPlanOrderItems1.Sum(x => x.nums);
var coreDeliverOrderItems2 = coreDeliverOrderItems.Where(x => x.PlanOrderId == coreCmsPlanOrder.id);
var songhuoshuliang = coreDeliverOrderItems2.Sum(x => x.Number);
var jieyueshuliang = coreDeliverOrderItems2.Sum(x => x.LessNumber);
if (songhuoshuliang <= 0 && jieyueshuliang <= 0)
{
coreCmsPlanOrder.biaoge += biaoge;
if (PlanOrderid.Count(x => x == coreCmsPlanOrder.id) == 0)
{
PlanOrderid.Add(coreCmsPlanOrder.id);
}
}
else if (songhuoshuliang + jieyueshuliang < jihuashuliang && jihuashuliang > 0 && songhuoshuliang + jieyueshuliang > 0)
{
coreCmsPlanOrder.biaoge += biaoge;
if (PlanOrderid.Count(x => x == coreCmsPlanOrder.id) == 0)
{
PlanOrderid.Add(coreCmsPlanOrder.id);
}
}
}
}
else if (OrderState == "0")
{
var jihuashuliang = cmsPlanOrderItems1.Sum(x => x.nums);
var coreDeliverOrderItems2 = coreDeliverOrderItems.Where(x => x.PlanOrderId == coreCmsPlanOrder.id);
var songhuoshuliang = coreDeliverOrderItems2.Sum(x => x.Number);
var jieyueshuliang = coreDeliverOrderItems2.Sum(x => x.LessNumber);
if(songhuoshuliang<=0 && jieyueshuliang <= 0)
{
coreCmsPlanOrder.biaoge += biaoge;
if (PlanOrderid.Count(x => x == coreCmsPlanOrder.id) == 0)
{
PlanOrderid.Add(coreCmsPlanOrder.id);
}
}
}
else if (OrderState == "1")
{
var jihuashuliang = cmsPlanOrderItems1.Sum(x => x.nums);
var coreDeliverOrderItems2 = coreDeliverOrderItems.Where(x => x.PlanOrderId == coreCmsPlanOrder.id);
var songhuoshuliang = coreDeliverOrderItems2.Sum(x => x.Number);
var jieyueshuliang = coreDeliverOrderItems2.Sum(x => x.LessNumber);
if (songhuoshuliang + jieyueshuliang < jihuashuliang && jihuashuliang > 0 && songhuoshuliang + jieyueshuliang > 0)
{
coreCmsPlanOrder.biaoge += biaoge;
if (PlanOrderid.Count(x => x == coreCmsPlanOrder.id) == 0)
{
PlanOrderid.Add(coreCmsPlanOrder.id);
}
}
}
else if (OrderState == "2")
{
var jihuashuliang = cmsPlanOrderItems1.Sum(x => x.nums);
var coreDeliverOrderItems2 = coreDeliverOrderItems.Where(x => x.PlanOrderId == coreCmsPlanOrder.id);
var songhuoshuliang = coreDeliverOrderItems2.Sum(x => x.Number);
var jieyueshuliang = coreDeliverOrderItems2.Sum(x => x.LessNumber);
if (songhuoshuliang + jieyueshuliang >= jihuashuliang && jihuashuliang>0)
{
coreCmsPlanOrder.biaoge += biaoge;
if (PlanOrderid.Count(x => x == coreCmsPlanOrder.id) == 0)
{
PlanOrderid.Add(coreCmsPlanOrder.id);
}
}
}
}
}
biaowei = " | " + PlanOrderid.Count +" | | | ";
foreach (var inquiryWorkBookModel in inquiryWorkBookModels)
{
var nums = cmsPlanOrderItems.Where(x => x.name == inquiryWorkBookModel.WorkBookNameTxt && x.specification == inquiryWorkBookModel.WorkBookSizeTxt && PlanOrderid.Contains(x.orderId)).Sum(x => x.nums);
var coreDeliverOrderItems1 = coreDeliverOrderItems.Where(x => x.ZYBName == inquiryWorkBookModel.WorkBookNameTxt && x.ZYBSpecification == inquiryWorkBookModel.WorkBookSizeTxt && PlanOrderid.Contains(x.PlanOrderId));
var Number = coreDeliverOrderItems1.Sum(x => x.Number);
var LessNumber = coreDeliverOrderItems1.Sum(x => x.LessNumber);
if ((nums - LessNumber - Number) > 0)
{
biaowei += " " + Number + " | " + (nums - LessNumber - Number) + " | ";
}
else
{
biaowei += " " + Number + " | " + (nums - LessNumber - Number) + " | ";
}
}
this.RepClientList.DataSource = coreCmsPlanOrders.Where(x=> PlanOrderid.Contains(x.id));
this.RepClientList.DataBind();
}
//查询事件
protected void btn_Search_Click(object src, EventArgs e)
{
BindList();
}
}
}