FrmPlnOrdPriority.cs 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372
  1. using com.steering.pss.plnsaleord.order.model;
  2. using Core.Mes.Client.Comm;
  3. using Core.Mes.Client.Comm.Control;
  4. using Core.Mes.Client.Comm.Server;
  5. using Core.Mes.Client.Comm.Tool;
  6. using CoreFS.CA06;
  7. using Infragistics.Win.UltraWinEditors;
  8. using Infragistics.Win.UltraWinGrid;
  9. using System;
  10. using System.Collections;
  11. using System.Collections.Generic;
  12. using System.ComponentModel;
  13. using System.Data;
  14. using System.Drawing;
  15. using System.Linq;
  16. using System.Text;
  17. using System.Windows.Forms;
  18. namespace Core.StlMes.Client.PlnSaleOrd
  19. {
  20. public partial class FrmPlnOrdPriority : FrmBase
  21. {
  22. UltraComboEditor uceA = new UltraComboEditor();
  23. public FrmPlnOrdPriority()
  24. {
  25. this.IsLoadUserView = true;
  26. InitializeComponent();
  27. //System.Threading.Thread t = new System.Threading.Thread(setGridColunmName);
  28. //t.Start();
  29. }
  30. private void setGridColunmName()
  31. {
  32. System.Threading.Thread.Sleep(3000);
  33. if (!this.IsDisposed)
  34. {
  35. Init();
  36. }
  37. }
  38. public override void ToolBar_Click(object sender, string ToolbarKey)
  39. {
  40. base.ToolBar_Click(sender, ToolbarKey);
  41. switch (ToolbarKey)
  42. {
  43. case "Query": //查询
  44. DoQuery(GetQueryCondition());
  45. break;
  46. case "ModifyPrio"://合同紧急度
  47. DoModifyPrio();
  48. break;
  49. case "RefresDate"://刷新加载数据
  50. RefresDate();
  51. DoQuery(GetQueryCondition());
  52. break;
  53. case"Export":
  54. exportData();
  55. break;
  56. case "Close": //关闭
  57. this.Close();
  58. break;
  59. }
  60. }
  61. private void exportData()
  62. {
  63. GridHelper.ulGridToExcel(ultraGridSaleOrder, "合同信息数据汇总");
  64. }
  65. private void FrmPlnOrdPriority_Load(object sender, EventArgs e)
  66. {
  67. comQueryPanelProdu1.ctrlForQueryPORDERSTATUS.Items.Add("1", "已接收");
  68. comQueryPanelProdu1.ctrlForQueryPORDERSTATUS.Items.Add("2", "已下发");
  69. comQueryPanelProdu1.ctrlForQueryPORDERSTATUS.Items.Add("3", "生产中");
  70. comQueryPanelProdu1.ctrlForQueryPORDERSTATUS.Items.Add("4", "生产完成");
  71. comQueryPanelProdu1.ctrlForQueryPORDERSTATUS.Items.Add("5", "缴库完成");
  72. comQueryPanelProdu1.ctrlForQueryPORDERSTATUS.SelectedIndex = 0;
  73. comQueryPanelProdu1.ultraComboFinishEditor.SelectedIndex = 0;
  74. comQueryPanelProdu1.checkBoxForReqPORDERSTATUS.Checked = false;
  75. comQueryPanelProdu1.checkBoxIsConfirm.Text = "未录入";
  76. comQueryPanelProdu1.checkBoxIsConfirm.Visible = true;
  77. comQueryPanelProdu1.ultraTextEditorAcceptNo.Value = "X" + DateTime.Now.ToString("yyyyMMdd");
  78. Init();
  79. timer1.Start();
  80. RefresDate();
  81. }
  82. private void Init()
  83. {
  84. EntityHelper.ShowGridCaption<PlnSaleOrderQueryEntity>(ultraGridSaleOrder.DisplayLayout.Bands[0]);
  85. this.Controls.Add(uceA);
  86. uceA.Visible = false;
  87. ultraGridSaleOrder.DisplayLayout.Bands[0].Columns["OrderAddDesc"].EditorComponent = ultraFileLook;
  88. ultraGridSaleOrder.DisplayLayout.Bands[0].Columns["OrderAddDesc"].ButtonDisplayStyle
  89. = Infragistics.Win.UltraWinGrid.ButtonDisplayStyle.Always;
  90. PlanComm.setGridActivation(this.ultraGridSaleOrder.DisplayLayout.Bands[0], "CHC", "Priority", "PriorityMemo");
  91. PlanComm.setGridDigitalCol(ultraGridSaleOrder.DisplayLayout.Bands[0], 7, 3,
  92. "OrderQtyD", "PlanWtD", "FinishWt", "planWtBegin", "PlanPMain", "Lengthmax", "Lengthmin");
  93. PlanComm.setGridDigitalCol(ultraGridSaleOrder.DisplayLayout.Bands[0], 5, 2,
  94. "Outdiameter", "Wallthick", "TotLenOneP", "LenRollMin", "LenRollMax",
  95. "HeightNkMin", "HeightNkMax", "LenToendMin", "LenToendMax",
  96. "LengthJg", "DimaterYlg", "HeightYlg", "HeightOrdMax", "HeightOrdMin",
  97. "AimWallthick", "RollLength", "ShrtLenRato", "LongLenRato");
  98. PlanComm.setGridDigitalCol(ultraGridSaleOrder.DisplayLayout.Bands[0], 5, 3,
  99. "AimLenEnd", "AimLenRoll", "SiglLen", "EndlenSpecstd", "DifrncLenMax",
  100. "AvgLenMin", "Longest", "Shortest", "ZOrderweight");
  101. PlanComm.setGridDigitalCol(ultraGridSaleOrder.DisplayLayout.Bands[0], 5, 0,
  102. "PlanNumD", "planNumBegin", "CutNumP", "ZOrdernum");
  103. PlanComm.setGridDigitalCol(ultraGridSaleOrder.DisplayLayout.Bands[0], 3, 6,
  104. "WeightPerM");
  105. PlanComm.setGridSummarySet(ultraGridSaleOrder, 0, "PlanNumD");
  106. PlanComm.setGridSummarySet(ultraGridSaleOrder, 3,
  107. "OrderQtyD", "PlanWtD", "FinishWt", "planWtBegin", "PlanPMain");
  108. }
  109. /// <summary>
  110. /// 刷新
  111. /// </summary>
  112. private void RefresDate()
  113. {
  114. DataTable tableBaseInfo = ServerHelper.GetData("com.steering.pss.plnsaleord.order.CorePlnSaleOrder.queryBaseinfoAll",
  115. new object[] { }, this.ob);
  116. if (tableBaseInfo != null)
  117. {
  118. //合同紧急度
  119. tableBaseInfo.DefaultView.RowFilter = "SORTCODE='2006'";
  120. DataTable dtPrior = tableBaseInfo.DefaultView.ToTable();
  121. if (dtPrior != null && dtPrior.Rows.Count > 0)
  122. {
  123. foreach(DataRow row in dtPrior.Rows)
  124. {
  125. DataRow newRow = dtPrior.NewRow();
  126. newRow["BASECODE"] = "";
  127. newRow["BASENAME"] = "";
  128. newRow["SORTCODE"] = "";
  129. dtPrior.Rows.Add(newRow);
  130. break;
  131. }
  132. uceA.DataSource = dtPrior;
  133. uceA.DisplayMember = "BASENAME";
  134. uceA.ValueMember = "BASECODE";
  135. ultraGridSaleOrder.DisplayLayout.Bands[0].Columns["Priority"].EditorComponent
  136. = uceA;
  137. ultraGridSaleOrder.DisplayLayout.Bands[0].Columns["Priority"].Style =
  138. Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
  139. }
  140. }
  141. }
  142. /// <summary>
  143. /// 获取查询条件信息
  144. /// </summary>
  145. /// <returns>查询条件信息</returns>
  146. private ArrayList GetQueryCondition()
  147. {
  148. ArrayList ary = new ArrayList();
  149. string strRollmonth = "";
  150. string strAcceptNo = "";//接收批次号
  151. string strOrderNo = ""; //合同号
  152. string strOrderStatus = ""; //合同状态
  153. string haveJg = ""; //是否有接箍
  154. string haveDj = ""; //是否有短节
  155. string isGpOrder = ""; //是否是管坯合同
  156. if (comQueryPanelProdu1.checkBoxHvJg.Checked)
  157. {
  158. haveJg = "1";
  159. }
  160. if (comQueryPanelProdu1.checkBoxHvDj.Checked)
  161. {
  162. haveDj = "1";
  163. }
  164. if (comQueryPanelProdu1.checkBoxisGp.Checked)
  165. {
  166. isGpOrder = "1";
  167. }
  168. if (comQueryPanelProdu1.checkBoxAcceptNo.Checked)
  169. {
  170. strAcceptNo = comQueryPanelProdu1.ultraTextEditorAcceptNo.Text.Trim();
  171. }
  172. if (comQueryPanelProdu1.checkBoxForReqORDER_NO.Checked)
  173. {
  174. strOrderNo = comQueryPanelProdu1.ctrlForQueryORDER_NO.Text.Trim();
  175. }
  176. if (comQueryPanelProdu1.checkBoxForReqPORDERSTATUS.Checked)
  177. {
  178. strOrderStatus = comQueryPanelProdu1.ctrlForQueryPORDERSTATUS.Value.ToString();
  179. }
  180. if (comQueryPanelProdu1.checkBoxRollMonth.Checked)
  181. {
  182. strRollmonth = comQueryPanelProdu1.ultraDateTimeRollMonth.DateTime.ToString("yyyy-MM");
  183. }
  184. ary.Add(strRollmonth);
  185. ary.Add(strAcceptNo);
  186. ary.Add(strOrderNo);
  187. ary.Add(strOrderStatus);
  188. ary.Add(haveJg);
  189. ary.Add(haveJg);
  190. ary.Add(haveDj);
  191. ary.Add(haveDj);
  192. ary.Add(isGpOrder);
  193. ary.Add(isGpOrder);
  194. return ary;
  195. }
  196. /// <summary>
  197. /// 查询
  198. /// </summary>
  199. private void DoQuery(ArrayList ary)
  200. {
  201. string strFinish = "";
  202. if (this.comQueryPanelProdu1.checkBoxFinish.Checked)
  203. {
  204. strFinish = comQueryPanelProdu1.ultraComboFinishEditor.Value.ToString();
  205. }
  206. this.slmPlnSaleordEntitybindingSource.DataSource = EntityHelper.GetData<PlnSaleOrderQueryEntity>(
  207. "com.steering.pss.plnsaleord.order.CorePlnOrdPriority.querySaleOrder",
  208. new object[] { ary, strFinish, comQueryPanelProdu1.checkBoxIsConfirm.Checked,this.CustomInfo.ToString2() }, this.ob);
  209. }
  210. /// <summary>
  211. /// 紧急度修改
  212. /// </summary>
  213. private void DoModifyPrio()
  214. {
  215. try
  216. {
  217. int defailNum = 0;
  218. string messageErr = "";
  219. this.ultraGridSaleOrder.UpdateData();
  220. ArrayList list = new ArrayList();
  221. IQueryable<UltraGridRow> checkRows = ultraGridSaleOrder.Rows.AsQueryable().Where("CHC = 'True'");
  222. if (checkRows.Count() == 0)
  223. {
  224. MessageUtil.ShowTips("未勾选任何合同!");
  225. return;
  226. }
  227. PlanComm.WaitFromOpen(this.Cursor);
  228. foreach (UltraGridRow uRow in checkRows)
  229. {
  230. ArrayList param = new ArrayList();
  231. DataTable dtStatus = ServerHelper.GetData("com.steering.pss.plnsaleord.order.CorePlnOrdPriority.querySaleStatus",
  232. new object[] { uRow.Cells["OrdLnDlyPk"].Value.ToString(), uRow.Cells["PlnDivideId"].Value.ToString() }, this.ob);
  233. if (dtStatus == null || dtStatus.Rows.Count <= 0)
  234. {
  235. defailNum++;
  236. messageErr = "未找到"+ uRow.Cells["OrderNoSeq"].Value.ToString() + "/"
  237. + uRow.Cells["DeliveryNo"].Value.ToString() + "的记录!";
  238. continue;
  239. }
  240. param.Add(uRow.Cells["Priority"].Value.ToString());
  241. param.Add(uRow.Cells["PriorityMemo"].Value.ToString());
  242. param.Add(uRow.Cells["OrdLnDlyPk"].Value.ToString());
  243. param.Add(uRow.Cells["PlnDivideId"].Value.ToString());
  244. param.Add(uRow.Cells["Priority"].Value.ToString());
  245. param.Add(uRow.Cells["PriorityMemo"].Value.ToString());
  246. param.Add(uRow.Cells["OrdLnDlyPk"].Value.ToString());
  247. param.Add(uRow.Cells["Priority"].Value.ToString());
  248. param.Add(uRow.Cells["PriorityMemo"].Value.ToString());
  249. param.Add(uRow.Cells["OrdLnDlyPk"].Value.ToString());
  250. param.Add(uRow.Cells["Priority"].Value.ToString());
  251. param.Add(uRow.Cells["PriorityMemo"].Value.ToString());
  252. param.Add(uRow.Cells["OrdLnDlyPk"].Value.ToString());
  253. param.Add(uRow.Cells["Priority"].Value.ToString());
  254. param.Add(uRow.Cells["PriorityMemo"].Value.ToString());
  255. param.Add(uRow.Cells["OrdLnDlyPk"].Value.ToString());
  256. list.Add(param);
  257. }
  258. if (list.Count == 0)
  259. {
  260. PlanComm.WaitFromColse(this.Cursor);
  261. MessageUtil.ShowTips("0条保存成功," + defailNum + "条保存失败。\n" + messageErr);
  262. return;
  263. }
  264. int succeed = ServerHelper.SetData("com.steering.pss.plnsaleord.order.CorePlnOrdPriority.savePlnOrdPriority",
  265. new object[] { list }, this.ob);
  266. PlanComm.WaitFromColse(this.Cursor);
  267. if (succeed > 0)
  268. {
  269. if (defailNum == 0)
  270. {
  271. MessageUtil.ShowTips("保存成功,共" + list.Count + "条。");
  272. }
  273. else
  274. {
  275. MessageUtil.ShowTips(list.Count + "条保存成功," + defailNum + "条保存失败。\n" + messageErr);
  276. }
  277. }
  278. }
  279. catch (Exception ex)
  280. {
  281. PlanComm.WaitFromColse(this.Cursor);
  282. if (!(ex is MESException))
  283. {
  284. MessageUtil.ShowError(ex.Message);
  285. }
  286. }
  287. DoQuery(GetQueryCondition());
  288. }
  289. private void ultraGridSaleOrder_KeyUp(object sender, KeyEventArgs e)
  290. {
  291. PlanComm.setGridCopyActColumn(this.ultraGridSaleOrder, "CHC", e,
  292. "Priority", "PriorityMemo");
  293. }
  294. private void ultraGridSaleOrder_AfterSelectChange(object sender, AfterSelectChangeEventArgs e)
  295. {
  296. foreach (UltraGridRow uRow in ultraGridSaleOrder.Selected.Rows)
  297. {
  298. if (uRow.GetType() != typeof(Infragistics.Win.UltraWinGrid.UltraGridGroupByRow))
  299. {
  300. uRow.Cells["CHC"].Value = true;
  301. }
  302. }
  303. }
  304. /// <summary>
  305. /// 查看附加要求贴图
  306. /// </summary>
  307. /// <param name="sender"></param>
  308. /// <param name="e"></param>
  309. private void ultraFileLook_EditorButtonClick(object sender,
  310. Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e)
  311. {
  312. try
  313. {
  314. UltraGridRow ugr = ultraGridSaleOrder.ActiveRow;
  315. if (ugr == null)
  316. {
  317. return;
  318. }
  319. string askNo = ugr.Cells["AddAskNo"].Value.ToString();
  320. ArrayList listPIC = new ArrayList();
  321. DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.order.CorePlnSaleOrder.queryAddAsk",
  322. new object[] { askNo }, this.ob);
  323. if (dt != null && dt.Rows.Count > 0)
  324. {
  325. foreach (DataRow dr in dt.Rows)
  326. {
  327. listPIC.Add(dr["PIC"].ToString());
  328. }
  329. }
  330. dlgOrderAskLook orderAsk = new dlgOrderAskLook(this.ob, listPIC);
  331. orderAsk.Show();
  332. }
  333. catch (Exception ex)
  334. {
  335. if (!(ex is MESException))
  336. {
  337. MessageBox.Show(ex.Message);
  338. }
  339. }
  340. }
  341. private void timer1_Tick(object sender, EventArgs e)
  342. {
  343. Init();
  344. }
  345. }
  346. }