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) {