Files
wace_plm/WebContent/WEB-INF/view/common/searchMultiEmployeePopUp.jsp
chpark da06c4684c Initial commit: WACE PLM with database initialization features
- Add Docker Compose configurations for dev, prod, and standalone environments
- Add database initialization scripts (init-db.sh, init-db-docker.sh)
- Add enhanced start-docker-linux.sh with DB init support
- Add comprehensive database initialization guide
- Support for automatic dbexport.pgsql import on first run
- Include safety checks for production environment
2025-08-29 15:46:08 +09:00

204 lines
6.4 KiB
Plaintext

<%@ 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>
<!--
한화면에서 각기 다른 인원정보 set할 경우 사용
targetId는 HTML상의 id를 지칭한다.
-->
<c:set var="targetId" value="${empty param.targetId?'':param.targetId}" />
</head>
<script>
$(document).ready(function(){
$("#btnClose").click(function(){
self.close(0);
});
$("input").keyup(function(e){
if(e.keyCode == 13){
$("#btnSearch").trigger("click");
}
});
$("#btnSearch").click(function(){
var userTypeName = $("#search_userTypeName").val();
var deptName = $("#search_deptName").val();
var userName = $("#search_userName").val();
$.ajax({
url:"/common/searchUserList.do",
type:"POST",
data:{"isJson":true, "search_userTypeName":userTypeName, "search_deptName":deptName, "search_userName":userName, "search_dataType":"${param.dataType}"},
dataType:"json",
success:function(data){
var appendCode = "";
$.each(data, function(i){
appendCode += "<tr style='cursor:pointer;' class='btnUsers'>";
appendCode += "<td><input type='checkbox' name='checkUserId' data-USER_ID='"+data[i].USER_ID+"' data-USER_NAME='"+data[i].USER_NAME+"' data-DEPT_NAME='"+data[i].DEPT_NAME+"' data-DEPT_CODE='"+data[i].DEPT_CODE+"'></td>";
appendCode += "<td>"+(i+1)+"</td>";
appendCode += "<td>"+data[i].USER_TYPE_NAME+"</td>";
appendCode += "<td>"+data[i].DEPT_NAME+"</td>";
appendCode += "<td>"+data[i].USER_NAME+"</td>";
appendCode += "</tr>";
});
$("#dataList").children().remove();
$("#dataList").append(appendCode);
},
error: function(jqxhr, status, error){
}
});
});
$(document).on("click", ".btnSave", function(){
var checkUserObj = $("input[name=checkUserId]:checked");
if(checkUserObj == 0){
Swal.fire("선택된 인원이 없습니다.");
return false;
}else{
if("${isMulti}" == "true" || "${isMulti}" == true){
var duplicateDeptFlag = true;
var deptCode = "";
$.each(checkUserObj,function(i){
if(deptCode == ""){
deptCode = $(this).attr("data-DEPT_CODE");
}else{
if(deptCode == $(this).attr("data-DEPT_CODE")){
duplicateDeptFlag = false;
}
}
});
if(!duplicateDeptFlag){
Swal.fire("부서별 1명만 지정 가능합니다.");
return false;
}else{
}
}
}
var userId = $(this).attr("data-USER_ID");
var userName = $(this).attr("data-USER_NAME");
var deptName = $(this).attr("data-DEPT_NAME");
var deptCode = $(this).attr("data-DEPT_CODE");
if("" != "${targetId}"){
//한 화면에 각기 다른 영역에 인원 정보를 set 경우 parameter에 targetId를 추가, 실행되는 param.callback에서 targetId로 분기하여 처리한다.
eval("top.opener.${param.callback}('"+userId+"', '"+userName+"', '"+deptName+"','"+deptCode+"','${targetId}');");
}else{
//한 화면에 인원정보를 set 할 영역이 하나일 경우 사용
eval("top.opener.${param.callback}('"+userId+"', '"+userName+"', '"+deptName+"','"+deptCode+"');");
}
self.close(0);
//Swal.fire("userId : "+userId+", userName : "+userName+", deptName : "+deptName);
});
//loading시 사용자명 조회로 focus 이동
$("#search_userName").focus();
});
</script>
<body>
<form name="form1" action="" method="post">
<section class="business_staff_popup_min_width">
<div class="plm_menu_name">
<h2>
<span>사용자 조회</span>
</h2>
</div>
<div id="businessPopupFormWrap">
<div class="form_popup_title">&nbsp;&nbsp;&nbsp;${empty param.title?'사용자 조회':param.title}</div>
<table class="pmsPopupForm">
<colgroup>
<col width="13%"/>
<col width="*"/>
<col width="13%"/>
<col width="*"/>
<col width="15%"/>
<col width="*"/>
<col width="40px"/>
</colgroup>
<tr>
<td class="input_title">
<label for="">소속</label>
</td>
<td colspan="">
<input type="text" name="search_userTypeName" id="search_userTypeName" class="textbox" style="width:100%;" />
</td>
<td class="input_title">
<label for="">팀명</label>
</td>
<td colspan="">
<input type="text" name="search_deptName" id="search_deptName" class="textbox" style="width:100%;" />
</td>
<td class="input_title">
<label for="">성명</label>
</td>
<td colspan="">
<input type="text" name="search_userName" id="search_userName" class="textbox" style="width:100%;" />
</td>
<td>
<input type="button" value="조회" id="btnSearch" class="blue_btn">
</td>
</tr>
<tr>
<td colspan="7">
<div style="overflow-y:scroll;">
<table class="project_form_in_table" style="width:100%;">
<colgroup>
<col width="10%"/>
<col width="30%"/>
<col width="*"/>
<col width="20%"/>
</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="30%"/>
<col width="*"/>
<col width="20%"/>
</colgroup>
<tbody id="dataList">
<tr>
<td colspan="4" align="center">조회결과가 없습니다.</td>
</tr>
</tbody>
</table>
</div>
</td>
</tr>
</table>
<div class="btn_wrap">
<div class="plm_btn_wrap_center">
<input type="button" value="지정" class="plm_btns btnSave">
<input type="button" value="닫기" id="btnClose" class="plm_btns">
</div>
</div>
</div>
</section>
</form>
</body>
</html>