368 lines
11 KiB
Plaintext
368 lines
11 KiB
Plaintext
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
|
|
<%@ page import="com.pms.common.utils.*"%>
|
|
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
|
|
<%@ page import="java.util.*" %>
|
|
<%@include file= "/init.jsp" %>
|
|
<%
|
|
PersonBean person = (PersonBean)session.getAttribute(Constants.PERSON_BEAN);
|
|
String userId = CommonUtils.checkNull(person.getUserId());
|
|
%>
|
|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
<title><%=Constants.SYSTEM_NAME%></title>
|
|
</head>
|
|
<style>
|
|
.pmsPopupForm td {height:24px; font-size: 12px;border-bottom:solid 1px #ccc;border-left:solid 1px #ccc;padding:0px 2px;}
|
|
|
|
::-webkit-scrollbar-thumb {
|
|
background: linear-gradient(to bottom, #f5d78e, #f5d78e);
|
|
}
|
|
</style>
|
|
<script>
|
|
/* var isEditMode = "${empty Info?'false':'true'}"; */
|
|
var isEditMode = "true";
|
|
var oEditors = [];
|
|
$(document).ready(function(){
|
|
|
|
nhn.husky.EZCreator.createInIFrame({
|
|
oAppRef: oEditors,
|
|
elPlaceHolder: 'content',
|
|
sSkinURI: '/SE2/SmartEditor2Skin.html',
|
|
fCreator: 'createSEditor2',
|
|
htParams : {
|
|
bUseToolbar : true,
|
|
bUseVerticalResizer : true,
|
|
bUseModeChanger : true,
|
|
}
|
|
});
|
|
|
|
$('.select2').select2();
|
|
$("#btnClose").click(function(){
|
|
self.close(0);
|
|
});
|
|
|
|
//수정
|
|
$("#btnSave").click(function(){
|
|
fn_save();
|
|
});
|
|
|
|
|
|
$("#template_code").change(function(){
|
|
|
|
fn_template_code_detailList(this.value,"template_code_detail", "");
|
|
});
|
|
|
|
if("${Info.TEMPLATE_CODE_DETAIL}"!=""){
|
|
fn_template_code_detailList("${Info.TEMPLATE_CODE}","template_code_detail", "");
|
|
$("#template_code_detail").val("${Info.TEMPLATE_CODE_DETAIL}");
|
|
}
|
|
|
|
// fnc_setFileDropZone("MasterImageDropZone", "${targetObjId}", "MasterImage", "MasterImage", "fileAreaDraw",false,null,null);
|
|
|
|
// fnc_setFileDropZone("MasterFileDropZone", "${targetObjId}", "Master", "MasterFile", "fileAreaDraw",false,null,null);
|
|
|
|
//파일표시
|
|
// fileAreaDraw();
|
|
|
|
});
|
|
|
|
|
|
function fn_template_code_detailList(detailCd,selectboxId,selectedVal){
|
|
// Swal.fire(detailCd)
|
|
$("#"+selectboxId).empty();
|
|
|
|
$("#"+selectboxId).append("<option value=''>선택</option>");
|
|
|
|
if("" != detailCd){
|
|
$.ajax({
|
|
url:"/common/gettemplate_code_detailList.do",
|
|
type:"POST",
|
|
data:{"isJson":true,"detailCd":detailCd},
|
|
dataType:"json",
|
|
async:false,
|
|
success:function(data){
|
|
|
|
resultList = data
|
|
|
|
if(0 < resultList.length){
|
|
for (var i = 0; i < resultList.length; i++) {
|
|
var commonCodeId = resultList[i].CODE;
|
|
var commonCodeName = resultList[i].NAME;
|
|
var GOODSCD = resultList[i].ID;
|
|
var PSHELLNO = resultList[i].PSHELLNO;
|
|
var GOODSGUARANTEE = resultList[i].GOODSGUARANTEE;
|
|
var INOUTDATE = resultList[i].INOUTDATE;
|
|
$("#"+selectboxId).append("<option value='"+commonCodeId+"' id='"+GOODSCD+"' data-pshellno='"+PSHELLNO+"' data-goodsguarantee='"+GOODSGUARANTEE+"' data-inoutdate='"+INOUTDATE+"'>"+commonCodeName+"</option>");
|
|
}
|
|
$("#"+selectboxId).val(selectedVal);
|
|
}
|
|
},
|
|
error: function(jqxhr, status, error){
|
|
}
|
|
});
|
|
}
|
|
|
|
|
|
}
|
|
|
|
function fileAreaDraw(){
|
|
fn_fileCallback1("Master","Master");
|
|
fn_fileCallback("MasterImage","MasterImage");
|
|
}
|
|
|
|
function fn_deletephone(num){
|
|
$("#row"+num).remove();
|
|
}
|
|
|
|
//첨부파일 목록을 가져온다.
|
|
function fn_fileCallback(areaId,fileType){
|
|
$.ajax({
|
|
url:"/common/getFileList.do",
|
|
type:"POST",
|
|
data:{"targetObjId":"${targetObjId}", "docType":fileType},
|
|
dataType:"json",
|
|
async:false,
|
|
success:function(data){
|
|
|
|
if(0 < data.length){
|
|
|
|
//첨부파일 목록 영역 show
|
|
$("#"+areaId+"FileArea").empty();
|
|
|
|
if(0 < $("#"+areaId+"DropZone").length){
|
|
$("#"+areaId+"DropZone").hide();
|
|
$("#"+areaId+"FileArea").show();
|
|
}
|
|
|
|
$.each(data, function(i){
|
|
var realFileName = data[i].REAL_FILE_NAME;
|
|
|
|
var srcLocation = encodeURI("/common/viewImage.do?realFileName="+realFileName+"&savedFileName="+data[i].SAVED_FILE_NAME+"&attDir="+data[i].FILE_PATH);
|
|
|
|
var appendText = "";
|
|
var appendImgText = ""
|
|
|
|
appendText+= "<a href='javascript:fnc_downloadFile(\""+data[i].OBJID+"\")'> "+data[i].REAL_FILE_NAME+"</a>";
|
|
appendText+= "<a href='javascript:fileDelete(\""+data[i].OBJID+"\",\""+areaId+"\")'><div class='delete_btn'></div></a>";
|
|
|
|
appendImgText = "<img src='"+srcLocation+"' height='540px' width='540px' onclick='openImagePopUp(this.src)' style='cursor:pointer;' />"
|
|
|
|
$("#"+areaId+"FileArea").append(appendImgText+appendText);
|
|
});
|
|
}else{
|
|
$("#"+areaId+"DropZone").show();
|
|
$("#"+areaId+"FileArea").empty();
|
|
$("#"+areaId+"FileArea").hide();
|
|
}
|
|
},
|
|
error: function(jqxhr, status, error){
|
|
}
|
|
});
|
|
}//파일 첨부 END
|
|
|
|
//첨부파일 목록을 가져온다.
|
|
function fn_fileCallback1(areaId,fileType){
|
|
$.ajax({
|
|
url:"/common/getFileList.do",
|
|
type:"POST",
|
|
data:{"targetObjId":"${targetObjId}", "docType":fileType},
|
|
dataType:"json",
|
|
async:false,
|
|
success:function(data){
|
|
|
|
if(0 < data.length){
|
|
//첨부파일 목록 영역 show
|
|
$("#"+areaId+"FileArea").empty();
|
|
|
|
if(0 < $("#"+areaId+"DefaultRow").length){
|
|
$("#"+areaId+"DefaultRow").hide();
|
|
}
|
|
|
|
$.each(data, function(i){
|
|
|
|
var appendText = "";
|
|
if("Master" == areaId){
|
|
var path = data[i].FILE_PATH;
|
|
var fileName = data[i].SAVED_FILE_NAME;
|
|
var fileExt = data[i].UPPER_FILE_EXT;
|
|
appendText += "<colgroup>";
|
|
appendText +=" <col width='10%'>";
|
|
appendText +=" <col width='70%'>";
|
|
appendText +=" <col width='20%'>";
|
|
appendText +=" </colgroup>";
|
|
appendText+= "<tr>";
|
|
appendText+= " <td>"+[i+1]+"</td>";
|
|
appendText+= " <td class='align_l'><a href='javascript:fnc_downloadFile(\""+data[i].OBJID+"\")'> "+data[i].REAL_FILE_NAME+"</a>";
|
|
<c:if test="${param.actionType eq 'regist' or Info.WRITER eq connectUserId or 'plm_admin' eq connectUserId}">
|
|
appendText+= "<a href='javascript:fileDelete(\""+data[i].OBJID+"\",\""+areaId+"\")'><div class='delete_btn'></div></a>";
|
|
</c:if>
|
|
appendText+= "</td>";
|
|
appendText+= " <td>"+data[i].REGDATE+"</td>";
|
|
appendText+= "</tr>";
|
|
}
|
|
$("#"+areaId+"FileArea").append(appendText);
|
|
});
|
|
}else{
|
|
$("#"+areaId+"DropZone").show();
|
|
$("#"+areaId+"AttachFileList").hide();
|
|
$("#"+areaId+"FileArea").empty();
|
|
var appendText = "";
|
|
appendText += "<tr>";
|
|
appendText += "<td>첨부 파일이 없습니다.</td>";
|
|
appendText +="</tr>";
|
|
$("#"+areaId+"FileArea").append(appendText);
|
|
}
|
|
},
|
|
error: function(jqxhr, status, error){
|
|
}
|
|
});
|
|
}//파일 첨부 END
|
|
|
|
//저장
|
|
function fn_save(){
|
|
//에디터 데이터 추출
|
|
oEditors.getById["content"].exec("UPDATE_CONTENTS_FIELD",[]);
|
|
var flag = false;
|
|
var contents = $("#content").val();
|
|
$("#contents").val(contents);
|
|
if(fnc_valitate("form1")){
|
|
var param = $("#form1").serialize();
|
|
$.ajax({
|
|
url:"/admin/templateFormSave.do",
|
|
type:"POST",
|
|
data: param,
|
|
dataType:"json",
|
|
success:function(data){
|
|
if(data=="SUCCESS"){
|
|
Swal.fire('저장되었습니다.');
|
|
// document.location.reload();
|
|
opener.fn_search();
|
|
self.close();
|
|
}else if(data =="OVERLAP"){
|
|
Swal.fire('템플릿 세부사항이 중복됩니다.');
|
|
document.location.reload();
|
|
}else{
|
|
Swal.fire('저장에 실패했습니다 관리자 에게 문의해주세요.');
|
|
document.location.reload();
|
|
}
|
|
},
|
|
error: function(jqxhr, status, error){
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
/*첨부 파일 삭제 */
|
|
function fileDelete(fileObjId,areaId){
|
|
var type =areaId;
|
|
if(confirm("파일을 삭제하시겠습니까?")){
|
|
$.ajax({
|
|
url:"/common/deleteFileInfo.do",
|
|
type:"POST",
|
|
data:{"objId":fileObjId},
|
|
dataType:"json",
|
|
async:true,
|
|
success:function(data){
|
|
if(type=="MasterImage"){
|
|
fn_fileCallback("MasterImage","MasterImage");
|
|
}else if(type=="Master"){
|
|
fn_fileCallback1("Master","Master");
|
|
}
|
|
|
|
|
|
},
|
|
error: function(jqxhr, status, error){
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
</script>
|
|
<body>
|
|
<input type="hidden" name="detailcode" id="detailcode" value="${Info.TEMPLATE_CODE_DETAIL}">
|
|
<form name="form1" id="form1" action="" method="post">
|
|
<input type="hidden" name="objid" id="objid" value="${Info.OBJID}">
|
|
<input type="hidden" name="detail" value="${param.detail}">
|
|
<input type="hidden" name="contents" id="contents">
|
|
<section>
|
|
<div class="plm_menu_name">
|
|
<h2>
|
|
<span>템플릿 등록</span>
|
|
</h2>
|
|
</div>
|
|
|
|
<div id="businessPopupFormWrap" >
|
|
<div id="businessPopupFormWrap">
|
|
<table class="pmsPopupForm">
|
|
<colgroup>
|
|
<col width="10%">
|
|
<col width="20%">
|
|
<col width="10%">
|
|
<col width="20%">
|
|
<!-- <col width="10%">
|
|
<col width="10%"> -->
|
|
</colgroup>
|
|
<tr>
|
|
<td class="input_title">
|
|
<label for="">템플릿</label>
|
|
</td>
|
|
<td class="input_sub_title" >
|
|
<select name="template_code" id="template_code" required reqTitle="템플릿" type="select">
|
|
<option value="">선택</option>
|
|
${code_map.template_code}
|
|
</select>
|
|
</td>
|
|
<%-- <td class="input_title">
|
|
<label for="">세부사항</label>
|
|
</td>
|
|
<td class="input_sub_title" >
|
|
<select name="template_code_detail" id="template_code_detail" required reqTitle="세부사항" type="select">
|
|
<!-- <option value="">선택</option> -->
|
|
${code_map.template_code}
|
|
</select>
|
|
</td> --%>
|
|
<td class="input_title" ><label for="">활성화여부</label></td>
|
|
<td>
|
|
<select name="status" id="status" required type="select" title="활성화여부">
|
|
<option value="">선택</option>
|
|
<option value="active" ${'active' eq Info.STATUS ? 'selected' : ''}>활성화</option>
|
|
<option value="inActive" ${'inActive' eq Info.STATUS ? 'selected' : ''}>비활성화</option>
|
|
</select>
|
|
</td>
|
|
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<table class="pmsPopupForm" style="margin-top:8px;width:100%; border:3px solid #000000;">
|
|
<colgroup>
|
|
<col width="50%">
|
|
</colgroup>
|
|
<tr style="width:100%;">
|
|
<td style="border-right:1px solid #000000;text-align:center;">[템플릿]</td>
|
|
</tr>
|
|
<tr style="width:100%;">
|
|
<td style="border-right:1px solid #000000;text-align:center;" >
|
|
<textarea id="content" rows="30" cols="100" style="width:100%; height: 600px;">${Info.CONTENTS}</textarea>
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
</table>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="btn_wrap">
|
|
<div class="plm_btn_wrap_center">
|
|
<input type="button" value="저장" id="btnSave" class="plm_btns">
|
|
<input type="button" value="닫기" id="btnClose" class="plm_btns">
|
|
</div>
|
|
</div>
|
|
</section>
|
|
</form>
|
|
</body>
|
|
</html> |