FrmPurClause.cs 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740
  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;using Pur.Entity;
  10. using com.hnshituo.pur.vo;
  11. using Pur.configure;
  12. using Pur.require_plan;
  13. using Core.Mes.Client.Comm.Control;
  14. using System.Text.RegularExpressions;
  15. using Infragistics.Win.UltraWinEditors;
  16. using System.Collections;
  17. using System.Web.UI.WebControls;
  18. using Pur.Pop_upWindow;
  19. namespace Pur.Balance
  20. {
  21. public partial class FrmPurClause : FrmPmsBase
  22. {
  23. public FrmPurClause()
  24. {
  25. InitializeComponent();
  26. }
  27. private void FrmPurClause_Load(object sender, EventArgs e)
  28. {
  29. clearEdtArea();
  30. preInit();
  31. QureyClauseM();
  32. }
  33. #region toolbar工具栏
  34. //toolbar工具栏加载
  35. public override void ToolBar_Click(object sender, string ToolBarKey)
  36. {
  37. switch (ToolBarKey)
  38. {
  39. case "Query"://查询主表数据
  40. QureyClauseM();
  41. //GetQueryPhysicWH();
  42. break;
  43. case "Add"://增加主表
  44. AddClauseM();
  45. break;
  46. case "Update"://修改主表
  47. EditClauseM();
  48. break;
  49. case "Delete"://删除主表
  50. DeleteClauseM();
  51. break;
  52. case "AddClauseC": //新增明细表
  53. AddClauseC();
  54. break;
  55. case "UpdateClauseC"://修改明细表
  56. EditClauseC();
  57. break;
  58. case "DeleteClauseC"://删除明细表
  59. DeleteClauseC();
  60. break;
  61. case "Close"://关闭窗口
  62. this.Close();
  63. break;
  64. }
  65. }
  66. #endregion
  67. #region 数据处理
  68. /// <summary>
  69. /// 查询主表数据
  70. /// </summary>
  71. private void QureyClauseM()
  72. {
  73. try
  74. {
  75. //获取查询区域数据
  76. string strBcmId = QBcmId.Text.ToString().Trim();
  77. string strBcmName = QBcmName.Text.ToString().Trim();
  78. //构建查询实体类
  79. BalanceClauseM bm = new BalanceClauseM();
  80. bm.BcmId = strBcmId;
  81. bm.BcmName = strBcmName;
  82. bm.Validflag = "1";
  83. //执行查询
  84. DataTable dt = this.execute<DataTable>("com.hnshituo.pur.balance.service.BalanceClauseMService", "doQueryClauseM", new object[] { bm });
  85. GridHelper.CopyDataToDatatable(ref dt, ref dataTable4, true);
  86. // QureyBasePriceM();
  87. // BalanceClassCommon.doActiveSelRow(ultraGrid1, "id", oldstrid);
  88. // BalanceClassCommon.doActiveSelRow(ultraGrid2, "id", strid);
  89. }
  90. catch (Exception ex)
  91. {
  92. MessageBox.Show("查询失败:"+ex.Message,"提示");
  93. }
  94. }
  95. private void AddClauseM()
  96. {
  97. try
  98. {
  99. //获取编辑区信息与校验
  100. string strbcnname = edtBcmName.Text.ToString().Trim();
  101. if (!isBcmNameMatch(strbcnname))
  102. {
  103. MessageBox.Show("条款行名称为空或者过长", "提示");
  104. edtBcmName.Focus();
  105. return;
  106. }
  107. String strmatClassCode = edtSuitMatClassCode.Text.ToString().Trim();
  108. string strmatcode = edtSuitMatCode.Text.ToString().Trim();
  109. string strsuppcode = edtSuitSuppCode.Text.ToString().Trim();
  110. if (edtStartTime.Value == null)
  111. {
  112. MessageBox.Show("请输入有效生效时间","提示");
  113. edtStartTime.Focus();
  114. return;
  115. }
  116. if (edtEndTime.Value == null)
  117. {
  118. MessageBox.Show("请输入有效失效时间","提示");
  119. edtStartTime.Focus();
  120. return;
  121. }
  122. DateTime starttime = (DateTime)edtStartTime.Value;
  123. DateTime endtime = (DateTime)edtEndTime.Value;
  124. if (!(DateTime.Compare(starttime, endtime)<0))
  125. {
  126. MessageBox.Show("生效时间不能晚于失效时间", "提示");
  127. edtEndTime.Focus();
  128. return;
  129. }
  130. if (!isRemarkMatch(edtRemark.Text.ToString().Trim()))
  131. {
  132. MessageBox.Show("备注过长", "提示");
  133. edtBcmName.Focus();
  134. return;
  135. }
  136. //构建实体类
  137. BalanceClauseM bc = new BalanceClauseM();
  138. bc.BcmName = strbcnname;
  139. bc.Status = "1";
  140. bc.SuitMat = strmatcode;
  141. bc.SuitMatClass = strmatClassCode;
  142. bc.SuitSupp = strsuppcode;
  143. bc.Validflag = "1";
  144. bc.StartTime = starttime;
  145. bc.EndTime = endtime;
  146. bc.Remark = edtRemark.Text.ToString().Trim();
  147. bc.CreateName = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName();
  148. bc.CreateTime = DateTime.Now;
  149. bc.CreateUserid = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserID();
  150. //执行插入
  151. CoreResult re = this.execute<CoreResult>("com.hnshituo.pur.balance.service.BalanceClauseMService", "doAddClauseM", new object[] { bc });
  152. if (re.Resultcode == 0)
  153. {
  154. QureyClauseM();
  155. BalanceClassCommon.doActiveSelRow(ultraGrid1, "bcmName", strbcnname);
  156. // BalanceClassCommon.doActiveSelRow(ultraGrid2, "id", strid);
  157. }
  158. else
  159. {
  160. MessageBox.Show(re.Resultmsg,"提示");
  161. return;
  162. }
  163. }
  164. catch (Exception ex)
  165. {
  166. MessageBox.Show("操作失败:"+ex.Message, "提示");
  167. }
  168. }
  169. private void EditClauseM()
  170. {
  171. try
  172. {
  173. if (ultraGrid1.ActiveRow != null)
  174. {
  175. //获取编辑区信息与校验
  176. string strbcmid = ultraGrid1.ActiveRow.Cells["bcmId"].Value.ToString().Trim();
  177. string strVersionno = ultraGrid1.ActiveRow.Cells["bcmVersionNo"].Value.ToString().Trim();
  178. if (string.IsNullOrEmpty(strbcmid) || string.IsNullOrEmpty(strVersionno))
  179. {
  180. MessageBox.Show("数据异常,获取条款编码或者版本号为空", "提示");
  181. edtBcmId.Focus();
  182. return;
  183. }
  184. string strbcnname = edtBcmName.Text.ToString().Trim();
  185. if (!isBcmNameMatch(strbcnname))
  186. {
  187. MessageBox.Show("条款行名称为空或者过长", "提示");
  188. edtBcmName.Focus();
  189. return;
  190. }
  191. String strmatClassCode = edtSuitMatClassCode.Text.ToString().Trim();
  192. string strmatcode = edtSuitMatCode.Text.ToString().Trim();
  193. string strsuppcode = edtSuitSuppCode.Text.ToString().Trim();
  194. if (edtStartTime.Value == null)
  195. {
  196. MessageBox.Show("请输入有效生效时间", "提示");
  197. edtStartTime.Focus();
  198. return;
  199. }
  200. if (edtEndTime.Value == null)
  201. {
  202. MessageBox.Show("请输入有效失效时间", "提示");
  203. edtStartTime.Focus();
  204. return;
  205. }
  206. DateTime starttime = (DateTime)edtStartTime.Value;
  207. DateTime endtime = (DateTime)edtEndTime.Value;
  208. if (!(DateTime.Compare(starttime, endtime) < 0))
  209. {
  210. MessageBox.Show("生效时间不能晚于失效时间", "提示");
  211. edtEndTime.Focus();
  212. return;
  213. }
  214. if (!isRemarkMatch(edtRemark.Text.ToString().Trim()))
  215. {
  216. MessageBox.Show("备注过长", "提示");
  217. edtBcmName.Focus();
  218. return;
  219. }
  220. //提示是否需要修改
  221. if (MessageBox.Show("将修改编号为[" + strbcmid + "]的条款信息?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
  222. {
  223. //构建实体类
  224. BalanceClauseM bc = new BalanceClauseM();
  225. bc.BcmId = strbcmid;
  226. bc.BcmVersionNo = strVersionno;
  227. bc.BcmName = strbcnname;
  228. bc.Status = "1";
  229. bc.SuitMat = strmatcode;
  230. bc.SuitMatClass = strmatClassCode;
  231. bc.SuitSupp = strsuppcode;
  232. bc.Validflag = "1";
  233. bc.StartTime = starttime;
  234. bc.EndTime = endtime;
  235. bc.Remark = edtRemark.Text.ToString().Trim();
  236. bc.UpdateName = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName();
  237. bc.UpdateTime = DateTime.Now;
  238. bc.UpdateUserid = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserID();
  239. //执行插入
  240. CoreResult re = this.execute<CoreResult>("com.hnshituo.pur.balance.service.BalanceClauseMService", "doUpdateClauseM", new object[] { bc });
  241. if (re.Resultcode == 0)
  242. {
  243. QureyClauseM();
  244. BalanceClassCommon.doActiveSelRow(ultraGrid1, "bcmId", strbcmid);
  245. // BalanceClassCommon.doActiveSelRow(ultraGrid2, "id", strid);
  246. }
  247. else
  248. {
  249. MessageBox.Show(re.Resultmsg, "提示");
  250. return;
  251. }
  252. }
  253. }
  254. else
  255. {
  256. MessageBox.Show("请选择需要编辑的条款", "提示");
  257. }
  258. }
  259. catch (Exception ex)
  260. {
  261. MessageBox.Show("操作失败:" + ex.Message, "提示");
  262. }
  263. }
  264. private void DeleteClauseM()
  265. {
  266. try
  267. {
  268. if (ultraGrid1.ActiveRow != null)
  269. {
  270. //获取编辑区信息与校验
  271. string strbcmid = ultraGrid1.ActiveRow.Cells["bcmId"].Value.ToString().Trim();
  272. string strVersionno = ultraGrid1.ActiveRow.Cells["bcmVersionNo"].Value.ToString().Trim();
  273. if (string.IsNullOrEmpty(strbcmid) || string.IsNullOrEmpty(strVersionno))
  274. {
  275. MessageBox.Show("数据异常,获取条款编码或者版本号为空", "提示");
  276. edtBcmId.Focus();
  277. return;
  278. }
  279. //提示是否需要修改
  280. if (MessageBox.Show("将删除编号为[" + strbcmid + "]的条款信息?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
  281. {
  282. //构建实体类
  283. BalanceClauseM bc = new BalanceClauseM();
  284. bc.BcmId = strbcmid;
  285. bc.BcmVersionNo = strVersionno;
  286. bc.Validflag = "0";
  287. bc.DeleteName = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName();
  288. bc.DeleteTime = DateTime.Now;
  289. bc.DeleteUserid = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserID();
  290. //执行插入
  291. CoreResult re = this.execute<CoreResult>("com.hnshituo.pur.balance.service.BalanceClauseMService", "doUpdateClauseM", new object[] { bc });
  292. if (re.Resultcode == 0)
  293. {
  294. QureyClauseM();
  295. BalanceClassCommon.doActiveSelRow(ultraGrid1, "bcmId", strbcmid);
  296. // BalanceClassCommon.doActiveSelRow(ultraGrid2, "id", strid);
  297. }
  298. else
  299. {
  300. MessageBox.Show(re.Resultmsg, "提示");
  301. return;
  302. }
  303. }
  304. }
  305. else
  306. {
  307. MessageBox.Show("请选择需要删除的条款", "提示");
  308. }
  309. }
  310. catch (Exception ex)
  311. {
  312. MessageBox.Show("操作失败:" + ex.Message, "提示");
  313. }
  314. }
  315. /// <summary>
  316. /// 新增条款明细
  317. /// </summary>
  318. private void AddClauseC()
  319. {
  320. try
  321. {
  322. if (ultraGrid1.ActiveRow != null)
  323. {
  324. string strbcmid = ultraGrid1.ActiveRow.Cells["bcmId"].Value.ToString().Trim();
  325. edtBcmIdC.Text = strbcmid;
  326. //获取编辑区信息
  327. string strbalanceclass = edtBalanceClass.Value.ToString().Trim();
  328. if (string.IsNullOrEmpty(strbalanceclass))
  329. {
  330. MessageBox.Show("请选择标准类型", "提示");
  331. edtBalanceClass.Focus();
  332. return;
  333. }
  334. string strbalanceid = edtBalanceId.Value.ToString().Trim();
  335. if (string.IsNullOrEmpty(strbalanceid))
  336. {
  337. MessageBox.Show("请选择一条有效的计价标准", "提示");
  338. edtBalanceId.Focus();
  339. return;
  340. }
  341. string strremarkc = edtremarkc.Text.ToString().Trim();
  342. //构建实体类
  343. BalanceClauseC bc = new BalanceClauseC();
  344. bc.BcmId = strbcmid;
  345. bc.BalanceClass = strbalanceclass;
  346. bc.BalanceId = strbalanceid;
  347. bc.Remark = strremarkc;
  348. bc.Validflag = "1";
  349. bc.CreateName = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName();
  350. bc.CreateTime = DateTime.Now;
  351. bc.CreateUserid = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserID();
  352. //调用API进行操作
  353. CoreResult re = this.execute<CoreResult>("com.hnshituo.pur.balance.service.BalanceClauseCService", "doAddClauseC", new object[] { bc });
  354. if (re.Resultcode == 0)
  355. {
  356. QureyClauseM();
  357. BalanceClassCommon.doActiveSelRow(ultraGrid1, "bcmId", strbcmid);
  358. BalanceClassCommon.doActiveSelRow(ultraGrid2, "balanceid", strbalanceid);
  359. }
  360. else
  361. {
  362. MessageBox.Show(re.Resultmsg, "提示");
  363. return;
  364. }
  365. }
  366. else
  367. {
  368. MessageBox.Show("请选择需要新增条款明细的条款行","提示");
  369. return;
  370. }
  371. }
  372. catch (Exception ex)
  373. {
  374. MessageBox.Show("操作失败:" + ex.Message, "提示");
  375. }
  376. }
  377. /// <summary>
  378. /// 修改明细
  379. /// </summary>
  380. private void EditClauseC()
  381. {
  382. try
  383. {
  384. if (ultraGrid2.ActiveRow != null)
  385. {
  386. string strbcmid = ultraGrid2.ActiveRow.Cells["bcmId"].Value.ToString().Trim();
  387. string strbccid = ultraGrid2.ActiveRow.Cells["bccId"].Value.ToString().Trim();
  388. //edtBcmIdC.Text = strbcmid;
  389. //获取编辑区信息
  390. string strbalanceclass = edtBalanceClass.Value.ToString().Trim();
  391. if (string.IsNullOrEmpty(strbalanceclass))
  392. {
  393. MessageBox.Show("请选择标准类型", "提示");
  394. edtBalanceClass.Focus();
  395. return;
  396. }
  397. string strbalanceid = edtBalanceId.Value.ToString().Trim();
  398. if (string.IsNullOrEmpty(strbalanceid))
  399. {
  400. MessageBox.Show("请选择一条有效的计价标准", "提示");
  401. edtBalanceId.Focus();
  402. return;
  403. }
  404. string strremarkc = edtremarkc.Text.ToString().Trim();
  405. //构建实体类
  406. BalanceClauseC bc = new BalanceClauseC();
  407. bc.BccId = strbccid;
  408. bc.BcmId = strbcmid;
  409. bc.BalanceClass = strbalanceclass;
  410. bc.BalanceId = strbalanceid;
  411. bc.Remark = strremarkc;
  412. bc.Validflag = "1";
  413. bc.UpdateName = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName();
  414. bc.UpdateTime = DateTime.Now;
  415. bc.UpdateUserid = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserID();
  416. //调用API进行操作
  417. CoreResult re = this.execute<CoreResult>("com.hnshituo.pur.balance.service.BalanceClauseCService", "doUpdateClauseC", new object[] { bc });
  418. if (re.Resultcode == 0)
  419. {
  420. QureyClauseM();
  421. BalanceClassCommon.doActiveSelRow(ultraGrid1, "bcmId", strbcmid);
  422. BalanceClassCommon.doActiveSelRow(ultraGrid2, "bccId", strbccid);
  423. }
  424. else
  425. {
  426. MessageBox.Show(re.Resultmsg, "提示");
  427. return;
  428. }
  429. }
  430. else
  431. {
  432. MessageBox.Show("请选择需要修改条款明细的条款行", "提示");
  433. return;
  434. }
  435. }
  436. catch (Exception ex)
  437. {
  438. MessageBox.Show("操作失败:" + ex.Message, "提示");
  439. }
  440. }
  441. /// <summary>
  442. /// 删除明细
  443. /// </summary>
  444. private void DeleteClauseC()
  445. {
  446. try
  447. {
  448. if (ultraGrid2.ActiveRow != null)
  449. {
  450. string strbcmid = ultraGrid2.ActiveRow.Cells["bcmId"].Value.ToString().Trim();
  451. string strbccid = ultraGrid2.ActiveRow.Cells["bccId"].Value.ToString().Trim();
  452. //构建实体类
  453. BalanceClauseC bc = new BalanceClauseC();
  454. bc.BccId = strbccid;
  455. bc.Validflag = "0";
  456. bc.DeleteName = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName();
  457. bc.DeleteTime = DateTime.Now;
  458. bc.DeleteUserid = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserID();
  459. //调用API进行操作
  460. CoreResult re = this.execute<CoreResult>("com.hnshituo.pur.balance.service.BalanceClauseCService", "doUpdateClauseC", new object[] { bc });
  461. if (re.Resultcode == 0)
  462. {
  463. QureyClauseM();
  464. BalanceClassCommon.doActiveSelRow(ultraGrid1, "bcmId", strbcmid);
  465. BalanceClassCommon.doActiveSelRow(ultraGrid2, "bccId", strbccid);
  466. }
  467. else
  468. {
  469. MessageBox.Show(re.Resultmsg, "提示");
  470. return;
  471. }
  472. }
  473. else
  474. {
  475. MessageBox.Show("请选择需要删除条款明细的条款行", "提示");
  476. return;
  477. }
  478. }
  479. catch (Exception ex)
  480. {
  481. MessageBox.Show("操作失败:" + ex.Message, "提示");
  482. }
  483. }
  484. #endregion
  485. #region 界面事件
  486. private void ultraGrid1_AfterRowActivate(object sender, EventArgs e)
  487. {
  488. try
  489. {
  490. //清空界面
  491. clearEdtArea();
  492. //加载数据
  493. string strbcmid=ultraGrid1.ActiveRow.Cells["bcmId"].Value.ToString().Trim();
  494. edtBcmId.Text = strbcmid;
  495. edtBcmName.Text = ultraGrid1.ActiveRow.Cells["bcmName"].Value.ToString().Trim();
  496. if (ultraGrid1.ActiveRow.Cells["endTime"].Value != null)
  497. {
  498. edtEndTime.Value = ultraGrid1.ActiveRow.Cells["endTime"].Value;
  499. }
  500. if (ultraGrid1.ActiveRow.Cells["startTime"].Value != null)
  501. {
  502. edtStartTime.Value = ultraGrid1.ActiveRow.Cells["startTime"].Value;
  503. }
  504. edtRemark.Text = ultraGrid1.ActiveRow.Cells["remark"].Value.ToString().Trim();
  505. edtSuitMatClassCode.Text = ultraGrid1.ActiveRow.Cells["suitMatClass"].Value.ToString().Trim();
  506. edtSuitMatCode.Text = ultraGrid1.ActiveRow.Cells["suitMat"].Value.ToString().Trim();
  507. edtSuitSuppCode.Text = ultraGrid1.ActiveRow.Cells["suitSupp"].Value.ToString().Trim();
  508. //加载从表数据
  509. BalanceClauseC bc = new BalanceClauseC();
  510. bc.BcmId = strbcmid;
  511. bc.Validflag = "1";
  512. DataTable dt = this.execute<DataTable>("com.hnshituo.pur.balance.service.BalanceClauseCService", "doQueryClauseC", new object[] { bc });
  513. GridHelper.CopyDataToDatatable(ref dt, ref dataTable3, true);
  514. }
  515. catch (Exception ex)
  516. {
  517. MessageBox.Show("操作失败:" + ex.Message, "提示");
  518. }
  519. }
  520. private void ultraGrid1_AfterCellActivate(object sender, EventArgs e)
  521. {
  522. try
  523. {
  524. ultraTabControl2.SelectedTab = ultraTabControl2.Tabs[0];
  525. }
  526. catch (Exception ex)
  527. {
  528. MessageBox.Show("操作失败:" + ex.Message, "提示");
  529. }
  530. }
  531. private void ultraGrid2_AfterCellActivate(object sender, EventArgs e)
  532. {
  533. try
  534. {
  535. ultraTabControl2.SelectedTab = ultraTabControl2.Tabs[1];
  536. }
  537. catch (Exception ex)
  538. {
  539. MessageBox.Show("操作失败:" + ex.Message, "提示");
  540. }
  541. }
  542. private void ultraGrid2_AfterRowActivate(object sender, EventArgs e)
  543. {
  544. try
  545. {
  546. //加载数据到编辑区
  547. edtBccId.Text = ultraGrid2.ActiveRow.Cells["bccId"].Value.ToString().Trim();
  548. edtBcmIdC.Text = ultraGrid2.ActiveRow.Cells["bcmId"].Value.ToString().Trim();
  549. edtremarkc.Text = ultraGrid2.ActiveRow.Cells["remark"].Value.ToString().Trim();
  550. string strbalanceclass=ultraGrid2.ActiveRow.Cells["BalanceClass"].Value.ToString().Trim();
  551. string strbalanceid=ultraGrid2.ActiveRow.Cells["BalanceId"].Value.ToString().Trim();
  552. if (string.IsNullOrEmpty(strbalanceclass) || string.IsNullOrEmpty(strbalanceid))
  553. {
  554. MessageBox.Show("数据异常,标准类型编号和编号都不能为空","");
  555. return;
  556. }
  557. edtBalanceClass.Value = strbalanceclass;
  558. edtBalanceId.Value = strbalanceid;
  559. //加载其它的数据
  560. if (strbalanceclass == "1")
  561. {
  562. //tab控制
  563. ultraTabControl1.SelectedTab = ultraTabControl1.Tabs[0];
  564. //构建查询实体类
  565. BalanceBasepriceC pc = new BalanceBasepriceC();
  566. pc.StandId = strbalanceid;
  567. pc.Validflag = "1";
  568. //调用服务器查询API进行查询
  569. DataTable re = this.execute<DataTable>("com.hnshituo.pur.balance.service.BalanceBasepriceCService", "doQureyBasePriceC", new object[] { pc });
  570. GridHelper.CopyDataToDatatable(ref re, ref dataTable2, true);
  571. CicpPriceC.Clear();
  572. }
  573. else if (strbalanceclass == "2")
  574. {
  575. //tab控制
  576. ultraTabControl1.SelectedTab = ultraTabControl1.Tabs[1];
  577. //构建查询实体类
  578. BalanceCicpriceC pc = new BalanceCicpriceC();
  579. pc.StandId = strbalanceid;
  580. pc.Validflag = "1";
  581. //调用服务器查询API进行查询
  582. DataTable re = this.execute<DataTable>("com.hnshituo.pur.balance.service.BalanceCicpriceCService", "doQureyCicpPriceC", new object[] { pc });
  583. GridHelper.CopyDataToDatatable(ref re, ref dataTable1, true);
  584. basepriceC.Clear();
  585. }
  586. else if (strbalanceclass == "3")
  587. {
  588. ultraTabControl1.SelectedTab = ultraTabControl1.Tabs[2];
  589. MessageBox.Show("批量计价计暂时无数据", "提示");
  590. return;
  591. }
  592. else if (strbalanceclass == "9")
  593. {
  594. ultraTabControl1.SelectedTab = ultraTabControl1.Tabs[3];
  595. MessageBox.Show("其它计价暂时无数据", "提示");
  596. return;
  597. }
  598. else
  599. {
  600. MessageBox.Show("无效标准类型编码:" + strbalanceclass, "提示");
  601. return;
  602. }
  603. }
  604. catch (Exception ex)
  605. {
  606. MessageBox.Show("操作失败:" + ex.Message, "提示");
  607. }
  608. }
  609. private void clearEdtArea()
  610. {
  611. foreach (Control ctr in ultraExpandableGroupBox1.Controls)
  612. {
  613. if (ctr is System.Windows.Forms.Label)
  614. { continue; }
  615. if (ctr is UltraCheckEditor)
  616. {
  617. UltraCheckEditor ultcmb = (UltraCheckEditor)ctr;
  618. ultcmb.Checked = false;
  619. }
  620. if (ctr is UltraComboEditor)
  621. {
  622. UltraComboEditor ultcmb = (UltraComboEditor)ctr;
  623. ultcmb.Text = "";
  624. ultcmb.Enabled = false;
  625. }
  626. if (ctr is System.Windows.Forms.CheckBox)
  627. {
  628. System.Windows.Forms.CheckBox cb = (System.Windows.Forms.CheckBox)ctr;
  629. cb.Checked = false;
  630. }
  631. ctr.Text = null;
  632. }
  633. }
  634. private void edtSuitMatClassName_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e)
  635. {
  636. FrmMatClassPop_ups classfrm = new FrmMatClassPop_ups(this.ob);
  637. classfrm.ShowDialog();
  638. string strmatclasscode = classfrm.Basecode;
  639. string strmatclassname = classfrm.Basename;
  640. edtSuitMatClassCode.Text = strmatclasscode;
  641. edtSuitMatClassName.Text = strmatclassname;
  642. }
  643. private void edtSuitMatName_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e)
  644. {
  645. FrmPurPlanMat matfrm = new FrmPurPlanMat(this.ob);
  646. matfrm.ShowDialog();
  647. string strmatcode = matfrm.getItemCode();
  648. string strmatname = matfrm.getItemName();
  649. edtSuitMatCode.Text = strmatcode;
  650. edtSuitMatName.Text = strmatname;
  651. }
  652. private void edtSuitSuppName_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e)
  653. {
  654. frmSuppSel suppfrm = new frmSuppSel(this.ob);
  655. suppfrm.ShowDialog();
  656. string strsuppcode = suppfrm.strSUPP_CODE;
  657. string strsuppname = suppfrm.strSUPP_NAME;
  658. edtSuitSuppCode.Text = strsuppcode;
  659. edtSuitSuppName.Text = strsuppname;
  660. }
  661. private void edtBalanceName_EditorButtonClick(object sender, EditorButtonEventArgs e)
  662. {
  663. //获取类型
  664. String strbalclass = edtBalanceClass.Value.ToString().Trim();
  665. if (string.IsNullOrEmpty(strbalclass))
  666. {
  667. MessageBox.Show("请先选中计价标准类型", "提示");
  668. }
  669. FrmPopGetBalance Frmb = new FrmPopGetBalance(this.ob, strbalclass);
  670. Frmb.balclass = strbalclass;
  671. Frmb.ShowDialog();
  672. edtBalanceName.Text = Frmb.BalanceName;
  673. edtBalanceId.Text = Frmb.BalanceId;
  674. }
  675. #endregion
  676. #region 正则表达式定义
  677. private bool isBcmNameMatch(string str)
  678. {
  679. Regex obj = new Regex("^.{1,20}$");
  680. bool isos=obj.IsMatch(str);
  681. return isos;
  682. }
  683. private bool isRemarkMatch(string str)
  684. {
  685. Regex obj = new Regex("^.{0,178}$");
  686. return obj.IsMatch(str);
  687. }
  688. #endregion
  689. #region 界面初始化加载数据
  690. //初始化结算类型
  691. private void preInit()
  692. {
  693. ArrayList aryTmp = new ArrayList();
  694. aryTmp.Add(new ValueListItem("1", "基准计价"));
  695. aryTmp.Add(new ValueListItem("2", "成分计价"));
  696. aryTmp.Add(new ValueListItem("3", "批量计价"));
  697. aryTmp.Add(new ValueListItem("9", "其它计价"));
  698. BalanceClassCommon.FilComboboxbyList(edtBalanceClass, aryTmp);
  699. }
  700. #endregion
  701. }
  702. }