CommonCrackPara.cs 57 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166
  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.Reflection;
  8. using System.Windows.Forms;
  9. using Core.Mes.Client.Comm.Server;
  10. using Core.Mes.Client.Comm.Tool;
  11. using Core.StlMes.Client.Mcp.Control.Entity;
  12. using CoreFS.CA06;
  13. using Infragistics.Win;
  14. using Infragistics.Win.UltraWinGrid;
  15. using NPOI.SS.Formula.Functions;
  16. using ColumnStyle = Infragistics.Win.UltraWinGrid.ColumnStyle;
  17. namespace Core.StlMes.Client.Mcp.Control.HeatTreatment
  18. {
  19. public partial class CommonCrackPara : UserControl
  20. {
  21. public CommonCrackPara()
  22. {
  23. InitializeComponent();
  24. EntityHelper.ShowGridCaption<HttCrackDetectionParaEntity>(ugPara.DisplayLayout.Bands[0]);
  25. list = new List<HttCrackDetectionParaEntity>() { new HttCrackDetectionParaEntity() };
  26. httCrackDetectionParaEntityBindingSource.DataSource = list;
  27. listProbe = new List<HttCrackDetectionProbeEntity>();
  28. listStand = new List<HttCrackDetectionStandardEntity>();
  29. }
  30. private DataTable _dtStand = null;
  31. private OpeBase ob;
  32. public OpeBase Ob
  33. {
  34. get { return ob; }
  35. set { ob = value; }
  36. }
  37. private string _plineCode = "";
  38. public List<HttCrackDetectionProbeEntity> listProbe { get; set; }
  39. public List<HttCrackDetectionStandardEntity> listStand { get; set; }
  40. public void SetLevl()
  41. {
  42. if(list==null || !list.Any()) return;
  43. if (listNames.Any(p => p.UserName == list[0].OperatorName))
  44. list[0].OperatorLevel =
  45. listNames.Where(p => p.UserName == list[0].OperatorName).Select(p => p.UseridGrade).FirstOrDefault();
  46. if (listNames.Any(p => p.UserName == list[0].Signatory))
  47. list[0].SignatoryLevel =
  48. listNames.Where(p => p.UserName == list[0].Signatory).Select(p => p.UseridGrade).FirstOrDefault();
  49. }
  50. private List<HttSignatureEntity> listNames =new List<HttSignatureEntity>();
  51. public List<HttCrackDetectionParaEntity> list { private set; get; }
  52. public void DisableFiltering()
  53. {
  54. ugPara.DisplayLayout.Override.AllowRowFiltering = DefaultableBoolean.False;
  55. /*
  56. foreach (var ugc in ugPara.DisplayLayout.Bands[0].Columns)
  57. {
  58. ugc.SortIndicator = SortIndicator.Disabled;
  59. }*/
  60. ugPara.DisplayLayout.Bands[0].Override.HeaderClickAction = HeaderClickAction.Select;
  61. }
  62. private List<HttReportDefaultEntity> HttReportDefaultEntity = null;
  63. public void SetValue(List<HttReportDefaultEntity> HttDefault)
  64. {
  65. SetValue(_plineCode,HttDefault);
  66. }
  67. public void SetValue(string PlineCode, List<HttReportDefaultEntity> HttDefault)
  68. {
  69. //有设置数据 不再赋默认值
  70. bool HasData = false;
  71. // 产线更换 重新绑定
  72. bool ChangePlineCode = false;
  73. HttReportDefaultEntity = HttDefault;
  74. #region MyRegion
  75. list = new List<HttCrackDetectionParaEntity>() {new HttCrackDetectionParaEntity()};
  76. listProbe = new List<HttCrackDetectionProbeEntity>();
  77. listStand = new List<HttCrackDetectionStandardEntity>();
  78. _plineCode = PlineCode;
  79. ChangePlineCode = true;
  80. #endregion
  81. #region 根据产线 默认 绑定 设置默认值
  82. if (HttReportDefaultEntity != null && HttReportDefaultEntity.Any())
  83. {
  84. var Properties = list[0].GetType().GetProperties();
  85. if (ChangePlineCode)
  86. {
  87. foreach (var ultraGridColumn in ugPara.DisplayLayout.Bands[0].Columns)
  88. {
  89. ultraGridColumn.Hidden = true;
  90. ultraGridColumn.EditorComponent = null;
  91. ultraGridColumn.Style = ColumnStyle.Default;
  92. ultraGridColumn.ValueList = null;
  93. }
  94. }
  95. for (int i = 0; i < HttReportDefaultEntity.Count; i++)
  96. {
  97. HttReportDefaultEntity defaultEntity = HttReportDefaultEntity[i];
  98. var Propertie =
  99. Properties.Where(
  100. p => p.Name.ToUpper() == defaultEntity.ReportColumn.Replace("_", "").ToUpper())
  101. .ToList();
  102. if (Propertie.Any())
  103. {
  104. if (ChangePlineCode)
  105. {
  106. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].Hidden = defaultEntity.ColumnVisible == "0" ;
  107. /* ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].RowLayoutColumnInfo.OriginX = (i/4)*
  108. 2;
  109. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].RowLayoutColumnInfo.OriginY = (i%4)*
  110. 2;
  111. */
  112. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].RowLayoutColumnInfo.OriginX =int.Parse(defaultEntity.OriginX.ToString3());
  113. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].RowLayoutColumnInfo.OriginY = int.Parse(defaultEntity.OriginY.ToString3());
  114. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].RowLayoutColumnInfo.PreferredCellSize = new System.Drawing.Size(int.Parse(defaultEntity.CellSizeWidth.ToString3()), int.Parse(defaultEntity.CellSizeHigh.ToString3()));
  115. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].RowLayoutColumnInfo.PreferredLabelSize = new System.Drawing.Size(int.Parse(defaultEntity.LabelSizeWidth.ToString3()), int.Parse(defaultEntity.LabelSizeHigh.ToString3()));
  116. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].RowLayoutColumnInfo.SpanX = int.Parse(defaultEntity.SpanX.ToString3());
  117. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].RowLayoutColumnInfo.SpanY = int.Parse(defaultEntity.SpanY.ToString3());
  118. }
  119. if (defaultEntity.ColumnType == "0")
  120. {
  121. if (!HasData) SetPropertyValue(Propertie[0], list[0], defaultEntity.TextDefault);
  122. }
  123. else if (defaultEntity.ColumnType == "1" || defaultEntity.ColumnType == "2")
  124. {
  125. if (ChangePlineCode)
  126. {
  127. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].Style =
  128. defaultEntity.ColumnType == "1" ? ColumnStyle.DropDownList : ColumnStyle.DropDown;
  129. ValueList vlist = new ValueList();
  130. string[] chooses = defaultEntity.DroplistUsed.Split(';');
  131. if (defaultEntity.DroplistDefult != "")
  132. {
  133. var dt =
  134. ServerHelper.GetData(
  135. "com.steering.mes.mcp.collarMaterial.ComBaseInfo.getBaseInfo",
  136. new object[] { defaultEntity.DroplistDefult }, ob);
  137. if (dt != null && dt.Rows.Count > 0)
  138. {
  139. foreach (DataRow row in dt.Rows)
  140. {
  141. if (defaultEntity.DroplistUsed == "")
  142. vlist.ValueListItems.Add(row["BASENAME"].ToString());
  143. else if (
  144. defaultEntity.DroplistUsed.Split(';')
  145. .Contains(row["BASECODE"].ToString()) || defaultEntity.DroplistUsed.Split(';')
  146. .Contains(row["BASENAME"].ToString()))
  147. {
  148. vlist.ValueListItems.Add(row["BASENAME"].ToString());
  149. }
  150. }
  151. }
  152. }
  153. else
  154. {
  155. foreach (var choose in chooses)
  156. {
  157. vlist.ValueListItems.Add(choose.Replace("\n", "\r\n"));
  158. }
  159. }
  160. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].ValueList = vlist;
  161. }
  162. if (!HasData) SetPropertyValue(Propertie[0], list[0], defaultEntity.TextDefault);
  163. }
  164. else if (defaultEntity.ColumnType == "99")
  165. {
  166. if (defaultEntity.ReportColumn.ToUpper() == "PROBE_NAME")
  167. {
  168. if (!HasData)
  169. {
  170. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].EditorComponent = utProbe;
  171. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].ButtonDisplayStyle =
  172. Infragistics.Win.UltraWinGrid.ButtonDisplayStyle.Always;
  173. var dt =
  174. ServerHelper.GetData(
  175. "com.steering.mes.mcp.collarMaterial.ComBaseInfo.getBaseInfo",
  176. new object[] {"4097"}, ob);
  177. if (defaultEntity.TextDefault != "")
  178. {
  179. string[] defaultProbe = defaultEntity.TextDefault.Split(';');
  180. if (dt != null && dt.Rows.Count > 0 && defaultProbe.Length > 0)
  181. {
  182. foreach (string Probe in defaultProbe)
  183. {
  184. listProbe.Add(new HttCrackDetectionProbeEntity()
  185. {
  186. ProbeTypeCode = Probe,
  187. ProbeTypeName =
  188. dt.AsEnumerable()
  189. .Where(p => p["BASECODE"].ToString() == Probe)
  190. .Select(p => p["BASENAME"].ToString())
  191. .FirstOrDefault(),
  192. ProbeQty =
  193. HttReportDefaultEntity.Any(
  194. p => p.ReportColumn.ToUpper() == "PROBE_QTY_" + Probe)
  195. ? HttReportDefaultEntity.Where(
  196. p =>
  197. p.ReportColumn.ToUpper() ==
  198. "PROBE_QTY_" + Probe).
  199. Select(p => p.TextDefault).FirstOrDefault()
  200. : "",
  201. ProbeParameters =
  202. HttReportDefaultEntity.Any(
  203. p => p.ReportColumn.ToUpper() == "PROBE_PARAMETERS_" + Probe)
  204. ? HttReportDefaultEntity.Where(
  205. p =>
  206. p.ReportColumn.ToUpper() ==
  207. "PROBE_PARAMETERS_" + Probe).
  208. Select(p => p.TextDefault).FirstOrDefault()
  209. : ""
  210. });
  211. }
  212. list[0].ProbeName = listProbe.Any()
  213. ? listProbe.Select(p => p.ProbeTypeName)
  214. .Aggregate((a, b) => a + (a == "" ? "" : ",") + b)
  215. : "";
  216. }
  217. }
  218. }
  219. }
  220. if (defaultEntity.ReportColumn.ToUpper() == "STANDARD_NAME")
  221. {
  222. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].EditorComponent = utStandard;
  223. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].ButtonDisplayStyle = Infragistics.Win.UltraWinGrid.ButtonDisplayStyle.Always;
  224. }
  225. }
  226. }
  227. }
  228. }
  229. #endregion
  230. if (ChangePlineCode)
  231. {
  232. listNames = EntityHelper.GetData<HttSignatureEntity>(
  233. "com.steering.mes.mcp.heatTreatment.FrmHttCrackDetectResult.getHttSign",
  234. new object[] { PlineCode, "4"}, ob);
  235. if (listNames.Any())
  236. {
  237. ValueList vlist = new ValueList();
  238. foreach (HttSignatureEntity row in listNames)
  239. {
  240. vlist.ValueListItems.Add(row.UserName);
  241. }
  242. ugPara.DisplayLayout.Bands[0].Columns["OperatorName"].ValueList = vlist;
  243. ugPara.DisplayLayout.Bands[0].Columns["OperatorName"].Style = ColumnStyle.DropDown;
  244. ugPara.DisplayLayout.Bands[0].Columns["OperatorName"].ButtonDisplayStyle =
  245. Infragistics.Win.UltraWinGrid.ButtonDisplayStyle.Always;
  246. ugPara.DisplayLayout.Bands[0].Columns["Signatory"].ValueList = vlist;
  247. ugPara.DisplayLayout.Bands[0].Columns["Signatory"].Style = ColumnStyle.DropDown;
  248. ugPara.DisplayLayout.Bands[0].Columns["Signatory"].ButtonDisplayStyle =
  249. Infragistics.Win.UltraWinGrid.ButtonDisplayStyle.Always;
  250. }
  251. }
  252. httCrackDetectionParaEntityBindingSource.DataSource = list;
  253. ugPara.Refresh();
  254. }
  255. public bool CheckNull(out string Message)
  256. {
  257. Message = "";
  258. if (list == null || list.Count <= 0) return true;
  259. HttCrackDetectionParaEntity data = list[0];
  260. foreach (HttReportDefaultEntity defaultEntity in HttReportDefaultEntity.Where(p => p.CheckNull == "1").ToList())
  261. {
  262. var Properties = list[0].GetType().GetProperties();
  263. var Propertie =
  264. Properties.Where(
  265. p => p.Name.ToUpper() == defaultEntity.ReportColumn.Replace("_", "").ToUpper())
  266. .ToList();
  267. if (Propertie.Any())
  268. {
  269. if (Propertie[0].GetValue(data,null).ToString2() == "")
  270. {
  271. object[] desAttributes = (Propertie[0].GetCustomAttributes(typeof(DescriptionAttribute), false));
  272. if (desAttributes.Length > 0)
  273. {
  274. Message = ((DescriptionAttribute)desAttributes[0]).Description + "不能为空";
  275. }
  276. return false;
  277. }
  278. }
  279. }
  280. return true;
  281. }
  282. public void SetValue(HttReportDefaultEntity defaultEntity,string ChangeKey)
  283. {
  284. if (list == null || !list.Any())
  285. list = new List<HttCrackDetectionParaEntity>() {new HttCrackDetectionParaEntity()};
  286. var Properties = list[0].GetType().GetProperties();
  287. var Propertie =
  288. Properties.Where(
  289. p => p.Name.ToUpper() == defaultEntity.ReportColumn.Replace("_", "").ToUpper())
  290. .ToList();
  291. if (Propertie.Any())
  292. {
  293. switch (ChangeKey)
  294. {
  295. case "ColumnType":
  296. if (defaultEntity.ReportColumn.ToUpper() == "PROBE_NAME" ||
  297. defaultEntity.ReportColumn.ToUpper() == "STANDARD_NAME")
  298. {
  299. return;
  300. }
  301. if (defaultEntity.ColumnType == "0")
  302. {
  303. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].Style = ColumnStyle.Default;
  304. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].ValueList = null;
  305. }
  306. else if (defaultEntity.ColumnType == "1" || defaultEntity.ColumnType == "2")
  307. {
  308. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].Style =
  309. defaultEntity.ColumnType == "1" ? ColumnStyle.DropDownList : ColumnStyle.DropDown;
  310. ValueList vlist1 = new ValueList();
  311. string[] chooses1 = defaultEntity.DroplistUsed.Split(';');
  312. if (defaultEntity.DroplistDefult != "" && defaultEntity.DroplistUsed == "")
  313. {
  314. var dt =
  315. ServerHelper.GetData(
  316. "com.steering.mes.mcp.collarMaterial.ComBaseInfo.getBaseInfo",
  317. new object[] { defaultEntity.DroplistDefult }, ob);
  318. if (dt != null && dt.Rows.Count > 0)
  319. {
  320. foreach (DataRow row in dt.Rows)
  321. {
  322. vlist1.ValueListItems.Add(row["BASENAME"].ToString());
  323. }
  324. }
  325. }
  326. else
  327. {
  328. foreach (var choose in chooses1)
  329. {
  330. vlist1.ValueListItems.Add(choose);
  331. }
  332. }
  333. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].ValueList = vlist1;
  334. }
  335. break;
  336. case "TextDefault":
  337. if (defaultEntity.ReportColumn.ToUpper() == "PROBE_NAME" )
  338. {
  339. listProbe = new DataSourceList<HttCrackDetectionProbeEntity>();
  340. var dt =
  341. ServerHelper.GetData(
  342. "com.steering.mes.mcp.collarMaterial.ComBaseInfo.getBaseInfo",
  343. new object[] { "4097" }, ob);
  344. string[] defaultProbe = defaultEntity.TextDefault.Split(';');
  345. if (dt != null && dt.Rows.Count > 0 && defaultProbe.Length > 0)
  346. {
  347. foreach (string Probe in defaultProbe)
  348. {
  349. listProbe.Add(new HttCrackDetectionProbeEntity()
  350. {
  351. ProbeTypeCode = Probe,
  352. ProbeTypeName =
  353. dt.AsEnumerable()
  354. .Where(p => p["BASECODE"].ToString() == Probe)
  355. .Select(p => p["BASENAME"].ToString())
  356. .FirstOrDefault(),
  357. ProbeQty =
  358. HttReportDefaultEntity.Any(
  359. p => p.ReportColumn.ToUpper() == "PROBE_QTY_" + Probe)
  360. ? HttReportDefaultEntity.Where(
  361. p => p.ReportColumn.ToUpper() == "PROBE_QTY_" + Probe).
  362. Select(p => p.TextDefault).FirstOrDefault()
  363. : "",
  364. ProbeParameters =
  365. HttReportDefaultEntity.Any(
  366. p => p.ReportColumn.ToUpper() == "PROBE_PARAMETERS_" + Probe)
  367. ? HttReportDefaultEntity.Where(
  368. p => p.ReportColumn.ToUpper() == "PROBE_PARAMETERS_" + Probe).
  369. Select(p => p.TextDefault).FirstOrDefault()
  370. : ""
  371. });
  372. }
  373. list[0].ProbeName = listProbe.Any() ?
  374. listProbe.Select(p => p.ProbeTypeName).Aggregate((a, b) => a + (a == "" ? "" : ",") + b) : "";
  375. }
  376. }else if (defaultEntity.ReportColumn.ToUpper() == "STANDARD_NAME")
  377. {
  378. listStand = new List<HttCrackDetectionStandardEntity>();
  379. list[0].StandardName = "";
  380. }
  381. else
  382. {
  383. SetPropertyValue(Propertie[0], list[0], defaultEntity.TextDefault);
  384. }
  385. break;
  386. case "DroplistDefult":
  387. if (defaultEntity.ReportColumn.ToUpper() == "PROBE_NAME" ||
  388. defaultEntity.ReportColumn.ToUpper() == "STANDARD_NAME")
  389. {
  390. return;
  391. }
  392. if (defaultEntity.DroplistUsed == "")
  393. {
  394. ValueList vlist1 = new ValueList();
  395. var dt =
  396. ServerHelper.GetData(
  397. "com.steering.mes.mcp.collarMaterial.ComBaseInfo.getBaseInfo",
  398. new object[] { defaultEntity.DroplistDefult }, ob);
  399. if (dt != null && dt.Rows.Count > 0)
  400. {
  401. foreach (DataRow row in dt.Rows)
  402. {
  403. vlist1.ValueListItems.Add(row["BASENAME"].ToString());
  404. }
  405. }
  406. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].ValueList = vlist1;
  407. }
  408. break;
  409. case "DroplistUsed":
  410. if (defaultEntity.ReportColumn.ToUpper() == "PROBE_NAME" ||
  411. defaultEntity.ReportColumn.ToUpper() == "STANDARD_NAME")
  412. {
  413. return;
  414. }
  415. ValueList vlist = new ValueList();
  416. string[] chooses = defaultEntity.DroplistUsed.Split(';');
  417. if (defaultEntity.DroplistDefult != "" && defaultEntity.DroplistUsed == "")
  418. {
  419. var dt =
  420. ServerHelper.GetData(
  421. "com.steering.mes.mcp.collarMaterial.ComBaseInfo.getBaseInfo",
  422. new object[] { defaultEntity.DroplistDefult }, ob);
  423. if (dt != null && dt.Rows.Count > 0)
  424. {
  425. foreach (DataRow row in dt.Rows)
  426. {
  427. vlist.ValueListItems.Add(row["BASENAME"].ToString());
  428. }
  429. }
  430. }
  431. else
  432. {
  433. foreach (var choose in chooses)
  434. {
  435. vlist.ValueListItems.Add(choose.Replace("\n", "\r\n"));
  436. }
  437. }
  438. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].ValueList = vlist;
  439. break;
  440. case "ColumnVisible":
  441. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].Hidden = defaultEntity.ColumnVisible !=
  442. "1";
  443. break;
  444. case "OriginX":
  445. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].RowLayoutColumnInfo.OriginX = int.Parse(defaultEntity.OriginX.ToString3());
  446. break;
  447. case "OriginY":
  448. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].RowLayoutColumnInfo.OriginY = int.Parse(defaultEntity.OriginY.ToString3());
  449. break;
  450. case "SpanX":
  451. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].RowLayoutColumnInfo.SpanX = int.Parse(defaultEntity.SpanX.ToString3());
  452. break;
  453. case "SpanY":
  454. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].RowLayoutColumnInfo.SpanY = int.Parse(defaultEntity.SpanY.ToString3());
  455. break;
  456. case "CellSizeWidth" :
  457. case "CellSizeHigh":
  458. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].RowLayoutColumnInfo.PreferredCellSize = new System.Drawing.Size(int.Parse(defaultEntity.CellSizeWidth.ToString3()), int.Parse(defaultEntity.CellSizeHigh.ToString3()));
  459. break;
  460. case "LabelSizeWidth":
  461. case "LabelSizeHigh":
  462. ugPara.DisplayLayout.Bands[0].Columns[Propertie[0].Name].RowLayoutColumnInfo.PreferredLabelSize = new System.Drawing.Size(int.Parse(defaultEntity.LabelSizeWidth.ToString3()), int.Parse(defaultEntity.LabelSizeHigh.ToString3()));
  463. break;
  464. }
  465. }
  466. ugPara.UpdateData();
  467. ugPara.Refresh();
  468. }
  469. public void SetData(List<HttCrackDetectionParaEntity> datas,List<HttCrackDetectionProbeEntity> probes, List<HttCrackDetectionStandardEntity> stands, string PlineCode, List<HttReportDefaultEntity> HttDefault){
  470. SetValue(PlineCode, HttDefault);
  471. list = datas;
  472. listProbe = probes;
  473. listStand = stands;
  474. httCrackDetectionParaEntityBindingSource.DataSource = list;
  475. httCrackDetectionParaEntityBindingSource.ResetBindings(false);
  476. }
  477. public void SetStand(DataTable _dt)
  478. {
  479. _dtStand = _dt;
  480. }
  481. public void DefaulFromCraft(string ReportType)
  482. {
  483. DefaulFromCraft(_dtStand, ReportType);
  484. }
  485. public void DefaulFromCraft(DataTable dtStand, string ReportType)
  486. {
  487. if (dtStand != null && dtStand.Rows.Count > 0)
  488. {
  489. if (ReportType == "0" || ReportType == "15")
  490. {
  491. //超声管体 缺陷信息
  492. var UtDefect = dtStand.AsEnumerable().Where(p => p["PHY_CODE"].ToString2() == "P0032" || p["PHY_CODE"].ToString2() == "P0769").ToList();
  493. //超声管体 壁厚
  494. var UtWall = dtStand.AsEnumerable().Where(p => p["PHY_CODE"].ToString2() == "P0105").ToList();
  495. //超声管体 分层
  496. var UtLam = dtStand.AsEnumerable().Where(p => p["PHY_CODE"].ToString2() == "P0104").ToList();
  497. if (UtDefect.Count > 0)
  498. {
  499. #region 管体 超声获取工艺信息
  500. string Dir = UtDefect[0]["GROOVE_DIR"].ToString2();
  501. string Pos = UtDefect[0]["GROOVE_POS"].ToString2();
  502. if (ugPara.DisplayLayout.Bands[0].Columns["LongitudinalInternal"].Hidden == false)
  503. list[0].LongitudinalInternal = Pos.Contains("内") && Dir.Contains("纵")
  504. ? UtDefect[0]["LV_DESC"].ToString2()
  505. : "/";
  506. if (ugPara.DisplayLayout.Bands[0].Columns["LongitudinalExternal"].Hidden == false)
  507. list[0].LongitudinalExternal = Pos.Contains("外") && Dir.Contains("纵")
  508. ? UtDefect[0]["LV_DESC"].ToString2()
  509. : "/";
  510. if (ugPara.DisplayLayout.Bands[0].Columns["TransverseInternal"].Hidden == false)
  511. list[0].TransverseInternal = Pos.Contains("内") && Dir.Contains("横")
  512. ? UtDefect[0]["LV_DESC"].ToString2()
  513. : "/";
  514. if (ugPara.DisplayLayout.Bands[0].Columns["TransverseExternal"].Hidden == false)
  515. list[0].TransverseExternal = Pos.Contains("外") && Dir.Contains("横")
  516. ? UtDefect[0]["LV_DESC"].ToString2()
  517. : "/";
  518. if (ugPara.DisplayLayout.Bands[0].Columns["StandardDefect"].Hidden == false)
  519. list[0].StandardDefect = UtDefect[0]["STD_NAME"].ToString2();
  520. if (ugPara.DisplayLayout.Bands[0].Columns["CoverageDefect"].Hidden == false)
  521. list[0].CoverageDefect = UtDefect[0]["COVERAGE"].ToString2();
  522. if (ugPara.DisplayLayout.Bands[0].Columns["FrequencyDefect"].Hidden == false)
  523. list[0].FrequencyDefect = UtDefect[0]["DESC_RATE"].ToString2();
  524. }
  525. if (UtWall.Count > 0)
  526. {
  527. if (ugPara.DisplayLayout.Bands[0].Columns["StandardWall"].Hidden == false)
  528. list[0].StandardWall = UtWall[0]["STD_NAME"].ToString2();
  529. if (ugPara.DisplayLayout.Bands[0].Columns["CoverageWall"].Hidden == false)
  530. list[0].CoverageWall = UtWall[0]["COVERAGE"].ToString2();
  531. if (ugPara.DisplayLayout.Bands[0].Columns["FrequencyWall"].Hidden == false)
  532. list[0].FrequencyWall = UtWall[0]["DESC_RATE"].ToString2();
  533. if (ugPara.DisplayLayout.Bands[0].Columns["WallThickness"].Hidden == false)
  534. list[0].WallThickness = UtWall[0]["SIC"].ToString2();
  535. }
  536. else
  537. {
  538. if (ugPara.DisplayLayout.Bands[0].Columns["WallThickness"].Hidden == false)
  539. list[0].WallThickness = "/";
  540. if (ugPara.DisplayLayout.Bands[0].Columns["StandardWall"].Hidden == false)
  541. list[0].StandardWall = "/";
  542. if (ugPara.DisplayLayout.Bands[0].Columns["CoverageWall"].Hidden == false)
  543. list[0].CoverageWall = "/";
  544. if (ugPara.DisplayLayout.Bands[0].Columns["FrequencyWall"].Hidden == false)
  545. list[0].FrequencyWall = "/";
  546. }
  547. if (UtLam.Count > 0)
  548. {
  549. if (ugPara.DisplayLayout.Bands[0].Columns["StandardLam"].Hidden == false)
  550. list[0].StandardLam = UtLam[0]["STD_NAME"].ToString2();
  551. if (ugPara.DisplayLayout.Bands[0].Columns["CoverageLam"].Hidden == false)
  552. list[0].CoverageLam = UtLam[0]["COVERAGE"].ToString2();
  553. if (ugPara.DisplayLayout.Bands[0].Columns["FrequencyLam"].Hidden == false)
  554. list[0].FrequencyLam = UtLam[0]["DESC_RATE"].ToString2();
  555. //list[0].Lamination = UtLam[0]["LV_DESC"].ToString2();
  556. //if (list[0].Lamination == "/")
  557. //{
  558. // list[0].Lamination = "√";
  559. //}
  560. }
  561. else
  562. {
  563. if (ugPara.DisplayLayout.Bands[0].Columns["Lamination"].Hidden == false)
  564. list[0].Lamination = "/";
  565. if (ugPara.DisplayLayout.Bands[0].Columns["StandardLam"].Hidden == false)
  566. list[0].StandardLam = "/";
  567. if (ugPara.DisplayLayout.Bands[0].Columns["CoverageLam"].Hidden == false)
  568. list[0].CoverageLam = "/";
  569. if (ugPara.DisplayLayout.Bands[0].Columns["FrequencyLam"].Hidden == false)
  570. list[0].FrequencyLam = "/";
  571. #endregion
  572. }
  573. }
  574. if (ReportType == "1" || ReportType == "10")
  575. {
  576. //超声管端 缺陷信息
  577. var UtDefect = dtStand.AsEnumerable().Where(p => p["PHY_CODE"].ToString2() == "P0149").ToList();
  578. //超声管端 壁厚
  579. var UtWall = dtStand.AsEnumerable().Where(p => p["PHY_CODE"].ToString2() == "P0469" || p["PHY_CODE"].ToString2() == "P0107" ).ToList();
  580. //超声管端 分层
  581. var UtLam = dtStand.AsEnumerable().Where(p => p["PHY_CODE"].ToString2() == "P0040").ToList();
  582. if (UtDefect.Count > 0)
  583. {
  584. #region 管端超声 获取工艺信息
  585. string Dir = UtDefect[0]["GROOVE_DIR"].ToString2();
  586. string Pos = UtDefect[0]["GROOVE_POS"].ToString2();
  587. if (ugPara.DisplayLayout.Bands[0].Columns["LongitudinalInternal"].Hidden == false)
  588. list[0].LongitudinalInternal = Pos.Contains("内") && Dir.Contains("纵")
  589. ? UtDefect[0]["LV_DESC"].ToString2()
  590. : "/";
  591. if (ugPara.DisplayLayout.Bands[0].Columns["LongitudinalExternal"].Hidden == false)
  592. list[0].LongitudinalExternal = Pos.Contains("外") && Dir.Contains("纵")
  593. ? UtDefect[0]["LV_DESC"].ToString2()
  594. : "/";
  595. if (ugPara.DisplayLayout.Bands[0].Columns["TransverseInternal"].Hidden == false)
  596. list[0].TransverseInternal = Pos.Contains("内") && Dir.Contains("横")
  597. ? UtDefect[0]["LV_DESC"].ToString2()
  598. : "/";
  599. if (ugPara.DisplayLayout.Bands[0].Columns["TransverseExternal"].Hidden == false)
  600. list[0].TransverseExternal = Pos.Contains("外") && Dir.Contains("横")
  601. ? UtDefect[0]["LV_DESC"].ToString2()
  602. : "/";
  603. if (ugPara.DisplayLayout.Bands[0].Columns["StandardDefect"].Hidden == false)
  604. list[0].StandardDefect = UtDefect[0]["STD_NAME"].ToString2();
  605. if (ugPara.DisplayLayout.Bands[0].Columns["CoverageDefect"].Hidden == false)
  606. list[0].CoverageDefect = UtDefect[0]["COVERAGE"].ToString2();
  607. if (ugPara.DisplayLayout.Bands[0].Columns["FrequencyDefect"].Hidden == false)
  608. list[0].FrequencyDefect = UtDefect[0]["DESC_RATE"].ToString2();
  609. }
  610. if (UtWall.Count > 0)
  611. {
  612. if (ugPara.DisplayLayout.Bands[0].Columns["StandardWall"].Hidden == false)
  613. list[0].StandardWall = UtWall[0]["STD_NAME"].ToString2();
  614. if (ugPara.DisplayLayout.Bands[0].Columns["CoverageWall"].Hidden == false)
  615. list[0].CoverageWall = UtWall[0]["COVERAGE"].ToString2();
  616. if (ugPara.DisplayLayout.Bands[0].Columns["FrequencyWall"].Hidden == false)
  617. list[0].FrequencyWall = UtWall[0]["DESC_RATE"].ToString2();
  618. if (ugPara.DisplayLayout.Bands[0].Columns["WallThickness"].Hidden == false)
  619. list[0].WallThickness = UtWall[0]["SIC"].ToString2();
  620. }
  621. else
  622. {
  623. if (ugPara.DisplayLayout.Bands[0].Columns["WallThickness"].Hidden == false)
  624. list[0].WallThickness = "/";
  625. if (ugPara.DisplayLayout.Bands[0].Columns["StandardWall"].Hidden == false)
  626. list[0].StandardWall = "/";
  627. if (ugPara.DisplayLayout.Bands[0].Columns["CoverageWall"].Hidden == false)
  628. list[0].CoverageWall = "/";
  629. if (ugPara.DisplayLayout.Bands[0].Columns["FrequencyWall"].Hidden == false)
  630. list[0].FrequencyWall = "/";
  631. }
  632. if (UtLam.Count > 0)
  633. {
  634. if (ugPara.DisplayLayout.Bands[0].Columns["StandardLam"].Hidden == false)
  635. list[0].StandardLam = UtLam[0]["STD_NAME"].ToString2();
  636. if (ugPara.DisplayLayout.Bands[0].Columns["CoverageLam"].Hidden == false)
  637. list[0].CoverageLam = UtLam[0]["COVERAGE"].ToString2();
  638. if (ugPara.DisplayLayout.Bands[0].Columns["FrequencyLam"].Hidden == false)
  639. list[0].FrequencyLam = UtLam[0]["DESC_RATE"].ToString2();
  640. //list[0].Lamination = UtLam[0]["LV_DESC"].ToString2();
  641. //if (list[0].Lamination == "/")
  642. //{
  643. // list[0].Lamination = "√";
  644. //}
  645. }
  646. else
  647. {
  648. if (ugPara.DisplayLayout.Bands[0].Columns["Lamination"].Hidden == false)
  649. list[0].Lamination = "/";
  650. if (ugPara.DisplayLayout.Bands[0].Columns["StandardLam"].Hidden == false)
  651. list[0].StandardLam = "/";
  652. if (ugPara.DisplayLayout.Bands[0].Columns["CoverageLam"].Hidden == false)
  653. list[0].CoverageLam = "/";
  654. if (ugPara.DisplayLayout.Bands[0].Columns["FrequencyLam"].Hidden == false)
  655. list[0].FrequencyLam = "/";
  656. #endregion
  657. }
  658. }
  659. if (ReportType == "4")
  660. {
  661. //涡流探伤 缺陷信息
  662. var UtDefect = dtStand.AsEnumerable().Where(p => p["PHY_CODE"].ToString2() == "P0044").ToList();
  663. if (UtDefect.Count > 0)
  664. {
  665. #region 涡流 获取工艺信息
  666. if (ugPara.DisplayLayout.Bands[0].Columns["AccpetanceLevel"].Hidden == false)
  667. list[0].AccpetanceLevel = UtDefect[0]["LV_DESC"].ToString2();
  668. if (ugPara.DisplayLayout.Bands[0].Columns["StandardDefect"].Hidden == false)
  669. list[0].StandardDefect = UtDefect[0]["STD_NAME"].ToString2();
  670. if (ugPara.DisplayLayout.Bands[0].Columns["CoverageDefect"].Hidden == false)
  671. list[0].CoverageDefect = UtDefect[0]["COVERAGE"].ToString2();
  672. if (ugPara.DisplayLayout.Bands[0].Columns["FrequencyDefect"].Hidden == false)
  673. list[0].FrequencyDefect = UtDefect[0]["DESC_RATE"].ToString2();
  674. #endregion
  675. }
  676. }
  677. if (ReportType == "11" || ReportType == "12" || ReportType == "13" || ReportType == "16")
  678. {
  679. //磁粉 缺陷信息
  680. var UtDefect = dtStand.AsEnumerable().Where(p => p["PHY_CODE"].ToString2() == "P0106" || p["PHY_CODE"].ToString2() == "P0108").ToList();
  681. // 壁厚
  682. var UtWall = dtStand.AsEnumerable().Where(p => p["PHY_CODE"].ToString2() == "P0469" || p["PHY_CODE"].ToString2() == "P0107").ToList();
  683. if (UtDefect.Count > 0)
  684. {
  685. #region 磁粉 获取工艺信息 未完
  686. string Dir = UtDefect[0]["GROOVE_DIR"].ToString2();
  687. string Pos = UtDefect[0]["GROOVE_POS"].ToString2();
  688. if (ugPara.DisplayLayout.Bands[0].Columns["LongitudinalInternal"].Hidden == false)
  689. list[0].LongitudinalInternal = Pos.Contains("内") && Dir.Contains("纵")
  690. ? UtDefect[0]["LV_DESC"].ToString2()
  691. : "/";
  692. if (ugPara.DisplayLayout.Bands[0].Columns["LongitudinalExternal"].Hidden == false)
  693. list[0].LongitudinalExternal = Pos.Contains("外") && Dir.Contains("纵")
  694. ? UtDefect[0]["LV_DESC"].ToString2()
  695. : "/";
  696. if (ugPara.DisplayLayout.Bands[0].Columns["TransverseInternal"].Hidden == false)
  697. list[0].TransverseInternal = Pos.Contains("内") && Dir.Contains("横")
  698. ? UtDefect[0]["LV_DESC"].ToString2()
  699. : "/";
  700. if (ugPara.DisplayLayout.Bands[0].Columns["TransverseExternal"].Hidden == false)
  701. list[0].TransverseExternal = Pos.Contains("外") && Dir.Contains("横")
  702. ? UtDefect[0]["LV_DESC"].ToString2()
  703. : "/";
  704. if (ugPara.DisplayLayout.Bands[0].Columns["AccpetanceLevel"].Hidden == false)
  705. list[0].AccpetanceLevel = UtDefect[0]["LV_DESC"].ToString2();
  706. if (ugPara.DisplayLayout.Bands[0].Columns["StandardDefect"].Hidden == false)
  707. list[0].StandardDefect = UtDefect[0]["STD_NAME"].ToString2();
  708. if (ugPara.DisplayLayout.Bands[0].Columns["CoverageDefect"].Hidden == false)
  709. list[0].CoverageDefect = UtDefect[0]["COVERAGE"].ToString2();
  710. if (ugPara.DisplayLayout.Bands[0].Columns["FrequencyDefect"].Hidden == false)
  711. list[0].FrequencyDefect = UtDefect[0]["DESC_RATE"].ToString2();
  712. #endregion
  713. }
  714. if (UtWall.Count > 0)
  715. {
  716. if (ugPara.DisplayLayout.Bands[0].Columns["StandardWall"].Hidden == false)
  717. list[0].StandardWall = UtWall[0]["STD_NAME"].ToString2();
  718. if (ugPara.DisplayLayout.Bands[0].Columns["CoverageWall"].Hidden == false)
  719. list[0].CoverageWall = UtWall[0]["COVERAGE"].ToString2();
  720. if (ugPara.DisplayLayout.Bands[0].Columns["FrequencyWall"].Hidden == false)
  721. list[0].FrequencyWall = UtWall[0]["DESC_RATE"].ToString2();
  722. if (ugPara.DisplayLayout.Bands[0].Columns["WallThickness"].Hidden == false)
  723. list[0].WallThickness = UtWall[0]["SIC"].ToString2();
  724. }
  725. else
  726. {
  727. if (ugPara.DisplayLayout.Bands[0].Columns["WallThickness"].Hidden == false)
  728. list[0].WallThickness = "/";
  729. if (ugPara.DisplayLayout.Bands[0].Columns["StandardWall"].Hidden == false)
  730. list[0].StandardWall = "/";
  731. if (ugPara.DisplayLayout.Bands[0].Columns["CoverageWall"].Hidden == false)
  732. list[0].CoverageWall = "/";
  733. if (ugPara.DisplayLayout.Bands[0].Columns["FrequencyWall"].Hidden == false)
  734. list[0].FrequencyWall = "/";
  735. }
  736. }
  737. if (ReportType == "16")
  738. {
  739. //磁粉 缺陷信息
  740. var UtDefect = dtStand.AsEnumerable().Where(p => p["PHY_CODE"].ToString2() == "P0109").ToList();
  741. if (UtDefect.Count > 0)
  742. {
  743. #region 磁粉 获取工艺信息 未完
  744. string Dir = UtDefect[0]["GROOVE_DIR"].ToString2();
  745. string Pos = UtDefect[0]["GROOVE_POS"].ToString2();
  746. if (ugPara.DisplayLayout.Bands[0].Columns["LongitudinalInternal"].Hidden == false)
  747. list[0].LongitudinalInternal = Pos.Contains("内") && Dir.Contains("纵")
  748. ? UtDefect[0]["LV_DESC"].ToString2()
  749. : "/";
  750. if (ugPara.DisplayLayout.Bands[0].Columns["LongitudinalExternal"].Hidden == false)
  751. list[0].LongitudinalExternal = Pos.Contains("外") && Dir.Contains("纵")
  752. ? UtDefect[0]["LV_DESC"].ToString2()
  753. : "/";
  754. if (ugPara.DisplayLayout.Bands[0].Columns["TransverseInternal"].Hidden == false)
  755. list[0].TransverseInternal = Pos.Contains("内") && Dir.Contains("横")
  756. ? UtDefect[0]["LV_DESC"].ToString2()
  757. : "/";
  758. if (ugPara.DisplayLayout.Bands[0].Columns["TransverseExternal"].Hidden == false)
  759. list[0].TransverseExternal = Pos.Contains("外") && Dir.Contains("横")
  760. ? UtDefect[0]["LV_DESC"].ToString2()
  761. : "/";
  762. if (Pos == "/" && Dir == "/")
  763. {
  764. list[0].LongitudinalInternal = UtDefect[0]["LV_DESC"].ToString2();
  765. list[0].LongitudinalExternal = UtDefect[0]["LV_DESC"].ToString2();
  766. list[0].TransverseInternal = UtDefect[0]["LV_DESC"].ToString2();
  767. list[0].TransverseExternal = UtDefect[0]["LV_DESC"].ToString2();
  768. }
  769. if (ugPara.DisplayLayout.Bands[0].Columns["AccpetanceLevel"].Hidden == false)
  770. list[0].AccpetanceLevel = UtDefect[0]["LV_DESC"].ToString2();
  771. if (ugPara.DisplayLayout.Bands[0].Columns["StandardDefect"].Hidden == false)
  772. list[0].StandardDefect = UtDefect[0]["STD_NAME"].ToString2();
  773. if (ugPara.DisplayLayout.Bands[0].Columns["CoverageDefect"].Hidden == false)
  774. list[0].CoverageDefect = UtDefect[0]["COVERAGE"].ToString2();
  775. if (ugPara.DisplayLayout.Bands[0].Columns["FrequencyDefect"].Hidden == false)
  776. list[0].FrequencyDefect = UtDefect[0]["DESC_RATE"].ToString2();
  777. #endregion
  778. }
  779. }
  780. if (ReportType == "14")
  781. {
  782. //超声管端 缺陷信息
  783. var UtDefect = dtStand.AsEnumerable().Where(p => p["PHY_CODE"].ToString2() == "P0150").ToList();
  784. var UtWall = dtStand.AsEnumerable().Where(p => p["PHY_CODE"].ToString2() == "P0469" || p["PHY_CODE"].ToString2() == "P0107").ToList();
  785. if (UtDefect.Count > 0)
  786. {
  787. #region 管端电磁声 获取工艺信息
  788. string Dir = UtDefect[0]["GROOVE_DIR"].ToString2();
  789. string Pos = UtDefect[0]["GROOVE_POS"].ToString2();
  790. if (ugPara.DisplayLayout.Bands[0].Columns["LongitudinalInternal"].Hidden == false)
  791. list[0].LongitudinalInternal = Pos.Contains("内") && Dir.Contains("纵")
  792. ? UtDefect[0]["LV_DESC"].ToString2()
  793. : "/";
  794. if (ugPara.DisplayLayout.Bands[0].Columns["LongitudinalExternal"].Hidden == false)
  795. list[0].LongitudinalExternal = Pos.Contains("外") && Dir.Contains("纵")
  796. ? UtDefect[0]["LV_DESC"].ToString2()
  797. : "/";
  798. if (ugPara.DisplayLayout.Bands[0].Columns["TransverseInternal"].Hidden == false)
  799. list[0].TransverseInternal = Pos.Contains("内") && Dir.Contains("横")
  800. ? UtDefect[0]["LV_DESC"].ToString2()
  801. : "/";
  802. if (ugPara.DisplayLayout.Bands[0].Columns["TransverseExternal"].Hidden == false)
  803. list[0].TransverseExternal = Pos.Contains("外") && Dir.Contains("横")
  804. ? UtDefect[0]["LV_DESC"].ToString2()
  805. : "/";
  806. if (ugPara.DisplayLayout.Bands[0].Columns["StandardDefect"].Hidden == false)
  807. list[0].StandardDefect = UtDefect[0]["STD_NAME"].ToString2();
  808. if (ugPara.DisplayLayout.Bands[0].Columns["CoverageDefect"].Hidden == false)
  809. list[0].CoverageDefect = UtDefect[0]["COVERAGE"].ToString2();
  810. if (ugPara.DisplayLayout.Bands[0].Columns["FrequencyDefect"].Hidden == false)
  811. list[0].FrequencyDefect = UtDefect[0]["DESC_RATE"].ToString2();
  812. if (UtWall.Count > 0)
  813. {
  814. if (ugPara.DisplayLayout.Bands[0].Columns["StandardWall"].Hidden == false)
  815. list[0].StandardWall = UtWall[0]["STD_NAME"].ToString2();
  816. if (ugPara.DisplayLayout.Bands[0].Columns["CoverageWall"].Hidden == false)
  817. list[0].CoverageWall = UtWall[0]["COVERAGE"].ToString2();
  818. if (ugPara.DisplayLayout.Bands[0].Columns["FrequencyWall"].Hidden == false)
  819. list[0].FrequencyWall = UtWall[0]["DESC_RATE"].ToString2();
  820. if (ugPara.DisplayLayout.Bands[0].Columns["WallThickness"].Hidden == false)
  821. list[0].WallThickness = UtWall[0]["SIC"].ToString2();
  822. }
  823. else
  824. {
  825. if (ugPara.DisplayLayout.Bands[0].Columns["WallThickness"].Hidden == false)
  826. list[0].WallThickness = "/";
  827. if (ugPara.DisplayLayout.Bands[0].Columns["StandardWall"].Hidden == false)
  828. list[0].StandardWall = "/";
  829. if (ugPara.DisplayLayout.Bands[0].Columns["CoverageWall"].Hidden == false)
  830. list[0].CoverageWall = "/";
  831. if (ugPara.DisplayLayout.Bands[0].Columns["FrequencyWall"].Hidden == false)
  832. list[0].FrequencyWall = "/";
  833. }
  834. }
  835. #endregion
  836. }
  837. ugPara.UpdateData();
  838. ugPara.Refresh();
  839. }
  840. }
  841. public void SetReportNumber(string ReportNumber)
  842. {
  843. ugPara.Rows[0].Cells["ReportNumber"].Value = ReportNumber;
  844. ugPara.UpdateData();
  845. ugPara.Refresh();
  846. }
  847. /// <summary>
  848. /// 上料炉号
  849. /// </summary>
  850. public string FeedStoveNo { get; set; }
  851. public decimal ActCount { get; set; }
  852. public string BatchNo { get; set; }
  853. public string GroupNo { get; set; }
  854. public void SetFont(Font f1)
  855. {
  856. ugPara.Font = f1;
  857. foreach (UltraGridColumn UltraGridColumn in ugPara.DisplayLayout.Bands[0].Columns)
  858. {
  859. UltraGridColumn.Header.Appearance.FontData.Bold = f1.Bold ? DefaultableBoolean.True : DefaultableBoolean.False;
  860. UltraGridColumn.Header.Appearance.FontData.Name = f1.Name;
  861. UltraGridColumn.Header.Appearance.FontData.SizeInPoints = f1.SizeInPoints;
  862. }
  863. }
  864. private void ugPara_CellChange(object sender, CellEventArgs e)
  865. {
  866. ugPara.UpdateData();
  867. if (e.Cell.Column.Key.Equals("OperatorName"))
  868. {
  869. if (listNames!=null&& listNames.Any(p => p.UserName == list[0].OperatorName))
  870. list[0].OperatorLevel =
  871. listNames.Where(p => p.UserName == list[0].OperatorName).Select(p => p.UseridGrade).FirstOrDefault();
  872. }
  873. if (e.Cell.Column.Key.Equals("Signatory"))
  874. {
  875. if (listNames != null && listNames.Any(p => p.UserName == list[0].Signatory))
  876. list[0].SignatoryLevel =
  877. listNames.Where(p => p.UserName == list[0].Signatory).Select(p => p.UseridGrade).FirstOrDefault();
  878. }
  879. this.ugPara.UpdateData();
  880. ugPara.Refresh();
  881. }
  882. /// <summary>
  883. /// 设置属性值 当属性类型和实际值类型不一样 做强制转换
  884. /// </summary>
  885. /// <param name="propertyInfo"></param>
  886. /// <param name="model"></param>
  887. /// <param name="data"></param>
  888. private static void SetPropertyValue(PropertyInfo propertyInfo, object model, object data)
  889. {
  890. try
  891. {
  892. if (data == null) return;
  893. propertyInfo.SetValue(model,
  894. propertyInfo.PropertyType == data.GetType()
  895. ? data
  896. : Convert.ChangeType(data, propertyInfo.PropertyType), null);
  897. }
  898. catch (Exception)
  899. {
  900. // ignored
  901. }
  902. }
  903. private void utProbe_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e)
  904. {
  905. FrmChooseProbe FrmChooseProbe = new FrmChooseProbe(HttReportDefaultEntity, listProbe.Select(p=>p.Clone()).ToList(),ob);
  906. FrmChooseProbe.ShowDialog();
  907. if (FrmChooseProbe.DialogResult == DialogResult.OK)
  908. {
  909. listProbe = FrmChooseProbe.GetValue();
  910. list[0].ProbeName = listProbe.Any() ?
  911. listProbe.Select(p => p.ProbeTypeName).Aggregate((a, b) => a + (a == "" ? "" : ",") + b) : "";
  912. }
  913. ugPara.PerformAction(UltraGridAction.ExitEditMode);
  914. }
  915. private void utStandard_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e)
  916. {
  917. FrmChooseStandard FrmChooseStandard = new FrmChooseStandard(HttReportDefaultEntity, listStand.Select(p => p.Clone()).ToList(), ob);
  918. FrmChooseStandard.ShowDialog();
  919. if (FrmChooseStandard.DialogResult == DialogResult.OK)
  920. {
  921. listStand = FrmChooseStandard.GetValue();
  922. list[0].StandardName = listStand.Any() ?
  923. listStand.Select(p => p.StandardName).Aggregate((a, b) => a + (a == "" ? "" : ",") + b) : "";
  924. }
  925. ugPara.PerformAction(UltraGridAction.ExitEditMode);
  926. }
  927. }
  928. }