FAISP/src/main/resources/static/js/igActivities/fpiMgt/result/resultMgt.js

187 lines
5.0 KiB
JavaScript
Raw Normal View History

let files = [];
$(function(){
$("#dateSelectorDiv").datepicker({
format: "yyyy-mm-dd",
language: "ko"
});
})
2022-10-06 09:43:36 +00:00
$(document).on('click', '#resultTab', function (){
location.href = "/affairResult/resultMgt";
})
$(document).on('click', '#stayTab', function (){
2022-10-06 09:43:36 +00:00
location.href = "/affairResult/stayPage";
})
$(document).on('click', '#commitTab', function (){
2022-10-06 09:43:36 +00:00
location.href = "/affairResult/commitPage";
})
2022-10-06 09:43:36 +00:00
$(document).on('click', '#addResultBtn', function (){
getResultEditModal(null)
})
2022-10-06 09:43:36 +00:00
$(document).on('click', '#editResultBtn', function (){
$("#resultViewModal").modal('hide');
getResultEditModal(Number($("#resultViewBody").find("[name='resultKey']").val()));
})
2022-10-06 09:43:36 +00:00
$(document).on('click', '#resultAddBtn', function (){
$("#resultDiv").append("<input type='text' class='form-control' name='resultInfos'>")
})
2022-10-06 09:43:36 +00:00
$(document).on('click', '#detailResultAddBtn', function (){
const detailResultDiv = $("#detailResultDiv");
detailResultDiv.append("<textarea type='text' name='detailResultInfos'></textarea>");
const lastAppendTextarea = detailResultDiv.children()[detailResultDiv.children().length-1];
$(lastAppendTextarea).summernote({
lang:'ko-KR',
height: 120,
disableDragAndDrop: true,
toolbar: [
['style', ['style']],
['font', ['bold', 'underline', 'clear']],
['color', ['color']],
['para', ['ul', 'ol', 'paragraph']],
['table', ['table']]
]
});
})
2022-10-06 09:43:36 +00:00
$(document).on('click', '#saveResultBtn', function (){
saveResult('DST002')
})
$(document).on('click', '#saveTempBtn', function (){
2022-10-06 09:43:36 +00:00
saveResult('DST001')
})
2022-10-06 09:43:36 +00:00
$(document).on('click', '.resultTr', function (){
$(".trChkBox").prop("checked", false);
$(this).find(".trChkBox").prop("checked", true);
2022-10-06 09:43:36 +00:00
getResultViewModal(Number($(this).find(".resultKey").val()));
})
$(document).on('click', '.apprvBtn', function (){
2022-10-06 09:43:36 +00:00
$("#apprvFormResultKey").val($("#viewModalResultKey").val());
$("#viewModalApprvValue").val($(this).attr("data-resultstate"));
if(confirm($(this).val()+"하시겠습니까?")){
const formData = new FormData($("#apprvForm")[0]);
contentFade("in")
$.ajax({
type : 'POST',
data : formData,
2022-10-06 09:43:36 +00:00
url : "/affairResult/resultStateChange",
processData: false,
contentType: false,
beforeSend: function (xhr){
xhr.setRequestHeader($("[name='_csrf_header']").val(), $("[name='_csrf']").val());
},
success : function(result) {
alert("저장되었습니다")
2022-10-06 09:43:36 +00:00
getResultViewModal(result);
contentFade("out");
},
error : function(xhr, status) {
alert("저장에 실패하였습니다.");
contentFade("out");
}
})
}
})
2022-10-06 09:43:36 +00:00
function getResultViewModal(resultKey){
$.ajax({
2022-10-06 09:43:36 +00:00
url: '/affairResult/resultViewModal',
data: {resultKey: resultKey},
type: 'GET',
dataType:"html",
success: function(html){
2022-10-06 09:43:36 +00:00
$("#resultViewBody").empty().append(html)
$("#resultViewModal").modal('show');
},
error:function(){
}
});
}
2022-10-06 09:43:36 +00:00
function getResultEditModal(resultKey){
$.ajax({
2022-10-06 09:43:36 +00:00
url: '/affairResult/resultEditModal',
data: {resultKey: resultKey},
type: 'GET',
dataType:"html",
success: function(html){
2022-10-06 09:43:36 +00:00
$("#resultEditModalContent").empty().append(html)
$("#resultEditModal").modal('show');
$("#resultDt").datepicker({
format: "yyyy-mm-dd",
language: "ko"
});
2022-10-06 09:43:36 +00:00
$("[name='detailResultInfos']").summernote({
lang:'ko-KR',
height: 120,
disableDragAndDrop: true,
toolbar: [
['style', ['style']],
['font', ['bold', 'underline', 'clear']],
['color', ['color']],
['para', ['ul', 'ol', 'paragraph']],
['table', ['table']]
]
});
setUploadDiv();
},
error:function(){
}
});
}
2022-10-06 09:43:36 +00:00
function saveResult(resultState){
if(contentCheck()){
if(confirm("저장하시겠습니까?")){
2022-10-06 09:43:36 +00:00
$("#resultState").val(resultState);
contentFade("in");
2022-10-06 09:43:36 +00:00
const formData = new FormData($("#resultEditForm")[0]);
for(const file of files) {
if(!file.isDelete)
formData.append('uploadFiles', file, file.name);
}
$(".text-decoration-line-through").each(function (idx, el){
formData.append('fileSeq', $(el).attr("data-fileseq"));
})
$.ajax({
type : 'POST',
data : formData,
2022-10-06 09:43:36 +00:00
url : "/affairResult/saveResult",
processData: false,
contentType: false,
success : function(result) {
alert("저장되었습니다.");
contentFade("out");
2022-10-06 09:43:36 +00:00
$("#resultEditModal").modal('hide');
getResultViewModal(result);
},
error : function(xhr, status) {
alert("저장에 실패하였습니다.")
contentFade("out");
}
})
}
}
}
function contentCheck(){
let flag = true;
if(!$("#contentTitle").val()){
alert("제목을 입력해주세요.")
flag = false;
}
2022-10-06 09:43:36 +00:00
if(!$("#resultDt").val()){
alert("시행일자를 입력해주세요.")
flag = false;
}
flag = fileCheck(flag, files);
return flag;
}