using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using CoreFS.CA06;using Pur.Entity;
using Core.Mes.Client.Comm.Control;
using Pur.Entity.ck;
using Infragistics.Win.UltraWinGrid;
using System.Collections;
using Core.Mes.Client.Comm.Tool;
using Pur.Entity.require_planEntiy;
using com.hnshituo.pur.vo;
using Pur.configure;
namespace Pur.ck
{
public partial class PurExcDeliveryOk : FrmPmsBase
{
public PurExcDeliveryOk()
{
InitializeComponent();
}
UltraGridRow Qgr = null;
public PurExcDeliveryOk(OpeBase ob, UltraGridRow ugr)
{
this.ob = ob;
InitializeComponent();
Qgr = ugr;
}
///
/// 工具栏
///
///
///
private void barsManagerButon_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
{
switch (e.Tool.Key.ToString())
{
case "conFirmation":
{
Add_PurExcSub();
}
break;
case "ESC":
{
this.Close();
}
break;
}
}
///
/// 生成子单
///
private void Add_PurExcSub()
{
ultraGrid1.UpdateData();
DataTable dt_b = new DataTable();
ArrayList list1 = new ArrayList();
ArrayList list2 = new ArrayList();
//Edm.BollCode = Qgr.Cells["BollCode"].Value.ToString();
//Edm.DeliverSheetId = Qgr.Cells["DeliverSheetId"].Value.ToString();
dt_b = dataTable3.Clone();
DataRow[] rows = dataTable3.Select("Songqty<>'' or Songqty is not null or Songqty <>'0'");
foreach (DataRow row in rows)
{
dt_b.ImportRow(row);//复制行数据
}
for (int i = 0; i < dt_b.Rows.Count; )
{
int t = 2;
ExcDeliverySubM Edm = new ExcDeliverySubM();
Edm.CreateName = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName();
Edm.CreateUserid = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserID();
Edm.CreateTime = DateTime.Now;
Edm.Validflag = "1";
Edm.Status = "1";
Edm.DeliveryType = Qgr.Cells["DeliveryType"].Value.ToString();
Edm.NoticeId = Qgr.Cells["NoticeId"].Value.ToString();
Edm.OrderId = Qgr.Cells["OrderId"].Value.ToString();
Edm.SuppCode = Qgr.Cells["SuppCode"].Value.ToString();
Edm.SuppName = Qgr.Cells["SuppName"].Value.ToString();
Edm.Remark = Qgr.Cells["Remark"].Value.ToString();
Edm.CompanyCode = Qgr.Cells["CompanyCode"].Value.ToString();
Edm.CompanyName = Qgr.Cells["CompanyName"].Value.ToString();
Edm.DeliveryId = Qgr.Cells["DeliveryId"].Value.ToString();
String str = this.execute("com.hnshituo.pur.utils.service.UtilsService", "getSubId", new object[] { });
Edm.DeliverySubId = str;
Edm.DeliveryLocation = dt_b.Rows[i]["DeliveryLocation"].ToString();
Edm.DeliveryLocationCode = dt_b.Rows[i]["DeliveryLocationCode"].ToString();
ExcDeliverySubC TheB = new ExcDeliverySubC();
TheB.DeliverySubId = str;
list1.Add(Edm);
//this.execute("com.hnshituo.pur.ck.service.ExcDeliverySubMService", "insert", new object[] { Edm });
for (int j = 1; j < dt_b.Rows.Count;)
{
ExcDeliverySubC TheC = new ExcDeliverySubC();
TheC.DeliverySubId = str;
if (dt_b.Rows[i]["deliveryLocationCode"].ToString() == dt_b.Rows[j]["deliveryLocationCode"].ToString())
{
TheC.DeliverySubLineSqe = str + t.ToString();
TheC.CreateName = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName();
TheC.CreateTime = DateTime.Now;
TheC.CreateUserid = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserID();
TheC.NoticeId = Qgr.Cells["NoticeId"].Value.ToString();
TheC.OrderId = Qgr.Cells["OrderId"].Value.ToString();
TheC.DeliveryId = Qgr.Cells["DeliveryId"].Value.ToString();
TheC.OrderLineSqe = dt_b.Rows[j]["UPDATENAME"].ToString();
TheC.DeliveryLineSqe = dt_b.Rows[j]["DELETENAME"].ToString();
TheC.Qty = Convert.ToDouble(dt_b.Rows[j]["Songqty"].ToString());
TheC.Validflag = "1";
TheC.ItemCode = dt_b.Rows[j]["ItemCode"].ToString();
TheC.ItemDesc = dt_b.Rows[j]["ItemDesc"].ToString();
//TheC.ItemDescE = dt_b.Rows[j]["ItemDescE"].ToString();
TheC.ItemModel = dt_b.Rows[j]["ItemModel"].ToString();
TheC.ItemName = dt_b.Rows[j]["ItemName"].ToString();
TheC.ItemSpec = dt_b.Rows[j]["ItemSpec"].ToString();
//TheC.ItemUom = dt_b.Rows[j]["ItemUom"].ToString();
// TheC.ItemUomConefficient =Convert.ToDouble(dt_b.Rows[j]["ItemUomConefficient"].ToString());
// TheC.ItemUseUom = dt_b.Rows[j]["ItemUseUom"].ToString();
TheC.WeightUnit = dt_b.Rows[j]["WeightUnit"].ToString();
list2.Add(TheC);
//this.execute("com.hnshituo.pur.ck.service.ExcDeliverySubCService", "insert", new object[] { TheC });
t++;
RequirePlanD Rqpd = new RequirePlanD();
Rqpd.MrLineId = dt_b.Rows[j]["MrLineId"].ToString();
Rqpd.QtyDelivery = Convert.ToDouble(dt_b.Rows[j]["Songqty"].ToString()) + (dt_b.Rows[j]["qtyDelivery"].ToString() == null ? 0 : Convert.ToDouble(dt_b.Rows[j]["qtyDelivery"].ToString()));
CoreResult re = this.GetJsonService().execute("com.hnshituo.pur.requireplan.service.RequirePlanDService", "doUpdate", new object[] { Rqpd });
dt_b.Rows.RemoveAt(j);
}
else
{
j++;
}
}
TheB.DeliverySubLineSqe = str + "1";
TheB.CreateName = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName();
TheB.CreateTime = DateTime.Now;
TheB.CreateUserid = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserID();
TheB.OrderLineSqe = dt_b.Rows[i]["UPDATENAME"].ToString();
TheB.DeliveryLineSqe = dt_b.Rows[i]["DELETENAME"].ToString();
TheB.Qty = Convert.ToDouble(dt_b.Rows[i]["Songqty"].ToString());
TheB.NoticeId = Qgr.Cells["NoticeId"].Value.ToString();
TheB.OrderId = Qgr.Cells["OrderId"].Value.ToString();
TheB.DeliveryId = Qgr.Cells["DeliveryId"].Value.ToString();
TheB.Validflag = "1";
TheB.ItemCode = dt_b.Rows[i]["ItemCode"].ToString();
TheB.ItemDesc = dt_b.Rows[i]["ItemDesc"].ToString();
//TheB.ItemDescE = dt_b.Rows[i]["ItemDescE"].ToString();
TheB.ItemModel = dt_b.Rows[i]["ItemModel"].ToString();
TheB.ItemName = dt_b.Rows[i]["ItemName"].ToString();
TheB.ItemSpec = dt_b.Rows[i]["ItemSpec"].ToString();
//TheB.ItemUom = dt_b.Rows[i]["ItemUom"].ToString();
// TheB.ItemUomConefficient =Convert.ToDouble(dt_b.Rows[i]["ItemUomConefficient"].ToString());
// TheB.ItemUseUom = dt_b.Rows[i]["ItemUseUom"].ToString();
TheB.WeightUnit = dt_b.Rows[i]["WeightUnit"].ToString();
list2.Add(TheB);
RequirePlanD Rqpd1 = new RequirePlanD();
Rqpd1.MrLineId = dt_b.Rows[i]["MrLineId"].ToString();
Rqpd1.QtyDelivery = Convert.ToDouble(dt_b.Rows[i]["Songqty"].ToString())+ (dt_b.Rows[i]["qtyDelivery"].ToString()==null?0:Convert.ToDouble(dt_b.Rows[i]["qtyDelivery"].ToString()));
this.GetJsonService().execute("com.hnshituo.pur.requireplan.service.RequirePlanDService", "doUpdate", new object[] { Rqpd1 });
//this.GetJsonService().execute("com.hnshituo.pur.ck.service.ExcDeliverySubCService", "insert", new object[] { TheB });
dt_b.Rows.RemoveAt(i);
}
CoreResult cRt = this.GetJsonService().execute("com.hnshituo.pur.ck.service.ExcDeliverySubMService", "insert_id", new object[] { list1, list2 });
if (cRt.Resultcode == 0)
{
MessageUtil.ShowTips("送货子单生成成功! ");
}
else
{
MessageUtil.ShowTips("送货子单生成失败!"+cRt.Resultmsg);
}
}
///
/// 界面加载
///
///
///
private void PurExcDeliveryOk_Load(object sender, EventArgs e)
{
ultraTextEditor2.Text = Qgr.Cells["orderId"].Value.ToString();
ultraTextEditor3.Text = Qgr.Cells["suppName"].Value.ToString();
ultraTextEditor4.Text = Qgr.Cells["deliveryId"].Value.ToString();
ExcDeliveryC Edc = new ExcDeliveryC();
Edc.DeliveryId = Qgr.Cells["DeliveryId"].Value.ToString();
DataTable dt = this.GetJsonService().execute("com.hnshituo.pur.ck.service.ExcDeliveryCService", "find_ExcDC", new object[] { Edc });
GridHelper.CopyDataToDatatable(dt, dataTable2, true);
DataTable dt1 = this.GetJsonService().execute("com.hnshituo.pur.requireplan.service.RequirePlanDService", "getRD_forExcDeliveryC", new object[] { });
for (int i = 0; i < dt1.Rows.Count; )
{
if (!dataTable2.Rows.Contains(dt1.Rows[i]["purlineid"].ToString()))
{
dt1.Rows.RemoveAt(i);
}
else
{
i++;
}
}
GridHelper.CopyDataToDatatable(dt1, dataTable3, true);
string[] strColum1 = new string[] { "Songqty", "remark" };
ConfigureClassCommon.setGridActivation(ultraGrid1.DisplayLayout.Bands[0], strColum1);
}
}
}