SalePriceClass.cs 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Data;
  4. using System.Linq;
  5. using System.Text;
  6. using Core.Mes.Client.Comm.Server;
  7. using CoreFS.CA06;
  8. using Infragistics.Win;
  9. using Infragistics.Win.UltraWinEditors;
  10. using System.Collections;
  11. using Infragistics.Win.UltraWinEditors;
  12. using Infragistics.Win.UltraWinGrid;
  13. using System.Drawing;
  14. namespace Core.StlMes.Client.SalePrice
  15. {
  16. public class SalePriceClass
  17. {
  18. /// <summary>
  19. /// 初始化下拉框
  20. /// </summary>
  21. /// <param name="uce">下拉框</param>
  22. /// <param name="methodId">请求的服务</param>
  23. /// <param name="valueMember">值成员</param>
  24. /// <param name="ob">ob对象</param>
  25. /// <param name="isEmpty">是否有空行</param>
  26. public static void InitComboEditor(UltraComboEditor uce, string methodId, string valueMember, OpeBase ob, bool isEmpty)
  27. {
  28. DataTable dt = ServerHelper.GetData(methodId, null, ob);
  29. if (dt != null && dt.Rows.Count > 0)
  30. {
  31. if (isEmpty)
  32. {
  33. Object[] obj = new Object[] { "", "" };
  34. DataRow dr = dt.NewRow();
  35. dr.ItemArray = obj;
  36. dt.Rows.InsertAt(dr, 0);
  37. }
  38. uce.DataSource = dt;
  39. uce.ValueMember = valueMember;
  40. ClsBaseInfo.SetComboItemHeight(uce);
  41. }
  42. }
  43. /// <summary>
  44. /// 初始化下拉框
  45. /// </summary>
  46. /// <param name="uce">下拉框</param>
  47. /// <param name="methodId">请求的服务</param>
  48. /// <param name="valueMember">值成员</param>
  49. /// <param name="ob">ob对象</param>
  50. /// <param name="isEmpty">是否有空行</param>
  51. public static void InitComboEditor1(UltraComboEditor uce, string methodId, string valueMember, string displayMember, OpeBase ob, bool isEmpty)
  52. {
  53. DataTable dt = ServerHelper.GetData(methodId, null, ob);
  54. if (dt != null && dt.Rows.Count > 0)
  55. {
  56. if (isEmpty)
  57. {
  58. Object[] obj = new Object[] { "", "" };
  59. DataRow dr = dt.NewRow();
  60. dr.ItemArray = obj;
  61. dt.Rows.InsertAt(dr, 0);
  62. }
  63. uce.DataSource = dt;
  64. uce.ValueMember = valueMember;
  65. uce.DisplayMember = displayMember;
  66. ClsBaseInfo.SetComboItemHeight(uce);
  67. }
  68. }
  69. /// <summary>
  70. /// 初始化下拉框 --带参数的
  71. /// </summary>
  72. /// <param name="uce"></param>
  73. /// <param name="methodId"></param>
  74. /// <param name="valueMember">值成员</param>
  75. /// <param name="displayMember">显示成员</param>
  76. /// <param name="ob"></param>
  77. /// <param name="isEmpty"></param>
  78. /// <param name="obj"></param>
  79. public static void InitComboEditorWithParm(UltraComboEditor uce, string methodId, string valueMember, string displayMember, OpeBase ob, bool isEmpty, Object[] parm)
  80. {
  81. DataTable dt = ServerHelper.GetData(methodId, parm, ob);
  82. if (dt != null && dt.Rows.Count > 0)
  83. {
  84. if (isEmpty)
  85. {
  86. Object[] obj = new Object[] { "", "" };
  87. DataRow dr = dt.NewRow();
  88. dr.ItemArray = obj;
  89. dt.Rows.InsertAt(dr, 0);
  90. }
  91. uce.DataSource = dt;
  92. uce.ValueMember = valueMember;
  93. uce.DisplayMember = displayMember;
  94. ClsBaseInfo.SetComboItemHeight(uce);
  95. }
  96. }
  97. /// <summary>
  98. /// 根据数据DATATYPE 返回类型简称
  99. /// </summary>
  100. /// <param name="dataType"></param>
  101. /// <returns></returns>
  102. public static string GetColumnType(string dataType)
  103. {
  104. if (dataType.Equals(""))
  105. return "";
  106. if (dataType.Contains("CHAR"))
  107. return "C";
  108. if (dataType.Contains("INT") || dataType.Contains("NUM"))
  109. return "D";
  110. if (dataType.Contains("DATE"))
  111. return "T";
  112. else
  113. return ""; //尚未定义
  114. }
  115. //public static string[] XiaXianFuHao = new string[2] { ">",">=" }; //下限 符号
  116. //public static string[] ShangXianFuHao = new string[2] { "<", "<=" }; //下限 符号
  117. //static ValueListItem DaYu = new ValueListItem(">");
  118. //static ValueListItem DaYuDengYu = new ValueListItem(">=");
  119. //static ValueListItem XiaoYu = new ValueListItem("<");
  120. //static ValueListItem XiaoYuDengYu = new ValueListItem("<=");
  121. //public ValueListItem[] XiaXianFuHao = new ValueListItem[2] { new ValueListItem(">"), new ValueListItem(">=") };
  122. //public ValueListItem[] ShangXianFuHao = new ValueListItem[2] { new ValueListItem("<"), new ValueListItem("<=") };
  123. /// <summary>
  124. /// 初始化上限符号
  125. /// </summary>
  126. /// <param name="uce">下拉框</param>
  127. public static void NitializeSignMax(UltraComboEditor uce)
  128. {
  129. DataTable dt = new DataTable();
  130. dt.Columns.Add("STDMAX_SIGN");
  131. DataRow dr1 = dt.NewRow();
  132. dr1["STDMAX_SIGN"] = "";
  133. DataRow dr2 = dt.NewRow();
  134. dr2["STDMAX_SIGN"] = "<";
  135. DataRow dr3 = dt.NewRow();
  136. dr3["STDMAX_SIGN"] = "<=";
  137. dt.Rows.Add(dr1);
  138. dt.Rows.Add(dr2);
  139. dt.Rows.Add(dr3);
  140. uce.DataSource = dt;
  141. uce.DisplayMember = "STDMAX_SIGN";
  142. }
  143. /// <summary>
  144. /// 初始化下限符号
  145. /// </summary>
  146. /// <param name="uce">下拉框</param>
  147. public static void NitializeSignMin(UltraComboEditor uce)
  148. {
  149. DataTable dt = new DataTable();
  150. dt.Columns.Add("STDMIN_SIGN");
  151. DataRow dr1 = dt.NewRow();
  152. dr1["STDMIN_SIGN"] = "";
  153. DataRow dr2 = dt.NewRow();
  154. dr2["STDMIN_SIGN"] = ">";
  155. DataRow dr3 = dt.NewRow();
  156. dr3["STDMIN_SIGN"] = ">=";
  157. DataRow dr4 = dt.NewRow();
  158. dr4["STDMIN_SIGN"] = "=";
  159. dt.Rows.Add(dr1);
  160. dt.Rows.Add(dr2);
  161. dt.Rows.Add(dr3);
  162. dt.Rows.Add(dr4);
  163. uce.DataSource = dt;
  164. uce.DisplayMember = "STDMIN_SIGN";
  165. }
  166. public static bool IsRepeat(ArrayList yourValue)
  167. {
  168. Hashtable ht = new Hashtable();
  169. foreach (var mv in yourValue)
  170. {
  171. if (ht.Contains(mv))
  172. {
  173. return true;
  174. }
  175. else
  176. {
  177. ht.Add(mv,mv);
  178. }
  179. }
  180. return false;
  181. }
  182. /// <summary>
  183. /// 颜色区别
  184. /// </summary>
  185. /// <param name="ultraGrid">数据集</param>
  186. /// <param name="columnName">列</param>
  187. /// <param name="columnName">属性</param>
  188. public static void DistinguishColor(UltraGrid ultraGrid, string columnName, string state)
  189. {
  190. UltraGridRow row = null;
  191. UltraGridRow rowChild = null;
  192. for (int i = 0; i < ultraGrid.Rows.Count; i++)
  193. {
  194. row = ultraGrid.Rows[i];
  195. if (!row.Cells[columnName].Value.ToString().Equals(state))
  196. {
  197. row.Appearance.ForeColor = Color.Red;
  198. }
  199. if (row.HasChild())
  200. {
  201. for (int j = 0; j < row.ChildBands[0].Rows.Count; j++)
  202. {
  203. rowChild = row.ChildBands[0].Rows[j];
  204. if (!rowChild.Cells[columnName].Value.ToString().Equals(state))
  205. rowChild.Appearance.ForeColor = Color.Red;
  206. }
  207. }
  208. }
  209. }
  210. /// <summary>
  211. /// 执行DataTable中的查询返回新的DataTable
  212. /// </summary>
  213. /// <param name="dt">源数据DataTable</param>
  214. /// <param name="condition">查询条件</param>
  215. /// <returns></returns>
  216. public static DataTable GetNewDataTable(DataTable dt, string condition)
  217. {
  218. DataTable newdt = new DataTable();
  219. try
  220. {
  221. newdt = dt.Clone();
  222. DataRow[] dr = dt.Select(condition);
  223. for (int i = 0; i < dr.Length; i++)
  224. {
  225. newdt.ImportRow((DataRow)dr[i]);
  226. }
  227. return newdt;//返回的查询结果
  228. }
  229. catch (Exception ex)
  230. {
  231. //MessageBox.Show(ex.Message);
  232. return newdt;
  233. }
  234. }
  235. /// <summary>
  236. /// 初始化上限符号
  237. /// </summary>
  238. /// <param name="uce">下拉框</param>
  239. public static void NitializeFactorClassifyId(UltraComboEditor uce)
  240. {
  241. DataTable dt = new DataTable();
  242. dt.Columns.Add("FactorClassifyId");
  243. dt.Columns.Add("FactorClassifyName");
  244. DataRow dr1 = dt.NewRow();
  245. dr1["FactorClassifyId"] = "";
  246. dr1["FactorClassifyName"] = "";
  247. DataRow dr2 = dt.NewRow();
  248. dr2["FactorClassifyId"] = "X_1_FACTOR_ID";
  249. dr2["FactorClassifyName"] = "X轴因素一";
  250. DataRow dr3 = dt.NewRow();
  251. dr3["FactorClassifyId"] = "X_2_FACTOR_ID";
  252. dr3["FactorClassifyName"] = "X轴因素二";
  253. DataRow dr4 = dt.NewRow();
  254. dr4["FactorClassifyId"] = "X_3_FACTOR_ID";
  255. dr4["FactorClassifyName"] = "X轴因素三";
  256. DataRow dr5 = dt.NewRow();
  257. dr5["FactorClassifyId"] = "X_4_FACTOR_ID";
  258. dr5["FactorClassifyName"] = "X轴因素四";
  259. DataRow dr6 = dt.NewRow();
  260. dr6["FactorClassifyId"] = "X_5_FACTOR_ID";
  261. dr6["FactorClassifyName"] = "X轴因素五";
  262. DataRow dr7 = dt.NewRow();
  263. dr7["FactorClassifyId"] = "X_6_FACTOR_ID";
  264. dr7["FactorClassifyName"] = "X轴因素六";
  265. DataRow dr8 = dt.NewRow();
  266. dr8["FactorClassifyId"] = "X_7_FACTOR_ID";
  267. dr8["FactorClassifyName"] = "X轴因素七";
  268. DataRow dr9 = dt.NewRow();
  269. dr9["FactorClassifyId"] = "X_8_FACTOR_ID";
  270. dr9["FactorClassifyName"] = "X轴因素八";
  271. DataRow dr10 = dt.NewRow();
  272. dr10["FactorClassifyId"] = "Y_1_FACTOR_ID";
  273. dr10["FactorClassifyName"] = "Y轴范围一";
  274. DataRow dr11 = dt.NewRow();
  275. dr11["FactorClassifyId"] = "Y_2_FACTOR_ID";
  276. dr11["FactorClassifyName"] = "Y轴范围二";
  277. dt.Rows.Add(dr1);
  278. dt.Rows.Add(dr2);
  279. dt.Rows.Add(dr3);
  280. dt.Rows.Add(dr4);
  281. dt.Rows.Add(dr5);
  282. dt.Rows.Add(dr6);
  283. dt.Rows.Add(dr7);
  284. dt.Rows.Add(dr8);
  285. dt.Rows.Add(dr9);
  286. dt.Rows.Add(dr10);
  287. dt.Rows.Add(dr11);
  288. uce.DataSource = dt;
  289. uce.DisplayMember = "FactorClassifyName";
  290. uce.ValueMember = "FactorClassifyId";
  291. }
  292. /// <summary>
  293. /// 根据Column的 KEY来更改列显示标题
  294. /// </summary>
  295. /// <param name="BR_ID"></param>
  296. /// <param name="colName"></param>
  297. public static void ModifyColumnName(string BR_ID, string colName, UltraGrid ug, Boolean bl)
  298. {
  299. // this.ugFramePrice.DisplayLayout.Bands[0].Columns.Add(BR_ID);
  300. UltraGridColumn GridColumn = ug.DisplayLayout.Bands[0].Columns[BR_ID];
  301. GridColumn.Header.Caption = colName;
  302. GridColumn.Hidden = !bl;
  303. }
  304. }
  305. }