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 Core.Mes.Client.Comm.Tool;
using Core.StlMes.Client.YdmBase;
using System.Collections;
using Core.Mes.Client.Comm.Server;
using Core.Mes.Client.Comm.Control;
using Infragistics.Win.UltraWinGrid;
using Infragistics.Win;
using Core.Mes.Client.Comm.Format;
using Core.StlMes.Client.PipeLeaveFactory.YdmObject;
using Core.StlMes.Client.PipeLeaveFactory.Tool;
namespace Core.StlMes.Client.PipeLeaveFactory
{
public partial class frmPipeTrainDay : FrmBase
{
///
/// 用户销售组织权限
///
private string[] _salgPermissions = null;
private int index = -1;
ArrayList pram = new ArrayList();
string planno = "";
public frmPipeTrainDay()
{
InitializeComponent();
this.IsLoadUserView = true;
}
///
/// 初始化
///
///
///
private void frmPipeTrainDay_Load(object sender, EventArgs e)
{
PlanDay.Value = DateTime.Parse(DateTime.Now.AddMonths(-1).ToString());
GetCustomer();
_salgPermissions = InitPermissions();
BaseHelper.InitOrderUnit(cmbCustomer, _salgPermissions, this.ob);
BaseHelper.InitMonth(cmbMonth);
BaseHelper.InitYear(cmbYear);
cmbMonth.Value = string.Format("{0:00}", DateTime.Now.Month);
cmbYear.Value = DateTime.Now.Year.ToString();
}
///
/// 重写基类方法
///
///
///
public override void ToolBar_Click(object sender, string ToolbarKey)
{
switch (ToolbarKey)
{
case "Query":
doQuery();
break;
case "Add":
doAdd();
break;
case "Delete":
doDelete();
break;
case "Down":
doDown();
break;
case "Refresh":
doRefresh();
break;
case "Export":
if (ultraTabControl1.SelectedTab.Key.Equals("0"))
{
GridHelper.ulGridToExcel(ultraGrid2, "铁运月计划");
}
else
{
GridHelper.ulGridToExcel(ultraGrid1, "铁运日计划");
}
break;
case "Close":
this.Close();
break;
}
}
///
/// 下拉框绑定数据
///
private void GetCustomer()
{
//专用线
YdmBaseClass.InitComboEditor(cmbSpcl, "com.steering.pss.ydm.pipeleavefactory.FrmPipeSendList.queryPrivateSid", "SPCL_LN_NO", ob, false);
//到站
YdmBaseClass.InitComboEditor(cmbStation, "com.steering.pss.ydm.pipeleavefactory.FrmPipeSendList.queryArriveStation", "STATION_NO", ob, false);
}
///
/// 获取用户的销售组织权限
///
///
private string[] InitPermissions()
{
ArrayList list = new ArrayList();
string[] userDptIds = this.ValidDataPurviewIds;
for (int i = 0; i < userDptIds.Length; i++)
{
string userDptId = userDptIds[i];
if (userDptId.Length < 6)
{
if (!list.Contains("100101"))
{
list.Add("100101");
}
if (!list.Contains("100102"))
{
list.Add("100102");
}
if (!list.Contains("100103"))
{
list.Add("100103");
}
string[] strs = new string[list.Count];
for (int j = 0; j < list.Count; j++)
{
strs[j] = list[j].ToString();
}
return strs;
}
else
{
if (userDptId.StartsWith("002002"))
{
if (!list.Contains("100102"))
{
list.Add("100102");
}
}
else
{
if (userDptId.Length < 9)
{
if (!list.Contains("100101"))
{
list.Add("100101");
}
if (!list.Contains("100103"))
{
list.Add("100103");
}
}
else
{
if (userDptId.StartsWith("002001004"))
{
if (!list.Contains("100101"))
{
list.Add("100101");
}
}
else
{
if (!list.Contains("100103"))
{
list.Add("100103");
}
}
}
}
}
}
if (list.Count == 0)
{
return null;
}
else
{
string[] strs = new string[list.Count];
for (int i = 0; i < list.Count; i++)
{
strs[i] = list[i].ToString();
}
return strs;
}
}
///
/// 查询
///
private void doQuery()
{
string custnm = "";
string spcl = "";
string station = "";
string strTime = "";
if (chkDate.Checked)
{
if (DateTime.Parse(PlanDay.Value.ToString()) > DateTime.Parse(EndTime.Value.ToString()))
{
MessageUtil.ShowTips("开始时间不能大于结束时间!");
return;
}
}
if (chkCustomer.Checked)
{
if (cmbCustomer.SelectedItem == null)
{
MessageUtil.ShowTips("请选择订货单位!");
return;
}
custnm = cmbCustomer.Value.ToString();
}
if (chkSpcl.Checked)
{
if (cmbSpcl.SelectedItem == null)
{
MessageUtil.ShowTips("请选择专用线!");
return;
}
spcl = cmbSpcl.Value.ToString();
}
if (chkStation.Checked)
{
if (cmbStation.SelectedItem == null)
{
MessageUtil.ShowTips("请选择到站!");
return;
}
station = cmbStation.Value.ToString();
}
if (chkYearMatch.Checked)
{
strTime = cmbYear.Text.Trim()+cmbMonth.Text.Trim();
}
pram.Clear();
pram.Add(custnm);
pram.Add(custnm);
pram.Add(custnm);
pram.Add(spcl);
pram.Add(spcl);
pram.Add(spcl);
pram.Add(station);
pram.Add(station);
pram.Add(station);
if (ultraTabControl1.SelectedTab.Key.Equals("0"))
{
pram.Add(strTime);
dataTable4.Clear();
DataTable dtm = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay.querySendPlanM", new object[] { pram, this.ValidDataPurviewIds}, this.ob);
GridHelper.CopyDataToDatatable(ref dtm, ref dataTable3, true);
if (dtm.Rows.Count == 0) return;
DataTable dtc = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay.querySendPlanC", null, this.ob);
dtc = YdmBaseClass.FilterTable(dtm, dtc, "SEND_PLAN_NO");
GridHelper.CopyDataToDatatable(ref dtc, ref dataTable4, true);
foreach (UltraGridRow row in ultraGrid2.Rows)
{
if (row.HasChild())
{
foreach (UltraGridRow crow in row.ChildBands[0].Rows)
{
crow.Cells["EDI_WT_C"].Value = crow.Cells["REM_WT"].Value.ToString();
}
}
}
}
else
{
string strday = "";
string endday = "";
if(chkDate.Checked)
{
strday = DateTime.Parse(PlanDay.Value.ToString()).ToString("yyyy-MM-dd") + " 00:00:00";
endday = DateTime.Parse(EndTime.Value.ToString()).ToString("yyyy-MM-dd") + " 23:59:59";
}
pram.Add(strday);
pram.Add(strday);
pram.Add(strday);
pram.Add(endday);
pram.Add(endday);
string status = "";
if (ChcStatus.Checked)
{
status = ComStatus.Value.ToString();
}
dataTable2.Clear();
DataTable dtm = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay.queryPlanDayInfoM", new object[] { pram, this.ValidDataPurviewIds, status }, this.ob);
GridHelper.CopyDataToDatatable(ref dtm, ref dataTable1, true);
if (dtm.Rows.Count == 0) return;
DataTable dtc = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay.queryPlanDayInfoC", null, this.ob);
dtc = YdmBaseClass.FilterTable(dtm, dtc, "SEND_DAYPLAN_NO");
GridHelper.CopyDataToDatatable(ref dtc, ref dataTable2, true);
}
}
private int GetGridSelectCount()
{
foreach (UltraGridRow row in ultraGrid2.Rows)
{
//if (row.Cells["CHOOSE"].Value.ToString() == "True")
//{
// return 1;
//}
UltraGridRow[] rows = GridHelper.GetRowsWithKey(row.ChildBands[0],
new string[] { "CHOOSE" }, new string[] { "True" });
if (rows.Length > 0)
{
return 1;
}
}
return 0;
}
///
/// 新增
///
private void doAdd()
{
double totalwt = 0;
double totalnum = 0;
double totallen = 0;
UltraGridRow row = this.ultraGrid2.ActiveRow;
if (row == null)
{
MessageUtil.ShowTips("无数据,不能进行此操作!");
return;
}
ArrayList baseData = new ArrayList();
ArrayList childData = new ArrayList();
string strTime = DateTime.Now.ToString();
YdmZcDaysendplanTrainMEntity ydm = null;
if (GetGridSelectCount() == 0)
{
MessageUtil.ShowTips("请选择您要操作的记录!");
return;
}
for (int i = 0; i < ultraGrid2.Rows.Count; i++)
{
totalwt = 0;
totalnum = 0;
totallen = 0;
planno = "";
int incount = 0;
UltraGridRow ugr = ultraGrid2.Rows[i];
UltraGridRow ugrc = null;
//从表操作
if (ugr.HasChild())
{
foreach (UltraGridRow crow in ugr.ChildBands[0].Rows)
{
ugrc = crow;
if (Convert.ToBoolean(ugrc.Cells["CHOOSE"].Value))
{
incount += 1;//判断主表是否循环
YdmZcDaysendplanTrainCEntity comc = GetChildData(ugrc, ugr);
if (comc == null)
{
return;
}
if (comc.PlanNum.ToString() != "")
{
totalnum += Convert.ToDouble(comc.PlanNum);
}
if (comc.PlanTotlLen.ToString() != "")
{
totallen += Convert.ToDouble(comc.PlanTotlLen);
}
if (comc.PlanWt.ToString() != "")
{
totalwt += Convert.ToDouble(comc.PlanWt);
}
comc.CreateTime = strTime;
childData.Add(JSONFormat.Format(comc));
}
}
if (incount > 0)
{
ydm = GetBaseData(ugr);
if (ydm == null)
{
return;
}
ydm.SendDayplanNo = planno;
ydm.PlanWt = totalwt.ToString("f3");
ydm.PlanNum = totalnum.ToString();
ydm.PlanTotlLen = totallen.ToString();
baseData.Add(JSONFormat.Format(ydm));
}
}
}
if (baseData.Count > 1)
{
MessageUtil.ShowWarning("不能跨发运计划号新增!");
return;
}
if (MessageBox.Show("是否确认新增日计划?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No) return;
if (baseData.Count > 0 || childData.Count > 0)
{
CoreClientParam ccp = new CoreClientParam();
ccp.ServerName = "com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay";
ccp.MethodName = "saveYdmSendPlan";
ccp.ServerParams = new object[] { baseData, childData };
ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
if (ccp.ReturnCode == -1) return;
MessageBox.Show("新增日计划成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.None);
doQuery();
foreach (UltraGridRow ugrow in ultraGrid2.Rows)
{
if (ugrow.Cells["SEND_PLAN_NO"].Value.ToString().Equals(ydm.SendPlanNo.ToString()))
{
ugrow.Activate();
ugrow.ExpandAll();
}
}
//}
}
else
{
MessageUtil.ShowTips("新增失败!");
return;
}
}
///
/// 新增子记录数据
///
///
///
private YdmZcDaysendplanTrainCEntity GetChildData(UltraGridRow ugrc, UltraGridRow ugr)
{
YdmZcDaysendplanTrainCEntity com = new YdmZcDaysendplanTrainCEntity();
// 编制量
string prepwt = ugrc.Cells["EDI_WT_C"].Value.ToString();
if (prepwt == "0")
{
MessageUtil.ShowTips("编制量不能为零!");
ugrc.Cells["CHOOSE"].Value = false;
return null;
}
string sale = ugr.Cells["SALE_ORG"].Value.ToString();
string salecode = "";
switch (sale)
{
case "100101":
salecode = "X";
break;
case "100102":
salecode = "M";
break;
case "100103":
salecode = "G";
break;
default:
break;
}
string Daytime = DateTime.Now.ToString("yyMMdd");
com.SendPlanNo = ugrc.Cells["SEND_PLAN_NO"].Value.ToString();
com.OrderNo = ugrc.Cells["ORDER_NO"].Value.ToString();
com.OrderSeq = ugrc.Cells["ORDER_SEQ"].Value.ToString();
com.DeliveryNo = ugrc.Cells["DELIVERY_NO"].Value.ToString();
//com.SendDayplanNo = com.OrderNo + "," + salecode + "2" + "D" + Daytime + "," + com.OrderSeq + "";
com.SendDayplanNo = salecode + "2" + "D" + Daytime;
planno = com.SendDayplanNo.ToString();
com.MaterialNo = ugrc.Cells["MATERIAL_NO"].Value.ToString();
com.MaterialName = ugrc.Cells["MATERIAL_NAME"].Value.ToString();
com.Produccode = ugrc.Cells["PRODUCCODE"].Value.ToString();
com.Producname = ugrc.Cells["PRODUCNAME"].Value.ToString();
com.PrdCls = ugrc.Cells["PRD_CLS"].Value.ToString();
com.Psc = ugrc.Cells["PSC"].Value.ToString();
com.PscDesc = ugrc.Cells["PSC_DESC"].Value.ToString();
com.SpecCode = ugrc.Cells["SPEC_CODE"].Value.ToString();
com.SpecName = ugrc.Cells["SPEC_NAME"].Value.ToString();
com.LenNo = ugrc.Cells["LEN_NO"].Value.ToString();
com.LenDesc = ugrc.Cells["LEN_DESC"].Value.ToString();
com.PlanWt = ugrc.Cells["EDI_WT_C"].Value.ToString();
com.PlanNum = ugrc.Cells["EDI_NUM_C"].Value.ToString();
com.PlanTotlLen = ugrc.Cells["EDI_TOTL_LEN_C"].Value.ToString();
com.CreateName = this.UserInfo.GetUserName();
com.UpdateName = this.UserInfo.GetUserName();
com.OrdPk = ugrc.Cells["ORD_PK"].Text.Trim();
com.OrdLnPk = ugrc.Cells["ORD_LN_PK"].Text.Trim();
com.OrdLnDlyPk = ugrc.Cells["ORD_LN_DLY_PK"].Text.Trim();
return com;
}
private YdmZcDaysendplanTrainMEntity GetBaseData(UltraGridRow ugr)
{
YdmZcDaysendplanTrainMEntity com = new YdmZcDaysendplanTrainMEntity();
ArrayList list = new ArrayList();
list.Add(ugr.Cells["SEND_PLAN_NO"].Value.ToString());
DataTable dt = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.FrmShipmentApp.doQueryFalg", new object[] { list }, ob);
if (dt.Rows.Count>0)
{
if (dt.Rows[0]["APP_FLAG"].ToString().Equals("0"))
{
MessageUtil.ShowTips("你选中的记录月车皮申请数未审批,请重新选择!");
return null;
}
}
if (ugr.Cells["VEHICLE_60_NUM"].Value.ToString() == "0")
{
MessageUtil.ShowTips("请输入日申请数量!");
return null;
}
com.SendPlanNo = ugr.Cells["SEND_PLAN_NO"].Value.ToString();
com.SaleOrg = ugr.Cells["SALE_ORG"].Value.ToString();
com.SaleOrgDesc = ugr.Cells["SALE_ORG_DESC"].Value.ToString();
com.CustomerNo = ugr.Cells["CUSTOMER_NO"].Value.ToString();
com.CustomerNm = ugr.Cells["CUSTOMER_NM"].Value.ToString();
com.ReceivNo = ugr.Cells["RECEIV_NO"].Value.ToString();
com.ReceivNm = ugr.Cells["RECEIV_NM"].Value.ToString();
com.StationNo = ugr.Cells["STATION_NO"].Value.ToString();
com.StationNm = ugr.Cells["STATION_NM"].Value.ToString();
com.SpclLnNo = ugr.Cells["SPCL_LN_NO"].Value.ToString();
com.SpclLnNm = ugr.Cells["SPCL_LN_NM"].Value.ToString();
com.WagonsPlanNo = ugr.Cells["WAGONS_PLAN_NO"].Value.ToString();
com.Vehicle60Num = ugr.Cells["VEHICLE_60_NUM"].Value.ToString();
com.Vehicle70Num = ugr.Cells["VEHICLE_70_NUM"].Value.ToString();
com.VehicleDayNum = (double.Parse(ugr.Cells["VEHICLE_60_NUM"].Value.ToString())).ToString();
//com.PlanNum = ugr.Cells["PLAN_NUM"].Value.ToString();
//com.PlanWt = ugr.Cells["PLAN_WT"].Value.ToString();
//com.PlanTotlLen = ugr.Cells["PLAN_TOTL_LEN"].Value.ToString();
com.PlanStartTime = DateTime.Now.AddDays(1).ToString("yyyy/MM/dd");
com.PlanEndTime = DateTime.Now.AddDays(1).ToString("yyyy/MM/dd");
com.ApplyDay = DateTime.Now.ToString("yyyy/MM/dd");
com.CreateName = this.UserInfo.GetUserName();
com.UpdateName = this.UserInfo.GetUserName();
com.DepartmentCode = ugr.Cells["DEPARTMENT_CODE"].Value.ToString();
com.DepartmentDesc = ugr.Cells["DEPARTMENT_DESC"].Value.ToString();
com.ManagementNo = ugr.Cells["MANAGEMENT_NO"].Value.ToString();
com.ManagementName = ugr.Cells["MANAGEMENT_NAME"].Value.ToString();
return com;
}
///
///下发
///
private void doDown()
{
UltraGridRow ugr = this.ultraGrid1.ActiveRow;
ArrayList list1 = new ArrayList();
int isSelect = 0;//是否选择行
if (ugr == null)
{
MessageUtil.ShowTips("无数据,不能进行此操作!");
return;
}
string strTime = DateTime.Now.ToString();
foreach (UltraGridRow row in ultraGrid1.Rows)
{
if (Convert.ToBoolean(row.Cells["CHK"].Text) == true)
{
isSelect += 1;
ArrayList prList = new ArrayList();
prList.Add(row.Cells["SEND_DAYPLAN_NO"].Value.ToString());
DataTable dt = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay.queryPlanState", new Object[] { prList }, this.ob);
if (dt.Rows.Count > 0)
{
if (dt.Rows[0]["SEND_DAYPLAN_STATUS"].ToString() != "编辑")
{
MessageUtil.ShowTips("您选中的记录已" + dt.Rows[0]["SEND_DAYPLAN_STATUS"].ToString() + "不能进行此操作!");
return;
}
if (dt.Rows[0]["APP_FLAG"].ToString().Equals("0"))
{
MessageUtil.ShowTips("您选中的记录批复数未审批,不能进行此操作!");
return;
}
}
else
{
MessageUtil.ShowTips("你选中的记录已不存在,请重新选择!");
return;
}
ArrayList list = new ArrayList();
list.Add(this.UserInfo.GetUserName());
list.Add(strTime);
list.Add(row.Cells["SEND_DAYPLAN_NO"].Text.Trim());
list1.Add(list);
}
}
if (isSelect == 0)
{
MessageUtil.ShowTips("请选择要下发的数据!");
return;
}
if (MessageBox.Show("是否确认下发?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)return;
int count = ServerHelper.SetData("com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay.queryPlanIssued", new Object[] { list1 }, this.ob);
if (count != 0)
{
MessageUtil.ShowTips("下发成功!");
doQuery();
}
}
///
/// 废除
///
private void doDelete()
{
ArrayList pramliat = new ArrayList();
ArrayList listall = new ArrayList();
int isSelect = 0;//是否选择行
UltraGridRow ugr = this.ultraGrid1.ActiveRow;
if (ugr == null)
{
MessageUtil.ShowTips("无数据,不能进行此操作!");
return;
}
string strTime = DateTime.Now.ToString();
foreach (UltraGridRow row in ultraGrid1.Rows)
{
if (Convert.ToBoolean(row.Cells["CHK"].Text) == true)
{
isSelect += 1;
if (!doQueryFalg(row)) return;
ArrayList pram = new ArrayList();
pram.Add(this.UserInfo.GetUserName());
pram.Add(strTime);
pram.Add(ugr.Cells["SEND_DAYPLAN_NO"].Text.Trim());
pram.Add(ugr.Cells["SEND_PLAN_NO"].Text.Trim());
pramliat.Add(pram);
//从表数据
if (row.HasChild())
{
foreach (UltraGridRow crow in row.ChildBands[0].Rows)
{
ArrayList list = new ArrayList();
list.Add(crow.Cells["SEND_DAYPLAN_NO"].Value.ToString());
list.Add(crow.Cells["SEND_PLAN_NO"].Value.ToString());
list.Add(crow.Cells["ORDER_NO"].Value.ToString());
list.Add(crow.Cells["ORDER_SEQ"].Value.ToString());
list.Add(crow.Cells["DELIVERY_NO"].Value.ToString());
list.Add(this.UserInfo.GetUserName());
list.Add(strTime);
listall.Add(list);
}
}
}
}
if (isSelect == 0)
{
MessageUtil.ShowTips("请选择要撤销的数据!");
return;
}
if (MessageBox.Show("是否确认撤销?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No) return;
//主表子表有效标志置为无效
int count = ServerHelper.SetData("com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay.deltePlanSend", new Object[] { pramliat, listall }, this.ob);
if (count != 0)
{
MessageUtil.ShowTips("撤销成功!");
doQuery();
}
}
//刷新
private void doRefresh()
{
GetCustomer();
}
///
/// 判断废除条件
///
/// 选中的行ultraGrid.ActiveRow
/// 返回true之通过,flase不通过
private bool doQueryFalg(UltraGridRow ugr)
{
if (ugr == null) return false;
ArrayList prList = new ArrayList();
prList.Clear();
prList.Add(ugr.Cells["SEND_DAYPLAN_NO"].Value.ToString());
DataTable dt = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay.queryPlanState", new Object[] { prList }, this.ob);
if (dt.Rows.Count > 0)
{
if (dt.Rows[0]["SEND_DAYPLAN_STATUS"].ToString() != "编辑" && dt.Rows[0]["SEND_DAYPLAN_STATUS"].ToString() != "下发")
{
MessageUtil.ShowTips("您选中的记录已" + dt.Rows[0]["SEND_DAYPLAN_STATUS"].ToString() + "不能进行此操作!");
return false;
}
if (dt.Rows[0]["APP_FLAG"].ToString().Equals("1"))
{
MessageUtil.ShowTips("您选中的记录车皮运号已审批,不能进行此操作!");
return false;
}
}
else
{
MessageUtil.ShowTips("你选中的记录已不存在,请重新选择!");
return false;
}
return true;
}
///
/// Check选择事件
///
///
///
private void chkCustomer_CheckedChanged(object sender, EventArgs e)
{
if (chkCustomer.Checked)
cmbCustomer.ReadOnly = false;
else
cmbCustomer.ReadOnly = true;
if (chkSpcl.Checked)
cmbSpcl.ReadOnly = false;
else
cmbSpcl.ReadOnly = true;
if (chkStation.Checked)
cmbStation.ReadOnly = false;
else
cmbStation.ReadOnly = true;
if (chkDate.Checked) { PlanDay.Enabled = true; EndTime.Enabled = true; }
else
{
PlanDay.Enabled = false; EndTime.Enabled = false;
}
if (chkYearMatch.Checked) { cmbYear.ReadOnly = false; cmbMonth.ReadOnly = false; } else { cmbYear.ReadOnly = true; cmbMonth.ReadOnly = true; }
if (ChcStatus.Checked) { ComStatus.ReadOnly = false; } else { ComStatus.ReadOnly = true; }
}
///
/// 判断录入限制
///
///
///
private void ultraGrid2_CellChange(object sender, CellEventArgs e)
{
ultraGrid2.UpdateData();
//获取父行(没有上一层)
if (!e.Cell.Row.HasParent())
{
string vehiMonth = e.Cell.Row.Cells["VEHICLE_MONTH_NUM"].Value.ToString();
string vehi60= e.Cell.Row.Cells["VEHICLE_60_NUM"].Value.ToString();
string actnum = e.Cell.Row.Cells["ACT_MONTH_NUM"].Value.ToString();//月使用量
string batchnum = e.Cell.Row.Cells["BATCH_MONTH_NUM"].Value.ToString();//月批复量
string dayVehi = e.Cell.Row.Cells["VEHICLE_DAY_NUM"].Value.ToString();//日申请车皮数
DataTable dt = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.FrmPipeTrainDay.queryDaySendPlan", new object[] { e.Cell.Row.Cells["SEND_PLAN_NO"].Text.Trim() }, this.ob);
string vehiDay = dt.Rows[0]["BATCH_DAY_NUM"].ToString();
if (vehi60 == "")
{
vehi60 = "0";
e.Cell.Row.Cells["VEHICLE_60_NUM"].Value = "0";
}
if (e.Cell.Column.Key.Equals("VEHICLE_60_NUM"))
{
if (Convert.ToDouble(batchnum) - Convert.ToDouble(actnum) < Convert.ToDouble(e.Cell.Row.Cells["VEHICLE_60_NUM"].Value))
{
MessageUtil.ShowTips("月车皮数不足,请重新输入!");
e.Cell.Row.Cells["VEHICLE_60_NUM"].Value = 0;
return;
}
}
}
else
{
index = e.Cell.Row.Index;
#region 可编制量
string rem_wt = e.Cell.Row.Cells["REM_WT"].Value.ToString();
string rem_num = e.Cell.Row.Cells["REM_NUM"].Value.ToString();
string rem_len = e.Cell.Row.Cells["REM_TOTL_LEN"].Value.ToString();
#endregion
#region 编制量
string edi_wt = e.Cell.Row.Cells["EDI_WT_C"].Value.ToString();
string edi_num = e.Cell.Row.Cells["EDI_NUM_C"].Value.ToString();
string edi_len = e.Cell.Row.Cells["EDI_TOTL_LEN_C"].Value.ToString();
#endregion
if (edi_wt == "")
{
edi_wt = "0";
e.Cell.Row.Cells["EDI_WT_C"].Value = "0";
}
if (e.Cell.Column.Key.Equals("EDI_WT_C"))
{
if (Convert.ToDouble(rem_wt) < Convert.ToDouble(edi_wt))
{
MessageUtil.ShowTips("编制量不能大于可编制量,请重新输入!");
e.Cell.Row.Cells["EDI_WT_C"].Value = "0";
return;
}
}
//foreach (UltraGridRow row in ultraGrid2.Rows)
//{
// if (row.HasChild())
// {
// double planCont = 0;
// double planWt = 0;
// double planLen = 0;
// foreach (UltraGridRow crow in row.ChildBands[0].Rows)
// {
// if (Convert.ToBoolean(crow.Cells["CHOOSE"].Text) == true)
// {
// planCont += Double.Parse(crow.Cells["EDI_NUM_C"].Value.ToString());
// planWt += Double.Parse(crow.Cells["EDI_WT_C"].Value.ToString());
// planLen += Double.Parse(crow.Cells["EDI_TOTL_LEN_C"].Value.ToString());
// }
// }
// row.Cells["EDI_NUM"].Value = planCont.ToString();
// row.Cells["EDI_WT"].Value = planWt.ToString();
// row.Cells["EDI_TOTL_LEN"].Value = planLen.ToString();
// }
//}
}
}
private void frmPipeStow_Shown(object sender, EventArgs e)
{
toolMenu.Toolbars[0].Tools["Delete"].InstanceProps.Visible = DefaultableBoolean.False;
toolMenu.Toolbars[0].Tools["Down"].InstanceProps.Visible = DefaultableBoolean.False;
}
private void ultraTabControl1_SelectedTabChanged(object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e)
{
if (toolMenu == null) return;
if (e.Tab.TabControl.SelectedTab.Key.Equals("0"))
{
toolMenu.Toolbars[0].Tools["Delete"].InstanceProps.Visible = DefaultableBoolean.False;
toolMenu.Toolbars[0].Tools["Down"].InstanceProps.Visible = DefaultableBoolean.False;
toolMenu.Toolbars[0].Tools["Add"].InstanceProps.Visible = DefaultableBoolean.True;
PlanDay.Visible = false;
EndTime.Visible = false;
label1.Visible = false;
chkDate.Visible = false;
chkYearMatch.Visible = true;
cmbYear.Visible = true;
cmbMonth.Visible = true;
ChcStatus.Visible = false;
ComStatus.Visible = false;
}
else
{
toolMenu.Toolbars[0].Tools["Delete"].InstanceProps.Visible = DefaultableBoolean.True;
toolMenu.Toolbars[0].Tools["Down"].InstanceProps.Visible = DefaultableBoolean.True;
toolMenu.Toolbars[0].Tools["Add"].InstanceProps.Visible = DefaultableBoolean.False;
PlanDay.Visible = true;
EndTime.Visible = true;
label1.Visible = true;
chkDate.Visible = true;
chkYearMatch.Visible = false;
cmbYear.Visible = false;
cmbMonth.Visible = false;
ChcStatus.Visible = true;
ComStatus.Visible = true ;
}
}
private void ultraGrid2_AfterRowActivate(object sender, EventArgs e)
{
//if (index != -1)
//{
// if (ultraGrid1.ActiveRow.HasParent())
// {
// //ultraGrid1.ActiveRow.ParentRow.ChildBands[0].Rows[index].Activate();
// UltraGridCell cell = ultraGrid1.ActiveRow.ParentRow.ChildBands[0].Rows[index].Cells["PLAN_UNIT"];
// cell.Activate();
// cell.IsInEditMode = true;
// // = cell.Value.ToString().Length - 1;
// index = -1;
// }
//}
}
private void ultraGrid1_AfterSelectChange(object sender, AfterSelectChangeEventArgs e)
{
try
{
ultraGrid1.UpdateData();
foreach (UltraGridRow r in ultraGrid1.Rows)
{
r.Cells["CHK"].Value = r.Selected;
}
}
catch { }
}
}
}