开班Ess页面开发

master
xiaochanghai 4 months ago
parent 508bb62898
commit f3cb3f52a5
  1. 18
      Model/Tiobon.Web.pdm
  2. 64
      Tiobon.Core.Model/ViewModels/Extend/Ghre_StudyRecordESS.cs
  3. 24
      Tiobon.Core.Services/Ghre/Ghre_StudyRecordServices.cs

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<?PowerDesigner AppLocale="UTF16" ID="{C294868A-C3F3-41AD-98CC-78B6D4E0CC40}" Label="" LastModificationDate="1740034219" Name="Tiobon" Objects="3191" Symbols="123" Target="Microsoft SQL Server 2008" Type="{CDE44E21-9669-11D1-9914-006097355D9B}" signature="PDM_DATA_MODEL_XML" version="15.0.0.2613"?>
<?PowerDesigner AppLocale="UTF16" ID="{C294868A-C3F3-41AD-98CC-78B6D4E0CC40}" Label="" LastModificationDate="1740034266" Name="Tiobon" Objects="3192" Symbols="123" Target="Microsoft SQL Server 2008" Type="{CDE44E21-9669-11D1-9914-006097355D9B}" signature="PDM_DATA_MODEL_XML" version="15.0.0.2613"?>
<!-- do not edit this file -->
<Model xmlns:a="attribute" xmlns:c="collection" xmlns:o="object">
@ -17692,7 +17692,7 @@ LABL 0 Arial Unicode MS,8,N</a:FontList>
<a:Code>Ghre_Exam</a:Code>
<a:CreationDate>1714109077</a:CreationDate>
<a:Creator>Administrator</a:Creator>
<a:ModificationDate>1740033609</a:ModificationDate>
<a:ModificationDate>1740034266</a:ModificationDate>
<a:Modifier>Administrator</a:Modifier>
<a:Comment>考试</a:Comment>
<c:Columns>
@ -18003,16 +18003,16 @@ LABL 0 Arial Unicode MS,8,N</a:FontList>
<a:DataType>bigint</a:DataType>
</o:Column>
<o:Column Id="o639">
<a:ObjectID>AF165E9F-C5AA-43AD-9682-D6952C7C0007</a:ObjectID>
<a:Name>否必须学习才能考试</a:Name>
<a:Code>AfterStudyExam</a:Code>
<a:CreationDate>1740033602</a:CreationDate>
<a:ObjectID>291BEB9F-9309-4444-9E5F-7C19E70FD9EC</a:ObjectID>
<a:Name>是否需要学习</a:Name>
<a:Code>IsRequireStudy</a:Code>
<a:CreationDate>1740034256</a:CreationDate>
<a:Creator>Administrator</a:Creator>
<a:ModificationDate>1740033802</a:ModificationDate>
<a:ModificationDate>1740034266</a:ModificationDate>
<a:Modifier>Administrator</a:Modifier>
<a:Comment>否必须学习才能考试</a:Comment>
<a:Comment>是否需要学习</a:Comment>
<a:DefaultValue>&#39;true&#39;</a:DefaultValue>
<a:DataType>bigint</a:DataType>
<a:DataType>bit</a:DataType>
</o:Column>
<o:Column Id="o640">
<a:ObjectID>9CD7E08F-5A36-48E1-B0CF-40F5EF1E1F9B</a:ObjectID>

