QcmBaseInfo.cs 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242
  1. using Core.Mes.Client.Comm.Server;
  2. using CoreFS.CA06;
  3. using Infragistics.Win.UltraWinEditors;
  4. using System;
  5. using System.Data;
  6. using System.Windows.Forms;
  7. namespace Core.StlMes.Client.Qcm
  8. {
  9. public class QcmBaseInfo
  10. {
  11. /// <summary>
  12. /// 填充质量标准名称
  13. /// </summary>
  14. /// <param name="cmb">ComboBox控件</param>
  15. /// <param name="ob">OpeBase操作对象</param>
  16. /// <param name="hasBlankLine">是否包含空行</param>
  17. /// <returns>是否填充成功</returns>
  18. public static bool Fill_STD_NAME(ComboBox cmb, OpeBase ob, bool hasBlankLine)
  19. {
  20. DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreStandard.bandCmbStd", new Object[] { }, ob);
  21. if (hasBlankLine && dt != null && dt.Rows.Count > 0)
  22. {
  23. DataRow dr = dt.NewRow();
  24. dt.Rows.InsertAt(dr, 0);
  25. }
  26. cmb.DataSource = dt;
  27. cmb.DisplayMember = "STD_NAME";
  28. cmb.ValueMember = "STD_CODE";
  29. return true;
  30. }
  31. /// <summary>
  32. /// 填充质量标准协会
  33. /// </summary>
  34. /// <param name="cmb">ComboBox控件</param>
  35. /// <param name="ob">OpeBase操作对象</param>
  36. /// <param name="hasBlankLine">是否包含空行</param>
  37. /// <returns>是否填充成功</returns>
  38. public static bool Fill_STD_STYLE(ComboBox cmb, OpeBase ob, bool hasBlankLine)
  39. {
  40. DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreStandard.bandCmbMaxStdXh", new Object[] { }, ob);
  41. if (hasBlankLine && dt != null && dt.Rows.Count > 0)
  42. {
  43. DataRow dr = dt.NewRow();
  44. dt.Rows.InsertAt(dr, 0);
  45. }
  46. cmb.DataSource = dt;
  47. cmb.DisplayMember = "BASENAME";
  48. cmb.ValueMember = "BASECODE";
  49. return true;
  50. }
  51. /// <summary>
  52. /// 填充质量品名
  53. /// </summary>
  54. /// <param name="cmb">ComboBox控件</param>
  55. /// <param name="ob">OpeBase操作对象</param>
  56. /// <param name="hasBlankLine">是否包含空行</param>
  57. /// <returns>是否填充成功</returns>
  58. public static bool Fill_ProducName(ComboBox cmb, OpeBase ob, bool hasBlankLine)
  59. {
  60. DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.ComBaseQuery.getProducName",
  61. new Object[] { }, ob);
  62. if (hasBlankLine && dt != null && dt.Rows.Count > 0)
  63. {
  64. DataRow dr = dt.NewRow();
  65. dt.Rows.InsertAt(dr, 0);
  66. }
  67. cmb.DataSource = dt;
  68. cmb.DisplayMember = "PRODUCNAME";
  69. cmb.ValueMember = "PRODUCCODE";
  70. return true;
  71. }
  72. /// <summary>
  73. /// 填充质量品名
  74. /// </summary>
  75. /// <param name="cmb">ComboBox控件</param>
  76. /// <param name="ob">OpeBase操作对象</param>
  77. /// <param name="hasBlankLine">是否包含空行</param>
  78. /// <returns>是否填充成功</returns>
  79. public static bool Fill_ProducName(UltraComboEditor cmb, OpeBase ob, bool hasBlankLine)
  80. {
  81. DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.ComBaseQuery.getProducName",
  82. new Object[] { }, ob);
  83. if (hasBlankLine && dt != null && dt.Rows.Count > 0)
  84. {
  85. DataRow dr = dt.NewRow();
  86. dt.Rows.InsertAt(dr, 0);
  87. }
  88. cmb.DataSource = dt;
  89. cmb.DisplayMember = "PRODUCNAME";
  90. cmb.ValueMember = "PRODUCCODE";
  91. ClsBaseInfo.SetComboItemHeight(cmb);
  92. return true;
  93. }
  94. /// <summary>
  95. /// 填充质量品名(简称)
  96. /// </summary>
  97. /// <param name="cmb">ComboBox控件</param>
  98. /// <param name="ob">OpeBase操作对象</param>
  99. /// <param name="hasBlankLine">是否包含空行</param>
  100. /// <returns>是否填充成功</returns>
  101. public static bool Fill_ProducJx(UltraComboEditor cmb, OpeBase ob, bool hasBlankLine)
  102. {
  103. DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.ComBaseQuery.getProducName2",
  104. new Object[] { }, ob);
  105. if (hasBlankLine && dt != null && dt.Rows.Count > 0)
  106. {
  107. DataRow dr = dt.NewRow();
  108. dt.Rows.InsertAt(dr, 0);
  109. }
  110. cmb.DataSource = dt;
  111. cmb.DisplayMember = "PRODUC_JX";
  112. cmb.ValueMember = "PRODUCCODE";
  113. ClsBaseInfo.SetComboItemHeight(cmb);
  114. return true;
  115. }
  116. /// <summary>
  117. /// 填充规格类型
  118. /// </summary>
  119. /// <param name="cmb">ComboBox控件</param>
  120. /// <param name="ob">OpeBase操作对象</param>
  121. /// <param name="hasBlankLine">是否包含空行</param>
  122. /// <returns>是否填充成功</returns>
  123. public static bool Fill_SpecType(UltraComboEditor cmb, bool hasBlankLine)
  124. {
  125. DataTable dt = new DataTable();
  126. dt.Columns.AddRange(new DataColumn[] { new DataColumn("ID"), new DataColumn("NAME") });
  127. dt.Rows.Add(new object[] { "A", "钢管" });
  128. dt.Rows.Add(new object[] { "B", "管坯" });
  129. dt.Rows.Add(new object[] { "D", "钢锭" });
  130. dt.Rows.Add(new object[] { "C", "其它" });
  131. if (hasBlankLine && dt != null && dt.Rows.Count > 0)
  132. {
  133. DataRow dr = dt.NewRow();
  134. dt.Rows.InsertAt(dr, 0);
  135. }
  136. cmb.DataSource = dt;
  137. cmb.DisplayMember = "NAME";
  138. cmb.ValueMember = "ID";
  139. ClsBaseInfo.SetComboItemHeight(cmb);
  140. return true;
  141. }
  142. /// <summary>
  143. /// 填充品名类型
  144. /// </summary>
  145. /// <param name="cmb"></param>
  146. /// <param name="hasBlankLine">是否空白行</param>
  147. /// <returns></returns>
  148. public static bool FillProductType(ComboBox cmb, bool hasBlankLine)
  149. {
  150. DataTable dt = new DataTable();
  151. dt.Columns.AddRange(new DataColumn[] { new DataColumn("NAME"), new DataColumn("CODE") });
  152. dt.Rows.Add(new object[] { "钢管(管坯)", "A" });
  153. dt.Rows.Add(new object[] { "钢管+接箍", "B" });
  154. dt.Rows.Add(new object[] { "短节+附件", "C" });
  155. dt.Rows.Add(new object[] { "接箍", "D" });
  156. dt.Rows.Add(new object[] { "双公短节", "E" });
  157. if (hasBlankLine)
  158. {
  159. DataRow dr = dt.NewRow();
  160. dt.Rows.InsertAt(dr, 0);
  161. }
  162. cmb.DataSource = dt;
  163. cmb.DisplayMember = "NAME";
  164. cmb.ValueMember = "CODE";
  165. return true;
  166. }
  167. /// <summary>
  168. /// 填充品名类型
  169. /// </summary>
  170. /// <param name="cmb"></param>
  171. /// <param name="hasBlankLine">是否空白行</param>
  172. /// <returns></returns>
  173. public static bool FillProductType(UltraComboEditor cmb, bool hasBlankLine)
  174. {
  175. DataTable dt = new DataTable();
  176. dt.Columns.AddRange(new DataColumn[] { new DataColumn("NAME"), new DataColumn("CODE") });
  177. dt.Rows.Add(new object[] { "钢管(管坯)", "A" });
  178. dt.Rows.Add(new object[] { "钢管+接箍", "B" });
  179. dt.Rows.Add(new object[] { "短节+附件", "C" });
  180. dt.Rows.Add(new object[] { "接箍", "D" });
  181. dt.Rows.Add(new object[] { "双工短节", "E" });
  182. if (hasBlankLine)
  183. {
  184. DataRow dr = dt.NewRow();
  185. dt.Rows.InsertAt(dr, 0);
  186. }
  187. cmb.DataSource = dt;
  188. cmb.DisplayMember = "NAME";
  189. cmb.ValueMember = "CODE";
  190. return true;
  191. }
  192. /// <summary>
  193. /// 判断6大标准,上下限同时存在时,数据的合法性。
  194. /// </summary>
  195. /// <param name="minSign">下限符号</param>
  196. /// <param name="maxSign">上限符号</param>
  197. /// <param name="minValue">下限值</param>
  198. /// <param name="maxValue">上限值</param>
  199. /// <returns>-1: 数据合理 0:数据不完整 1:符号导致的数据不合理 2:数据本身不合理</returns>
  200. public static int CheckStdData(string minSign, string maxSign, string minValue, string maxValue)
  201. {
  202. if (minSign == "" || maxSign == "" || minValue == "" || maxValue == "")
  203. {
  204. return 0; //数据不完整
  205. }
  206. if (minValue == maxValue) //范围值相同(上下限符号必须包含"=")
  207. {
  208. if (minSign.Contains("=") && maxSign.Contains("="))
  209. return -1; //合理
  210. return 1; //符号不合理
  211. }
  212. else
  213. {
  214. if (maxValue.TryParseDecimal() && minValue.TryParseDecimal() && Convert.ToDouble(maxValue) < Convert.ToDouble(minValue))
  215. {
  216. return 2; //数据大小不合理
  217. }
  218. return -1; //合理
  219. }
  220. }
  221. }
  222. }