StudentChargePaymenView.cs 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using EMIS.ViewModel.Cache;
  6. using System.ComponentModel;
  7. using System.ComponentModel.DataAnnotations;
  8. namespace EMIS.ViewModel.ChargeManage.ChargeSituation
  9. {
  10. public class StudentChargePaymenView
  11. {
  12. /// <summary>
  13. /// 学生缴费ID
  14. /// </summary>
  15. [DisplayName("学生缴费ID")]
  16. public Guid StudentChargePaymentID { get; set; }
  17. /// <summary>
  18. /// 应收名单ID
  19. /// </summary>
  20. [DisplayName("应收名单ID")]
  21. public Guid? StudentChargeID { get; set; }
  22. /// <summary>
  23. /// 用户ID
  24. /// </summary>
  25. [Required]
  26. [DisplayName("学号")]
  27. public Guid? UserID { get; set; }
  28. /// <summary>
  29. /// 学号
  30. /// </summary>
  31. [DisplayName("学号")]
  32. public string StudentNo { get; set; }
  33. /// <summary>
  34. /// 姓名
  35. /// </summary>
  36. [DisplayName("姓名")]
  37. public string UserName { get; set; }
  38. /// <summary>
  39. /// 性别
  40. /// </summary>
  41. [DisplayName("性别")]
  42. public int? Sex { get; set; }
  43. /// <summary>
  44. /// 性别
  45. /// </summary>
  46. [DisplayName("性别")]
  47. public string SexName
  48. {
  49. get
  50. {
  51. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Sex.ToString())
  52. .Where(x => x.Value == Sex)
  53. .Select(x => x.Name).FirstOrDefault();
  54. }
  55. }
  56. /// <summary>
  57. /// 在校状态
  58. /// </summary>
  59. [DisplayName("在校状态")]
  60. public int? InSchoolStatusID { get; set; }
  61. /// <summary>
  62. /// 在校状态
  63. /// </summary>
  64. [DisplayName("在校状态")]
  65. public string InSchoolStatusName
  66. {
  67. get
  68. {
  69. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_InschoolStatus.ToString())
  70. .Where(x => x.Value == InSchoolStatusID)
  71. .Select(x => x.Name).FirstOrDefault();
  72. }
  73. }
  74. /// <summary>
  75. /// 学籍状态
  76. /// </summary>
  77. [DisplayName("学籍状态")]
  78. public int? StudentStatusID { get; set; }
  79. /// <summary>
  80. /// 学籍状态
  81. /// </summary>
  82. [DisplayName("学籍状态")]
  83. public string StudentStatusName
  84. {
  85. get
  86. {
  87. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_STUDENTSTATUS.ToString())
  88. .Where(x => x.Value == StudentStatusID)
  89. .Select(x => x.Name).FirstOrDefault();
  90. }
  91. }
  92. /// <summary>
  93. /// 院系所ID
  94. /// </summary>
  95. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "CollegeID")]
  96. public Guid? CollegeID { get; set; }
  97. /// <summary>
  98. /// 院系所代码
  99. /// </summary>
  100. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "CollegeCode")]
  101. public string CollegeCode { get; set; }
  102. /// <summary>
  103. /// 院系所名称
  104. /// </summary>
  105. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "College")]
  106. public string CollegeName { get; set; }
  107. /// <summary>
  108. /// 班级信息ID
  109. /// </summary>
  110. [DisplayName("班级信息ID")]
  111. public Guid? ClassID { get; set; }
  112. /// <summary>
  113. /// 班级编号
  114. /// </summary>
  115. [DisplayName("班级编号")]
  116. public string ClassNo { get; set; }
  117. /// <summary>
  118. /// 班级名称
  119. /// </summary>
  120. [DisplayName("班级名称")]
  121. public string ClassName { get; set; }
  122. /// <summary>
  123. /// 年级专业ID
  124. /// </summary>
  125. [DisplayName("年级专业ID")]
  126. public Guid? GradeMajorID { get; set; }
  127. /// <summary>
  128. /// 年级专业代码
  129. /// </summary>
  130. [DisplayName("年级专业代码")]
  131. public string GradeMajorCode { get; set; }
  132. /// <summary>
  133. /// 年级专业名称
  134. /// </summary>
  135. [DisplayName("年级专业名称")]
  136. public string GradeMajorStr { get; set; }
  137. /// <summary>
  138. /// 年级
  139. /// </summary>
  140. [DisplayName("年级")]
  141. public int? GradeStr { get; set; }
  142. /// <summary>
  143. /// 专业ID(Value)
  144. /// </summary>
  145. [DisplayName("专业ID(Value)")]
  146. public int? StandardID { get; set; }
  147. /// <summary>
  148. /// 专业代码
  149. /// </summary>
  150. [DisplayName("专业代码")]
  151. public string StandardCode
  152. {
  153. get
  154. {
  155. var inistStandardCode = IdNameExt.GetDictionaryItem(DictionaryItem.CF_Standard.ToString())
  156. .Where(x => x.Value == StandardID)
  157. .Select(x => x.Code).FirstOrDefault();
  158. return (inistStandardCode != null ? inistStandardCode.PadLeft(6, '0') : "");
  159. }
  160. }
  161. /// <summary>
  162. /// 专业名称
  163. /// </summary>
  164. [DisplayName("专业名称")]
  165. public string MajorStr
  166. {
  167. get
  168. {
  169. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Standard.ToString())
  170. .Where(x => x.Value == StandardID)
  171. .Select(x => x.Name).FirstOrDefault();
  172. }
  173. }
  174. /// <summary>
  175. /// 培养层次
  176. /// </summary>
  177. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "EducationID")]
  178. public int? EducationID { get; set; }
  179. /// <summary>
  180. /// 培养层次
  181. /// </summary>
  182. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "EducationName")]
  183. public string EducationName
  184. {
  185. get
  186. {
  187. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Education.ToString())
  188. .Where(x => x.Value == EducationID)
  189. .Select(x => x.Name).FirstOrDefault();
  190. }
  191. }
  192. /// 培养层次
  193. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "EducationName")]
  194. public string EducationStr { get; set; }
  195. /// <summary>
  196. /// 学习形式
  197. /// </summary>
  198. [DisplayName("学习形式")]
  199. public int? LearningformID { get; set; }
  200. /// <summary>
  201. /// 学习形式
  202. /// </summary>
  203. [DisplayName("学习形式")]
  204. public string LearningformName
  205. {
  206. get
  207. {
  208. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Learningform.ToString())
  209. .Where(x => x.Value == LearningformID)
  210. .Select(x => x.Name).FirstOrDefault();
  211. }
  212. }
  213. /// <summary>
  214. /// 学制
  215. /// </summary>
  216. [DisplayName("学制")]
  217. public decimal? LearnSystem { get; set; }
  218. /// <summary>
  219. /// 缴费学年
  220. /// </summary>
  221. [Required]
  222. [DisplayName("缴费学年")]
  223. public int? ChargeYear { get; set; }
  224. /// <summary>
  225. /// 缴费学年
  226. /// </summary>
  227. [DisplayName("缴费学年")]
  228. public string ChargeYearStr { get; set; }
  229. /// <summary>
  230. /// 收费项目ID
  231. /// </summary>
  232. [Required]
  233. [DisplayName("收费项目")]
  234. public Guid? ChargeProjectID { get; set; }
  235. /// <summary>
  236. /// 收费项目
  237. /// </summary>
  238. [DisplayName("收费项目")]
  239. public string ChargeProjectStr { get; set; }
  240. /// <summary>
  241. /// 应收金额(应收名单对应的应收金额、收费标准对应的应收金额)
  242. /// </summary>
  243. [Required]
  244. [DisplayName("应收金额")]
  245. [RegularExpression(@"^\d+(\.\d+)?$", ErrorMessage = "请输入金额")]
  246. public decimal? StandardAmount { get; set; }
  247. /// <summary>
  248. /// 调整金额
  249. /// </summary>
  250. [Required]
  251. [DisplayName("调整金额")]
  252. [RegularExpression(@"^\d+(\.\d+)?$", ErrorMessage = "请输入金额")]
  253. public decimal? ChargeAmount { get; set; }
  254. /// <summary>
  255. /// 实收金额(应收名单对应的减免后金额)
  256. /// </summary>
  257. [Required]
  258. [DisplayName("实收金额")]
  259. [RegularExpression(@"^\d+(\.\d+)?$", ErrorMessage = "请输入金额")]
  260. public decimal? ActualAmount { get; set; }
  261. /// <summary>
  262. /// 缴费标记
  263. /// </summary>
  264. [Required]
  265. [DisplayName("缴费标记")]
  266. public int? ChargeTag { get; set; }
  267. /// <summary>
  268. /// 缴费标记
  269. /// </summary>
  270. [DisplayName("缴费标记")]
  271. public string ChargeTagName
  272. {
  273. get
  274. {
  275. return IdNameExt.GetDictionaryItem(DictionaryItem.EC_ChargeTag.ToString())
  276. .Where(x => x.Value == ChargeTag)
  277. .Select(x => x.Name).FirstOrDefault();
  278. }
  279. }
  280. /// <summary>
  281. /// 已缴金额
  282. /// </summary>
  283. [Required]
  284. [DisplayName("已缴金额")]
  285. [RegularExpression(@"^\d+(\.\d+)?$", ErrorMessage = "请输入金额")]
  286. public decimal? PaidAmount { get; set; }
  287. /// <summary>
  288. /// 已缴总金额
  289. /// </summary>
  290. [DisplayName("已缴总金额")]
  291. public decimal? AmountSum { get; set; }
  292. /// <summary>
  293. /// 缴费金额(正浮点数)
  294. /// </summary>
  295. [Required]
  296. [DisplayName("缴费金额")]
  297. [RegularExpression(@"^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$", ErrorMessage = "请输入缴费金额")]
  298. public decimal? Amount { get; set; }
  299. /// <summary>
  300. /// 缴费金额
  301. /// </summary>
  302. [DisplayName("缴费金额")]
  303. [RegularExpression(@"^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$", ErrorMessage = "请输入缴费金额")]
  304. public string AmountStr { get; set; }
  305. /// <summary>
  306. /// 缴费日期
  307. /// </summary>
  308. [Required]
  309. [DisplayName("缴费日期")]
  310. public DateTime? ChargeDate { get; set; }
  311. /// <summary>
  312. /// 缴费日期
  313. /// </summary>
  314. [DisplayName("缴费日期")]
  315. public string ChargeDateStr { get; set; }
  316. /// <summary>
  317. /// 是否圆梦计划
  318. /// </summary>
  319. [DisplayName("是否圆梦计划")]
  320. public int? IsDream { get; set; }
  321. /// <summary>
  322. /// 是否圆梦计划
  323. /// </summary>
  324. [DisplayName("是否圆梦计划")]
  325. public string IsDreamProject
  326. {
  327. get
  328. {
  329. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_GeneralPurpose.ToString())
  330. .Where(x => x.Value == IsDream)
  331. .Select(x => x.Name).FirstOrDefault();
  332. }
  333. }
  334. /// <summary>
  335. /// 状态
  336. /// </summary>
  337. [DisplayName("状态")]
  338. public int? RecordStatus { get; set; }
  339. /// <summary>
  340. /// 备注
  341. /// </summary>
  342. [DisplayName("备注")]
  343. public string Remark { get; set; }
  344. /// <summary>
  345. /// 错误信息
  346. /// </summary>
  347. [DisplayName("错误信息")]
  348. public string ErrorMessage { get; set; }
  349. private bool _isExcelVaildateOK = true;
  350. /// <summary>
  351. /// Excel验证是否通过,默认为true
  352. /// <para>true:通过;false:不通过</para>
  353. /// </summary>
  354. public bool IsExcelVaildateOK
  355. {
  356. get { return _isExcelVaildateOK; }
  357. set { _isExcelVaildateOK = value; }
  358. }
  359. /// <summary>
  360. /// 创建人ID
  361. /// </summary>
  362. [DisplayName("创建人ID")]
  363. public Guid? CreateUserID { get; set; }
  364. /// <summary>
  365. /// 创建时间
  366. /// </summary>
  367. [DisplayName("创建时间")]
  368. public DateTime? CreateTime { get; set; }
  369. /// <summary>
  370. /// 修改人ID
  371. /// </summary>
  372. [DisplayName("修改人")]
  373. public Guid? ModifyUserID { get; set; }
  374. /// <summary>
  375. /// 修改时间
  376. /// </summary>
  377. [DisplayName("修改时间")]
  378. public DateTime? ModifyTime { get; set; }
  379. }
  380. }