@ -28,18 +28,82 @@ public class Ghre_StudyRecordESS
public DateTime? CourseBeginDate { get; set; }
public DateTime? CourseEndDate { get; set; }
public DateTime? ExamDate { get; set; }
/// <summary>
/// 开班状态
/// </summary>
public string OpenClassStatus { get; set; }
/// <summary>
/// 考试开始时间
/// </summary>
public DateTime? ExamBeginDate { get; set; }
/// <summary>
/// 报名开始时间
/// </summary>
public DateTime? RegisterStartTime { get; set; }
/// <summary>
/// 报名结束时间
/// </summary>
public DateTime? RegisterEndTime { get; set; }
/// <summary>
/// 考试结束时间
/// </summary>
public DateTime? ExamEndDate { get; set; }
/// <summary>
/// 是否显示学习按钮
/// </summary>
public bool? ShowStudyBtn { get; set; } = true;
/// <summary>
/// 是否禁用学习按钮
/// </summary>
public bool? DisableStudyBtn { get; set; } = false;
/// <summary>
/// 是否显示考试按钮
/// </summary>
public bool? ShowExamBtn { get; set; } = true;
/// <summary>
/// 是否禁用考试按钮
/// </summary>
public bool? DisableExamBtn { get; set; } = false;
/// <summary>
/// 是否显示反馈按钮
/// </summary>
public bool? ShowFeedbackBtn { get; set; } = true;
/// <summary>
/// 是否禁用反馈按钮
/// </summary>
public bool? DisableFeedbackBtn { get; set; } = true;
/// <summary>
/// 是否显示报名按钮
/// </summary>
public bool? ShowRegisterBtn { get; set; } = false;
/// <summary>
/// 是否禁用报名按钮
/// </summary>
public bool? DisableRegisterBtn { get; set; } = false;
/// <summary>
/// 学习进度
/// </summary>
public int? StudyProgress { get; set; } = 0;
public int? AfterHowLong { get; set; }
/// <summary>
/// 考试时间类型
/// </summary>
public string ExamDateType { get; set; }
public string CourseDateString { get; set; }

@ -1107,13 +1107,14 @@ public class Ghre_StudyRecordServices : BaseServices<Ghre_StudyRecord, Ghre_Stud
isnull (C.CreditPoints, D.CreditPoints) CreditPoints,
'ExamDate' ExamDateType,
A.ExamId,
E.Status ExamStatus, A.CreateTime PublishTime
E.Status ExamStatus,
A.Status OpenClassStatus, A.CreateTime PublishTime
FROM Ghre_OpenClass A
JOIN Ghre_StaffGroup B ON A.StaffGroupId = B.Id
LEFT JOIN Ghre_Course C ON A.LinkId = C.Id
LEFT JOIN Ghre_CourseScene D ON A.LinkId = D.Id
LEFT JOIN Ghre_Exam E ON A.ExamId = E.Id
WHERE EXISTS (
WHERE A.Status !='Temporary' AND EXISTS (
SELECT 1
FROM Ghra_Staff A
WHERE A.StaffID = '{staffId}'
@ -1181,7 +1182,7 @@ WHERE EXISTS (
AND c.StaffId = '{staffId}'
)";
string conditions = $"";
string conditions = $"";
if (!string.IsNullOrWhiteSpace(condition))
conditions += " AND " + condition;
@ -1275,7 +1276,7 @@ WHERE EXISTS (
}
}
sql += conditions;
sql += conditions;
var countSql = @$" SELECT COUNT(1) FROM ({sql}) A";
int total = await Db.Ado.GetIntAsync(countSql);
@ -1286,9 +1287,24 @@ WHERE EXISTS (
sql += " WHERE NUM <= " + filter.pageNum * filter.pageSize + " AND NUM >" + (filter.pageNum - 1) * filter.pageSize;
var entitys = await Db.Ado.SqlQueryAsync<Ghre_StudyRecordESS>(sql);
var ids = entitys.Select(x => x.Id).ToList();
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;
entitys.ForEach(x =>
{
x.ShowStudyBtn = false;
x.ShowExamBtn = false;
x.ShowRegisterBtn = false;
if (dt >= x.RegisterStartTime && dt <= x.RegisterEndTime && x.OpenClassStatus == "Publish" && !openClassStaffs.Any(o => o.OpenClassId == x.Id))
x.ShowStudyBtn = true;
if (x.CourseBeginDate != null && x.CourseEndDate != null)
x.CourseDateString = DateTimeHelper.ConvertToDayString(x.CourseBeginDate) + "~" + DateTimeHelper.ConvertToDayString(x.CourseEndDate);

Loading…
Cancel
Save