창고관리 기능은 구현 css 해야함
This commit is contained in:
@@ -8525,4 +8525,252 @@ FROM (
|
||||
ORDER BY V.PATH
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- 11월 19일 추가한 창고관리 매퍼 -->
|
||||
|
||||
|
||||
<select id="getWarehouseList" parameterType="map" resultType="map">
|
||||
SELECT
|
||||
OBJID,
|
||||
LOCATION_CODE,
|
||||
LOCATION_NAME,
|
||||
LOCATION_DESCRIPTION,
|
||||
OUT_CODE,
|
||||
OUT_CO_NAME,
|
||||
FIT_STATUS,
|
||||
AVAILABLE_STATUS,
|
||||
USE_STATUS,
|
||||
BASE_LOC_CD,
|
||||
CO_CD,
|
||||
LOC_NMK,
|
||||
INSERT_ID,
|
||||
INSERT_IP,
|
||||
TO_CHAR(INSERT_DT, 'YYYY-MM-DD HH24:MI:SS') AS INSERT_DT,
|
||||
MODIFY_ID,
|
||||
MODIFY_IP,
|
||||
TO_CHAR(MODIFY_DT, 'YYYY-MM-DD HH24:MI:SS') AS MODIFY_DT,
|
||||
ATTR_NMK,
|
||||
WRITER,
|
||||
TO_CHAR(REGDATE, 'YYYY-MM-DD') AS REGDATE,
|
||||
STATUS
|
||||
FROM
|
||||
WAREHOUSE_LOCATION
|
||||
WHERE 1=1
|
||||
<if test="searchLocationCode != null and searchLocationCode != ''">
|
||||
AND UPPER(LOCATION_CODE) LIKE UPPER('%${searchLocationCode}%')
|
||||
</if>
|
||||
<if test="searchLocationName != null and searchLocationName != ''">
|
||||
AND UPPER(LOCATION_NAME) LIKE UPPER('%${searchLocationName}%')
|
||||
</if>
|
||||
ORDER BY LOCATION_CODE
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
<select id="getWarehouseListInfo" parameterType="map" resultType="map">
|
||||
SELECT
|
||||
OBJID,
|
||||
LOCATION_CODE,
|
||||
LOCATION_NAME,
|
||||
LOCATION_DESCRIPTION,
|
||||
OUT_CODE,
|
||||
OUT_CO_NAME,
|
||||
FIT_STATUS,
|
||||
AVAILABLE_STATUS,
|
||||
USE_STATUS,
|
||||
BASE_LOC_CD,
|
||||
CO_CD,
|
||||
LOC_NMK,
|
||||
INSERT_ID,
|
||||
INSERT_IP,
|
||||
TO_CHAR(INSERT_DT, 'YYYY-MM-DD HH24:MI:SS') AS INSERT_DT,
|
||||
MODIFY_ID,
|
||||
MODIFY_IP,
|
||||
TO_CHAR(MODIFY_DT, 'YYYY-MM-DD HH24:MI:SS') AS MODIFY_DT,
|
||||
ATTR_NMK,
|
||||
WRITER,
|
||||
TO_CHAR(REGDATE, 'YYYY-MM-DD') AS REGDATE,
|
||||
STATUS
|
||||
FROM
|
||||
WAREHOUSE_LOCATION
|
||||
WHERE
|
||||
OBJID = #{OBJID}::numeric
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
<select id="getDuplicateWarehouseListInfo" parameterType="map" resultType="map">
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
WAREHOUSE_LOCATION T
|
||||
WHERE 1=1
|
||||
<if test="objid != null and objid != ''">
|
||||
AND OBJID != #{objid}::numeric
|
||||
</if>
|
||||
<if test="location_code != null and location_code != ''">
|
||||
AND TRIM(UPPER(LOCATION_CODE)) = TRIM(UPPER(#{location_code}))
|
||||
</if>
|
||||
</select>
|
||||
|
||||
|
||||
<update id="mergewarehouseListInfo" parameterType="map">
|
||||
INSERT INTO WAREHOUSE_LOCATION
|
||||
(
|
||||
OBJID,
|
||||
LOCATION_CODE,
|
||||
LOCATION_NAME,
|
||||
LOCATION_DESCRIPTION,
|
||||
OUT_CODE,
|
||||
OUT_CO_NAME,
|
||||
FIT_STATUS,
|
||||
AVAILABLE_STATUS,
|
||||
USE_STATUS,
|
||||
BASE_LOC_CD,
|
||||
CO_CD,
|
||||
LOC_NMK,
|
||||
INSERT_ID,
|
||||
INSERT_IP,
|
||||
INSERT_DT,
|
||||
MODIFY_ID,
|
||||
MODIFY_IP,
|
||||
MODIFY_DT,
|
||||
ATTR_NMK,
|
||||
WRITER,
|
||||
REGDATE,
|
||||
STATUS
|
||||
)
|
||||
VALUES
|
||||
(
|
||||
#{objid}::numeric,
|
||||
#{location_code},
|
||||
#{location_name},
|
||||
#{location_description},
|
||||
#{out_code},
|
||||
#{out_co_name},
|
||||
#{fit_status},
|
||||
#{available_status},
|
||||
COALESCE(#{use_status}, 'Y'),
|
||||
#{base_loc_cd},
|
||||
#{co_cd},
|
||||
#{loc_nmk},
|
||||
#{insert_id},
|
||||
#{insert_ip},
|
||||
CASE WHEN #{insert_dt} = '' THEN NOW() ELSE COALESCE(#{insert_dt}::timestamp, NOW()) END,
|
||||
#{modify_id},
|
||||
#{modify_ip},
|
||||
CASE WHEN #{modify_dt} = '' THEN NULL ELSE #{modify_dt}::timestamp END,
|
||||
#{attr_nmk},
|
||||
#{writer},
|
||||
NOW(),
|
||||
COALESCE(#{status}, 'ACTIVE')
|
||||
)
|
||||
ON CONFLICT (OBJID) DO UPDATE
|
||||
SET
|
||||
LOCATION_NAME = #{location_name},
|
||||
LOCATION_DESCRIPTION = #{location_description},
|
||||
OUT_CODE = #{out_code},
|
||||
OUT_CO_NAME = #{out_co_name},
|
||||
FIT_STATUS = #{fit_status},
|
||||
AVAILABLE_STATUS = #{available_status},
|
||||
USE_STATUS = #{use_status},
|
||||
BASE_LOC_CD = #{base_loc_cd},
|
||||
CO_CD = #{co_cd},
|
||||
LOC_NMK = #{loc_nmk},
|
||||
MODIFY_ID = #{modify_id},
|
||||
MODIFY_IP = #{modify_ip},
|
||||
MODIFY_DT = CASE WHEN #{modify_dt} = '' THEN NOW() ELSE COALESCE(#{modify_dt}::timestamp, NOW()) END,
|
||||
ATTR_NMK = #{attr_nmk},
|
||||
STATUS = #{status}
|
||||
</update>
|
||||
|
||||
|
||||
<insert id="insertwarehouseListHistory" parameterType="map">
|
||||
INSERT INTO WAREHOUSE_LOCATION_HISTORY
|
||||
SELECT
|
||||
#{objid}::numeric,
|
||||
#{targetObjid}::numeric,
|
||||
LOCATION_CODE,
|
||||
LOCATION_NAME,
|
||||
LOCATION_DESCRIPTION,
|
||||
OUT_CODE,
|
||||
OUT_CO_NAME,
|
||||
FIT_STATUS,
|
||||
AVAILABLE_STATUS,
|
||||
USE_STATUS,
|
||||
BASE_LOC_CD,
|
||||
CO_CD,
|
||||
LOC_NMK,
|
||||
INSERT_ID,
|
||||
INSERT_IP,
|
||||
INSERT_DT,
|
||||
MODIFY_ID,
|
||||
MODIFY_IP,
|
||||
MODIFY_DT,
|
||||
ATTR_NMK,
|
||||
#{writer},
|
||||
NOW(),
|
||||
STATUS
|
||||
FROM
|
||||
WAREHOUSE_LOCATION
|
||||
WHERE
|
||||
OBJID = #{targetObjid}::numeric
|
||||
</insert>
|
||||
|
||||
|
||||
<select id="warehouseHistoryList" parameterType="map" resultType="map">
|
||||
SELECT
|
||||
A.*
|
||||
FROM (
|
||||
SELECT
|
||||
A.*,
|
||||
ROW_NUMBER() OVER (ORDER BY RM DESC) AS RNUM
|
||||
FROM (
|
||||
SELECT
|
||||
T.*,
|
||||
ROW_NUMBER() OVER (ORDER BY REGDATE) AS RM,
|
||||
(SELECT USER_NAME FROM USER_INFO UI WHERE T.WRITER = UI.USER_ID) AS WRITER_NAME,
|
||||
TO_CHAR(T.REGDATE, 'YYYY-MM-DD HH24:MI:SS') AS REGDATE_TITLE
|
||||
FROM
|
||||
WAREHOUSE_LOCATION_HISTORY T
|
||||
WHERE
|
||||
TARGET_OBJID = #{objId}::numeric
|
||||
) A
|
||||
WHERE 1=1
|
||||
) A
|
||||
WHERE 1=1
|
||||
AND <![CDATA[ A.RNUM::integer <= #{PAGE_END}::integer ]]>
|
||||
AND <![CDATA[ A.RNUM::integer >= #{PAGE_START}::integer ]]>
|
||||
</select>
|
||||
|
||||
|
||||
<update id="deleteWarehouse" parameterType="map">
|
||||
UPDATE
|
||||
WAREHOUSE_LOCATION
|
||||
SET
|
||||
USE_STATUS = 'N',
|
||||
MODIFY_DT = NOW()
|
||||
WHERE
|
||||
OBJID = #{OBJID}::numeric
|
||||
</update>
|
||||
|
||||
<!-- 11월 19일 추가한 창고관리 매퍼 -->
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,180 @@
|
||||
<%@ 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>
|
||||
|
||||
<!-- //JSTL 변수선언 -->
|
||||
<c:set var="totalCount" value="${empty TOTAL_COUNT?0:TOTAL_COUNT}" />
|
||||
<c:set var="maxPage" value="${empty MAX_PAGE_SIZE?1:MAX_PAGE_SIZE}" />
|
||||
<c:set var="nPage" value="${empty param.page?1:param.page}" />
|
||||
<c:set var="pageIndex" value="${(nPage-1)/10}" />
|
||||
<c:set var="nextPage" value="${empty NEXT_PAGE?1:NEXT_PAGE}" />
|
||||
<c:set var="prevPage" value="${empty PREV_PAGE?1:PREV_PAGE}" />
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
$(function(){
|
||||
|
||||
$(document).ready(function(){
|
||||
fnc_datepick();
|
||||
});
|
||||
|
||||
//엔터키로 조회
|
||||
$("input").keyup(function(e){
|
||||
if(e.keyCode == 13){
|
||||
document.form1.page.value = "1";
|
||||
fn_search();
|
||||
}
|
||||
});
|
||||
|
||||
//search
|
||||
$("#btnSearch").click(function(){
|
||||
document.form1.page.value = "1";
|
||||
fn_search();
|
||||
});
|
||||
});
|
||||
//조회 기능
|
||||
function fn_search(){
|
||||
document.form1.action = "/admin/warehouseHistoryList.do";
|
||||
document.form1.submit();
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<form name="form1" method="POST">
|
||||
<input type="hidden" name="objId" id="objId" value="${param.objId}" />
|
||||
<section id="commonSection" class="admin1">
|
||||
<div class="admin_title">
|
||||
<h2>창고관리 이력</h2>
|
||||
</div>
|
||||
<div id="adminTableWrap">
|
||||
<div id="tableWrap">
|
||||
<table id="adminTable">
|
||||
<colgroup>
|
||||
<col width="13%" />
|
||||
<col width="16%" />
|
||||
<col width="16%" />
|
||||
<col width="16%" />
|
||||
<col width="18%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
</colgroup>
|
||||
<tr id="thead">
|
||||
<td>위치코드</td>
|
||||
<td>위치명</td>
|
||||
<td>위치설명</td>
|
||||
<td>가출고코드</td>
|
||||
<td>가출고거래처명</td>
|
||||
<td>적합여부</td>
|
||||
<td>가용재고여부</td>
|
||||
<td>사용여부</td>
|
||||
<td>BASELOC_CD</td>
|
||||
<td>CO_CD</td>
|
||||
<td>LOC_NMK</td>
|
||||
<td>INSERT_ID</td>
|
||||
<td>INSERT_IP</td>
|
||||
<td>INSERT_DT</td>
|
||||
<td>MODIFY_ID</td>
|
||||
<td>MODIFY_IP</td>
|
||||
<td>MODIFY_DT</td>
|
||||
<td>ATTR_NMK</td>
|
||||
</tr>
|
||||
<c:choose>
|
||||
<c:when test="${!empty LIST}">
|
||||
<c:forEach var="info" items="${LIST}" varStatus="status">
|
||||
<tr>
|
||||
<td>${info.LOCATION_CODE}</td>
|
||||
<td>${info.LOCATION_NAME}</td>
|
||||
<td>${info.LOCATION_DESCRIPTION}</td>
|
||||
<td>${info.OUT_CODE}</td>
|
||||
<td>${info.OUT_CO_NAME}</td>
|
||||
<td>${info.FIT_STATUS}</td>
|
||||
<td>${info.AVAILABLE_STATUS}</td>
|
||||
<td>${info.USE_STATUS}</td>
|
||||
<td>${info.BASE_LOC_CD}</td>
|
||||
<td>${info.CO_CD}</td>
|
||||
<td>${info.LOC_NMK}</td>
|
||||
<td>${info.INSERT_ID}</td>
|
||||
<td>${info.INSERT_IP}</td>
|
||||
<td>${info.INSERT_DT}</td>
|
||||
<td>${info.MODIFY_ID}</td>
|
||||
<td>${info.MODIFY_IP}</td>
|
||||
<td>${info.MODIFY_DT}</td>
|
||||
<td>${info.ATTR_NMK}</td>
|
||||
</tr>
|
||||
</c:forEach>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<td align="center" colspan="18">조회된 정보가 없습니다.</td>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="pdm_page">
|
||||
<input type="hidden" name="page" id="page" value="${nPage}">
|
||||
<c:if test="${!empty LIST}">
|
||||
<div class="page_pro">
|
||||
<center>
|
||||
<table>
|
||||
<tr>
|
||||
<c:choose>
|
||||
<c:when test="${nPage > 1}">
|
||||
<td><a href="javascript:fnc_goPrev('${prevPage}');">prev</a></td>
|
||||
<td> </td>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<td class="no_more_page">prev</td>
|
||||
<td> </td>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
<c:forEach var="v" begin="${nPage>5?nPage-5:1}" end="${nPage>5?nPage+4:10}" step="1" varStatus="status">
|
||||
<c:if test="${status.index -1 < maxPage}">
|
||||
<c:choose>
|
||||
<c:when test="${status.index eq nPage}">
|
||||
<td><a href="#" class="now_page">${nPage}</a></td>
|
||||
<td> </td>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<td><a href="javascript:fnc_goPage('${status.index}');">${status.index}</a></td>
|
||||
<td> </td>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
<c:choose>
|
||||
<c:when test="${nPage < maxPage}">
|
||||
<td><a href="javascript:fnc_goNext('${nextPage}');">next</a></td>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<td class="no_more_page">next</td>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</tr>
|
||||
</table>
|
||||
<p id="adminPageCount">총 ${totalCount}건</p>
|
||||
</center>
|
||||
</div>
|
||||
</c:if>
|
||||
</div>
|
||||
</section>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,174 @@
|
||||
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
|
||||
<%@ page import="com.pms.common.utils.*"%>
|
||||
<%@include file="/init.jsp"%>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title><%=Constants.SYSTEM_NAME%></title>
|
||||
<script type="text/javascript">
|
||||
function saveWarehouse(){
|
||||
if(confirm("저장하시겠습니까?")){
|
||||
var form = document.warehouseForm;
|
||||
|
||||
// 날짜 형식 변환 (오후 2:23:33 -> 14:23:33)
|
||||
var insertDt = form.insert_dt.value;
|
||||
var modifyDt = form.modify_dt.value;
|
||||
|
||||
if(insertDt) {
|
||||
form.insert_dt.value = convertToDBFormat(insertDt);
|
||||
}
|
||||
if(modifyDt) {
|
||||
form.modify_dt.value = convertToDBFormat(modifyDt);
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "/admin/saveWarehouseListInfo.do",
|
||||
data: $(form).serialize(),
|
||||
dataType: "json",
|
||||
success: function(result){
|
||||
alert(result.message);
|
||||
if(result.resultFlag == "true"){
|
||||
opener.searchList();
|
||||
self.close();
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function convertToDBFormat(dateStr) {
|
||||
// "2021-06-10 오후 2:23:33" -> "2021-06-10 14:23:33"
|
||||
if(!dateStr) return '';
|
||||
|
||||
var parts = dateStr.split(' ');
|
||||
if(parts.length < 3) return dateStr;
|
||||
|
||||
var date = parts[0]; // 2021-06-10
|
||||
var ampm = parts[1]; // 오후 or 오전
|
||||
var time = parts[2]; // 2:23:33
|
||||
|
||||
var timeParts = time.split(':');
|
||||
var hour = parseInt(timeParts[0]);
|
||||
var minute = timeParts[1];
|
||||
var second = timeParts[2];
|
||||
|
||||
// 오후면 12 더하기 (단, 12시는 그대로)
|
||||
if(ampm === '오후' && hour !== 12) {
|
||||
hour += 12;
|
||||
}
|
||||
// 오전 12시는 0시로
|
||||
if(ampm === '오전' && hour === 12) {
|
||||
hour = 0;
|
||||
}
|
||||
|
||||
// 시간을 2자리로 맞추기
|
||||
hour = ('0' + hour).slice(-2);
|
||||
|
||||
return date + ' ' + hour + ':' + minute + ':' + second;
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<form name="warehouseForm" id="warehouseForm">
|
||||
<input type="hidden" name="objid" value="${info.OBJID}">
|
||||
<input type="hidden" name="writer" value="<%=session.getAttribute("USER_ID")%>">
|
||||
|
||||
<h2>창고 등록/수정</h2>
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td>위치코드</td>
|
||||
<td><input type="text" name="location_code" value="${info.LOCATION_CODE}" required></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>위치명</td>
|
||||
<td><input type="text" name="location_name" value="${info.LOCATION_NAME}" required></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>위치설명</td>
|
||||
<td><input type="text" name="location_description" value="${info.LOCATION_DESCRIPTION}"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>가출고코드</td>
|
||||
<td><input type="text" name="out_code" value="${info.OUT_CODE}"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>가출고거래처명</td>
|
||||
<td><input type="text" name="out_co_name" value="${info.OUT_CO_NAME}"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>적합여부</td>
|
||||
<td>
|
||||
<select name="fit_status">
|
||||
<option value="">선택</option>
|
||||
<option value="Y" ${info.FIT_STATUS eq 'Y' ? 'selected' : ''}>적합</option>
|
||||
<option value="N" ${info.FIT_STATUS eq 'N' ? 'selected' : ''}>부적합</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>가용재고여부</td>
|
||||
<td>
|
||||
<select name="available_status">
|
||||
<option value="">선택</option>
|
||||
<option value="Y" ${info.AVAILABLE_STATUS eq 'Y' ? 'selected' : ''}>여</option>
|
||||
<option value="N" ${info.AVAILABLE_STATUS eq 'N' ? 'selected' : ''}>부</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>사용여부</td>
|
||||
<td>
|
||||
<select name="use_status">
|
||||
<option value="Y" ${empty info.USE_STATUS or info.USE_STATUS eq 'Y' ? 'selected' : ''}>사용</option>
|
||||
<option value="N" ${info.USE_STATUS eq 'N' ? 'selected' : ''}>미사용</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>BASELOC_CD</td>
|
||||
<td><input type="text" name="base_loc_cd" value="${info.BASE_LOC_CD}"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>CO_CD</td>
|
||||
<td><input type="text" name="co_cd" value="${info.CO_CD}"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>LOC_NMK</td>
|
||||
<td><input type="text" name="loc_nmk" value="${info.LOC_NMK}"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>INSERT_ID</td>
|
||||
<td><input type="text" name="insert_id" value="${info.INSERT_ID}"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>INSERT_IP</td>
|
||||
<td><input type="text" name="insert_ip" value="${info.INSERT_IP}"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>INSERT_DT</td>
|
||||
<td><input type="text" name="insert_dt" value="${info.INSERT_DT}" placeholder="YYYY-MM-DD HH:MM:SS"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>MODIFY_ID</td>
|
||||
<td><input type="text" name="modify_id" value="${info.MODIFY_ID}"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>MODIFY_IP</td>
|
||||
<td><input type="text" name="modify_ip" value="${info.MODIFY_IP}"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>MODIFY_DT</td>
|
||||
<td><input type="text" name="modify_dt" value="${info.MODIFY_DT}" placeholder="YYYY-MM-DD HH:MM:SS"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>ATTR_NMK</td>
|
||||
<td><input type="text" name="attr_nmk" value="${info.ATTR_NMK}"></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<button type="button" onclick="saveWarehouse()">저장</button>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
389
WebContent/WEB-INF/view/admin/warehouseList/warehouseMngList.jsp
Normal file
389
WebContent/WEB-INF/view/admin/warehouseList/warehouseMngList.jsp
Normal file
@@ -0,0 +1,389 @@
|
||||
<%@ 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" %>
|
||||
<%
|
||||
ArrayList warehouseList = new ArrayList();
|
||||
warehouseList = (ArrayList)request.getAttribute("warehouseList");
|
||||
if(null == warehouseList){
|
||||
warehouseList = new ArrayList();
|
||||
}
|
||||
|
||||
// 검색 조건
|
||||
String searchCode = CommonUtils.checkNull(request.getParameter("searchCode"));
|
||||
String searchLocationCode = CommonUtils.checkNull(request.getParameter("searchLocationCode"));
|
||||
String searchLocationName = CommonUtils.checkNull(request.getParameter("searchLocationName"));
|
||||
String searchLocationDescription = CommonUtils.checkNull(request.getParameter("searchLocationDescription"));
|
||||
String searchOutCode = CommonUtils.checkNull(request.getParameter("searchOutCode"));
|
||||
String searchOutCoName = CommonUtils.checkNull(request.getParameter("searchOutCoName"));
|
||||
String searchFitStatus = CommonUtils.checkNull(request.getParameter("searchFitStatus"));
|
||||
String searchAvailableStatus = CommonUtils.checkNull(request.getParameter("searchAvailableStatus"));
|
||||
String searchUseStatus = CommonUtils.checkNull(request.getParameter("searchUseStatus"));
|
||||
String searchBaseLocCd = CommonUtils.checkNull(request.getParameter("searchBaseLocCd"));
|
||||
String searchCoCd = CommonUtils.checkNull(request.getParameter("searchCoCd"));
|
||||
String searchLocNmk = CommonUtils.checkNull(request.getParameter("searchLocNmk"));
|
||||
String searchInsertId = CommonUtils.checkNull(request.getParameter("searchInsertId"));
|
||||
String searchInsertIp = CommonUtils.checkNull(request.getParameter("searchInsertIp"));
|
||||
String searchInsertDt = CommonUtils.checkNull(request.getParameter("searchInsertDt"));
|
||||
String searchModifyId = CommonUtils.checkNull(request.getParameter("searchModifyId"));
|
||||
String searchModifyIp = CommonUtils.checkNull(request.getParameter("searchModifyIp"));
|
||||
String searchModifyDt = CommonUtils.checkNull(request.getParameter("searchModifyDt"));
|
||||
String searchAttrNmk = CommonUtils.checkNull(request.getParameter("searchAttrNmk"));
|
||||
%>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title><%=Constants.SYSTEM_NAME%></title>
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
$(document).ready(function(){
|
||||
$('.select2').select2();
|
||||
|
||||
fnc_datepick();
|
||||
|
||||
});
|
||||
|
||||
//카테고리 분류의 상세 내용을 보여주는 팝업을 호출한다.
|
||||
function openwarehouseListInfoPopUp(objid){
|
||||
var form = document.hiddenForm;
|
||||
window.open("","openwarehouseListInfoPopUp","width=500 height=200 menubar=no status=no");
|
||||
form.objid.value = objid;
|
||||
form.target = "openwarehouseListInfoPopUp";
|
||||
form.action = "/admin/warehouseListFormPopUp.do";
|
||||
form.submit();
|
||||
}
|
||||
|
||||
function searchList(){
|
||||
var form = document.warehouseListForm;
|
||||
var selectCnt= $("#LevOption select").length;
|
||||
var code = "";
|
||||
$("select[name^=code] option:selected").each(function(i, selected){
|
||||
if($(selected).val()!=""){
|
||||
code = $(selected).val();
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
$("#searchCode").val(code);
|
||||
form.action="/admin/warehouseList.do";
|
||||
form.submit();
|
||||
}
|
||||
|
||||
//프로젝트에 해당하는 WBS Task 목록 PopUp을 호출한다.
|
||||
function fn_openCodeHistory(objId){
|
||||
if(null != objId){
|
||||
window.open("/admin/warehouseHistoryList.do?objId="+objId, "", "width=950, height=500");
|
||||
}else{
|
||||
Swal.fire("잘못된 접근입니다.");
|
||||
}
|
||||
}
|
||||
|
||||
//프로젝트에 해당하는 WBS Task 목록 PopUp을 호출한다.
|
||||
function fn_delete(objId){
|
||||
if("" != objId){
|
||||
if(confirm("삭제하시겠습니까?")){
|
||||
$.ajax({
|
||||
url:"/admin/deleteWarehouse.do",
|
||||
type:"POST",
|
||||
data:{"OBJID":objId},
|
||||
dataType:"json",
|
||||
async:false,
|
||||
success:function(data){
|
||||
Swal.fire(data.msg);
|
||||
if(data.result){
|
||||
searchList();
|
||||
}
|
||||
},
|
||||
error: function(jqxhr, status, error){
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<form name="hiddenForm" id="hiddenForm" method="POST">
|
||||
<input type="hidden" name="actionType" id="actionType">
|
||||
<input type="hidden" name="objid" id="objid">
|
||||
<input type="hidden" name="status" id="status">
|
||||
</form>
|
||||
<form name="warehouseListForm" id="warehouseListForm" action="" method="post">
|
||||
<input type="hidden" name="searchCode" id="searchCode" value="<%=searchCode%>" >
|
||||
<section id="commonSection" class="admin1">
|
||||
<div class="admin_title">
|
||||
<h2>창고 관리</h2>
|
||||
</div>
|
||||
<!-- <div id="adminFormWrap">
|
||||
<table id="adminForm">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="label"><label for="">위치코드</label></td>
|
||||
<td>
|
||||
<input type="text" name="searchLocationCode" id="searchLocationCode" value="<%=searchLocationCode%>">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="label"><label for="">위치명</label></td>
|
||||
<td>
|
||||
<input type="text" name="searchLocationName" id="searchLocationName" value="<%=searchLocationName%>">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="label"><label for="">위치설명</label></td>
|
||||
<td>
|
||||
<input type="text" name="searchLocationDescription" id="searchLocationDescription" value="<%=searchLocationDescription%>">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="label"><label for="">가출고코드</label></td>
|
||||
<td>
|
||||
<input type="text" name="searchOutCode" id="searchOutCode" value="<%=searchOutCode%>">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="label"><label for="">가출고거래처명</label></td>
|
||||
<td>
|
||||
<input type="text" name="searchOutCoName" id="searchOutCoName" value="<%=searchOutCoName%>">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="label"><label for="">적합여부</label></td>
|
||||
<td>
|
||||
<input type="text" name="searchFitStatus" id="searchFitStatus" value="<%=searchFitStatus%>">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="label"><label for="">가용재고여부</label></td>
|
||||
<td>
|
||||
<input type="text" name="searchAvailableStatus" id="searchAvailableStatus" value="<%=searchAvailableStatus%>">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="label"><label for="">사용여부</label></td>
|
||||
<td>
|
||||
<input type="text" name="searchUseStatus" id="searchUseStatus" value="<%=searchUseStatus%>">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="label"><label for="">BASELOC_CD</label></td>
|
||||
<td>
|
||||
<input type="text" name="searchBaseLocCd" id="searchBaseLocCd" value="<%=searchBaseLocCd%>">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="label"><label for="">CO_CD</label></td>
|
||||
<td>
|
||||
<input type="text" name="searchCoCd" id="searchCoCd" value="<%=searchCoCd%>">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="label"><label for="">LOC_NMK</label></td>
|
||||
<td>
|
||||
<input type="text" name="searchLocNmk" id="searchLocNmk" value="<%=searchLocNmk%>">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="label"><label for="">INSERT_ID</label></td>
|
||||
<td>
|
||||
<input type="text" name="searchInsertId" id="searchInsertId" value="<%=searchInsertId%>">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="label"><label for="">INSERT_IP</label></td>
|
||||
<td>
|
||||
<input type="text" name="searchInsertIp" id="searchInsertIp" value="<%=searchInsertIp%>">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="label"><label for="">INSERT_DT</label></td>
|
||||
<td>
|
||||
<input type="text" name="searchInsertDt" id="searchInsertDt" value="<%=searchInsertDt%>">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="label"><label for="">MODIFY_ID</label></td>
|
||||
<td>
|
||||
<input type="text" name="searchModifyId" id="searchModifyId" value="<%=searchModifyId%>">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="label"><label for="">MODIFY_IP</label></td>
|
||||
<td>
|
||||
<input type="text" name="searchModifyIp" id="searchModifyIp" value="<%=searchModifyIp%>">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="label"><label for="">MODIFY_DT</label></td>
|
||||
<td>
|
||||
<input type="text" name="searchModifyDt" id="searchModifyDt" value="<%=searchModifyDt%>">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="label"><label for="">ATTR_NMK</label></td>
|
||||
<td>
|
||||
<input type="text" name="searchAttrNmk" id="searchAttrNmk" value="<%=searchAttrNmk%>">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div> -->
|
||||
<div id="adminBtnWrap">
|
||||
<input type="button" value="조회" class="btns" onclick="javascript:searchList();">
|
||||
<input type="button" value="창고등록" class="btns" onclick="javascript:openwarehouseListInfoPopUp('');">
|
||||
</div>
|
||||
<div id="adminTableWrap">
|
||||
<div id="tableWrap">
|
||||
<table id="adminTable" >
|
||||
<colgroup>
|
||||
<col width="13%" />
|
||||
<col width="16%" />
|
||||
<col width="16%" />
|
||||
<col width="16%" />
|
||||
<col width="18%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
|
||||
</colgroup>
|
||||
<tr>
|
||||
<td>위치코드</td>
|
||||
<td>위치명</td>
|
||||
<td>위치설명</td>
|
||||
<td>가출고코드</td>
|
||||
<td>가출고거래처명</td>
|
||||
<td>적합여부</td>
|
||||
<td>가용재고여부</td>
|
||||
<td>사용여부</td>
|
||||
<td>BASELOC_CD</td>
|
||||
<td>CO_CD</td>
|
||||
<td>LOC_NMK</td>
|
||||
<td>INSERT_ID</td>
|
||||
<td>INSERT_IP</td>
|
||||
<td>INSERT_DT</td>
|
||||
<td>MODIFY_ID</td>
|
||||
<td>MODIFY_IP</td>
|
||||
<td>MODIFY_DT</td>
|
||||
<td>ATTR_NMK</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div style="width:101%; height:600px; overflow-y:scroll; border-bottom: 2px solid #000;">
|
||||
<table id="adminTable" style="border: 1px solid #b9c5d6;">
|
||||
<colgroup>
|
||||
<col width="13%" />
|
||||
<col width="16%" />
|
||||
<col width="16%" />
|
||||
<col width="16%" />
|
||||
<col width="18%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
<col width="12%" />
|
||||
</colgroup>
|
||||
<%
|
||||
if(0 < warehouseList.size()){
|
||||
for(int i=0;i<warehouseList.size();i++){
|
||||
HashMap warehouseMap = (HashMap)warehouseList.get(i);
|
||||
String OBJID = CommonUtils.checkNull(warehouseMap.get("OBJID"));
|
||||
String LOCATION_CODE = CommonUtils.checkNull(warehouseMap.get("LOCATION_CODE"));
|
||||
String LOCATION_NAME = CommonUtils.checkNull(warehouseMap.get("LOCATION_NAME"));
|
||||
String LOCATION_DESCRIPTION = CommonUtils.checkNull(warehouseMap.get("LOCATION_DESCRIPTION"));
|
||||
String OUT_CODE = CommonUtils.checkNull(warehouseMap.get("OUT_CODE"));
|
||||
String OUT_CO_NAME = CommonUtils.checkNull(warehouseMap.get("OUT_CO_NAME"));
|
||||
String FIT_STATUS = CommonUtils.checkNull(warehouseMap.get("FIT_STATUS"));
|
||||
String AVAILABLE_STATUS = CommonUtils.checkNull(warehouseMap.get("AVAILABLE_STATUS"));
|
||||
String USE_STATUS = CommonUtils.checkNull(warehouseMap.get("USE_STATUS"));
|
||||
String BASE_LOC_CD = CommonUtils.checkNull(warehouseMap.get("BASE_LOC_CD"));
|
||||
String CO_CD = CommonUtils.checkNull(warehouseMap.get("CO_CD"));
|
||||
String LOC_NMK = CommonUtils.checkNull(warehouseMap.get("LOC_NMK"));
|
||||
String INSERT_ID = CommonUtils.checkNull(warehouseMap.get("INSERT_ID"));
|
||||
String INSERT_IP = CommonUtils.checkNull(warehouseMap.get("INSERT_IP"));
|
||||
String INSERT_DT = CommonUtils.checkNull(warehouseMap.get("INSERT_DT"));
|
||||
String MODIFY_ID = CommonUtils.checkNull(warehouseMap.get("MODIFY_ID"));
|
||||
String MODIFY_IP = CommonUtils.checkNull(warehouseMap.get("MODIFY_IP"));
|
||||
String MODIFY_DT = CommonUtils.checkNull(warehouseMap.get("MODIFY_DT"));
|
||||
String ATTR_NMK = CommonUtils.checkNull(warehouseMap.get("ATTR_NMK"));
|
||||
|
||||
%>
|
||||
<tr>
|
||||
<td>
|
||||
<a href="#" onclick="javascript:openwarehouseListInfoPopUp('<%=OBJID %>')"><%=LOCATION_CODE%></a>
|
||||
<input type="button" class="blue_btn" value="이력" onclick="fn_openCodeHistory('<%=OBJID%>');" style="float:none;">
|
||||
<input type="button" class="blue_btn" value="삭제" onclick="fn_delete('<%=OBJID%>');" style="float:none;">
|
||||
</td>
|
||||
<td><%=LOCATION_NAME%></td>
|
||||
<td><%=LOCATION_DESCRIPTION %></td>
|
||||
<td><%=OUT_CODE %></td>
|
||||
<td><%=OUT_CO_NAME %></td>
|
||||
<td><%=FIT_STATUS %></td>
|
||||
<td><%=AVAILABLE_STATUS %></td>
|
||||
<td><%=USE_STATUS %></td>
|
||||
<td><%=BASE_LOC_CD %></td>
|
||||
<td><%=CO_CD %></td>
|
||||
<td><%=LOC_NMK %></td>
|
||||
<td><%=INSERT_ID %></td>
|
||||
<td><%=INSERT_IP %></td>
|
||||
<td><%=INSERT_DT %></td>
|
||||
<td><%=MODIFY_ID %></td>
|
||||
<td><%=MODIFY_IP %></td>
|
||||
<td><%=MODIFY_DT %></td>
|
||||
<td><%=ATTR_NMK %></td>
|
||||
</tr>
|
||||
<%
|
||||
}
|
||||
}else{
|
||||
%>
|
||||
<tr>
|
||||
<td colspan="18">해당하는 데이터가 없습니다.</td>
|
||||
</tr>
|
||||
<%
|
||||
}
|
||||
%>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user