최초커밋
This commit is contained in:
982
WebContent/WEB-INF/view/orderMgmt/projectFormPopUp.jsp
Normal file
982
WebContent/WEB-INF/view/orderMgmt/projectFormPopUp.jsp
Normal file
@@ -0,0 +1,982 @@
|
||||
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
|
||||
<%@ page import="com.pms.common.utils.*"%>
|
||||
<%@ page import="java.util.*" %>
|
||||
<%@include file= "/init.jsp" %>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title><%=Constants.SYSTEM_NAME%></title>
|
||||
|
||||
<c:set var="oemObjId" value="${projectMap.OEM_OBJID}" />
|
||||
<c:set var="carObjId" value="${projectMap.CAR_OBJID}" />
|
||||
<c:set var="factoryObjId" value="${projectMap.OEM_FACTORY}" />
|
||||
|
||||
</head>
|
||||
<script>
|
||||
$(document).ready(function(){
|
||||
$("#btn_close").click(function(){
|
||||
self.close(0);
|
||||
});
|
||||
|
||||
if('${projectMap.CFT_TEAM_CD}'!=''){
|
||||
optionJobGroup('${projectMap.CFT_TEAM_CD}');
|
||||
$("#cft_userid").val('${projectMap.CFT_USERID}');
|
||||
}
|
||||
|
||||
//취소
|
||||
$("#btnCancel").click(function(){
|
||||
var objId = $(this).attr("data-OBJID");
|
||||
var params = "?objId="+objId;
|
||||
document.form1.action ="/project/projectDetailPopUp.do"+params;
|
||||
document.form1.submit();
|
||||
});
|
||||
|
||||
fn_setOEMList();
|
||||
fn_setProductGroupList();
|
||||
fn_setFactoryList();
|
||||
fn_setLineAreaList();
|
||||
|
||||
$("#oemObjId").change(function(){
|
||||
oemObjId = this.value;
|
||||
carObjId = $("#carObjId").val();
|
||||
fn_setCarTypeList($(this).val());
|
||||
});
|
||||
|
||||
$("#carObjId").change(function(){
|
||||
oemObjId = $("#oemObjId").val();
|
||||
carObjId = this.value;
|
||||
fn_setMilestoneList();
|
||||
fn_getProjectMemberList();
|
||||
});
|
||||
|
||||
$("#productGroupObjId").change(function(){
|
||||
fn_setProductList();
|
||||
})
|
||||
|
||||
if("${null ne projectMap.OEM_OBJID}"){
|
||||
oemObjId = "${projectMap.OEM_OBJID}"
|
||||
fn_setOEMList();
|
||||
$("#oemObjId").val("${projectMap.OEM_OBJID}");
|
||||
}
|
||||
if("${null ne projectMap.CAR_OBJID}"){
|
||||
carObjId = "${projectMap.CAR_OBJID}";
|
||||
fn_setCarTypeList("${projectMap.OEM_OBJID}");
|
||||
$("#carObjId").val("${projectMap.CAR_OBJID}");
|
||||
fn_setMilestoneList();
|
||||
}
|
||||
//첨부 파일 기능
|
||||
fnc_setFileDropZone("projectDropZone", "${projectMap.OBJID}", "${docType}", "${docTypeName}", "projectAreaDraw",false,null,null);
|
||||
|
||||
projectAreaDraw();
|
||||
|
||||
$("#btnUpload").click(function(){
|
||||
var files = $("#file1")[0].files;
|
||||
if(files.length > 0){
|
||||
fnc_fileMultiUpload(files, null, "${projectMap.OBJID}", "${docType}", "${docTypeName}", null, "projectAreaDraw");
|
||||
//file객체 초기화
|
||||
$("#file1").val("");
|
||||
}else{
|
||||
Swal.fire("선택된 File이 없습니다.");
|
||||
}
|
||||
});
|
||||
|
||||
});
|
||||
</script>
|
||||
<script>
|
||||
|
||||
//oem 목록 조회
|
||||
function fn_setOEMList(){
|
||||
$.ajax({
|
||||
url:"/common/getOEMList.do",
|
||||
type:"POST",
|
||||
data:{"isJson":true},
|
||||
dataType:"json",
|
||||
async:false,
|
||||
success:function(data){
|
||||
var appendCode = "";
|
||||
$("#oemObjId").empty();
|
||||
|
||||
appendCode += "<option value=''>선택</option>";
|
||||
|
||||
$.each(data, function(i){
|
||||
appendCode += "<option value='"+data[i].OBJID+"'>"+data[i].OEM_NAME+"("+data[i].OEM_CODE+")</option>";
|
||||
});
|
||||
|
||||
$("#oemObjId").append(appendCode);
|
||||
|
||||
//oemObjId와 동일한 ObjId로 선택한다.
|
||||
$("#oemObjId").val(oemObjId);
|
||||
},
|
||||
error: function(jqxhr, status, error){
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
//car 목록 조회
|
||||
function fn_setCarTypeList(oemObjId){
|
||||
|
||||
var appendCode = "";
|
||||
|
||||
$("#carObjId").empty();
|
||||
|
||||
if(null != oemObjId && "" != oemObjId){
|
||||
$.ajax({
|
||||
url:"/common/getCarTypeList.do",
|
||||
type:"POST",
|
||||
data:{"isJson":true, "search_oemObjId":oemObjId},
|
||||
dataType:"json",
|
||||
async:false,
|
||||
success:function(data){
|
||||
var appendCode = "";
|
||||
|
||||
appendCode += "<option value=''>선택</option>";
|
||||
|
||||
$.each(data, function(i){
|
||||
appendCode += "<option value='"+data[i].OBJID+"'>"+data[i].CAR_CODE+"("+data[i].CAR_NAME+")</option>";
|
||||
});
|
||||
$("#carObjId").append(appendCode);
|
||||
$("#carObjId").val(carObjId);
|
||||
$("#carObjId").trigger("change");
|
||||
},
|
||||
error: function(jqxhr, status, error){
|
||||
}
|
||||
});
|
||||
}else{
|
||||
appendCode += "<option value=''>선택</option>";
|
||||
$("#carObjId").append(appendCode);
|
||||
}
|
||||
}
|
||||
|
||||
//milestone 목록 조회
|
||||
function fn_setMilestoneList(){
|
||||
var appendCode = "";
|
||||
|
||||
if((null != carObjId && "" != carObjId) && (null != oemObjId && "" != oemObjId)){
|
||||
$.ajax({
|
||||
url:"/project/getCarMilestoneList.do",
|
||||
type:"POST",
|
||||
data:{"CAR_OBJID":carObjId, "OEM_OBJID":oemObjId},
|
||||
dataType:"json",
|
||||
async:false,
|
||||
success:function(data){
|
||||
if(data == null || data.length == 0){
|
||||
appendCode += "<tr>";
|
||||
appendCode += "<td aling='center' colspan='3'>";
|
||||
appendCode += "조회된 정보가 없습니다.";
|
||||
appendCode += "</td>";
|
||||
appendCode += "</tr>";
|
||||
}else{
|
||||
$.each(data, function(i){
|
||||
appendCode += "<tr>";
|
||||
appendCode += "<td>"+data[i].SEQ+"</td>";
|
||||
appendCode += "<td>"+data[i].MILESTONE_NAME+"</td>";
|
||||
appendCode += "<td><input type='text' name='"+data[i].OBJID+"' id='milestoneDate_"+data[i].OBJID+"' value='"+fnc_checkNull(data[i].MILESTONE_DATE)+"'></td>";
|
||||
appendCode += "<input type='hidden' name='oemMilestoneObjId' value='"+data[i].OBJID+"'>";
|
||||
appendCode += "</tr>";
|
||||
});
|
||||
}
|
||||
$("#dataList").children().remove();
|
||||
$("#dataList").append(appendCode);
|
||||
fnc_datepick();
|
||||
},
|
||||
error: function(jqxhr, status, error){
|
||||
}
|
||||
});
|
||||
}else{
|
||||
$("#dataList").children().remove();
|
||||
appendCode += "<tr>";
|
||||
appendCode += " <td aling='center' colspan='3'>조회된 정보가 없습니다.</td>";
|
||||
appendCode += "</tr>";
|
||||
$("#dataList").append(appendCode);
|
||||
}
|
||||
}
|
||||
|
||||
//제품군 조회
|
||||
function fn_setProductGroupList(){
|
||||
$.ajax({
|
||||
url:"/common/getProductGroupList.do",
|
||||
type:"POST",
|
||||
data:{"isJson":true},
|
||||
dataType:"json",
|
||||
success:function(data){
|
||||
var appendCode = "";
|
||||
|
||||
$.each(data, function(i){
|
||||
appendCode += "<option value='"+data[i].OBJID+"'>"+data[i].PRODUCT_GROUP_NAME+"</option>";
|
||||
});
|
||||
|
||||
$("#productGroupObjId").append(appendCode);
|
||||
$("#productGroupObjId").trigger("change");
|
||||
},
|
||||
error: function(jqxhr, status, error){
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
//제품 조회
|
||||
function fn_setProductList(){
|
||||
var productGroupObjId = $("#productGroupObjId").val();
|
||||
var appendCode = "";
|
||||
|
||||
$("#productObjId").empty();
|
||||
|
||||
if(null != productGroupObjId && "" != productGroupObjId){
|
||||
$.ajax({
|
||||
url:"/common/getProductList.do",
|
||||
type:"POST",
|
||||
data:{"isJson":true, "search_productGroupObjId":productGroupObjId},
|
||||
dataType:"json",
|
||||
success:function(data){
|
||||
appendCode += "<option value=''>선택("+data.length+"개)</option>";
|
||||
|
||||
$.each(data, function(i){
|
||||
appendCode += "<option value='"+data[i].OBJID+"'>"+data[i].PRODUCT_NAME+"</option>";
|
||||
});
|
||||
|
||||
$("#productObjId").children().remove();
|
||||
$("#productObjId").append(appendCode);
|
||||
},
|
||||
error: function(jqxhr, status, error){
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
//생산공장 조회
|
||||
function fn_setFactoryList(){
|
||||
$.ajax({
|
||||
url:"/common/getFactoryList.do",
|
||||
type:"POST",
|
||||
data:{"isJson":true},
|
||||
dataType:"json",
|
||||
success:function(data){
|
||||
var appendCode = "";
|
||||
appendCode += "<option value=''>선택</option>";
|
||||
$.each(data, function(i){
|
||||
appendCode += "<option value='"+data[i].OBJID+"'>"+data[i].FACTORY_NAME+"</option>";
|
||||
});
|
||||
|
||||
$("#oemFactory").append(appendCode);
|
||||
var dbVal = fnc_checkNull("${projectMap.OEM_FACTORY}");
|
||||
if(dbVal != ""){
|
||||
$("#oemFactory > option[value="+dbVal+"]").attr("selected", "true");
|
||||
}
|
||||
},
|
||||
error: function(jqxhr, status, error){
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
//라인설치장소 조회
|
||||
function fn_setLineAreaList(i){
|
||||
$.ajax({
|
||||
url:"/common/getLineAreaList.do",
|
||||
type:"POST",
|
||||
data:{"isJson":true},
|
||||
dataType:"json",
|
||||
success:function(data){
|
||||
var appendCode = "";
|
||||
appendCode += "<option value=''>선택</option>";
|
||||
$.each(data, function(i){
|
||||
appendCode += "<option value='"+data[i].OBJID+"'>"+data[i].AREA_NAME+"</option>";
|
||||
});
|
||||
|
||||
$("#lineInstlSite").append(appendCode);
|
||||
var dbVal = fnc_checkNull("${projectMap.LINE_INSTL_SITE_OBJID}");
|
||||
if(dbVal != ""){
|
||||
$("#lineInstlSite > option[value="+dbVal+"]").attr("selected", "true");
|
||||
}
|
||||
},
|
||||
error: function(jqxhr, status, error){
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
//제품군, 제품 선택하여 프로젝트에 품목을 추가한다.
|
||||
function fn_addProjectProduct(){
|
||||
var productGroupSelectedObj = $("#productGroupObjId option:selected");
|
||||
var productSelectedObj = $("#productObjId option:selected");
|
||||
var orderProductObj = $("#orderProduct");
|
||||
|
||||
var addedProductCnt = $("tr [name=addedOrderProduct]").size();
|
||||
if("" == productGroupSelectedObj.val() || "" == productSelectedObj.val()){
|
||||
Swal.fire("선택된 제품군/제품이 없습니다.");
|
||||
return false;
|
||||
}else{
|
||||
|
||||
//이미 추가된 품목을 확인
|
||||
if(0 < orderProductObj.find("#"+productSelectedObj.val()).size()){
|
||||
Swal.fire("이미 추가된 제품입니다.");
|
||||
return false;
|
||||
}
|
||||
|
||||
//품목이 없을 시 문구 출력
|
||||
if(0 < $("#orderProductDefaultRow").size()){
|
||||
$("#orderProductDefaultRow").hide();
|
||||
}
|
||||
|
||||
var appendText = "<tr id='"+productSelectedObj.val()+"' name='addedOrderProduct'>";
|
||||
appendText+= " <td>"+(addedProductCnt+1)+"</td>";
|
||||
appendText+= " <td>"+productGroupSelectedObj.text();+"</td>";
|
||||
appendText+= " <td>"+productSelectedObj.text();+"</td>";
|
||||
appendText+= " <td><input type='button' value='삭제' class='blue_btn' onclick=\"fn_deleteProjectProduct('"+productSelectedObj.val()+"');\"></td>";
|
||||
appendText+= " <input type='hidden' name='addedOrderProductObjId' value='"+productSelectedObj.val()+"'>";
|
||||
appendText+= "</tr>";
|
||||
orderProductObj.append(appendText);
|
||||
}
|
||||
}
|
||||
|
||||
//추가된 프로젝트 수주품목을 삭제한다.
|
||||
function fn_deleteProjectProduct(addedProductObjId){
|
||||
if(null != addedProductObjId){
|
||||
$("#"+addedProductObjId).remove();
|
||||
}
|
||||
var addedProductCnt = $("tr [name=addedOrderProduct]").size();
|
||||
var defalutRowCnt = $("#orderProductDefaultRow").size();
|
||||
if(0 == addedProductCnt){
|
||||
if(0 < defalutRowCnt){
|
||||
$("#orderProductDefaultRow").show();
|
||||
}else{
|
||||
var appendText = "<tr id='orderProductDefaultRow' name='orderProductDefaultRow' >";
|
||||
appendText+= " <td colspan='4'>연결된 개발품목이 없습니다.</td>";
|
||||
appendText+= "</tr>";
|
||||
|
||||
$("#orderProduct").append(appendText);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//해당하는 차종의 TFT멤버 목록을 가져온다.
|
||||
function fn_getProjectMemberList(){
|
||||
var appendText = "";
|
||||
$("#projectMemberList").empty();
|
||||
|
||||
if(null != carObjId && "" != carObjId){
|
||||
$.ajax({
|
||||
url:"/project/getProjectMemberList.do",
|
||||
type:"POST",
|
||||
data:{"isJson":true, "search_carObjId":carObjId},
|
||||
dataType:"json",
|
||||
async:false,
|
||||
success:function(data){
|
||||
if(0 < data.length){
|
||||
$.each(data, function(i){
|
||||
appendText += "<tr name='projectMember'>";
|
||||
appendText += " <td>"+fnc_checkNull(data[i].RNUM);+"</td>";
|
||||
appendText += " <td>"+fnc_checkNull(data[i].DEPT_NAME);+"</td>";
|
||||
appendText += " <td>"+fnc_checkNull(data[i].USER_NAME);+"</td>";
|
||||
appendText += " <td>";
|
||||
if("0" == fnc_checkNull(data[i].IS_TFT_LEADER)){
|
||||
appendText+="CFT장 "
|
||||
}
|
||||
if("0" == fnc_checkNull(data[i].IS_PROJ_LEADER)){
|
||||
appendText+="PL"
|
||||
}
|
||||
appendText += " </td>";
|
||||
appendText += "</tr>";
|
||||
});
|
||||
}else{
|
||||
appendText += "<tr>";
|
||||
appendText += " <td colspan='4'>해당하는 CFT 인원이 없습니다.</td>";
|
||||
appendText += "</tr>";
|
||||
}
|
||||
},
|
||||
error: function(jqxhr, status, error){
|
||||
}
|
||||
});
|
||||
}else{
|
||||
appendText += "<tr>";
|
||||
appendText += " <td colspan='4'>해당하는 CFT 인원이 없습니다.</td>";
|
||||
appendText += "</tr>";
|
||||
}
|
||||
$("#projectMemberList").append(appendText);
|
||||
}
|
||||
|
||||
//작성된 프로젝트의 내용을 저장한다.
|
||||
function fn_saveProjectInfo(){
|
||||
|
||||
if(fnc_valitate("form1")){
|
||||
|
||||
//생산총 수량의 입력값 유효성을 검사한다.
|
||||
if("" != fnc_checkNull($("#totalProductionCnt").val())){
|
||||
fnc_checkDataType("number",$("#totalProductionCnt").val());
|
||||
}
|
||||
if("" != fnc_checkNull($("#avgProductionCnt").val())){
|
||||
//연견생산 총 수량의 입력값 유효성을 검사한다.
|
||||
fnc_checkDataType("number",$("#avgProductionCnt").val());
|
||||
}
|
||||
/* if("" != fnc_checkNull($("#lineInstlSiteArea").val())){
|
||||
//라인면적의 입력값 유효성을 검사한다.
|
||||
fnc_checkDataType("number",$("#lineInstlSiteArea").val());
|
||||
} */
|
||||
|
||||
var resultFlag = false;
|
||||
//프로젝트 멤버 유무를 확인한다.
|
||||
resultFlag = fn_checkProjectMember(resultFlag);
|
||||
|
||||
if(resultFlag){
|
||||
//프로젝트 수주품목 입력여부를 확인한다.
|
||||
resultFlag = fn_checkProjectProduct(resultFlag);
|
||||
}
|
||||
|
||||
if(resultFlag){
|
||||
//프로젝트의 중복여부를 확인한다.
|
||||
resultFlag = fn_checkProjectDuplicate(resultFlag);
|
||||
}
|
||||
|
||||
document.form1.status.value="create";
|
||||
|
||||
if(resultFlag){
|
||||
if(confirm("저장하시겠습니까?")){
|
||||
var returnUrl = "/project/projectDetailPopUp.do"
|
||||
var form = $("#form1").serialize();
|
||||
$.ajax({
|
||||
url:"/project/saveProjectInfo.do",
|
||||
type:"POST",
|
||||
data:form,
|
||||
dataType:"json",
|
||||
async:false,
|
||||
success:function(data){
|
||||
if(data.result){
|
||||
Swal.fire("저장하였습니다.");
|
||||
opener.fn_search();
|
||||
if(data.result == "true"){
|
||||
document.form1.action = returnUrl;
|
||||
document.form1.submit();
|
||||
}
|
||||
}else{
|
||||
Swal.fire("오류가 발생하였습니다.");
|
||||
}
|
||||
},
|
||||
error: function(jqxhr, status, error){
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Project 저장 시 동일 프로젝트의 중복여부를 확인한다.
|
||||
function fn_checkProjectDuplicate(returnFlag){
|
||||
$.ajax({
|
||||
url:"/project/checkProjectDuplicate.do",
|
||||
type:"POST",
|
||||
data:$("#form1").serialize(),
|
||||
dataType:"json",
|
||||
async:false,
|
||||
success:function(data){
|
||||
if(0 == Number(data.CNT)){
|
||||
returnFlag = true;
|
||||
}else{
|
||||
Swal.fire("동일 내용의 프로젝트가 이미 존재 합니다.");
|
||||
returnFlag = false;
|
||||
}
|
||||
},
|
||||
error: function(jqxhr, status, error){
|
||||
}
|
||||
});
|
||||
return returnFlag;
|
||||
}
|
||||
|
||||
|
||||
//프로젝트 멤버의 구성여부를 확인한다.
|
||||
function fn_checkProjectMember(result){
|
||||
var projectMemberCnt = fnc_checkNull($("tr [name=projectMember]").size());
|
||||
if(0 == projectMemberCnt){
|
||||
Swal.fire("지정된 프로젝트 멤버가 없습니다.");
|
||||
result = false;
|
||||
}else{
|
||||
result = true;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
//프로젝트의 제품 유무를 확인하다.
|
||||
function fn_checkProjectProduct(result){
|
||||
var projectProductCnt = $("tr [name=addedOrderProduct]").size();
|
||||
if(0 == projectProductCnt){
|
||||
Swal.fire("프로젝트에 해당하는 품목이 없습니다.");
|
||||
result = false;
|
||||
}else{
|
||||
result = true;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
function refeshAttachFileArea(){
|
||||
projectAreaDraw();
|
||||
}
|
||||
|
||||
//형상 영역을 display 한다.
|
||||
function projectAreaDraw(){
|
||||
fn_fileCallback("project","${docType}");
|
||||
}
|
||||
|
||||
//첨부파일 목록을 가져온다.
|
||||
function fn_fileCallback(areaId,fileType){
|
||||
$.ajax({
|
||||
url:"/common/getFileList.do",
|
||||
type:"POST",
|
||||
data:{"targetObjId":"${projectMap.OBJID}", "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("project" == 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='*'>";
|
||||
appendText +=" <col width='15%'>";
|
||||
appendText +=" <col width='15%'>";
|
||||
appendText +=" <col width='15%''>";
|
||||
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></td>";
|
||||
appendText+= " <td>"+data[i].DEPT_NAME+"</td>"
|
||||
appendText+= " <td>"+data[i].USER_NAME+"</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 fileDelete(fileObjId, callbackFnc, confirmFlag){
|
||||
if(confirmFlag){
|
||||
fnc_deleteFile(fileObjId, callbackFnc);
|
||||
}else{
|
||||
$.ajax({
|
||||
url:"/common/deleteFileInfo.do",
|
||||
type:"POST",
|
||||
data:{"objId":fileObjId},
|
||||
dataType:"json",
|
||||
async:true,
|
||||
success:function(data){
|
||||
eval(callbackFnc+"();");
|
||||
},
|
||||
error: function(jqxhr, status, error){
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//코드값을 받아와서 동적으로 selectbox 생성
|
||||
function optionJobGroup(code){
|
||||
var val=code;
|
||||
var params = "";
|
||||
var option="";
|
||||
var combobox = $("#cft_userid");
|
||||
combobox.empty();
|
||||
if(val!=""){
|
||||
params += "codeId="+val;
|
||||
$.ajax({
|
||||
type : "POST",
|
||||
url : "/projectConcept/makewrite.do",
|
||||
data : params,
|
||||
dataType:"json",
|
||||
async: false,
|
||||
success: function(data){
|
||||
if(data.RESULT !=""){
|
||||
option += "<option value=''>선택</option>";
|
||||
option += data.RESULT;
|
||||
combobox.append(option);
|
||||
}
|
||||
}
|
||||
});
|
||||
// Swal.fire(Number(lev-1));
|
||||
//$("#code"+Number(lev-1)).val(code).prop("selected", true);
|
||||
}else{
|
||||
|
||||
option += "<option value=''>선택</option>";
|
||||
combobox.append(option);
|
||||
}
|
||||
}
|
||||
|
||||
function optionJobGroup1(code){
|
||||
var appendText = "";
|
||||
var val=code;
|
||||
$("#projectMember").remove();
|
||||
|
||||
if(""!=code){
|
||||
|
||||
appendText += "<tr name='projectMember' id='projectMember'>";
|
||||
appendText += " <td>"+999+"</td>";
|
||||
appendText += " <td>"+$("#team_cd option:selected").text();+"</td>";
|
||||
appendText += " <td>"+$("#cft_userid option:selected").text();+"</td>";
|
||||
appendText += " <td>";
|
||||
appendText+="CFT장 "
|
||||
appendText += " </td>";
|
||||
appendText += "</tr>";
|
||||
|
||||
$("#projectMemberList").append(appendText);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</script>
|
||||
<body>
|
||||
<form name="form1" id="form1" action="" method="post">
|
||||
<input type="hidden" name="objId" id="objId" value="${projectMap.OBJID}">
|
||||
<input type="hidden" name="status" id="status" value="${projectMap.STATUS}">
|
||||
<section class="business_popup_min_width">
|
||||
<div class="plm_menu_name">
|
||||
<h2>
|
||||
<span>프로젝트 등록</span>
|
||||
</h2>
|
||||
</div>
|
||||
<div id="businessPopupFormWrap">
|
||||
<table class="pmsPopupForm" style="width:45%;margin: 10px 0 0 0; float:left;">
|
||||
<colgroup>
|
||||
<col width="13%"/>
|
||||
<col width="*"/>
|
||||
<col width="*"/>
|
||||
<col width="20%"/>
|
||||
<col width="*"/>
|
||||
<col width="*"/>
|
||||
</colgroup>
|
||||
<tr>
|
||||
<td class="input_title">
|
||||
<label for="">지역</label>
|
||||
</td>
|
||||
<td colspan="2">
|
||||
<select name="foreignType" id="foreignType" required reqTitle="지역" type="select">
|
||||
<option value="">선택</option>
|
||||
<option value="D" ${'D' eq projectMap.FOREIGN_TYPE ? 'selected':''}>국내</option>
|
||||
<option value="F" ${'F' eq projectMap.FOREIGN_TYPE ? 'selected':''}>해외</option>
|
||||
</select>
|
||||
</td>
|
||||
<td class="input_title">
|
||||
<label for="">프로젝트Type</label>
|
||||
</td>
|
||||
<td colspan="2">
|
||||
<select name="projectType" id="projectType" required reqTitle="프로젝트Type" type="select">
|
||||
<option value="">선택</option>
|
||||
<option value="new" ${'new' eq projectMap.PROJECT_TYPE ? 'selected':''}>신차</option>
|
||||
<option value="derivative" ${'derivative' eq projectMap.PROJECT_TYPE ? 'selected':''}>파생차</option>
|
||||
<option value="sample" ${'sample' eq projectMap.PROJECT_TYPE ? 'selected':''}>시작차</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="input_title">
|
||||
<label for="">고객사</label>
|
||||
</td>
|
||||
<td colspan="2">
|
||||
<select name="oemObjId" id="oemObjId" required reqTitle="고객사" type="select">
|
||||
<option value="">선택</option>
|
||||
</select>
|
||||
</td>
|
||||
<td class="input_title">
|
||||
<label for="">차종(모델)코드</label>
|
||||
</td>
|
||||
<td colspan="2">
|
||||
<select name="carObjId" id="carObjId" required reqTitle="차종" type="select"></select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="input_title">
|
||||
<label for="">개발일정</label>
|
||||
</td>
|
||||
<td colspan="5">
|
||||
<div style="overflow-y:scroll;">
|
||||
<table class="project_form_in_table" style="width:100%;">
|
||||
<colgroup>
|
||||
<col width="10%"/>
|
||||
<col width="70%"/>
|
||||
<col width="20%"/>
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<td>No</td>
|
||||
<td>Mile stone</td>
|
||||
<td>Date</td>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
</div>
|
||||
<div class="in_table_scroll_wrap" style="width:100%; height:206px;">
|
||||
<table class="plm_table">
|
||||
<colgroup>
|
||||
<col width="10%"/>
|
||||
<col width="70%"/>
|
||||
<col width="20%"/>
|
||||
</colgroup>
|
||||
<tbody id="dataList">
|
||||
<tr>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="input_title">
|
||||
<label for="team_cd">팀명</label>
|
||||
</td>
|
||||
<td colspan="2">
|
||||
<select name="team_cd" id="team_cd" required reqTitle="팀명" type="select" onchange='optionJobGroup($(this).val())'>
|
||||
<option value="">선택</option>
|
||||
${code_map.team_cd}
|
||||
</select>
|
||||
</td>
|
||||
<td class="input_title">
|
||||
<label for="cft_userid">CFT장</label>
|
||||
</td>
|
||||
<td colspan="2">
|
||||
<select name="cft_userid" id="cft_userid" required reqTitle="CFT장" type="select" onchange='optionJobGroup1($(this).val())'>
|
||||
<option value="">선택</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="input_title">
|
||||
<label for="">제품군</label>
|
||||
</td>
|
||||
<td colspan="2">
|
||||
<select name="productGroupObjId" id="productGroupObjId" type="select">
|
||||
</select>
|
||||
</td>
|
||||
<td class="input_title">
|
||||
<label for="">제품</label>
|
||||
</td>
|
||||
<td colspan="2">
|
||||
<select name="productObjId" id="productObjId" style="width:70%;">
|
||||
</select>
|
||||
<input type="button" value="추가" class="blue_btn" onclick="fn_addProjectProduct();">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="input_title">
|
||||
<label for="">개발품목</label>
|
||||
</td>
|
||||
<td colspan="5">
|
||||
<div style="overflow-y:scroll;">
|
||||
<table class="project_form_in_table" style="width:100%;">
|
||||
<colgroup>
|
||||
<col width="10%"/>
|
||||
<col width="25%"/>
|
||||
<col width="53%"/>
|
||||
<col width="12%"/>
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<td>No</td>
|
||||
<td>제품군</td>
|
||||
<td>제품</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
</div>
|
||||
<div class="in_table_scroll_wrap" style="width:100%;">
|
||||
<table class="plm_table">
|
||||
<colgroup>
|
||||
<col width="10%"/>
|
||||
<col width="25%"/>
|
||||
<col width="53%"/>
|
||||
<col width="12%"/>
|
||||
</colgroup>
|
||||
<tbody id="orderProduct">
|
||||
<c:choose>
|
||||
<c:when test="${empty projectConnectProductList}">
|
||||
<tr id="orderProductDefaultRow" name="orderProductDefaultRow" >
|
||||
<td colspan="4">연결된 개발품목이 없습니다.</td>
|
||||
</tr>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<c:forEach var="item" items="${projectConnectProductList}" varStatus="status">
|
||||
<tr id="${item.SUB_OBJID}" name="addedOrderProduct">
|
||||
<td>${item.RNUM}</td>
|
||||
<td>${item.PRODUCT_GROUP_NAME}</td>
|
||||
<td>${item.PRODUCT_NAME}</td>
|
||||
<td><input type="button" value="삭제" class="blue_btn" onclick="fn_deleteProjectProduct('${item.SUB_OBJID}');"></td>
|
||||
<input type="hidden" name="addedOrderProductObjId" value="${item.SUB_OBJID}">
|
||||
</tr>
|
||||
</c:forEach>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<table class="pmsPopupForm" style="width:55%;margin: 10px 0 0 0;">
|
||||
<colgroup>
|
||||
<col width="13%"/>
|
||||
<col width="*"/>
|
||||
<col width="*"/>
|
||||
<col width="15%"/>
|
||||
<col width="*"/>
|
||||
<col width="*"/>
|
||||
</colgroup>
|
||||
<tr>
|
||||
<td class="input_title">
|
||||
<label for="">생산총수량</label>
|
||||
</td>
|
||||
<td colspan="2">
|
||||
<input type="text" class="textbox" name="totalProductionCnt" id="totalProductionCnt" value="${projectMap.TOTAL_PRODUCTION_CNT}" onkeyup="fnc_checkDataType('number',this.value);" maxlength="8">
|
||||
</td>
|
||||
<td class="input_title">
|
||||
<label for="">연평균수량</label>
|
||||
</td>
|
||||
<td colspan="2">
|
||||
<input type="text" class="textbox" name="avgProductionCnt" id="avgProductionCnt" value="${projectMap.YEARLY_AVG_PRODUCTION_CNT}" onkeyup="fnc_checkDataType('number',this.value);" maxlength="8">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="input_title">
|
||||
<label for="">생산공장</label>
|
||||
</td>
|
||||
<td colspan="2">
|
||||
<select name="lineInstlSite" id="lineInstlSite" required reqTitle="생산공장" value="${projectMap.LINE_INSTL_SITE_OBJID}">
|
||||
|
||||
</select>
|
||||
</td>
|
||||
<%-- <td class="input_title">
|
||||
<label for="" >라인면적</label>
|
||||
</td>
|
||||
<td colspan="2">
|
||||
<input type="text" class="textbox" name="lineInstlSiteArea" id="lineInstlSiteArea" value="${projectMap.LINE_INSTL_SITE_AREA}" onkeyup="fnc_checkDataType('number',this.value);" maxlength="8">
|
||||
</td> --%>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="checkboxName_60px input_title">
|
||||
<label for="">CFT조직</label>
|
||||
</td>
|
||||
<td colspan="5">
|
||||
<div style="overflow-y:scroll;">
|
||||
<table class="project_form_in_table" style="width:100%;">
|
||||
<colgroup>
|
||||
<col width="10%"/>
|
||||
<col width="*"/>
|
||||
<col width="*"/>
|
||||
<col width="*"/>
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<td>No</td>
|
||||
<td>팀명</td>
|
||||
<td>담당자</td>
|
||||
<td>역할</td>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
</div>
|
||||
<div class="in_table_scroll_wrap" style="width:100%; height:205px;">
|
||||
<table class="plm_table">
|
||||
<colgroup>
|
||||
<col width="10%"/>
|
||||
<col width="*"/>
|
||||
<col width="*"/>
|
||||
<col width="*"/>
|
||||
</colgroup>
|
||||
<tbody id="projectMemberList"></tbody>
|
||||
</table>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<table class="pmsPopupForm" style="width:55%; margin-top:0; ">
|
||||
<colgroup>
|
||||
<col width="13%"/>
|
||||
<col width="*"/>
|
||||
<col width="13%"/>
|
||||
<col width="*"/>
|
||||
</colgroup>
|
||||
<tr>
|
||||
<td rowspan="2" class="input_title">
|
||||
<label for="">파일첨부</label>
|
||||
</td>
|
||||
<td colspan="5">
|
||||
<div id="projectDropZone" class="dropzone"style="width:99% !important;">Drag & Drop Files Here</div>
|
||||
<input type="file" name="file1" id="file1" multiple style="width:88%">
|
||||
<input type="button" id="btnUpload" value="Upload">
|
||||
<br>
|
||||
<div id="projectFileAreaTable" class="project_form_in_table" style="width:100% !important;">
|
||||
<div style="overflow-y:scroll;">
|
||||
<table id="" class="fileListscrollThead" style="width:100% !important;">
|
||||
<colgroup>
|
||||
<col width="10%">
|
||||
<col width="*">
|
||||
<col width="15%">
|
||||
<col width="15%">
|
||||
<col width="15%">
|
||||
</colgroup>
|
||||
<tr>
|
||||
<td>No</td>
|
||||
<td>파일명</td>
|
||||
<td>팀명</td>
|
||||
<td>등록자</td>
|
||||
<td>등록일</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div style="width:100%; height: 148px; border-bottom: 2px solid #cacaca;"class="in_table_scroll_wrap">
|
||||
<table id="projectFileArea" class="fileListscrollTbody" >
|
||||
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class="btn_wrap" style="clear:both;">
|
||||
<div class="plm_btn_wrap_center">
|
||||
<input type="button" value="저장" class="plm_btns" onclick="fn_saveProjectInfo();">
|
||||
<c:choose>
|
||||
<c:when test="${param.actionType eq 'regist'}">
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<input type="button" id="btnCancel" value="취소" class="plm_btns" data-OBJID="${projectMap.OBJID}">
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
<input type="button" value="닫기" id="btn_close" class="plm_btns">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user