2024년 8월 추가건 커밋(스마트검색 비로그인처리 및 시험제한 규칙 관련 메세지창 적용)

This commit is contained in:
jity7777 2024-08-26 01:56:50 +00:00
parent 61c6104ae2
commit d41c5b012d
17 changed files with 374 additions and 41 deletions

View File

@ -56,9 +56,9 @@
<add key="talk" value="https://dev-alimtalk-api.bizmsg.kr:1443/v2/sender/send,?,?,?,?,?,023103312" /> <add key="talk" value="https://dev-alimtalk-api.bizmsg.kr:1443/v2/sender/send,?,?,?,?,?,023103312" />
<!--<add key="talk" value="https://alimtalk-api.bizmsg.kr/v2/sender/send,?,?,?,?,?,023103312" />--> <!--<add key="talk" value="https://alimtalk-api.bizmsg.kr/v2/sender/send,?,?,?,?,?,023103312" />-->
<!--<add key="configpath" value="Product" />--> <add key="configpath" value="Product" />
<!--<add key="configpath" value="ProductDev" />--> <!--<add key="configpath" value="ProductDev" />-->
<add key="configpath" value="staging" /> <!--<add key="configpath" value="staging" />-->
<add key="lgdacomConfigPath" value="D:\3rdparti\lgdacomyicte" /> <add key="lgdacomConfigPath" value="D:\3rdparti\lgdacomyicte" />

View File

