YNICTE/FO/Views/My/Lecture.cshtml

319 lines
14 KiB
Plaintext
Raw Normal View History

2020-10-12 14:39:23 +09:00
@model NP.Model.VMMy
@{
}
2020-11-10 16:33:06 +09:00
<style>
.lctQr {
}
.lctQr > span {
color: black;
cursor: pointer;
font-size: 14pt;
2020-11-10 16:33:06 +09:00
}
.lctQr span.current {
color: blue;
}
.guidepoint{
color:red;
}
2020-11-10 16:33:06 +09:00
</style>
2020-10-12 14:39:23 +09:00
<div class="mpgInfo">
<ul>
<li style="font-weight:bold;"> - 2021년 7월 이후 과정 중 <span class="guidepoint">수강이 확정 된 과정</span>을 확인할 수 있습니다.</li>
<li style="font-weight:bold;"> - 2021년 7월 이전 교육과정의 수료증 출력은 <span class="guidepoint">증빙서류출력 메뉴의 이전과정 탭</span>에서 가능합니다.</li>
<li style="font-weight:bold;"> - 결제완료 된 교육을 취소 하실 경우 <span class="guidepoint">결제관리 메뉴에서 환불요청을</span> 해주셔야 합니다.</li>
<li style="font-weight:bold;"> - 교육장교육은 <span class="guidepoint">교육기간 시작일에 교육장으로 입교</span>하시면 됩니다.</li>
<li style="font-weight:bold;"> - 온라인교육은 해당과정 클릭 시 강의장으로 이동되며 <span class="guidepoint">강의 시청이 바로 가능합니다.</span></li>
</ul>
2020-12-30 11:11:52 +09:00
</div>
2020-10-12 14:39:23 +09:00
<div class="lctQr">
2020-11-10 16:33:06 +09:00
@*<p><input type="checkbox" name="intval" @(Model.intval == 1 ? "checked":"") id="lctQrChk"/><label for="lctQrChk">보수교육만 조회</label></p>*@
<span class="@(string.IsNullOrEmpty(Model.stringval)? "current" : "" )" id="lblAll">전체</span>&nbsp;|&nbsp;
<span class="@(Model.stringval == "1"? "current" : "" )" id="lblOff">교육장교육</span>&nbsp;|&nbsp;
2021-06-03 10:43:16 +09:00
<span class="@(Model.stringval == "2"? "current" : "" )" id="lblMix">온라인교육</span>&nbsp;|&nbsp;
@*<span class="@(Model.stringval == "0"? "current" : "" )" id="lblOn">온라인교육</span>*@
2021-06-28 14:32:12 +09:00
@*<ul>
2020-11-10 16:33:06 +09:00
<li><a href="#" onclick="ps()">수료증 최적화 출력방법</a></li>
2021-06-28 14:32:12 +09:00
</ul>*@
2020-10-12 14:39:23 +09:00
</div>
<table class="lctAply">
<thead>
<tr>
<th>강좌명</th>
<td>강의실</td>
<td>수료증</td>
</tr>
</thead>
<tbody>
2022-08-03 16:50:01 +09:00
@foreach (var d in Model.Lects.Where(w => w.rno == 1))
2020-10-12 14:39:23 +09:00
{
<tr>
<th>
2020-11-10 16:33:06 +09:00
<div class="ltaList">
2022-08-03 16:50:01 +09:00
@{
string strComplete = string.Format(" data-cshape={0} ", d.cshape);
if (d.iscomplete != 1 && d.edate < DateTime.Now)
{
strComplete = string.Format(" data-cshape={0} data-complete=0 ", d.cshape);
}
}
<a href="@(d.isgroup == 0 || (d.isgroup == 1 && Model.Lects.Where(w=>w.payno == d.payno && w.userno==ViewBag.SSUserNo).Count() > 0) ? string.Format("/CRoom/Index?croomlectno={0}", d.isgroup == 0 ? d.lectno : Model.Lects.Where(w=>w.payno == d.payno && w.userno==ViewBag.SSUserNo).First().lectno, d.cmno) : "#")" @strComplete class="gocroom">
2020-10-12 14:39:23 +09:00
<h5>
<span class="@(d.cshape == 0 ? "org" : d.cshape == 1 ? "nav_grn" : "nav_blu")">@d.cshapename</span>
@if (d.studyplace == null)
2021-11-03 15:19:08 +09:00
{
<strong style="display:none;">@d.studyplacename 교육장</strong>
} else if(d.studyplace != null){
<strong>@d.studyplacename 교육장</strong>
2021-11-03 15:19:08 +09:00
}
<b>@d.cname (@(d.classno))</b>
</h5>
2020-11-10 16:33:06 +09:00
<dl class="ltaDl">
<dt class="lectstatus">
@d.lectStatus
</dt>
2021-08-23 15:10:15 +09:00
<dt style="color:#888888">
교육기간 : @(string.Format("{0} ~ {1}", d.sdate.Value.ToString("yyyy년 MM월 dd일") , d.edate.Value.ToString("yyyy년 MM월 dd일")))
2021-08-23 15:10:15 +09:00
</dt>
@if (d.cshape != 1) {
<dd style="color:red;">교육종료일 : @(string.Format("{0}", d.estart.ToString("yyyy년 MM월 dd일")))</dd>
<dt></dt>
}
<dt>@d.studytime 시간과정</dt>
@Html.Raw(d.isrebate == 1 ? "<span class=\"red\" style='vertical-align: middle;'>환급과정</span>" : "<span class=\"red\" style='vertical-align: middle'>비환급과정</span>")
2020-11-10 16:33:06 +09:00
</dl>
</a>
2020-11-10 16:33:06 +09:00
</div>
2020-10-12 14:39:23 +09:00
</th>
<td class="ltaBtn" data-th="강의실 : ">
@if (d.cshape == 1)
2020-10-12 14:39:23 +09:00
{
2022-08-03 16:50:01 +09:00
<a href="/CRoom/Index?croomlectno=@d.lectno" data-cshape=@d.cshape class="gocroom">-</a>
2020-10-12 14:39:23 +09:00
}
else if (Model.Lects.Where(w => w.payno == d.payno && w.userno == ViewBag.SSUserNo).Count() > 0)
{
<a href="/CRoom/Index?croomlectno=@(Model.Lects.Where(w => w.payno == d.payno && w.userno == ViewBag.SSUserNo).First().lectno)&cmno=@d.cmno" data-cshape=@d.cshape @strComplete class="gocroom" style="border: solid 1px #238dfa; color: #238dfa; width:55px; height:42px; line-height:2; font-size:20px;">입장</a>
2020-10-12 14:39:23 +09:00
}
else
{
@:-
}
</td>
<td class="ltaBtn" data-th="수료증 : ">
@if (d.isgroup == 0)
{
if (d.iscomplete == 1)
{
2020-11-20 17:48:47 +09:00
@*<dl><dd class="blu"><a href="#" onclick="pc(@d.lectno,@d.userno)">수료</a></dd></dl>*@
<dl><dd class="blu"><a href="#" onclick="javascript: certification(@(d.lectno));">출력</a></dd></dl>
2020-10-12 14:39:23 +09:00
}
else
{
<span>-</span>
}
}
else
{
<span class="ltaOpen" ltaOpen="02" data-payno="@d.payno">@(Model.Lects.Where(w=>w.payno == d.payno).Count())명</span>
}
</td>
</tr>
if (d.isgroup == 1)
{
<tr class="ltaDown ltaDown01 payno@(d.payno)">
<th colspan="2">
<div class="ltaDesc">
<ul>
@foreach (var u in Model.Lects.Where(w => w.payno == d.payno))
{
<li><b>@u.username @u.ccpositionname (@u.asname)</b> @u.emailhide</li>
}
</ul>
</div>
</th>
<td class="ltaBtn ltaDesc" data-th="수료증 : ">
<dl>
@foreach (var u in Model.Lects.Where(w => w.payno == d.payno))
{
if (u.iscomplete == 1)
{
@*<dd class="blu"><a href="#" onclick="pc(@(u.userno == ViewBag.SSUserNo? u.lectno : 0))">수료</a></dd>*@
2020-11-20 17:48:47 +09:00
<dd class="blu"><a href="#" onclick="javascript: certification(@(d.lectno))">수료</a></dd>
2020-10-12 14:39:23 +09:00
}
else
{
<dd class="bk"><a href="#" style="cursor: default">미수료</a></dd>
}
}
</dl>
</td>
</tr>
}
}
</tbody>
</table>
@if (Model.Lects.Count() < 1)
{
<div style="text-align: center; padding: 20px;">- 수강중인 강좌가 없습니다.</div>
}
<form id="mform" method="post" action="">
2020-11-10 16:33:06 +09:00
@Html.HiddenFor(m => m.intval)
@Html.HiddenFor(m => m.stringval)
2020-10-12 14:39:23 +09:00
</form>
2020-11-11 16:26:18 +09:00
<div class="mpgPop" style="display: none" id="popScd">
2020-10-12 14:39:23 +09:00
<div>
<div>
<div class="mpgPopWrap">
<div class="mpgPopTitle">
2020-11-11 16:26:18 +09:00
<h5>교육일정선택</h5>
2020-10-12 14:39:23 +09:00
<a href="javascript:mpgPopClose();"></a>
</div>
<div class="mpgPopCont">
2020-11-11 16:26:18 +09:00
<ul id="ulScd"></ul>
2020-10-12 14:39:23 +09:00
<ul class="mpgPopBtn">
2020-11-11 16:26:18 +09:00
<li><a href="#" class="bk" onclick="selectScd()">선택완료</a></li>
2020-10-12 14:39:23 +09:00
<li><a href="#" onclick="mpgPopClose()">취소</a></li>
</ul>
</div><!-- clsPopCont -->
</div><!-- clsPopWrap -->
</div>
</div>
</div>
@section scriptsHeader{
}
@section scripts{
2020-11-20 17:48:47 +09:00
<script>
2020-11-11 16:26:18 +09:00
var vLectno;
$(document).ready(function () {
$(".lctQr > span").click(function () {
$(".lctQr > span").removeClass("current");
$(this).addClass("current");
var id = $(this).attr("id");
if (id == "lblAll") { $("#stringval").val(null) }
if (id == "lblOff") { $("#stringval").val("1") }
if (id == "lblMix") { $("#stringval").val("2") }
if (id == "lblOn") { $("#stringval").val("0") }
submit();
});
$("#lctQrChk").on("change", function () {
setv("intval", 0);
if ($(this).prop("checked")) {
setv("intval", 1);
}
submit();
});
$('.ltaOpen').click(function () {
var atdNum = $(this).attr('ltaOpen');
if ($(this).is('.on')) {
$("tr.payno" + $(this).attr("data-payno")).removeClass("on");
$(this).removeClass('on');
} else {
$("tr.payno" + $(this).attr("data-payno")).addClass("on");
$(this).addClass('on');
}
});
});
function pc(lectno,userno) {
if (lectno < 1) {
msg('본인의 수료증만 확인할 수 있습니다.');
} else {
window.open("/My/CertPrint?lectno=" + lectno+"&intval="+userno, "certprint", "width=" + (screen.availWidth) + ", height=" + (screen.availHeight) + ", scrollbars=yes, resizable=yes, status=no, location=no, left=0, top=0");
}
}
function ps() {
window.open("/My/CertSet");
}
function openScd(cmno, lectno) {
vLectno = lectno
$(".mpgPop").show();
setScd(cmno);
}
function setScd(cmno) {
2022-08-03 16:50:01 +09:00
capp("/focommon/GetScdForMixEdu", { cmno: cmno, lectno: vLectno}, "renderScd");
2020-11-11 16:26:18 +09:00
}
function renderScd() {
var ulScd = $("#ulScd");
ulScd.empty();
2021-08-23 15:10:15 +09:00
//var seq = 0;
2020-11-20 17:48:47 +09:00
2020-11-11 16:26:18 +09:00
$.each(capResult.obj, function (i, d) {
var li = $("<li />");
if (d.isEnd == true) {
li.append("<input type='radio' name='rdoScds' value='" + d.cmisno + "' disabled> <span style='color:gray'>" + d.scdInfoSummary + "</span><label style='color: red'> (종료)</label>");
}
else {
2020-12-11 16:56:16 +09:00
if (d.quota != 0) {
if (d.remainPeople <= 0) {
li.append("<input type='radio' name='rdoScds' value='" + d.cmisno + "' disabled> <span style='color:gray'>" + d.scdInfoSummary + "</span><label style='color: red'> (마감)</label>");
}
else {
2021-08-23 15:10:15 +09:00
if (d.isselected == 1) {
li.append("<input type='radio' name='rdoScds' value='" + d.cmisno + "' checked> " + d.scdInfoSummary + "<label style='color: red;display:none;'> (" + d.remainPeople + "명 남음)</label>");
2021-08-23 15:10:15 +09:00
} else {
li.append("<input type='radio' name='rdoScds' value='" + d.cmisno + "'> " + d.scdInfoSummary + "<label style='color: red;display:none;'> (" + d.remainPeople + "명 남음)</label>");
2020-12-11 16:56:16 +09:00
}
2021-08-23 15:10:15 +09:00
//if (seq == 0) {
// li.append("<input type='radio' name='rdoScds' value='" + d.cmisno + "' checked> " + d.scdInfoSummary + "<label style='color: red;display:none;'> (" + d.remainPeople + "명 남음)</label>");
//}
//else {
// li.append("<input type='radio' name='rdoScds' value='" + d.cmisno + "'> " + d.scdInfoSummary + "<label style='color: red;display:none;'> (" + d.remainPeople + "명 남음)</label>");
//}
2020-12-11 16:56:16 +09:00
}
2020-10-12 14:39:23 +09:00
}
2020-11-11 16:26:18 +09:00
else {
2021-08-23 15:10:15 +09:00
if (d.isselected == 1) {
2020-12-11 16:56:16 +09:00
li.append("<input type='radio' name='rdoScds' value='" + d.cmisno + "' checked> " + d.scdInfoSummary + "</label>");
2021-08-23 15:10:15 +09:00
} else {
2020-12-11 16:56:16 +09:00
li.append("<input type='radio' name='rdoScds' value='" + d.cmisno + "'> " + d.scdInfoSummary + "</label>");
2020-11-11 16:26:18 +09:00
}
2021-08-23 15:10:15 +09:00
//if (seq == 0) {
// li.append("<input type='radio' name='rdoScds' value='" + d.cmisno + "' checked> " + d.scdInfoSummary + "</label>");
//}
//else {
// li.append("<input type='radio' name='rdoScds' value='" + d.cmisno + "'> " + d.scdInfoSummary + "</label>");
//}
2020-10-12 14:39:23 +09:00
}
2020-11-11 16:26:18 +09:00
}
2021-08-23 15:10:15 +09:00
//seq++;
2020-11-11 16:26:18 +09:00
ulScd.append(li);
2020-10-12 14:39:23 +09:00
});
2020-11-11 16:26:18 +09:00
}
function selectScd() {
if (confirm("일정을 변경하시겠습니까?")) {
var cmisno = $("input:radio[name=rdoScds]:checked").val();
var lectno = vLectno;
if (cmisno == "" || cmisno == undefined || cmisno == null) {
2020-12-28 15:56:16 +09:00
msg("선택한 일정이 없습니다.");
2020-11-11 16:26:18 +09:00
return;
2020-10-12 14:39:23 +09:00
}
2020-11-11 16:26:18 +09:00
capp("/focommon/UpdateScd", { cmisno: cmisno, lectno: lectno }, "scdSave");
2020-10-12 14:39:23 +09:00
}
2020-11-11 16:26:18 +09:00
}
function scdSave() {
2020-12-28 15:56:16 +09:00
msg(capResult.msg);
2020-11-11 16:26:18 +09:00
if (capResult.code == 1) {
submit();
2020-10-12 14:39:23 +09:00
}
2020-11-11 16:26:18 +09:00
else {
return;
2020-10-12 14:39:23 +09:00
}
2020-11-11 16:26:18 +09:00
}
2020-11-20 17:48:47 +09:00
function certification(lectno) {
if (lectno < 1) {
msg('본인의 수료증만 확인할 수 있습니다.');
}
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) {
msg("팝업이 차단되어 있습니다. 차단을 해제해 주세요.");
}
}
</script>
2020-10-12 14:39:23 +09:00
}