추가개발12/31_1

This commit is contained in:
김한진 2025-12-31 10:17:15 +09:00
parent 34f6ad8ff7
commit a35e524ee8
14 changed files with 327 additions and 51 deletions

View File

@ -6,7 +6,7 @@
esTsCnt = Model.ESTs.Count; esTsCnt = Model.ESTs.Count;
} }
if (Model.CMInnings != null) { if (Model.CMInnings.Count > 0) {
scdType = Convert.ToInt32(Model.CMInnings.FirstOrDefault().scdtype); scdType = Convert.ToInt32(Model.CMInnings.FirstOrDefault().scdtype);
} }
} }

View File

@ -461,6 +461,7 @@
,null time2 ,null time2
,null testsdate ,null testsdate
,null testedate ,null testedate
,0 intval11
from (select 1 col1) a from (select 1 col1) a
where a.col1=0 where a.col1=0
@ -476,13 +477,14 @@
,null time2 ,null time2
,null testsdate ,null testsdate
,null testedate ,null testedate
,0 intval11
from lect a from lect a
where a.lectno=#lectno# and a.userno=#userno# where a.lectno=#lectno# and a.userno=#userno#
<isNotNull property="exam"> <isNotNull property="exam">
union all union all
select b.extype dtype select b.extype dtype
,b.exname strval,b.exno intval10 ,b.exname strval,b.exno intval10
,case when a.sdate &lt; now() and a.edate &gt; now() then a.attrate else -1 end intval,b.econdition intval2 ,case when b.testsdate &lt; now() and b.testedate &gt; now() then a.attrate else -1 end intval,b.econdition intval2
,case when c.eend is null then 0 else 1 end intval3 ,case when c.eend is null then 0 else 1 end intval3
,a.attrate intval5 ,a.attrate intval5
,null intval4 ,null intval4
@ -493,11 +495,13 @@
,a.sdate time2 ,a.sdate time2
,b.testsdate ,b.testsdate
,b.testedate ,b.testedate
,b.cmisno intval11
from lect a from lect a
inner join cm a2 on a2.cmno=a.cmno inner join cm a2 on a2.cmno=a.cmno
inner join cmex b on b.cmno=a.cmno and b.isdel=0 inner join cmex b on b.cmno=a.cmno and b.isdel=0
left outer join lectex c on c.lectno=a.lectno and c.exno=b.exno left outer join lectex c on c.lectno=a.lectno and c.exno=b.exno
where a.lectno=#lectno# and a.userno=#userno# where a.lectno=#lectno# and a.userno=#userno#
and b.cmisno is null
</isNotNull> </isNotNull>
<isNotNull property="subject"> <isNotNull property="subject">
union all union all
@ -514,6 +518,7 @@
,a.sdate time2 ,a.sdate time2
,null testsdate ,null testsdate
,null testedate ,null testedate
,0 intval11
from lect a from lect a
inner join cm a2 on a2.cmno=a.cmno inner join cm a2 on a2.cmno=a.cmno
inner join cmsd b on b.cmno=a.cmno and b.sdtype=0 and b.isdel=0 inner join cmsd b on b.cmno=a.cmno and b.sdtype=0 and b.isdel=0
@ -535,6 +540,7 @@
,a.sdate time2 ,a.sdate time2
,null testsdate ,null testsdate
,null testedate ,null testedate
,0 intval11
from lect a from lect a
inner join cm a2 on a2.cmno=a.cmno inner join cm a2 on a2.cmno=a.cmno
inner join cmsd b on b.cmno=a.cmno and b.sdtype=1 and b.isdel=0 inner join cmsd b on b.cmno=a.cmno and b.sdtype=1 and b.isdel=0
@ -559,6 +565,9 @@
then 1 else 0 end ispass then 1 else 0 end ispass
,c.testsdate ,c.testsdate
,c.testedate ,c.testedate
,a.cdt lectcdt
,g.estart scdestart
,g.eend scdeend
from lect a from lect a
inner join cm b on b.cmno=a.cmno inner join cm b on b.cmno=a.cmno
inner join cmex c on c.exno=#exno# inner join cmex c on c.exno=#exno#
@ -575,6 +584,7 @@
left outer join lectex c2 on c2.exno = b2.exno and c2.lectno = a.lectno left outer join lectex c2 on c2.exno = b2.exno and c2.lectno = a.lectno
where a.lectno = #lectno# where a.lectno = #lectno#
) e on e.lectno = a.lectno ) e on e.lectno = a.lectno
LEFT OUTER JOIN cminningscd g ON g.cmisno = c.cmisno
where a.lectno=#lectno# and a.userno=#userno# where a.lectno=#lectno# and a.userno=#userno#
</select> </select>
<select id="cr.userexamdata.start" parameterClass="hashtable" resultClass="lectexq"> <select id="cr.userexamdata.start" parameterClass="hashtable" resultClass="lectexq">
@ -1964,5 +1974,120 @@
<isNotNull property="iscurlect" prepend="and">NOW() BETWEEN a.sdate AND a.edate</isNotNull> <isNotNull property="iscurlect" prepend="and">NOW() BETWEEN a.sdate AND a.edate</isNotNull>
</select> </select>
<select id="cr.myestimation.excnt" parameterClass="hashtable" resultClass="int">
select count(*)
from lect a
inner join cm a2 on a2.cmno = a.cmno
inner join cmex b on b.cmno = a.cmno and b.isdel = 0
left outer join lectex c on c.lectno = a.lectno and c.exno = b.exno
where a.lectno = #lectno# and a.userno = #userno#
and a.cmisno = b.cmisno
</select>
<!-- 시험응시/과제제출 리스트 -->
<select id="cr.myestimation.ex" parameterClass="hashtable" resultClass="data">
select a.*
from (
select 0 dtype
,null strval,0 intval10
,0 intval,0 intval2,0 intval3,0 intval4,0 intval5
,0 intval6
,0 intval7
,0 rno
,null time
,null time2
,null testsdate
,null testedate
,0 intval11
from (select 1 col1) a
where a.col1=0
union all
select -1 dtype
,null strval,0 intval10
,0 intval,0 intval2,0 intval3,0 intval4,a.attrate intval5
,0 intval6
,a.iscomplete intval7
,0 rno
,null time
,null time2
,null testsdate
,null testedate
,0 intval11
from lect a
where a.lectno=#lectno# and a.userno=#userno#
<isNotNull property="exam">
union all
select b.extype dtype
,b.exname strval,b.exno intval10
,case when b.testsdate &lt; now() and b.testedate &gt; now() then a.attrate else -1 end intval,b.econdition intval2
,case when c.eend is null then 0 else 1 end intval3
,a.attrate intval5
,null intval4
,a2.studytime intval6
,a.iscomplete intval7
,row_number() over (partition by b.extype order by b.extype, b.cdt) rno
,a.edate time
,a.sdate time2
,b.testsdate
,b.testedate
,b.cmisno intval11
from lect a
inner join cm a2 on a2.cmno=a.cmno
inner join cmex b on b.cmno=a.cmno and b.isdel=0
left outer join lectex c on c.lectno=a.lectno and c.exno=b.exno
where a.lectno=#lectno# and a.userno=#userno#
and a.cmisno = b.cmisno
</isNotNull>
<isNotNull property="subject">
union all
select 2 dtype
,b.sdname strval,b.sdno intval10
,case when a.sdate &lt; now() and a.edate &gt; now() then a.attrate else -1 end intval,b.sdcondition intval2
,case when c.submittime is null then 0 else 1 end intval3
,case when c.checktime is null then 0 else 1 end intval4
,a.attrate intval5
,a2.studytime intval6
,a.iscomplete intval7
,row_number() over (order by b.cdt) rno
,a.edate time
,a.sdate time2
,null testsdate
,null testedate
,0 intval11
from lect a
inner join cm a2 on a2.cmno=a.cmno
inner join cmsd b on b.cmno=a.cmno and b.sdtype=0 and b.isdel=0
left outer join lectsd c on c.lectno=a.lectno and c.sdno=b.sdno
where a.lectno=#lectno# and a.userno=#userno#
</isNotNull>
<isNotNull property="discuss">
union all
select 3 dtype
,b.sdname strval,b.sdno intval10
,case when a.sdate &lt; now() and a.edate &gt; now() then a.attrate else -1 end intval,b.sdcondition intval2
,case when count(d.bno) &gt; 0 then 1 else 0 end intval3
,case when c.checktime is null then 0 else 1 end intval4
,a.attrate intval5
,a2.studytime intval6
,a.iscomplete intval7
,row_number() over (order by b.cdt) rno
,a.edate time
,a.sdate time2
,null testsdate
,null testedate
,0 intval11
from lect a
inner join cm a2 on a2.cmno=a.cmno
inner join cmsd b on b.cmno=a.cmno and b.sdtype=1 and b.isdel=0
left outer join lectsd c on c.lectno=a.lectno and c.sdno=b.sdno
left outer join lectsdboard d on d.lectno=a.lectno and d.sdno=b.sdno and d.isdel=0
where a.lectno=#lectno# and a.userno=#userno#
group by b.sdname,b.sdno,a2.sstime,a2.setime,a.attrate,a.iscomplete,b.sdcondition,c.checktime,b.cdt
</isNotNull>
) a
order by a.dtype,a.rno
</select>
</statements> </statements>
</sqlMap> </sqlMap>