@ -129,7 +129,7 @@ namespace NP.Base.Controllers
return JsonBack(new JsonRtn() { code = 1000, msg = "-4", obj = u.userno }); return JsonBack(new JsonRtn() { code = 1000, msg = "-4", obj = u.userno });
} }
if (u.intv1 == 2) if (u.intv1 == 2 || u.status == 8) // 휴면상태 포함
{ {
// 비활성 상태(비번 5회 이상) // 비활성 상태(비번 5회 이상)
return JsonBack(new JsonRtn() { code = 1000, msg = "-5", obj = u.userno }); return JsonBack(new JsonRtn() { code = 1000, msg = "-5", obj = u.userno });
@ -618,7 +618,7 @@ namespace NP.Base.Controllers
//var result = Dao.Get<CMinningscd>("cm.cminningscds.applyedu"+(lectno != null ? ".lectno" : ""), new System.Collections.Hashtable() { { "cmno", cmno },{"lectno",lectno }, { "month", (month == null) ? null : month } }); //var result = Dao.Get<CMinningscd>("cm.cminningscds.applyedu"+(lectno != null ? ".lectno" : ""), new System.Collections.Hashtable() { { "cmno", cmno },{"lectno",lectno }, { "month", (month == null) ? null : month } });
DateTime now = DateTime.Now; DateTime now = DateTime.Now;
result = result.Where(c => c.estart > now.AddYears(-1) && c.estart < now.AddYears(1)).ToList(); result = result.Where(c => c.estart > now.AddYears(-1) && c.estart < now.AddYears(1) && c.estart > now.AddDays(2)).ToList();
foreach (var item in result) foreach (var item in result)
{ {
//item.scdInfoSummary = string.Format("[{0}] {1}", item.studyplacename, item.estart.ToString("yyyy년 MM월 dd일 ddd요일 HH:mm")); //item.scdInfoSummary = string.Format("[{0}] {1}", item.studyplacename, item.estart.ToString("yyyy년 MM월 dd일 ddd요일 HH:mm"));
@ -658,14 +658,22 @@ namespace NP.Base.Controllers
public JsonResult GetCheckLectIs(string man, string cgcode, string edu, string grade, int cmno, int pcmno) public JsonResult GetCheckLectIs(string man, string cgcode, string edu, string grade, int cmno, int pcmno)
{ {
int result = 0; // 0 이면 수강 가능, 그외 수강 불가 int result = 0; // 0 이면 수강 가능, 그외 수강 불가
int userno = SUserInfo.UserNo;
result = CheckUserLect(man, cgcode, edu, grade, cmno, pcmno, SUserInfo.UserNo);
return JsonBack(result);
}
public int CheckUserLect(string man, string cgcode, string edu, string grade, int cmno, int pcmno, long userno)
{
int result = 0;
int rst = 0; int rst = 0;
string[] cgcodes = new string[0]; string[] cgcodes = new string[0];
string[] edus = new string[0]; string[] edus = new string[0];
if (DateTime.Now > DateTime.Parse("2030-01-02 00:00"))// ### ty 2024년 추가건이나 현재 적용대기로 전달 받음
if (DateTime.Now > DateTime.Parse("2030-01-02 00:00"))// ### ty 2024년 추가건
{ {
// ### ty 2024년 적용!!! // ### ty 2024년 적용!!!
@ -724,13 +732,13 @@ namespace NP.Base.Controllers
// "lect.count.user3" > 103,104 // "lect.count.user3" > 103,104
// 최초교육(30) , (103,104), // 최초교육(30) , (103,104),
if (edu == "30" && (cgcode == "103" || cgcode == "104") ) if (edu == "30" && (cgcode == "103" || cgcode == "104"))
{ {
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.user3", new Hashtable() { { "userno", userno }, { "cgcode", cgcode }, { "edu", edu }, { "grade", grade }, { "cmno", cmno }, { "pcmno", pcmno } });
rst = lectCount.First(); rst = lectCount.First();
} }
// 승급교육(35), 38:고급 ,39:특급 // 승급교육(35), 38:고급 ,39:특급
else if (edu == "35" && (grade == "38" || grade == "39")) else if (edu == "35" && (grade == "38" || grade == "39"))
{ {
var lectCount = Dao.Get<int>("lect.count.user2", new Hashtable() { { "userno", userno }, { "cmno", cmno }, { "pcmno", pcmno } }); var lectCount = Dao.Get<int>("lect.count.user2", new Hashtable() { { "userno", userno }, { "cmno", cmno }, { "pcmno", pcmno } });
rst = lectCount.First(); rst = lectCount.First();
@ -811,15 +819,15 @@ namespace NP.Base.Controllers
} }
} }
if(result == 0) if (result == 0)
{ {
//-1= 짧은 문구 //-1= 짧은 문구
result = rst == 0 ? 0 : ((rst > 0) ? 1 : -1); // result = rst == 0 ? 0 : ((rst > 0) ? 1 : -1); //
} }
return JsonBack(result);
}
return result;
}
/// <summary> /// <summary>
/// 교육신청 제한 해제시 GetCheckLectIs_stay를 GetCheckLectIs로 변경하여 반영한다. /// 교육신청 제한 해제시 GetCheckLectIs_stay를 GetCheckLectIs로 변경하여 반영한다.
/// </summary> /// </summary>

View File

@ -1840,7 +1840,7 @@
left outer join pplog pl on p.pplno= pl.pplno left outer join pplog pl on p.pplno= pl.pplno
where l.lectno=#lectno# and l.userno = #userno# and (pl.typeedu = 32 or where l.lectno=#lectno# and l.userno = #userno# and (pl.typeedu = 32 or
( l.completetime is null and li.stime is not null ( l.completetime is null and li.stime is not null
and l.sdate &lt; '2024-08-01 00:00:00' and l.edate > '2025-08-03 00:00:00')) and l.sdate &lt; '2024-08-19 00:00:00' and l.edate &lt; '2024-08-22 00:00:00'))
</select> </select>
</statements> </statements>
</sqlMap> </sqlMap>

View File

@ -2665,6 +2665,14 @@
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# 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 )t
</select> </select>
<select id="lect.count.user4" parameterClass="hashtable" resultClass="int">
select count(t1.lectno)
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#
</select>
<select id="lect.pplog.get" parameterClass="hashtable" resultClass="lect"> <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 select l.lectno, l.cmno, l.payno, pp.cshape, cc.cname zstring1, cc2.cname zstring2, cc3.cname zstring3, cc4.cname zstring4, cc5.cname zstring5

View File

@ -12,7 +12,7 @@
<database> <database>
<provider name="MySql" /> <provider name="MySql" />
<!--실서버--> <!--실서버-->
<dataSource name="mysqlcon" connectionString="Server=118.219.255.222;Database=lmsynicte;User ID=ynicteadmin;Password=ynicte@Database" /> <dataSource name="mysqlcon" connectionString="Server=118.219.255.222;Database=lmsynicte;User ID=ynicteadmin;Password=ynicte@Database;Connection Timeout=60;" />
</database> </database>

View File

@ -52,6 +52,32 @@ namespace NP.FO.Controllers
ViewBag.kakaoClientID = kakaoClientID; ViewBag.kakaoClientID = kakaoClientID;
ViewBag.googleClientID = googleClientID; ViewBag.googleClientID = googleClientID;
// 2024.08.07 로그인제한 해제(시작)
ViewBag.smartsearchRslt = false;
if (Request.UrlReferrer != null)
{
vm.stringval = vm.stringval ?? "";
vm.stringval2 = vm.stringval2 ?? "";
if (Request.Url.Authority.ToLower() == Request.UrlReferrer.Authority.ToLower() && Request.UrlReferrer.AbsolutePath.ToLower().IndexOf("smartsearch") > -1 && vm.stringval != "" && vm.stringval2 != "")
{
ViewBag.smartsearchRslt = true;
vm.ru = "/Course/SmartSearchResult?stringval=" + vm.stringval;
vm.ru += "-stringval2=" + vm.stringval2;
vm.ru += "-stringval3=" + vm.stringval3; // man
vm.ru += "-stringval4=" + vm.stringval4; // edu
vm.ru += "-stringval5=" + vm.stringval5; // grade
vm.ru += "-stringval6=" + vm.stringval6;
vm.ru += "-stringval7=" + vm.stringval7;
vm.ru += "-stringval17=" + vm.stringval17; // cmno
vm.ru += "-stringval18=" + vm.stringval18; // pcmno
vm.ru += "-stringval19=" + vm.stringval19; // cmino
vm.ru += "-stringval20=" + vm.stringval20; // cmisno
vm.ru += "-stringval21=" + vm.stringval21; // cgcode
}
}
// 2024.08.07 로그인제한 해제(종료)
if (Request.IsAjaxRequest()) if (Request.IsAjaxRequest())
{ {
return JsonError<String>(Base.ENUM.JSONCode.Error, "403:" + Request.Url.AbsolutePath, "0112"); return JsonError<String>(Base.ENUM.JSONCode.Error, "403:" + Request.Url.AbsolutePath, "0112");
@ -1885,6 +1911,13 @@ namespace NP.FO.Controllers
//cookie.Expires = DateTime.Now.AddDays(-1); //cookie.Expires = DateTime.Now.AddDays(-1);
//Response.Cookies.Add(cookie); //Response.Cookies.Add(cookie);
} }
if (Request.Cookies.Get("ru") != null)
{
ViewBag.RTNURL = Request.Cookies.Get("ru");
//원래 마케팅용이어서 expire는 제외
//cookie.Expires = DateTime.Now.AddDays(-1);
//Response.Cookies.Add(cookie);
}
if (ViewBag.UserNo > 0) if (ViewBag.UserNo > 0)
{ {

View File

@ -187,18 +187,15 @@ namespace NP.FO.Controllers
ViewBag.exCheck = true; // true일때 lms에서 시험내용으로 진입 가능 ViewBag.exCheck = true; // true일때 lms에서 시험내용으로 진입 가능
if(DateTime.Now > DateTime.Parse(GetConfig("2024ExDate"))) var lectCheck = Dao.Get<Data>("cr.myExCheck", new System.Collections.Hashtable() { { "lectno", vm.croomlectno }, { "userno", SUserInfo.UserNo } });
{
var lectCheck = Dao.Get<Data>("cr.myExCheck", new System.Collections.Hashtable() { { "lectno", vm.croomlectno }, { "userno", SUserInfo.UserNo } });
if (lectCheck.Count > 0) if (lectCheck.Count > 0)
{ {
ViewBag.exCheck = true; ViewBag.exCheck = true;
} }
else else
{ {
ViewBag.exCheck = false; ViewBag.exCheck = false;
}
} }
return CView(vm); return CView(vm);

View File

@ -772,9 +772,10 @@ namespace NP.FO.Controllers
public ActionResult SmartSearch(VMCourse vm) public ActionResult SmartSearch(VMCourse vm)
{ {
if (SUserInfo.UserNo == 0) { // 2024.08.07 로그인제한 해제
return RedirectToAction(nameof(HomeController.Index), "Home"); //if (SUserInfo.UserNo == 0) {
} // return RedirectToAction(nameof(HomeController.Index), "Home");
//}
vm.ComCodes = GetComCodes("studyplace"); vm.ComCodes = GetComCodes("studyplace");
vm.CMsEtc = Dao.Get<CM>("cm.cgetc", new System.Collections.Hashtable() { { "cgcode", "2" } });//cgcode = 기타교육 // 기타교육 cgcode 바뀌면 파라미터도 변경해야함 vm.CMsEtc = Dao.Get<CM>("cm.cgetc", new System.Collections.Hashtable() { { "cgcode", "2" } });//cgcode = 기타교육 // 기타교육 cgcode 바뀌면 파라미터도 변경해야함
vm.CM = Dao.Get<CM>("cm.cms", new System.Collections.Hashtable()).First(); vm.CM = Dao.Get<CM>("cm.cms", new System.Collections.Hashtable()).First();
@ -879,6 +880,58 @@ namespace NP.FO.Controllers
return View(vm); return View(vm);
} }
public ActionResult SmartSearchResult(VMCourse vm)
{
/*
* https://www.ynicte.com/Course/SmartSearchResult?stringval=&stringval2=2&stringval3=25&stringval4=29&stringval5=36&stringval6=40&stringval7=58&stringval17=859&stringval18=33&stringval19=50085&stringval20=14795&stringval21=101
*
*
string rslt = "";
rslt += "stringval=" + vm.stringval;
rslt += "<br>stringval2=" + vm.stringval2;
rslt += "<br>stringval3=" + vm.stringval3; // man
rslt += "<br>stringval4=" + vm.stringval4; // edu
rslt += "<br>stringval5=" + vm.stringval5; // grade
rslt += "<br>stringval6=" + vm.stringval6;
rslt += "<br>stringval7=" + vm.stringval7;
rslt += "<br>stringval17=" + vm.stringval17; // cmno
rslt += "<br>stringval18=" + vm.stringval18; // pcmno
rslt += "<br>stringval19=" + vm.stringval19; // cmino
rslt += "<br>stringval20=" + vm.stringval20; // cmisno
rslt += "<br>stringval21=" + vm.stringval21; // cgcode
rslt += "<br>userno=" + SUserInfo.UserNo;
*/
ViewBag.IsMain = true;
Base.Controllers.FOCommonController fOCommonController = new Base.Controllers.FOCommonController();
fOCommonController.Dao = new Dao.CommonDao();
ViewBag.rslt = fOCommonController.CheckUserLect(vm.stringval3, vm.stringval21, vm.stringval4, vm.stringval5, int.Parse(vm.stringval17), int.Parse(vm.stringval18), SUserInfo.UserNo);
//vm.ComCodes = GetComCodes("studyplace");
vm.ComCodes2 = GetComCodes("typeman");
vm.ComCodes3 = GetComCodes("typeedu");
vm.ComCodes4 = GetComCodes("typegrade");
vm.ComCodes5 = GetComCodes("typejob");
vm.ComCodes6 = GetComCodes("typejob40,typejob41,typejob42,typejob43,typejob44,typejob45,typejob46,typejob47,typejob48,typejob49,typejob57");
vm.CM = Dao.Get<CM>("cm.cms", new System.Collections.Hashtable() { { "cmno", vm.stringval17 } }).FirstOrDefault();
Hashtable hsData = new Hashtable();
hsData.Add("cmno", vm.stringval17);
vm.CMInningscds= Dao.Get<CMinningscd>("cm.cminningscds.applyedu" , hsData);
vm.SelectCMInningscd = vm.CMInningscds.Where(c => c.cmisno == long.Parse(vm.stringval20) && c.cmino == long.Parse(vm.stringval19)).First();
vm.intval = Dao.Get<int>("lect.count.user4", new Hashtable { { "userno", SUserInfo.UserNo }, { "pcmno", long.Parse(vm.stringval18) } }).FirstOrDefault();
/*
*
* applyClassEdu(" + d.cmno + ", " + d.pcmno + ", " + d.cmino + ", " + d.cmisno + ");" });
*
*/
return View(vm);
}
//private string GetComCode6CodeList(IList<ComCode> comCodes) //private string GetComCode6CodeList(IList<ComCode> comCodes)
//{ //{
// string result = ""; // string result = "";

View File

@ -75,6 +75,7 @@ namespace NP.FO.Controllers
if (cm != null || Request.Url.AbsolutePath.ToUpper().Equals("/HOME/HTML") if (cm != null || Request.Url.AbsolutePath.ToUpper().Equals("/HOME/HTML")
|| Request.Url.AbsolutePath.ToUpper().StartsWith("/ACCOUNT/BANEMAIL") || Request.Url.AbsolutePath.ToUpper().StartsWith("/ACCOUNT/BANEMAIL")
|| Request.Url.AbsolutePath.ToUpper().StartsWith("/ACCOUNT/LOGOUT") || Request.Url.AbsolutePath.ToUpper().StartsWith("/ACCOUNT/LOGOUT")
|| Request.Url.AbsolutePath.ToUpper().StartsWith("/COURSE/SMARTSEARCHRESULT")
|| Request.Url.AbsolutePath.ToUpper().StartsWith("/BOARD/")) || Request.Url.AbsolutePath.ToUpper().StartsWith("/BOARD/"))
{ {
ViewBag.Title = (cm ?? new Model.MenuPage()).pagename; ViewBag.Title = (cm ?? new Model.MenuPage()).pagename;
@ -115,6 +116,8 @@ namespace NP.FO.Controllers
else if (!Request.Url.AbsolutePath.ToUpper().StartsWith("/OPEN/") && else if (!Request.Url.AbsolutePath.ToUpper().StartsWith("/OPEN/") &&
!Request.Url.AbsolutePath.ToUpper().StartsWith("/HOME/POPUP") && !Request.Url.AbsolutePath.ToUpper().StartsWith("/HOME/POPUP") &&
!Request.Url.AbsolutePath.ToUpper().StartsWith("/ACCOUNT/ERROR") && !Request.Url.AbsolutePath.ToUpper().StartsWith("/ACCOUNT/ERROR") &&
!Request.Url.AbsolutePath.ToUpper().StartsWith("/COURSE/SMARTSEARCHRESULT") &&
!Request.Url.AbsolutePath.ToUpper().StartsWith("/ACCOUNT/DORMANTCANCEL") &&
Request.Url.AbsolutePath.ToUpper() != "/ACCOUNT/ADMINEE") Request.Url.AbsolutePath.ToUpper() != "/ACCOUNT/ADMINEE")
{ {
filterContext.Result = new RedirectResult("/Account/Error"); filterContext.Result = new RedirectResult("/Account/Error");
@ -141,6 +144,8 @@ namespace NP.FO.Controllers
!Request.Url.AbsolutePath.ToUpper().StartsWith("/HOME/POPUP") && !Request.Url.AbsolutePath.ToUpper().StartsWith("/HOME/POPUP") &&
!Request.Url.AbsolutePath.ToUpper().StartsWith("/ACCOUNT/ERROR") && !Request.Url.AbsolutePath.ToUpper().StartsWith("/ACCOUNT/ERROR") &&
!Request.Url.AbsolutePath.ToUpper().StartsWith("/ACCOUNT/CERTOK3") && !Request.Url.AbsolutePath.ToUpper().StartsWith("/ACCOUNT/CERTOK3") &&
!Request.Url.AbsolutePath.ToUpper().StartsWith("/COURSE/SMARTSEARCHRESULT") &&
!Request.Url.AbsolutePath.ToUpper().StartsWith("/ACCOUNT/DORMANTCANCEL") &&
Request.Url.AbsolutePath.ToUpper() != "/ACCOUNT/ADMINEE") Request.Url.AbsolutePath.ToUpper() != "/ACCOUNT/ADMINEE")
{ {
filterContext.Result = new RedirectResult("/Account/Error"); filterContext.Result = new RedirectResult("/Account/Error");

View File

@ -742,6 +742,7 @@
<Content Include="Views\Course\ApplyPay.cshtml" /> <Content Include="Views\Course\ApplyPay.cshtml" />
<Content Include="Views\Account\CertOk3IPIN2.cshtml" /> <Content Include="Views\Account\CertOk3IPIN2.cshtml" />
<Content Include="Views\Account\CertOk3MOBI2.cshtml" /> <Content Include="Views\Account\CertOk3MOBI2.cshtml" />
<Content Include="Views\Course\SmartSearchResult.cshtml" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ProjectReference Include="..\Base\Base.csproj"> <ProjectReference Include="..\Base\Base.csproj">

View File

@ -107,14 +107,29 @@
else if (capResult.msg == "-2") { // 비밀번호 변경 90일 경과 else if (capResult.msg == "-2") { // 비밀번호 변경 90일 경과
$("#mform").attr("action", "/Account/Pwchange"); $("#mform").attr("action", "/Account/Pwchange");
if ('@(Model.ru??"")' != "") { if ('@(Model.ru??"")' != "") {
$("#mform").attr("action", "@Model.ru".replace(/-/gi, '&')); @if(ViewBag.smartsearchRslt)
{
@:$("#mform").attr("action", "/Account/Pwchange?ru=@(Model.ru)");
}
else
{
@:$("#mform").attr("action", "/Account/Pwchange?ru=@(Model.ru)".replace(/-/gi, '&'));
}
} }
submit(); submit();
} }
else if (capResult.msg == "-3") { // 휴면해제안내 else if (capResult.msg == "-3") { // 휴면해제안내
$("#mform").attr("action", "/Account/DormantCancel"); $("#mform").attr("action", "/Account/DormantCancel");
if ('@(Model.ru??"")' != "") { if ('@(Model.ru??"")' != "") {
$("#mform").attr("action", "@Model.ru".replace(/-/gi, '&')); @if(ViewBag.smartsearchRslt)
{
@:$("#mform").attr("action", "/Account/DormantCancel?ru=@(Model.ru)");
}
else
{
@:$("#mform").attr("action", "/Account/DormantCancel?ru=@(Model.ru)".replace(/-/gi, '&'));
}
} }
submit(); submit();
} }

View File

@ -54,7 +54,12 @@
function cbsave() { function cbsave() {
if (capResult.code == 1000) { if (capResult.code == 1000) {
bglayer(true); bglayer(true);
location.href = '/'; if ('@(Model.ru??"")' != "") {
location.href = "@(Model.ru)".replace(/-/gi, '&');
}
else {
location.href = '/';
}
} }
else { else {
msgadmin(); msgadmin();

View File

@ -25,7 +25,7 @@
@if (d.dtype == 1 && ViewBag.exCheck == false) @if (d.dtype == 1 && ViewBag.exCheck == false)
{ {
<td> <td>
<a href="#" onclick="msg('24년 8월 1일 부터 건설기술진흥법 변경으로 <br>집체교육 당일 교육장에서 시험평가가 진행됩니다.')" <a href="#" 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> 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>
} }

View File

@ -420,7 +420,7 @@
var day = ('0' + today.getDate()).slice(-2); var day = ('0' + today.getDate()).slice(-2);
var dateNumber = parseFloat(year + month + day); var dateNumber = parseFloat(year + month + day);
if (dateNumber > @(System.Web.Configuration.WebConfigurationManager.AppSettings["2024ExDate2"])) { if (dateNumber >= @(System.Web.Configuration.WebConfigurationManager.AppSettings["2024ExDate2"])) {
strTmp = "<div style='margin-bottom: 30px;font-weight: bold; font-size: 14pt;border:solid 1px red;width:810px;padding:10px 10px;line-height:27px;'><span style='color:red'>※ 집체교육 참석조건을 만족하신 후 교육종료일(집체교육 참석일)" + strTmp = "<div style='margin-bottom: 30px;font-weight: bold; font-size: 14pt;border:solid 1px red;width:810px;padding:10px 10px;line-height:27px;'><span style='color:red'>※ 집체교육 참석조건을 만족하신 후 교육종료일(집체교육 참석일)" +
"에 집체교육 7시간을 참석하시면 됩니다.</span > <br>" + "에 집체교육 7시간을 참석하시면 됩니다.</span > <br>" +
"<span style=' font-size: 12pt;margin-left:10px;'>- 집체교육 참석 조건 : 동영상강의 진도율 90%이상 / 과제제출<span><br>" + "<span style=' font-size: 12pt;margin-left:10px;'>- 집체교육 참석 조건 : 동영상강의 진도율 90%이상 / 과제제출<span><br>" +
@ -440,6 +440,8 @@
} }
divInfo.append(strTmp); divInfo.append(strTmp);
console.log(JSON.stringify(capResult.obj))
//교육장 만들기 //교육장 만들기
if (capResult.obj.length > 0) { if (capResult.obj.length > 0) {
var studyPlaceTmp = new Array(); var studyPlaceTmp = new Array();
@ -578,6 +580,7 @@
} }
else { else {
spanApplyClass.text("교육신청"); spanApplyClass.text("교육신청");
console.log("교육신청")
aApplyClass.append(spanApplyClass); aApplyClass.append(spanApplyClass);
if (d.quota != 0) { if (d.quota != 0) {
if (d.isselected == 1) { // isselected = (cm.setime('%Y%m%d',학습종료) == cminningscd.estart('%Y%m%d',교육시작) ? 1 : 0) if (d.isselected == 1) { // isselected = (cm.setime('%Y%m%d',학습종료) == cminningscd.estart('%Y%m%d',교육시작) ? 1 : 0)
@ -867,7 +870,11 @@
checkLectCompleteEdu(cmno, "@Model.stringval3", "@Model.stringval4", "@Model.stringval5", $("#pcmno_" + pcmno + "_cgcode").val(), pcmno, "chkLect"); checkLectCompleteEdu(cmno, "@Model.stringval3", "@Model.stringval4", "@Model.stringval5", $("#pcmno_" + pcmno + "_cgcode").val(), pcmno, "chkLect");
} }
else { else {
msg("로그인 후 신청 할 수 있습니다."); //msg("로그인 후 신청 할 수 있습니다.");
let searchRslt = $("#smartSearchForm").serialize()
searchRslt += "&stringval17=" + cmno + "&stringval18=" + pcmno + "&stringval19=" + cmino + "&stringval20=" + cmisno;
searchRslt += "&stringval21=" + $("#pcmno_" + pcmno + "_cgcode").val()
location.href = "/Account/index?" + searchRslt;
return; return;
} }
} }

View File

@ -0,0 +1,201 @@
@model NP.Model.VMCourse
@{
}
<div class="container">
<div id="pageTitle" style="">
<h3>교육신청확인</h3>
</div>
<form id="smartSearchForm" method="post" style="display:none">
<input type="hidden" name="stringval" value="@(Model.stringval)" />
<input type="hidden" name="cmno" id="cmno" value="@(Model.stringval17)" />
<input type="hidden" id="cmino" name="CM.cmino" value="@Model.stringval19" />
<input type="hidden" id="cmisno" name="CM.cmisno" value="@Model.stringval20" />
<input type="hidden" name="scdMonth" id="scdMonth" value="@Model.SelectCMInningscd.eend.Month" />
<ul class="schTab">
<li id="liTab1" class="current" style="font-size:16pt;"><a href="#">건설기술진흥법교육</a></li>
<li id="liTab2" style="font-size:16pt;display:none;"><a href="#">기타교육</a></li>
</ul>
<ul class="schCont">
<li>
<select name="stringval2" id="stringval2">
@*<option value="0" @(Model.stringval2 == "0" ? "selected" : "")>온라인교육</option>*@
<option value="1" @(Model.stringval2 == "1" ? "selected" : "")>교육장교육</option>
<option value="2" @(Model.stringval2 == "2" ? "selected" : "")>온라인교육</option>
</select>
</li>
<li>
@*typeman는 데이터가 model.comcodes2임, 수정시 주의할것*@
@Html.DropDownListFor(x => x.stringval3, new SelectList(Model.ComCodes2, "ccode", "cname"), "-선택-")
</li>
<li>
@*typeedu는 데이터가 model.comcodes3임, 수정시 주의할것*@
@Html.DropDownListFor(x => x.stringval4, new SelectList(Model.ComCodes3, "ccode", "cname"), "-선택-")
</li>
<li>
@*typegrade는 데이터가 model.comcodes4임, 수정시 주의할것*@
@Html.DropDownListFor(x => x.stringval5, new SelectList(Model.ComCodes4, "ccode", "cname"), "-선택-")
</li>
<li>
@Html.DropDownListFor(x => x.stringval6, new SelectList(Model.ComCodes5, "ccode", "cname"), "-선택-")
</li>
<li>
@Html.DropDownListFor(x => x.stringval7, new SelectList(Model.ComCodes6, "ccode", "cname"), "-선택-")
</li>
<li><a href="#" id="btnSearch">검색</a></li>
</ul>
</form>
@{
bool lectAbleChk = (ViewBag.rslt == 0 && Model.intval == 0) ? true : false;
}
<div id="history" method="post">
@if (!lectAbleChk)
{
if (Model.intval > 0)
{
<p class="subTxt">
<strong>
이미 동일한 내용의 교육을 신청, 수강 또는 수료한 과정입니다.
<br>
아래 [뒤로가기] 버튼을 클릭하여 검색결과 화면으로 이동 후 다른 교육으로 신청하여 주시기 바랍니다.
</strong>
</p>
}
else
{
<p class="subTxt">
<strong>
이 교육은 아래의 사유 중 하나에 해당되어 신청되지 않는 교육입니다.
<br>
<span style="color:red;padding-left:20px">
- 선택한 교육목적으로 인정되지 않는 경우
</span>
<br />
<span style="color:red;padding-left:20px">
- 이미 신청 또는 수료한 교육과 함께 수료하면 인정이 되지 않는 경우
</span>
<br />
아래 [뒤로가기] 버튼을 클릭하여 검색결과 화면으로 이동 후 다른 교육으로 신청하여 주시기 바랍니다.<br />
문의 : 1544 - 7660
</strong>
</p>
}
}
@{
string typeman = Model.ComCodes2.Where(c => c.value == Model.stringval3).First().cname;
string edu = Model.ComCodes3.Where(c => c.value == Model.stringval4).First().cname;
string grade = Model.ComCodes4.Where(c => c.value == Model.stringval5).First().cname;
string typejob = Model.ComCodes5.Where(c => c.value == Model.stringval6).First().cname;
string typejobItem = Model.ComCodes6.Where(c => c.value == Model.stringval7).First().cname;
}
<table class="subTable">
<colgroup>
<col width="20%" />
<col width="*" />
</colgroup>
<tbody>
<tr>
<th>교육유형</th>
<td>@(Model.stringval2 == "1" ? "교육장교육" : "온라인교육")</td>
</tr>
<tr>
<th>기술인분류</th>
<td>@typeman</td>
</tr>
<tr>
<th>교육목적</th>
<td>@edu</td>
</tr>
<tr>
<th>등급</th>
<td>@grade</td>
</tr>
<tr>
<th>직무분야</th>
<td>@typejob</td>
</tr>
<tr>
<th>전문분야</th>
<td>@typejobItem</td>
</tr>
<tr>
<th>과정명</th>
<td>
@Model.CM.cname @Model.CM.cmno
</td>
</tr>
<tr>
<th>
교육종료일<br />(집체교육 참석일)
</th>
<td>
@string.Format("{0:yyyy년 MM월 dd일}", Model.SelectCMInningscd.eend)
</td>
</tr>
<tr>
<th>교육일정</th>
<td>
@string.Format("{0:yyyy년 MM월 dd일}", DateTime.Now) ~
@string.Format("{0:yyyy년 MM월 dd일}", Model.SelectCMInningscd.eend)
</td>
</tr>
</tbody>
</table>
<ul class="clsBtn society">
@if (lectAbleChk)
{
<li><a href="#" onclick="goApplyEdu()" id="btnback">수강신청</a></li>
}
<li><a href="/Course/SmartSearch?stringval=@(Model.stringval)&stringval2=@(Model.stringval2)&stringval3=@(Model.stringval3)&stringval4=@(Model.stringval4)&stringval5=@(Model.stringval5)&stringval6=@(Model.stringval6)&stringval7=@(Model.stringval7)" id="btnback" style="background-color: #fff;border: solid 1px #0047a7;color:#0047a7;">뒤로가기</a></li>
</ul>
</div>
<style>
#history {
width: 100%;
max-width: 700px;
margin: 0 auto;
}
#history .subTable {
margin-top: 40px;
}
#history .subTable td {
text-align: left;
}
</style>
<script type="text/javascript">
$(document).ready(function () {
$("#btnagree").on("click", function () {
if ($('input:checkbox[id="agree"]').is(":checked")) {
$("#historyForm").attr("action", "/Course/ApplyPay");
$("#historyForm").submit();
} else {
msg("신청 내용 확인 후 동의를 체크해주세요.");
return false;
}
});
$("#btnback").on("click", function () {
$("#historyForm").attr("action", "/Course/ApplyEdu");
$("#historyForm").submit();
});
});
@if (lectAbleChk)
{
@:function goApplyEdu()
@:{
@:$("#smartSearchForm").attr("action", "/Course/ApplyEdu").submit();
@:}
}
</script>
</div>

View File

@ -304,10 +304,11 @@
}) })
$(".msBtn").click(function () { $(".msBtn").click(function () {
if (@ViewBag.SSUserNo <= 0) { @*// // 2024.08.07 로그인제한 해제
if (@ViewBag.SSUserNo <= 0) {
msg("로그인 후 진행 할 수 있습니다.", null, null, null, "location.href='" + '/Account/Index' + "'"); msg("로그인 후 진행 할 수 있습니다.", null, null, null, "location.href='" + '/Account/Index' + "'");
return; return;
} }*@
if ($("#liTab1").hasClass("current")) { if ($("#liTab1").hasClass("current")) {
$("#stringval").val("0"); $("#stringval").val("0");
} }
@ -445,7 +446,7 @@
$("#liedu4").hide() $("#liedu4").hide()
$("#lijob57").hide() $("#lijob57").hide()
@if(DateTime.Now > DateTime.Parse("2030-01-02 00:00")) // ### ty 2024년 추가건 @if(DateTime.Now > DateTime.Parse("2030-01-02 00:00")) // ### ty 2024년 추가건
{ {
@:if (num => 2) { @:if (num => 2) {

View File

@ -104,10 +104,9 @@
<add key="Popbill.TaxinvoiceService.UseStaticIP" value="false" /> <add key="Popbill.TaxinvoiceService.UseStaticIP" value="false" />
<!--로컬서버 시간 사용 여부 true-사용, false-미사용, 기본값(false)--> <!--로컬서버 시간 사용 여부 true-사용, false-미사용, 기본값(false)-->
<add key="Popbill.TaxinvoiceService.UseLocalTimeYN" value="false" /> <add key="Popbill.TaxinvoiceService.UseLocalTimeYN" value="false" />
<!--<add key="2024ExDate" value="2024-08-03 00:00:00"/>-->
<add key="2024ExDate" value="2024-07-30 00:00:00"/>
<!--<add key="2024ExDate2" value="20240802"/>--> <!--<add key="2024ExDate2" value="20240802"/>-->
<add key="2024ExDate2" value="20240729"/> <add key="2024ExDate2" value="20291231"/>
<!--해당건 추후 적용으로 일단 2029년12월31일로 셋팅함-->
</appSettings> </appSettings>
<!-- to see logging output in the attached debugger --> <!-- to see logging output in the attached debugger -->
<common> <common>