frmPipeCarLeavePlan.cs 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using CoreFS.CA06;
  10. using Core.StlMes.Client.YdmBase;
  11. using Core.Mes.Client.Comm.Server;
  12. using Core.Mes.Client.Comm.Control;
  13. using Infragistics.Win.UltraWinGrid;
  14. using System.Collections;
  15. using Core.StlMes.Client.PipeLeaveFactory.YdmObject;
  16. using Core.Mes.Client.Comm.Format;
  17. using Infragistics.Win;
  18. using Core.Mes.Client.Comm.Tool;
  19. using Core.StlMes.Client.PipeLeaveFactory.Tool;
  20. namespace Core.StlMes.Client.PipeLeaveFactory
  21. {
  22. public partial class frmPipeCarLeavePlan : FrmBase
  23. {
  24. /// <summary>
  25. /// 用户销售组织权限
  26. /// </summary>
  27. private string[] _salgPermissions = null;
  28. private int index = -1;
  29. public frmPipeCarLeavePlan()
  30. {
  31. InitializeComponent();
  32. this.IsLoadUserView = true;
  33. }
  34. /// <summary>
  35. /// 重写基类方法
  36. /// </summary>
  37. /// <param name="sender"></param>
  38. /// <param name="ToolbarKey"></param>
  39. public override void ToolBar_Click(object sender, string ToolbarKey)
  40. {
  41. switch (ToolbarKey)
  42. {
  43. case "Query":
  44. DoQuery();
  45. break;
  46. case "Save":
  47. DoSave();
  48. break;
  49. case "Delete":
  50. DoDelete();
  51. break;
  52. case "Down"://下发
  53. DoDown();
  54. break;
  55. case "Refresh":
  56. DoRefresh();
  57. break;
  58. case "Export":
  59. if (ultraTabControl1.SelectedTab.Key.Equals("0"))
  60. {
  61. GridHelper.ulGridToExcel(ultraGrid1, "可发货资源信息");
  62. }
  63. else
  64. {
  65. GridHelper.ulGridToExcel(ultraGrid2, "发货出厂计划信息");
  66. }
  67. break;
  68. case "Close":
  69. this.Close();
  70. break;
  71. }
  72. }
  73. string planno = "";
  74. private void frmPipeCarLeavePlan_Load(object sender, EventArgs e)
  75. {
  76. _salgPermissions = BaseHelper.InitPermissions(this.ValidDataPurviewIds, this.ob
  77. );
  78. BaseHelper.setOtherColumnReadOnly(ultraGrid3, new string[] { "CHC", "PLAN_COUNT" });
  79. BaseHelper.InitCellPosition(ultraGrid1, new string[] { "DELVRY_QTY", "PLAN_NUM", "PAYDOWN_NUM", "PREP_WT", "BEEN_WT", "PAYDOWN_COUNT", "STORAGE_METER", "STORAGE_UNIT", "PLAN_COUNT", "SEND_COUNT", "PLANWEIGHT", "STORAGE_COUNT" });
  80. BaseHelper.InitCellPosition(ultraGrid3, new string[] { "DELVRY_QTY", "PREP_WT", "BEEN_WT", "PAYDOWN_NUM", "PLAN_NUM", "PAYDOWNWEIGHT", "PLAN_COUNT", "NOTSEND_COUNT", "SEND_COUNT", "PLANWEIGHT", "STORAGE_METER", "STORAGE_UNIT", "STORAGE_COUNT" });
  81. BaseHelper.setOtherColumnReadOnly(ultraGrid1, new string[] { "CHC" });
  82. BaseHelper.setUltraGridColumnColor(ultraGrid3, new string[] { "PLAN_COUNT" }, Color.FromArgb(255, 255, 128));
  83. BaseHelper.InitCellPosition(ultraGrid2, new string[] { "PLAN_WT", "PLAN_NUM"});
  84. BaseHelper.InitCellPosition(ultraGrid4, new string[] { "PLAN_WT", "PLAN_NUM" });
  85. ComboYear.Value = DateTime.Now.Year.ToString();
  86. ComboMonth.Value = string.Format("{0:00}", DateTime.Now.Month);
  87. BaseHelper.InitMonth(ComMonth1);
  88. BaseHelper.InitYear(ComYear1);
  89. BaseHelper.InitMonth(ComboMonth);
  90. BaseHelper.InitYear(ComboYear);
  91. ComYear1.Value = DateTime.Now.Year.ToString();
  92. ComMonth1.Value = string.Format("{0:00}", DateTime.Now.Month);
  93. ComboYear.Value = DateTime.Now.Year.ToString();
  94. ComboMonth.Value = string.Format("{0:00}", DateTime.Now.Month);
  95. BaseHelper.InitOrderUnit(cmbCustomer, _salgPermissions, this.ob);
  96. BaseHelper.InitOrderUnit(ComRevice, _salgPermissions, this.ob);
  97. GetDateTime();
  98. InitSenPlanStatus();
  99. }
  100. /// <summary>
  101. /// 计划开始结束时间
  102. /// </summary>
  103. private void GetDateTime()
  104. {
  105. //DateTime now = DateTime.Parse(DelvryTime.Value.ToString());
  106. //DateTime d1 = new DateTime(now.Year, now.Month, 1);
  107. DateTime d1 = new DateTime(ComboYear.Value == null ? DateTime.Now.Year : Convert.ToInt32(ComboYear.Value.ToString()), ComboMonth.Value == null ? DateTime.Now.Month : Convert.ToInt32(ComboMonth.Value.ToString()), 1);
  108. DateTime d2 = d1.AddMonths(1).AddSeconds(-1);
  109. PlanStartTime.Value = d1.ToString("yyyy-MM-dd");
  110. PlanEndTime.Value = d2.ToString("yyyy-MM-dd");
  111. }
  112. //刷新
  113. private void DoRefresh()
  114. {
  115. BaseHelper.InitOrderUnit(cmbCustomer, _salgPermissions, this.ob);
  116. BaseHelper.InitOrderUnit(ComRevice, _salgPermissions, this.ob);
  117. }
  118. private ArrayList QueryUnitCondtion()
  119. {
  120. ArrayList param = new ArrayList();
  121. string starttime = "1900-01-01";
  122. string endtime = "2999-01-01";
  123. DateTime d1 = new DateTime(Convert.ToInt32(ComboYear.Value.ToString()), Convert.ToInt32(ComboMonth.Value.ToString()), 1);
  124. DateTime d2 = d1.AddMonths(1).AddSeconds(-1);
  125. string custnm = "";
  126. if (chkCustomer.Checked)
  127. {
  128. custnm = cmbCustomer.Text.Trim();
  129. }
  130. if (ChcDelivryTime.Checked)
  131. {
  132. starttime = d1.ToString("yyyy-MM-dd");
  133. endtime = d2.ToString("yyyy-MM-dd");
  134. }
  135. string orderNo = "";
  136. if (ChcOrderNo.Checked)
  137. {
  138. orderNo = TxtOrderNo.Text.Trim();
  139. }
  140. param.Add(custnm);
  141. param.Add(starttime);
  142. param.Add(endtime);
  143. param.Add(orderNo);
  144. return param;
  145. }
  146. private void QueryUnit()
  147. {
  148. ArrayList param = QueryUnitCondtion();
  149. DataTable dt = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.CorePipeLeaveFactory.queryOrderInfo", new object[] { param, this.ValidDataPurviewIds }, this.ob);
  150. GridHelper.CopyDataToDatatable(ref dt, ref dataTable1, true);
  151. if (dt == null || dt.Rows.Count == 0)
  152. {
  153. GridHelper.ClearGridDataSourceData(ultraGrid3);
  154. }
  155. }
  156. private void QueryOrder(string custNo, string reciveNo, string salg, string deptId, string beginTime, string endTime,string orderNo)
  157. {
  158. ArrayList param = new ArrayList();
  159. param.Add(custNo);
  160. param.Add(reciveNo);
  161. param.Add(salg);
  162. param.Add(deptId);
  163. param.Add(beginTime);
  164. param.Add(endTime);
  165. param.Add(orderNo);
  166. DataTable cdt = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.CorePipeLeaveFactory.queryChildOrderInfo", new object[] { param }, this.ob);
  167. GridHelper.CopyDataToDatatable(ref cdt, ref dataTable2, true);
  168. }
  169. private void ultraGrid1_AfterRowActivate(object sender, EventArgs e)
  170. {
  171. UltraGridRow ugr = ultraGrid1.ActiveRow;
  172. if (ugr == null)
  173. {
  174. return;
  175. }
  176. string custNo = ugr.Cells["CUSTOMER_NO"].Text;
  177. string reciveNo = ugr.Cells["RECEIV_NO"].Text;
  178. string salg = ugr.Cells["SALE_ORG"].Text;
  179. string dept = ugr.Cells["CREATE_DEPT"].Text;
  180. string starttime = "1900-01-01";
  181. string endtime = "2999-01-01";
  182. DateTime d1 = new DateTime(Convert.ToInt32(ComboYear.Value.ToString()), Convert.ToInt32(ComboMonth.Value.ToString()), 1);
  183. DateTime d2 = d1.AddMonths(1).AddSeconds(-1);
  184. if (ChcDelivryTime.Checked)
  185. {
  186. starttime = d1.ToString("yyyy-MM-dd");
  187. endtime = d2.ToString("yyyy-MM-dd");
  188. }
  189. string ordeNo = "";
  190. if (ChcOrderNo.Checked)
  191. {
  192. ordeNo=TxtOrderNo.Text.Trim();
  193. }
  194. QueryOrder(custNo, reciveNo, salg, dept, starttime, endtime, ordeNo);
  195. }
  196. /// <summary>
  197. /// 查询
  198. /// </summary>
  199. private void DoQuery()
  200. {
  201. if (ultraTabControl1.SelectedTab.Key.Equals("0"))
  202. {
  203. QueryUnit();
  204. }
  205. else
  206. {
  207. QuerySendM();
  208. }
  209. }
  210. private void QuerySendM()
  211. {
  212. ArrayList param = new ArrayList();
  213. string planTime = "";
  214. if (ChcPlanTime.Checked && ComYear1.Value != null && ComMonth1.Value != null) { planTime = ComYear1.Value.ToString() + ComMonth1.Value.ToString(); }
  215. string status = "";
  216. if (ChcStatus.Checked && ComStatus.Value != null) { status = ComStatus.Value.ToString(); }
  217. string ordeNo = "";
  218. if (ChcOrderNo1.Checked) { ordeNo = TxtOrderNo1.Text.Trim(); }
  219. string reciveNm = "";
  220. if (ChcRevice.Checked) { reciveNm = ComRevice.Text.Trim(); }
  221. param.Add(planTime);
  222. param.Add(status);
  223. param.Add(ordeNo);
  224. param.Add(reciveNm);
  225. DataTable dt = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.CorePipeLeaveFactory.querySendPlanM", new object[] { param, this.ValidDataPurviewIds }, this.ob);
  226. GridHelper.CopyDataToDatatable(ref dt, ref dataTable3, true);
  227. if (dt == null || dt.Rows.Count == 0)
  228. {
  229. GridHelper.ClearGridDataSourceData(ultraGrid4);
  230. }
  231. }
  232. private void QuerySendC(string sendPlanNo)
  233. {
  234. DataTable dtc = ServerHelper.GetData("com.steering.pss.ydm.pipeleavefactory.CorePipeLeaveFactory.querySendPlanC", new string[] { sendPlanNo }, this.ob);
  235. GridHelper.CopyDataToDatatable(ref dtc, ref dataTable4, true);
  236. }
  237. /// <summary>
  238. /// 新增
  239. /// </summary>
  240. private void DoSave()
  241. {
  242. ultraGrid3.UpdateData();
  243. UltraGridRow ugrUnit = ultraGrid1.ActiveRow;
  244. IQueryable<UltraGridRow> ugrOrders = ultraGrid3.Rows.AsQueryable().Where(" CHC = 'True'");
  245. if (ugrUnit == null || ugrOrders.Count() == 0)
  246. {
  247. MessageUtil.ShowTips("请选择新增计划的合同!");
  248. return;
  249. }
  250. double totalwt = 0;
  251. double totalnum = 0;
  252. double totallen = 0;
  253. ArrayList baseData = new ArrayList();
  254. ArrayList childData = new ArrayList();
  255. string _ordLnDlyPk = "";
  256. foreach (UltraGridRow ugr in ugrOrders)
  257. {
  258. YdmZcSendplanCEntity comc = GetChildData(ugr);
  259. if (comc == null)
  260. {
  261. return;
  262. }
  263. if (comc.PlanNum != "")
  264. {
  265. totalnum += Convert.ToDouble(comc.PlanNum);
  266. }
  267. if (comc.PlanTotlLen != "")
  268. {
  269. totallen += Convert.ToDouble(comc.PlanTotlLen);
  270. }
  271. if (comc.PlanWt != "")
  272. {
  273. totalwt += Convert.ToDouble(comc.PlanWt);
  274. }
  275. _ordLnDlyPk = comc.OrdLnDlyPk.ToString();
  276. childData.Add(JSONFormat.Format(comc));
  277. }
  278. YdmZcSendplanMEntity ydm = GetBaseData(ugrUnit);
  279. if (ydm == null)
  280. {
  281. return;
  282. }
  283. ydm.SendPlanNo = planno;
  284. ydm.PlanWt = totalwt.ToString();
  285. ydm.PlanNum = totalnum.ToString();
  286. ydm.PlanTotlLen = totallen.ToString();
  287. baseData.Add(JSONFormat.Format(ydm));
  288. if (MessageBox.Show("是否保存新增计划?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
  289. {
  290. return;
  291. }
  292. if (baseData.Count > 0 || childData.Count > 0)
  293. {
  294. CoreClientParam ccp = new CoreClientParam();
  295. ccp.ServerName = "com.steering.pss.ydm.pipeleavefactory.CorePipeLeaveFactory";
  296. ccp.MethodName = "saveYdmSendPlan";
  297. ccp.ServerParams = new object[] { baseData, childData };
  298. ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  299. if (ccp.ReturnCode == -1) return;
  300. MessageBox.Show("新增计划成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.None);
  301. string starttime = "1900-01-01";
  302. string endtime = "2999-01-01";
  303. DateTime d1 = new DateTime(Convert.ToInt32(ComboYear.Value.ToString()), Convert.ToInt32(ComboMonth.Value.ToString()), 1);
  304. DateTime d2 = d1.AddMonths(1).AddSeconds(-1);
  305. if (ChcDelivryTime.Checked)
  306. {
  307. starttime = d1.ToString("yyyy-MM-dd");
  308. endtime = d2.ToString("yyyy-MM-dd");
  309. }
  310. string ordeNo = "";
  311. if (ChcOrderNo.Checked)
  312. {
  313. ordeNo = TxtOrderNo.Text.Trim();
  314. }
  315. QueryOrder(ydm.CustomerNo, ydm.ReceivNo, ydm.SaleOrg, ydm.ManagementNo, starttime, endtime, ordeNo);
  316. foreach (UltraGridRow ugr in ultraGrid3.Rows)
  317. {
  318. if (ugr.Cells["ORD_LN_DLY_PK"].Text.Equals(_ordLnDlyPk))
  319. {
  320. ugr.Activate();
  321. }
  322. }
  323. }
  324. }
  325. /// <summary>
  326. /// 新增主记录数据
  327. /// </summary>
  328. /// <param name="ugr">父行</param>
  329. /// <returns>返回值</returns>
  330. private YdmZcSendplanMEntity GetBaseData(UltraGridRow ugr)
  331. {
  332. YdmZcSendplanMEntity com = new YdmZcSendplanMEntity();
  333. com.SaleOrg = ugr.Cells["SALE_ORG"].Value.ToString();
  334. com.SaleOrgDesc = ugr.Cells["SALE_ORG_DESC"].Value.ToString();
  335. com.CustomerNo = ugr.Cells["CUSTOMER_NO"].Value.ToString();
  336. com.CustomerNm = ugr.Cells["CUSTOMER_NM"].Value.ToString();
  337. com.ReceivNo = ugr.Cells["RECEIV_NO"].Value.ToString();
  338. com.ReceivNm = ugr.Cells["RECEIV_NM"].Value.ToString();
  339. com.PlanStartTime = DateTime.Parse(PlanStartTime.Value.ToString()).ToString("yyyy-MM-dd HH:mm:ss");
  340. com.PlanEndTime = DateTime.Parse(PlanEndTime.Value.ToString()).ToString("yyyy-MM-dd HH:mm:ss");
  341. com.ManagementNo = ugr.Cells["CREATE_DEPT"].Value.ToString();
  342. com.ManagementName = ugr.Cells["DEPARTNAME"].Value.ToString();
  343. com.DepartmentDesc = ClsBaseInfo.GetDepartBySectionId(com.ManagementNo, ob);
  344. com.DepartmentCode = ClsBaseInfo.GetDepartIdBySectionId(com.ManagementNo, ob);
  345. if (Convert.ToDateTime(com.PlanStartTime) > Convert.ToDateTime(com.PlanEndTime))
  346. {
  347. MessageUtil.ShowTips("计划结束时间不能早于计划开始时间!");
  348. return null;
  349. }
  350. com.PlanYearMonth = ComboYear.Value.ToString() + ComboMonth.Value.ToString();
  351. com.CreateName = this.UserInfo.GetUserName();
  352. com.UpdateName = this.UserInfo.GetUserName();
  353. return com;
  354. }
  355. /// <summary>
  356. /// 新增子记录数据
  357. /// </summary>
  358. /// <param name="ugr">父行</param>
  359. /// <returns>返回值</returns>
  360. private YdmZcSendplanCEntity GetChildData(UltraGridRow ugr)
  361. {
  362. #region 计划量
  363. string planwt = ugr.Cells["PLAN_COUNT"].Value.ToString();
  364. #endregion
  365. if (planwt == "")
  366. {
  367. MessageUtil.ShowWarning("请输入计划量!");
  368. return null;
  369. }
  370. if (planwt == "0")
  371. {
  372. MessageUtil.ShowWarning("计划量不能零!");
  373. ugr.Cells["CHC"].Value = false;
  374. return null;
  375. }
  376. YdmZcSendplanCEntity com = new YdmZcSendplanCEntity();
  377. string sale = ugr.Cells["SALE_ORG"].Value.ToString();
  378. string salecode = "";
  379. switch (sale)
  380. {
  381. case "100101":
  382. salecode = "X";
  383. break;
  384. case "100102":
  385. salecode = "M";
  386. break;
  387. case "100103":
  388. salecode = "G";
  389. break;
  390. default:
  391. break;
  392. }
  393. string Daytime = DateTime.Now.ToString("yyMM") + "00";
  394. //com.SendPlanNo = salecode + "2" + "D" + Monthtime;
  395. com.OrderNo = ugr.Cells["ORDER_NO"].Value.ToString();
  396. com.OrderSeq = ugr.Cells["ORDER_SEQ"].Value.ToString();
  397. com.DeliveryNo = ugr.Cells["DELIVERY_NO"].Value.ToString();
  398. //com.SendPlanNo = com.OrderNo + "," + salecode + "2" + "M" + Daytime + "," + com.OrderSeq + "";
  399. com.SendPlanNo = salecode + "2" + "M" + Daytime;
  400. planno = com.SendPlanNo;
  401. com.Produccode = ugr.Cells["PRODUCCODE"].Value.ToString();
  402. com.Producname = ugr.Cells["PRODUCNAME"].Value.ToString();
  403. com.PrdCls = ugr.Cells["PRD_CLS"].Value.ToString();
  404. com.Psc = ugr.Cells["PSC"].Value.ToString();
  405. com.PscDesc = ugr.Cells["PSC_DESC"].Value.ToString();
  406. com.SpecCode = ugr.Cells["SPEC_CODE"].Value.ToString();
  407. com.SpecName = ugr.Cells["SPEC_NAME"].Value.ToString();
  408. com.LenNo = ugr.Cells["LEN_NO"].Value.ToString();
  409. com.LenDesc = ugr.Cells["LEN_DESC"].Value.ToString();
  410. com.PlanWt = planwt;
  411. com.PlanNum = "";
  412. com.PlanTotlLen = "";
  413. com.CreateName = this.UserInfo.GetUserName();
  414. com.UpdateName = this.UserInfo.GetUserName();
  415. com.OrdPk = ugr.Cells["ORD_PK"].Value.ToString();
  416. com.OrdLnPk = ugr.Cells["ORD_LN_PK"].Value.ToString();
  417. com.OrdLnDlyPk = ugr.Cells["ORD_LN_DLY_PK"].Value.ToString();
  418. com.DelvryBdate = ugr.Cells["DELVRY_BDATE"].Value.ToString();
  419. com.DelvryEdate = ugr.Cells["DELVRY_EDATE"].Value.ToString();
  420. return com;
  421. }
  422. /// <summary>
  423. /// 作废
  424. /// </summary>
  425. private void DoDelete()
  426. {
  427. ultraGrid2.UpdateData();
  428. ArrayList param = new ArrayList();
  429. IQueryable<UltraGridRow> ugrs = ultraGrid2.Rows.AsQueryable().Where(" CHC = 'True'");
  430. if (ugrs == null || ugrs.Count() == 0)
  431. {
  432. MessageUtil.ShowTips("请选择需要撤销的计划号!");
  433. return;
  434. }
  435. string sendPlanNo = "";
  436. foreach (UltraGridRow ugr in ugrs)
  437. {
  438. param.Add(ugr.Cells["SEND_PLAN_NO"].Text);
  439. sendPlanNo = ugr.Cells["SEND_PLAN_NO"].Text;
  440. }
  441. if (MessageBox.Show("是否撤销计划?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No) return;
  442. CoreClientParam ccp = new CoreClientParam();
  443. ccp.ServerName = "com.steering.pss.ydm.pipeleavefactory.CorePipeLeaveFactory";
  444. ccp.MethodName = "deltePlanSend";
  445. ccp.ServerParams = new object[] { param, UserInfo.GetUserName() };
  446. ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  447. if (ccp.ReturnCode != -1)
  448. {
  449. MessageUtil.ShowTips(ccp.ReturnInfo);
  450. if (ccp.ReturnInfo.Equals("撤销计划成功!"))
  451. {
  452. QuerySendM();
  453. foreach (UltraGridRow ugr in ultraGrid2.Rows)
  454. {
  455. if (ugr.Cells["SEND_PLAN_NO"].Text.Equals(sendPlanNo))
  456. {
  457. ugr.Activate();
  458. }
  459. }
  460. }
  461. }
  462. }
  463. /// <summary>
  464. /// 下发
  465. /// </summary>
  466. private void DoDown()
  467. {
  468. ultraGrid2.UpdateData();
  469. ArrayList param = new ArrayList();
  470. IQueryable<UltraGridRow> ugrs = ultraGrid2.Rows.AsQueryable().Where(" CHC = 'True'");
  471. if (ugrs == null || ugrs.Count() == 0)
  472. {
  473. MessageUtil.ShowTips("请选择需要下发的计划号!");
  474. return;
  475. }
  476. string sendPlanNo = "";
  477. foreach (UltraGridRow ugr in ugrs)
  478. {
  479. param.Add(ugr.Cells["SEND_PLAN_NO"].Text);
  480. sendPlanNo = ugr.Cells["SEND_PLAN_NO"].Text;
  481. }
  482. if (MessageBox.Show("是否下发计划?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No) return;
  483. CoreClientParam ccp = new CoreClientParam();
  484. ccp.ServerName = "com.steering.pss.ydm.pipeleavefactory.CorePipeLeaveFactory";
  485. ccp.MethodName = "doDown";
  486. ccp.ServerParams = new object[] { param, UserInfo.GetUserName() };
  487. ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  488. if (ccp.ReturnCode != -1)
  489. {
  490. MessageUtil.ShowTips(ccp.ReturnInfo);
  491. if (ccp.ReturnInfo.Equals("下发计划成功!"))
  492. {
  493. QuerySendM();
  494. foreach (UltraGridRow ugr in ultraGrid2.Rows)
  495. {
  496. if (ugr.Cells["SEND_PLAN_NO"].Text.Equals(sendPlanNo))
  497. {
  498. ugr.Activate();
  499. }
  500. }
  501. }
  502. }
  503. }
  504. private void frmPipeStow_Shown(object sender, EventArgs e)
  505. {
  506. toolMenu.Toolbars[0].Tools["Delete"].InstanceProps.Visible = DefaultableBoolean.False;
  507. toolMenu.Toolbars[0].Tools["Down"].InstanceProps.Visible = DefaultableBoolean.False;
  508. }
  509. private void ultraTabControl1_SelectedTabChanged(object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e)
  510. {
  511. if (toolMenu == null) return;
  512. if (e.Tab.TabControl.SelectedTab.Key.Equals("0"))
  513. {
  514. toolMenu.Toolbars[0].Tools["Delete"].InstanceProps.Visible = DefaultableBoolean.False;
  515. toolMenu.Toolbars[0].Tools["Down"].InstanceProps.Visible = DefaultableBoolean.False;
  516. toolMenu.Toolbars[0].Tools["Save"].InstanceProps.Visible = DefaultableBoolean.True;
  517. }
  518. else
  519. {
  520. toolMenu.Toolbars[0].Tools["Delete"].InstanceProps.Visible = DefaultableBoolean.True;
  521. toolMenu.Toolbars[0].Tools["Down"].InstanceProps.Visible = DefaultableBoolean.True;
  522. toolMenu.Toolbars[0].Tools["Save"].InstanceProps.Visible = DefaultableBoolean.False;
  523. }
  524. }
  525. /// <summary>
  526. /// 交货日期更改事件
  527. /// </summary>
  528. /// <param name="sender"></param>
  529. /// <param name="e"></param>
  530. private void DelvryTime_ValueChanged(object sender, EventArgs e)
  531. {
  532. GetDateTime();
  533. }
  534. /// <summary>
  535. /// 初始化状态
  536. /// </summary>
  537. private void InitSenPlanStatus()
  538. {
  539. DataTable dt = new DataTable();
  540. dt.Columns.Add("CODE");
  541. dt.Columns.Add("NAME");
  542. DataRow dr0 = dt.NewRow();
  543. dr0["CODE"] = "0";
  544. dr0["NAME"] = "编辑";
  545. dt.Rows.Add(dr0);
  546. DataRow dr1 = dt.NewRow();
  547. dr1["CODE"] = "1";
  548. dr1["NAME"] = "下发";
  549. dt.Rows.Add(dr1);
  550. DataRow dr2 = dt.NewRow();
  551. dr2["CODE"] = "2";
  552. dr2["NAME"] = "执行";
  553. dt.Rows.Add(dr2);
  554. DataRow dr3 = dt.NewRow();
  555. dr3["CODE"] = "3";
  556. dr3["NAME"] = "关闭";
  557. dt.Rows.Add(dr3);
  558. ComStatus.DataSource = dt;
  559. ComStatus.DisplayMember = "NAME";
  560. ComStatus.ValueMember = "CODE";
  561. ComStatus.SelectedIndex = 0;
  562. }
  563. private void ultraGrid3_CellChange(object sender, CellEventArgs e)
  564. {
  565. if (e.Cell.Row.Cells["PLAN_COUNT"].Value == null)
  566. {
  567. e.Cell.Row.Cells["PLAN_COUNT"].Value = e.Cell.Row.Cells["PREP_WT"].Value.ToString();
  568. return;
  569. }
  570. else
  571. {
  572. ultraGrid3.UpdateData();
  573. string planCount = e.Cell.Row.Cells["PLAN_COUNT"].Value.ToString();
  574. string prepWt = e.Cell.Row.Cells["PREP_WT"].Value.ToString();
  575. if (!StringUtil.IsNumber(planCount))
  576. {
  577. e.Cell.Row.Cells["PLAN_COUNT"].Value = e.Cell.Row.Cells["PREP_WT"].Value.ToString();
  578. return;
  579. }
  580. if (Convert.ToDouble(planCount) > Convert.ToDouble(prepWt))
  581. {
  582. e.Cell.Row.Cells["PLAN_COUNT"].Value = e.Cell.Row.Cells["PREP_WT"].Value.ToString();
  583. return;
  584. }
  585. }
  586. }
  587. private void Chc_CheckedChanged(object sender, EventArgs e)
  588. {
  589. if (ChcPlanTime.Checked) { ComYear1.Enabled = true; ComMonth1.Enabled = true; } else { ComYear1.Enabled = false; ComMonth1.Enabled = false; }
  590. if (ChcRevice.Checked) { ComRevice.Enabled = true; } else { ComRevice.Enabled = false; }
  591. if (ChcStatus.Checked) { ComStatus.Enabled = true; } else { ComStatus.Enabled = false; }
  592. if (ChcOrderNo1.Checked) { TxtOrderNo1.Enabled = true; } else { TxtOrderNo1.Enabled = false; }
  593. if (ChcDelivryTime.Checked) { ComboYear.Enabled = true; ComboMonth.Enabled = true; } else { ComboYear.Enabled = false; ComboMonth.Enabled = false; }
  594. if (chkCustomer.Checked) { cmbCustomer.Enabled = true; } else { cmbCustomer.Enabled = false; }
  595. if (ChcOrderNo.Checked) { TxtOrderNo.Enabled = true; } else { TxtOrderNo.Enabled = false; }
  596. }
  597. private void ultraGrid2_AfterRowActivate(object sender, EventArgs e)
  598. {
  599. UltraGridRow ugr = ultraGrid2.ActiveRow;
  600. if (ugr == null)
  601. {
  602. return;
  603. }
  604. QuerySendC(ugr.Cells["SEND_PLAN_NO"].Text.Trim());
  605. }
  606. }
  607. }