OptionalCourseSettingView.cs 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using EMIS.ViewModel.SystemView;
  6. using EMIS.ViewModel.UniversityManage.TeacherManage;
  7. using EMIS.Entities;
  8. using System.ComponentModel;
  9. using System.ComponentModel.DataAnnotations;
  10. using EMIS.ViewModel.CacheManage;
  11. namespace EMIS.ViewModel.SelectCourse
  12. {
  13. public class OptionalCourseSettingView
  14. {
  15. /// <summary>
  16. /// 任选设定ID
  17. /// </summary>
  18. public System.Guid? OptionalCourseID { get; set; }
  19. /// <summary>
  20. /// 限选计划ID
  21. /// </summary>
  22. public Guid? ExecutableOptionalCourseID { get; set; }
  23. /// <summary>
  24. /// 选课编号
  25. /// </summary>
  26. [DisplayName("选课编号")]
  27. public string No { get; set; }
  28. /// <summary>
  29. /// 学年学期ID
  30. /// </summary>
  31. [Required]
  32. [DisplayName("学年学期ID")]
  33. public Guid? SchoolyearID { get; set; }
  34. /// <summary>
  35. /// 学年学期
  36. /// </summary>
  37. public string SchoolyearDesc { get; set; }
  38. /// <summary>
  39. /// 学年学期
  40. /// </summary>
  41. [DisplayName("学年学期")]
  42. public string SchoolYearCode { get; set; }
  43. /// <summary>
  44. /// 学年(学年学期对应学年)
  45. /// </summary>
  46. [DisplayName("学年")]
  47. public int? YearID { get; set; }
  48. /// <summary>
  49. /// 学年
  50. /// </summary>
  51. [DisplayName("学年")]
  52. public int? Years { get; set; }
  53. [DisplayName("入学学年学期")]
  54. public string GSchoolYearCode { get; set; }
  55. /// <summary>
  56. /// 校区ID
  57. /// </summary>
  58. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "CampusID")]
  59. public Nullable<System.Guid> CampusID { get; set; }
  60. /// <summary>
  61. /// 院系所ID
  62. /// </summary>
  63. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "CollegeID")]
  64. public Nullable<System.Guid> CollegeID { get; set; }
  65. /// <summary>
  66. /// 院系所
  67. /// </summary>
  68. [Display(ResourceType = typeof(EMIS.Resources.DataAnnotations.Label), Name = "College")]
  69. public string CollegeName { get; set; }
  70. /// <summary>
  71. /// 开课教研室
  72. /// </summary>
  73. [DisplayName("开课教研室")]
  74. [Required]
  75. public Guid? DepartmentID { get; set; }
  76. /// <summary>
  77. /// 开课教研室
  78. /// </summary>
  79. [DisplayName("开课教研室")]
  80. public string DepartmentName { get; set; }
  81. /// <summary>
  82. /// 年级专业
  83. /// </summary>
  84. [Required]
  85. [DisplayName("年级专业")]
  86. public Guid? GrademajorID { get; set; }
  87. /// <summary>
  88. /// 年级专业代码
  89. /// </summary>
  90. [DisplayName("年级专业代码")]
  91. public string GrademajorCode { get; set; }
  92. /// <summary>
  93. /// 年级专业名称
  94. /// </summary>
  95. [DisplayName("年级专业名称")]
  96. public string GrademajorName { get; set; }
  97. /// <summary>
  98. /// 年级(年级专业对应的年级)
  99. /// </summary>
  100. [DisplayName("年级")]
  101. public int? GradeID { get; set; }
  102. /// <summary>
  103. /// 年级(年级专业对应的年级)
  104. /// </summary>
  105. [DisplayName("年级")]
  106. public string Grade
  107. {
  108. get
  109. {
  110. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Grade.ToString()).Where(x => x.Value == GradeID).Select(x => x.Name).FirstOrDefault();
  111. }
  112. }
  113. /// <summary>
  114. /// 班级信息ID
  115. /// </summary>
  116. [DisplayName("班级信息ID")]
  117. [Required]
  118. public Guid? ClassmajorID { get; set; }
  119. /// <summary>
  120. /// 选修任务班名称
  121. /// </summary>
  122. [DisplayName("选修任务班名称")]
  123. public string DefaultClassName { get; set; }
  124. /// <summary>
  125. /// 专业课程ID
  126. /// </summary>
  127. [DisplayName("专业课程ID")]
  128. public Nullable<System.Guid> SpecialtyCourseID { get; set; }
  129. /// <summary>
  130. /// 专业信息ID
  131. /// </summary>
  132. [DisplayName("专业信息ID")]
  133. public Nullable<System.Guid> SpecialtyID { get; set; }
  134. /// <summary>
  135. /// 院系专业
  136. /// </summary>
  137. [Required]
  138. public int? StandardID { get; set; }
  139. /// <summary>
  140. /// 专业代码
  141. /// </summary>
  142. [DisplayName("专业代码")]
  143. public string StandardCode
  144. {
  145. get
  146. {
  147. var inistStandardCode = IdNameExt.GetDictionaryItem(DictionaryItem.CF_Standard.ToString())
  148. .Where(x => x.Value == StandardID)
  149. .Select(x => x.Code).FirstOrDefault();
  150. return (inistStandardCode != null ? inistStandardCode.PadLeft(6, '0') : "");
  151. }
  152. }
  153. /// <summary>
  154. /// 专业名称
  155. /// </summary>
  156. [DisplayName("专业名称")]
  157. public string StandardDesc
  158. {
  159. get
  160. {
  161. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Standard.ToString())
  162. .Where(x => x.Value == StandardID)
  163. .Select(x => x.Name).FirstOrDefault();
  164. }
  165. }
  166. /// <summary>
  167. /// 课程信息ID
  168. /// </summary>
  169. [Required]
  170. public Guid? CoursematerialID { get; set; }
  171. /// <summary>
  172. /// 课程代码
  173. /// </summary>
  174. [DisplayName("课程代码")]
  175. public string CourseCode { get; set; }
  176. /// <summary>
  177. /// 课程名称
  178. /// </summary>
  179. [DisplayName("课程名称")]
  180. public string CourseName { get; set; }
  181. /// <summary>
  182. /// 课程类型
  183. /// </summary>
  184. [Required]
  185. [DisplayName("课程类型")]
  186. public int? CourseTypeID { get; set; }
  187. /// <summary>
  188. /// 课程类型
  189. /// </summary>
  190. [DisplayName("课程类型")]
  191. public string CourseTypeName
  192. {
  193. get
  194. {
  195. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_CourseType.ToString())
  196. .Where(x => x.Value == CourseTypeID)
  197. .Select(x => x.Name).FirstOrDefault();
  198. }
  199. }
  200. /// <summary>
  201. /// 课程结构
  202. /// </summary>
  203. //[Required]
  204. [DisplayName("课程结构")]
  205. public int? CourseStructureID { get; set; }
  206. /// <summary>
  207. /// 课程结构
  208. /// </summary>
  209. [DisplayName("课程结构")]
  210. public string CourseStructureName
  211. {
  212. get
  213. {
  214. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_CourseStructure.ToString())
  215. .Where(x => x.Value == CourseStructureID)
  216. .Select(x => x.Name).FirstOrDefault();
  217. }
  218. }
  219. /// <summary>
  220. /// 课程属性
  221. /// </summary>
  222. //[Required]
  223. [DisplayName("课程属性")]
  224. public int? CourseCategoryID { get; set; }
  225. /// <summary>
  226. /// 课程属性
  227. /// </summary>
  228. [DisplayName("课程属性")]
  229. public string CourseCategoryName
  230. {
  231. get
  232. {
  233. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_CourseCategory.ToString())
  234. .Where(x => x.Value == CourseCategoryID)
  235. .Select(x => x.Name).FirstOrDefault();
  236. }
  237. }
  238. /// <summary>
  239. /// 课程性质
  240. /// </summary>
  241. //[Required]
  242. [DisplayName("课程性质")]
  243. public int? CourseQualityID { get; set; }
  244. /// <summary>
  245. /// 课程性质
  246. /// </summary>
  247. [DisplayName("课程性质")]
  248. public string CourseQualityName
  249. {
  250. get
  251. {
  252. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_CourseQuality.ToString())
  253. .Where(x => x.Value == CourseQualityID)
  254. .Select(x => x.Name).FirstOrDefault();
  255. }
  256. }
  257. /// <summary>
  258. /// 授课语言
  259. /// </summary>
  260. [DisplayName("授课语言")]
  261. public int? TeachinglanguageID { get; set; }
  262. /// <summary>
  263. /// 授课语言
  264. /// </summary>
  265. [DisplayName("授课语言")]
  266. public string TeachinglanguageName
  267. {
  268. get
  269. {
  270. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Teachinglanguage.ToString())
  271. .Where(x => x.Value == TeachinglanguageID)
  272. .Select(x => x.Name).FirstOrDefault();
  273. }
  274. }
  275. /// <summary>
  276. /// 是否学位或主干课
  277. /// </summary>
  278. [DisplayName("是否学位或主干课")]
  279. public bool IsMainCourse { get; set; }
  280. /// <summary>
  281. /// 是否学位或主干课
  282. /// </summary>
  283. [DisplayName("是否学位或主干课")]
  284. public string IsMainCourseName
  285. { get { return this.IsMainCourse == true ? "是" : "否"; } }
  286. /// <summary>
  287. /// 开课学年
  288. /// </summary>
  289. [DisplayName("开课学年")]
  290. public int? Schoolyear { get; set; }
  291. /// <summary>
  292. /// 开课学年
  293. /// </summary>
  294. [DisplayName("开课学年")]
  295. public int? SchoolyearNumID { get; set; }
  296. /// <summary>
  297. /// 开课学年
  298. /// </summary>
  299. [DisplayName("开课学年")]
  300. public string SchoolyearNumName
  301. {
  302. get
  303. {
  304. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_SchoolyearNum.ToString())
  305. .Where(x => x.Value == SchoolyearNumID)
  306. .Select(x => x.Name).FirstOrDefault();
  307. }
  308. }
  309. /// <summary>
  310. /// 学期
  311. /// </summary>
  312. [DisplayName("学期")]
  313. public int? SchoolcodeID { get; set; }
  314. /// <summary>
  315. /// 学期
  316. /// </summary>
  317. [DisplayName("学期")]
  318. public string SchoolcodeName
  319. {
  320. get
  321. {
  322. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Semester.ToString()).Where(x => x.Value == SchoolcodeID).Select(x => x.Name).FirstOrDefault();
  323. }
  324. }
  325. /// <summary>
  326. /// 开课学期
  327. /// </summary>
  328. [DisplayName("开课学期")]
  329. public int? StarttermID { get; set; }
  330. /// <summary>
  331. /// 开课学期
  332. /// </summary>
  333. [DisplayName("开课学期")]
  334. public string StarttermName
  335. {
  336. get
  337. {
  338. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_Startterm.ToString())
  339. .Where(x => x.Value == StarttermID)
  340. .Select(x => x.Name).FirstOrDefault();
  341. }
  342. }
  343. /// <summary>
  344. /// 学分
  345. /// </summary>
  346. [Required]
  347. [DisplayName("学分")]
  348. [DisplayFormat(DataFormatString = "{0:#.0}")]
  349. [RegularExpression(@"^\d+(\.\d{1,1})?$", ErrorMessage = "请输整数或保留1位小数")]
  350. public decimal? Credit { get; set; }
  351. /// <summary>
  352. /// 总学时
  353. /// </summary>
  354. [DisplayName("总学时")]
  355. public int? Totalhours
  356. {
  357. get
  358. {
  359. if (TheoryCourse == null)
  360. TheoryCourse = 0;
  361. if (Practicehours == null)
  362. Practicehours = 0;
  363. return (TheoryCourse + Practicehours);
  364. }
  365. }
  366. /// <summary>
  367. /// 上课周次
  368. /// </summary>
  369. [DisplayName("上课周次")]
  370. public int? SchoolweeksNum
  371. {
  372. get
  373. {
  374. if (TheoryWeeklyNum == null)
  375. TheoryWeeklyNum = 0;
  376. if (PracticeWeeklyNum == null)
  377. PracticeWeeklyNum = 0;
  378. return (TheoryCourse + Practicehours);
  379. }
  380. //get { return (this.TheoryWeeklyNum ?? 0 + this.PracticeWeeklyNum ?? 0) ; }
  381. }
  382. /// <summary>
  383. /// 理论学时
  384. /// </summary>
  385. [DisplayName("理论学时")]
  386. public int? TheoryCourse { get; set; }
  387. /// <summary>
  388. /// 实践学时
  389. /// </summary>
  390. [DisplayName("实践学时")]
  391. public int? Practicehours { get; set; }
  392. /// <summary>
  393. /// 实验学时
  394. /// </summary>
  395. [DisplayName("实验学时")]
  396. public int? Trialhours { get; set; }
  397. /// <summary>
  398. /// 每周次数
  399. /// </summary>
  400. [DisplayName("每周次数")]
  401. public int? WeeklyNum { get; set; }
  402. /// <summary>
  403. /// 周学时
  404. /// </summary>
  405. [DisplayName("周学时")]
  406. public int? WeeklyHours { get; set; }
  407. /// <summary>
  408. /// 理论周数
  409. /// </summary>
  410. [DisplayName("理论周数")]
  411. public int? TheoryWeeklyNum { get; set; }
  412. /// <summary>
  413. /// 实践周数
  414. /// </summary>
  415. [DisplayName("实践周数")]
  416. public int? PracticeWeeklyNum { get; set; }
  417. /// <summary>
  418. /// 实验周数
  419. /// </summary>
  420. [DisplayName("实验周数")]
  421. public int? TrialWeeklyNum { get; set; }
  422. /// <summary>
  423. /// 开始周次
  424. /// </summary>
  425. [DisplayName("开始周次")]
  426. public int? StartWeeklyNum { get; set; }
  427. /// <summary>
  428. /// 结束周次
  429. /// </summary>
  430. [DisplayName("结束周次")]
  431. public int? EndWeeklyNum { get; set; }
  432. /// <summary>
  433. /// 起止周次
  434. /// </summary>
  435. public string StartEndWeeklyNum
  436. {
  437. get
  438. {
  439. return (this.StartWeeklyNum.HasValue && this.EndWeeklyNum.HasValue) ?
  440. (this.StartWeeklyNum.Value.ToString() + "-" + this.EndWeeklyNum.Value.ToString()) : "";
  441. }
  442. }
  443. /// <summary>
  444. /// 实践类型
  445. /// </summary>
  446. [DisplayName("实践类型")]
  447. public int? PracticeTypeID { get; set; }
  448. [DisplayName("实践类型")]
  449. public string PracticeTypeNameStr { get; set; }
  450. /// <summary>
  451. /// 实践类型
  452. /// </summary>
  453. [DisplayName("实践类型")]
  454. public string PracticeTypeName
  455. {
  456. get
  457. {
  458. return IdNameExt.GetDictionaryItem(DictionaryItem.EM_PracticeType.ToString())
  459. .Where(x => x.Value == PracticeTypeID)
  460. .Select(x => x.Name).FirstOrDefault();
  461. }
  462. }
  463. /// <summary>
  464. /// 限选设定授课方式ID
  465. /// </summary>
  466. [DisplayName("限选设定授课方式ID")]
  467. public Guid? ExecutableOptionalCourseTeachingModeID { get; set; }
  468. /// <summary>
  469. /// 授课方式
  470. /// </summary>
  471. public virtual HashSet<OptionalCourseTeachingModeView> TeachingMode { get; set; }
  472. /// <summary>
  473. /// 授课方式
  474. /// </summary>
  475. [DisplayName("授课方式")]
  476. [Required]
  477. public List<int> TeachingModeID { get; set; }
  478. /// <summary>
  479. /// 授课方式
  480. /// </summary>
  481. [DisplayName("授课方式")]
  482. public List<string> TeachingModeName { get; set; }
  483. /// <summary>
  484. /// 考试方式
  485. /// </summary>
  486. [Required]
  487. [DisplayName("考试方式")]
  488. public int? ExaminationModeID { get; set; }
  489. /// <summary>
  490. /// 考试方式
  491. /// </summary>
  492. public string ExaminationModeDesc
  493. {
  494. get
  495. {
  496. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_ExaminationMode.ToString())
  497. .Where(x => x.Value == ExaminationModeID)
  498. .Select(x => x.Name).FirstOrDefault();
  499. }
  500. }
  501. /// <summary>
  502. /// 是否需要教材
  503. /// </summary>
  504. [DisplayName("是否需要教材")]
  505. public bool IsNeedMaterial { get; set; }
  506. /// <summary>
  507. /// 是否需要教材
  508. /// </summary>
  509. public string IsNeedMaterialDesc
  510. {
  511. get { return this.IsNeedMaterial == true ? "是" : "否"; }
  512. }
  513. /// <summary>
  514. /// 人数下限
  515. /// </summary>
  516. [Required]
  517. [DisplayName("人数下限")]
  518. public Nullable<int> PeopleNumlower { get; set; }
  519. /// <summary>
  520. /// 人数上限
  521. /// </summary>
  522. [Required]
  523. [DisplayName("人数上限")]
  524. public Nullable<int> PeopleNumlimit { get; set; }
  525. /// <summary>
  526. /// 处理方式
  527. /// </summary>
  528. [DisplayName("处理方式")]
  529. public int? HandleModeID { get; set; }
  530. /// <summary>
  531. /// 处理方式
  532. /// </summary>
  533. public string HandleModeDesc
  534. {
  535. get
  536. {
  537. return IdNameExt.GetDictionaryItem(DictionaryItem.CF_HandleMode.ToString())
  538. .Where(x => x.Value == HandleModeID)
  539. .Select(x => x.Name).FirstOrDefault();
  540. }
  541. }
  542. /// <summary>
  543. /// 限选任课老师设定ID
  544. /// </summary>
  545. public Guid? ExecutableOptionalCourseTeacherID { get; set; }
  546. /// <summary>
  547. /// 授课教师
  548. /// </summary>
  549. public virtual HashSet<OptionalCourseTeacherListView> Teachers { get; set; }
  550. /// <summary>
  551. /// 限选设定任课老师ID
  552. /// </summary>
  553. [DisplayName("任课老师ID")]
  554. public Guid TeacherID { get; set; }
  555. /// <summary>
  556. /// 任课类型
  557. /// </summary>
  558. [DisplayName("任课类型")]
  559. public int? TeachingMethod { get; set; }
  560. /// <summary>
  561. /// 教师名称
  562. /// </summary>
  563. public string TeacherName
  564. {
  565. get
  566. {
  567. var teacherNames = string.Join(",", Teachers.Select(x => x.Name).ToList());
  568. if (string.IsNullOrEmpty(teacherNames))
  569. {
  570. return "请选择教师";
  571. }
  572. else
  573. {
  574. return teacherNames;
  575. }
  576. }
  577. }
  578. /// <summary>
  579. /// 教师名称
  580. /// </summary>
  581. public string TeacherNames { get; set; }
  582. /// <summary>
  583. /// 成绩类型
  584. /// </summary>
  585. [Required]
  586. [DisplayName("成绩类型")]
  587. public int? ResultTypeID { get; set; }
  588. /// <summary>
  589. /// 是否启用
  590. /// </summary>
  591. [Required]
  592. [DisplayName("是否启用")]
  593. public bool IsEnable { get; set; }
  594. /// <summary>
  595. /// 是否启用
  596. /// </summary>
  597. public string IsEnableDesc
  598. {
  599. get { return this.IsEnable == true ? "是" : "否"; }
  600. }
  601. /// <summary>
  602. /// 开放状态
  603. /// </summary>
  604. [Required]
  605. [DisplayName("开放状态")]
  606. public bool IsOpened { get; set; }
  607. /// <summary>
  608. /// 开放状态
  609. /// </summary>
  610. public string IsOpenedDesc
  611. {
  612. get { return this.IsOpened == true ? "是" : "否"; }
  613. }
  614. /// <summary>
  615. /// RecordStatus
  616. /// </summary>
  617. public Nullable<int> RecordStatus { get; set; }
  618. /// <summary>
  619. /// 选课结果状态代码
  620. /// </summary>
  621. public string RecordStatusCode
  622. {
  623. get
  624. {
  625. return IdNameExt.GetDictionaryItem(DictionaryItem.EM_SelectCourseResultStatus.ToString())
  626. .Where(x => x.Value == RecordStatus)
  627. .Select(x => x.Code).FirstOrDefault();
  628. }
  629. }
  630. /// <summary>
  631. /// 选课结果状态
  632. /// </summary>
  633. [DisplayName("状态")]
  634. public string RecordStatusName
  635. {
  636. get
  637. {
  638. return IdNameExt.GetDictionaryItem(DictionaryItem.EM_SelectCourseResultStatus.ToString())
  639. .Where(x => x.Value == RecordStatus)
  640. .Select(x => x.Name).FirstOrDefault();
  641. }
  642. }
  643. /// <summary>
  644. ///
  645. /// </summary>
  646. public virtual IEnumerable<Sys_User> Sys_User { get; set; }
  647. /// <summary>
  648. /// 学生ID
  649. /// </summary>
  650. [DisplayName("学生ID")]
  651. public Guid? StudentUserID { get; set; }
  652. /// <summary>
  653. /// 开放范围
  654. /// </summary>
  655. public int? ClassCount { get; set; }
  656. /// <summary>
  657. /// 已选人数
  658. /// </summary>
  659. [DisplayName("已选人数")]
  660. public Nullable<int> EnterPeopleNum { get; set; }
  661. /// <summary>
  662. /// 教室ID
  663. /// </summary>
  664. [DisplayName("教室ID")]
  665. public Guid? ClassroomID { get; set; }
  666. /// <summary>
  667. /// 教室名称
  668. /// </summary>
  669. [DisplayName("教室名称")]
  670. public string ClassroomName { get; set; }
  671. /// <summary>
  672. /// 备注
  673. /// </summary>
  674. [DisplayName("备注")]
  675. public string Remarks { get; set; }
  676. /// <summary>
  677. ///
  678. /// </summary>
  679. public OptionalCourseSettingView()
  680. {
  681. this.TeachingMode = new HashSet<OptionalCourseTeachingModeView>();
  682. this.Teachers = new HashSet<OptionalCourseTeacherListView>();
  683. }
  684. /// <summary>
  685. /// CreateTime
  686. /// </summary>
  687. public Nullable<System.DateTime> CreateTime { get; set; }
  688. /// <summary>
  689. /// CreateUserID
  690. /// </summary>
  691. public Nullable<System.Guid> CreateUserID { get; set; }
  692. /// <summary>
  693. /// ModifyUserID
  694. /// </summary>
  695. public Nullable<System.Guid> ModifyUserID { get; set; }
  696. /// <summary>
  697. /// ModifyTime
  698. /// </summary>
  699. public Nullable<System.DateTime> ModifyTime { get; set; }
  700. }
  701. }