pms: 5939, 5938 등 기타건 포함 커밋

This commit is contained in:
jity7777 2024-10-23 03:40:50 +00:00
parent c5a3f215f9
commit b40926a578
6 changed files with 401 additions and 142 deletions

View File

@ -665,7 +665,103 @@ namespace NP.Base.Controllers
}
// pms: 5640 적용
public int CheckUserLect(string man, string cgcode, string edu, string grade, int cmno, int pcmno, long userno)
{
int result = 0; // 1:신청불가, 0:신청가능
int rst = 0;
string[] cgcodes = new string[0];
string[] edus = new string[0];
// 29:기본교육 ,30:최초교육 ,31:계속교육 ,32:안전관리계속교육(16시간) ,33:PQ가점교육 ,34:기타교육 ,35:승급교육
// 36:초급 ,37:중급 ,38:고급 ,39:특급
cgcodes = "102,103,104,105".Split(','); // 직무분야:(102), 역량강화:(103,104), 전문분야(105)
edus = "30,31,35".Split(','); // 최초교육, 계속교육, 승급교육
// man == 28 : 건설사업관리기술인(typeman)
if (man == "28" && cgcodes.Contains(cgcode) && edus.Contains(edu))
{
switch(cgcode)
{
case "102": // 직무분야
if(edu == "35" && (grade == "38" || grade == "39")) // 승급교육 && (고급 || 특급)
{
// '(역량강화 또는 전문분야) + 직무분야' 조건에 의하여 직무분야 1건이상 신청불가
rst = Dao.Get<int>("lect.count.user6", new Hashtable() { { "userno", userno }, { "pcmno", pcmno } }).First();
}
break;
case "103": // 역량강화
case "104":
switch (edu)
{
case "30": // 최초교육
// 1건이상 신청불가
rst = Dao.Get<int>("lect.count.user5", new Hashtable() { { "userno", userno }, { "cgcode", cgcode }, { "edu", edu }, { "grade", grade }, { "cmno", cmno }, { "pcmno", pcmno } }).First();
break;
case "31": // 계속교육
if(grade == "36" || grade == "37") // 초급 || 중급
{
result = 1; // 신청불가
}
// 그외는 제한 없음
break;
case "35": // 승급교육
if(grade == "38" || grade == "39")
{
// '(역량강화 또는 전문분야) + 직무분야' 조건에 의하여 역량강화 또는 전문분야중 1건이상 신청불가
rst = Dao.Get<int>("lect.count.user6", new Hashtable() { { "userno", userno }, { "pcmno", pcmno } }).First();
}
// 그외는 제한 없음
break;
}
break;
case "105": // 전문분야
switch(edu)
{
case "30": // 최초교육
result = 1; // 신청불가
break;
case "31": // 계속교육
if (grade == "36" || grade == "37") // 초급 || 중급
{
result = 1; // 신청불가
}
// 그외는 제한 없음
break;
case "35": // 승급교육
if (grade == "36" || grade == "37") // 초급 || 중급
{
result = 1; // 신청불가
}
else
{
// '(역량강화 또는 전문분야) + 직무분야' 조건에 의하여 역량강화 또는 전문분야중 1건이상 신청불가
rst = Dao.Get<int>("lect.count.user6", new Hashtable() { { "userno", userno }, { "pcmno", pcmno } }).First();
}
break;
}
break;
}
}
if (result == 0)
{
//-1= 짧은문구, smartSearch에서 오류중 짧은문구 처리할 경우 -1를 곱하여 0이하값 만들어야함
result = rst == 0 ? 0 : ((rst > 0) ? 1 : -1); //
}
return result;
}
public int CheckUserLectOld_backukp241007(string man, string cgcode, string edu, string grade, int cmno, int pcmno, long userno)
{
int result = 0;
int rst = 0;
@ -673,46 +769,40 @@ namespace NP.Base.Controllers
string[] cgcodes = new string[0];
string[] edus = new string[0];
if (DateTime.Now > DateTime.Parse("2030-01-02 00:00"))// ### ty 2024년 추가건이나 현재 적용대기로 전달 받음
// 29:기본교육 ,30:최초교육 ,31:계속교육 ,32:안전관리계속교육(16시간) ,33:PQ가점교육 ,34:기타교육 ,35:승급교육
// 36:초급 ,37:중급 ,38:고급 ,39:특급
cgcodes = "103,104,105".Split(',');
edus = "30,31,35".Split(','); // 최초교육, 계속교육, 승급교육
// man == 28 : 건설사업관리기술인(typeman)
if (man == "28" && cgcodes.Contains(cgcode) && edus.Contains(edu))
{
// ### ty 2024년 적용!!!
// 29:기본교육 ,30:최초교육 ,31:계속교육 ,32:안전관리계속교육(16시간) ,33:PQ가점교육 ,34:기타교육 ,35:승급교육
// 36:초급 ,37:중급 ,38:고급 ,39:특급
cgcodes = "103,104,105".Split(',');
edus = "30,31,35,107,108".Split(','); // 최초교육, 계속교육, 승급교육
// man == 28 : 건설사업관리기술인(typeman)
if (man == "28" && cgcodes.Contains(cgcode) && edus.Contains(edu))
// 계속교육(31)
if (edu == "31" && (cgcode == "103" || cgcode == "104") && (grade == "36" || grade == "37")) // 계속교육, (103 or 104), (초급 or 중급)
{
// 계속교육(31)
if ((edu == "31" || edu == "107" || edu == "108") && (cgcode == "103" || cgcode == "104" || cgcode == "105") && (grade == "36" || grade == "37")) // 계속교육, (103 or 104 or 105), (초급 or 중급)
{
result = 1; // 신청불가
}
// 계속교육(31)
else if ((edu == "31" || edu == "107" || edu == "108") && (cgcode == "103" || cgcode == "104" || cgcode == "105") && (grade == "38" || grade == "39")) // 계속교육, (103 or 104 or 105), (고급 or 특급)
result = 1; // 신청불가
}
else
{
// 갯수를 가져오기
// 최초교육(30)
if (edu == "30" && cgcode == "105") // 최초교육 , 105
{
rst = 0; // 신청가능
}
// 최초교육(30)
else if (edu == "30" && cgcode == "105") // 최초교육, 전문분야(105)
// 계속교육(31)
else if (edu == "31" && cgcode == "105" && (grade == "36" || grade == "37")) // 계속교육, 105, (초급 or 중급)
{
result = 1; // 신청불가
rst = 0; // 신청가능
}
// 승급교육(35)
else if (edu == "35" && cgcode == "105" && (grade == "36" || grade == "37")) // 최초교육, 전문분야(105), 36:초급 ,37:중급
{
result = 1; // 신청불가
}// 승급교육(35)
else if (edu == "35" && (cgcode == "103" || cgcode == "104") && (grade == "36" || grade == "37")) // 승급교육 , 103,104, 36:초급 ,37:중급
else if (edu == "35" && (cgcode == "103" || cgcode == "104" || cgcode == "105") && (grade == "36" || grade == "37")) // 승급교육, (103 or 104 or 105), (초급 or 중급)
{
rst = 0; // 신청가능
}
else
{
// 갯수를 가져오기
/*
*
select t5.typegrade, t5.typeman, t5.typeedu, t3.cgcode, t1.lectno, t1.userno
@ -727,94 +817,24 @@ namespace NP.Base.Controllers
// 29:기본교육 ,30:최초교육 ,31:계속교육 ,32:안전관리계속교육(16시간) ,33:PQ가점교육 ,34:기타교육 ,35:승급교육
// 36:초급 ,37:중급 ,38:고급 ,39:특급
*/
// "lect.count.user2" > 103,104,105
// "lect.count.user3" > 103,104
// 최초교육(30) , (103,104),
if (edu == "30" && (cgcode == "103" || cgcode == "104"))
if ((edu == "31" || edu == "35") && (grade == "38" || grade == "39")) // 계속교육, 승급교육 && 고급, 특급
{
var lectCount = Dao.Get<int>("lect.count.user3", new Hashtable() { { "userno", userno }, { "cgcode", cgcode }, { "edu", edu }, { "grade", grade }, { "cmno", cmno }, { "pcmno", pcmno } });
var lectCount = Dao.Get<int>("lect.count.user2", new Hashtable() { { "userno", userno }, { "cgcode", cgcode }, { "edu", edu }, { "grade", grade }, { "cmno", cmno }, { "pcmno", pcmno } });
rst = lectCount.First();
}
// 승급교육(35), 38:고급 ,39:특급
else if (edu == "35" && (grade == "38" || grade == "39"))
else if ((cgcode == "103" || cgcode == "104") && edu == "30") // 최초
{
var lectCount = Dao.Get<int>("lect.count.user2", new Hashtable() { { "userno", userno }, { "cmno", cmno }, { "pcmno", pcmno } });
var lectCount = Dao.Get<int>("lect.count.user3", new Hashtable() { { "userno", userno }, { "cmno", cmno }, { "pcmno", pcmno } });
rst = lectCount.First();
}
}
}
}
else
{
// 29:기본교육 ,30:최초교육 ,31:계속교육 ,32:안전관리계속교육(16시간) ,33:PQ가점교육 ,34:기타교육 ,35:승급교육
// 36:초급 ,37:중급 ,38:고급 ,39:특급
cgcodes = "103,104,105".Split(',');
edus = "30,31,35".Split(','); // 최초교육, 계속교육, 승급교육
// man == 28 : 건설사업관리기술인(typeman)
if (man == "28" && cgcodes.Contains(cgcode) && edus.Contains(edu))
{
// 계속교육(31)
if (edu == "31" && (cgcode == "103" || cgcode == "104") && (grade == "36" || grade == "37")) // 계속교육, (103 or 104), (초급 or 중급)
{
result = 1; // 신청불가
}
else
{
// 갯수를 가져오기
// 최초교육(30)
if (edu == "30" && cgcode == "105") // 최초교육 , 105
{
rst = 0; // 신청가능
}
// 계속교육(31)
else if (edu == "31" && cgcode == "105" && (grade == "36" || grade == "37")) // 계속교육, 105, (초급 or 중급)
{
rst = 0; // 신청가능
}
// 승급교육(35)
else if (edu == "35" && (cgcode == "103" || cgcode == "104" || cgcode == "105") && (grade == "36" || grade == "37")) // 승급교육, (103 or 104 or 105), (초급 or 중급)
{
rst = 0; // 신청가능
}
else
{
/*
*
select t5.typegrade, t5.typeman, t5.typeedu, t3.cgcode, t1.lectno, t1.userno
from lect t1
inner join cm t2 on t1.cmno = t2.cmno
inner join cg t3 on t2.cgno= t3.cgno
inner join pay t4 on t1.payno = t4.payno
inner join pplog t5 on t1.cmno= t5.cmno and t1.userno = t5.userno and t4.pplno = t5.pplno
where t1.status = 1 and t4.pstatus= 1
and t3.cgcode = 103 -- and t1.userno=82 -- 82,5,31
// 29:기본교육 ,30:최초교육 ,31:계속교육 ,32:안전관리계속교육(16시간) ,33:PQ가점교육 ,34:기타교육 ,35:승급교육
// 36:초급 ,37:중급 ,38:고급 ,39:특급
*/
// "lect.count.user2" > 103,104,105
// "lect.count.user3" > 103,104
if ((edu == "31" || edu == "35") && (grade == "38" || grade == "39")) // 계속교육, 승급교육 && 고급, 특급
{
var lectCount = Dao.Get<int>("lect.count.user2", new Hashtable() { { "userno", userno }, { "cgcode", cgcode }, { "edu", edu }, { "grade", grade }, { "cmno", cmno }, { "pcmno", pcmno } });
rst = lectCount.First();
}
else if ((cgcode == "103" || cgcode == "104") && edu == "30") // 최초
{
var lectCount = Dao.Get<int>("lect.count.user3", new Hashtable() { { "userno", userno }, { "cmno", cmno }, { "pcmno", pcmno } });
rst = lectCount.First();
}
else
{
var lectCount = Dao.Get<int>("lect.count.user", new Hashtable() { { "userno", userno }, { "cgcode", cgcode }, { "edu", edu }, { "cmno", cmno }, { "pcmno", pcmno } });
rst = lectCount.First();
}
var lectCount = Dao.Get<int>("lect.count.user", new Hashtable() { { "userno", userno }, { "cgcode", cgcode }, { "edu", edu }, { "cmno", cmno }, { "pcmno", pcmno } });
rst = lectCount.First();
}
}
}
}

View File

@ -2679,7 +2679,50 @@
where (t1.status = 1 or t1.status = 2) and t2.isdel= 0 and t2.isuse= 1 and t2.ismaster = 0 and t1.userno = #userno# and t2.pcmno = #pcmno#
</select>
<select id="lect.pplog.get" parameterClass="hashtable" resultClass="lect">
<select id="lect.count.user5" parameterClass="hashtable" resultClass="int">
select max(lectCnt) * min(checkNum)
from (
select count(t1.lectno) as lectCnt, 1 as checkNum
from lect t1
inner join cm t2 on t1.cmno = t2.cmno
inner join cg t3 on t2.cgno= t3.cgno
inner join pay t4 on t1.payno = t4.payno
inner join pplog t5 on t1.cmno= t5.cmno and t1.userno = t5.userno and t4.pplno = t5.pplno
where (t1.status = 1 or t1.status = 2) and (t4.pstatus= 1 or t4.pstatus=22) and t3.cgcode in (103,104) and t5.typeedu = #edu#
and t1.userno = #userno# and t5.typeman = 28
union
select 0 as lectCnt, (case when count(t1.lectno) > 0 then -1 else 1 end) as checkNum
from lect t1
inner join cm t2 on t1.cmno = t2.cmno
inner join cg t3 on t2.cgno= t3.cgno
where (t1.status = 1 or t1.status = 2) and t2.isdel= 0 and t2.isuse= 1 and t2.ismaster = 0 and t1.userno = #userno# and t2.pcmno = #pcmno#
)t
</select>
<select id="lect.count.user6" parameterClass="hashtable" resultClass="int">
select (max(lectCnt1) + max(lectCnt2)) * min(checkNum)
from (
select count(t1.lectno) as lectCnt1, 0 as lectCnt2, 1 as checkNum
from lect t1
inner join cm t2 on t1.cmno = t2.cmno
inner join cg t3 on t2.cgno= t3.cgno
inner join pay t4 on t1.payno = t4.payno
inner join pplog t5 on t1.cmno= t5.cmno and t1.userno = t5.userno and t4.pplno = t5.pplno
where (t1.status = 1 or t1.status = 2) and (t4.pstatus= 1 or t4.pstatus=22) and t3.cgcode in (102,103,104,105) and t5.typeedu = 35
and t1.userno = #userno# and t5.typeman = 28 and t5.typegrade in (38,39)
union
select 0 as lectCnt1, count(t1.lectno) as lectCnt2,(case when count(t1.lectno) > 0 then -1 else 1 end) as checkNum
from lect t1
inner join cm t2 on t1.cmno = t2.cmno
inner join cg t3 on t2.cgno= t3.cgno
where (t1.status = 1 or t1.status = 2) and t2.isdel= 0 and t2.isuse= 1 and t2.ismaster = 0 and t1.userno = #userno# and t2.pcmno = #pcmno#
)t
</select>
<select id="lect.pplog.get" parameterClass="hashtable" resultClass="lect">
select l.lectno, l.cmno, l.payno, pp.cshape, cc.cname zstring1, cc2.cname zstring2, cc3.cname zstring3, cc4.cname zstring4, cc5.cname zstring5
from lect l
inner join pay p on l.payno = p.payno and l.userno = p.userno

View File

@ -416,13 +416,20 @@
left outer join userstatus b on a.userno = b.userno
where a.userno = #userno# and b.no is null;
</update>
<update id="users.exitjoin" parameterClass="hashtable">
<!--<update id="users.exitjoin" parameterClass="hashtable">
update users set <include refid="sql.up"></include>
,username='삭제됨',usernameeng=null,email=null,mobile=null,telno=null,userpno=null,bankno=null,post=null,address1=null,address2=null,birthday=null,di=null,ci=null,vssn=null,authplatform=0,status=99
where
<isNotNull property="userno">userno=#userno#</isNotNull>
<isNotNull property="usernos">userno in ($usernos$)</isNotNull>
</update>
</update>-->
<update id="users.exitjoin" parameterClass="hashtable">
update users set <include refid="sql.up"></include>
,status=99
where
<isNotNull property="userno">userno=#userno#</isNotNull>
<isNotNull property="usernos">userno in ($usernos$)</isNotNull>
</update>
<!--<update id="users.dormant" parameterClass="hashtable">
update users set <include refid="sql.up"></include>,status=8
where userno in ($usernos$)
@ -752,12 +759,18 @@
left outer join usercheck b on b.userno=#userno# and b.checkkey=#checkkey#;
update usercheck set checkkey=0 where userno=#userno#
</select>
<update id="users.exit" parameterClass="hashtable">
<!--<update id="users.exit" parameterClass="hashtable">
update users set <include refid="sql.up"></include>
,exitreason=#exitreason#
,username='탈퇴회원',usernameeng=null,email=null,mobile=null,telno=null,birthday=null,vssn=null,di=null,ci=null,userpno=null,bankno=null,post=null,address1=null,address2=null,authplatform=0,status=99
where userno=#userno#
</update>
</update>-->
<update id="users.exit" parameterClass="hashtable">
update users set <include refid="sql.up"></include>
,exitreason=#exitreason#
,status=99
where userno=#userno#
</update>
<update id="users.remotelogin.set" parameterClass="hashtable">
update users a
inner join assign b on b.asno=a.asno and b.siteip like concat('%',#siteip#,'%')

View File

@ -1,4 +1,7 @@
@model NP.Model.VMCourse
@{
List<string> viewTitleCgCodes = new List<string>() { "103", "104", "105" };
}
<div class="container">
<div class="schBox" style="display:none;">
<form id="smartSearchForm" method="post">
@ -98,12 +101,15 @@
<li>
<div class="smtlCont">
<h5>
<em style="font-size:15px" class="@(item.cshape == 0 ? "org" : item.cshape == 1 ? "grn" : "blu")">
@*<em style="font-size:15px" class="@(item.cshape == 0 ? "org" : item.cshape == 1 ? "grn" : "blu")">
@(item.cshape == 0 ? "온라인" : item.cshape == 1 ? "교육장교육" : "온라인교육")
</em>*@
<em style="font-size:15px;@(viewTitleCgCodes.Contains(item.cgcode) ? "background: red !important" : "")">
@(item.cgcode == "103" || item.cgcode == "104" ? "역량강화교육" : item.cgcode == "105" ? "전문분야교육" : "")
</em>
@*<span style="font-size:22px">@($"{item.cname} | {item.studytime}시간과정 | 교육비{item.infee}")</span></h5>*@
@{
string strTitle = string.Format("{0} | {1}시간과정 |<span class='red' style='vertical-align: initial;'> {2}과정 </span>", item.cname, item.studytime, (item.isrefund == 1 ? "환급" : "비환급"), item.infee.ToString("#,0"));
string strTitle = string.Format("{0} | {1}시간과정 {4}<span class='red' style='vertical-align: initial;'> {2} </span>", item.cname, item.studytime, (item.isrefund == 1 ? "환급과정" : ""), item.infee.ToString("#,0"), (item.isrefund == 1 ? "|" : ""));
}
<span style="font-size:22px">@Html.Raw(strTitle)</span>
</h5>
@ -182,13 +188,17 @@
<p>인정시간 : <span class="sky"><span id="spnCmStudyHour"></span></span>시간</p>
<p style="display:none;" id="completeStd">수료기준 : 진도 <span id="spnCmAttend"></span>% 이상, 시험 <span id="spnCmFinal"></span>점 이상, 과제 <span id="spnCmSubject"></span>점 이상<span id="spnisoffabs"></span></p>
@*@if (Model.CM.cshape != 1)
{
<p id="completeStd">수료기준 : 진도 <span id="spnCmAttend"></span>% 이상, 시험 <span id="spnCmFinal"></span>점 이상, 과제 <span id="spnCmSubject"></span>점 이상</p>
}*@
{
<p id="completeStd">수료기준 : 진도 <span id="spnCmAttend"></span>% 이상, 시험 <span id="spnCmFinal"></span>점 이상, 과제 <span id="spnCmSubject"></span>점 이상</p>
}*@
</div>
</div>
</li>
</ul>
<dl class="fairIntro spnCmEduname" style="display:none;">
<dt>교육종류</dt>
<dd><span id="spnCmEduname"></span></dd>
</dl>
<dl class="fairIntro spnCmUsername" style="display:none;">
<dt>강사정보</dt>
<dd><span id="spnCmUsername"></span></dd>
@ -291,6 +301,7 @@
});
function openIntro(cmno) {
$(".spnCmEduname").hide();
$(".spnCmUsername").hide();
$(".spnCmIntroHtml").hide();
$(".spnCmTargetHtml").hide();
@ -310,7 +321,7 @@
if ($("#stringval").val() == "1") {
cmkind = $("#stringval3").find("option:selected").text();
}
let CmEdunameChk = 0;
$.each(capResult.obj, function (i, d) {
//20220729 온라인인경우 수료기준을 보여준다.
if (@(Model.stringval2) == 1) {
@ -330,6 +341,33 @@
$("#spnCmUsername").text(d.username);
$(".spnCmUsername").show();
}
if (d.cgcode != "101") {
if (d.cgcode == "102") {
$("#spnCmEduname").html("직무분야교육");
CmEdunameChk = 1;
}
else if (d.cgcode == "103" || d.cgcode == "104") {
$("#spnCmEduname").html("역량강화교육");
CmEdunameChk = 1;
}
else if (d.cgcode == "105") {
$("#spnCmEduname").html("전문분야교육");
CmEdunameChk = 1;
}
else if (d.cgcode == "107") {
$("#spnCmEduname").html("특성화교육");
CmEdunameChk = 1;
}
else {
CmEdunameChk = 0;
}
if (CmEdunameChk == 1) {
$(".spnCmEduname").show();
}
}
else {
$(".spnCmEduname").hide();
}
if (d.introhtml != null && d.introhtml != "" && d.introhtml != undefined) {
$("#spnCmIntroHtml").html(d.introhtml);
$(".spnCmIntroHtml").show();
@ -956,6 +994,7 @@
}
}
else {
@*(짧은문구)*@
@* msg("<sapn style='font-size: 15pt;'>이미 수강/수료한 과정입니다.</span>");*@
msg("<sapn style='font-size: 15pt;'>이미 동일한 내용의 교육을 신청,수강 또는 수료한 과정입니다.</span>");
}

View File

@ -65,25 +65,25 @@
{
<ul class="mainSch">
<li class="msCont">
<em>SKILL</em>
<div class="msSel active" id="msSel1">
<span>교육유형</span>
<div>
<div>
<ul>
@*<li><a href="javascript:schIpt('1', '0', '온라인교육');">온라인교육</a></li>*@
@*20220726 교육장교육 선택 활성화*@
@*@if ((ViewBag.SSUserNo == 120) && (Request.Url.Authority == "www.ynicte.com" || Request.Url.Authority == "ynicte.nptc.kr"))
{
<em>SKILL</em>
<div class="msSel active" id="msSel1">
<span>교육유형</span>
<div>
<div>
<ul>
@*<li><a href="javascript:schIpt('1', '0', '온라인교육');">온라인교육</a></li>*@
@*20220726 교육장교육 선택 활성화*@
@*@if ((ViewBag.SSUserNo == 120) && (Request.Url.Authority == "www.ynicte.com" || Request.Url.Authority == "ynicte.nptc.kr"))
{
<li><a href="javascript:schIpt('1', '1', '교육장교육');">교육장교육</a></li>
}*@
<li><a href="javascript:schIpt('1', '1', '교육장교육');">교육장교육</a></li>
}*@
<li><a href="javascript:schIpt('1', '1', '교육장교육');">교육장교육</a></li>
<li><a href="javascript:schIpt('1', '2', '온라인교육');">온라인교육</a></li>
</ul>
</div>
</div>
</div>
</li>
<li><a href="javascript:schIpt('1', '2', '온라인교육');">온라인교육</a></li>
</ul>
</div>
</div>
</div>
</li>
@MvcHtmlString.Create(ViewBag.depthHtml)
</ul>
}
@ -244,11 +244,64 @@
</form>
}
<textarea style="display: none;" id="texthide01">@ViewBag.POPUPS</textarea>
@*신청 전 필수 확인 건설사업관리(계속교육)*@
<div class="mainconfirmbox" style="display: none;" id="edu31ConfirmMsg">
<div class="box_bg">
<div class="con">
<h1>교육신청 전 필수 확인</h1>
<h2>건설사업관리 (계속교육) 신청 시 주의사항</h2>
<p>
건설사업관리기술인의 현재 등급이 고급 또는 특급인 경우 계속교육 이수 시 반드시
<span class="red">(역량강화교육 35시간) 또는 (전문분야교육 35시간)을 포함하여</span> 이수하셔야 합니다.
</p>
<p><span class="red">※ (중요) 단, 역량강화교육 또는 전문분야교육으로만 70시간 이수는 불가</span></p>
<p>
예) 건설사업관리기술 등급이 특급인 자가 계속교육 70시간을 이수할 경우<br>
<span class="blue">(역량강화교육35시간 또는 전문분야교육35시간)</span> + 그 외 교육으로 이수하여야 함
</p>
<p>※ 해당 내용에 대하여 문의하실 분은 교육원으로 연락 주시면 안내 드리겠습니다.</p>
<p><input type="checkbox" id="edu31Chk" value="1"><span class="blue">상기 내용을 이해하였으며 잘못 이수된 교육은 인정되지 않음을 인지하였습니다.</span></p>
<div id="edu31ChkErr" style="color:red;display:none;font-weight:700">체크박스를 체크해주시기 바랍니다.</div>
</div>
<div class="confirmbtnbox">
<a href="#" class="btn btn1 confirmokbutton" onclick="addConfirmSubmit();">예</a>
<a href="#" class="btn btn0 confirmokbutton" onclick="$('#edu31ConfirmMsg').hide();">아니오</a>
</div>
</div>
</div>
@*신청 전 필수 확인 건설사업관리(승급교육)*@
<div class="mainconfirmbox" style="display:none;" id="edu35ConfirmMsg">
<div class="box_bg">
<div class="con">
<h1>신청 전 필수 확인</h1>
<h2>건설사업관리 (승급교육) 신청 시 주의사항</h2>
<p>
건설사업관리기술인의 승급 가능한 등급이 고급 또는 특급인 경우 승급교육 이수 시 반드시
<span class="red">(역량강화교육 35시간) 또는 (전문분야교육 35시간)을 포함하여</span> 이수하셔야 합니다.
</p>
<p><span class="red">- (중요) 단, 역량강화교육 또는 전문분야교육으로만 70시간 이수는 불가 -</span></p>
<p>
예) 건설사업관리기술 등급이 특급인 자가 승급교육 70시간을 이수할 경우<br>
<span class="blue">(역량강화교육35시간 또는 전문분야교육35시간)</span> + 그 외 교육으로 이수하여야 함
</p>
<p>※ 해당 내용에 대하여 문의하실 분은 교육원으로 연락 주시면 안내 드리겠습니다.</p>
<p><input type="checkbox" id="edu35Chk" value="1"><span class="blue">상기 내용을 이해하였으며 잘못 이수된 교육은 인정되지 않음을 인지하였습니다.</span></p>
<div id="edu35ChkErr" style="color:red;display:none;font-weight:700">체크박스를 체크해주시기 바랍니다.</div>
</div>
<div class="confirmbtnbox">
<a href="#" class="btn btn1 confirmokbutton" onclick="addConfirmSubmit();">예</a>
<a href="#" class="btn btn0 confirmokbutton" onclick="$('#edu35ConfirmMsg').hide();">아니오</a>
</div>
</div>
</div>
@section scriptsHeader{
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<style>
.mainTab li:after{
content:none;
.mainTab li:after {
content: none;
}
</style>
}
@ -340,8 +393,15 @@
@*msg("전문분야을 입력하세요.");*@ $("#stringval2").focus(); return;
}
$("#indexForm").attr("action", "/Course/SmartSearch").submit();
let sch2 = $("#sch2").val();
let sch3 = $("#sch3").val();
let sch4 = $("#sch4").val();
if (sch2 == "28" && (sch3 == "31" || sch3 == "35") && (sch4 == "38" || sch4 == "39")) {
addConfirm(sch3)
}
else {
$("#indexForm").attr("action", "/Course/SmartSearch").submit();
}
});
$('.msSel span').click(function () {
@ -373,6 +433,24 @@
msg("이미 신청된 강좌입니다. 메인화면으로 이동되었습니다.");
}
});
function addConfirm(sch3) {
$("#edu" + sch3 + "ConfirmMsg").show()
}
function addConfirmSubmit() {
let sch3 = $("#sch3").val();
if ($("#edu" + sch3 + "Chk:checked").val() == "1") {
$("#indexForm").attr("action", "/Course/SmartSearch").submit();
}
else {
//msg("체크박스를 체크해주시기 바랍니다.")
$("#edu" + sch3 + "ChkErr").show()
alert("체크박스를 체크해주시기 바랍니다.")
}
}
function schIpt(num, code, name) {

View File

@ -279,3 +279,69 @@ ul.filebox a.filedel{margin-right: 5px; background-color: #fff; border: 1px soli
padding: 40px 10%;
}
}
/*신청 전 필수 확인*/
.mainconfirmbox {
position: fixed;
top: 50%;
text-align: center;
width: 90%;
line-height: 50px;
font-size: 18px;
z-index: 3000;
display: none;
max-width: 640px;
left: 50%;
transform: translate(-50%, -50%);
}
.mainconfirmbox .box_bg {
background-color: #fff;
padding: 20px;
}
.mainconfirmbox h1 {
font-size: 24px;
color: #fff;
background-color: #000;
}
.mainconfirmbox h2 {
font-size: 20px;
color: red;
display: inline-block;
margin: 20px 0;
}
.mainconfirmbox h2::after {
content: '';
display: block;
width: 100%;
border: 1px solid #5e5e5e;
margin-top: -13px;
}
.mainconfirmbox p {
font-size: 16px;
line-height: 1.5em;
font-weight: 700;
margin: 15px;
}
.mainconfirmbox p span.red {
color: red;
}
.mainconfirmbox p span.blue {
color: blue;
}
.mainconfirmbox input {
margin-right: 10px;
}
.mainconfirmbox .confirmbtnbox {
background-color: currentColor;
padding-bottom: 0;
margin-top: 0;
}