CraftOrdDesignStdPicCtrl.cs 50 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Drawing;
  5. using System.Data;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using Core.StlMes.Client.SaleOrder.BLL;
  10. using CoreFS.CA06;
  11. using Core.Mes.Client.Comm.Tool;
  12. using Core.StlMes.Client.Qcm;
  13. using Infragistics.Win.UltraWinGrid;
  14. using Infragistics.Win.UltraWinEditors;
  15. using Core.Mes.Client.Comm.Server;
  16. using CoreFS.SA06;
  17. using Infragistics.Win;
  18. using Core.Mes.Client.Comm.Control;
  19. namespace Core.StlMes.Client.SaleOrder.Control
  20. {
  21. public partial class CraftOrdDesignStdPicCtrl : UserControl
  22. {
  23. private CraftOrdDesignStdPicBLL _designStdPicBLL;
  24. private CraftOrdDesignMscPlBLL _designMscPlBLL;
  25. private CraftOrdDesignMscPlPrcBLL _designMscPlPrcBLL;
  26. private OpeBase _ob;
  27. private UltraComboEditor Pics = new UltraComboEditor();
  28. public CraftOrdDesignStdPicCtrl(System.Windows.Forms.Control container, OpeBase ob)
  29. {
  30. InitializeComponent();
  31. _ob = ob;
  32. _designStdPicBLL = new CraftOrdDesignStdPicBLL(ob);
  33. _designMscPlBLL = new CraftOrdDesignMscPlBLL(ob);
  34. _designMscPlPrcBLL = new CraftOrdDesignMscPlPrcBLL(ob);
  35. container.Controls.Add(this);
  36. this.Dock = DockStyle.Fill;
  37. LoadBaseData();
  38. }
  39. private void LoadBaseData()
  40. {
  41. QcmBaseCommon.InitSignMin(ultraComSignMin);
  42. QcmBaseCommon.InitSignMax(ultraComSignMax);
  43. //初始化理化检验项大类
  44. ultraComPhyMax.DropDownListWidth = -1;
  45. QcmBaseQuery.NitializeDropDownBox(ultraComPhyMax, "com.steering.pss.qcm.ComBaseQuery.geComBasePhyRStd", "PHY_TYPE", "PHY_CODE", false, _ob);
  46. //初始化结箍名称
  47. QcmBaseQuery.NitializeJG(ultraComJG, true, _ob);
  48. //初始化限制规格
  49. QcmBaseCommon.InitDropUltraComEditor(ultraComSize, "com.steering.pss.qcm.ComBaseQuery.geComBaseInfo4003", "BASENAME", _ob, true);
  50. //交货标准
  51. QcmBaseCommon.InitDropUltraComEditor(ultraComboDelivery, "com.steering.pss.qcm.ComBaseQuery.geComBaseInfo4060", "BASENAME", _ob, true);
  52. //内控标准
  53. UltraGridBand ugc = entityGrid1.DisplayLayout.Bands[0];
  54. //附加标准
  55. UltraComboEditor uceAddStdCon = new UltraComboEditor();
  56. this.Controls.Add(uceAddStdCon);
  57. uceAddStdCon.Visible = false;
  58. QcmBaseCommon.InitDropUltraComEditor(uceAddStdCon, "com.steering.pss.qcm.ComMaterial.getAddCondition", "BASENAME", _ob, false);
  59. entityGrid1.DisplayLayout.Bands[0].Columns["AddstdconCode"].EditorComponent = uceAddStdCon;
  60. entityGrid1.DisplayLayout.Bands[0].Columns["AddstdconCode"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
  61. ClsBaseInfo.SetComboItemHeight(uceAddStdCon);
  62. this.Controls.Add(Pics);
  63. Pics.Visible = false;
  64. //多标准选择分类
  65. UltraComboEditor uceMultStd = new UltraComboEditor();
  66. this.Controls.Add(uceMultStd);
  67. uceMultStd.Visible = false;
  68. QcmBaseCommon.InitDropUltraComEditor(uceMultStd, "com.steering.pss.qcm.ComMaterial.getMultStd", "BASENAME", _ob, true);
  69. entityGrid1.DisplayLayout.Bands[0].Columns["StdChoose"].EditorComponent = uceMultStd;
  70. entityGrid1.DisplayLayout.Bands[0].Columns["StdChoose"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
  71. ClsBaseInfo.SetComboItemHeight(uceMultStd);
  72. }
  73. /// <summary>
  74. /// 查询质量设计理化
  75. /// </summary>
  76. /// <param name="designStdPicEntity"></param>
  77. public void Query(CraftOrdDesignStdPicEntity designStdPicEntity)
  78. {
  79. this.CraftOrdDesignStdPicEntityBindingSource.DataSource = _designStdPicBLL.Query(designStdPicEntity);
  80. }
  81. private string designKey = "";
  82. private string[] _parms;
  83. /// <summary>
  84. /// 查询质量设计理化
  85. /// </summary>
  86. /// <param name="designStdPicEntity"></param>
  87. public void QueryByDesignKeyPic(string[] parms)
  88. {
  89. designKey = parms[0];
  90. _parms = parms;
  91. var data = _designStdPicBLL.QueryByDesignKeyPic(parms);
  92. var list = data.Select(p => p.Pic).Distinct().ToList();
  93. if (list.Count > 1)
  94. {
  95. Pics.DataSource = data.Select(p => p.Pic).Distinct().ToList();
  96. QcmBaseQuery.BindColumn(Pics, "Pic", entityGrid1.DisplayLayout.Bands[0]);
  97. }
  98. this.CraftOrdDesignStdPicEntityBindingSource.DataSource = data;
  99. //UltraComboEditor cmb = new UltraComboEditor();
  100. foreach (var row in entityGrid1.Rows)
  101. {
  102. GridEdite(row);
  103. if (row.GetValue("CraftSource") == "0")
  104. {
  105. row.Cells["Chk"].Value = null;
  106. row.Cells["Chk"].Activation = Activation.ActivateOnly;
  107. row.Update();
  108. }
  109. //if (cmb.ValueList.FindString(row.GetValue("Pic")) == -1)
  110. //{
  111. // cmb.ValueList.ValueListItems.Add(row.GetValue("Pic"));
  112. //}
  113. }
  114. //cmb.DisplayStyle = EmbeddableElementDisplayStyle.WindowsVista;
  115. //entityGrid1.DisplayLayout.Bands[0].Columns["Pic"].EditorComponent = cmb;
  116. //entityGrid1.DisplayLayout.Bands[0].Columns["Pic"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
  117. }
  118. public void Clear()
  119. {
  120. this.CraftOrdDesignStdPicEntityBindingSource.Clear();
  121. }
  122. public void Save()
  123. {
  124. List<CraftOrdDesignStdPicEntity> parms = new List<CraftOrdDesignStdPicEntity>();
  125. var rows = entityGrid1.Rows.Where(a=>a.GetValue("Chk") == "True");
  126. foreach (var row in rows)
  127. {
  128. var parm = EntityHelper.CopyEntity<CraftOrdDesignStdPicEntity>(row.ListObject);
  129. if (parm.MscPline == "")
  130. {
  131. MessageUtil.ShowWarning("请选择制程!");
  132. row.SetCellActive("MscPline");
  133. return;
  134. }
  135. //if (parm.ProcessDescC == "")
  136. //{
  137. // MessageUtil.ShowWarning("请选择二级工序!");
  138. // row.SetCellActive("ProcessDescC");
  139. // return;
  140. //}
  141. if (parm.Pic == "")
  142. {
  143. MessageUtil.ShowWarning("请选择理化索引码!");
  144. row.SetCellActive("Pic");
  145. return;
  146. }
  147. if (parm.PhyNameMax == "")
  148. {
  149. MessageUtil.ShowWarning("请选择检验项!");
  150. row.SetCellActive("PhyNameMax");
  151. return;
  152. }
  153. if (parm.PhyNameMin == "")
  154. {
  155. MessageUtil.ShowWarning("请选择试样组!");
  156. row.SetCellActive("PhyNameMin");
  157. return;
  158. }
  159. if (parm.PhyName == "")
  160. {
  161. MessageUtil.ShowWarning("请选择检验项目!");
  162. row.SetCellActive("PhyName");
  163. return;
  164. }
  165. if (parm.StdminSign == "=" && (parm.StdmaxSign != "" || parm.Stdmax != ""))
  166. {
  167. MessageUtil.ShowWarning("标准范围下限符号为'=',不能存在上限!");
  168. row.SetCellActive("Stdmax");
  169. return;
  170. }
  171. if (parm.Isjudge == true)
  172. {
  173. if (parm.StdminSign.Equals("") && parm.StdmaxSign.Equals(""))
  174. {
  175. MessageUtil.ShowWarning("请选择标准范围(默认)下限符号或者上限符号!");
  176. row.SetCellActive("StdminSign");
  177. return;
  178. }
  179. }
  180. if (!parm.StdminSign.Equals("") && parm.Stdmin.Equals(""))
  181. {
  182. MessageUtil.ShowWarning("请输入标准范围(默认)下限值!");
  183. row.SetCellActive("Stdmin");
  184. return;
  185. }
  186. if (parm.StdminSign.Equals("") && !parm.Stdmin.Equals(""))
  187. {
  188. MessageUtil.ShowWarning("请选择标准范围(默认)下限符号!");
  189. row.SetCellActive("StdminSign");
  190. return;
  191. }
  192. if (!parm.StdmaxSign.Equals("") && parm.Stdmax.Equals(""))
  193. {
  194. MessageUtil.ShowWarning("请输入标准范围(默认)上限值!");
  195. row.SetCellActive("Stdmax");
  196. return;
  197. }
  198. if (parm.StdmaxSign.Equals("") && !parm.Stdmax.Equals(""))
  199. {
  200. MessageUtil.ShowWarning("已有标准范围(默认)上限值,请选择标准范围(默认)上限符号!");
  201. row.SetCellActive("StdmaxSign");
  202. return;
  203. }
  204. if (parm.PhyType == false)
  205. {
  206. if (!parm.Stdmin.Equals("") && !StringUtil.IsNumber(parm.Stdmin) && !parm.StdminSign.Equals("="))
  207. {
  208. MessageUtil.ShowWarning("标准范围(默认)下限值由数字组成!");
  209. row.SetCellActive("Stdmin");
  210. return;
  211. }
  212. if (!parm.Stdmax.Equals("") && !StringUtil.IsNumber(parm.Stdmax))
  213. {
  214. MessageUtil.ShowWarning("标准范围(默认)上限值由数字组成!");
  215. row.SetCellActive("Stdmax");
  216. return;
  217. }
  218. }
  219. else
  220. {
  221. if (!parm.Stdmin.Equals("") && !parm.StdminSign.Equals("=") && !QcmBaseCommon.CheckCompositeFormula(parm.Stdmin))
  222. {
  223. MessageUtil.ShowWarning("标准范围(默认)下限值,输入公式不合法,请重新输入!");
  224. row.SetCellActive("Stdmin");
  225. return;
  226. }
  227. if (!parm.Stdmax.Equals("") && !QcmBaseCommon.CheckCompositeFormula(parm.Stdmax))
  228. {
  229. MessageUtil.ShowWarning("标准范围(默认)上限值,输入公式不合法,请重新输入!");
  230. row.SetCellActive("Stdmax");
  231. return;
  232. }
  233. }
  234. if (!parm.Stdmin.Equals(""))
  235. {
  236. if (parm.Stdmin.StartsWith("."))
  237. parm.Stdmin = "0" + parm.Stdmin;
  238. }
  239. if (!parm.Stdmax.Equals(""))
  240. {
  241. if (parm.Stdmax.StartsWith("."))
  242. parm.Stdmax = "0" + parm.Stdmax;
  243. }
  244. if (!parm.Stdmin.Equals("") && !parm.Stdmax.Equals("")) //&& Convert.ToDouble(stdmin) > Convert.ToDouble(stdmax)
  245. {
  246. int i = QcmBaseInfo.CheckStdData(parm.StdminSign, parm.StdmaxSign, parm.Stdmin, parm.Stdmax);
  247. if (i == 0)
  248. {
  249. MessageUtil.ShowWarning("输入的数据不完整!");
  250. return;
  251. }
  252. if (i == 1)
  253. {
  254. MessageUtil.ShowWarning("标准范围(默认)下限值与上限值相等,上下限符号请选择<=和>=!");
  255. row.SetCellActive("StdminSign");
  256. return;
  257. }
  258. if (i == 2)
  259. {
  260. MessageUtil.ShowWarning("标准范围(默认)下限值不能大于上限值!");
  261. row.SetCellActive("Stdmin");
  262. return;
  263. }
  264. }
  265. if (parm.JudgeBasis.Equals(""))
  266. {
  267. MessageUtil.ShowWarning("判断依据不能为空!");
  268. row.SetCellActive("JudgeBasis");
  269. return;
  270. }
  271. if (parm.StdminSign2 == "=" && (parm.StdmaxSign2 != "" || parm.Stdmax2 != ""))
  272. {
  273. MessageUtil.ShowWarning("标准范围(二)下限符号为'=',不能存在上限!");
  274. row.SetCellActive("Stdmax2");
  275. return;
  276. }
  277. if (parm.StdChoose != "") //取大/小值
  278. {
  279. if (parm.StdminSign2.Equals("") && parm.StdmaxSign2.Equals(""))
  280. {
  281. MessageUtil.ShowWarning("请选择标准范围(二)下限符号或者上限符号!");
  282. row.SetCellActive("StdminSign2");
  283. return;
  284. }
  285. if (!parm.StdminSign2.Equals("") && parm.Stdmin2.Equals(""))
  286. {
  287. MessageUtil.ShowWarning("请输入标准范围(二)下限值!");
  288. row.SetCellActive("Stdmin2");
  289. return;
  290. }
  291. if (parm.StdminSign2.Equals("") && !parm.Stdmin2.Equals(""))
  292. {
  293. MessageUtil.ShowWarning("标准范围(默认)不存在下限符号,则标准范围(二)下限不能存在值!");
  294. row.SetCellActive("Stdmin2");
  295. return;
  296. }
  297. if (!parm.StdmaxSign2.Equals("") && parm.Stdmax2.Equals(""))
  298. {
  299. MessageUtil.ShowWarning("请输入标准范围(二)上限值!");
  300. row.SetCellActive("Stdmax2");
  301. return;
  302. }
  303. if (parm.StdmaxSign2.Equals("") && !parm.Stdmax2.Equals(""))
  304. {
  305. MessageUtil.ShowWarning("标准范围(默认)不存在上限符号,则标准范围(二)上限不能存在值!");
  306. row.SetCellActive("Stdmax2");
  307. return;
  308. }
  309. if (parm.PhyType == false)
  310. {
  311. if (!parm.Stdmin2.Equals("") && !StringUtil.IsNumber(parm.Stdmin2) && !parm.StdminSign2.Equals("="))
  312. {
  313. MessageUtil.ShowWarning("标准范围(二)下限值由数字组成!");
  314. row.SetCellActive("Stdmin2");
  315. return;
  316. }
  317. if (!parm.Stdmax2.Equals("") && !StringUtil.IsNumber(parm.Stdmax2))
  318. {
  319. MessageUtil.ShowWarning("标准范围(二)上限值由数字组成!");
  320. row.SetCellActive("Stdmax2");
  321. return;
  322. }
  323. }
  324. else
  325. {
  326. if (!parm.Stdmin2.Equals("") && !parm.StdminSign2.Equals("=") && !StringUtil.IsNumber(parm.Stdmin2)
  327. && !QcmBaseCommon.CheckCompositeFormula(parm.Stdmin2))
  328. {
  329. MessageUtil.ShowWarning("标准范围(二)下限值输入公式不合法,请重新输入!");
  330. row.SetCellActive("Stdmin2");
  331. return;
  332. }
  333. if (!parm.Stdmax2.Equals("") && !StringUtil.IsNumber(parm.Stdmax2) && !QcmBaseCommon.CheckCompositeFormula(parm.Stdmax2))
  334. {
  335. MessageUtil.ShowWarning("标准范围(二)上限值输入公式不合法,请重新输入!");
  336. row.SetCellActive("Stdmax2");
  337. return;
  338. }
  339. }
  340. if (!parm.Stdmin2.Equals(""))
  341. {
  342. if (parm.Stdmin2.StartsWith("."))
  343. parm.Stdmin2 = "0" + parm.Stdmin2;
  344. }
  345. if (!parm.Stdmax2.Equals(""))
  346. {
  347. if (parm.Stdmax2.StartsWith("."))
  348. parm.Stdmax2 = "0" + parm.Stdmax2;
  349. }
  350. if (!parm.Stdmin2.Equals("") && !parm.Stdmax2.Equals("")) //&& Convert.ToDouble(stdmin2) > Convert.ToDouble(stdmax2)
  351. {
  352. int i = QcmBaseInfo.CheckStdData(parm.StdminSign2, parm.StdmaxSign2, parm.Stdmin2, parm.Stdmax2);
  353. if (i == 0)
  354. {
  355. MessageUtil.ShowWarning("输入的数据不完整!");
  356. return;
  357. }
  358. if (i == 1)
  359. {
  360. MessageUtil.ShowWarning("标准范围(二)下限值与上限值相等,上下限符号请选择<=和>=!");
  361. row.SetCellActive("StdminSign2");
  362. return;
  363. }
  364. if (i == 2)
  365. {
  366. MessageUtil.ShowWarning("标准范围(二)下限值不能大于上限值!");
  367. row.SetCellActive("Stdmin2");
  368. return;
  369. }
  370. }
  371. }
  372. if (parm.SizeMinSign2 == "=" && (parm.SizeMaxSign2 != "" || parm.SizeMax2 != ""))
  373. {
  374. MessageUtil.ShowWarning("限制规格(一)下限符号为'=',不能存在上限!");
  375. row.SetCellActive("SizeMax2");
  376. return;
  377. }
  378. if (parm.SizeMinSign == "=" && (parm.SizeMaxSign != "" || parm.SizeMax != ""))
  379. {
  380. MessageUtil.ShowWarning("限制规格(二)下限符号为'=',不能存在上限!");
  381. row.SetCellActive("SizeMax");
  382. return;
  383. }
  384. if (!parm.SpecJg.Equals("") && !parm.SpecJgDesc.Equals("-1"))
  385. {
  386. if (!parm.SizeName2.Equals("") || !parm.SizeName.Equals(""))
  387. {
  388. MessageUtil.ShowWarning("接箍描述与限制规格不能同时存在!");
  389. row.SetCellActive("SpecJg");
  390. return;
  391. }
  392. }
  393. if (!parm.SizeName2.Equals(""))
  394. {
  395. if (parm.SizeMinSign2.Equals("") && parm.SizeMaxSign2.Equals(""))
  396. {
  397. MessageUtil.ShowWarning("请选择限制规格(一)下限符号或者上限符号!");
  398. row.SetCellActive("SizeMinSign2");
  399. return;
  400. }
  401. if (!parm.SizeMinSign2.Equals("") && parm.SizeMin2.Equals(""))
  402. {
  403. MessageUtil.ShowWarning("存在限制规格(一)下限符号,下限值不能为空!");
  404. row.SetCellActive("SizeMin2");
  405. return;
  406. }
  407. if (parm.SizeMinSign2.Equals("") && !parm.SizeMin2.Equals(""))
  408. {
  409. MessageUtil.ShowWarning("存在限制规格(一)下限值,下限符号不能为空!");
  410. row.SetCellActive("SizeMinSign2");
  411. return;
  412. }
  413. if (!parm.SizeMaxSign2.Equals("") && parm.SizeMax2.Equals(""))
  414. {
  415. MessageUtil.ShowWarning("存在限制规格(一)上限符号,上限值不能为空!");
  416. row.SetCellActive("SizeMax2");
  417. return;
  418. }
  419. if (parm.SizeMaxSign2.Equals("") && !parm.SizeMax2.Equals(""))
  420. {
  421. MessageUtil.ShowWarning("存在限制规格(一)上限值,上限符号不能为空!");
  422. row.SetCellActive("SizeMaxSign2");
  423. return;
  424. }
  425. if (!parm.SizeMin2.Equals("") && !StringUtil.IsNumber(parm.SizeMin2) && !parm.SizeMinSign2.Equals("="))
  426. {
  427. MessageUtil.ShowWarning("限制规格(一)下限值由数字组成!");
  428. row.SetCellActive("SizeMin2");
  429. return;
  430. }
  431. if (!parm.SizeMax2.Equals("") && !StringUtil.IsNumber(parm.SizeMax2))
  432. {
  433. MessageUtil.ShowWarning("限制规格(一)上限值由数字组成!");
  434. row.SetCellActive("SizeMax2");
  435. return;
  436. }
  437. if (!parm.SizeMin2.Equals("") && !parm.SizeMax2.Equals("")) //&& Convert.ToDouble(size_max2) < Convert.ToDouble(size_min2)
  438. {
  439. int i = QcmBaseInfo.CheckStdData(parm.SizeMinSign2, parm.SizeMaxSign2, parm.SizeMin2, parm.SizeMax2);
  440. if (i == 0)
  441. {
  442. MessageUtil.ShowWarning("输入的数据不完整!");
  443. return;
  444. }
  445. if (i == 1)
  446. {
  447. MessageUtil.ShowWarning("限制规格(一)下限值与上限值相等,上下限符号请选择<=和>=!");
  448. row.SetCellActive("SizeMinSign2");
  449. return;
  450. }
  451. if (i == 2)
  452. {
  453. MessageUtil.ShowWarning("限制规格(一)下限值不能大于上限值!");
  454. row.SetCellActive("SizeMin2");
  455. return;
  456. }
  457. }
  458. }
  459. else
  460. {
  461. if (parm.SizeMaxSign2 != "" || parm.SizeMinSign2 != "" || parm.SizeMin2 != "" || parm.SizeMax2 != "")
  462. {
  463. MessageUtil.ShowWarning("限制规格(一)描述不存在!");
  464. row.SetCellActive("SizeCode2");
  465. return;
  466. }
  467. }
  468. if (!parm.SizeMin2.Equals(""))
  469. {
  470. if (parm.SizeMin2.StartsWith("."))
  471. parm.SizeMin2 = "0" + parm.SizeMin2;
  472. }
  473. if (!parm.SizeMax2.Equals(""))
  474. {
  475. if (parm.SizeMax2.StartsWith("."))
  476. parm.SizeMax2 = "0" + parm.SizeMax2;
  477. }
  478. if (!parm.SizeName.Equals(""))
  479. {
  480. if (parm.SizeMinSign.Equals("") && parm.SizeMaxSign.Equals(""))
  481. {
  482. MessageUtil.ShowWarning("限制规格(二)下限符号与上限符号必须存在一项!");
  483. row.SetCellActive("SizeMinSign");
  484. return;
  485. }
  486. if (!parm.SizeMinSign.Equals("") && parm.SizeMin.Equals(""))
  487. {
  488. MessageUtil.ShowWarning("存在限制规格(二)下限符号,下限值不能为空!");
  489. row.SetCellActive("SizeMin");
  490. return;
  491. }
  492. if (parm.SizeMinSign.Equals("") && !parm.SizeMin.Equals(""))
  493. {
  494. MessageUtil.ShowWarning("存在限制规格(二)下限值,下限符号不能为空!");
  495. row.SetCellActive("SizeMinSign");
  496. return;
  497. }
  498. if (!parm.SizeMaxSign.Equals("") && parm.SizeMax.Equals(""))
  499. {
  500. MessageUtil.ShowWarning("存在限制规格(二)上限符号,上限值不能为空!");
  501. row.SetCellActive("SizeMax");
  502. return;
  503. }
  504. if (parm.SizeMaxSign.Equals("") && !parm.SizeMax.Equals(""))
  505. {
  506. MessageUtil.ShowWarning("存在限制规格(二)上限值,上限符号不能为空!");
  507. row.SetCellActive("SizeMaxSign");
  508. return;
  509. }
  510. if (!parm.SizeMax.Equals("") && !StringUtil.IsNumber(parm.SizeMax))
  511. {
  512. MessageUtil.ShowWarning("限制规格(二)上限值由数字组成!");
  513. row.SetCellActive("SizeMax");
  514. return;
  515. }
  516. if (!parm.SizeMin.Equals("") && !StringUtil.IsNumber(parm.SizeMin) && !parm.SizeMinSign.Equals("="))
  517. {
  518. MessageUtil.ShowWarning("限制规格(二)下限值由数字组成!");
  519. row.SetCellActive("SizeMin");
  520. return;
  521. }
  522. if (!parm.SizeMin.Equals("") && !parm.SizeMax.Equals("")) //&& Convert.ToDouble(size_max) < Convert.ToDouble(size_min)
  523. {
  524. int i = QcmBaseInfo.CheckStdData(parm.SizeMinSign, parm.SizeMaxSign, parm.SizeMin, parm.SizeMax);
  525. if (i == 0)
  526. {
  527. MessageUtil.ShowWarning("输入的数据不完整!");
  528. return;
  529. }
  530. if (i == 1)
  531. {
  532. MessageUtil.ShowWarning("限制规格(二)下限值与上限值相等,上下限符号请选择<=和>=!");
  533. row.SetCellActive("SizeMinSign");
  534. return;
  535. }
  536. if (i == 2)
  537. {
  538. MessageUtil.ShowWarning("限制规格(二)下限值不能大于上限值!");
  539. row.SetCellActive("SizeMin");
  540. return;
  541. }
  542. }
  543. }
  544. else
  545. {
  546. if (parm.SizeMaxSign != "" || parm.SizeMinSign != "" || parm.SizeMin != "" || parm.SizeMax != "")
  547. {
  548. MessageUtil.ShowWarning("限制规格(二)描述不存在!");
  549. row.SetCellActive("SizeCode");
  550. return;
  551. }
  552. }
  553. if (!parm.SizeName2.Equals("") && !parm.SizeName.Equals("") && parm.SizeName.Equals(parm.SizeName2))
  554. {
  555. MessageUtil.ShowWarning("限制规格(一)与限制规格(二)描述不能相同!");
  556. row.SetCellActive("SizeCode");
  557. return;
  558. }
  559. if (!parm.SizeMax.Equals(""))
  560. {
  561. if (parm.SizeMax.StartsWith("."))
  562. parm.SizeMax = "0" + parm.SizeMax;
  563. }
  564. if (!parm.SizeMin.Equals(""))
  565. {
  566. if (parm.SizeMin.StartsWith("."))
  567. parm.SizeMin = "0" + parm.SizeMin;
  568. }
  569. if (parm.Addcondition != "") //存在附加标准约束
  570. {
  571. if (parm.AddstdconCode == "")
  572. {
  573. MessageUtil.ShowWarning("请选择附加标准项!");
  574. row.SetCellActive("AddstdconCode");
  575. return;
  576. }
  577. if (parm.AddstdMinSign == "=" && (parm.AddstdMaxSign != "" || parm.AddstdMax != ""))
  578. {
  579. MessageUtil.ShowWarning("附加标准范围下限符号为'=',不能存在上限!");
  580. row.SetCellActive("AddstdMax");
  581. return;
  582. }
  583. if (parm.AddstdMinSign.Equals("") && parm.AddstdMaxSign.Equals(""))
  584. {
  585. MessageUtil.ShowWarning("请选择附加标准范围下限符号或者上限符号!");
  586. row.SetCellActive("AddstdMinSign");
  587. return;
  588. }
  589. if (!parm.AddstdMinSign.Equals("") && parm.AddstdMin.Equals(""))
  590. {
  591. MessageUtil.ShowWarning("请输入附加标准范围下限值!");
  592. row.SetCellActive("AddstdMin");
  593. return;
  594. }
  595. if (parm.AddstdMinSign.Equals("") && !parm.AddstdMin.Equals(""))
  596. {
  597. MessageUtil.ShowWarning("请选择附加标准范围下限符号!");
  598. row.SetCellActive("AddstdMinSign");
  599. return;
  600. }
  601. if (!parm.AddstdMinSign.Equals("") && parm.AddstdMin.Replace("Value", "1").CompileFormula() == null)
  602. {
  603. MessageUtil.ShowWarning("附加标准范围下限值,只能包含附加标准符号'Value'!");
  604. row.SetCellActive("AddstdMin");
  605. return;
  606. }
  607. if (!parm.AddstdMaxSign.Equals("") && parm.AddstdMax.Equals(""))
  608. {
  609. MessageUtil.ShowWarning("请输入附加标准范围上限值!");
  610. row.SetCellActive("AddstdMax");
  611. return;
  612. }
  613. if (!parm.AddstdMaxSign.Equals("") && parm.AddstdMax.Replace("Value", "1").CompileFormula() == null)
  614. {
  615. MessageUtil.ShowWarning("附加标准范围上限值,只能包含附加标准符号'Value'!");
  616. row.SetCellActive("AddstdMax");
  617. return;
  618. }
  619. if (parm.AddstdMaxSign.Equals("") && !parm.AddstdMax.Equals(""))
  620. {
  621. MessageUtil.ShowWarning("已有附加标准范围上限值,请选择附加标准范围上限符号!");
  622. row.SetCellActive("AddstdMaxSign");
  623. return;
  624. }
  625. if (!parm.AddstdMin.Equals(""))
  626. {
  627. if (parm.AddstdMin.StartsWith("."))
  628. parm.AddstdMin = "0" + parm.AddstdMin;
  629. }
  630. if (!parm.AddstdMax.Equals(""))
  631. {
  632. if (parm.AddstdMax.StartsWith("."))
  633. parm.AddstdMax = "0" + parm.AddstdMax;
  634. }
  635. if (!parm.AddstdMin.Equals("") && !parm.AddstdMax.Equals(""))//&& Convert.ToDouble(addstd_min) > Convert.ToDouble(addstd_max)
  636. {
  637. int i = QcmBaseInfo.CheckStdData(parm.AddstdMinSign, parm.AddstdMaxSign, parm.AddstdMin, parm.AddstdMax);
  638. if (i == 0)
  639. {
  640. MessageUtil.ShowWarning("输入的数据不完整!");
  641. return;
  642. }
  643. if (i == 1)
  644. {
  645. MessageUtil.ShowWarning("附加标准范围下限值与上限值相等,上下限符号请选择<=和>=!");
  646. row.SetCellActive("AddstdMinSign");
  647. return;
  648. }
  649. if (i == 2)
  650. {
  651. MessageUtil.ShowWarning("附加标准范围下限值不能大于上限值!");
  652. row.SetCellActive("AddstdMin");
  653. return;
  654. }
  655. }
  656. }
  657. parm.CreateName = CoreUserInfo.UserInfo.GetUserName();
  658. parm.UpdateName = CoreUserInfo.UserInfo.GetUserName();
  659. parm.DeleteName = CoreUserInfo.UserInfo.GetUserName();
  660. parm.SpeclFl = "2";
  661. parm.DesginKey = designKey;
  662. parms.Add(parm);
  663. }
  664. if (MessageUtil.ShowYesNoAndQuestion("是否确认保存?") == DialogResult.No)
  665. {
  666. return;
  667. }
  668. _designStdPicBLL.Save(parms);
  669. MessageUtil.ShowTips("保存成功!");
  670. QueryByDesignKeyPic(_parms);
  671. }
  672. public void Delete()
  673. {
  674. List<CraftOrdDesignStdPicEntity> parms = new List<CraftOrdDesignStdPicEntity>();
  675. var rows = entityGrid1.Rows.Where(a => a.GetValue("Chk") == "True");
  676. foreach (var row in rows)
  677. {
  678. var parm = EntityHelper.CopyEntity<CraftOrdDesignStdPicEntity>(row.ListObject);
  679. parm.CreateName = CoreUserInfo.UserInfo.GetUserName();
  680. parm.UpdateName = CoreUserInfo.UserInfo.GetUserName();
  681. parm.DeleteName = CoreUserInfo.UserInfo.GetUserName();
  682. parm.SpeclFl = "2";
  683. parm.DesginKey = designKey;
  684. parms.Add(parm);
  685. }
  686. if (MessageUtil.ShowYesNoAndQuestion("是否确认删除?") == DialogResult.No)
  687. {
  688. return;
  689. }
  690. _designStdPicBLL.Delete(parms);
  691. MessageUtil.ShowTips("删除成功!");
  692. }
  693. private void entityGrid1_CellChange(object sender, CellEventArgs e)
  694. {
  695. entityGrid1.UpdateData();
  696. var ugr = e.Cell.Row;
  697. string deliverystate = ugr.Cells["DELIVERYSTATE"].Value.ToString();
  698. ugr.Cells["SizeName2"].Value = ugr.Cells["SizeCode2"].Text;
  699. ugr.Cells["SizeName"].Value = ugr.Cells["SizeCode"].Text;
  700. ugr.Cells["SpecJgDesc"].Value = ugr.Cells["SpecJg"].Text;
  701. GridEdite(e.Cell.Row);
  702. }
  703. private void GridEdite(UltraGridRow row)
  704. {
  705. if (row.GetValue("Chk") == "True")
  706. {
  707. foreach (UltraGridCell cell in row.Cells)
  708. {
  709. if (cell.Column.CellActivation == Activation.AllowEdit)
  710. {
  711. cell.Activation = Activation.AllowEdit;
  712. }
  713. }
  714. }
  715. else
  716. {
  717. foreach (UltraGridCell cell in row.Cells)
  718. {
  719. if (cell.Column.Key == "Chk") continue;
  720. if (cell.Column.CellActivation == Activation.AllowEdit)
  721. {
  722. cell.Activation = Activation.ActivateOnly;
  723. }
  724. }
  725. }
  726. }
  727. private void entityGrid1_AfterRowInsert(object sender, RowEventArgs e)
  728. {
  729. //将增加行的是否必选项置为默认选择 和 复合元素选择项置为默认不选
  730. e.Row.Cells["PhyType"].Value = false;
  731. e.Row.Cells["BilletSample"].Value = false;
  732. e.Row.Cells["JudgeBasis"].Value = "D";
  733. e.Row.Cells["IsJudge"].Value = true;
  734. e.Row.Cells["IsQuote"].Value = true;
  735. e.Row.Cells["CraftSource"].Value = "1";
  736. e.Row.Cells["SpeclFl"].Value = "2";
  737. DataRow dr = _designStdPicBLL.GetPhyMaxByPhyMin(_parms[4]);
  738. if (dr != null)
  739. {
  740. e.Row.Cells["PhyCodeMin"].Value = _parms[4];
  741. e.Row.Cells["PhyNameMin"].Value = dr["PHY_NAME_MIN"].ToString();
  742. e.Row.Cells["PhyCodeMax"].Value = dr["PHY_CODE_MAX"].ToString();
  743. e.Row.Cells["PhyNameMax"].Value = dr["PHY_NAME_MAX"].ToString();
  744. }
  745. }
  746. private void ultraTextEditor3_EditorButtonClick(object sender, EditorButtonEventArgs e)
  747. {
  748. UltraGridRow row = entityGrid1.ActiveRow;
  749. string key = entityGrid1.ActiveCell.Column.Key;
  750. if (key == "MscPline")
  751. {
  752. DataTable dt = _designMscPlBLL.QueryMscPlineProcess(designKey);
  753. dt.Columns["MSC_PLINE"].Caption = "制程号";
  754. dt.Columns["WHOLE_BACKLOG"].Caption = "全程途径码";
  755. dt.Columns["WHOLE_BACKLOG_DESC"].Caption = "全程途径描述";
  756. dt.Columns["PROCESS_DESC"].Caption = "工序";
  757. dt.Columns["PROCESS_DESC_C"].Caption = "二级工序";
  758. dt.Columns["PIC"].Caption = "理化内控索引码";
  759. DataTable dtNew = dt.Clone();
  760. foreach (DataRow dr in dt.Rows)
  761. {
  762. string[] pics = dr["PIC"].ToString().Split(',');
  763. foreach (string pic in pics)
  764. {
  765. DataRow drNew = dtNew.NewRow();
  766. drNew["MSC_PLINE"] = dr["MSC_PLINE"];
  767. drNew["WHOLE_BACKLOG"] = dr["WHOLE_BACKLOG"];
  768. drNew["WHOLE_BACKLOG_DESC"] = dr["WHOLE_BACKLOG_DESC"];
  769. drNew["PROCESS_DESC"] = dr["PROCESS_DESC"];
  770. drNew["PROCESS_DESC_C"] = dr["PROCESS_DESC_C"];
  771. drNew["PROCESS_CODE"] = dr["PROCESS_CODE"];
  772. drNew["PROCESS_CODE_C"] = dr["PROCESS_CODE_C"];
  773. drNew["PIC"] = pic.Trim();
  774. dtNew.Rows.Add(drNew);
  775. }
  776. }
  777. BaseInfoPopup popup = new BaseInfoPopup(dtNew, "MSC_PLINE", "CIC", "SIC", "DIC", "WIC", "GIC", "PROCESS_CODE", "PROCESS_CODE_C");
  778. GridHelper.RefreshAndAutoSize(popup.UltraGrid1);
  779. popup.LabelTextBox1.Caption = "制程号";
  780. if (popup.ShowDialog() == DialogResult.OK)
  781. {
  782. row.SetValue("MscPline", popup.ChoicedRow.GetValue("MSC_PLINE"));
  783. row.SetValue("ProcessDescC", popup.ChoicedRow.GetValue("PROCESS_DESC_C"));
  784. row.SetValue("ProcessCodeC", popup.ChoicedRow.GetValue("PROCESS_CODE_C"));
  785. row.SetValue("ProcessDesc", popup.ChoicedRow.GetValue("PROCESS_DESC"));
  786. row.SetValue("ProcessCode", popup.ChoicedRow.GetValue("PROCESS_CODE"));
  787. row.SetValue("Pic", popup.ChoicedRow.GetValue("PIC"));
  788. }
  789. }
  790. else if (key == "ProcessDescC")
  791. {
  792. string mscPline = entityGrid1.ActiveRow.GetValue("MscPline");
  793. DataTable dt = _designMscPlPrcBLL.queryProcess(designKey, mscPline);
  794. dt.Columns["PROCESS_DESC"].Caption = "工序";
  795. dt.Columns["PROCESS_DESC_C"].Caption = "二级工序";
  796. BaseInfoPopup popup = new BaseInfoPopup(dt, "PROCESS_DESC_C", "PROCESS_CODE", "PROCESS_CODE_C");
  797. popup.LabelTextBox1.Caption = "二级工序";
  798. if (popup.ShowDialog() == DialogResult.OK)
  799. {
  800. row.SetValue("ProcessDescC", popup.ChoicedRow.GetValue("PROCESS_DESC_C"));
  801. row.SetValue("ProcessCodeC", popup.ChoicedRow.GetValue("PROCESS_CODE_C"));
  802. row.SetValue("ProcessDesc", popup.ChoicedRow.GetValue("PROCESS_DESC"));
  803. row.SetValue("ProcessCode", popup.ChoicedRow.GetValue("PROCESS_CODE"));
  804. }
  805. }
  806. else if (key == "Pic")
  807. {
  808. string mscPline = entityGrid1.ActiveRow.GetValue("MscPline");
  809. string processCode = entityGrid1.ActiveRow.GetValue("ProcessCode");
  810. DataTable dt = _designMscPlPrcBLL.queryProcessNkIndex(designKey, mscPline, processCode);
  811. dt.Columns["PIC"].Caption = "理化内控索引码";
  812. BaseInfoPopup popup = new BaseInfoPopup(dt, "PIC", "CIC", "SIC", "DIC", "WIC", "GIC");
  813. popup.LabelTextBox1.Caption = "理化内控索引码";
  814. if (popup.ShowDialog() == DialogResult.OK)
  815. {
  816. row.SetValue("Pic", popup.ChoicedRow.GetValue("PIC"));
  817. }
  818. }
  819. else if (entityGrid1.ActiveCell.Column.Key == "PhyNameMax")
  820. {
  821. DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.ComBaseQuery.geComBasePhyRStd", null, _ob);
  822. dt.Columns["PHY_TYPE"].Caption = "检验大项";
  823. BaseInfoPopup baseInfoPopup = new BaseInfoPopup(dt, "PHY_TYPE", "PHY_CODE");
  824. baseInfoPopup.Text = "检验大项";
  825. baseInfoPopup.LabelTextBox1.Caption = "检验大项";
  826. baseInfoPopup.Shown += new EventHandler((c, d) =>
  827. {
  828. IQueryable<UltraGridRow> rows = baseInfoPopup.UltraGrid1.Rows.AsQueryable().Where(
  829. a => a.GetValue("PHY_CODE") == entityGrid1.ActiveRow.GetValue("PhyCodeMax"));
  830. if (rows.Count() > 0)
  831. {
  832. rows.First().Activate();
  833. }
  834. });
  835. if (baseInfoPopup.ShowDialog() == System.Windows.Forms.DialogResult.OK)
  836. {
  837. entityGrid1.ActiveRow.SetValue("PhyNameMax", baseInfoPopup.ChoicedRow.GetValue("PHY_TYPE"));
  838. entityGrid1.ActiveRow.SetValue("PhyCodeMax", baseInfoPopup.ChoicedRow.GetValue("PHY_CODE"));
  839. entityGrid1.ActiveRow.SetValue("PhyNameMin", "");
  840. entityGrid1.ActiveRow.SetValue("PhyCodeMin", "");
  841. entityGrid1.ActiveRow.SetValue("PhyName", "");
  842. entityGrid1.ActiveRow.SetValue("PhyCode", "");
  843. entityGrid1.ActiveRow.SetValue("ItemNameF", "");
  844. entityGrid1.ActiveRow.SetValue("ItemCodeF", "");
  845. entityGrid1.ActiveRow.SetValue("ItemNameS", "");
  846. entityGrid1.ActiveRow.SetValue("ItemCodeS", "");
  847. entityGrid1.ActiveRow.SetValue("ItemNameW", "");
  848. entityGrid1.ActiveRow.SetValue("ItemCodeW", "");
  849. }
  850. }
  851. else if (entityGrid1.ActiveCell.Column.Key == "PhyNameMin")
  852. {
  853. string phyCodeMax = entityGrid1.ActiveRow.GetValue("PhyCodeMax");
  854. if (phyCodeMax == "")
  855. {
  856. MessageUtil.ShowWarning("请选检验大项!");
  857. return;
  858. }
  859. DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.ComBaseQuery.geComBasePhyC", new object[] { phyCodeMax }, _ob);
  860. dt.Columns["PHY_TYPE"].Caption = "试样组";
  861. BaseInfoPopup baseInfoPopup = new BaseInfoPopup(dt, "PHY_TYPE", "PHY_CODE");
  862. baseInfoPopup.Text = "试样组";
  863. baseInfoPopup.LabelTextBox1.Caption = "试样组";
  864. baseInfoPopup.Shown += new EventHandler((c, d) =>
  865. {
  866. IQueryable<UltraGridRow> rows = baseInfoPopup.UltraGrid1.Rows.AsQueryable().Where(
  867. a => a.GetValue("PHY_CODE") == entityGrid1.ActiveRow.GetValue("PhyCodeMin"));
  868. if (rows.Count() > 0)
  869. {
  870. rows.First().Activate();
  871. }
  872. });
  873. if (baseInfoPopup.ShowDialog() == System.Windows.Forms.DialogResult.OK)
  874. {
  875. entityGrid1.ActiveRow.SetValue("PhyNameMin", baseInfoPopup.ChoicedRow.GetValue("PHY_TYPE"));
  876. entityGrid1.ActiveRow.SetValue("PhyCodeMin", baseInfoPopup.ChoicedRow.GetValue("PHY_CODE"));
  877. entityGrid1.ActiveRow.SetValue("PhyName", "");
  878. entityGrid1.ActiveRow.SetValue("PhyCode", "");
  879. entityGrid1.ActiveRow.SetValue("ItemNameF", "");
  880. entityGrid1.ActiveRow.SetValue("ItemCodeF", "");
  881. entityGrid1.ActiveRow.SetValue("ItemNameS", "");
  882. entityGrid1.ActiveRow.SetValue("ItemCodeS", "");
  883. entityGrid1.ActiveRow.SetValue("ItemNameW", "");
  884. entityGrid1.ActiveRow.SetValue("ItemCodeW", "");
  885. }
  886. }
  887. else if (entityGrid1.ActiveCell.Column.Key == "PhyName")
  888. {
  889. string phyCodeMax = entityGrid1.ActiveRow.GetValue("PhyCodeMax");
  890. string phyCodeMin = entityGrid1.ActiveRow.GetValue("PhyCodeMin");
  891. if (phyCodeMax == "")
  892. {
  893. MessageUtil.ShowWarning("请选择检验大项");
  894. entityGrid1.ActiveRow.Cells["PhyNameMax"].Activate();
  895. return;
  896. }
  897. else if (phyCodeMin == "")
  898. {
  899. MessageUtil.ShowWarning("请选择试样组");
  900. entityGrid1.ActiveRow.Cells["PhyNameMin"].Activate();
  901. return;
  902. }
  903. DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.ComBaseQuery.geComBasePhy", new object[] { phyCodeMax, phyCodeMin }, _ob);
  904. dt.Columns["PHY_NAME"].Caption = "检验项";
  905. BaseInfoPopup baseInfoPopup = new BaseInfoPopup(dt, "PHY_NAME", "PHY_CODE");
  906. baseInfoPopup.Text = "检验项";
  907. baseInfoPopup.LabelTextBox1.Caption = "检验项";
  908. baseInfoPopup.Shown += new EventHandler((c, d) =>
  909. {
  910. IQueryable<UltraGridRow> rows = baseInfoPopup.UltraGrid1.Rows.AsQueryable().Where(
  911. a => a.GetValue("PHY_CODE") == entityGrid1.ActiveRow.GetValue("PhyCode"));
  912. if (rows.Count() > 0)
  913. {
  914. rows.First().Activate();
  915. }
  916. });
  917. if (baseInfoPopup.ShowDialog() == System.Windows.Forms.DialogResult.OK)
  918. {
  919. entityGrid1.ActiveRow.SetValue("PhyName", baseInfoPopup.ChoicedRow.GetValue("PHY_NAME"));
  920. entityGrid1.ActiveRow.SetValue("PhyCode", baseInfoPopup.ChoicedRow.GetValue("PHY_CODE"));
  921. entityGrid1.ActiveRow.SetValue("ItemNameW", "");
  922. entityGrid1.ActiveRow.SetValue("ItemCodeW", "");
  923. }
  924. }
  925. else if (entityGrid1.ActiveCell.Column.Key == "ItemNameF")
  926. {
  927. string phyTypeC = entityGrid1.ActiveRow.GetValue("PhyCodeMin");
  928. if (phyTypeC == "")
  929. {
  930. MessageUtil.ShowWarning("请选择试样组");
  931. entityGrid1.ActiveRow.Cells["PhyNameMin"].Activate();
  932. return;
  933. }
  934. DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.ComBaseQuery.geComBasePhyRItem",
  935. new object[] { phyTypeC }, _ob);
  936. dt.Columns["ITEM_NAME_F"].Caption = "试验方向";
  937. dt.Columns["ITEM_NAME_C"].Caption = "试验尺寸";
  938. BaseInfoPopup baseInfoPopup = new BaseInfoPopup(dt, "ITEM_NAME_F", "ITEM_CODE_F", "ITEM_CODE_C");
  939. baseInfoPopup.Text = "试验选择";
  940. baseInfoPopup.LabelTextBox1.Caption = "试验方向";
  941. baseInfoPopup.Shown += new EventHandler((c, d) =>
  942. {
  943. IQueryable<UltraGridRow> rows = baseInfoPopup.UltraGrid1.Rows.AsQueryable().Where(
  944. a => a.GetValue("ITEM_CODE_F") == entityGrid1.ActiveRow.GetValue("ItemCodeF")
  945. && a.GetValue("ITEM_CODE_C") == entityGrid1.ActiveRow.GetValue("ItemCodeS"));
  946. if (rows.Count() > 0)
  947. {
  948. rows.First().Activate();
  949. }
  950. });
  951. if (baseInfoPopup.ShowDialog() == System.Windows.Forms.DialogResult.OK)
  952. {
  953. entityGrid1.ActiveRow.SetValue("ItemNameF", baseInfoPopup.ChoicedRow.GetValue("ITEM_NAME_F"));
  954. entityGrid1.ActiveRow.SetValue("ItemCodeF", baseInfoPopup.ChoicedRow.GetValue("ITEM_CODE_F"));
  955. entityGrid1.ActiveRow.SetValue("ItemNameS", baseInfoPopup.ChoicedRow.GetValue("ITEM_NAME_C"));
  956. entityGrid1.ActiveRow.SetValue("ItemCodeS", baseInfoPopup.ChoicedRow.GetValue("ITEM_CODE_C"));
  957. }
  958. }
  959. else if (entityGrid1.ActiveCell.Column.Key == "ItemNameW")
  960. {
  961. string phyCode = entityGrid1.ActiveRow.GetValue("PhyCode");
  962. if (phyCode == "")
  963. {
  964. MessageUtil.ShowWarning("请选择检验项");
  965. entityGrid1.ActiveRow.Cells["PhyName"].Activate();
  966. return;
  967. }
  968. DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.ComBaseQuery.geComBasePhyRPos",
  969. new object[] { phyCode }, _ob);
  970. dt.Columns["ITEM_NAME_W"].Caption = "试验温度";
  971. BaseInfoPopup baseInfoPopup = new BaseInfoPopup(dt, "ITEM_NAME_W", "ITEM_CODE_W");
  972. baseInfoPopup.Text = "试验选择";
  973. baseInfoPopup.LabelTextBox1.Caption = "试验温度";
  974. baseInfoPopup.Shown += new EventHandler((c, d) =>
  975. {
  976. IQueryable<UltraGridRow> rows = baseInfoPopup.UltraGrid1.Rows.AsQueryable().Where(
  977. a => a.GetValue("ITEM_CODE_W") == entityGrid1.ActiveRow.GetValue("ItemCodeW"));
  978. if (rows.Count() > 0)
  979. {
  980. rows.First().Activate();
  981. }
  982. });
  983. if (baseInfoPopup.ShowDialog() == System.Windows.Forms.DialogResult.OK)
  984. {
  985. entityGrid1.ActiveRow.SetValue("ItemNameW", baseInfoPopup.ChoicedRow.GetValue("ITEM_NAME_W"));
  986. entityGrid1.ActiveRow.SetValue("ItemCodeW", baseInfoPopup.ChoicedRow.GetValue("ITEM_CODE_W"));
  987. }
  988. }
  989. }
  990. }
  991. }