diff --git a/BO/Views/croom/grade0.cshtml b/BO/Views/croom/grade0.cshtml
index a9428ad..d860a60 100644
--- a/BO/Views/croom/grade0.cshtml
+++ b/BO/Views/croom/grade0.cshtml
@@ -73,6 +73,7 @@
if (!ViewBag.IsSubAdmin96)
{
강제수료처리
+ 강제수료취소
}
}
@@ -212,6 +213,24 @@
msgdev();
}
}
+ function save3() {
+ var lectnos = "";
+ $.each($("#tbody1 tr td input.autocheck:checked"), function () {
+ lectnos += "," + $(this).val();
+ });
+ if (lectnos == "") {
+ msg("강제수료취소할 대상자를 선택해주세요.");
+ } else if (confirm("선택한 대상자를 강제 수료취소하시겠습니까?")) {
+ capp("/acommon/lectcompletecancel", { cmno: @Model.CM.cmno,lectnos: lectnos.substr(1) }, "cbsave3");
+ }
+ }
+ function cbsave3() {
+ if (capResult.code == 1000) {
+ msgf(capResult.obj.cancelcount + "건을 강제 수료 취소했습니다.", "submit('mform', 0, true)");
+ } else {
+ msgdev();
+ }
+ }
var _authtype = 1;
var _lectno;
function viewcert(lectno) {
diff --git a/Base/Controller/ACommonCRoom.cs b/Base/Controller/ACommonCRoom.cs
index 1778665..d5c48a1 100644
--- a/Base/Controller/ACommonCRoom.cs
+++ b/Base/Controller/ACommonCRoom.cs
@@ -415,6 +415,25 @@ namespace NP.Base.Controllers
}
return JsonBack(new JsonRtn() { code = 1000, msg = "OK", obj = new { completecount , cancelcount } });
}
+ ///
+ /// 수료취소
+ ///
+ ///
+ ///
+ [HttpPost]
+ public JsonResult LectCompleteCancel(String type, String lectnos)
+ {
+ var cancelcount = 0;
+ var lects = Dao.Get("grade.nocompletelect", lectnos).Where(w => lectnos.Contains(w.lectno.ToString()));
+ foreach (var lect in lects)
+ {
+ if (lect.iscomplete == 1)
+ {
+ cancelcount += Dao.Save("grade.lectcomplete.cancel", new Hashtable() { { "lectno", lect.lectno }, { "uno", SUserInfo.UserNo }, { "uip", GetUserIP() } });
+ }
+ }
+ return JsonBack(new JsonRtn() { code = 1000, msg = "OK", obj = new { cancelcount } });
+ }
[HttpPost]
public JsonResult CMInningGetForOff(Int64 cmino)
{