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.
 
 
 
 
 
 

1351 lines
79 KiB

  1. using Dapper;
  2. using Learun.Application.Organization;
  3. using Learun.Application.TwoDevelopment.LogisticsManagement;
  4. using Learun.DataBase.Repository;
  5. using Learun.Util;
  6. using System;
  7. using System.Collections.Generic;
  8. using System.Data;
  9. using System.Linq;
  10. using System.Reflection;
  11. using System.Text;
  12. namespace Learun.Application.TwoDevelopment.EducationalAdministration
  13. {
  14. /// <summary>
  15. /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
  16. /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
  17. /// 创 建:超级管理员
  18. /// 日 期:2023-01-04 15:03
  19. /// 描 述:学籍异动列表
  20. /// </summary>
  21. public class StuTransferInfoService : RepositoryFactory
  22. {
  23. #region 获取数据
  24. /// <summary>
  25. /// 获取列表数据
  26. /// </summary>
  27. /// <param name="queryJson">条件参数</param>
  28. /// <returns></returns>
  29. public IEnumerable<StuTransferInfoEntity> GetList(string queryJson)
  30. {
  31. try
  32. {
  33. //参考写法
  34. //var queryParam = queryJson.ToJObject();
  35. // 虚拟参数
  36. //var dp = new DynamicParameters(new { });
  37. //dp.Add("startTime", queryParam["StartTime"].ToDate(), DbType.DateTime);
  38. var strSql = new StringBuilder();
  39. strSql.Append("SELECT t.* ");
  40. strSql.Append(" FROM StuTransferInfo t ");
  41. return this.BaseRepository("CollegeMIS").FindList<StuTransferInfoEntity>(strSql.ToString());
  42. }
  43. catch (Exception ex)
  44. {
  45. if (ex is ExceptionEx)
  46. {
  47. throw;
  48. }
  49. else
  50. {
  51. throw ExceptionEx.ThrowServiceException(ex);
  52. }
  53. }
  54. }
  55. /// <summary>
  56. /// 获取列表分页数据
  57. /// </summary>
  58. /// <param name="pagination">分页参数</param>
  59. /// <param name="queryJson">条件参数</param>
  60. /// <returns></returns>
  61. public IEnumerable<StuTransferInfoEntity> GetPageList(Pagination pagination, string queryJson)
  62. {
  63. try
  64. {
  65. var strSql = new StringBuilder();
  66. strSql.Append("SELECT t.* ");
  67. strSql.Append(" FROM StuTransferInfo t ");
  68. strSql.Append(" WHERE 1=1 ");
  69. var queryParam = queryJson.ToJObject();
  70. // 虚拟参数
  71. var dp = new DynamicParameters(new { });
  72. //sql条件
  73. if (!queryParam["SqlParameter"].IsEmpty())
  74. {
  75. strSql.Append(queryParam["SqlParameter"].ToString());
  76. }
  77. if (!queryParam["AnomalousType"].IsEmpty())
  78. {
  79. dp.Add("AnomalousType", queryParam["AnomalousType"].ToString(), DbType.String);
  80. strSql.Append(" AND t.AnomalousType = @AnomalousType ");
  81. }
  82. if (!queryParam["StuName"].IsEmpty())
  83. {
  84. dp.Add("StuName", "%" + queryParam["StuName"].ToString() + "%", DbType.String);
  85. strSql.Append(" AND t.StuName like @StuName ");
  86. }
  87. if (!queryParam["ClassNo"].IsEmpty())
  88. {
  89. dp.Add("ClassNo", queryParam["ClassNo"].ToString(), DbType.String);
  90. strSql.Append(" AND t.ClassNo = @ClassNo ");
  91. }
  92. if (!queryParam["CreateUserId"].IsEmpty())
  93. {
  94. dp.Add("CreateUserId", queryParam["CreateUserId"].ToString(), DbType.String);
  95. strSql.Append(" AND t.CreateUserId = @CreateUserId ");
  96. }
  97. if (!queryParam["CheckUserId"].IsEmpty())
  98. {
  99. dp.Add("CheckUserId", queryParam["CheckUserId"].ToString(), DbType.String);
  100. strSql.Append(" AND t.CheckUserId = @CheckUserId ");
  101. }
  102. if (!queryParam["StuStatus"].IsEmpty())
  103. {
  104. dp.Add("StuStatus", queryParam["StuStatus"].ToString(), DbType.String);
  105. strSql.Append(" AND t.StuStatus = @StuStatus ");
  106. }
  107. if (!queryParam["F_EnabledMark"].IsEmpty())
  108. {
  109. dp.Add("F_EnabledMark", queryParam["F_EnabledMark"].ToString(), DbType.String);
  110. strSql.Append(" AND t.F_EnabledMark = @F_EnabledMark ");
  111. }
  112. if (!queryParam["Grade"].IsEmpty())
  113. {
  114. dp.Add("Grade", queryParam["Grade"].ToString(), DbType.String);
  115. strSql.Append(" AND (t.Grade=@Grade OR t.NewGrade=@Grade) ");
  116. }
  117. if (!queryParam["StartTime"].IsEmpty() && !queryParam["EndTime"].IsEmpty())
  118. {
  119. dp.Add("startTime", queryParam["StartTime"].ToDate(), DbType.DateTime);
  120. dp.Add("endTime", queryParam["EndTime"].ToDate(), DbType.DateTime);
  121. strSql.Append(" AND ( t.CreateTime >= @startTime AND t.CreateTime <= @endTime ) ");
  122. }
  123. return this.BaseRepository("CollegeMIS").FindList<StuTransferInfoEntity>(strSql.ToString(), dp, pagination);
  124. }
  125. catch (Exception ex)
  126. {
  127. if (ex is ExceptionEx)
  128. {
  129. throw;
  130. }
  131. else
  132. {
  133. throw ExceptionEx.ThrowServiceException(ex);
  134. }
  135. }
  136. }
  137. /// <summary>
  138. /// 获取实体数据
  139. /// </summary>
  140. /// <param name="keyValue">主键</param>
  141. /// <returns></returns>
  142. public StuTransferInfoEntity GetEntity(string keyValue)
  143. {
  144. try
  145. {
  146. return this.BaseRepository("CollegeMIS").FindEntity<StuTransferInfoEntity>(keyValue);
  147. }
  148. catch (Exception ex)
  149. {
  150. if (ex is ExceptionEx)
  151. {
  152. throw;
  153. }
  154. else
  155. {
  156. throw ExceptionEx.ThrowServiceException(ex);
  157. }
  158. }
  159. }
  160. #endregion
  161. #region 提交数据
  162. /// <summary>
  163. /// 删除实体数据
  164. /// </summary>
  165. /// <param name="keyValue">主键</param>
  166. public void DeleteEntity(string keyValue)
  167. {
  168. var db = this.BaseRepository("CollegeMIS").BeginTrans();
  169. try
  170. {
  171. var Id = keyValue.Split(',');
  172. foreach (var item in Id)
  173. {
  174. db.Delete<StuTransferInfoEntity>(x => x.ID == item);
  175. }
  176. db.Commit();
  177. }
  178. catch (Exception ex)
  179. {
  180. db.Rollback();
  181. if (ex is ExceptionEx)
  182. {
  183. throw;
  184. }
  185. else
  186. {
  187. throw ExceptionEx.ThrowServiceException(ex);
  188. }
  189. }
  190. }
  191. /// <summary>
  192. /// 转入
  193. /// <param name="keyValue">主键</param>
  194. /// <param name="entity">实体</param>
  195. /// </summary>
  196. public void SaveEntity(string keyValue, StuTransferInfoEntity entity)
  197. {
  198. try
  199. {
  200. if (!string.IsNullOrEmpty(keyValue))
  201. {
  202. entity.Modify(keyValue);
  203. this.BaseRepository("CollegeMIS").Update(entity);
  204. }
  205. else
  206. {
  207. entity.Create();
  208. //去重验证
  209. if (entity.AnomalousType == "04")//转入
  210. {
  211. if (this.BaseRepository("CollegeMIS").FindEntity<StuTransferInfoEntity>(x =>
  212. x.AnomalousType == entity.AnomalousType && x.StuName == entity.StuName &&
  213. x.StuNo == entity.StuNo && x.IdentityCardNo == entity.IdentityCardNo) == null)
  214. {
  215. //添加数据
  216. this.BaseRepository("CollegeMIS").Insert(entity);
  217. }
  218. }
  219. else
  220. {
  221. this.BaseRepository("CollegeMIS").Insert(entity);
  222. }
  223. }
  224. }
  225. catch (Exception ex)
  226. {
  227. if (ex is ExceptionEx)
  228. {
  229. throw;
  230. }
  231. else
  232. {
  233. throw ExceptionEx.ThrowServiceException(ex);
  234. }
  235. }
  236. }
  237. /// <summary>
  238. /// 转专业,转班,留级/休学/退学/转出
  239. /// </summary>
  240. /// <param name="keyValue"></param>
  241. /// <param name="entity"></param>
  242. /// <param name="strStuList"></param>
  243. public void SaveEntity(StuTransferInfoEntity entity, List<StuInfoBasicEntity> strStuList)
  244. {
  245. var db = this.BaseRepository("CollegeMIS").BeginTrans();
  246. try
  247. {
  248. //保存的数据
  249. List<StuTransferInfoEntity> entitylist = new List<StuTransferInfoEntity>();
  250. foreach (var item in strStuList)
  251. {
  252. var InsertEntity = new StuTransferInfoEntity();
  253. //历史数据
  254. InsertEntity.StuId = item.StuId;
  255. InsertEntity.StuNo = item.StuNo;
  256. InsertEntity.StuName = item.StuName;
  257. InsertEntity.Gender = item.GenderNo;
  258. InsertEntity.ClassNo = item.ClassNo;
  259. InsertEntity.MajorNo = item.MajorNo;
  260. InsertEntity.DeptNo = item.DeptNo;
  261. InsertEntity.Grade = item.Grade;
  262. InsertEntity.EduSystem = item.EduSystem;
  263. InsertEntity.IdentityCardNo = item.IdentityCardNo;
  264. InsertEntity.EnteDate = entity.EnteDate; //前端还是后端处理
  265. //新数据
  266. InsertEntity.AnomalousType = entity.AnomalousType;
  267. InsertEntity.ChangeReason = entity.ChangeReason;
  268. InsertEntity.NewClassNo = entity.NewClassNo;
  269. InsertEntity.NewMajorNo = entity.NewMajorNo;
  270. InsertEntity.NewDeptNo = entity.NewDeptNo;
  271. InsertEntity.NewGrade = entity.NewGrade;
  272. InsertEntity.LeaveDate = entity.LeaveDate;
  273. InsertEntity.SuspensionBeginTime = entity.SuspensionBeginTime;
  274. InsertEntity.SuspensionEndTime = entity.SuspensionEndTime;
  275. InsertEntity.SuspensionPeriod = entity.SuspensionPeriod;
  276. InsertEntity.OutSchool = entity.OutSchool;
  277. InsertEntity.Remark = entity.Remark;
  278. //
  279. InsertEntity.StuStatus = entity.StuStatus;
  280. InsertEntity.F_WriteMark = entity.F_WriteMark;
  281. InsertEntity.Create();
  282. //去重验证
  283. if (InsertEntity.AnomalousType == "01" || InsertEntity.AnomalousType == "07" || InsertEntity.AnomalousType == "08" || InsertEntity.AnomalousType == "15")//转专业、转班、留级 跳级
  284. {
  285. if (this.BaseRepository("CollegeMIS").FindEntity<StuTransferInfoEntity>(x =>
  286. x.AnomalousType == InsertEntity.AnomalousType && x.StuId == InsertEntity.StuId && x.DeptNo == InsertEntity.DeptNo && x.MajorNo == InsertEntity.MajorNo &&
  287. x.ClassNo == InsertEntity.ClassNo && x.Grade == InsertEntity.Grade && x.NewDeptNo == InsertEntity.NewDeptNo && x.NewMajorNo == InsertEntity.NewMajorNo &&
  288. x.NewClassNo == InsertEntity.NewClassNo && x.NewGrade == InsertEntity.NewGrade) == null)
  289. {
  290. //添加数据
  291. entitylist.Add(InsertEntity);
  292. }
  293. }
  294. else if (InsertEntity.AnomalousType == "06")//休学
  295. {
  296. if (this.BaseRepository("CollegeMIS").FindEntity<StuTransferInfoEntity>(x =>
  297. x.AnomalousType == InsertEntity.AnomalousType && x.StuId == InsertEntity.StuId && x.EnteDate == InsertEntity.EnteDate && x.SuspensionPeriod == InsertEntity.SuspensionPeriod &&
  298. x.SuspensionBeginTime == InsertEntity.SuspensionBeginTime && x.SuspensionEndTime == InsertEntity.SuspensionEndTime) == null)
  299. {
  300. //添加数据
  301. entitylist.Add(InsertEntity);
  302. }
  303. }
  304. else if (InsertEntity.AnomalousType == "02" || InsertEntity.AnomalousType == "05" || InsertEntity.AnomalousType == "10" || InsertEntity.AnomalousType == "11" || InsertEntity.AnomalousType == "12" || InsertEntity.AnomalousType == "13" || InsertEntity.AnomalousType == "14")//退学、死亡,失踪,开除,转出,注销,自动退学
  305. {
  306. if (this.BaseRepository("CollegeMIS").FindEntity<StuTransferInfoEntity>(x =>
  307. x.AnomalousType == InsertEntity.AnomalousType && x.StuId == InsertEntity.StuId && x.EnteDate == InsertEntity.EnteDate) == null)
  308. {
  309. //添加数据
  310. entitylist.Add(InsertEntity);
  311. }
  312. }
  313. }
  314. db.Insert(entitylist); //创建学籍异动信息
  315. db.Commit();
  316. }
  317. catch (Exception ex)
  318. {
  319. db.Rollback();
  320. if (ex is ExceptionEx)
  321. {
  322. throw;
  323. }
  324. else
  325. {
  326. throw ExceptionEx.ThrowServiceException(ex);
  327. }
  328. }
  329. }
  330. /// <summary>
  331. /// 复学
  332. /// </summary>
  333. /// <param name="keyValue"></param>
  334. /// <param name="entity"></param>
  335. /// <param name="strStuList"></param>
  336. public void SaveAgainEntity(StuTransferInfoEntity entity, List<StuTransferInfoEntity> strStuList)
  337. {
  338. var db = this.BaseRepository("CollegeMIS").BeginTrans();
  339. try
  340. {
  341. //保存的数据
  342. List<StuTransferInfoEntity> entitylist = new List<StuTransferInfoEntity>();
  343. foreach (var item in strStuList)
  344. {
  345. var InsertEntity = new StuTransferInfoEntity();
  346. //历史数据
  347. InsertEntity.StuId = item.StuId;
  348. InsertEntity.ReturnSchoolId = item.ID;
  349. InsertEntity.StuTranId = item.StuTranId;
  350. InsertEntity.StuNo = item.StuNo;
  351. InsertEntity.StuName = item.StuName;
  352. InsertEntity.Gender = item.Gender;
  353. InsertEntity.ClassNo = item.ClassNo;
  354. InsertEntity.MajorNo = item.MajorNo;
  355. InsertEntity.DeptNo = item.DeptNo;
  356. InsertEntity.Grade = item.Grade;
  357. InsertEntity.EduSystem = item.EduSystem;
  358. InsertEntity.EnteDate = DateTime.Now.ToDate(); //前端还是后端处理
  359. //新数据
  360. InsertEntity.AnomalousType = entity.AnomalousType;
  361. InsertEntity.ChangeReason = entity.ChangeReason;
  362. InsertEntity.NewClassNo = entity.NewClassNo;
  363. InsertEntity.NewMajorNo = entity.NewMajorNo;
  364. InsertEntity.NewDeptNo = entity.NewDeptNo;
  365. InsertEntity.NewGrade = entity.NewGrade;
  366. InsertEntity.LeaveDate = entity.LeaveDate;
  367. InsertEntity.StuStatus = entity.StuStatus;
  368. InsertEntity.IdentityCardNo = item.IdentityCardNo;
  369. //恢复学籍,恢复账号
  370. InsertEntity.RecoverStuStatus = entity.RecoverStuStatus;
  371. InsertEntity.RecoverWriteMark = entity.RecoverWriteMark;
  372. InsertEntity.Create();
  373. //去重验证
  374. if (InsertEntity.AnomalousType == "03" || InsertEntity.AnomalousType == "16")//复学 //恢复学籍
  375. {
  376. if (this.BaseRepository("CollegeMIS").FindEntity<StuTransferInfoEntity>(x =>
  377. x.AnomalousType == InsertEntity.AnomalousType && x.StuId == InsertEntity.StuId && x.LeaveDate == InsertEntity.LeaveDate &&
  378. x.NewDeptNo == InsertEntity.NewDeptNo && x.NewMajorNo == InsertEntity.NewMajorNo && x.NewClassNo == InsertEntity.NewClassNo && x.NewGrade == InsertEntity.NewGrade) == null)
  379. {
  380. //添加数据
  381. entitylist.Add(InsertEntity);
  382. }
  383. }
  384. }
  385. db.Insert(entitylist); //创建学籍异动信息
  386. db.Commit();
  387. }
  388. catch (Exception ex)
  389. {
  390. db.Rollback();
  391. if (ex is ExceptionEx)
  392. {
  393. throw;
  394. }
  395. else
  396. {
  397. throw ExceptionEx.ThrowServiceException(ex);
  398. }
  399. }
  400. }
  401. /// <summary>
  402. /// 审核
  403. /// </summary>
  404. /// <param name="keyValue"></param>
  405. public void CheckEntity(string keyValue)
  406. {
  407. var userInfo = LoginUserInfo.Get();
  408. var db = this.BaseRepository("CollegeMIS").BeginTrans();
  409. var db1 = this.BaseRepository().BeginTrans();
  410. try
  411. {
  412. List<StuInfoBasicTranEntity> InStuinTran = new List<StuInfoBasicTranEntity>();
  413. //List<StuInfoBasicEntity> Stulist = new List<StuInfoBasicEntity>();
  414. var StuEntity = new StuInfoBasicEntity();
  415. var Id = keyValue.Split(',');
  416. foreach (var item in Id)
  417. {
  418. var addTruan = new StuInfoBasicEntity();
  419. var upTrua = db.FindEntity<StuTransferInfoEntity>(x => x.ID == item);
  420. upTrua.CheckUserId = userInfo.userId;
  421. upTrua.CheckTime = DateTime.Now;
  422. upTrua.F_EnabledMark = 1;
  423. var stulist = db.FindEntity<StuInfoBasicEntity>(x => x.StuId == upTrua.StuId);
  424. var InsertStuTran = new StuInfoBasicTranEntity();
  425. switch (upTrua.AnomalousType)
  426. {
  427. case "01": //留级
  428. case "02": //转校
  429. case "05": //退学
  430. case "06": //休学
  431. case "07": //转班
  432. case "08": //转专业
  433. case "10": //开除
  434. case "11": //死亡
  435. case "12": //失踪
  436. case "13": //注销
  437. case "14": //自动退学
  438. case "15": //跳级
  439. #region 复制一份学生学籍表
  440. copyStuInfoBasic(upTrua, stulist, InsertStuTran);
  441. upTrua.StuTranId = InsertStuTran.ID;
  442. InStuinTran.Add(InsertStuTran);
  443. #endregion
  444. #region 成绩(StuScore,新-写入,旧-删除;)
  445. var StuScoreHistory = db.FindList<StuScoreEntity>(x => x.StuNo == InsertStuTran.StuNo
  446. && x.DeptNo == InsertStuTran.DeptNo && x.MajorNo == InsertStuTran.MajorNo
  447. && x.ClassNo == InsertStuTran.ClassNo && x.F_SchoolId == InsertStuTran.F_SchoolId);
  448. if (StuScoreHistory.Any())
  449. {
  450. foreach (var itemScore in StuScoreHistory)
  451. {
  452. //插入新数据
  453. db.ExecuteBySql(" insert into StuScoreTran select * from StuScore where Scoreid = '" + itemScore.ScoreId + "' and Scoreid not in (select Scoreid from StuScoreTran)");
  454. //删除旧数据
  455. db.Delete<StuScoreEntity>(x => x.ScoreId == itemScore.ScoreId);
  456. }
  457. }
  458. #endregion
  459. #region 课表(StuSelectLessonList,新-写入,旧-删除;)
  460. var StuSelectLessonListHistory = db.FindList<StuSelectLessonListEntity>(x => x.StuNo == upTrua.StuNo && x.StuName == upTrua.StuName
  461. && x.DeptNo == upTrua.DeptNo && x.MajorNo == upTrua.MajorNo && x.ClassNo == upTrua.ClassNo && x.Grade == upTrua.Grade);
  462. if (StuSelectLessonListHistory.Any())
  463. {
  464. foreach (var entity in StuSelectLessonListHistory)
  465. {
  466. //插入新数据
  467. db.ExecuteBySql("insert into StuSelectLessonListTran select * from StuSelectLessonList where SelectId='" + entity.SelectId + "' and SelectId not in (select SelectId from StuSelectLessonListTran)");
  468. //删除旧数据
  469. db.Delete<StuSelectLessonListEntity>(x => x.SelectId == entity.SelectId);
  470. }
  471. }
  472. #endregion
  473. #region 选修课表(StuSelectLessonListOfElective,新-写入,旧-删除;OpenLessonPlanOfElective,旧-修改已报名的学生数量字段;)
  474. var StuSelectLessonListOfElectiveHistory = db.FindList<StuSelectLessonListOfElectiveEntity>(x => x.StuNo == upTrua.StuNo && x.StuName == upTrua.StuName
  475. && x.DeptNo == upTrua.DeptNo && x.MajorNo == upTrua.MajorNo && x.ClassNo == upTrua.ClassNo && x.Grade == upTrua.Grade);
  476. if (StuSelectLessonListOfElectiveHistory.Any())
  477. {
  478. foreach (var entity in StuSelectLessonListOfElectiveHistory)
  479. {
  480. //插入新数据
  481. db.ExecuteBySql("insert into StuSelectLessonListOfElectiveTran select * from StuSelectLessonListOfElective where Id='" + entity.Id + "' and Id not in (select Id from StuSelectLessonListOfElectiveTran) ");
  482. //修改旧数据:报名成功时,选课表中报名成功人数字段减一;
  483. if (entity.Status == 2)
  484. {
  485. db.ExecuteBySql("update OpenLessonPlanOfElective set StuNum=StuNum-1 where Id='" + entity.OLPEId + "'");
  486. }
  487. //删除旧数据
  488. db.Delete<StuSelectLessonListOfElectiveEntity>(x => x.Id == entity.Id);
  489. }
  490. }
  491. #endregion
  492. #region 补考成绩(StuScoreNotPass,新-写入,旧-删除;)
  493. var StuScoreNotPassHistory = db.FindList<StuScoreNotPassEntity>(x => x.StuNo == InsertStuTran.StuNo
  494. && x.DeptNo == InsertStuTran.DeptNo && x.MajorNo == InsertStuTran.MajorNo
  495. && x.ClassNo == InsertStuTran.ClassNo && x.F_SchoolId == InsertStuTran.F_SchoolId);
  496. if (StuScoreNotPassHistory.Any())
  497. {
  498. foreach (var itemScore in StuScoreNotPassHistory)
  499. {
  500. db.ExecuteBySql(" insert into StuScoreNotPassTran select * from StuScoreNotPass where Scoreid = '" + itemScore.ScoreId + "' and Scoreid not in (select Scoreid from StuScoreNotPassTran)");
  501. //删除旧数据
  502. db.Delete<StuScoreNotPassTranEntity>(x => x.ScoreId == itemScore.ScoreId);
  503. }
  504. }
  505. #endregion
  506. #region 二次补考(StuScoreNotPassTwo,新-写入,旧-删除;)
  507. var StuScoreNotPassTwoHistory = db.FindList<StuScoreNotPassTwoEntity>(x => x.StuNo == InsertStuTran.StuNo
  508. && x.DeptNo == InsertStuTran.DeptNo && x.MajorNo == InsertStuTran.MajorNo
  509. && x.ClassNo == InsertStuTran.ClassNo && x.F_SchoolId == InsertStuTran.F_SchoolId);
  510. if (StuScoreNotPassTwoHistory.Any())
  511. {
  512. foreach (var itemScore in StuScoreNotPassTwoHistory)
  513. {
  514. //插入数据
  515. db.ExecuteBySql(" insert into StuScoreNotPassTwoTran select * from StuScoreNotPassTwo where Scoreid = '" + itemScore.ScoreId + "' and Scoreid not in (select Scoreid from StuScoreNotPassTwoTran) ");
  516. //删除旧数据
  517. db.Delete<StuScoreNotPassTwoTranEntity>(x => x.ScoreId == itemScore.ScoreId);
  518. }
  519. }
  520. #endregion
  521. #region 助学金奖学金(ScholarshipAudit,新-写入,旧-删除;)
  522. var ScholarshipHistory = db.FindList<ScholarshipxjEntity>(x => x.StuNo == InsertStuTran.StuNo);
  523. if (ScholarshipHistory.Any())
  524. {
  525. foreach (var items in ScholarshipHistory)
  526. {
  527. db.ExecuteBySql(" insert into ScholarshipTran select * from ScholarshipAudit where id = '" + items.Id + "' and id not in (select id from ScholarshipTran )");
  528. // 删除旧数据
  529. //db.Delete<ScholarshipxjEntity>(x => x.Id == items.Id);
  530. }
  531. }
  532. #endregion
  533. #region 学生心理健康档案(APStuHealthRecords,新-写入,旧-删除;)
  534. var AspHistory = db.FindList<APStuHealthRecordsEntity>(x => x.Stuno == InsertStuTran.StuNo);
  535. if (AspHistory.Any())
  536. {
  537. foreach (var items in AspHistory)
  538. {
  539. db.ExecuteBySql(" insert into APStuHealthRecordsTran select * from APStuHealthRecords where ID = '" + items.ID + "' and ID not in (select ID from APStuHealthRecordsTran )");
  540. // 删除旧数据
  541. //db.Delete<APStuHealthRecordsEntity>(x => x.ID == items.ID);
  542. }
  543. }
  544. #endregion
  545. #region 兵役一(MSRIntentionManagement,新-写入,旧-删除;)
  546. var MSRIntentionHistory = db.FindList<MSRIntentionManagementEntity>(x => x.StuNo == InsertStuTran.StuNo);
  547. if (MSRIntentionHistory.Any())
  548. {
  549. foreach (var items in MSRIntentionHistory)
  550. {
  551. db.ExecuteBySql(" insert into MSRIntentionManagementTran select * from MSRIntentionManagement where ID = '" + items.ID + "' and ID not in (select ID from MSRIntentionManagementTran) ");
  552. // 删除旧数据
  553. //db.Delete<MSRIntentionManagementEntity>(x => x.ID == items.ID);
  554. }
  555. }
  556. #endregion
  557. #region 兵役二(MSRMilitaryRecord,新-写入,旧-删除;)
  558. var MSRMilitaryRecordHistory = db.FindList<MSRMilitaryRecordEntity>(x => x.StuNo == InsertStuTran.StuNo);
  559. if (MSRMilitaryRecordHistory.Any())
  560. {
  561. foreach (var items in MSRMilitaryRecordHistory)
  562. {
  563. db.ExecuteBySql(" insert into MSRMilitaryRecordTran select * from MSRMilitaryRecord where ID = '" + items.ID + "' and ID not in (select ID from MSRMilitaryRecordTran)");
  564. // 删除旧数据
  565. //db.Delete<MSRMilitaryRecordEntity>(x => x.ID == items.ID);
  566. }
  567. }
  568. #endregion
  569. #region 兵役三(MSRMilitaryServiceRegistration,新-写入,旧-删除;)
  570. var MSRMilitaryServiceRegistrationHistory = db.FindList<MSRMilitaryServiceRegistrationEntity>(x => x.StuNo == InsertStuTran.StuNo);
  571. if (MSRMilitaryServiceRegistrationHistory.Any())
  572. {
  573. foreach (var items in MSRMilitaryServiceRegistrationHistory)
  574. {
  575. db.ExecuteBySql(" insert into MSRMilitaryServiceRegistrationTran select * from MSRMilitaryServiceRegistration where ID = '" + items.ID + "' and ID not in (select ID from MSRMilitaryServiceRegistrationTran)");
  576. // 删除旧数据
  577. //db.Delete<MSRMilitaryRecordEntity>(x => x.ID == items.ID);
  578. }
  579. }
  580. #endregion
  581. #region 奖励(StuEncourgement,新-写入,旧-删除;)
  582. var StuEncourgementHistory = db.FindList<StuEncourgementEntity>(x => x.StuNo == InsertStuTran.StuNo);
  583. if (StuEncourgementHistory.Any())
  584. {
  585. foreach (var items in StuEncourgementHistory)
  586. {
  587. db.ExecuteBySql(" insert into StuEncourgementTran select * from StuEncourgement where ID = '" + items.ID + "' and ID not in (select ID from StuEncourgementTran) ");
  588. // 删除旧数据
  589. //db.Delete<StuEncourgementEntity>(x => x.ID == items.ID);
  590. }
  591. }
  592. #endregion
  593. #region 处分(StuPunishment,新-写入,旧-删除;)
  594. var StuPunishmentHistory = db.FindList<StuPunishmentEntity>(x => x.StuNo == InsertStuTran.StuNo);
  595. if (StuPunishmentHistory.Any())
  596. {
  597. foreach (var items in StuPunishmentHistory)
  598. {
  599. db.ExecuteBySql(" insert into StuPunishmentTran select * from StuPunishment where ID = '" + items.Id + "' and ID not in (select ID from StuPunishmentTran)");
  600. // 删除旧数据
  601. //db.Delete<StuPunishmentEntity>(x => x.Id == items.Id);
  602. }
  603. }
  604. #endregion
  605. if (upTrua.AnomalousType == "01" || upTrua.AnomalousType == "07" || upTrua.AnomalousType == "08" || upTrua.AnomalousType == "15")
  606. {
  607. #region 学籍操作
  608. //修改学籍表信息
  609. stulist.ClassNo = upTrua.NewClassNo;
  610. stulist.MajorNo = upTrua.NewMajorNo;
  611. stulist.DeptNo = upTrua.NewDeptNo;
  612. stulist.Grade = upTrua.NewGrade;
  613. stulist.EduSystem = upTrua.EduSystem;
  614. db.Update(stulist);
  615. #endregion
  616. #region 课表(StuSelectLessonList,旧-写入新班级课表数据;)
  617. //db.Insert(CreateInsertStuSelectLessonList(upTrua, stulist));
  618. // wx修改 2023-3-21 课表空数据报错 ,查找同班同学 如果不为空继续执行
  619. if (CreateInsertStuSelectLessonList(upTrua, stulist) != null)
  620. {
  621. db.Insert(CreateInsertStuSelectLessonList(upTrua, stulist));
  622. }
  623. #endregion
  624. }
  625. else if (upTrua.AnomalousType == "02" || upTrua.AnomalousType == "05" || upTrua.AnomalousType == "06" || upTrua.AnomalousType == "10" || upTrua.AnomalousType == "11" || upTrua.AnomalousType == "12" || upTrua.AnomalousType == "13" || upTrua.AnomalousType == "14")
  626. {
  627. if (upTrua.AnomalousType == "06") //休学保存部分基础数据 StuTransferInfo数据?
  628. {
  629. upTrua.NationalityNo = stulist.NationalityNo;
  630. upTrua.Province = stulist.F_ProvinceId;
  631. upTrua.City = stulist.F_CityId;
  632. upTrua.County = stulist.F_CountyId;
  633. upTrua.Mobile = stulist.mobile;
  634. upTrua.Remark = stulist.Remark;
  635. upTrua.ResidencePlace = stulist.FatherUnit;
  636. upTrua.LocationFile = stulist.MatherUnit;
  637. upTrua.MailAddress = stulist.MailAddress;
  638. }
  639. #region 学籍操作
  640. if (upTrua.StuStatus == 0) //如果保留学籍,basic不动;否则删除学籍basic,备份到basictran;
  641. {
  642. //删除学籍
  643. db.Delete<StuInfoBasicEntity>(x => x.StuId == upTrua.StuId);
  644. }
  645. #endregion
  646. #region 删除用户表
  647. //是注销账号,账号禁用
  648. if (upTrua.F_WriteMark == 1)
  649. {
  650. db1.ExecuteBySql(" update LR_Base_User set F_EnabledMark=0 where F_EnCode='" + upTrua.StuNo + "' and F_Account ='" + upTrua.StuNo + "'and F_RealName='" + upTrua.StuName + "' and F_IdentityCardNo ='" + upTrua.IdentityCardNo + "' ");
  651. }
  652. #endregion
  653. }
  654. break;
  655. case "03": //复学
  656. case "16": //恢复学籍
  657. //学籍异动列表
  658. if (upTrua.IsReturnSchool == "0")
  659. {
  660. upTrua.IsReturnSchool = "1";
  661. //修改记录为已审核
  662. upTrua.F_EnabledMark = 1;
  663. upTrua.CheckTime = DateTime.Now;
  664. upTrua.CheckUserId = userInfo.userId;
  665. //修改关联休学记录的 IsReturnSchool = 1
  666. db.ExecuteBySql(" update StuTransferInfo set IsReturnSchool = 1 where ID = '" + upTrua.ReturnSchoolId + "'");
  667. //1.basic找,有就改;2.basictran复制并改;
  668. if (stulist == null)
  669. {
  670. #region 重新生成学籍
  671. //复学的学籍
  672. var ReturnStu = db.FindEntity<StuInfoBasicTranEntity>(x => x.StuId == upTrua.StuId);
  673. addTruan.StuId = ReturnStu.StuId;
  674. addTruan.StuNo = ReturnStu.StuNo;
  675. addTruan.StuCode = ReturnStu.StuCode;
  676. addTruan.NoticeNo = ReturnStu.NoticeNo;
  677. addTruan.GraduateYear = ReturnStu.GraduateYear;
  678. addTruan.ksh = ReturnStu.ksh;
  679. addTruan.DeptNo = upTrua.NewDeptNo;
  680. addTruan.MajorNo = upTrua.NewMajorNo;
  681. addTruan.MajorDetailNo = ReturnStu.MajorDetailNo;
  682. addTruan.MajorDetailName = ReturnStu.MajorDetailName;
  683. addTruan.Grade = upTrua.NewGrade;
  684. addTruan.ClassNo = upTrua.NewClassNo;
  685. addTruan.StuName = ReturnStu.StuName;
  686. addTruan.SpellFull = ReturnStu.SpellFull;
  687. addTruan.SpellBrief = ReturnStu.SpellBrief;
  688. addTruan.GenderNo = ReturnStu.GenderNo;
  689. addTruan.Birthday = ReturnStu.Birthday;
  690. addTruan.PartyFaceNo = ReturnStu.PartyFaceNo;
  691. addTruan.FamilyOriginNo = ReturnStu.FamilyOriginNo;
  692. addTruan.NationalityNo = ReturnStu.NationalityNo;
  693. addTruan.ProvinceNo = ReturnStu.ProvinceNo;
  694. addTruan.RegionNo = ReturnStu.RegionNo;
  695. addTruan.ResidenceNo = ReturnStu.ResidenceNo;
  696. addTruan.TestStuSortNo = ReturnStu.TestStuSortNo;
  697. addTruan.HealthStatusNo = ReturnStu.HealthStatusNo;
  698. addTruan.WillNo = ReturnStu.WillNo;
  699. addTruan.TestStuSubjectNo = ReturnStu.TestStuSubjectNo;
  700. addTruan.GraduateNo = ReturnStu.GraduateNo;
  701. addTruan.PlanFormNo = ReturnStu.PlanFormNo;
  702. addTruan.IsThreeGood = ReturnStu.IsThreeGood;
  703. addTruan.IsExcellent = ReturnStu.IsExcellent;
  704. addTruan.IsNormalCadre = ReturnStu.IsNormalCadre;
  705. addTruan.IsProvinceFirstThree = ReturnStu.IsProvinceFirstThree;
  706. addTruan.OverseasChineseNo = ReturnStu.OverseasChineseNo;
  707. addTruan.MatriculateSort = ReturnStu.MatriculateSort;
  708. addTruan.ComeProvinceNo = ReturnStu.ComeProvinceNo;
  709. addTruan.HighSchoolNo = ReturnStu.HighSchoolNo;
  710. addTruan.HighSchoolName = ReturnStu.HighSchoolName;
  711. addTruan.EntranceDate = ReturnStu.EntranceDate;
  712. addTruan.Religion = ReturnStu.Religion;
  713. addTruan.GoodAt = ReturnStu.GoodAt;
  714. addTruan.IdentityCardNo = ReturnStu.IdentityCardNo;
  715. addTruan.JoinPartyDate = ReturnStu.JoinPartyDate;
  716. addTruan.JoinLeagueDate = ReturnStu.JoinLeagueDate;
  717. addTruan.InSchoolAddress = ReturnStu.InSchoolAddress;
  718. addTruan.InSchoolTelephone = ReturnStu.InSchoolTelephone;
  719. addTruan.AbmormityMoveMark = ReturnStu.AbmormityMoveMark;
  720. addTruan.AwardMark = ReturnStu.AwardMark;
  721. addTruan.PunishMark = ReturnStu.PunishMark;
  722. addTruan.LinkmanMark = ReturnStu.LinkmanMark;
  723. addTruan.StuNoChangeMark = ReturnStu.StuNoChangeMark;
  724. addTruan.FinishSchoolMark = ReturnStu.FinishSchoolMark;
  725. addTruan.CurrentRegisterMark = ReturnStu.CurrentRegisterMark;
  726. addTruan.FinishSchoolDate = ReturnStu.FinishSchoolDate;
  727. addTruan.DiplomaNo = ReturnStu.DiplomaNo;
  728. addTruan.DiplomaRemark = ReturnStu.DiplomaRemark;
  729. addTruan.Remark = ReturnStu.Remark;
  730. addTruan.RegisterDate = ReturnStu.RegisterDate;
  731. addTruan.Photo = ReturnStu.Photo;
  732. addTruan.TeachPlanNo = ReturnStu.TeachPlanNo;
  733. addTruan.mobile = ReturnStu.mobile;
  734. addTruan.EMail = ReturnStu.EMail;
  735. addTruan.QQ = ReturnStu.QQ;
  736. addTruan.FatherUnit = ReturnStu.FatherUnit;
  737. addTruan.FatherName = ReturnStu.FatherName;
  738. addTruan.FatherPhone = ReturnStu.FatherPhone;
  739. addTruan.MatherName = ReturnStu.MatherName;
  740. addTruan.MatherUnit = ReturnStu.MatherUnit;
  741. addTruan.MatherPhone = ReturnStu.MatherPhone;
  742. addTruan.username = ReturnStu.username;
  743. addTruan.password = ReturnStu.password;
  744. addTruan.MailAddress = ReturnStu.MailAddress;
  745. addTruan.PostalCode = ReturnStu.PostalCode;
  746. addTruan.InSchoolStatus = ReturnStu.InSchoolStatus;
  747. addTruan.TransMark = ReturnStu.TransMark;
  748. addTruan.ClassTutorNo = ReturnStu.ClassTutorNo;
  749. addTruan.ResumeCheck = ReturnStu.ResumeCheck;
  750. addTruan.PracStatus = ReturnStu.PracStatus;
  751. addTruan.RegisterStatus = ReturnStu.RegisterStatus;
  752. addTruan.PunishmentDate = ReturnStu.PunishmentDate;
  753. addTruan.F_CityId = ReturnStu.F_CityId;
  754. addTruan.F_CountyId = ReturnStu.F_CountyId;
  755. addTruan.F_ProvinceId = ReturnStu.F_ProvinceId;
  756. addTruan.F_SchoolId = ReturnStu.F_SchoolId;
  757. addTruan.EduSystem = ReturnStu.EduSystem;
  758. addTruan.StudyModality = ReturnStu.StudyModality;
  759. addTruan.SyncFlag = ReturnStu.SyncFlag;
  760. addTruan.ChangeStatus = ReturnStu.ChangeStatus;
  761. addTruan.Balance = ReturnStu.Balance;
  762. addTruan.HealthStatus = ReturnStu.HealthStatus;
  763. addTruan.IdCardType = ReturnStu.IdCardType;
  764. addTruan.EntranceWay = ReturnStu.EntranceWay;
  765. addTruan.StudyingWay = ReturnStu.StudyingWay;
  766. addTruan.CountryNo = ReturnStu.CountryNo;
  767. addTruan.MarriageStatus = ReturnStu.MarriageStatus;
  768. addTruan.TrainInterval = ReturnStu.TrainInterval;
  769. addTruan.IsTrailChildren = ReturnStu.IsTrailChildren;
  770. addTruan.StuPlaceCode = ReturnStu.StuPlaceCode;
  771. addTruan.BirthPlaceCode = ReturnStu.BirthPlaceCode;
  772. addTruan.NativePlaceCode = ReturnStu.NativePlaceCode;
  773. addTruan.ResidencePlaceCode = ReturnStu.ResidencePlaceCode;
  774. addTruan.BelongPolice = ReturnStu.BelongPolice;
  775. addTruan.StuLivePlaceType = ReturnStu.StuLivePlaceType;
  776. addTruan.StuOrigin = ReturnStu.StuOrigin;
  777. addTruan.RecruitObject = ReturnStu.RecruitObject;
  778. addTruan.PoorIsRecord = ReturnStu.PoorIsRecord;
  779. addTruan.RecruitWay = ReturnStu.RecruitWay;
  780. addTruan.RecruitCooperateType = ReturnStu.RecruitCooperateType;
  781. addTruan.AdmissionNo = ReturnStu.AdmissionNo;
  782. addTruan.ExamScore = ReturnStu.ExamScore;
  783. addTruan.RecruitCooperateForm = ReturnStu.RecruitCooperateForm;
  784. addTruan.RecruitCooperateSchoolNo = ReturnStu.RecruitCooperateSchoolNo;
  785. addTruan.SchoolOutsidePlace = ReturnStu.SchoolOutsidePlace;
  786. addTruan.PieceCultivateWay = ReturnStu.PieceCultivateWay;
  787. addTruan.EnglishName = ReturnStu.EnglishName;
  788. addTruan.OneMembership = ReturnStu.OneMembership;
  789. addTruan.OneIsGuardian = ReturnStu.OneIsGuardian;
  790. addTruan.OneBirthday = ReturnStu.OneBirthday;
  791. addTruan.OneIdCardType = ReturnStu.OneIdCardType;
  792. addTruan.OneIdCardNo = ReturnStu.OneIdCardNo;
  793. addTruan.OneNationalityNo = ReturnStu.OneNationalityNo;
  794. addTruan.OnePartyFaceNo = ReturnStu.OnePartyFaceNo;
  795. addTruan.OneHealthStatus = ReturnStu.OneHealthStatus;
  796. addTruan.OneJob = ReturnStu.OneJob;
  797. addTruan.OnePosition = ReturnStu.OnePosition;
  798. addTruan.TwoMembership = ReturnStu.TwoMembership;
  799. addTruan.TwoIsGuardian = ReturnStu.TwoIsGuardian;
  800. addTruan.TwoBirthday = ReturnStu.TwoBirthday;
  801. addTruan.TwoIdCardType = ReturnStu.TwoIdCardType;
  802. addTruan.TwoIdCardNo = ReturnStu.TwoIdCardNo;
  803. addTruan.TwoNationalityNo = ReturnStu.TwoNationalityNo;
  804. addTruan.TwoPartyFaceNo = ReturnStu.TwoPartyFaceNo;
  805. addTruan.TwoHealthStatus = ReturnStu.TwoHealthStatus;
  806. addTruan.TwoJob = ReturnStu.TwoJob;
  807. addTruan.TwoPosition = ReturnStu.TwoPosition;
  808. addTruan.ProvinceCode = ReturnStu.ProvinceCode;
  809. addTruan.Guardian = ReturnStu.Guardian;
  810. addTruan.GuardianPhone = ReturnStu.GuardianPhone;
  811. addTruan.GuardianType = ReturnStu.GuardianType;
  812. addTruan.IsSingle = ReturnStu.IsSingle;
  813. addTruan.IsLeft = ReturnStu.IsLeft;
  814. addTruan.IsDisability = ReturnStu.IsDisability;
  815. addTruan.IsRunSchool = ReturnStu.IsRunSchool;
  816. addTruan.IsDdifficulty = ReturnStu.IsDdifficulty;
  817. addTruan.FiveYear = ReturnStu.FiveYear;
  818. addTruan.InternshipStatus = ReturnStu.InternshipStatus;
  819. addTruan.IsRestudy = ReturnStu.IsRestudy;
  820. addTruan.MajorDetailSpell = ReturnStu.MajorDetailSpell;
  821. addTruan.OneName = ReturnStu.OneName;
  822. addTruan.TwoName = ReturnStu.TwoName;
  823. addTruan.OtherContact = ReturnStu.OtherContact;
  824. addTruan.OneMobile = ReturnStu.OneMobile;
  825. addTruan.TwoMobile = ReturnStu.TwoMobile;
  826. addTruan.ReturnBooksStatus = ReturnStu.ReturnBooksStatus;
  827. addTruan.ReturnBooksDate = ReturnStu.ReturnBooksDate;
  828. addTruan.EmployAgreeStatus = ReturnStu.EmployAgreeStatus;
  829. addTruan.EmployAgreeDate = ReturnStu.EmployAgreeDate;
  830. addTruan.FeeSettleStatus = ReturnStu.FeeSettleStatus;
  831. addTruan.FeeSettleDate = ReturnStu.FeeSettleDate;
  832. addTruan.CheckOutStatus = ReturnStu.CheckOutStatus;
  833. addTruan.CheckOutDate = ReturnStu.CheckOutDate;
  834. addTruan.CardDeregistrateStatus = ReturnStu.CardDeregistrateStatus;
  835. addTruan.CardDeregistrateDate = ReturnStu.CardDeregistrateDate;
  836. addTruan.DiplomaReceiveStatus = ReturnStu.DiplomaReceiveStatus;
  837. addTruan.DiplomaReceiveDate = ReturnStu.DiplomaReceiveDate;
  838. addTruan.FileTransferStatus = ReturnStu.FileTransferStatus;
  839. addTruan.FileTransferDate = ReturnStu.FileTransferDate;
  840. addTruan.TissueStatus = ReturnStu.TissueStatus;
  841. addTruan.TissueDate = ReturnStu.TissueDate;
  842. addTruan.DiplomaReceiveSign = ReturnStu.DiplomaReceiveSign;
  843. addTruan.DiplomaReceiveIdcard = ReturnStu.DiplomaReceiveIdcard;
  844. addTruan.DiplomaReceiveRemark = ReturnStu.DiplomaReceiveRemark;
  845. addTruan.CheckMark = "0";
  846. db.Insert(addTruan);
  847. #endregion
  848. }
  849. else
  850. {
  851. stulist.DeptNo = upTrua.NewDeptNo;
  852. stulist.MajorNo = upTrua.NewMajorNo;
  853. stulist.ClassNo = upTrua.NewClassNo;
  854. stulist.Grade = upTrua.NewGrade;
  855. db.Update(stulist);
  856. }
  857. if (upTrua.RecoverWriteMark == "1") //恢复账号
  858. {
  859. #region 用户表
  860. db1.ExecuteBySql(" update LR_Base_User set F_EnabledMark= 1 where F_EnCode='" + upTrua.StuNo + "' and F_Account ='" + upTrua.StuNo + "'and F_RealName='" + upTrua.StuName + "' and F_IdentityCardNo ='" + upTrua.IdentityCardNo + "' ");
  861. #endregion
  862. }
  863. }
  864. #region 课表(StuSelectLessonList,旧-写入新班级课表数据;)
  865. //db.Insert(CreateInsertStuSelectLessonList(upTrua, stulist));
  866. // wx修改 2023-3-21 课表空数据报错 ,查找同班同学 如果不为空继续执行
  867. if (CreateInsertStuSelectLessonList(upTrua, stulist) != null)
  868. {
  869. db.Insert(CreateInsertStuSelectLessonList(upTrua, stulist));
  870. }
  871. #endregion
  872. break;
  873. case "04": //转入
  874. #region 学籍表加数据
  875. var stuInfoBasicEntity = new StuInfoBasicEntity();
  876. stuInfoBasicEntity.StuId = upTrua.StuId;
  877. stuInfoBasicEntity.StuNo = upTrua.StuNo;
  878. stuInfoBasicEntity.ProvinceCode = upTrua.StuNo;
  879. stuInfoBasicEntity.StuName = upTrua.StuName;
  880. stuInfoBasicEntity.DeptNo = upTrua.NewDeptNo;
  881. stuInfoBasicEntity.MajorNo = upTrua.NewMajorNo;
  882. stuInfoBasicEntity.Grade = upTrua.NewGrade;
  883. stuInfoBasicEntity.ClassNo = upTrua.NewClassNo;
  884. stuInfoBasicEntity.EduSystem = upTrua.NewEduSystem;
  885. stuInfoBasicEntity.GenderNo = upTrua.Gender;
  886. stuInfoBasicEntity.Birthday = upTrua.Birthday;
  887. stuInfoBasicEntity.NationalityNo = upTrua.NationalityNo;
  888. stuInfoBasicEntity.RegionNo = upTrua.RegionNo;
  889. stuInfoBasicEntity.EntranceDate = upTrua.LeaveDate;
  890. stuInfoBasicEntity.IdentityCardNo = upTrua.IdentityCardNo;
  891. stuInfoBasicEntity.mobile = upTrua.Mobile;
  892. stuInfoBasicEntity.FatherUnit = upTrua.ResidencePlace;
  893. stuInfoBasicEntity.MailAddress = upTrua.MailAddress;
  894. stuInfoBasicEntity.F_SchoolId = this.BaseRepository().FindEntity<CompanyEntity>(x => x.F_DeleteMark == 0 && x.F_EnabledMark == 1)?.F_CompanyId;
  895. stuInfoBasicEntity.IdCardType = upTrua.IdCardType;
  896. stuInfoBasicEntity.Guardian = upTrua.Guardian;
  897. stuInfoBasicEntity.GuardianPhone = upTrua.GuardianMobile;
  898. db.Insert(stuInfoBasicEntity);
  899. #endregion
  900. #region 课表(StuSelectLessonList,旧-写入新班级课表数据;)
  901. //db.Insert(CreateInsertStuSelectLessonList(upTrua, stulist));
  902. // wx修改 2023-3-21 课表空数据报错 ,查找同班同学 如果不为空继续执行
  903. if (CreateInsertStuSelectLessonList(upTrua, stulist) != null)
  904. {
  905. db.Insert(CreateInsertStuSelectLessonList(upTrua, stulist));
  906. }
  907. #endregion
  908. break;
  909. default:
  910. break;
  911. }
  912. #region 学籍查看异动信息
  913. var sql = @"if (select count(*) from StuInfoBasic where StuId='" + upTrua.StuId + "')>0 select * from StuInfoBasic where StuId='" + upTrua.StuId + "' else if (select count(*) from StuInfoBasicTran where StuId='" + upTrua.StuId + "' )>0 select * from StuInfoBasicTran where StuId= '" + upTrua.StuId + "'";
  914. var oldEntity = db.FindList<StuInfoBasicEntity>(sql).FirstOrDefault();
  915. List<StuInfoBasic_ChangeLogEntity> list = new List<StuInfoBasic_ChangeLogEntity>();
  916. //if (upTrua.AnomalousType == "03" || upTrua.AnomalousType == "16")//复学
  917. //{
  918. // //学籍异动日志表
  919. // var changeEntity = new StuInfoBasic_ChangeLogEntity
  920. // {
  921. // StuID = oldEntity.StuId,
  922. // BeforeChange = null,
  923. // AfterChange = null,
  924. // FieldName = "学籍表主键",
  925. // UpdateBy = LoginUserInfo.Get().userId,
  926. // UpdateTime = DateTime.Now,
  927. // StuChangeType = upTrua.AnomalousType,
  928. // StuChangeRemark = "学籍异动-学籍异动审核操作"
  929. // };
  930. // changeEntity.Create();
  931. // db.Insert(changeEntity);
  932. //}
  933. if (upTrua.AnomalousType != "04" && upTrua.AnomalousType != "05" && upTrua.AnomalousType != "06" && upTrua.AnomalousType != "10" && upTrua.AnomalousType != "11" && upTrua.AnomalousType != "12" && upTrua.AnomalousType != "13" && upTrua.AnomalousType != "14")
  934. {
  935. var tableInfos = this.BaseRepository("CollegeMIS").FindTable(
  936. @"SELECT t.[name] AS 表名,c.[name] AS 字段名,cast(ep.[value]
  937. as varchar(100)) AS [字段说明]
  938. FROM sys.tables AS t
  939. INNER JOIN sys.columns
  940. AS c ON t.object_id = c.object_id
  941. LEFT JOIN sys.extended_properties AS ep
  942. ON ep.major_id = c.object_id AND ep.minor_id = c.column_id WHERE ep.class =1
  943. AND t.name='StuInfoBasicTran'");
  944. DataTable dt = tableInfos;
  945. if (dt.Rows.Count > 0)
  946. {
  947. if (stulist == null)
  948. {
  949. stulist = addTruan;
  950. }
  951. PropertyInfo[] properties = stulist.GetType().GetProperties();
  952. foreach (System.Reflection.PropertyInfo items in properties)
  953. {
  954. string name = items.Name;
  955. object oldValue = items.GetValue(oldEntity);
  956. object newValue = items.GetValue(stulist);
  957. if (oldValue == null || newValue == null)
  958. {
  959. continue;
  960. }
  961. if (!oldValue.Equals(newValue))
  962. {
  963. var columnName = "";
  964. foreach (DataRow rows in tableInfos.Rows)
  965. {
  966. if (rows["字段名"].ToString() == items.Name)
  967. {
  968. columnName = rows["字段说明"].ToString();
  969. }
  970. }
  971. var NewClassName = db.FindEntity<ClassInfoEntity>(x => x.ClassNo == upTrua.NewClassNo).ClassName;
  972. var HisClassName = db.FindEntity<ClassInfoEntity>(x => x.ClassNo == upTrua.ClassNo).ClassName;
  973. var NewDeptName = db.FindEntity<CdDeptEntity>(x => x.DeptNo == upTrua.NewDeptNo).DeptName;
  974. var HisDeptName = db.FindEntity<CdDeptEntity>(x => x.DeptNo == upTrua.DeptNo).DeptName;
  975. var NewMajorName = db.FindEntity<CdMajorEntity>(x => x.MajorNo == upTrua.NewMajorNo).MajorName;
  976. var HisMajorName = db.FindEntity<CdMajorEntity>(x => x.MajorNo == upTrua.MajorNo).MajorName;
  977. if (name == "ClassNo")
  978. {
  979. oldValue = HisClassName;
  980. newValue = NewClassName;
  981. }
  982. if (name == "DeptNo")
  983. {
  984. oldValue = HisDeptName;
  985. newValue = NewDeptName;
  986. }
  987. if (name == "MajorNo")
  988. {
  989. oldValue = HisMajorName;
  990. newValue = NewMajorName;
  991. }
  992. var changeEntity = new StuInfoBasic_ChangeLogEntity
  993. {
  994. StuID = oldEntity.StuId,
  995. BeforeChange = oldValue.ToString(),
  996. AfterChange = newValue.ToString(),
  997. FieldName = columnName,
  998. UpdateBy = LoginUserInfo.Get().userId,
  999. UpdateTime = DateTime.Now,
  1000. StuChangeType = upTrua.AnomalousType,
  1001. StuChangeRemark = "学籍异动-学籍异动审核操作"
  1002. };
  1003. changeEntity.Create();
  1004. list.Add(changeEntity);
  1005. }
  1006. }
  1007. }
  1008. tableInfos.Clear();
  1009. }
  1010. else if (upTrua.AnomalousType != "04")
  1011. {
  1012. //学籍异动日志表
  1013. var changeEntity = new StuInfoBasic_ChangeLogEntity
  1014. {
  1015. StuID = oldEntity.StuId,
  1016. BeforeChange = null,
  1017. AfterChange = null,
  1018. FieldName = "学籍表主键",
  1019. UpdateBy = LoginUserInfo.Get().userId,
  1020. UpdateTime = DateTime.Now,
  1021. StuChangeType = upTrua.AnomalousType,
  1022. StuChangeRemark = "学籍异动-学籍异动审核操作"
  1023. };
  1024. changeEntity.Create();
  1025. db.Insert(changeEntity);
  1026. }
  1027. if (list.Count > 0)
  1028. {
  1029. db.Insert(list);
  1030. }
  1031. #endregion
  1032. db.Update(upTrua); //休学学籍异动信息
  1033. }
  1034. db.Insert(InStuinTran); //学籍异动记录
  1035. db.Commit();
  1036. db1.Commit();
  1037. }
  1038. catch (Exception ex)
  1039. {
  1040. db.Rollback();
  1041. db1.Rollback();
  1042. if (ex is ExceptionEx)
  1043. {
  1044. throw;
  1045. }
  1046. else
  1047. {
  1048. throw ExceptionEx.ThrowServiceException(ex);
  1049. }
  1050. }
  1051. }
  1052. /// <summary>
  1053. /// 复制学生表
  1054. /// </summary>
  1055. /// <param name="upTrua"></param>
  1056. /// <param name="stulist"></param>
  1057. /// <param name="InsertStuTran"></param>
  1058. private static void copyStuInfoBasic(StuTransferInfoEntity upTrua, StuInfoBasicEntity stulist, StuInfoBasicTranEntity InsertStuTran)
  1059. {
  1060. InsertStuTran.StuId = stulist.StuId;
  1061. InsertStuTran.StuNo = stulist.StuNo;
  1062. InsertStuTran.StuCode = stulist.StuCode;
  1063. InsertStuTran.NoticeNo = stulist.NoticeNo;
  1064. InsertStuTran.GraduateYear = stulist.GraduateYear;
  1065. InsertStuTran.ksh = stulist.ksh;
  1066. InsertStuTran.DeptNo = stulist.DeptNo;
  1067. InsertStuTran.MajorNo = stulist.MajorNo;
  1068. InsertStuTran.MajorDetailNo = stulist.MajorDetailNo;
  1069. InsertStuTran.MajorDetailName = stulist.MajorDetailName;
  1070. InsertStuTran.Grade = stulist.Grade;
  1071. InsertStuTran.ClassNo = stulist.ClassNo;
  1072. InsertStuTran.StuName = stulist.StuName;
  1073. InsertStuTran.SpellFull = stulist.SpellFull;
  1074. InsertStuTran.SpellBrief = stulist.SpellBrief;
  1075. InsertStuTran.GenderNo = stulist.GenderNo;
  1076. InsertStuTran.Birthday = stulist.Birthday;
  1077. InsertStuTran.PartyFaceNo = stulist.PartyFaceNo;
  1078. InsertStuTran.FamilyOriginNo = stulist.FamilyOriginNo;
  1079. InsertStuTran.NationalityNo = stulist.NationalityNo;
  1080. InsertStuTran.ProvinceNo = stulist.ProvinceNo;
  1081. InsertStuTran.RegionNo = stulist.RegionNo;
  1082. InsertStuTran.ResidenceNo = stulist.ResidenceNo;
  1083. InsertStuTran.TestStuSortNo = stulist.TestStuSortNo;
  1084. InsertStuTran.HealthStatusNo = stulist.HealthStatusNo;
  1085. InsertStuTran.WillNo = stulist.WillNo;
  1086. InsertStuTran.TestStuSubjectNo = stulist.TestStuSubjectNo;
  1087. InsertStuTran.GraduateNo = stulist.GraduateNo;
  1088. InsertStuTran.PlanFormNo = stulist.PlanFormNo;
  1089. InsertStuTran.IsThreeGood = stulist.IsThreeGood;
  1090. InsertStuTran.IsExcellent = stulist.IsExcellent;
  1091. InsertStuTran.IsNormalCadre = stulist.IsNormalCadre;
  1092. InsertStuTran.IsProvinceFirstThree = stulist.IsProvinceFirstThree;
  1093. InsertStuTran.OverseasChineseNo = stulist.OverseasChineseNo;
  1094. InsertStuTran.MatriculateSort = stulist.MatriculateSort;
  1095. InsertStuTran.ComeProvinceNo = stulist.ComeProvinceNo;
  1096. InsertStuTran.HighSchoolNo = stulist.HighSchoolNo;
  1097. InsertStuTran.HighSchoolName = stulist.HighSchoolName;
  1098. InsertStuTran.EntranceDate = stulist.EntranceDate;
  1099. InsertStuTran.Religion = stulist.Religion;
  1100. InsertStuTran.GoodAt = stulist.GoodAt;
  1101. InsertStuTran.IdentityCardNo = stulist.IdentityCardNo;
  1102. InsertStuTran.JoinPartyDate = stulist.JoinPartyDate;
  1103. InsertStuTran.JoinLeagueDate = stulist.JoinLeagueDate;
  1104. InsertStuTran.InSchoolAddress = stulist.InSchoolAddress;
  1105. InsertStuTran.InSchoolTelephone = stulist.InSchoolTelephone;
  1106. InsertStuTran.AbmormityMoveMark = stulist.AbmormityMoveMark;
  1107. InsertStuTran.AwardMark = stulist.AwardMark;
  1108. InsertStuTran.PunishMark = stulist.PunishMark;
  1109. InsertStuTran.LinkmanMark = stulist.LinkmanMark;
  1110. InsertStuTran.StuNoChangeMark = stulist.StuNoChangeMark;
  1111. InsertStuTran.FinishSchoolMark = stulist.FinishSchoolMark;
  1112. InsertStuTran.CurrentRegisterMark = stulist.CurrentRegisterMark;
  1113. InsertStuTran.FinishSchoolDate = stulist.FinishSchoolDate;
  1114. InsertStuTran.DiplomaNo = stulist.DiplomaNo;
  1115. InsertStuTran.DiplomaRemark = stulist.DiplomaRemark;
  1116. InsertStuTran.Remark = stulist.Remark;
  1117. InsertStuTran.RegisterDate = stulist.RegisterDate;
  1118. InsertStuTran.Photo = stulist.Photo;
  1119. InsertStuTran.TeachPlanNo = stulist.TeachPlanNo;
  1120. InsertStuTran.CheckMark = stulist.CheckMark;
  1121. InsertStuTran.mobile = stulist.mobile;
  1122. InsertStuTran.EMail = stulist.EMail;
  1123. InsertStuTran.QQ = stulist.QQ;
  1124. InsertStuTran.FatherUnit = stulist.FatherUnit;
  1125. InsertStuTran.FatherName = stulist.FatherName;
  1126. InsertStuTran.FatherPhone = stulist.FatherPhone;
  1127. InsertStuTran.MatherName = stulist.MatherName;
  1128. InsertStuTran.MatherUnit = stulist.MatherUnit;
  1129. InsertStuTran.MatherPhone = stulist.MatherPhone;
  1130. InsertStuTran.username = stulist.username;
  1131. InsertStuTran.password = stulist.password;
  1132. InsertStuTran.MailAddress = stulist.MailAddress;
  1133. InsertStuTran.PostalCode = stulist.PostalCode;
  1134. InsertStuTran.InSchoolStatus = stulist.InSchoolStatus;
  1135. InsertStuTran.TransMark = stulist.TransMark;
  1136. InsertStuTran.ClassTutorNo = stulist.ClassTutorNo;
  1137. InsertStuTran.ResumeCheck = stulist.ResumeCheck;
  1138. InsertStuTran.PracStatus = stulist.PracStatus;
  1139. InsertStuTran.RegisterStatus = stulist.RegisterStatus;
  1140. InsertStuTran.PunishmentDate = stulist.PunishmentDate;
  1141. InsertStuTran.F_CityId = stulist.F_CityId;
  1142. InsertStuTran.F_CountyId = stulist.F_CountyId;
  1143. InsertStuTran.F_ProvinceId = stulist.F_ProvinceId;
  1144. InsertStuTran.F_SchoolId = stulist.F_SchoolId;
  1145. InsertStuTran.EduSystem = stulist.EduSystem;
  1146. InsertStuTran.StudyModality = stulist.StudyModality;
  1147. InsertStuTran.SyncFlag = stulist.SyncFlag;
  1148. InsertStuTran.ChangeStatus = stulist.ChangeStatus;
  1149. InsertStuTran.Balance = stulist.Balance;
  1150. InsertStuTran.HealthStatus = stulist.HealthStatus;
  1151. InsertStuTran.IdCardType = stulist.IdCardType;
  1152. InsertStuTran.EntranceWay = stulist.EntranceWay;
  1153. InsertStuTran.StudyingWay = stulist.StudyingWay;
  1154. InsertStuTran.CountryNo = stulist.CountryNo;
  1155. InsertStuTran.MarriageStatus = stulist.MarriageStatus;
  1156. InsertStuTran.TrainInterval = stulist.TrainInterval;
  1157. InsertStuTran.IsTrailChildren = stulist.IsTrailChildren;
  1158. InsertStuTran.StuPlaceCode = stulist.StuPlaceCode;
  1159. InsertStuTran.BirthPlaceCode = stulist.BirthPlaceCode;
  1160. InsertStuTran.NativePlaceCode = stulist.NativePlaceCode;
  1161. InsertStuTran.ResidencePlaceCode = stulist.ResidencePlaceCode;
  1162. InsertStuTran.BelongPolice = stulist.BelongPolice;
  1163. InsertStuTran.StuLivePlaceType = stulist.StuLivePlaceType;
  1164. InsertStuTran.StuOrigin = stulist.StuOrigin;
  1165. InsertStuTran.RecruitObject = stulist.RecruitObject;
  1166. InsertStuTran.PoorIsRecord = stulist.PoorIsRecord;
  1167. InsertStuTran.RecruitWay = stulist.RecruitWay;
  1168. InsertStuTran.RecruitCooperateType = stulist.RecruitCooperateType;
  1169. InsertStuTran.AdmissionNo = stulist.AdmissionNo;
  1170. InsertStuTran.ExamScore = stulist.ExamScore;
  1171. InsertStuTran.RecruitCooperateForm = stulist.RecruitCooperateForm;
  1172. InsertStuTran.RecruitCooperateSchoolNo = stulist.RecruitCooperateSchoolNo;
  1173. InsertStuTran.SchoolOutsidePlace = stulist.SchoolOutsidePlace;
  1174. InsertStuTran.PieceCultivateWay = stulist.PieceCultivateWay;
  1175. InsertStuTran.EnglishName = stulist.EnglishName;
  1176. InsertStuTran.OneMembership = stulist.OneMembership;
  1177. InsertStuTran.OneIsGuardian = stulist.OneIsGuardian;
  1178. InsertStuTran.OneBirthday = stulist.OneBirthday;
  1179. InsertStuTran.OneIdCardType = stulist.OneIdCardType;
  1180. InsertStuTran.OneIdCardNo = stulist.OneIdCardNo;
  1181. InsertStuTran.OneNationalityNo = stulist.OneNationalityNo;
  1182. InsertStuTran.OnePartyFaceNo = stulist.OnePartyFaceNo;
  1183. InsertStuTran.OneHealthStatus = stulist.OneHealthStatus;
  1184. InsertStuTran.OneJob = stulist.OneJob;
  1185. InsertStuTran.OnePosition = stulist.OnePosition;
  1186. InsertStuTran.TwoMembership = stulist.TwoMembership;
  1187. InsertStuTran.TwoIsGuardian = stulist.TwoIsGuardian;
  1188. InsertStuTran.TwoBirthday = stulist.TwoBirthday;
  1189. InsertStuTran.TwoIdCardType = stulist.TwoIdCardType;
  1190. InsertStuTran.TwoIdCardNo = stulist.TwoIdCardNo;
  1191. InsertStuTran.TwoNationalityNo = stulist.TwoNationalityNo;
  1192. InsertStuTran.TwoPartyFaceNo = stulist.TwoPartyFaceNo;
  1193. InsertStuTran.TwoHealthStatus = stulist.TwoHealthStatus;
  1194. InsertStuTran.TwoJob = stulist.TwoJob;
  1195. InsertStuTran.TwoPosition = stulist.TwoPosition;
  1196. InsertStuTran.ProvinceCode = stulist.ProvinceCode;
  1197. InsertStuTran.Guardian = stulist.Guardian;
  1198. InsertStuTran.GuardianPhone = stulist.GuardianPhone;
  1199. InsertStuTran.GuardianType = stulist.GuardianType;
  1200. InsertStuTran.IsSingle = stulist.IsSingle;
  1201. InsertStuTran.IsLeft = stulist.IsLeft;
  1202. InsertStuTran.IsDisability = stulist.IsDisability;
  1203. InsertStuTran.IsRunSchool = stulist.IsRunSchool;
  1204. InsertStuTran.IsDdifficulty = stulist.IsDdifficulty;
  1205. InsertStuTran.FiveYear = stulist.FiveYear;
  1206. InsertStuTran.InternshipStatus = stulist.InternshipStatus;
  1207. InsertStuTran.IsRestudy = stulist.IsRestudy;
  1208. InsertStuTran.MajorDetailSpell = stulist.MajorDetailSpell;
  1209. InsertStuTran.OneName = stulist.OneName;
  1210. InsertStuTran.TwoName = stulist.TwoName;
  1211. InsertStuTran.OtherContact = stulist.OtherContact;
  1212. InsertStuTran.OneMobile = stulist.OneMobile;
  1213. InsertStuTran.TwoMobile = stulist.TwoMobile;
  1214. InsertStuTran.ReturnBooksStatus = stulist.ReturnBooksStatus;
  1215. InsertStuTran.ReturnBooksDate = stulist.ReturnBooksDate;
  1216. InsertStuTran.EmployAgreeStatus = stulist.EmployAgreeStatus;
  1217. InsertStuTran.EmployAgreeDate = stulist.EmployAgreeDate;
  1218. InsertStuTran.FeeSettleStatus = stulist.FeeSettleStatus;
  1219. InsertStuTran.FeeSettleDate = stulist.FeeSettleDate;
  1220. InsertStuTran.CheckOutStatus = stulist.CheckOutStatus;
  1221. InsertStuTran.CheckOutDate = stulist.CheckOutDate;
  1222. InsertStuTran.CardDeregistrateStatus = stulist.CardDeregistrateStatus;
  1223. InsertStuTran.CardDeregistrateDate = stulist.CardDeregistrateDate;
  1224. InsertStuTran.DiplomaReceiveStatus = stulist.DiplomaReceiveStatus;
  1225. InsertStuTran.DiplomaReceiveDate = stulist.DiplomaReceiveDate;
  1226. InsertStuTran.FileTransferStatus = stulist.FileTransferStatus;
  1227. InsertStuTran.FileTransferDate = stulist.FileTransferDate;
  1228. InsertStuTran.TissueStatus = stulist.TissueStatus;
  1229. InsertStuTran.TissueDate = stulist.TissueDate;
  1230. InsertStuTran.DiplomaReceiveSign = stulist.DiplomaReceiveSign;
  1231. InsertStuTran.DiplomaReceiveIdcard = stulist.DiplomaReceiveIdcard;
  1232. InsertStuTran.DiplomaReceiveRemark = stulist.DiplomaReceiveRemark;
  1233. //异动状态;时间;原因
  1234. InsertStuTran.AnomalousType = upTrua.AnomalousType;
  1235. InsertStuTran.ChangeReason = upTrua.ChangeReason;
  1236. InsertStuTran.TranDateTime = DateTime.Now;
  1237. InsertStuTran.Create();
  1238. }
  1239. /// <summary>
  1240. /// 课表(StuSelectLessonList,旧-写入新班级课表数据;)
  1241. /// </summary>
  1242. /// <param name="upTrua"></param>
  1243. /// <param name="stulist"></param>
  1244. /// <returns></returns>
  1245. public List<StuSelectLessonListEntity> CreateInsertStuSelectLessonList(StuTransferInfoEntity upTrua, StuInfoBasicEntity stulist)
  1246. {
  1247. var nowYearSemester = Common.GetSemesterAndYear(DateTime.Now.ToString());
  1248. //查找一个同班同学作为参考
  1249. var referenceStuInfoBasic = this.BaseRepository("CollegeMIS").FindEntity<StuInfoBasicEntity>(x => x.CheckMark == "1" && x.DeptNo == upTrua.NewDeptNo && x.MajorNo == upTrua.NewMajorNo && x.ClassNo == upTrua.NewClassNo && x.Grade == upTrua.NewGrade);
  1250. //参考同学的课表:学年大;学年同且学期大于等于;。
  1251. if (referenceStuInfoBasic != null)
  1252. {
  1253. var referenceStuSelectLessonList = this.BaseRepository("CollegeMIS").FindList<StuSelectLessonListEntity>(x => x.StuNo == referenceStuInfoBasic.StuNo && x.StuName == referenceStuInfoBasic.StuName);
  1254. referenceStuSelectLessonList = referenceStuSelectLessonList.Where(x => x.AcademicYearNo.ToDecimal() > nowYearSemester.AcademicYearShort.ToDecimal() || (x.AcademicYearNo == nowYearSemester.AcademicYearShort && x.Semester.ToDecimal() >= nowYearSemester.Semester.ToDecimal()));
  1255. var insertStuSelectLessonList = new List<StuSelectLessonListEntity>();
  1256. foreach (var referenceEntity in referenceStuSelectLessonList)
  1257. {
  1258. var entity = new StuSelectLessonListEntity();
  1259. entity.NoticeBookNo = stulist.NoticeNo;
  1260. entity.StuNo = stulist.StuNo;
  1261. entity.DeptNo = referenceEntity.DeptNo;
  1262. entity.MajorNo = referenceEntity.MajorNo;
  1263. entity.ClassNo = referenceEntity.ClassNo;
  1264. entity.MajorDetailNo = referenceEntity.MajorDetailNo;
  1265. entity.MajorDetailName = referenceEntity.MajorDetailName;
  1266. entity.StuName = stulist.StuName;
  1267. entity.GenderNo = stulist.GenderNo == true ? "1" : "0";
  1268. entity.AcademicYearNo = referenceEntity.AcademicYearNo;
  1269. entity.Semester = referenceEntity.Semester;
  1270. entity.OpenLessonDeptNo = referenceEntity.OpenLessonDeptNo;
  1271. entity.OpenLessonMajorNo = referenceEntity.OpenLessonMajorNo;
  1272. entity.LessonNo = referenceEntity.LessonNo;
  1273. entity.LessonName = referenceEntity.LessonName;
  1274. entity.PartCode = referenceEntity.PartCode;
  1275. entity.LessonNameEng = referenceEntity.LessonNameEng;
  1276. entity.OrdinaryScoreScale = referenceEntity.OrdinaryScoreScale;
  1277. entity.TermInScoreScale = referenceEntity.TermInScoreScale;
  1278. entity.TermEndScoreScale = referenceEntity.TermEndScoreScale;
  1279. entity.OtherScoreScale = referenceEntity.OtherScoreScale;
  1280. entity.TeachClassNo = referenceEntity.TeachClassNo;
  1281. entity.LessonSortNo = referenceEntity.LessonSortNo;
  1282. entity.StuSortNo = referenceEntity.StuSortNo;
  1283. entity.Grade = referenceEntity.Grade;
  1284. entity.StudyScore = referenceEntity.StudyScore;
  1285. entity.TotalStudyHour = referenceEntity.TotalStudyHour;
  1286. entity.IsInEffect = referenceEntity.IsInEffect;
  1287. entity.Remark = referenceEntity.Remark;
  1288. entity.ConflictLessonNo = referenceEntity.ConflictLessonNo;
  1289. entity.EmpNo = referenceEntity.EmpNo;
  1290. entity.TeachPlanNo = referenceEntity.TeachPlanNo;
  1291. entity.IsPitchOn = referenceEntity.IsPitchOn;
  1292. entity.CheckMark = referenceEntity.CheckMark;
  1293. entity.InsertTime = DateTime.Now;
  1294. entity.F_SchoolId = referenceEntity.F_SchoolId;
  1295. insertStuSelectLessonList.Add(entity);
  1296. }
  1297. return insertStuSelectLessonList;
  1298. }
  1299. else
  1300. {
  1301. return null;
  1302. }
  1303. }
  1304. #endregion
  1305. }
  1306. }