华恒Mes鼎捷代码
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

177 lines
5.1 KiB

5 months ago
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel.DataAnnotations;
  4. using System.Linq;
  5. using System.Web;
  6. namespace WebApplication1.Models
  7. {
  8. public class ParamModels
  9. {
  10. }
  11. public class MoInsertModel
  12. {
  13. /// <summary>
  14. /// 工单号
  15. /// </summary>
  16. [Required(AllowEmptyStrings = false)]
  17. public string Mocode { get; set; }
  18. /// <summary>
  19. /// 行号
  20. /// </summary>
  21. [Required(AllowEmptyStrings = false)]
  22. public int MOSEQ { get; set; }
  23. /// <summary>
  24. /// 工单数量
  25. /// </summary>
  26. [Required(AllowEmptyStrings = false)]
  27. public decimal MOPLANQTY { get; set; }
  28. /// <summary>
  29. /// 计划开始日期
  30. /// </summary>
  31. [Required(AllowEmptyStrings = false)]
  32. public DateTime MOPLANSTARTDATE { get; set; }
  33. /// <summary>
  34. /// 计划结束日期
  35. /// </summary>
  36. [Required(AllowEmptyStrings = false)]
  37. public DateTime MOPLANENDDATE { get; set; }
  38. /// <summary>
  39. /// 工单下发时间
  40. /// </summary>
  41. [Required(AllowEmptyStrings = false)]
  42. public DateTime MODOWNDATE { get; set; }
  43. /// <summary>
  44. /// 产品编码
  45. /// </summary>
  46. [Required(AllowEmptyStrings = false)]
  47. public string ITEMCODE { get; set; }
  48. /// <summary>
  49. /// ERP工单是否关闭
  50. /// </summary>
  51. [Required(AllowEmptyStrings = true)]
  52. public string MOBIOSVER { get; set; }
  53. /// <summary>
  54. /// 制单人
  55. /// </summary>
  56. [Required(AllowEmptyStrings = true)]
  57. public string CreateUser { get; set; }
  58. /// <summary>
  59. /// 制单时间
  60. /// </summary>
  61. [Required(AllowEmptyStrings = true)]
  62. public DateTime CreateTime { get; set; }
  63. /// <summary>
  64. /// 部门名称
  65. /// </summary>
  66. [Required(AllowEmptyStrings = true)]
  67. public string MDeptName { get; set; }
  68. /// <summary>
  69. /// 修改时间
  70. /// </summary>
  71. [Required(AllowEmptyStrings = false)]
  72. public DateTime MTIME { get; set; }
  73. }
  74. public class MoModifityModel
  75. {
  76. /// <summary>
  77. /// 工单号
  78. /// </summary>
  79. [Required(AllowEmptyStrings = false)]
  80. public string Mocode { get; set; }
  81. /// <summary>
  82. /// 行号
  83. /// </summary>
  84. [Required(AllowEmptyStrings = false)]
  85. public int MOSEQ { get; set; }
  86. /// <summary>
  87. /// 工单数量
  88. /// </summary>
  89. [Required(AllowEmptyStrings = true)]
  90. public decimal MOPLANQTY { get; set; }
  91. /// <summary>
  92. /// 计划开始日期
  93. /// </summary>
  94. [Required(AllowEmptyStrings = true)]
  95. public DateTime MOPLANSTARTDATE { get; set; }
  96. /// <summary>
  97. /// 计划结束日期
  98. /// </summary>
  99. [Required(AllowEmptyStrings = true)]
  100. public DateTime MOPLANENDDATE { get; set; }
  101. /// <summary>
  102. /// 工单下发时间
  103. /// </summary>
  104. [Required(AllowEmptyStrings = true)]
  105. public DateTime MODOWNDATE { get; set; }
  106. /// <summary>
  107. /// 产品编码
  108. /// </summary>
  109. [Required(AllowEmptyStrings = true)]
  110. public string ITEMCODE { get; set; }
  111. /// <summary>
  112. /// ERP工单是否关闭
  113. /// </summary>
  114. [Required(AllowEmptyStrings = true)]
  115. public string MOBIOSVER { get; set; }
  116. /// <summary>
  117. /// 制单人
  118. /// </summary>
  119. [Required(AllowEmptyStrings = true)]
  120. public string CreateUser { get; set; }
  121. /// <summary>
  122. /// 制单时间
  123. /// </summary>
  124. [Required(AllowEmptyStrings = true)]
  125. public DateTime CreateTime { get; set; }
  126. /// <summary>
  127. /// 部门名称
  128. /// </summary>
  129. [Required(AllowEmptyStrings = true)]
  130. public string MDeptName { get; set; }
  131. [Required(AllowEmptyStrings = true)]
  132. public DateTime MTIME { get; set; }
  133. }
  134. public static class ParamsValidateHelper
  135. {
  136. public static void CheckNull<T>(T param)
  137. {
  138. var typeParm = typeof(T);
  139. foreach (var pro in typeParm.GetProperties())
  140. {
  141. if (pro.PropertyType.IsClass) //类
  142. {
  143. var instance = pro.GetValue(param);
  144. CheckNull(instance);
  145. }
  146. else if (pro.PropertyType.IsValueType) //值
  147. {
  148. var proValue = pro.GetValue(param, null);
  149. var attrs = pro.GetCustomAttributes(typeof(RequiredAttribute), false);
  150. foreach (var attr in attrs)
  151. {
  152. if (attr is RequiredAttribute && string.IsNullOrEmpty(pro.GetValue(param).ToString()) && ((RequiredAttribute)attr).AllowEmptyStrings == false)
  153. throw new Exception($"NullOrEmptyParam:{pro.Name}");
  154. }
  155. }
  156. }
  157. }
  158. }
  159. }