YNICTE/BO/Views/croom/cmstandbylects.cshtml

319 lines
17 KiB
Plaintext

@model NP.Model.VMCM
<form id="mform" method="post" class="form-horizontal">
<section class="panel panel-default" style="border-top: 1px solid #ddd; margin-top: 5px;">
<header class="panel-heading"><strong><i class="fa fa-bars"></i> 기본설정<span class=""></span></strong></header>
<div class="panel-body">
<div class="form-group">
<label class="col-sm-4 col-md-2 control-label">기수 유형 | 강좌명 | 분반</label>
<div class="col-sm-8 col-md-10"><input type="text" class="form-control" disabled value="@(Model.CM.tmname) | @Model.CM.cshapename | @(Model.CM.cname) | @(Model.CM.classno)반" /></div>
</div>
<div class="line line-dashed line-lg pull-in"></div><div class="form-group">
<label class="col-sm-4 col-md-2 control-label">신청기간/교육기간</label>
<div class="col-sm-8 col-md-10">
@(Model.CM.rsrename) / @(Model.CM.sssename) (@(Model.CM.ssseterm)일)
</div>
</div>
<div class="line line-dashed line-lg pull-in"></div><div class="form-group">
<label class="col-sm-4 col-md-2 control-label">제한인원</label>
<div class="col-sm-8 col-md-10">@(Model.CM.quotastr)</div>
</div>
<div class="line line-dashed line-lg pull-in"></div><div class="form-group">
<label class="col-sm-4 col-md-2 control-label">수강인원</label>
<div class="col-sm-8 col-md-10">@(Model.CM.countlect)</div>
</div>
<div class="line line-dashed line-lg pull-in"></div><div class="form-group">
<label class="col-sm-4 col-md-2 control-label">대기인원</label>
<div class="col-sm-8 col-md-10">@(Model.CM.countstandby)</div>
</div>
</div>
</section>
<div>
<ul class="pagination pagination-md" style="margin: 0;">
<li><a href="/croom/cmlects?intval=@(Model.CM.cmno)">신청현황</a></li>
<li class="active"><a href="#">대기현황</a></li>
</ul>
</div>
<section class="panel panel-default" style="border-top: 1px solid #ddd; margin-top: 5px;">
<header class="panel-heading"><strong><i class="fa fa-bars"></i> 신청자 명단<span class=""></span></strong></header>
<div style="padding: 5px 20px; background-color: #fff;">
@Html.Partial("./Partial/Select", null, new ViewDataDictionary { { "valuetext", ":-승인상태;3:대기중;4:수강승인;5:수강취소" }, { "name", "addstringval" }, { "selected", Model.addstringval }, { "onchange", "submit()" } })
@Html.Partial("./Partial/Select", null, new ViewDataDictionary { { "valuetext", ":-결제상태;0:결제대기;1:입금대기;2:완료;3:취소;4:환불신청;5:부분환불;6:전액환불" }, { "name", "addstringval2" }, { "selected", Model.addstringval2 }, { "onchange", "submit()" } })
@Html.Partial("./Partial/Text", Model.addstringval5, Helpers.DicText(new NP.Model.TextDic() { Name = "addstringval5", Value = Model.addstringval5, PH = "ID 또는 이름을 입력하세요.", CssClass = "", Style = "width:250px; display:inline-block;" }))
<a href="#" class="btn btn-default" onclick="submit()" id="btnsearchtext2">검색</a>
<a href="#" class="btn btn-default" onclick="golist()">목록</a>
@if (!ViewBag.IsSubAdmin96)
{
<a href="#" class="btn btn-danger" style="float:right;" onclick="save2(5)">선택취소</a>
<a href="#" class="btn btn-success" style="float:right; margin-right:10px;" onclick="save2(4)">선택승인</a>
<a href="#" class="btn btn-default" style="float:right; margin-right:10px;" onclick="save2(6)">선택대기</a>
}
</div>
<div class="table-responsive" id="excel1">
<table class="table table-striped b-t b-light">
<thead>
<tr>
<th><input type="checkbox" onclick="javascript: checkall('excel1', this);" /></th>
<th width="40">No</th>
<th>고객사</th>
<th>신청자(ID)</th>
<th>교육생</th>
<th>신청일</th>
<th>승인상태</th>
<th>결제상태</th>
<th>환급</th>
</tr>
</thead>
<tbody class="data" id="tbody1">
@foreach (var d in Model.Lects)
{
if (!ViewBag.IsSubAdmin96)
{
<tr>
<td>
@if (d.pstatus == 21 || d.pstatus == 55 || d.pstatus == 52)
{
<input type="checkbox" class="autocheck" value="@d.lectno" data-lectno="@d.lectno" data-emailinfo="@(d.username):@(d.email)" />
}
</td>
<td>@d.rnorvt</td>
<td class="link text-center"><a href="#" onclick="viewas(@d.asno);">@d.asname</a></td>
<td>@(d.cnoname)(@d.cnoid)</td>
<td class="link text-center"><a href="#" onclick="viewlect(this, @d.ustatus, @d.lectno, @d.fileno, '@d.fileurl', '@d.orgname', @d.status, @d.pstatus,'@string.Format("{0}:{1}:{2}:{3}:{4}:{5}:{6}:{7}:{8}:{9}:{10}:{11}:{12}:{13}:{14}:{15}",d.asname,d.username, d.userid??"",d.uduty, d.depart??"", d.email, d.telno, d.mobile,d.ckfcfyear,d.assignuser,d.edus,d.typeman,d.typejob,d.typeedu,d.typegrade,d.pplno)')">@d.username</a></td>
<td>@d.cdtymd</td>
<td>
@(d.pstatusname3)<br />
@(d.pstatusname3 != "대기중" ? "(" + d.oktime.ToString("yyyy-MM-dd HH:mm") + ")" : string.Empty)
</td>
<td class="link text-center"><a href="#" onclick="viewrefund(@d.payno, @d.pstatus, @d.payuserno)">@d.pstatusname</a></td>
@if (d.cshape == 1 && d.isrebate == 1)
{
<td class="link text-center"><a href="#" onclick="viewrefund(@d.payno, 0, @d.payuserno)">@d.isrebatename</a></td>
}
else
{
<td>-</td>
}
</tr>
}
else
{
<tr>
<td>
@if (d.pstatus == 21 || d.pstatus == 55 || d.pstatus == 52)
{
<input type="checkbox" class="autocheck" value="@d.lectno" data-lectno="@d.lectno" data-emailinfo="@(d.username):@(d.email)" />
}
</td>
<td>@d.rnorvt</td>
<td class="link text-center">@d.asname</td>
<td>@(d.cnoname)(@d.cnoid)</td>
<td class="link text-center">@d.username</td>
<td>@d.cdtymd</td>
<td>
@(d.pstatusname3)<br />
@(d.pstatusname3 != "대기중" ? "(" + d.oktime.ToString("yyyy-MM-dd HH:mm") + ")" : string.Empty)
</td>
<td class="link text-center">@d.pstatusname</td>
@if (d.cshape == 1 && d.isrebate == 1)
{
<td class="link text-center">@d.isrebatename</td>
}
else
{
<td>-</td>
}
</tr>
}
}
</tbody>
</table>
</div>
</section>
@Html.Pager((int)Model.pagenum, 10, Model.pagerowcount, Model.pagetotalcount)
@Html.Partial("./Partial/DForm", Model, new ViewDataDictionary { })
</form>
<form id="dform" method="post" action="/croom/lectcms">
@Html.Partial("./Partial/DForm", Model, new ViewDataDictionary { { "preform", 1 } })
</form>
<div id="thisbox" class="findbox draggable regbox" style="width: 500px; z-index: 1041; top: 60px; overflow: auto;">
<h4><i class="fa fa-bars"></i> <span id="pcap">교육생 정보</span><a href="#" class="btn btn-default btn-xs f-r closethisbox">닫기</a></h4>
<table class="regtable">
<colgroup><col style="width:150px;" /><col /></colgroup>
<tr><th>소속</th><td id="asname"></td></tr>
<tr><th>이름(ID)</th><td id="usernameid"></td></tr>
<tr><th>직위</th><td id="positiondepart"></td></tr>
<tr><th>이메일</th><td id="email"></td></tr>
<tr><th>휴대전화번호</th><td id="mobile"></td></tr>
<tr class="trhidebox"><th>대기여부</th><td>@Html.Partial("./Partial/Radio", null, new ViewDataDictionary() { { "valuetext", "3:신청중;4:승인;5:미승인" }, { "checked", 3 }, { "name", "status" } })</td></tr>
<tr>
<th>기술인분류</th>
<td>
<select class="form-control dev" id="selTypeman" name="selTypeman">
@foreach (var t in Model.ComCodes.Where(w => w.cgroup.ToString() == "typeman"))
{
<option value="@t.ccode">@t.cname</option>
}
</select>
</td>
</tr>
<tr>
<th>직무분야</th>
<td>
<select class="form-control dev" id="selTypejob" name="selTypejob">
@foreach (var t in Model.ComCodes.Where(w => w.cgroup.ToString() == "typejob"))
{
<option value="@t.ccode">@t.cname</option>
}
</select>
</td>
</tr>
<tr>
<th>교육목적</th>
<td>
<select class="form-control dev" id="selTypeedu" name="selTypeedu">
@foreach (var t in Model.ComCodes.Where(w => w.cgroup.ToString() == "typeedu"))
{
<option value="@t.ccode">@t.cname</option>
}
</select>
</td>
</tr>
<tr>
<th>등급</th>
<td>
<select class="form-control dev" id="selTypegrade" name="selTypegrade">
@foreach (var t in Model.ComCodes.Where(w => w.cgroup.ToString() == "typegrade"))
{
<option value="@t.ccode">@t.cname</option>
}
</select>
</td>
</tr>
</table>
<div class="findboxbtnbox" id="btnsavelect">
<a href="#" class="btn btn-primary" onclick="save();">대기여부 저장</a>
</div>
<div class="findboxbtnbox" id="btnsavetype">
<a href="#" class="btn btn-primary" onclick="savetype();">교육신청정보 저장</a>
</div>
<input type="hidden" id="hidpplno" />
<br /><br />
</div>
@section scriptsHeader{
@Html.Partial("./Partial/semscript")
}
@section scripts{
<script>
$(document).ready(function () {
$("#addstringval5").on("keydown", function (e) {
if (e.keyCode == 13) {
submit();
}
});
});
var _lectno;
var _pstatus;
function viewlect(a, ustatus, lectno, fileno, fileurl, orgname, status, pstatus, datas) {
if (ustatus != 99) {
_lectno = lectno;
_pstatus = pstatus;
var ds = datas.split(':');
$("#asname").text(ds[0]);
$("#usernameid").text(ds[1] + "(" + ds[2] + ")");
$("#positiondepart").text(ds[3]);
$("#email").text(ds[5]);
$("#mobile").text(ds[7]);
bglayer(); $("#thisbox").slideDown("fast");
$("#btnsavelect, tr.trhidebox").hide();
if (status == 3 || status == 4 || status == 5) {
setrv("status", status);
$("#btnsavelect, tr.trhidebox").hide();
if (pstatus == 1) {
$("#btnsavelect").attr("style", "display:none;");
}
}
$("#selTypeman").val(ds[11]).attr("selected", "selected");
$("#selTypejob").val(ds[12]).attr("selected", "selected");
$("#selTypeedu").val(ds[13]).attr("selected", "selected");
$("#selTypegrade").val(ds[14]).attr("selected", "selected");
$("#hidpplno").val(ds[15]);
}
}
function save() {
if ($("#status3").prop("checked")) {
msg2("승인 또는 미승인을 선택 후 저장해주세요.");
} else if (confirm("대기상태를 저장하시겠습니까?")) {
capp("/acommon/lectstatus3", { lectno: _lectno, status: getrv("status"), pstatus: _pstatus }, "cbsave", null, null, null, true);
}
}
function cbsave() {
if (capResult.code == 1000) {
msg2("상태를 변경했습니다.", null, null, null, true);
submit("mform", 500, true);
} else if (capResult.code == -1) {
msg("결제가 완료된 대상은 상태를 변경할 수 없습니다.");
}
else { msgadmin2(); }
}
function viewrefund(payno, pstatus, userno) {
if (pstatus != 1) {
winopen("/croom/payview?isexamready=0&payno=" + payno + "&userno=" + userno, 'payview', 1200, screen.height - 200);
} else {
winopen("/croom/payrefund?payno=" + payno, 'payview', 1200, screen.height - 200);
}
}
function thisrefresh() {
submit();
}
function save2(type) {
if ($("#tbody1 tr input.autocheck:checked").length < 1) {
msg("선택된 인원이 없습니다.");
} else if (confirm("선택한 교육생의 승인상태를 변경을 하시겠습니까?")) {
var nos = "";
var emailinfos = "";
var usernames = "";
$.each($("#tbody1 tr input.autocheck:checked"), function (i, c) {
nos += "," + $(c).attr("data-lectno");
emailinfos += "," + $(c).attr("data-emailinfo").replace(","," ");
});
capp("/acommon/lectstatus2", { lectnos: nos.substr(1), status: type, cname: "@(Model.CM.cname)", emailinfos: emailinfos.substr(1) }, "cbsave2");
}
}
function cbsave2() {
if (capResult.code == 1000) {
msg("변경되었습니다.", null, null, null, true);
submit("mform", 500, true);
} else { msgadmin2(); }
}
function viewas(asno) {
winopen("/croom/asrpop?intval=" + asno, 'asrpop', 1200, screen.height - 500);
}
function savetype() {
if (confirm("교육신청 정보를 저장하시겠습니까??")) {
capp("/acommon/pplogtypechange", {
pplno: $("#hidpplno").val(),
typeman: $("#selTypeman").val(),
typejob: $("#selTypejob").val(),
typeedu: $("#selTypeedu").val(),
typegrade: $("#selTypegrade").val()
}, "afterUpdateType");
}
}
function afterUpdateType() {
if (capResult.code > 0) {
msgok(1, "", true);
submit("mform", 800, true);
}
else {
msg("관리자에게 문의하세요.");
return;
}
}
</script>
}