View File

@ -461,6 +461,7 @@
,null time2 ,null time2
,null testsdate ,null testsdate
,null testedate ,null testedate
,0 intval11
from (select 1 col1) a from (select 1 col1) a
where a.col1=0 where a.col1=0
@ -476,13 +477,14 @@
,null time2 ,null time2
,null testsdate ,null testsdate
,null testedate ,null testedate
,0 intval11
from lect a from lect a
where a.lectno=#lectno# and a.userno=#userno# where a.lectno=#lectno# and a.userno=#userno#
<isNotNull property="exam"> <isNotNull property="exam">
union all union all
select b.extype dtype select b.extype dtype
,b.exname strval,b.exno intval10 ,b.exname strval,b.exno intval10
,case when a.sdate &lt; now() and a.edate &gt; now() then a.attrate else -1 end intval,b.econdition intval2 ,case when b.testsdate &lt; now() and b.testedate &gt; now() then a.attrate else -1 end intval,b.econdition intval2
,case when c.eend is null then 0 else 1 end intval3 ,case when c.eend is null then 0 else 1 end intval3
,a.attrate intval5 ,a.attrate intval5
,null intval4 ,null intval4
@ -493,11 +495,13 @@
,a.sdate time2 ,a.sdate time2
,b.testsdate ,b.testsdate
,b.testedate ,b.testedate
,b.cmisno intval11
from lect a from lect a
inner join cm a2 on a2.cmno=a.cmno inner join cm a2 on a2.cmno=a.cmno
inner join cmex b on b.cmno=a.cmno and b.isdel=0 inner join cmex b on b.cmno=a.cmno and b.isdel=0
left outer join lectex c on c.lectno=a.lectno and c.exno=b.exno left outer join lectex c on c.lectno=a.lectno and c.exno=b.exno
where a.lectno=#lectno# and a.userno=#userno# where a.lectno=#lectno# and a.userno=#userno#
and b.cmisno is null
</isNotNull> </isNotNull>
<isNotNull property="subject"> <isNotNull property="subject">
union all union all
@ -514,6 +518,7 @@
,a.sdate time2 ,a.sdate time2
,null testsdate ,null testsdate
,null testedate ,null testedate
,0 intval11
from lect a from lect a
inner join cm a2 on a2.cmno=a.cmno inner join cm a2 on a2.cmno=a.cmno
inner join cmsd b on b.cmno=a.cmno and b.sdtype=0 and b.isdel=0 inner join cmsd b on b.cmno=a.cmno and b.sdtype=0 and b.isdel=0
@ -535,6 +540,7 @@
,a.sdate time2 ,a.sdate time2
,null testsdate ,null testsdate
,null testedate ,null testedate
,0 intval11
from lect a from lect a
inner join cm a2 on a2.cmno=a.cmno inner join cm a2 on a2.cmno=a.cmno
inner join cmsd b on b.cmno=a.cmno and b.sdtype=1 and b.isdel=0 inner join cmsd b on b.cmno=a.cmno and b.sdtype=1 and b.isdel=0
@ -559,6 +565,9 @@
then 1 else 0 end ispass then 1 else 0 end ispass
,c.testsdate ,c.testsdate
,c.testedate ,c.testedate
,a.cdt lectcdt
,g.estart scdestart
,g.eend scdeend
from lect a from lect a
inner join cm b on b.cmno=a.cmno inner join cm b on b.cmno=a.cmno
inner join cmex c on c.exno=#exno# inner join cmex c on c.exno=#exno#
@ -575,6 +584,7 @@
left outer join lectex c2 on c2.exno = b2.exno and c2.lectno = a.lectno left outer join lectex c2 on c2.exno = b2.exno and c2.lectno = a.lectno
where a.lectno = #lectno# where a.lectno = #lectno#
) e on e.lectno = a.lectno ) e on e.lectno = a.lectno
LEFT OUTER JOIN cminningscd g ON g.cmisno = c.cmisno
where a.lectno=#lectno# and a.userno=#userno# where a.lectno=#lectno# and a.userno=#userno#
</select> </select>
<select id="cr.userexamdata.start" parameterClass="hashtable" resultClass="lectexq"> <select id="cr.userexamdata.start" parameterClass="hashtable" resultClass="lectexq">
@ -1964,5 +1974,120 @@
<isNotNull property="iscurlect" prepend="and">NOW() BETWEEN a.sdate AND a.edate</isNotNull> <isNotNull property="iscurlect" prepend="and">NOW() BETWEEN a.sdate AND a.edate</isNotNull>
</select> </select>
<select id="cr.myestimation.excnt" parameterClass="hashtable" resultClass="int">
select count(*)
from lect a
inner join cm a2 on a2.cmno = a.cmno
inner join cmex b on b.cmno = a.cmno and b.isdel = 0
left outer join lectex c on c.lectno = a.lectno and c.exno = b.exno
where a.lectno = #lectno# and a.userno = #userno#
and a.cmisno = b.cmisno
</select>
<!-- 시험응시/과제제출 리스트 -->
<select id="cr.myestimation.ex" parameterClass="hashtable" resultClass="data">
select a.*
from (
select 0 dtype
,null strval,0 intval10
,0 intval,0 intval2,0 intval3,0 intval4,0 intval5
,0 intval6
,0 intval7
,0 rno
,null time
,null time2
,null testsdate
,null testedate
,0 intval11
from (select 1 col1) a
where a.col1=0
union all
select -1 dtype
,null strval,0 intval10
,0 intval,0 intval2,0 intval3,0 intval4,a.attrate intval5
,0 intval6
,a.iscomplete intval7
,0 rno
,null time
,null time2
,null testsdate
,null testedate
,0 intval11
from lect a
where a.lectno=#lectno# and a.userno=#userno#
<isNotNull property="exam">
union all
select b.extype dtype
,b.exname strval,b.exno intval10
,case when b.testsdate &lt; now() and b.testedate &gt; now() then a.attrate else -1 end intval,b.econdition intval2
,case when c.eend is null then 0 else 1 end intval3
,a.attrate intval5
,null intval4
,a2.studytime intval6
,a.iscomplete intval7
,row_number() over (partition by b.extype order by b.extype, b.cdt) rno
,a.edate time
,a.sdate time2
,b.testsdate
,b.testedate
,b.cmisno intval11
from lect a
inner join cm a2 on a2.cmno=a.cmno
inner join cmex b on b.cmno=a.cmno and b.isdel=0
left outer join lectex c on c.lectno=a.lectno and c.exno=b.exno
where a.lectno=#lectno# and a.userno=#userno#
and a.cmisno = b.cmisno
</isNotNull>
<isNotNull property="subject">
union all
select 2 dtype
,b.sdname strval,b.sdno intval10
,case when a.sdate &lt; now() and a.edate &gt; now() then a.attrate else -1 end intval,b.sdcondition intval2
,case when c.submittime is null then 0 else 1 end intval3
,case when c.checktime is null then 0 else 1 end intval4
,a.attrate intval5
,a2.studytime intval6
,a.iscomplete intval7
,row_number() over (order by b.cdt) rno
,a.edate time
,a.sdate time2
,null testsdate
,null testedate
,0 intval11
from lect a
inner join cm a2 on a2.cmno=a.cmno
inner join cmsd b on b.cmno=a.cmno and b.sdtype=0 and b.isdel=0
left outer join lectsd c on c.lectno=a.lectno and c.sdno=b.sdno
where a.lectno=#lectno# and a.userno=#userno#
</isNotNull>
<isNotNull property="discuss">
union all
select 3 dtype
,b.sdname strval,b.sdno intval10
,case when a.sdate &lt; now() and a.edate &gt; now() then a.attrate else -1 end intval,b.sdcondition intval2
,case when count(d.bno) &gt; 0 then 1 else 0 end intval3
,case when c.checktime is null then 0 else 1 end intval4
,a.attrate intval5
,a2.studytime intval6
,a.iscomplete intval7
,row_number() over (order by b.cdt) rno
,a.edate time
,a.sdate time2
,null testsdate
,null testedate
,0 intval11
from lect a
inner join cm a2 on a2.cmno=a.cmno
inner join cmsd b on b.cmno=a.cmno and b.sdtype=1 and b.isdel=0
left outer join lectsd c on c.lectno=a.lectno and c.sdno=b.sdno
left outer join lectsdboard d on d.lectno=a.lectno and d.sdno=b.sdno and d.isdel=0
where a.lectno=#lectno# and a.userno=#userno#
group by b.sdname,b.sdno,a2.sstime,a2.setime,a.attrate,a.iscomplete,b.sdcondition,c.checktime,b.cdt
</isNotNull>
) a
order by a.dtype,a.rno
</select>
</statements> </statements>
</sqlMap> </sqlMap>

