ExecutablePlanView.cs 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.ComponentModel;
  6. using System.ComponentModel.DataAnnotations;
  7. using EMIS.ViewModel.CacheManage;
  8. namespace EMIS.ViewModel.EducationManagement
  9. {
  10. public class ExecutablePlanView
  11. {
  12. /// <summary>
  13. /// 主键ID
  14. /// </summary>
  15. [DisplayName("主键ID")]
  16. public Guid ExecutablePlanID { get; set; }
  17. /// <summary>
  18. /// 计划来源
  19. /// </summary>
  20. [Required]
  21. [DisplayName("计划来源")]
  22. public int? SourceTypeID { get; set; }
  23. /// <summary>
  24. /// 计划来源
  25. /// </summary>
  26. [DisplayName("计划来源")]
  27. public string SourceTypeName
  28. {
  29. get
  30. {
  31. return IdNameExt.GetDictionaryItem(DictionaryItem.EM_SourceType.ToString())
  32. .Where(x => x.Value == SourceTypeID)
  33. .Select(x => x.Name).FirstOrDefault();
  34. }
  35. }
  36. /// <summary>
  37. /// 默认班级名称
  38. /// </summary>
  39. [Required]
  40. [DisplayName("默认班级名称")]
  41. public string DefaultClassName { get; set; }
  42. /// <summary>
  43. /// 专业计划ID
  44. /// </summary>
  45. [DisplayName("专业计划ID")]
  46. public Guid? SpecialtyPlanID { get; set; }
  47. /// <summary>
  48. /// 学年学期
  49. /// </summary>
  50. [Required]
  51. [DisplayName("学年学期")]
  52. public Guid? SchoolyearID { get; set; }
  53. /// <summary>
  54. /// 学年学期
  55. /// </summary>
  56. [DisplayName("学年学期")]
  57. public string SchoolyearCode { get; set; }
  58. /// <summary>
  59. /// 学年学期对应的学年
  60. /// </summary>
  61. [DisplayName("学年")]
  62. public int? YearID { get; set; }
  63. /// <summary>
  64. /// 学年学期对应的Value值
  65. /// </summary>
  66. [DisplayName("Value")]
  67. public int? Value { get; set; }
  68. /// <summary>
  69. /// 开课学年
  70. /// </summary>
  71. [Required]
  72. [DisplayName("开课学年")]
  73. public int? SchoolyearNumID { get; set; }
  74. /// <summary>
  75. /// 开课学年
  76. /// </summary>
  77. [DisplayName("开课学年")]
  78. public string SchoolyearNumName
  79. {
  80. get
  81. {
  82. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_SchoolyearNum.ToString())
  83. .Where(x => x.Value == SchoolyearNumID)
  84. .Select(x => x.Name).FirstOrDefault();
  85. }
  86. }
  87. /// <summary>
  88. /// 学期
  89. /// </summary>
  90. [Required]
  91. [DisplayName("学期")]
  92. public int? SchoolcodeID { get; set; }
  93. /// <summary>
  94. /// 学期
  95. /// </summary>
  96. [DisplayName("学期")]
  97. public string SchoolcodeName
  98. {
  99. get
  100. {
  101. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Semester.ToString()).Where(x => x.Value == SchoolcodeID).Select(x => x.Name).FirstOrDefault();
  102. }
  103. }
  104. /// <summary>
  105. /// 开课学期
  106. /// </summary>
  107. [Required]
  108. [DisplayName("开课学期")]
  109. public int? StarttermID { get; set; }
  110. /// <summary>
  111. /// 开课学期
  112. /// </summary>
  113. [DisplayName("开课学期")]
  114. public string StarttermName
  115. {
  116. get
  117. {
  118. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Startterm.ToString())
  119. .Where(x => x.Value == StarttermID)
  120. .Select(x => x.Name).FirstOrDefault();
  121. }
  122. }
  123. /// <summary>
  124. /// 年级专业ID
  125. /// </summary>
  126. [Required]
  127. [DisplayName("年级专业")]
  128. public Guid? GrademajorID { get; set; }
  129. /// <summary>
  130. /// 年级专业编号
  131. /// </summary>
  132. [DisplayName("年级专业编号")]
  133. public string GrademajorCode { get; set; }
  134. /// <summary>
  135. /// 年级专业名称
  136. /// </summary>
  137. [DisplayName("年级专业名称")]
  138. public string GrademajorName { get; set; }
  139. /// <summary>
  140. /// 年级专业对应年级(入学学年)
  141. /// </summary>
  142. [Required]
  143. [DisplayName("年级")]
  144. public int? GradeID { get; set; }
  145. /// <summary>
  146. /// 院系专业ID
  147. /// </summary>
  148. [DisplayName("院系专业ID")]
  149. public Guid? FacultymajorID { get; set; }
  150. /// <summary>
  151. /// 院系专业编号
  152. /// </summary>
  153. [DisplayName("院系专业编号")]
  154. public string FacultymajorCode { get; set; }
  155. /// <summary>
  156. /// 院系专业名称
  157. /// </summary>
  158. [DisplayName("院系专业名称")]
  159. public string FacultymajorName { get; set; }
  160. /// <summary>
  161. /// 院系所ID
  162. /// </summary>
  163. [Required]
  164. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "College")]
  165. public Guid? CollegeID { get; set; }
  166. /// <summary>
  167. /// 院系所代码
  168. /// </summary>
  169. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "CollegeCode")]
  170. public string CollegeCode { get; set; }
  171. /// <summary>
  172. /// 院系所
  173. /// </summary>
  174. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "College")]
  175. public string CollegeName { get; set; }
  176. /// <summary>
  177. /// 校区ID
  178. /// </summary>
  179. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "CampusID")]
  180. public Guid? CampusID { get; set; }
  181. /// <summary>
  182. /// 校区代码
  183. /// </summary>
  184. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "CampusCode")]
  185. public string CampusNo { get; set; }
  186. /// <summary>
  187. /// 校区名称
  188. /// </summary>
  189. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "CampusName")]
  190. public string CampusName { get; set; }
  191. /// <summary>
  192. /// 入学学年学期ID
  193. /// </summary>
  194. [Required]
  195. [DisplayName("入学学年学期ID")]
  196. public Guid? StartSchoolyearID { get; set; }
  197. /// <summary>
  198. /// 入学学年学期
  199. /// </summary>
  200. [DisplayName("入学学年学期")]
  201. public string StartSchoolyearCode { get; set; }
  202. /// <summary>
  203. /// 入学学年学期对应的Value值
  204. /// </summary>
  205. [DisplayName("StartValue")]
  206. public int? StartValue { get; set; }
  207. /// <summary>
  208. /// 入学学期
  209. /// </summary>
  210. [Required]
  211. [DisplayName("入学学期")]
  212. public int? StartSchoolcodeID { get; set; }
  213. /// <summary>
  214. /// 入学学期
  215. /// </summary>
  216. [DisplayName("入学学期")]
  217. public string StartSchoolcodeName
  218. {
  219. get
  220. {
  221. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Semester.ToString()).Where(x => x.Value == StartSchoolcodeID).Select(x => x.Name).FirstOrDefault();
  222. }
  223. }
  224. /// <summary>
  225. /// 毕业学期ID
  226. /// </summary>
  227. [Required]
  228. [DisplayName("毕业学期ID")]
  229. public Guid? GraduatingSemesterID { get; set; }
  230. /// <summary>
  231. /// 毕业学期
  232. /// </summary>
  233. [DisplayName("毕业学期")]
  234. public string GraduatingSemesterCode { get; set; }
  235. /// <summary>
  236. /// 毕业学期对应的Value值
  237. /// </summary>
  238. [DisplayName("GraduatingSemesterValue")]
  239. public int? GraduatingSemesterValue { get; set; }
  240. /// <summary>
  241. /// 专业信息ID
  242. /// </summary>
  243. [Required]
  244. [DisplayName("专业信息ID")]
  245. public Guid? SpecialtyID { get; set; }
  246. /// <summary>
  247. /// 专业ID(Value)
  248. /// </summary>
  249. [DisplayName("专业ID(Value)")]
  250. public int? StandardID { get; set; }
  251. /// <summary>
  252. /// 专业代码
  253. /// </summary>
  254. [DisplayName("专业代码")]
  255. public string StandardCode
  256. {
  257. get
  258. {
  259. var inistStandardCode = IdNameExt.GetDictionaryItem(DictionaryItem.CF_Standard.ToString())
  260. .Where(x => x.Value == StandardID)
  261. .Select(x => x.Code).FirstOrDefault();
  262. return (inistStandardCode != null ? inistStandardCode.PadLeft(6, '0') : "");
  263. }
  264. }
  265. /// <summary>
  266. /// 专业名称
  267. /// </summary>
  268. [DisplayName("专业名称")]
  269. public string StandardName { get; set; }
  270. /// <summary>
  271. /// 培养层次
  272. /// </summary>
  273. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "EducationID")]
  274. public int? EducationID { get; set; }
  275. /// <summary>
  276. /// 培养层次
  277. /// </summary>
  278. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "EducationName")]
  279. public string EducationName
  280. {
  281. get
  282. {
  283. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Education.ToString())
  284. .Where(x => x.Value == EducationID)
  285. .Select(x => x.Name).FirstOrDefault();
  286. }
  287. }
  288. /// <summary>
  289. /// 学习形式
  290. /// </summary>
  291. [DisplayName("学习形式")]
  292. public int? LearningformID { get; set; }
  293. /// <summary>
  294. /// 学习形式
  295. /// </summary>
  296. [DisplayName("学习形式")]
  297. public string LearningformName
  298. {
  299. get
  300. {
  301. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Learningform.ToString())
  302. .Where(x => x.Value == LearningformID)
  303. .Select(x => x.Name).FirstOrDefault();
  304. }
  305. }
  306. /// <summary>
  307. /// 学制
  308. /// </summary>
  309. [DisplayName("学制")]
  310. public decimal? LearnSystem { get; set; }
  311. /// <summary>
  312. /// 课程信息ID
  313. /// </summary>
  314. [Required]
  315. [DisplayName("课程信息ID")]
  316. public Guid? CoursematerialID { get; set; }
  317. /// <summary>
  318. /// 课程代码
  319. /// </summary>
  320. [DisplayName("课程代码")]
  321. public string CourseCode { get; set; }
  322. /// <summary>
  323. /// 课程名称
  324. /// </summary>
  325. [DisplayName("课程名称")]
  326. public string CourseName { get; set; }
  327. /// <summary>
  328. /// 上课类型ID
  329. /// </summary>
  330. [DisplayName("上课类型ID")]
  331. public Guid? ClassGroupingID { get; set; }
  332. /// <summary>
  333. /// 上课类型
  334. /// </summary>
  335. [DisplayName("上课类型")]
  336. public string ClassGroupingName { get; set; }
  337. /// <summary>
  338. /// 课程结构
  339. /// </summary>
  340. [DisplayName("课程结构")]
  341. public int? CourseStructureID { get; set; }
  342. /// <summary>
  343. /// 课程结构
  344. /// </summary>
  345. [DisplayName("课程结构")]
  346. public string CourseStructureName
  347. {
  348. get
  349. {
  350. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_CourseStructure.ToString())
  351. .Where(x => x.Value == CourseStructureID)
  352. .Select(x => x.Name).FirstOrDefault();
  353. }
  354. }
  355. /// <summary>
  356. /// 课程属性
  357. /// </summary>
  358. [DisplayName("课程属性")]
  359. public int? CourseCategoryID { get; set; }
  360. /// <summary>
  361. /// 课程属性
  362. /// </summary>
  363. [DisplayName("课程属性")]
  364. public string CourseCategoryName
  365. {
  366. get
  367. {
  368. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_CourseCategory.ToString())
  369. .Where(x => x.Value == CourseCategoryID)
  370. .Select(x => x.Name).FirstOrDefault();
  371. }
  372. }
  373. /// <summary>
  374. /// 课程类型
  375. /// </summary>
  376. [Required]
  377. [DisplayName("课程类型")]
  378. public int? CourseTypeID { get; set; }
  379. /// <summary>
  380. /// 课程类型
  381. /// </summary>
  382. [DisplayName("课程类型")]
  383. public string CourseTypeName
  384. {
  385. get
  386. {
  387. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_CourseType.ToString())
  388. .Where(x => x.Value == CourseTypeID)
  389. .Select(x => x.Name).FirstOrDefault();
  390. }
  391. }
  392. /// <summary>
  393. /// 课程性质
  394. /// </summary>
  395. [DisplayName("课程性质")]
  396. public int? CourseQualityID { get; set; }
  397. /// <summary>
  398. /// 课程性质
  399. /// </summary>
  400. [DisplayName("课程性质")]
  401. public string CourseQualityName
  402. {
  403. get
  404. {
  405. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_CourseQuality.ToString())
  406. .Where(x => x.Value == CourseQualityID)
  407. .Select(x => x.Name).FirstOrDefault();
  408. }
  409. }
  410. /// <summary>
  411. /// 课程学分
  412. /// </summary>
  413. [Required]
  414. [DisplayName("课程学分")]
  415. //[DisplayFormat(DataFormatString = "{0:N1}")]
  416. [RegularExpression(@"^[0-9]+([.]{1}[0-9]+){0,1}$", ErrorMessage = "请输入数字")]
  417. public decimal? Credit { get; set; }
  418. /// <summary>
  419. /// 理论学时
  420. /// </summary>
  421. [Required]
  422. [DisplayName("理论学时")]
  423. [RegularExpression(@"^\d+$", ErrorMessage = "请输入非负整数")]
  424. public int? TheoryCourse { get; set; }
  425. /// <summary>
  426. /// 实践学时
  427. /// </summary>
  428. [Required]
  429. [DisplayName("实践学时")]
  430. [RegularExpression(@"^\d+$", ErrorMessage = "请输入非负整数")]
  431. public int? Practicehours { get; set; }
  432. /// <summary>
  433. /// 实验学时
  434. /// </summary>
  435. [Required]
  436. [DisplayName("实验学时")]
  437. //[Compare("Practicehours")]
  438. [RegularExpression(@"^\d+$", ErrorMessage = "请输入非负整数")]
  439. public int? Trialhours { get; set; }
  440. /// <summary>
  441. /// 总学时
  442. /// </summary>
  443. [Required]
  444. [DisplayName("总学时")]
  445. [RegularExpression(@"^\d+$", ErrorMessage = "请输入非负整数")]
  446. public int? Totalhours { get; set; }
  447. /// <summary>
  448. /// 理论周次
  449. /// </summary>
  450. [Required]
  451. [DisplayName("理论周次")]
  452. [RegularExpression(@"^\d+$", ErrorMessage = "请输入非负整数")]
  453. public int? TheoryWeeklyNum { get; set; }
  454. /// <summary>
  455. /// 实践周次
  456. /// </summary>
  457. [Required]
  458. [DisplayName("实践周次")]
  459. [RegularExpression(@"^\d+$", ErrorMessage = "请输入非负整数")]
  460. public int? PracticeWeeklyNum { get; set; }
  461. /// <summary>
  462. /// 实验周次
  463. /// </summary>
  464. [Required]
  465. [DisplayName("实验周次")]
  466. [RegularExpression(@"^\d+$", ErrorMessage = "请输入非负整数")]
  467. public int? TrialWeeklyNum { get; set; }
  468. /// <summary>
  469. /// 总周次
  470. /// </summary>
  471. [Required]
  472. [DisplayName("总周次")]
  473. [RegularExpression(@"^\d+$", ErrorMessage = "请输入非负整数")]
  474. public int? SchoolweeksNum { get; set; }
  475. /// <summary>
  476. /// 周学时
  477. /// </summary>
  478. [Required]
  479. [DisplayName("周学时")]
  480. [RegularExpression(@"^\d+$", ErrorMessage = "请输入非负整数")]
  481. public int? WeeklyHours { get; set; }
  482. /// <summary>
  483. /// 每周次数
  484. /// </summary>
  485. [Required]
  486. [DisplayName("每周次数")]
  487. [RegularExpression(@"^\d+$", ErrorMessage = "请输入非负整数")]
  488. public int? WeeklyNum { get; set; }
  489. /// <summary>
  490. /// 开始周次
  491. /// </summary>
  492. [Required]
  493. [DisplayName("开始周次")]
  494. [RegularExpression(@"^\d+$", ErrorMessage = "请输入非负整数")]
  495. public int? StartWeeklyNum { get; set; }
  496. /// <summary>
  497. /// 结束周次
  498. /// </summary>
  499. [Required]
  500. [DisplayName("结束周次")]
  501. [RegularExpression(@"^\d+$", ErrorMessage = "请输入非负整数")]
  502. public int? EndWeeklyNum { get; set; }
  503. /// <summary>
  504. /// 起止周次
  505. /// </summary>
  506. [DisplayName("起止周次")]
  507. public string StartEndWeeklyNum { get; set; }
  508. /// <summary>
  509. /// 开课教研室ID
  510. /// </summary>
  511. [Required]
  512. [DisplayName("开课教研室")]
  513. public Guid? DepartmentID { get; set; }
  514. /// <summary>
  515. /// 开课教研室代码
  516. /// </summary>
  517. [DisplayName("开课教研室代码")]
  518. public string DepartmentCode { get; set; }
  519. /// <summary>
  520. /// 开课教研室
  521. /// </summary>
  522. [DisplayName("开课教研室")]
  523. public string DepartmentName { get; set; }
  524. /// <summary>
  525. /// 开课院系ID
  526. /// </summary>
  527. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "CourseCollege")]
  528. public Guid? CourseCollegeID { get; set; }
  529. /// <summary>
  530. /// 开课院系代码
  531. /// </summary>
  532. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "CourseCollege")]
  533. public string CourseCollegeCode { get; set; }
  534. /// <summary>
  535. /// 开课院系
  536. /// </summary>
  537. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "CourseCollege")]
  538. public string CourseCollegeName { get; set; }
  539. /// <summary>
  540. /// 是否专业核心
  541. /// </summary>
  542. [Required]
  543. [DisplayName("是否专业核心")]
  544. public bool IsSpecialtycore { get; set; }
  545. /// <summary>
  546. /// 是否专业核心
  547. /// </summary>
  548. [DisplayName("是否专业核心")]
  549. public string IsSpecialtycoreName
  550. {
  551. get { return this.IsSpecialtycore != true ? "否" : "是"; }
  552. }
  553. /// <summary>
  554. /// 是否合作开发
  555. /// </summary>
  556. [Required]
  557. [DisplayName("是否合作开发")]
  558. public bool IsCooperation { get; set; }
  559. /// <summary>
  560. /// 是否合作开发
  561. /// </summary>
  562. [DisplayName("是否合作开发")]
  563. public string IsCooperationName
  564. {
  565. get { return this.IsCooperation != true ? "否" : "是"; }
  566. }
  567. /// <summary>
  568. /// 是否必修课
  569. /// </summary>
  570. [Required]
  571. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "IsRequired")]
  572. public bool IsRequired { get; set; }
  573. /// <summary>
  574. /// 是否必修课
  575. /// </summary>
  576. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "IsRequired")]
  577. public string IsRequiredName
  578. {
  579. get { return this.IsRequired != true ? "否" : "是"; }
  580. }
  581. /// <summary>
  582. /// 是否网上选修
  583. /// </summary>
  584. [Required]
  585. [DisplayName("是否网上选修")]
  586. public bool IsElective { get; set; }
  587. /// <summary>
  588. /// 是否网上选修
  589. /// </summary>
  590. [DisplayName("是否网上选修")]
  591. public string IsElectiveName
  592. {
  593. get { return this.IsElective != true ? "否" : "是"; }
  594. }
  595. /// <summary>
  596. /// 是否网络课程
  597. /// </summary>
  598. [Required]
  599. [DisplayName("是否网络课程")]
  600. public bool IsNetworkCourse { get; set; }
  601. /// <summary>
  602. /// 是否网络课程
  603. /// </summary>
  604. [DisplayName("是否网络课程")]
  605. public string IsNetworkCourseName
  606. {
  607. get { return this.IsNetworkCourse != true ? "否" : "是"; }
  608. }
  609. /// <summary>
  610. /// 是否学位课程
  611. /// </summary>
  612. [Required]
  613. [DisplayName("是否学位课程")]
  614. public bool IsMainCourse { get; set; }
  615. /// <summary>
  616. /// 是否学位课程
  617. /// </summary>
  618. [DisplayName("是否学位课程")]
  619. public string IsMainCourseName
  620. {
  621. get { return this.IsMainCourse != true ? "否" : "是"; }
  622. }
  623. /// <summary>
  624. /// 是否需要教材
  625. /// </summary>
  626. [DisplayName("是否需要教材")]
  627. public bool IsNeedMaterial { get; set; }
  628. /// <summary>
  629. /// 是否需要教材
  630. /// </summary>
  631. [DisplayName("是否需要教材")]
  632. public string IsNeedMaterialName
  633. {
  634. get { return this.IsNeedMaterial != true ? "否" : "是"; }
  635. }
  636. /// <summary>
  637. /// 精品课程
  638. /// </summary>
  639. [DisplayName("精品课程")]
  640. public int? CourseFineID { get; set; }
  641. /// <summary>
  642. /// 精品课程
  643. /// </summary>
  644. [DisplayName("精品课程")]
  645. public string CourseFineName
  646. {
  647. get
  648. {
  649. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_CourseFine.ToString())
  650. .Where(x => x.Value == CourseFineID)
  651. .Select(x => x.Name).FirstOrDefault();
  652. }
  653. }
  654. /// <summary>
  655. /// 实践类型
  656. /// </summary>
  657. [DisplayName("实践类型")]
  658. public int? PracticeTypeID { get; set; }
  659. /// <summary>
  660. /// 实践类型
  661. /// </summary>
  662. [DisplayName("实践类型")]
  663. public string PracticeTypeName
  664. {
  665. get
  666. {
  667. return IdNameExt.GetDictionaryItem(DictionaryItem.EM_PracticeType.ToString())
  668. .Where(x => x.Value == PracticeTypeID)
  669. .Select(x => x.Name).FirstOrDefault();
  670. }
  671. }
  672. /// <summary>
  673. /// 授课语言
  674. /// </summary>
  675. [DisplayName("授课语言")]
  676. public int? TeachinglanguageID { get; set; }
  677. /// <summary>
  678. /// 授课语言
  679. /// </summary>
  680. [DisplayName("授课语言")]
  681. public string TeachinglanguageName
  682. {
  683. get
  684. {
  685. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Teachinglanguage.ToString())
  686. .Where(x => x.Value == TeachinglanguageID)
  687. .Select(x => x.Name).FirstOrDefault();
  688. }
  689. }
  690. /// <summary>
  691. /// 考试方式
  692. /// </summary>
  693. [Required]
  694. [DisplayName("考试方式")]
  695. public int? ExaminationModeID { get; set; }
  696. /// <summary>
  697. /// 考试方式
  698. /// </summary>
  699. [DisplayName("考试方式")]
  700. public string ExaminationModeName
  701. {
  702. get
  703. {
  704. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_ExaminationMode.ToString())
  705. .Where(x => x.Value == ExaminationModeID)
  706. .Select(x => x.Name).FirstOrDefault();
  707. }
  708. }
  709. /// <summary>
  710. /// 成绩类型
  711. /// </summary>
  712. [Required]
  713. [DisplayName("成绩类型")]
  714. public int? ResultTypeID { get; set; }
  715. /// <summary>
  716. /// 成绩类型
  717. /// </summary>
  718. [DisplayName("成绩类型")]
  719. public string ResultTypeName
  720. {
  721. get
  722. {
  723. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_ResultType.ToString())
  724. .Where(x => x.Value == ResultTypeID)
  725. .Select(x => x.Name).FirstOrDefault();
  726. }
  727. }
  728. /// <summary>
  729. /// 处理方式
  730. /// </summary>
  731. [Required]
  732. [DisplayName("处理方式")]
  733. public int? HandleModeID { get; set; }
  734. /// <summary>
  735. /// 处理方式
  736. /// </summary>
  737. [DisplayName("处理方式")]
  738. public string HandleModeName
  739. {
  740. get
  741. {
  742. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_HandleMode.ToString())
  743. .Where(x => x.Value == HandleModeID)
  744. .Select(x => x.Name).FirstOrDefault();
  745. }
  746. }
  747. /// <summary>
  748. /// 授课方式
  749. /// </summary>
  750. [DisplayName("授课方式")]
  751. public List<int?> TeachingModeIDList { get; set; }
  752. /// <summary>
  753. /// 授课方式(可存在多个授课方式--用顿号隔开)
  754. /// </summary>
  755. [DisplayName("授课方式")]
  756. public string TeachingModeIDListName
  757. {
  758. get
  759. {
  760. if (TeachingModeIDList != null && TeachingModeIDList.Count() > 0)
  761. {
  762. return string.Join("、", TeachingModeIDList.Select(x =>
  763. IdNameExt.GetDictionaryItem(DictionaryItem.CF_TeachingMode.ToString())
  764. .Where(w => w.Value == x).Select(w => w.Name).FirstOrDefault()));
  765. }
  766. else
  767. {
  768. return "";
  769. }
  770. }
  771. }
  772. /// <summary>
  773. /// 授课地点
  774. /// </summary>
  775. [DisplayName("授课地点")]
  776. public List<int?> TeachingPlaceIDList { get; set; }
  777. /// <summary>
  778. /// 授课地点(可存在多个授课地点--用顿号隔开)
  779. /// </summary>
  780. [DisplayName("授课地点")]
  781. public string TeachingPlaceIDListName
  782. {
  783. get
  784. {
  785. if (TeachingPlaceIDList != null && TeachingPlaceIDList.Count() > 0)
  786. {
  787. return string.Join("、", TeachingPlaceIDList.Select(x =>
  788. IdNameExt.GetDictionaryItem(DictionaryItem.EM_TeachingPlace.ToString())
  789. .Where(w => w.Value == x).Select(w => w.Name).FirstOrDefault()));
  790. }
  791. else
  792. {
  793. return "";
  794. }
  795. }
  796. }
  797. /// <summary>
  798. /// 计划范围
  799. /// </summary>
  800. [DisplayName("计划范围")]
  801. public int? PlanRange { get; set; }
  802. /// <summary>
  803. /// 人数
  804. /// </summary>
  805. [DisplayName("人数")]
  806. public int? StudentCount { get; set; }
  807. /// <summary>
  808. /// 计划类型
  809. /// </summary>
  810. [DisplayName("计划类型")]
  811. public int? PlanTypeID { get; set; }
  812. /// <summary>
  813. /// 计划类型
  814. /// </summary>
  815. [DisplayName("计划类型")]
  816. public string PlanTypeName
  817. {
  818. get
  819. {
  820. return IdNameExt.GetDictionaryItem(DictionaryItem.EM_PlanType.ToString())
  821. .Where(x => x.Value == PlanTypeID)
  822. .Select(x => x.Name).FirstOrDefault();
  823. }
  824. }
  825. /// <summary>
  826. /// 执行状态
  827. /// </summary>
  828. [DisplayName("执行状态")]
  829. public int? ExecuteStatus { get; set; }
  830. /// <summary>
  831. /// 执行状态
  832. /// </summary>
  833. [DisplayName("执行状态")]
  834. public string ExecuteStatusName
  835. {
  836. get
  837. {
  838. return IdNameExt.GetDictionaryItem(DictionaryItem.EM_ExecuteStatus.ToString())
  839. .Where(x => x.Value == ExecuteStatus)
  840. .Select(x => x.Name).FirstOrDefault();
  841. }
  842. }
  843. /// <summary>
  844. /// 备注
  845. /// </summary>
  846. [DisplayName("备注")]
  847. public string Remark { get; set; }
  848. /// <summary>
  849. /// 状态
  850. /// </summary>
  851. [DisplayName("状态")]
  852. public int? RecordStatus { get; set; }
  853. /// <summary>
  854. /// 创建人
  855. /// </summary>
  856. [DisplayName("创建人")]
  857. public Guid? CreateUserID { get; set; }
  858. /// <summary>
  859. /// 创建时间
  860. /// </summary>
  861. [DisplayName("创建时间")]
  862. public DateTime? CreateTime { get; set; }
  863. /// <summary>
  864. /// 修改人
  865. /// </summary>
  866. [DisplayName("修改人")]
  867. public Guid? ModifyUserID { get; set; }
  868. /// <summary>
  869. /// 修改时间
  870. /// </summary>
  871. [DisplayName("修改时间")]
  872. public DateTime? ModifyTime { get; set; }
  873. }
  874. }