|
|
@@ -270,99 +270,127 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration |
|
|
|
{ |
|
|
|
entity.Modify(keyValue); |
|
|
|
db.Update(entity); |
|
|
|
|
|
|
|
if (entity.CheckStatus.Trim() == "1" && entity.StartTime != null) |
|
|
|
{ |
|
|
|
//请假审核通过后,该学生的对应日期的课表改为请假 |
|
|
|
var model = this.BaseRepository("CollegeMIS").FindList<StuLeaveManagementEntity>( |
|
|
|
$"select * from StuLeaveManagement where Id='{keyValue}'").FirstOrDefault(); |
|
|
|
//请假开始时间和结束时间 |
|
|
|
var startTime = Convert.ToDateTime(model.StartTime?.ToString("yyyy-MM-dd") + " 00:00:00"); |
|
|
|
var endTime = Convert.ToDateTime(model.EndTime?.ToString("yyyy-MM-dd") + " 23:59:59"); |
|
|
|
|
|
|
|
//TODO:暂时隐藏!待测试!考勤表出现重复数据问题! |
|
|
|
// if (entity.CheckStatus.Trim() == "1" && entity.StartTime != null) |
|
|
|
// { |
|
|
|
// //请假审核通过后,该学生的对应日期的课表改为请假 |
|
|
|
// var model = db.FindList<StuLeaveManagementEntity>( |
|
|
|
// $"select * from StuLeaveManagement where Id='{keyValue}'").FirstOrDefault(); |
|
|
|
// //请假开始时间和结束时间 |
|
|
|
// var startTime = Convert.ToDateTime(model.StartTime?.ToString("yyyy-MM-dd") + " 00:00:00"); |
|
|
|
// var endTime = Convert.ToDateTime(model.EndTime?.ToString("yyyy-MM-dd") + " 23:59:59"); |
|
|
|
|
|
|
|
// //排课数据 |
|
|
|
// var arrangeLessonTermList = db.FindList<ArrangeLessonTermEntity>($@"select a.*,b.StuName,b.Grade,b.GenderNo from [dbo].[ArrangeLessonTerm] a |
|
|
|
//join stuinfobasic b on a.teachclassno=b.classno |
|
|
|
//where b.stuno='{model.CreateUserNo}' |
|
|
|
//and a.lessondate between '{startTime}' and '{endTime}'"); |
|
|
|
|
|
|
|
// var deptList = db.FindList<CdDeptEntity>(); |
|
|
|
// var majorList = db.FindList<CdMajorEntity>(); |
|
|
|
// var classInfoList = db.FindList<ClassInfoEntity>(); |
|
|
|
// var classRoomList = db.FindList<ClassroomInfoEntity>().ToList(); |
|
|
|
// var lessonSortList = db.FindList<CdLessonSortEntity>().ToList(); |
|
|
|
// foreach (var arrangeLessonTerm in arrangeLessonTermList) |
|
|
|
// { |
|
|
|
// StuAttendanceLeaveEntity stuAttendanceLeave = new StuAttendanceLeaveEntity(); |
|
|
|
// stuAttendanceLeave.Create(); |
|
|
|
// stuAttendanceLeave.AcademicYearNo = arrangeLessonTerm.AcademicYearNo; |
|
|
|
// stuAttendanceLeave.Semester = arrangeLessonTerm.Semester; |
|
|
|
// stuAttendanceLeave.StuNo = model.CreateUserNo; |
|
|
|
// stuAttendanceLeave.StuName = arrangeLessonTerm.StuName; |
|
|
|
// stuAttendanceLeave.Grade = arrangeLessonTerm.Grade; |
|
|
|
// stuAttendanceLeave.DeptNo = arrangeLessonTerm.DeptNo; |
|
|
|
// stuAttendanceLeave.DeptName = deptList.Where(x => x.DeptNo == arrangeLessonTerm.DeptNo) |
|
|
|
// .FirstOrDefault()?.DeptName; |
|
|
|
// stuAttendanceLeave.MajorNo = arrangeLessonTerm.MajorNo; |
|
|
|
// stuAttendanceLeave.MajorName = majorList.Where(x => x.MajorNo == arrangeLessonTerm.MajorNo) |
|
|
|
// .FirstOrDefault()?.MajorName; |
|
|
|
// stuAttendanceLeave.ClassNo = arrangeLessonTerm.TeachClassNo; |
|
|
|
// stuAttendanceLeave.ClassName = classInfoList |
|
|
|
// .Where(x => x.ClassNo == arrangeLessonTerm.TeachClassNo).FirstOrDefault()?.ClassName; |
|
|
|
// stuAttendanceLeave.LessonNo = arrangeLessonTerm.LessonNo; |
|
|
|
// stuAttendanceLeave.LessonName = arrangeLessonTerm.LessonName; |
|
|
|
// stuAttendanceLeave.TeachClassNo = arrangeLessonTerm.TeachClassNo; |
|
|
|
// stuAttendanceLeave.LessonSortNo = arrangeLessonTerm.LessonSortNo; |
|
|
|
// stuAttendanceLeave.LessonSortName = lessonSortList.Find(m => m.LessonSortNo == arrangeLessonTerm.LessonSortNo)?.LessonSortName; |
|
|
|
// stuAttendanceLeave.LessonDate = arrangeLessonTerm.LessonDate; |
|
|
|
// stuAttendanceLeave.LessonTime = arrangeLessonTerm.LessonTime; |
|
|
|
// stuAttendanceLeave.LeaveType = "1"; |
|
|
|
// stuAttendanceLeave.EmpNo = arrangeLessonTerm.EmpNo; |
|
|
|
// stuAttendanceLeave.ClassRoomNo = arrangeLessonTerm.ClassroomNo; |
|
|
|
// stuAttendanceLeave.UpdateDate = DateTime.Now; |
|
|
|
// stuAttendanceLeave.IsCheck = "1"; |
|
|
|
// stuAttendanceLeave.TecRemark = "按天请假"; |
|
|
|
|
|
|
|
// db.Insert(stuAttendanceLeave); |
|
|
|
//排课数据 |
|
|
|
var arrangeLessonTermList = db.FindList<ArrangeLessonTermEntity>($@"select a.*,b.StuName,b.Grade,b.GenderNo from [dbo].[ArrangeLessonTerm] a |
|
|
|
join stuinfobasic b on a.teachclassno=b.classno |
|
|
|
where b.stuno='{model.CreateUserNo}' |
|
|
|
and a.lessondate between '{startTime}' and '{endTime}'"); |
|
|
|
|
|
|
|
// //学生考勤 |
|
|
|
// StuAttendanceEntity stuAttendanceEntity = new StuAttendanceEntity(); |
|
|
|
// stuAttendanceEntity.AcademicYearNo = arrangeLessonTerm.AcademicYearNo; |
|
|
|
// stuAttendanceEntity.ClassName = classInfoList |
|
|
|
// .Where(x => x.ClassNo == arrangeLessonTerm.TeachClassNo).FirstOrDefault()?.ClassName; |
|
|
|
// stuAttendanceEntity.ClassNo = arrangeLessonTerm.TeachClassNo; |
|
|
|
// stuAttendanceEntity.DeptName = deptList.Where(x => x.DeptNo == arrangeLessonTerm.DeptNo) |
|
|
|
// .FirstOrDefault()?.DeptName; |
|
|
|
// stuAttendanceEntity.DeptNo = arrangeLessonTerm.DeptNo; |
|
|
|
// stuAttendanceEntity.EmpNo = arrangeLessonTerm.EmpNo; |
|
|
|
// stuAttendanceEntity.Grade = arrangeLessonTerm.Grade; |
|
|
|
// stuAttendanceEntity.InertDate = DateTime.Now; |
|
|
|
// stuAttendanceEntity.LessonDate = arrangeLessonTerm.LessonDate; |
|
|
|
// stuAttendanceEntity.LessonName = arrangeLessonTerm.LessonName; |
|
|
|
// stuAttendanceEntity.LessonNo = arrangeLessonTerm.LessonNo; |
|
|
|
// stuAttendanceEntity.LessonSortName = lessonSortList.Find(m => m.LessonSortNo == arrangeLessonTerm.LessonSortNo)?.LessonSortName; |
|
|
|
// stuAttendanceEntity.LessonSortNo = arrangeLessonTerm.LessonSortNo; |
|
|
|
// stuAttendanceEntity.LessonTime = arrangeLessonTerm.LessonTime; |
|
|
|
// stuAttendanceEntity.MajorName = majorList.Where(x => x.MajorNo == arrangeLessonTerm.MajorNo).FirstOrDefault()?.MajorName; |
|
|
|
// stuAttendanceEntity.MajorNo = arrangeLessonTerm.MajorNo; |
|
|
|
// stuAttendanceEntity.PlanWeek = null; |
|
|
|
// stuAttendanceEntity.Semester = arrangeLessonTerm.Semester; |
|
|
|
// stuAttendanceEntity.StuName = arrangeLessonTerm.StuName; |
|
|
|
// stuAttendanceEntity.StuNo = model.CreateUserNo; |
|
|
|
// stuAttendanceEntity.TeachClassNo = arrangeLessonTerm.TeachClassNo; |
|
|
|
// stuAttendanceEntity.Sort = "请假"; |
|
|
|
// stuAttendanceEntity.AttendOrNo = "否"; |
|
|
|
// stuAttendanceEntity.ClassRoomName = classRoomList.Find(x => x.ClassroomId.Trim() == arrangeLessonTerm.ClassroomNo.Trim())?.ClassroomName.Trim(); |
|
|
|
// stuAttendanceEntity.ClassRoomNo = arrangeLessonTerm.ClassroomNo; |
|
|
|
// stuAttendanceEntity.Gender = arrangeLessonTerm.GenderNo.Trim() == "0" ? "女" : "男"; |
|
|
|
// stuAttendanceEntity.CheckMarkDept = ""; |
|
|
|
// stuAttendanceEntity.CheckMark = ""; |
|
|
|
// stuAttendanceEntity.Create(); |
|
|
|
// db.Insert(stuAttendanceEntity); |
|
|
|
var deptList = this.BaseRepository("CollegeMIS").FindList<CdDeptEntity>(); |
|
|
|
var majorList = this.BaseRepository("CollegeMIS").FindList<CdMajorEntity>(); |
|
|
|
var classInfoList = this.BaseRepository("CollegeMIS").FindList<ClassInfoEntity>(); |
|
|
|
var classRoomList = this.BaseRepository("CollegeMIS").FindList<ClassroomInfoEntity>().ToList(); |
|
|
|
var lessonSortList = this.BaseRepository("CollegeMIS").FindList<CdLessonSortEntity>().ToList(); |
|
|
|
foreach (var arrangeLessonTerm in arrangeLessonTermList) |
|
|
|
{ |
|
|
|
StuAttendanceLeaveEntity stuAttendanceLeave = new StuAttendanceLeaveEntity(); |
|
|
|
stuAttendanceLeave.AcademicYearNo = arrangeLessonTerm.AcademicYearNo; |
|
|
|
stuAttendanceLeave.Semester = arrangeLessonTerm.Semester; |
|
|
|
stuAttendanceLeave.StuNo = model.CreateUserNo; |
|
|
|
stuAttendanceLeave.StuName = arrangeLessonTerm.StuName; |
|
|
|
stuAttendanceLeave.Grade = arrangeLessonTerm.Grade; |
|
|
|
stuAttendanceLeave.DeptNo = arrangeLessonTerm.DeptNo; |
|
|
|
stuAttendanceLeave.DeptName = deptList.Where(x => x.DeptNo == arrangeLessonTerm.DeptNo) |
|
|
|
.FirstOrDefault()?.DeptName; |
|
|
|
stuAttendanceLeave.MajorNo = arrangeLessonTerm.MajorNo; |
|
|
|
stuAttendanceLeave.MajorName = majorList.Where(x => x.MajorNo == arrangeLessonTerm.MajorNo) |
|
|
|
.FirstOrDefault()?.MajorName; |
|
|
|
stuAttendanceLeave.ClassNo = arrangeLessonTerm.TeachClassNo; |
|
|
|
stuAttendanceLeave.ClassName = classInfoList |
|
|
|
.Where(x => x.ClassNo == arrangeLessonTerm.TeachClassNo).FirstOrDefault()?.ClassName; |
|
|
|
stuAttendanceLeave.LessonNo = arrangeLessonTerm.LessonNo; |
|
|
|
stuAttendanceLeave.LessonName = arrangeLessonTerm.LessonName; |
|
|
|
stuAttendanceLeave.TeachClassNo = arrangeLessonTerm.TeachClassNo; |
|
|
|
stuAttendanceLeave.LessonSortNo = arrangeLessonTerm.LessonSortNo; |
|
|
|
stuAttendanceLeave.LessonSortName = lessonSortList.Find(m => m.LessonSortNo == arrangeLessonTerm.LessonSortNo)?.LessonSortName; |
|
|
|
stuAttendanceLeave.LessonDate = arrangeLessonTerm.LessonDate; |
|
|
|
stuAttendanceLeave.LessonTime = arrangeLessonTerm.LessonTime; |
|
|
|
stuAttendanceLeave.LeaveType = entity.LeaveType; |
|
|
|
stuAttendanceLeave.EmpNo = arrangeLessonTerm.EmpNo; |
|
|
|
stuAttendanceLeave.TecRemark = "按天请假"; |
|
|
|
stuAttendanceLeave.UpdateDate = DateTime.Now; |
|
|
|
stuAttendanceLeave.IsCheck = "1"; |
|
|
|
stuAttendanceLeave.ClassRoomNo = arrangeLessonTerm.ClassroomNo; |
|
|
|
stuAttendanceLeave.ClassRoomName = classRoomList.FirstOrDefault(x => x.ClassroomNo == arrangeLessonTerm.ClassroomNo)?.ClassroomName; |
|
|
|
//去重 |
|
|
|
var isExistModel = this.BaseRepository("CollegeMIS").FindEntity<StuAttendanceLeaveEntity>(x => |
|
|
|
x.AcademicYearNo == stuAttendanceLeave.AcademicYearNo && x.Semester == stuAttendanceLeave.Semester && |
|
|
|
x.StuNo == stuAttendanceLeave.StuNo &&x.LessonNo == stuAttendanceLeave.LessonNo && x.TeachClassNo == stuAttendanceLeave.TeachClassNo && |
|
|
|
x.LessonSortNo == stuAttendanceLeave.LessonSortNo &&x.LessonDate == stuAttendanceLeave.LessonDate && x.LessonTime == stuAttendanceLeave.LessonTime && |
|
|
|
x.EmpNo == stuAttendanceLeave.EmpNo &&x.ClassRoomNo == stuAttendanceLeave.ClassRoomNo |
|
|
|
); |
|
|
|
if (isExistModel!=null) |
|
|
|
{ |
|
|
|
stuAttendanceLeave.Modify(isExistModel.ID); |
|
|
|
db.Update(stuAttendanceLeave); |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
stuAttendanceLeave.Create(); |
|
|
|
db.Insert(stuAttendanceLeave); |
|
|
|
} |
|
|
|
|
|
|
|
//学生考勤 |
|
|
|
StuAttendanceEntity stuAttendanceEntity = new StuAttendanceEntity(); |
|
|
|
stuAttendanceEntity.AcademicYearNo = arrangeLessonTerm.AcademicYearNo; |
|
|
|
stuAttendanceEntity.Semester = arrangeLessonTerm.Semester; |
|
|
|
stuAttendanceEntity.StuNo = model.CreateUserNo; |
|
|
|
stuAttendanceLeave.StuName = arrangeLessonTerm.StuName; |
|
|
|
stuAttendanceEntity.Gender = arrangeLessonTerm.GenderNo=="0"?"女":"男"; |
|
|
|
stuAttendanceEntity.Grade = arrangeLessonTerm.Grade; |
|
|
|
stuAttendanceEntity.DeptNo = arrangeLessonTerm.DeptNo; |
|
|
|
stuAttendanceEntity.DeptName = deptList.Where(x => x.DeptNo == arrangeLessonTerm.DeptNo) |
|
|
|
.FirstOrDefault()?.DeptName; |
|
|
|
stuAttendanceEntity.MajorNo = arrangeLessonTerm.MajorNo; |
|
|
|
stuAttendanceEntity.MajorName = majorList.Where(x => x.MajorNo == arrangeLessonTerm.MajorNo).FirstOrDefault()?.MajorName; |
|
|
|
stuAttendanceEntity.ClassNo = arrangeLessonTerm.TeachClassNo; |
|
|
|
stuAttendanceEntity.ClassName = classInfoList |
|
|
|
.Where(x => x.ClassNo == arrangeLessonTerm.TeachClassNo).FirstOrDefault()?.ClassName; |
|
|
|
stuAttendanceEntity.LessonNo = arrangeLessonTerm.LessonNo; |
|
|
|
stuAttendanceEntity.LessonName = arrangeLessonTerm.LessonName; |
|
|
|
stuAttendanceEntity.TeachClassNo = arrangeLessonTerm.TeachClassNo; |
|
|
|
stuAttendanceEntity.LessonSortNo = arrangeLessonTerm.LessonSortNo; |
|
|
|
stuAttendanceEntity.LessonSortName = lessonSortList.Find(m => m.LessonSortNo == arrangeLessonTerm.LessonSortNo)?.LessonSortName; |
|
|
|
stuAttendanceEntity.LessonDate = arrangeLessonTerm.LessonDate; |
|
|
|
stuAttendanceEntity.PlanWeek = null; |
|
|
|
stuAttendanceEntity.LessonTime = arrangeLessonTerm.LessonTime; |
|
|
|
stuAttendanceEntity.AttendOrNo = "否"; |
|
|
|
stuAttendanceEntity.Sort = Convert.ToInt32(entity.LeaveType) == 2 ? "病假" : "事假"; |
|
|
|
stuAttendanceEntity.EmpNo = arrangeLessonTerm.EmpNo; |
|
|
|
stuAttendanceEntity.Remark = "按天请假"; |
|
|
|
stuAttendanceEntity.CheckMarkDept = ""; |
|
|
|
stuAttendanceEntity.CheckMark = ""; |
|
|
|
stuAttendanceEntity.InertDate = DateTime.Now; |
|
|
|
stuAttendanceEntity.ClassRoomNo = arrangeLessonTerm.ClassroomNo; |
|
|
|
stuAttendanceEntity.ClassRoomName = classRoomList.FirstOrDefault(x => x.ClassroomNo == arrangeLessonTerm.ClassroomNo)?.ClassroomName; |
|
|
|
//去重 |
|
|
|
var isExistModel2 = this.BaseRepository("CollegeMIS").FindEntity<StuAttendanceEntity>(x => |
|
|
|
x.AcademicYearNo == stuAttendanceEntity.AcademicYearNo && x.Semester == stuAttendanceEntity.Semester && x.StuNo == stuAttendanceEntity.StuNo && |
|
|
|
x.LessonNo == stuAttendanceEntity.LessonNo && x.TeachClassNo == stuAttendanceEntity.TeachClassNo && x.LessonSortNo == stuAttendanceEntity.LessonSortNo && |
|
|
|
x.LessonDate == stuAttendanceEntity.LessonDate && x.LessonTime == stuAttendanceEntity.LessonTime && x.EmpNo == stuAttendanceEntity.EmpNo && x.ClassRoomNo == stuAttendanceEntity.ClassRoomNo); |
|
|
|
if (isExistModel2 != null) |
|
|
|
{ |
|
|
|
stuAttendanceEntity.Modify(isExistModel2.ID); |
|
|
|
db.Update(stuAttendanceEntity); |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
stuAttendanceEntity.Create(); |
|
|
|
db.Insert(stuAttendanceEntity); |
|
|
|
} |
|
|
|
|
|
|
|
// } |
|
|
|
// } |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|