Binary file not shown.

Binary file not shown.

View File

@ -472,6 +472,23 @@ namespace NP.FO.Controllers
/// <returns></returns> /// <returns></returns>
public ActionResult Estimation(VMCRoom vm) public ActionResult Estimation(VMCRoom vm)
{ {
string sqlId = "";
#region +
var p3 = new Hashtable()
{
{ "lectno", vm.croomlectno },
{ "userno", SUserInfo.UserNo }
};
var scd_cmisno = Dao.Get<int>("cr.myestimation.excnt", p3);
if ((int)scd_cmisno.FirstOrDefault() > 0) {
sqlId = "cr.myestimation.ex";
} else {
sqlId = "cr.myestimation";
}
#endregion
#region + vm.Datas = cr.myestimation #region + vm.Datas = cr.myestimation
var p1 = new Hashtable() var p1 = new Hashtable()
{ {
@ -482,7 +499,7 @@ namespace NP.FO.Controllers
{ "discuss"+(vm.tabidx == 0 || vm.tabidx == 3 ? "" : "x"), 1 } { "discuss"+(vm.tabidx == 0 || vm.tabidx == 3 ? "" : "x"), 1 }
}; };
vm.Datas = Dao.Get<Data>("cr.myestimation", p1); vm.Datas = Dao.Get<Data>(sqlId, p1);
#endregion #endregion
// true일때 lms에서 시험내용으로 진입 가능 // true일때 lms에서 시험내용으로 진입 가능

View File

@ -1,33 +1,39 @@
@model NP.Model.VMCRoom @model NP.Model.VMCRoom
@{ @{
/* /*
* -- Model.Datas의 Dtype * -- Model.Datas의 Dtype
* -1 : lect만 쿼리하고 attrate만 intval5에 담아놓음 * -1 : lect만 쿼리하고 attrate만 intval5에 담아놓음
* 1 : 최종평가 * 1 : 최종평가
* 2 : 과제 * 2 : 과제
*/ */
// 1. 하단 문구에서 사용 // 1. 하단 문구에서 사용
// 1-1)최종평가 일때 cm.studytime 값 intval6 // 1-1)최종평가 일때 cm.studytime 값 intval6
int dType1CmStudyTime = Model.Datas //int dType1CmStudyTime = Model.Datas
.Where(w => w.dtype == 1) //.Where(w => w.dtype == 1)
.Select(s => s.intval6) //.Select(s => s.intval6)
.SingleOrDefault(); //.SingleOrDefault();
// 1-2)최종평가 일때 lect.sdate // 1-2)최종평가 일때 lect.sdate
DateTime dType1LectSDate = Model.Datas //DateTime dType1LectSDate = Model.Datas
.Where(w => w.dtype == 1) // .Where(w => w.dtype == 1)
.Select(s => s.time2) // .Select(s => s.time2)
.SingleOrDefault(); // .SingleOrDefault();
// 현재 진도율 //2025-12-30 / KHJ / 추가개발건
int currentProgresRate = Model.Datas.Where(w => w.dtype == -1).FirstOrDefault().intval5; //집체교육이 선택된 시험이 1개도 없을 경우->강좌에 등록된 모든 시험 출력
//집체교육이 선택된 시험이 1개 이상이나, 내가 선택한 일정에 맞는 시험이 없을 경우 -> 집체교육이 선택되지 않은 모든 시험 출력
//집체교육이 선택된 시험이 1개 이상이며, 내가 선택한 일정에 맞는 시험이 있을 경우 -> 내 일정에 맞는 시험 출력
// 현재 과정 수료여부
int currentLectIsComplete = Model.Datas.Where(w => w.dtype == -1).FirstOrDefault().intval7;
// 시험응시가능여부 // 현재 진도율
bool isExCheck = ViewBag.exCheck != null ? (bool)ViewBag.exCheck : false; int currentProgresRate = Model.Datas.Where(w => w.dtype == -1).FirstOrDefault().intval5;
// 현재 과정 수료여부
int currentLectIsComplete = Model.Datas.Where(w => w.dtype == -1).FirstOrDefault().intval7;
// 시험응시가능여부
bool isExCheck = ViewBag.exCheck != null ? (bool)ViewBag.exCheck : false;
} }
<ul class="lctpTab col3"> <ul class="lctpTab col3">
@ -36,8 +42,8 @@
<li class="@(Model.tabidx == 2 ? "current" : "")"><a onclick="gotab(2, this)" style="@(Model.tabidx == 2 ? "cursor: default;" : "")" href="javascript:;">과제</a></li> <li class="@(Model.tabidx == 2 ? "current" : "")"><a onclick="gotab(2, this)" style="@(Model.tabidx == 2 ? "cursor: default;" : "")" href="javascript:;">과제</a></li>
</ul> </ul>
<div class="evaList"> <div class="evaList">
<input type="hidden" id="hdndType1StudyTime" value="@dType1CmStudyTime" /> <input type="hidden" id="hdndType1StudyTime" value="0" />@*@dType1CmStudyTime*@
<input type="hidden" id="hdnlectSDate" value="@dType1LectSDate" /> <input type="hidden" id="hdnlectSDate" value="0" /> @*@dType1LectSDate*@
<input type="hidden" id="hdnCurrentProgresRate" value="@currentProgresRate" /> <input type="hidden" id="hdnCurrentProgresRate" value="@currentProgresRate" />
<input type="hidden" id="hdnExCheck" value="@isExCheck.ToString()" /> <input type="hidden" id="hdnExCheck" value="@isExCheck.ToString()" />
<table> <table>
@ -98,16 +104,15 @@
*/ */
*@ *@
@if (d.dtype == 1) @if (d.dtype == 1) {
{ // 최총 평가일 때(시험응시)
// 최총 평가일 때 //if ((currentProgresRate >= d.intval2) // 조건 ①
//if ((currentProgresRate >= d.intval2) // 조건 ① // && IsDateInRange(d.testsdate, d.testedate) // 조건 ②
// && IsDateInRange(d.testsdate, d.testedate) // 조건 ② // && (ViewBag.exCheck || dType1CmStudyTime == 16)) // 조건 ③ 또는 조건 ④ <-- 요 부분을 다시 물어보자
// && (ViewBag.exCheck || dType1CmStudyTime == 16)) // 조건 ③ 또는 조건 ④ <-- 요 부분을 다시 물어보자
if ((currentProgresRate >= d.intval2) // 조건 ①
&& IsDateInRange(d.testsdate, d.testedate)) // 조건 ②
{ // 2025-12-30 / KHJ / 추가개발건
// currentProgresRate(현재 진도율) >= intval2(제한시간) && 시험 응시 시작일 ~ 시험 응시 종료일
if ((currentProgresRate >= d.intval2) && IsDateInRange(d.testsdate, d.testedate)) {
<td> <td>
<input type="hidden" name="cmEcondition" value="@d.intval2" /> <input type="hidden" name="cmEcondition" value="@d.intval2" />
@*<input type="hidden" name="lectSDate" value="@d.time2" /> @*<input type="hidden" name="lectSDate" value="@d.time2" />
@ -116,25 +121,24 @@
<input type="hidden" name="lectSDate" value="@d.testsdate" /> <input type="hidden" name="lectSDate" value="@d.testsdate" />
<input type="hidden" name="lectEDate" value="@d.testedate" /> <input type="hidden" name="lectEDate" value="@d.testedate" />
<input type="hidden" name="isDateInRange" value="@IsDateInRange(d.testsdate, d.testedate).ToString()" /> <input type="hidden" name="isDateInRange" value="@IsDateInRange(d.testsdate, d.testedate).ToString()" />
@IsDateInRange(d.testsdate, d.testedate)
<a href="javascript:;" onclick="eva(@d.dtype, @d.intval10, @(d.intval4 == 1 ? 4 : d.intval3 == 1 ? 3 : d.intval3 == 0 && d.intval >= d.intval2 ? 2 : 1))" <a href="javascript:;" onclick="eva(@d.dtype, @d.intval10, @(d.intval4 == 1 ? 4 : d.intval3 == 1 ? 3 : d.intval3 == 0 && d.intval >= d.intval2 ? 2 : 1))"
class="@GetEvaTypeClass(d.intval, d.intval2, d.intval3, d.intval4, currentLectIsComplete)">@GetEvaStatusText(d.intval, d.intval2, d.intval3, d.intval4, currentLectIsComplete) class="@GetEvaTypeClass(d.intval, d.intval2, d.intval3, d.intval4, currentLectIsComplete)">@GetEvaStatusText(d.intval, d.intval2, d.intval3, d.intval4, currentLectIsComplete)
</a> </a>
</td> </td>
} } else {
else
{
<td> <td>
<input type="hidden" name="cmEcondition" value="@d.intval2" /> <input type="hidden" name="cmEcondition" value="@d.intval2" />
<input type="hidden" name="lectSDate" value="@d.time2" /> <input type="hidden" name="lectSDate" value="@d.time2" />
<input type="hidden" name="lectEDate" value="@d.time" /> <input type="hidden" name="lectEDate" value="@d.time" />
<input type="hidden" name="isDateInRange" value="@IsDateInRange(d.time2, d.time).ToString()" /> <input type="hidden" name="isDateInRange" value="@IsDateInRange(d.time2, d.time).ToString()" />
<a href="javascript:;" onclick="msg('24년 8월 22일 부터 건설기술진흥법 변경으로 <br>집체교육 당일 교육장에서 시험평가가 진행됩니다.')" @*onclick="msg('24년 8월 22일 부터 건설기술진흥법 변경으로 <br>집체교육 당일 교육장에서 시험평가가 진행됩니다.')"*@
class="evaType@(d.intval4 == 1 ? "04" : d.intval3 == 1 ? "03" : d.intval3 == 0 && d.intval >= d.intval2 ? "02" : "01")">@(d.intval4 == 1 ? "[평가완료]" : d.intval3 == 1 ? "[참여완료]" : d.intval3 == 0 && d.intval >= d.intval2 ? "[참여가능]" : "[참여불가]")</a> <a href="javascript:;" class="evaType@(d.intval4 == 1 ? "04" : d.intval3 == 1 ? "03" : d.intval3 == 0 && d.intval >= d.intval2 ? "02" : "01")">
@(d.intval4 == 1 ? "[평가완료]" : d.intval3 == 1 ? "[참여완료]" : d.intval3 == 0 && d.intval >= d.intval2 ? "[참여가능]" : "[참여불가]")
</a>
</td> </td>
} }
} } else {
else
{
// 과제 등... // 과제 등...
@ -209,14 +213,14 @@
<th colspan="2" style="text-align: center; font-weight: normal; height: 100px;"> <th colspan="2" style="text-align: center; font-weight: normal; height: 100px;">
@if (Model.tabidx == 0 || Model.tabidx == 1) @if (Model.tabidx == 0 || Model.tabidx == 1)
{ // 전체, 시험 탭 { // 전체, 시험 탭
if (dType1CmStudyTime == 16 || dType1LectSDate < Convert.ToDateTime("2024-08-19")) @*if (dType1CmStudyTime == 16 || dType1LectSDate < Convert.ToDateTime("2024-08-19"))
{ {
// 기준이 애매해서 if와 else를 바꿈 (임시사용) // 기준이 애매해서 if와 else를 바꿈 (임시사용)
} }
else else
{ {
<p><b>※ 24년 8월 22일 부터 건설기술진흥법 변경으로 집체교육 당일 교육장에서 시험평가가 진행됩니다.</b></p> <p><b>※ 24년 8월 22일 부터 건설기술진흥법 변경으로 집체교육 당일 교육장에서 시험평가가 진행됩니다.</b></p>
} }*@
} }
<p>현재 진도율: @currentProgresRate <text>%</text></p> <p>현재 진도율: @currentProgresRate <text>%</text></p>
</th> </th>

View File

@ -10,7 +10,7 @@
<tr><th>평가점수</th><td>@(Model.LectEX.tpoint + "점")</td></tr> <tr><th>평가점수</th><td>@(Model.LectEX.tpoint + "점")</td></tr>
<tr><th>제한시간</th><td>@(Model.LectEX.etime == 0 ? "제한없음" : string.Format("{0} 분", Model.LectEX.etime))</td></tr> <tr><th>제한시간</th><td>@(Model.LectEX.etime == 0 ? "제한없음" : string.Format("{0} 분", Model.LectEX.etime))</td></tr>
@*<tr><th>응시기간</th><td>@(Model.LectEX.sdate.Value.ToString("yy-MM-dd hh:mm")) ~ @(Model.LectEX.edate.Value.ToString("yy-MM-dd hh:mm"))까지(진도율 @(Model.LectEX.econdition)%이상 응시가능)</td></tr>*@ @*<tr><th>응시기간</th><td>@(Model.LectEX.sdate.Value.ToString("yy-MM-dd hh:mm")) ~ @(Model.LectEX.edate.Value.ToString("yy-MM-dd hh:mm"))까지(진도율 @(Model.LectEX.econdition)%이상 응시가능)</td></tr>*@
<tr><th>응시기간</th><td>@(Convert.ToDateTime(Model.LectEX.testsdate).ToString("yyyy-MM-dd hh:mm")) ~ @(Convert.ToDateTime(Model.LectEX.testedate).ToString("yyyy-MM-dd hh:mm"))까지(진도율 @(Model.LectEX.econdition)%이상 응시가능)</td></tr> <tr><th>응시기간</th><td>@(Model.LectEX.lectcdt.ToString("yyyy-MM-dd 00:00")) ~ @(Model.LectEX.scdeend.ToString("yyyy-MM-dd hh:mm"))까지(진도율 @(Model.LectEX.econdition)%이상 응시가능)</td></tr>
<tr><th>재응시여부</th><td>@(Model.LectEX.isreexamable == 0 ? "불가능" : "가능")</td></tr> <tr><th>재응시여부</th><td>@(Model.LectEX.isreexamable == 0 ? "불가능" : "가능")</td></tr>
<tr><th>응시상태</th><td>@(Model.LectEX.estart == null ? ("응시전" + (Model.LectEX.recount > 0 ? string.Format(" (재응시승인 {0}회)", Model.LectEX.recount) : "")) : Model.LectEX.eend != null ? "응시완료" : Model.LectEX.rtime < 1 ? "응시시간초과" : ("응시시작 (남은시간 " + Model.LectEX.rtime + "분)" + (Model.LectEX.relaylimit.Value <= Model.LectEX.entercount ? ", [이어보기 초과]" : "")))</td></tr> <tr><th>응시상태</th><td>@(Model.LectEX.estart == null ? ("응시전" + (Model.LectEX.recount > 0 ? string.Format(" (재응시승인 {0}회)", Model.LectEX.recount) : "")) : Model.LectEX.eend != null ? "응시완료" : Model.LectEX.rtime < 1 ? "응시시간초과" : ("응시시작 (남은시간 " + Model.LectEX.rtime + "분)" + (Model.LectEX.relaylimit.Value <= Model.LectEX.entercount ? ", [이어보기 초과]" : "")))</td></tr>
@if (Model.LectEX.estart != null) @if (Model.LectEX.estart != null)

View File

@ -3758,6 +3758,12 @@ namespace NP.Model
return isbyadmin == 1 ? "관리자등록" : estart == null ? "미응시" : "수강생응시"; return isbyadmin == 1 ? "관리자등록" : estart == null ? "미응시" : "수강생응시";
} }
} }
/// <summary>강좌 시작일</summary>
public DateTime lectcdt { get; set; }
/// <summary>교육일정 시작일</summary>
public DateTime scdestart { get; set; }
/// <summary>교육일정 종료일</summary>
public DateTime scdeend { get; set; }
} }
[Serializable] [Serializable]
public class LectEXQ : LectEX public class LectEXQ : LectEX

Binary file not shown.

Binary file not shown.

View File

@ -1,6 +1,5 @@
D:\Project\git\git_YNICTE\Model\bin\Debug\NP.Model.dll D:\Project\git\git_YNICTE\Model\bin\Debug\NP.Model.dll
D:\Project\git\git_YNICTE\Model\bin\Debug\NP.Model.pdb D:\Project\git\git_YNICTE\Model\bin\Debug\NP.Model.pdb
D:\Project\git\git_YNICTE\Model\obj\Debug\Model.csproj.AssemblyReference.cache
D:\Project\git\git_YNICTE\Model\obj\Debug\Model.csproj.CoreCompileInputs.cache D:\Project\git\git_YNICTE\Model\obj\Debug\Model.csproj.CoreCompileInputs.cache
D:\Project\git\git_YNICTE\Model\obj\Debug\NP.Model.dll D:\Project\git\git_YNICTE\Model\obj\Debug\NP.Model.dll
D:\Project\git\git_YNICTE\Model\obj\Debug\NP.Model.pdb D:\Project\git\git_YNICTE\Model\obj\Debug\NP.Model.pdb

Binary file not shown.

Binary file not shown.