YNICTE/BO/Views/MM/Config0.cshtml

266 lines
12 KiB
Plaintext
Raw Normal View History

2020-10-12 14:39:23 +09:00
@model NP.Model.VMMM
<br />
<div class="row">
<div class="col-md-12 col-lg-5">
<section class="panel panel-default">
<header class="panel-heading font-bold">상위코드<br /><span style="color: red;">#상위코드를 클릭하면 하위코드목록이 표시됩니다.</span>
</header>
<div class="panel-body" id="treebox" style="overflow-y: auto; max-height: 400px;">
2020-10-12 14:39:23 +09:00
<ul class="box left cap header">
<li style="width: 20%;">No</li>
<li style="width: 30%;">상위코드</li>
<li style="width: 45%;">상위코드명</li>
</ul>
<div class="autobox" id="list1">
@foreach (var a in Model.ComGroups.Where(w => w.cgroupname != "dontdelete").ToList())
{
<ul class="box left cap">
<li style="width: 20%;">@a.rno</li>
<li style="width: 30%;" data-id="@a.cgroup" class="link cgroup"><a class="cgroupcode-@(a.cgroup)" href="#" onclick="javascript:rd('@(a.cgroup)', this);">@a.cgroup</a></li>
<li style="width: 45%;" class="cgroupname"><input type="text" data-org="@a.cgroupname" value="@a.cgroupname" style="width: 50%; text-align: center;height: 25px; line-height: 25px; border: 1px solid #ccc; margin-top: 3px;" />&nbsp;<a href="#" class="btn btn-info btn-xs" onclick="savegroupname(this);" style="margin-top: -4px;">수정</a></li>
</ul>
}
</div>
</div>
</section>
</div>
<div class="col-md-12 col-lg-7">
<section class="panel panel-default">
<header class="panel-heading font-bold">하위코드 추가</header>
<header class="panel-heading font-bold">선택된 상위코드 : <span id="selectcgroup" style="color: red;">없음</span> - <span id="selectcgroupname"></span></header>
<div class="panel-body">
<div class="form-group">
<label class="col-sm-5 col-md-3 col-lg-2 control-label">하위코드명</label>
<div class="col-sm-7 col-md-9 col-lg-10"><input type="text" class="form-control" id="regcname" /></div>
</div><div class="line line-dashed line-lg pull-in"></div>
<div class="form-group">
<label class="col-sm-5 col-md-3 col-lg-2 control-label">순서</label>
<div class="col-sm-7 col-md-9 col-lg-10"><input type="text" class="form-control int" id="regcorder" /></div>
</div><div class="line line-dashed line-lg pull-in"></div>
<div class="form-group">
<label class="col-sm-5 col-md-3 col-lg-2 control-label">상태</label>
<div class="col-sm-7 col-md-9 col-lg-10">@Html.Partial("./Partial/Radio", null, new ViewDataDictionary() { { "valuetext", "1:사용;0:미사용" }, { "checked", 1 }, { "name", "regisuse" } })</div>
</div><div class="line line-dashed line-lg pull-in"></div>
<div class="form-group">
<label class="col-sm-5 col-md-3 col-lg-2 control-label">&nbsp;</label>
<div class="col-sm-7 col-md-9 col-lg-10"><a href="#" class="btn btn-primary" onclick="savenewcode();">추가</a></div>
</div><div class="line line-dashed line-lg pull-in"></div>
</div>
</section>
<section class="panel panel-default" id="menuinfobox">
<header class="panel-heading font-bold">
하위코드 목록<br />
<span style="color: red;">#텍스트를 변경하고 텍스트를 벗어나거나 버튼을 클릭하면 바로 적용됩니다.</span>
</header>
<div class="panel-body">
<div class="autobox" style="max-height: 600px; overflow: auto;">
<table class="box clearbox list" style="border: 0 none;">
<colgroup>
<col />
<col />
<col style="width: 50px;" />
<col />
<col />
</colgroup>
<tr class="cap" style="border-bottom: 1px solid #7CA5DD; height: 50px;">
<th>코드</th>
<th>코드명</th>
<th>순서</th>
<th>사용함</th>
<th>등록일/수정일</th>
</tr>
<tbody id="list"></tbody>
</table>
</div>
</div>
</section>
</div>
</div>
<style type="text/css">
div#list1 ul.focus {
border: 2px solid red;
}
</style>
<script>
var _ncgroup = "ComCode_CGroup";
var _ncgroupname = "ComCode_CGroupName";
var _nccode = "ComCode_CCode";
var _ncname = "ComCode_CName";
var _npcode = "ComCode_PCode";
var _npname = "ComCode_PCodeName";
var _nisuse = "ComCode_IsUse";
var _ncorder = "ComCode_COrder";
var _nrefcode = "ComCode_RefCode";
var _ncremark = "ComCode_CRemark";
function save() {
if (check(_ncgroup)) {
msg("상위코드를 입력하세요.");
}
else if (check(_ncgroupname)) {
msg("상위코드명을 입력하세요.");
}
else if (check(_ncname)) {
msg("코드명을 입력하세요.");
}
else if (confirm(intval(_nccode) === 0 ? "저장하시겠습니까?" : "수정하시겠습니까?")) {
cap("/ZAXCommon/SaveComCode", "mform", "cbsave", null, true);
}
}
$(document).ready(function () {
$("#list").on("change", ".ccodecname", function () {
capp("/acommon/saveccode", { cc: $(this).closest("tr").attr("data-ccode"), cn: $(this).val() }, "cbchangeccode");
});
$("#list").on("change", ".ccodecorder", function () {
capp("/acommon/saveccode", { cc: $(this).closest("tr").attr("data-ccode"), co: $(this).val() }, "cbchangeccode");
});
$("#list").on("change", ".ccodeisuse", function () {
capp("/acommon/saveccode", { cc: $(this).closest("tr").attr("data-ccode"), iu: $(this).prop("checked")?1:0 }, "cbchangeccode");
});
$(".btn.findpcode").on("click", function () {
findCode("COMCODE:CGroup:" + $("#pcodegroup").val() + ":bindpcode:종속코드검색");
});
$(".btn.clearpcode").on("click", function () {
setv(_ncgroup, "");
setv(_ncgroupname, "");
});
var sd = '@(ViewBag.SaveData)';
if (sd != '') {
$("#list1 ul li[data-id='" + sd + "']").find("a").click();
}
focus(_ncgroup);
});
function cbsave() {
if (capOK) {
$("#SaveData").val(val(_ncgroup));
timesubmit();
}
}
var _gli;
function rd(_no, a) {
if (_no == "Industry") {
msg("Industry는 통계에서 사용하는 공통코드입니다. 개발자에게 문의해주세요.");
}
else {
_cgroup = $(a).text();
$("#selectcgroup").text($(a).text());
$("#selectcgroupname").text($(a).closest("ul").find("li.cgroupname input").val());
$("#regcname").val("");
$("input[name='regisuse'][value=1]").prop("checked", true);
_gli = a;
clearall();
focus(_ncgroup);
$(a).parents("div").find("ul li").removeClass("focus");
$(a).parents("div").find("ul").removeClass("focus");
$(a).closest("ul").addClass("focus");
$("#list").html("");
capp("/acommon/GetComCode", { gcode: _no }, "cbget", null, true);
}
}
function cbget() {
var html = "";
var maxcorder = 0;
$.each($(capResult.obj), function (i, r) {
html += "<tr data-ccode=\"" + r.ccode + "\"><td>"+r.ccode+"</td>" +
"<td><input class=\"form-control ccodecname\" type=\"text\" value=\"" + r.cname + "\" /></td>" +
"<td><input class=\"form-control ccodecorder int text-center\" type=\"text\" value=\"" + r.corder + "\" /></td>" +
"<td><input class=\"ccodeisuse\" type=\"checkbox\" "+ (r.isuse == 1 ? "checked":"")+" /> 사용함</td>" +
"<td>"+r.cdtymd+" / "+r.udtymd+"</td></tr> ";
maxcorder = r.corder;
});
$("#regcorder").val(maxcorder+1);
$("#list").html(html);
$("#menuinfobox2").hide();
}
function bind(ccode) {
capp("/ZAXCommon/ZAXGetComCode", { ccode: ccode }, "cbbind", null, true);
}
function cbbind() {
setv(_ncgroup, capResult.obj.cgroup);
setv(_ncgroupname, capResult.obj.cgroupname);
setv(_nccode, capResult.obj.ccode);
setv(_ncname, capResult.obj.cname);
setv(_npcode, capResult.obj.pcode);
setv(_npname, capResult.obj.pcodename);
setv(_nisuse, capResult.obj.isuse);
$("#IsUse" + val(_nisuse)).prop("checked", true);
setv(_ncorder, capResult.obj.corder);
setv(_nrefcode, capResult.obj.refcode);
setv(_ncremark, capResult.obj.cremark);
$("#btndeletecode").hide();
if (capResult.obj.issystem != 1) {
$("#btndeletecode").show();
}
$("#menuinfobox2").show();
$("#btnsave").text("수정");
}
function bindpcode(ccode, cname, a) {
setv(_npcode, ccode);
setv(_npname, cname);
hideFindCode();
}
function deletecode() {
capp("/ZAXCommon/DeleteComCode", { ccode: val("ComCode_CCode") }, "cbdelete");
}
function cbdelete() {
if (capResult.code == 1000) {
msg("삭제되었습니다.");
setTimeout(function () {
$("#mform").submit();
}, 500);
}
else {
msg("이미 문제은행에 등록된 코드는 삭제할 수 없습니다.");
}
}
function savegroupname(a) {
if (confirm("상위코드명을 수정하시겠습니까?")) {
capp("/aCommon/UpdateCgroup", { CGroup: $(a).closest("ul").find("li.cgroup").text(), CGroupName: $.trim($(a).closest("li").find("input").val()) }, "cbsavegroupname");
}
}
var _cgroup;
function cbsavegroupname() {
if (capResult.code == 1000) {
msgok(2);
timesubmitauto("tabmainform");
}
else {
msgadmin();
}
}
function savenewcode() {
if ($("#selectcgroup").text() == "없음") { msg("상위코드를 선택 후 추가해주세요.");}
else if (check("regcname", null, "하위코드명을 입력해주세요.")) { }
else if (confirm("신규코드를 추가하시겠습니다.")) {
capp("/acommon/savenewccode", { cg: _cgroup, cn: val("regcname"), co: getint(val("regcorder")), iu: getrv("regisuse") }, "cbsavenewcode");
}
}
function cbsavenewcode() {
if (capResult.code == 1000) {
msg("추가되었습니다.");
setTimeout(function () {
$("a.cgroupcode-" + _cgroup).click();
hidelayermsg();
}, 500);
}
else {
msgadmin();
}
}
function cbchangeccode() {
if (capResult.code == 1000) {
msg("수정되었습니다.");
setTimeout(function () {
$("a.cgroupcode-" + _cgroup).click();
hidelayermsg();
}, 500);
}
else {
msgadmin();
}
}
</script>