|
|
@ -1099,6 +1099,8 @@ public class Ghre_StudyRecordServices : BaseServices<Ghre_StudyRecord, Ghre_Stud |
|
|
|
filter.pageSize = 10000; |
|
|
|
filter.pageSize = 10000; |
|
|
|
|
|
|
|
|
|
|
|
var staffId = App.User.StaffId; |
|
|
|
var staffId = App.User.StaffId; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var sql = @$"SELECT A.Id,
|
|
|
|
var sql = @$"SELECT A.Id,
|
|
|
|
A.StartTime CourseBeginDate, |
|
|
|
A.StartTime CourseBeginDate, |
|
|
|
A.EndTime CourseEndDate, |
|
|
|
A.EndTime CourseEndDate, |
|
|
@ -1106,7 +1108,7 @@ public class Ghre_StudyRecordServices : BaseServices<Ghre_StudyRecord, Ghre_Stud |
|
|
|
A.RegisterEndTime, |
|
|
|
A.RegisterEndTime, |
|
|
|
A.ExamStartTime ExamBeginDate, |
|
|
|
A.ExamStartTime ExamBeginDate, |
|
|
|
A.ExamEndTime ExamEndDate, |
|
|
|
A.ExamEndTime ExamEndDate, |
|
|
|
isnull (C.CourseName, D.SceneName) CourseName, |
|
|
|
A.OpenClassName CourseName, |
|
|
|
isnull (C.StandardHour, D.StandardHour) StandardHour, |
|
|
|
isnull (C.StandardHour, D.StandardHour) StandardHour, |
|
|
|
isnull |
|
|
|
isnull |
|
|
|
( |
|
|
|
( |
|
|
@ -1125,73 +1127,11 @@ FROM Ghre_OpenClass A |
|
|
|
LEFT JOIN Ghre_CourseScene D ON A.LinkId = D.Id |
|
|
|
LEFT JOIN Ghre_CourseScene D ON A.LinkId = D.Id |
|
|
|
LEFT JOIN Ghre_ExamRecord E ON A.ExamId = E.ExamId AND E.StaffId = '{staffId}' |
|
|
|
LEFT JOIN Ghre_ExamRecord E ON A.ExamId = E.ExamId AND E.StaffId = '{staffId}' |
|
|
|
LEFT JOIN Ghre_StudyRecord F ON A.Id = F.OpenClassId |
|
|
|
LEFT JOIN Ghre_StudyRecord F ON A.Id = F.OpenClassId |
|
|
|
WHERE A.Status !='Temporary' AND EXISTS ( |
|
|
|
WHERE A.Status !='Temporary' AND ( EXISTS |
|
|
|
SELECT 1 |
|
|
|
(SELECT 1 |
|
|
|
FROM Ghra_Staff A |
|
|
|
|
|
|
|
WHERE A.StaffID = '{staffId}' |
|
|
|
|
|
|
|
AND A.StaffID IN ( |
|
|
|
|
|
|
|
SELECT value |
|
|
|
|
|
|
|
FROM OPENJSON(B.StaffId) |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
AND A.StaffID NOT IN ( |
|
|
|
|
|
|
|
SELECT value |
|
|
|
|
|
|
|
FROM OPENJSON(B.ExclStaffId) |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
AND A.StaffType1 IN ( |
|
|
|
|
|
|
|
SELECT value |
|
|
|
|
|
|
|
FROM OPENJSON(B.StaffType1) |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
AND A.StaffType2 IN ( |
|
|
|
|
|
|
|
SELECT value |
|
|
|
|
|
|
|
FROM OPENJSON(B.StaffType2) |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
AND A.ZoneId IN ( |
|
|
|
|
|
|
|
SELECT value |
|
|
|
|
|
|
|
FROM OPENJSON(B.ZoneId) |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
AND A.ZoneId NOT IN ( |
|
|
|
|
|
|
|
SELECT value |
|
|
|
|
|
|
|
FROM OPENJSON(B.ExclZoneId) |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
AND A.DeptId IN ( |
|
|
|
|
|
|
|
SELECT value |
|
|
|
|
|
|
|
FROM OPENJSON(B.DeptId) |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
AND A.DeptId NOT IN ( |
|
|
|
|
|
|
|
SELECT value |
|
|
|
|
|
|
|
FROM OPENJSON(B.ExclDeptId) |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
AND A.TitleId IN ( |
|
|
|
|
|
|
|
SELECT value |
|
|
|
|
|
|
|
FROM OPENJSON(B.TitleId) |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
AND A.TitleId NOT IN ( |
|
|
|
|
|
|
|
SELECT value |
|
|
|
|
|
|
|
FROM OPENJSON(B.ExclTitleId) |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
AND A.GradeId IN ( |
|
|
|
|
|
|
|
SELECT value |
|
|
|
|
|
|
|
FROM OPENJSON(B.GradeId) |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
AND A.GradeId NOT IN ( |
|
|
|
|
|
|
|
SELECT value |
|
|
|
|
|
|
|
FROM OPENJSON(B.ExclGradeId) |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
AND A.JobId IN ( |
|
|
|
|
|
|
|
SELECT value |
|
|
|
|
|
|
|
FROM OPENJSON(B.JobId) |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
AND A.JobId NOT IN ( |
|
|
|
|
|
|
|
SELECT value |
|
|
|
|
|
|
|
FROM OPENJSON(B.ExclJobId) |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
OR EXISTS ( |
|
|
|
|
|
|
|
SELECT 1 |
|
|
|
|
|
|
|
FROM Ghre_OpenClassStaff C |
|
|
|
FROM Ghre_OpenClassStaff C |
|
|
|
WHERE C.OpenClassId = A.ID |
|
|
|
WHERE C.OpenClassId = A.ID AND c.StaffId = '{staffId}') |
|
|
|
AND c.StaffId = '{staffId}' |
|
|
|
OR dbo.[FE_CheckStaffGroup]({staffId},A.StaffGroupId)=1)";
|
|
|
|
)";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
string conditions = $""; |
|
|
|
string conditions = $""; |
|
|
|
|
|
|
|
|
|
|
@ -1303,7 +1243,7 @@ WHERE A.Status !='Temporary' AND EXISTS ( |
|
|
|
|
|
|
|
|
|
|
|
var openClassStaffs = await Db.Queryable<Ghre_OpenClassStaff>().Where(x => x.OpenClassId != null && ids.Contains(x.OpenClassId.Value) && x.StaffId == staffId).ToListAsync(); |
|
|
|
var openClassStaffs = await Db.Queryable<Ghre_OpenClassStaff>().Where(x => x.OpenClassId != null && ids.Contains(x.OpenClassId.Value) && x.StaffId == staffId).ToListAsync(); |
|
|
|
|
|
|
|
|
|
|
|
var dt = DateTime.Now.Date; |
|
|
|
var dt = DateTime.Now; |
|
|
|
entitys.ForEach(x => |
|
|
|
entitys.ForEach(x => |
|
|
|
{ |
|
|
|
{ |
|
|
|
|
|
|
|
|
|
|
@ -1311,11 +1251,25 @@ WHERE A.Status !='Temporary' AND EXISTS ( |
|
|
|
x.ShowExamBtn = false; |
|
|
|
x.ShowExamBtn = false; |
|
|
|
x.ShowRegisterBtn = false; |
|
|
|
x.ShowRegisterBtn = false; |
|
|
|
|
|
|
|
|
|
|
|
if (dt >= x.RegisterStartTime && dt <= x.RegisterEndTime && x.OpenClassStatus == "Publish" && !openClassStaffs.Any(o => o.OpenClassId == x.Id)) |
|
|
|
x.DisableExamBtn = true; |
|
|
|
|
|
|
|
x.DisableStudyBtn = true; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (x.OpenClassStatus == "Publish" && !openClassStaffs.Any(o => o.OpenClassId == x.Id)) |
|
|
|
|
|
|
|
{ |
|
|
|
x.ShowRegisterBtn = true; |
|
|
|
x.ShowRegisterBtn = true; |
|
|
|
|
|
|
|
x.DisableRegisterBtn = true; |
|
|
|
|
|
|
|
if (dt >= x.RegisterStartTime && dt <= x.RegisterEndTime) |
|
|
|
|
|
|
|
x.DisableRegisterBtn = false; |
|
|
|
|
|
|
|
|
|
|
|
if (dt >= x.CourseBeginDate && dt <= x.CourseEndDate && (x.OpenClassStatus == "Publish" || x.OpenClassStatus == "Opening") && openClassStaffs.Any(o => o.OpenClassId == x.Id)) |
|
|
|
}else if (openClassStaffs.Any(o => o.OpenClassId == x.Id)) |
|
|
|
|
|
|
|
{ |
|
|
|
x.ShowStudyBtn = true; |
|
|
|
x.ShowStudyBtn = true; |
|
|
|
|
|
|
|
x.ShowExamBtn = true; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (dt >= x.CourseBeginDate && dt <= x.CourseEndDate && (x.OpenClassStatus == "Publish" || x.OpenClassStatus == "Opening") && openClassStaffs.Any(o => o.OpenClassId == x.Id)) |
|
|
|
|
|
|
|
x.DisableStudyBtn = false; |
|
|
|
|
|
|
|
|
|
|
|
if (x.CourseBeginDate != null && x.CourseEndDate != null) |
|
|
|
if (x.CourseBeginDate != null && x.CourseEndDate != null) |
|
|
|
x.CourseDateString = DateTimeHelper.ConvertToDayString(x.CourseBeginDate) + "~" + DateTimeHelper.ConvertToDayString(x.CourseEndDate); |
|
|
|
x.CourseDateString = DateTimeHelper.ConvertToDayString(x.CourseBeginDate) + "~" + DateTimeHelper.ConvertToDayString(x.CourseEndDate); |
|
|
@ -1330,8 +1284,9 @@ WHERE A.Status !='Temporary' AND EXISTS ( |
|
|
|
//if (x.CourseBeginDate != null && x.CourseEndDate != null) |
|
|
|
//if (x.CourseBeginDate != null && x.CourseEndDate != null) |
|
|
|
// if (x.StudyProgress >= 100 || !(x.CourseBeginDate.Value.Date <= DateTime.Now.Date && x.CourseEndDate.Value.Date >= DateTime.Now.Date)) |
|
|
|
// if (x.StudyProgress >= 100 || !(x.CourseBeginDate.Value.Date <= DateTime.Now.Date && x.CourseEndDate.Value.Date >= DateTime.Now.Date)) |
|
|
|
// x.DisableStudyBtn = true; |
|
|
|
// x.DisableStudyBtn = true; |
|
|
|
if (!x.ExamId.IsNull()) |
|
|
|
if (!x.ExamId.IsNull() && x.ExamBeginDate != null && x.ExamEndDate != null && x.ExamBeginDate <= dt && x.ExamEndDate >= dt) |
|
|
|
x.ShowExamBtn = true; |
|
|
|
x.DisableExamBtn = false; |
|
|
|
|
|
|
|
|
|
|
|
if (x.StudyProgress < 100 || x.ExamId.IsNull()) |
|
|
|
if (x.StudyProgress < 100 || x.ExamId.IsNull()) |
|
|
|
x.DisableExamBtn = true; |
|
|
|
x.DisableExamBtn = true; |
|
|
|
if (x.FeedbackOrderId.IsNull()) |
|
|
|
if (x.FeedbackOrderId.IsNull()) |
|
|
|