ProcessData.cs 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247
  1. using Newtonsoft.Json;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Net;
  6. using System.Text;
  7. using System.Threading.Tasks;
  8. namespace MainForm
  9. {
  10. /// <summary>
  11. /// 加工数据(上传加工数据 接口用 参数)
  12. /// </summary>
  13. public class ProcessData // 加工数据
  14. {
  15. /// <summary>
  16. /// 主键
  17. /// </summary>
  18. public string ID { get; set; }
  19. /// <summary>
  20. /// 设备编号;以工位为单位,产线名称拼音-S数字
  21. /// </summary>
  22. public string Equipment_code;
  23. /// <summary>
  24. /// 车间订单号;车间工艺提供
  25. /// </summary>
  26. public string Workorder_code;
  27. /// <summary>
  28. /// 批次号;车间工艺提供
  29. /// </summary>
  30. public string Batch_number;
  31. /// <summary>
  32. /// 产品序列号;车间工艺提供规则
  33. /// </summary>
  34. public string Sn;
  35. /// <summary>
  36. /// 测试项目;该工位的加工任务,如:装配
  37. /// </summary>
  38. public string Testitem;
  39. /// <summary>
  40. /// 加工数据
  41. /// </summary>
  42. public List<TestItem> Parameter_values;
  43. /// <summary>
  44. /// 员工Id;操作员工编号,如:12345
  45. /// </summary>
  46. public string Write_user="123456";
  47. /// <summary>
  48. /// 测试时间;格式:yyyy-MM-dd HH:mm:ss.fff
  49. /// </summary>
  50. public string Test_time;
  51. /// <summary>
  52. /// 生产插入的语句
  53. /// </summary>
  54. /// <param name="upload">是否上传</param>
  55. /// <returns></returns>
  56. public string ToStringInsert(int upload)
  57. {
  58. string values = JsonConvert.SerializeObject(Parameter_values);
  59. ID = Guid.NewGuid().ToString();
  60. return string.Format(
  61. "insert into ProcessData" +
  62. "(" +
  63. "ID,"+
  64. "Equipment_code," +
  65. "Workorder_code," +
  66. "Batch_number," +
  67. "Sn,Testitem," +
  68. "Parameter_values," +
  69. "Write_user," +
  70. "Test_time," +
  71. "Upload" +
  72. ") " +
  73. "values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}')",
  74. ID,
  75. Equipment_code,
  76. Workorder_code,
  77. Batch_number,
  78. Sn,
  79. Testitem,
  80. values,
  81. Write_user,
  82. Test_time,
  83. upload);
  84. }
  85. /// <summary>
  86. /// 更新上传状态
  87. /// </summary>
  88. /// <param name="upload">上传状态</param>
  89. /// <param name="id">Id</param>
  90. /// <returns></returns>
  91. public static string ToStringUpdateStatusByID(int upload, string id)
  92. {
  93. return string.Format(
  94. "update ProcessData" +
  95. " set " +
  96. " Upload = '{0}' " +
  97. " where ID = '{1}'",
  98. upload,id);
  99. }
  100. public string ToStringQuery(string startDate, string endDate, string sendStatus)
  101. {
  102. switch(sendStatus)
  103. {
  104. case "All":
  105. sendStatus = "All";
  106. break;
  107. case "已上传":
  108. sendStatus = "1";
  109. break;
  110. case "未上传":
  111. sendStatus = "0";
  112. break;
  113. }
  114. StringBuilder strSQL = new StringBuilder();
  115. strSQL.AppendFormat("select " +
  116. "ID as 主键, " +
  117. "Equipment_code 设备编号, " +
  118. "Workorder_code 车间订单号, " +
  119. "Batch_number 批次号, " +
  120. "Sn 产品序列号," +
  121. "Testitem 测试项目, " +
  122. "Write_user 员工ID," +
  123. "Test_time 测试时间, " +
  124. "case when Upload = 1 then '已上传' else '未上传' end 上传状态, " +
  125. "Parameter_values 加工数据 " +
  126. "from ProcessData " +
  127. "where convert(datetime,test_time,120) " +
  128. "between convert(datetime, '{0}', 120) " +
  129. "and convert(datetime, '{1}', 120) ",
  130. startDate,
  131. endDate);
  132. if (Equipment_code != "All")
  133. {
  134. strSQL.AppendFormat("and Equipment_code='{0}' ", Equipment_code);
  135. }
  136. if (sendStatus != "All")
  137. {
  138. strSQL.AppendFormat("and upload='{0}' ", sendStatus);
  139. }
  140. if (Testitem != "All")
  141. {
  142. strSQL.AppendFormat("and Testitem='{0}' ", Testitem);
  143. }
  144. strSQL.Append(" Order By Test_time desc");
  145. return strSQL.ToString();
  146. }
  147. public string ToStringQuery2(string startDate, string endDate, string sendStatus)
  148. {
  149. switch (sendStatus)
  150. {
  151. case "All":
  152. sendStatus = "All";
  153. break;
  154. case "已上传":
  155. sendStatus = "1";
  156. break;
  157. case "未上传":
  158. sendStatus = "0";
  159. break;
  160. }
  161. StringBuilder strSQL = new StringBuilder();
  162. strSQL.AppendFormat("select " +
  163. "ID as 主键, " +
  164. "Equipment_code 设备编号, " +
  165. "Workorder_code 车间订单号, " +
  166. "Batch_number 批次号, " +
  167. "Sn 产品序列号," +
  168. "Testitem 测试项目, " +
  169. "Parameter_values 加工数据, " +
  170. "Write_user 员工ID," +
  171. "Test_time 测试时间, " +
  172. "case when Upload = 1 then '已上传' else '未上传' end 上传状态 " +
  173. "from ProcessData " +
  174. "where convert(datetime,test_time,120) " +
  175. "between convert(datetime, '{0}', 120) " +
  176. "and convert(datetime, '{1}', 120) ",
  177. startDate,
  178. endDate);
  179. if (sendStatus != "All")
  180. {
  181. strSQL.AppendFormat("and upload='{0}' ", sendStatus);
  182. }
  183. strSQL.Append(" Order By Test_time desc");
  184. return strSQL.ToString();
  185. }
  186. public string ToStringQueryCount(string endDate, string sendStatus)
  187. {
  188. switch (sendStatus)
  189. {
  190. case "All":
  191. sendStatus = "All";
  192. break;
  193. case "已上传":
  194. sendStatus = "1";
  195. break;
  196. case "未上传":
  197. sendStatus = "0";
  198. break;
  199. }
  200. StringBuilder strSQL = new StringBuilder();
  201. strSQL.AppendFormat("SELECT COUNT(*) FROM ProcessData " +
  202. "where convert(datetime,test_time,120) < convert(datetime, '{0}', 120) ",
  203. endDate);
  204. if (sendStatus != "All")
  205. {
  206. strSQL.AppendFormat("and upload='{0}' ", sendStatus);
  207. }
  208. return strSQL.ToString();
  209. }
  210. }
  211. /// <summary>
  212. /// 加工数据 内容
  213. /// </summary>
  214. public class TestItem
  215. {
  216. /// <summary>
  217. /// 参数名称
  218. /// </summary>
  219. public string Parameter_name;
  220. /// <summary>
  221. /// 参数值
  222. /// </summary>
  223. public string Parameter_value;
  224. /// <summary>
  225. /// 参数单位
  226. /// </summary>
  227. public string Parameter_unit;
  228. }
  229. }