271 lines
8.4 KiB
Plaintext
271 lines
8.4 KiB
Plaintext
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
|
|
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
|
|
<%@ page import="com.pms.common.utils.*"%>
|
|
<%@ page import="java.util.*"%>
|
|
<%@include file="/init_jqGrid.jsp"%>
|
|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
|
|
<!-- //JSTL 페이징 변수선언 -->
|
|
<c:set var="now" value="<%=new java.util.Date() %>" />
|
|
<c:set var="sysYear"><fmt:formatDate value="${now}" pattern="yyyy" /></c:set>
|
|
|
|
<script type="text/javascript">
|
|
var grid;
|
|
$(document).ready(function(){
|
|
$("#projectno").prop('disabled', true);
|
|
|
|
//default value
|
|
$("#btnAdd" ).click(function(){ gridFn.addRow(); });
|
|
$("#btnDel" ).click(function(){ gridFn.delRow(); });
|
|
|
|
var spec_cd = $.parseJSON($("#spec_cd").val()); //jqGrid 구분
|
|
var mfa_cd = $.parseJSON($("#mfa_cd").val()); //jqGrid 구분
|
|
var process_cd = $.parseJSON($("#process_cd").val()); //jqGrid 구분
|
|
var sort_cd = $.parseJSON($("#sort_cd").val()); //jqGrid 구분
|
|
var supply_cd = $.parseJSON($("#supply_cd").val()); //jqGrid 계정과목
|
|
|
|
grid = $("#expenseDetailGrid").jqGrid({
|
|
url: ""
|
|
,datatype: "local"
|
|
,colNames: ["품명","모품번","자품번","수량","재질","규격","메이커","부품구분"]
|
|
,colModel: [
|
|
{name:"PART_NAME",index:"PART_NAME", width: 200, align:"center", hidden: false, sortable:false, editable:true
|
|
,editoptions:{
|
|
dataInit : function(e){
|
|
e.style.fontSize = 13;
|
|
}
|
|
}
|
|
}
|
|
|
|
,{name:"PARENT_PART_NO",index:"PARENT_PART_NO", width: 200, align:"center", hidden: false, sortable:false, editable:true
|
|
,editoptions:{
|
|
dataInit : function(e){
|
|
e.style.fontSize = 13;
|
|
}
|
|
}
|
|
}
|
|
|
|
,{name:"PART_NO",index:"PART_NO", width: 200, align:"center", hidden: false, sortable:false, editable:true
|
|
,editoptions:{
|
|
dataInit : function(e){
|
|
e.style.fontSize = 13;
|
|
}
|
|
}
|
|
}
|
|
|
|
,{name:"QTY",index:"QTY", width: 50, align:"center", hidden: false, sortable:false, editable:true
|
|
,editoptions:{
|
|
dataInit : function(e){
|
|
e.style.fontSize = 13;
|
|
}
|
|
}
|
|
}
|
|
,{name:"MATERIAL",index:"MATERIAL", width: 150, align:"center", hidden: false, sortable:false, editable:true
|
|
,editoptions:{
|
|
dataInit : function(e){
|
|
e.style.fontSize = 13;
|
|
}
|
|
}
|
|
}
|
|
,{name:"SIZED",index:"SIZED", width: 100, align:"center", hidden: false, sortable:false, editable:true
|
|
,editoptions:{
|
|
dataInit : function(e){
|
|
e.style.fontSize = 13;
|
|
}
|
|
}
|
|
}
|
|
,{name:"SUP_CD",index:"SUP_CD", width: 110, align:"center", hidden: false, sortable:false, editable:true
|
|
,editoptions:{
|
|
dataInit : function(e){
|
|
e.style.fontSize = 13;
|
|
}
|
|
}
|
|
}
|
|
,{name:"SORT_CD" ,index:"SORT_CD" , width:100, align:"center", hidden:false, sortable:false, editable: true
|
|
,edittype :"select"
|
|
,formatter :"select"
|
|
,editoptions:{
|
|
value: sort_cd
|
|
,dataInit : function(e){
|
|
e.style.width = "92%";
|
|
e.style.fontSize = 13;
|
|
}
|
|
}
|
|
}
|
|
]
|
|
//,cellEdit : true
|
|
//,cellsubmit : "clientArray"
|
|
,rownumbers : true
|
|
,viewrecords : true
|
|
,height : 330
|
|
,multiselect : true
|
|
,shrinkToFit : false
|
|
,autowidth : true
|
|
,sortable : false
|
|
,rowNum : 100
|
|
,forceFit : false //컬럼의 width를 변화시킬때 그리드의 width를 고정 여부
|
|
,jsonReader : {repeatitems: false}
|
|
,mtype :"POST"
|
|
,footerrow : false //바닥합계
|
|
,userDataOnFooter: true //바닥합계
|
|
,loadComplete: function(){
|
|
}
|
|
});
|
|
|
|
gridFn.search();
|
|
});
|
|
|
|
|
|
var gridFn = {
|
|
addRow : function() {
|
|
var newId = grid.getGridParam("reccount")+1;
|
|
var addData = {
|
|
"PART_NAME": "",
|
|
"PARENT_PART_NO": "",
|
|
"PART_NO" : "",
|
|
"QTY" : "",
|
|
"SORT_CD" : "",
|
|
"SUPPLY_CD" : ""
|
|
};
|
|
grid.addRowData(newId, addData);
|
|
grid.jqGrid("editRow", newId);
|
|
gridFn.footerSummary();
|
|
|
|
}
|
|
,delRow : function(){
|
|
var selectedRowIds = grid.jqGrid("getGridParam","selarrrow");
|
|
if(selectedRowIds.length==0){
|
|
Swal.fire("삭제할 행을 선택해주십시오.");
|
|
return false;
|
|
}
|
|
for(var i = selectedRowIds.length - 1; i >= 0; i--){
|
|
grid.delRowData(selectedRowIds[i]);
|
|
}
|
|
}
|
|
,opennEdit : function() { //수정가능
|
|
var ids = grid.jqGrid("getDataIDs");
|
|
for (var i = 0; i < ids.length; i++) {
|
|
grid.jqGrid("editRow",ids[i]);
|
|
}
|
|
}
|
|
,closeEdit : function() { //수정불가
|
|
var ids = grid.jqGrid("getDataIDs");
|
|
for (var i = 0; i < ids.length; i++) {
|
|
grid.jqGrid("saveRow", ids[i], /*successFunction*/null, /*url*/"clientArray"/*, extraparam, aftersavefunc,errorfunc, afterrestorefunc*/);
|
|
}
|
|
}
|
|
,getStep2Cd : function(obj){ //2단계연결코드 재설정
|
|
var gridExpSubdCdArr = $.parseJSON($("#gridExpSubdCd").val());
|
|
var targetObj = $("#"+$(obj).attr("rowid")+"_EXP_SUBD_CD");
|
|
targetObj.empty(); //초기화
|
|
targetObj.append("<option value=\"\">선택</option>");
|
|
for(var i=0; i<gridExpSubdCdArr.length; i++){
|
|
cd = gridExpSubdCdArr[i];
|
|
if(cd["PARENT_CODE_ID"]==obj.value){
|
|
targetObj.append("<option value=\""+cd["CODE_ID"]+"\">"+cd["CODE_NAME"]+"</option>");
|
|
}
|
|
};
|
|
}
|
|
,search : function() {
|
|
grid.setGridParam({
|
|
url: "/partmgmt/getPartMgntTempFormList.do"
|
|
,datatype : "json"
|
|
,postData : {"projectno" : "${projectno}"}
|
|
,loadComplete : function(data) {
|
|
|
|
}
|
|
,gridComplete : function() {
|
|
gridFn.opennEdit(); //수정가능
|
|
}
|
|
}).trigger("reloadGrid");
|
|
grid.setGridParam({url: "", datatype : "local"});
|
|
}
|
|
,footerSummary: function(){ //자동합계
|
|
$("select[id*=_SORT_CD]").each(function(){
|
|
$(this).select2();
|
|
} );
|
|
|
|
$("select[id*=_SUPPLY_CD]").each(function(){
|
|
$(this).select2();
|
|
} );
|
|
}
|
|
}
|
|
|
|
function fn_save(){
|
|
var ids = grid.jqGrid("getDataIDs");
|
|
if(ids!=""){
|
|
if(fnc_valitate("form1")){
|
|
if(confirm("저장 하시겠습니까?")){
|
|
gridFn.closeEdit();
|
|
$.ajax({
|
|
url:"/partMgmt/partApplySave.do"
|
|
,type:"POST"
|
|
,data: $("#form1").serialize() + "&jqGrid="+ JSON.stringify(grid.getRowData())
|
|
,dataType:"json"
|
|
,success:function(data){
|
|
if(data =="SUCCESS"){
|
|
Swal.fire("저장되었습니다.");
|
|
top.opener.fn_search();
|
|
self.close();
|
|
};
|
|
}
|
|
,error: function(jqxhr, status, error){
|
|
}
|
|
});
|
|
}
|
|
}
|
|
}else{
|
|
Swal.fire('저장할 데이터가 없습니다.');
|
|
}
|
|
}
|
|
|
|
</script>
|
|
|
|
</head>
|
|
<body>
|
|
<form name="form1" id="form1" action="" method="post">
|
|
<input type='hidden' name="PROJECT_MGMT_OBJID" value="${projectno}">
|
|
<input type='hidden' name="PROJECT_NAME" id="PROJECT_NAME" value="${projectname}">
|
|
<section>
|
|
<div class="plm_menu_name">
|
|
<h2><span>설계관리_PART등록</</span></h2>
|
|
|
|
</div>
|
|
<div class="pop-box">
|
|
<div style="font-size:12px;float:left;margin:13px">Project No.
|
|
<select name="projectno" id="projectno">
|
|
${code_map.projectno}
|
|
</select>
|
|
</div>
|
|
<div class="btn_wrap" style="top:-10px">
|
|
<div class="plm_btn_wrap" style="padding:20 8 0 8; text-align: right;">
|
|
<input type="hidden" value="${projectNo}" />
|
|
<input type="button" value="행추가" class="plm_btns" id="btnAdd" name="btnAdd" style="background: #dfeffc">
|
|
<input type="button" value="행삭제" class="plm_btns" id="btnDel" name="btnDel" style="background: #dfeffc">
|
|
<input type="button" class="plm_btns" value="저장" onclick="fn_save();">
|
|
<input type="button" class="plm_btns" value="닫기" onclick="window.close();" >
|
|
|
|
</div>
|
|
</div>
|
|
<div style="clear:both"></div>
|
|
<style>.ui-jqgrid-bdiv { height:395!important}</style>
|
|
<div id="plm_table_wrap1" >
|
|
<div style="">
|
|
<div style="height: 270px;">
|
|
<table id="expenseDetailGrid"></table>
|
|
<!-- <div id="jqGridPager"></div> -->
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
</form>
|
|
<textarea style="width:0px; height:0px; visibility: hidden;" id="spec_cd">${code_map.spec_cd}</textarea>
|
|
<textarea style="width:0px; height:0px; visibility: hidden;" id="mfa_cd">${code_map.mfa_cd}</textarea><!-- 코드동적설정 -->
|
|
<textarea style="width:0px; height:0px; visibility: hidden;" id="process_cd">${code_map.process_cd}</textarea><!-- 코드동적설정 -->
|
|
<textarea style="width:0px; height:0px; visibility: hidden;" id="sort_cd">${code_map.sort_cd}</textarea><!-- 코드동적설정 -->
|
|
<textarea style="width:0px; height:0px; visibility: hidden;" id="supply_cd">${code_map.supply_cd}</textarea><!-- 코드동적설정 -->
|
|
</body>
|
|
</html> |