<단순작업>
1. 개발용으로 단순변경 2. 마이페이지(교육일정변경), 마이페이지(교육종료일이지난온라인강의입장), 관리자(집합교육출석)
This commit is contained in:
parent
7663e1aa7b
commit
ed9933718d
|
|
@ -511,8 +511,17 @@ namespace NP.BO.Controllers
|
|||
ht.Add("edate", vm.stringval);
|
||||
ht.Add("cname", vm.stringval2);
|
||||
ht.Add("studyplace", vm.stringval3);
|
||||
ht.Add("stringval17", vm.stringval17);
|
||||
vm.Lects = Dao.Get<Lect>("lect.lectinnings.forattscd", ht);
|
||||
vm.pagetotalcount = GetCount(vm.Lects.FirstOrDefault());
|
||||
if (vm.intval2 == 1)
|
||||
{
|
||||
return ExportExcel(
|
||||
new String[] { "No", "운영기수", "교육장", "과정명", "교육생(ID)", "교육시작일", "교육종료일", "출석일", "집합교육출석여부", "수료여부" },
|
||||
new String[] { "rnorvt", "sseqstr", "studyplacename", "cname", "usernameid", "sdatestr", "edatestr", "stimestr", "istatusname", "iscompletename" },
|
||||
vm.Lects,
|
||||
"attscds_" + DateTime.Now.Year + DateTime.Now.Month + DateTime.Now.Day);
|
||||
}
|
||||
return View(vm);
|
||||
}
|
||||
public ActionResult grades(NP.Model.VMCM vm)
|
||||
|
|
|
|||
|
|
@ -53,11 +53,14 @@
|
|||
</div>
|
||||
<br />
|
||||
<section class="panel panel-default">
|
||||
@Html.HiddenFor(m => m.intval2)
|
||||
<div style="padding:5px 10px; text-align:right;">
|
||||
@Html.Partial("./Partial/Select", null, new ViewDataDictionary { { "onchange", "submit()" }, { "name", "stringval17" }, { "selected", Model.stringval17 }, { "valuetext", ":출석여부;0:미입력;2:출석" } })
|
||||
@Html.Partial("./Partial/pagerow", new ViewDataDictionary { { "tbodyid", "tbody1" }, { "searchmethod", "submit()" }, { "pagesize", Model.pagerowcount } })
|
||||
<a href="#" class="btn btn-primary" onclick="save(2);">출석처리</a>
|
||||
<a href="#" class="btn btn-primary" onclick="save(2);" style=" text-align:right">출석처리</a>
|
||||
<a href="#" class="btn btn-danger" onclick="save(0);">결석처리</a>
|
||||
<a href="#" class="btn btn-danger" onclick="save(-1);">미입력처리</a>
|
||||
<a href="#" class="btn btn-primary" onclick="excldown();">엑셀 다운로드</a>
|
||||
</div>
|
||||
<div class="table-responsive" id="excel1">
|
||||
<table class="table table-striped b-t b-light">
|
||||
|
|
@ -65,12 +68,13 @@
|
|||
<tr>
|
||||
<th><input type="checkbox" onclick="javascript: checkall('excel1', this);" /></th>
|
||||
<th width="20">No</th>
|
||||
<th width="30">운영기수</th>
|
||||
<th width="60">운영기수</th>
|
||||
<th>교육장</th>
|
||||
<th>과정명</th>
|
||||
<th>교육생(ID)</th>
|
||||
<th>교육시작일</th>
|
||||
<th>교육종료일</th>
|
||||
<th>출석일</th>
|
||||
<th>집합교육출석여부</th>
|
||||
<th>수료여부</th>
|
||||
</tr>
|
||||
|
|
@ -81,19 +85,12 @@
|
|||
<tr>
|
||||
<td><input type="checkbox" class="autocheck" value="@d.lectno" data-usernameid="@d.usernameid" data-userno="@d.userno" data-cmino="@d.cmino" /></td>
|
||||
<td>@d.rnorvt</td>
|
||||
@if (d.cshape == 2)
|
||||
{
|
||||
<td>@d.sseq</td>
|
||||
}
|
||||
else
|
||||
{
|
||||
<td>-</td>
|
||||
}
|
||||
<td>@d.sseqstr</td>
|
||||
<td>@d.studyplacename</td>
|
||||
<td>@d.cname</td>
|
||||
<td>@d.usernameid</td>
|
||||
<td>@((d.cshape == 0 && d.isrebate == 0 ? d.payoktime : d.sdate).Value.ToShortDateString())</td>
|
||||
@if (d.cshape == 2 )
|
||||
<td>@d.sdatestr </td>
|
||||
@if (d.cshape == 2)
|
||||
{
|
||||
if (d.iscomplete != 1)
|
||||
{
|
||||
|
|
@ -108,6 +105,7 @@
|
|||
{
|
||||
<td>@d.edate.Value.ToShortDateString()</td>
|
||||
}
|
||||
<td>@d.stimestr</td>
|
||||
<td>@d.istatusname</td>
|
||||
@if (!ViewBag.IsSubAdmin96)
|
||||
{
|
||||
|
|
@ -136,21 +134,21 @@
|
|||
<style type="text/css">
|
||||
</style>
|
||||
}
|
||||
@section scriptsHeader{
|
||||
@Html.Partial("./Partial/FileScript")
|
||||
@section scriptsHeader{
|
||||
@Html.Partial("./Partial/FileScript")
|
||||
@Html.Partial("./Partial/ScriptDate")
|
||||
@Html.Partial("./Partial/ScdScript")
|
||||
}
|
||||
@section scripts{
|
||||
@section scripts{
|
||||
<script>
|
||||
var _authtype = 1;
|
||||
var _lectno;
|
||||
function viewcert(lectno) {
|
||||
_lectno = lectno;
|
||||
capp("/acommon/authkey", { authtype: _authtype, jobkey: lectno }, "cbauthkey");
|
||||
}
|
||||
function cbauthkey() {
|
||||
if (capResult.code == 1000) {
|
||||
var _lectno;
|
||||
function viewcert(lectno) {
|
||||
_lectno = lectno;
|
||||
capp("/acommon/authkey", { authtype: _authtype, jobkey: lectno }, "cbauthkey");
|
||||
}
|
||||
function cbauthkey() {
|
||||
if (capResult.code == 1000) {
|
||||
@*var pop = window.open('@ViewBag.fronturl/Open/CertPrint?userno=@ViewBag.SSUserNo&authtype=' + _authtype + '&randkey=' + capResult.obj, "certprint", "width=" + (screen.availWidth) + ", height=" + (screen.availHeight) + ", scrollbars=yes, resizable=yes, status=no, location=no, left=0, top=0");*@
|
||||
var pop = window.open('@ViewBag.reporturl/certification.aspx?lectno='+_lectno, "certprint", "width=" + (screen.availWidth) + ", height=" + (screen.availHeight) + ", scrollbars=yes, resizable=yes, status=no, location=no, left=0, top=0");
|
||||
if (pop == null) {
|
||||
|
|
@ -191,5 +189,9 @@
|
|||
msgf2("저장했습니다.", "submit('mform', 0, true)");
|
||||
} else { msgdev(true); }
|
||||
}
|
||||
function excldown() {
|
||||
$("#intval2").val(1);
|
||||
$("#mform").submit();
|
||||
}
|
||||
</script>
|
||||
}
|
||||
|
|
|
|||
|
|
@ -734,7 +734,7 @@
|
|||
select a.*
|
||||
from (
|
||||
select a.lectno,c.cmino,b.cmno,b.cshape,b.cname,b2.isoffabs
|
||||
,a.isrebate,p.payoktime,a.iscomplete
|
||||
,a.isrebate,p.payoktime,a.iscomplete, a.stime
|
||||
,a.sdate,a.edate
|
||||
,a.cmisno
|
||||
,d.sseq,f.cname studyplacename
|
||||
|
|
@ -756,6 +756,10 @@
|
|||
<isNotNull property="edate">and date_format(a.edate,'%Y%m%d') = date_format(#edate#,'%Y%m%d')</isNotNull>
|
||||
<isNotNull property="cname">and b.cname like concat('%',#cname#,'%')</isNotNull>
|
||||
<isNotNull property="studyplace">and d.studyplace = #studyplace#</isNotNull>
|
||||
<isNotNull property="stringval17">
|
||||
<isEqual property="stringval17" compareValue="0">and g.istatus is null</isEqual>
|
||||
<isEqual property="stringval17" compareValue="2">and g.istatus = 2 </isEqual>
|
||||
</isNotNull>
|
||||
<isNotEmpty property="searchtext">
|
||||
<isEqual property="searchtype" compareValue="usernamestr">and e.username like concat('%',#searchtext#,'%')</isEqual>
|
||||
<isEqual property="searchtype" compareValue="useridstr">and e.userid like concat('%',#searchtext#,'%')</isEqual>
|
||||
|
|
|
|||
|
|
@ -81,15 +81,18 @@
|
|||
<div class="mpgPopWrap">
|
||||
<div class="mpgPopTitle" id="divTitle">
|
||||
<h5></h5>
|
||||
@* <a href='javascript: mpgPopClose();'></a>*@
|
||||
@* <a href='javascript: mpgPopClose();'></a>*@
|
||||
</div>
|
||||
<div class="mpgPopCont">
|
||||
<div id="divScd"></div>
|
||||
|
||||
</div><!-- clsPopCont -->
|
||||
<div class="mpgpopbtn2">
|
||||
<ul class="mpgPopBtn">
|
||||
<li><a href="#" class="bk" onclick="selectScd()">선택완료</a></li>
|
||||
<li><a href="#" onclick="mpgPopClose()">취소</a></li>
|
||||
</ul>
|
||||
</div><!-- clsPopCont -->
|
||||
</div>
|
||||
</div><!-- clsPopWrap -->
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -138,8 +141,8 @@
|
|||
}
|
||||
else if (cshape == 2)
|
||||
{
|
||||
strTmp = "<h5> 교육종료일(수료일자) 변경 </ul>";
|
||||
}
|
||||
strTmp = "<h5> 교육종료일(집체교육 참석일) 변경 </ul>";
|
||||
}
|
||||
strTmp += "<a href='javascript: mpgPopClose();'></a>";
|
||||
@*strTmp = strTmp + "<a href='javascript: mpgPopClose();'></a>";*@
|
||||
divTitle.append(strTmp);
|
||||
|
|
@ -176,15 +179,24 @@
|
|||
++displayCnt;
|
||||
if (d.quota != 0) {
|
||||
if (d.remainPeople <= 0) {
|
||||
if (cshape == 2) {
|
||||
li.append("<label> ※ 이미 <label style='color: red'>집체7시간을 참석하신 분들은</label> 변경한 교육종료일까지 부족한 수료조건을 만족하시면 됩니다. <label style='color: red'>(집체교육 재 참석 없음)</label></label><br><br><br>");
|
||||
}
|
||||
pData.html("<label>" + strStudyPlacename + " <label style='color: red'>[접수마감] </label>" + radioEduDay + " disabled> <span style='color:gray'>" + d.scdInfoSummary + "</span></label>");
|
||||
}
|
||||
else {
|
||||
if (d.isselected == 1) {
|
||||
if (cshape == 2) {
|
||||
li.append("<label> ※ 이미 <label style='color: red'>집체7시간을 참석하신 분들은</label> 변경한 교육종료일까지 부족한 수료조건을 만족하시면 됩니다. <label style='color: red'>(집체교육 재 참석 없음)</label></label><br><br><br>");
|
||||
}
|
||||
//spanApplyClass.text("수강신청");
|
||||
//aApplyClass.append(spanApplyClass);
|
||||
pData.html("<label>" + strStudyPlacename + " <label style='color: red'>[접수중] </label>" + radioEduDay + " checked> " + d.scdInfoSummary + "<label style='color: red;display:none;'> (" + d.remainPeople + "명 남음)</label></label>");
|
||||
}
|
||||
else {
|
||||
if (cshape == 2) {
|
||||
li.append("<label> ※ 이미 <label style='color: red'>집체7시간을 참석하신 분들은</label> 변경한 교육종료일까지 부족한 수료조건을 만족하시면 됩니다. <label style='color: red'>(집체교육 재 참석 없음)</label></label><br><br><br>");
|
||||
}
|
||||
//spanApplyClass.text("수강신청");
|
||||
//aApplyClass.append(spanApplyClass);
|
||||
pData.html("<label>" + strStudyPlacename + " <label style='color: red'>[접수중] </label>" + radioEduDay + "'> " + d.scdInfoSummary + "<label style='color: red;display:none;'> (" + d.remainPeople + "명 남음)</label> " + "</label>");
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
@RenderSection("styles", required: false)
|
||||
@Html.Partial("./Partial/JS")
|
||||
@RenderSection("scriptsHeader", required: false)
|
||||
<script type="text/javascript" src="/js/mypage.js?ver=22121301"></script>
|
||||
<script type="text/javascript" src="/js/mypage.js?ver=22122101"></script>
|
||||
</head>
|
||||
<body id="mainbody">
|
||||
@{
|
||||
|
|
|
|||
|
|
@ -415,7 +415,7 @@
|
|||
.mpgPop {position:fixed; top:0; left:0; right:0; bottom:0; background:rgba(0,0,0,0.7); z-index:100;}
|
||||
.mpgPop > div {display:table; width:100%; height:100%;}
|
||||
.mpgPop > div > div {display:table-cell; width:100%; vertical-align:middle;}
|
||||
.mpgPopWrap {width:100%;max-width:500px; max-height:100%; margin:0 auto; background:#fff; position:relative;}
|
||||
.mpgPopWrap {width: 100%;height: 100%;max-width: 600px;max-height: 450px;margin: 0 auto;background: #fff;position: relative;}
|
||||
.mpgPopWrap.wdth430 {max-width:430px;}
|
||||
.mpgPopWrap.wdth580 {max-width:580px;}
|
||||
.mpgPopWrap.wdth650 {max-width:650px;}
|
||||
|
|
|
|||
|
|
@ -57,13 +57,13 @@ $(document).ready(function () {
|
|||
$('#mpgtmbBtn').removeClass('on');
|
||||
$('html, body').removeClass('lock');
|
||||
});
|
||||
|
||||
//2022083 교육유형별로 처리
|
||||
$(".gocroom").on("click", function () {
|
||||
var href = $(this).data("href") || this.href;
|
||||
var complete = $(this).data("complete");
|
||||
var cshape = $(this).data("cshape");
|
||||
|
||||
if (complete != undefined && complete == 0)
|
||||
if (complete != undefined && complete == 0 && cshape==2)
|
||||
{
|
||||
/*
|
||||
msg("해당 과정은 <span style='color:red;'>미 수료 상태 입니다.</span></br>" +
|
||||
|
|
@ -74,18 +74,26 @@ $(document).ready(function () {
|
|||
*/
|
||||
$("#bglayer, #layermessage").show();
|
||||
|
||||
let msg = '<div>해당 과정은 <span style="color:red;">미수료 상태입니다.</span><br>교육일정변경 메뉴에서 <span style="">교육일정을 변경 해주세요.</span><br><br>'
|
||||
/*let msg = '<div>해당 과정은 <span style="color:red;">미수료 상태입니다.</span><br>교육일정변경 메뉴에서 <span style="">교육일정을 변경 해주세요.</span><br><br>'
|
||||
msg += '<span style="color:red;">단, 수료처리일이 지나지 않은 분들은 잠시 기다려주시기 바랍니다.</span><br>'
|
||||
msg += '수료처리일 : 교육종료일 다음날 오후 3시 이후 (평일기준)<br><br>※ 미 수료 상태로 교육시작일 이후 <span style="color:red;">1년 경과 시 교육이 취소되어 일정변경이 불가합니다.</span>'
|
||||
msg += '<br>※ 확인 클릭 시 교육일정변경 메뉴로 이동합니다.</div>'
|
||||
msg += '<div><a href="#" class="mainokbutton" onclick="javascript:hidelayermsg();" style="display: inline-block;margin: 20px 5px 0 5px;">취소</a>'
|
||||
msg += '<a href="#" class="mainokbutton" onclick="javascript:location.href=\'/My/LectureOn\';" style="display: inline-block;margin: 20px 5px 0 5px;">확인</a></div>'
|
||||
msg += '<a href="#" class="mainokbutton" onclick="javascript:location.href=\'/My/LectureOn\';" style="display: inline-block;margin: 20px 5px 0 5px;">확인</a></div>'*/
|
||||
|
||||
let msg = '<div><span style="font-size:25px">해당 과정은 <span style="color:red;">교육종료일</span>이 지난 과정입니다.</span><br><br><br>'
|
||||
msg += '- 수료조건을 만족한 경우 : 수료처리 중이므로 잠시 기다려 주시기 바랍니다.<br>'
|
||||
msg += '※ <span style="color:red;">매주 월요일 마다</span> 수료처리가 진행됩니다. (평일기준)<br><br>'
|
||||
msg += '- 수료조건을 만족하지 않은 경우 : 교육일정변경 메뉴에서 <span style="color:red;">일정변경 후 </span> 수강해 주세요.<br><br>'
|
||||
msg += '※ 미 수료 상태로 교육시작일 이후 <span style="color:red;">1년 경과 시 교육이 취소되어 일정변경이 불가합니다.</span><br><br>'
|
||||
//msg += '<a href="#" class="mainokbutton" onclick="javascript:hidelayermsg();" style="display: inline-block;margin: 20px 5px 0 5px;">확인</a></div>'
|
||||
msg += '<a href="' + href + '" class="mainokbutton" style="display: inline-block;margin: 20px 5px 0 5px;">확인</a></div>'
|
||||
|
||||
$("#layermessage").html(msg)
|
||||
return false;
|
||||
}
|
||||
if (href != undefined && href != null && href.toLowerCase().indexOf("croom/index?croomlectno=") != -1) {
|
||||
var cshape = $(this).data("cshape");
|
||||
|
||||
if (cshape != undefined && cshape == 1) {
|
||||
msg("해당 과정은 <span style='color: red;'>교육장에 직접 오셔서 수강</span>하는 과정 입니다.</br>" +
|
||||
"교육기간을 확인하시고 시작일에 해당 교육장으로 입교 부탁 드립니다.");
|
||||
|
|
|
|||
|
|
@ -1117,6 +1117,10 @@ namespace NP.Model
|
|||
public int cut { get; set; }
|
||||
public DateTime payoktime { get; set; }
|
||||
public DateTime? stime { get; set; }
|
||||
public String stimestr
|
||||
{
|
||||
get { return stime != null && istatus == 2? Convert.ToDateTime(stime).ToShortDateString() : "-"; }
|
||||
}
|
||||
public DateTime? etime { get; set; }
|
||||
public DateTime? sdate { get; set; }
|
||||
public String sdateymd
|
||||
|
|
@ -1324,6 +1328,7 @@ namespace NP.Model
|
|||
public int statecode { get; set; }
|
||||
public DateTime paycdt { get; set; }
|
||||
public int sseq { get; set; }
|
||||
public String sseqstr { get { return cshape == 2 ? sseq.ToString() : "-"; } }
|
||||
public String sseqname
|
||||
{
|
||||
get
|
||||
|
|
|
|||
Loading…
Reference in New Issue