Merge branch 'main' of https://g.wace.me/chpark/wace_plm
This commit is contained in:
@@ -2736,6 +2736,24 @@ ORDER BY COALESCE(T.REVISION, '1.0')
|
||||
ORDER BY SUPPLY_NAME
|
||||
</select>
|
||||
|
||||
<!-- 공급업체 + 일반거래처 통합 목록 조회 (발주서 검색용) -->
|
||||
<select id="getAllSupplySelect" parameterType="map" resultType="map">
|
||||
SELECT
|
||||
OBJID::VARCHAR AS CODE
|
||||
,SUPPLY_NAME AS NAME
|
||||
,OBJID::VARCHAR AS CODE_ID
|
||||
,SUPPLY_NAME AS CODE_NAME
|
||||
FROM ADMIN_SUPPLY_MNG
|
||||
UNION ALL
|
||||
SELECT
|
||||
'C_' || OBJID::VARCHAR AS CODE
|
||||
,CLIENT_NM AS NAME
|
||||
,'C_' || OBJID::VARCHAR AS CODE_ID
|
||||
,CLIENT_NM AS CODE_NAME
|
||||
FROM CLIENT_MNG
|
||||
ORDER BY NAME
|
||||
</select>
|
||||
|
||||
<!-- 일반거래처 목록 조회 (CLIENT_MNG 테이블) - 발주서용 -->
|
||||
<select id="getClientMngSupplySelect" parameterType="map" resultType="map">
|
||||
SELECT
|
||||
|
||||
@@ -4416,6 +4416,10 @@
|
||||
''
|
||||
) AS PRODUCT_NAME,
|
||||
CM.CATEGORY_CD AS CATEGORY_CODE,
|
||||
COALESCE(
|
||||
(SELECT CODE_NAME FROM COMM_CODE WHERE CODE_ID = CM.CATEGORY_CD LIMIT 1),
|
||||
CM.CATEGORY_CD
|
||||
) AS CATEGORY_CODE_NAME,
|
||||
-- 생산유형 (TODO: 실제 컬럼명 확인 필요)
|
||||
'' AS PRODUCTION_TYPE,
|
||||
'' AS PRODUCTION_TYPE_NAME,
|
||||
@@ -4472,9 +4476,12 @@
|
||||
WHERE 1=1
|
||||
AND PM.PROJECT_NO IS NOT NULL
|
||||
AND PM.PROJECT_NO != ''
|
||||
<!-- 프로젝트번호 검색 -->
|
||||
<if test="search_project_no != null and search_project_no != ''">
|
||||
AND UPPER(PM.PROJECT_NO) LIKE '%' || UPPER(#{search_project_no}) || '%'
|
||||
<!-- 프로젝트번호 검색 (multiple select) -->
|
||||
<if test="search_project_nos != null and search_project_nos != ''">
|
||||
AND PM.OBJID::VARCHAR IN
|
||||
<foreach item="projNo" collection="search_project_nos.split(',')" open="(" separator="," close=")">
|
||||
#{projNo}
|
||||
</foreach>
|
||||
</if>
|
||||
<!-- 제품구분 검색 -->
|
||||
<if test="search_product_code != null and search_product_code != ''">
|
||||
@@ -4488,9 +4495,13 @@
|
||||
<if test="search_production_type != null and search_production_type != ''">
|
||||
AND 1=1 <!-- TODO: 생산유형 컬럼 확인 후 조건 추가 -->
|
||||
</if>
|
||||
<!-- 고객사 검색 -->
|
||||
<!-- 고객사 검색 (C_ 접두사 처리) -->
|
||||
<if test="search_customer_objid != null and search_customer_objid != ''">
|
||||
AND CM.CUSTOMER_OBJID = #{search_customer_objid}
|
||||
AND (
|
||||
CM.CUSTOMER_OBJID = #{search_customer_objid}
|
||||
OR CM.CUSTOMER_OBJID = REPLACE(#{search_customer_objid}, 'C_', '')
|
||||
OR REPLACE(CM.CUSTOMER_OBJID, 'C_', '') = REPLACE(#{search_customer_objid}, 'C_', '')
|
||||
)
|
||||
</if>
|
||||
<!-- 요청납기 검색 -->
|
||||
<if test="search_req_del_date_from != null and search_req_del_date_from != ''">
|
||||
|
||||
@@ -2944,7 +2944,7 @@ WHERE 1=1
|
||||
AND EXISTS (
|
||||
SELECT 'E' FROM PROJECT_MGMT AS S_P
|
||||
WHERE POM.CONTRACT_MGMT_OBJID = S_P.OBJID
|
||||
AND S_P.CUSTOMER_OBJID = #{customer_cd}
|
||||
AND S_P.CUSTOMER_OBJID = REPLACE(#{customer_cd}, 'C_', '')
|
||||
)
|
||||
</if>
|
||||
<if test="customer_project_name !=null and customer_project_name != '' ">
|
||||
@@ -2972,7 +2972,7 @@ WHERE 1=1
|
||||
AND TO_DATE(POM.DELIVERY_DATE ,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{delivery_end_date}, 'YYYY-MM-DD')
|
||||
</if>
|
||||
<if test="partner_objid !=null and partner_objid != '' ">
|
||||
AND POM.PARTNER_OBJID = #{partner_objid}
|
||||
AND POM.PARTNER_OBJID = REPLACE(#{partner_objid}, 'C_', '')
|
||||
</if>
|
||||
<if test="sales_mng_user_id !=null and sales_mng_user_id != '' ">
|
||||
AND POM.SALES_MNG_USER_ID = #{sales_mng_user_id}
|
||||
@@ -3107,7 +3107,7 @@ SELECT
|
||||
AND EXISTS (
|
||||
SELECT 'E' FROM PROJECT_MGMT AS S_P
|
||||
WHERE POM.CONTRACT_MGMT_OBJID = S_P.OBJID
|
||||
AND S_P.CUSTOMER_OBJID = #{customer_cd}
|
||||
AND S_P.CUSTOMER_OBJID = REPLACE(#{customer_cd}, 'C_', '')
|
||||
)
|
||||
</if>
|
||||
<if test="customer_project_name !=null and customer_project_name != '' ">
|
||||
@@ -3135,7 +3135,7 @@ SELECT
|
||||
AND TO_DATE(POM.DELIVERY_DATE ,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{delivery_end_date}, 'YYYY-MM-DD')
|
||||
</if>
|
||||
<if test="partner_objid !=null and partner_objid != '' ">
|
||||
AND POM.PARTNER_OBJID = #{partner_objid}
|
||||
AND POM.PARTNER_OBJID = REPLACE(#{partner_objid}, 'C_', '')
|
||||
</if>
|
||||
<if test="sales_mng_user_id !=null and sales_mng_user_id != '' ">
|
||||
AND POM.SALES_MNG_USER_ID = #{sales_mng_user_id}
|
||||
@@ -3337,7 +3337,7 @@ WHERE 1=1
|
||||
AND EXISTS (
|
||||
SELECT 'E' FROM PROJECT_MGMT AS S_P
|
||||
WHERE POM.CONTRACT_MGMT_OBJID = S_P.OBJID
|
||||
AND S_P.CUSTOMER_OBJID = #{customer_cd}
|
||||
AND S_P.CUSTOMER_OBJID = REPLACE(#{customer_cd}, 'C_', '')
|
||||
)
|
||||
</if>
|
||||
<if test="customer_project_name !=null and customer_project_name != '' ">
|
||||
@@ -3372,7 +3372,7 @@ WHERE 1=1
|
||||
AND TO_DATE(POM.DELIVERY_DATE ,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{delivery_end_date}, 'YYYY-MM-DD')
|
||||
</if>
|
||||
<if test="partner_objid !=null and partner_objid != '' ">
|
||||
AND POM.PARTNER_OBJID = #{partner_objid}
|
||||
AND POM.PARTNER_OBJID = REPLACE(#{partner_objid}, 'C_', '')
|
||||
</if>
|
||||
<!--
|
||||
<if test="sales_mng_user_id !=null and sales_mng_user_id != '' ">
|
||||
@@ -3564,7 +3564,7 @@ WHERE 1=1
|
||||
AND EXISTS (
|
||||
SELECT 'E' FROM PROJECT_MGMT AS S_P
|
||||
WHERE POM.CONTRACT_MGMT_OBJID = S_P.OBJID
|
||||
AND S_P.CUSTOMER_OBJID = #{customer_cd}
|
||||
AND S_P.CUSTOMER_OBJID = REPLACE(#{customer_cd}, 'C_', '')
|
||||
)
|
||||
</if>
|
||||
<if test="customer_project_name !=null and customer_project_name != '' ">
|
||||
@@ -3599,7 +3599,7 @@ WHERE 1=1
|
||||
AND TO_DATE(POM.DELIVERY_DATE ,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{delivery_end_date}, 'YYYY-MM-DD')
|
||||
</if>
|
||||
<if test="partner_objid !=null and partner_objid != '' ">
|
||||
AND POM.PARTNER_OBJID = #{partner_objid}
|
||||
AND POM.PARTNER_OBJID = REPLACE(#{partner_objid}, 'C_', '')
|
||||
</if>
|
||||
<!--
|
||||
<if test="sales_mng_user_id !=null and sales_mng_user_id != '' ">
|
||||
@@ -4374,7 +4374,7 @@ SELECT POM.OBJID
|
||||
AND TO_CHAR(TO_DATE(S1.CUR_DELIVERY_DATE ,'YYYY-MM-DD'), 'YYYY') = #{Year}
|
||||
</if>
|
||||
<if test="customer_cd !=null and customer_cd != '' ">
|
||||
AND CM.CUSTOMER_OBJID = #{customer_cd}
|
||||
AND CM.CUSTOMER_OBJID = REPLACE(#{customer_cd}, 'C_', '')
|
||||
</if>
|
||||
<if test="customer_project_name !=null and customer_project_name != '' ">
|
||||
AND TRIM(UPPER(CM.CUSTOMER_PROJECT_NAME)) = TRIM(UPPER(#{customer_project_name}))
|
||||
@@ -4405,7 +4405,7 @@ SELECT POM.OBJID
|
||||
AND TO_DATE(POM.DELIVERY_DATE ,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{delivery_end_date}, 'YYYY-MM-DD')
|
||||
</if>
|
||||
<if test="partner_objid !=null and partner_objid != '' ">
|
||||
AND POM.PARTNER_OBJID = #{partner_objid}
|
||||
AND POM.PARTNER_OBJID = REPLACE(#{partner_objid}, 'C_', '')
|
||||
</if>
|
||||
<!-- <if test="sales_mng_user_id !=null and sales_mng_user_id != '' ">
|
||||
AND POM.SALES_MNG_USER_ID = #{sales_mng_user_id}
|
||||
@@ -4424,7 +4424,7 @@ SELECT POM.OBJID
|
||||
AND TO_DATE(TO_CHAR(POM.REGDATE,'YYYY-MM-DD') ,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{reg_end_date}, 'YYYY-MM-DD')
|
||||
</if>
|
||||
<if test="delivery_status !=null and delivery_status != '' ">
|
||||
AND (CASE WHEN 0 <![CDATA[ >= ]]> ((SELECT SUM(REAL_ORDER_QTY::NUMERIC) FROM PURCHASE_ORDER_PART AS O WHERE POM.OBJID::VARCHAR = O.PURCHASE_ORDER_MASTER_OBJID) - (S1.TOTAL_DELIVERY_QTY <!-- - S1.TOTAL_DEFECT_QTY -->)) THEN '입고완료'
|
||||
AND (CASE WHEN 0 <![CDATA[ >= ]]> ((SELECT SUM(ORDER_QTY::NUMERIC) FROM PURCHASE_ORDER_PART AS O WHERE POM.OBJID::VARCHAR = O.PURCHASE_ORDER_MASTER_OBJID) - (S1.TOTAL_DELIVERY_QTY <!-- - S1.TOTAL_DEFECT_QTY -->)) THEN '입고완료'
|
||||
WHEN TO_CHAR(NOW(),'YYYY-MM-DD') <![CDATA[ > ]]> POM.DELIVERY_DATE THEN '지연'
|
||||
ELSE '입고중'
|
||||
END) = #{delivery_status}
|
||||
|
||||
@@ -827,32 +827,59 @@
|
||||
ELSE '입고중'
|
||||
END) = #{search_delivery_status}
|
||||
</if>
|
||||
<!-- 프로젝트번호 (multi select) -->
|
||||
<!-- 프로젝트번호 (multi select) - OBJID로 검색 -->
|
||||
<if test="project_nos != null and project_nos != ''">
|
||||
AND CM.PROJECT_NO IN
|
||||
AND CM.OBJID::VARCHAR IN
|
||||
<foreach item="item" collection="project_nos.split(',')" open="(" separator="," close=")">
|
||||
#{item}
|
||||
</foreach>
|
||||
</if>
|
||||
<!-- 검사자 -->
|
||||
<if test="inspector_id != null and inspector_id != ''">
|
||||
AND IID.INSPECTOR_ID = #{inspector_id}
|
||||
AND EXISTS (
|
||||
SELECT 1 FROM INCOMING_INSPECTION_DETAIL IID_SUB
|
||||
LEFT JOIN INCOMING_INSPECTION_DEFECT IDF_SUB ON IDF_SUB.INSPECTION_DETAIL_OBJID = IID_SUB.OBJID
|
||||
WHERE IID_SUB.PURCHASE_ORDER_MASTER_OBJID = POM.OBJID::VARCHAR
|
||||
AND IDF_SUB.INSPECTOR_ID = #{inspector_id}
|
||||
)
|
||||
</if>
|
||||
<!-- 검사일 (시작) -->
|
||||
<if test="inspection_start_date != null and inspection_start_date != ''">
|
||||
AND IID.INSPECTION_DATE <![CDATA[ >= ]]> #{inspection_start_date}
|
||||
AND EXISTS (
|
||||
SELECT 1 FROM INCOMING_INSPECTION_DETAIL IID_SUB
|
||||
LEFT JOIN INCOMING_INSPECTION_DEFECT IDF_SUB ON IDF_SUB.INSPECTION_DETAIL_OBJID = IID_SUB.OBJID
|
||||
WHERE IID_SUB.PURCHASE_ORDER_MASTER_OBJID = POM.OBJID::VARCHAR
|
||||
AND IDF_SUB.INSPECTION_DATE <![CDATA[ >= ]]> TO_DATE(#{inspection_start_date}, 'YYYY-MM-DD')
|
||||
)
|
||||
</if>
|
||||
<!-- 검사일 (종료) -->
|
||||
<if test="inspection_end_date != null and inspection_end_date != ''">
|
||||
AND IID.INSPECTION_DATE <![CDATA[ <= ]]> #{inspection_end_date}
|
||||
AND EXISTS (
|
||||
SELECT 1 FROM INCOMING_INSPECTION_DETAIL IID_SUB
|
||||
LEFT JOIN INCOMING_INSPECTION_DEFECT IDF_SUB ON IDF_SUB.INSPECTION_DETAIL_OBJID = IID_SUB.OBJID
|
||||
WHERE IID_SUB.PURCHASE_ORDER_MASTER_OBJID = POM.OBJID::VARCHAR
|
||||
AND IDF_SUB.INSPECTION_DATE <![CDATA[ <= ]]> TO_DATE(#{inspection_end_date}, 'YYYY-MM-DD')
|
||||
)
|
||||
</if>
|
||||
<!-- 검사결과 -->
|
||||
<if test="search_inspection_result != null and search_inspection_result != ''">
|
||||
AND (CASE WHEN IID.NG_COUNT > 0 THEN 'NG'
|
||||
WHEN IID.TOTAL_COUNT > 0 AND IID.TOTAL_COUNT = IID.INSPECTED_COUNT THEN 'OK'
|
||||
WHEN IID.INSPECTED_COUNT > 0 THEN '검사중'
|
||||
AND (CASE WHEN DEFECT.NG_COUNT > 0 THEN 'NG'
|
||||
WHEN DEFECT.INSPECTION_TARGET_COUNT > 0 AND DEFECT.INSPECTION_TARGET_COUNT = DEFECT.INSPECTED_COUNT THEN 'OK'
|
||||
WHEN DEFECT.INSPECTED_COUNT > 0 THEN '검사중'
|
||||
ELSE '' END) = #{search_inspection_result}
|
||||
</if>
|
||||
<!-- 요청자 -->
|
||||
<if test="request_user_id != null and request_user_id != ''">
|
||||
AND IID.REQUEST_USER_ID = #{request_user_id}
|
||||
</if>
|
||||
<!-- 요청일 (시작) -->
|
||||
<if test="request_start_date != null and request_start_date != ''">
|
||||
AND IID.REQUEST_DATE <![CDATA[ >= ]]> #{request_start_date}
|
||||
</if>
|
||||
<!-- 요청일 (종료) -->
|
||||
<if test="request_end_date != null and request_end_date != ''">
|
||||
AND IID.REQUEST_DATE <![CDATA[ <= ]]> #{request_end_date}
|
||||
</if>
|
||||
<!-- 요청현황 필터 (수입검사 진행 리스트에서 요청완료 건만 조회) -->
|
||||
<if test="request_status_filter != null and request_status_filter == '요청완료'">
|
||||
AND REQ.DELIVERY_TOTAL_COUNT = REQ.SELECTED_COUNT
|
||||
@@ -1096,23 +1123,23 @@
|
||||
WHERE PID.MASTER_OBJID = PIM.OBJID
|
||||
AND PM.PRODUCT = #{productType})
|
||||
</if>
|
||||
/* 품번 */
|
||||
/* 품번 (OBJID 또는 품번 텍스트로 검색) */
|
||||
<if test="search_part_objid != null and search_part_objid != ''">
|
||||
AND EXISTS (SELECT 1 FROM PROCESS_INSPECTION_DETAIL PID
|
||||
WHERE PID.MASTER_OBJID = PIM.OBJID
|
||||
AND PID.PART_OBJID = #{search_part_objid})
|
||||
AND (PID.PART_OBJID = #{search_part_objid} OR UPPER(PID.PART_NO) LIKE '%' || UPPER(#{search_part_objid}) || '%'))
|
||||
</if>
|
||||
/* 품명 */
|
||||
/* 품명 (LIKE 검색) */
|
||||
<if test="search_part_name != null and search_part_name != ''">
|
||||
AND EXISTS (SELECT 1 FROM PROCESS_INSPECTION_DETAIL PID
|
||||
WHERE PID.MASTER_OBJID = PIM.OBJID
|
||||
AND PID.PART_OBJID = #{search_part_name})
|
||||
AND UPPER(PID.PART_NAME) LIKE '%' || UPPER(#{search_part_name}) || '%')
|
||||
</if>
|
||||
/* 작업환경상태 */
|
||||
/* 작업환경상태 (화면 표시 로직과 동일하게: 하나라도 불량이면 불량) */
|
||||
<if test="search_work_env_status != null and search_work_env_status != ''">
|
||||
AND EXISTS (SELECT 1 FROM PROCESS_INSPECTION_DETAIL PID
|
||||
WHERE PID.MASTER_OBJID = PIM.OBJID
|
||||
AND PID.WORK_ENV_STATUS = CASE WHEN #{search_work_env_status} = 'OK' THEN '양호' ELSE '불량' END)
|
||||
AND (SELECT CASE WHEN COUNT(CASE WHEN PID.WORK_ENV_STATUS = '불량' THEN 1 END) > 0 THEN '불량' ELSE '양호' END
|
||||
FROM PROCESS_INSPECTION_DETAIL PID WHERE PID.MASTER_OBJID = PIM.OBJID
|
||||
) = CASE WHEN #{search_work_env_status} = 'OK' THEN '양호' ELSE '불량' END
|
||||
</if>
|
||||
/* 측정기 */
|
||||
<if test="search_measuring_device != null and search_measuring_device != ''">
|
||||
|
||||
@@ -138,7 +138,7 @@ var columns = [
|
||||
hozAlign: 'center',
|
||||
width: 80,
|
||||
title: '주문유형',
|
||||
field: 'CATEGORY_CODE'
|
||||
field: 'CATEGORY_CODE_NAME'
|
||||
},
|
||||
|
||||
// 5. 생산유형
|
||||
@@ -299,6 +299,23 @@ var columns = [
|
||||
|
||||
// 검색 함수
|
||||
function fn_search(){
|
||||
// multiple select 값을 콤마로 join해서 hidden input에 설정
|
||||
var projectNos = $("#search_project_no").val();
|
||||
console.log("=== 프로젝트번호 검색 디버그 ===");
|
||||
console.log("projectNos:", projectNos);
|
||||
console.log("projectNos type:", typeof projectNos);
|
||||
console.log("projectNos length:", projectNos ? projectNos.length : 0);
|
||||
|
||||
if(projectNos && projectNos.length > 0) {
|
||||
var joinedVal = projectNos.join(",");
|
||||
console.log("joined value:", joinedVal);
|
||||
$("#search_project_nos_hidden").val(joinedVal);
|
||||
} else {
|
||||
$("#search_project_nos_hidden").val("");
|
||||
}
|
||||
console.log("hidden input value:", $("#search_project_nos_hidden").val());
|
||||
console.log("================================");
|
||||
|
||||
_tabulGrid = fnc_tabul_search(_tabul_layout_fitColumns, _tabulGrid, "/productionplanning/prodPlanResultMgmtGridList.do", columns, true);
|
||||
}
|
||||
|
||||
@@ -413,6 +430,7 @@ function getCheckedRows() {
|
||||
|
||||
<form name="form1" id="form1" method="post">
|
||||
<input type="hidden" name="actionType" id="actionType">
|
||||
<input type="hidden" name="search_project_nos" id="search_project_nos_hidden">
|
||||
<div class="content-box">
|
||||
<div class="content-box-s">
|
||||
<div class="plm_menu_name_gdnsi">
|
||||
|
||||
@@ -542,7 +542,7 @@ function setup_wbs_popup(objId){
|
||||
<input type="text" name="contract_end_date" id="contract_end_date" style="width:90px;" autocomplete="off" value="${param.contract_end_date}" class="date_icon">
|
||||
</td>
|
||||
|
||||
<td class="align_r">
|
||||
<td class="align_r">
|
||||
<label>입고지</label>
|
||||
</td>
|
||||
<td>
|
||||
@@ -555,7 +555,7 @@ function setup_wbs_popup(objId){
|
||||
<td>
|
||||
<input type="text" name="setup" id="setup" style="" autocomplete="off" value="${param.setup}">
|
||||
</td>
|
||||
|
||||
|
||||
<td><label for="pm_user_id">PM</label></td>
|
||||
<td>
|
||||
<select name="pm_user_id" id="pm_user_id" style="width:200px;" class="select2" autocomplete="off">
|
||||
|
||||
@@ -296,9 +296,9 @@ function fn_FileRegist(objId, docType, docTypeName){
|
||||
<td>
|
||||
<select name="search_blame_decision" id="search_blame_decision" class="select2" autocomplete="off" style="">
|
||||
<option value="">전체</option>
|
||||
<option value="R">R</option>
|
||||
<option value="C">C</option>
|
||||
<option value="O">O</option>
|
||||
<option value="R">RPS</option>
|
||||
<option value="C">고객사</option>
|
||||
<option value="O">외주업체</option>
|
||||
</select>
|
||||
</td>
|
||||
<td><label>상태</label></td>
|
||||
|
||||
@@ -116,13 +116,14 @@ var columns = [
|
||||
|
||||
// 조회
|
||||
function fn_search(){
|
||||
// 프로젝트번호 multi select 처리
|
||||
// 프로젝트번호 multi select 처리 (배열을 콤마로 join)
|
||||
var selectedProjectNos = $("#project_no").val();
|
||||
$('input[name="project_nos"]').remove();
|
||||
var projectNosValue = (selectedProjectNos && selectedProjectNos.length > 0) ? selectedProjectNos.join(',') : '';
|
||||
$('<input>').attr({
|
||||
type: 'hidden',
|
||||
name: 'project_nos',
|
||||
value: selectedProjectNos
|
||||
value: projectNosValue
|
||||
}).appendTo('#form1');
|
||||
|
||||
_tabulGrid = fnc_tabul_search(_tabul_layout_fitColumns, _tabulGrid, "/quality/incomingInspectionGridList.do", columns, true);
|
||||
@@ -254,6 +255,7 @@ function fn_deliveryAcceptanceViewPopUp(objId,DELIVERY_STATUS){
|
||||
<option value="">전체</option>
|
||||
<option value="입고중">입고중</option>
|
||||
<option value="입고완료">입고완료</option>
|
||||
<option value="지연">지연</option>
|
||||
</select>
|
||||
</td>
|
||||
|
||||
|
||||
@@ -316,6 +316,7 @@ function fn_deliveryAcceptanceViewPopUp(objId,DELIVERY_STATUS){
|
||||
<option value="">전체</option>
|
||||
<option value="입고중">입고중</option>
|
||||
<option value="입고완료">입고완료</option>
|
||||
<option value="지연">지연</option>
|
||||
</select>
|
||||
</td>
|
||||
|
||||
|
||||
@@ -1655,8 +1655,8 @@ public class ProductionPlanningController extends BaseService {
|
||||
// 생산유형
|
||||
code_map.put("production_type_cd", commonService.bizMakeOptionList("0001832", CommonUtils.nullToEmpty((String)paramMap.get("production_type")), "common.getCodeselect"));
|
||||
|
||||
// 고객사
|
||||
code_map.put("customer_cd", commonService.bizMakeOptionList("", CommonUtils.nullToEmpty((String)paramMap.get("customer_objid")), "common.getClientMngSupplySelect"));
|
||||
// 고객사 (SUPPLY_MNG + CLIENT_MNG 통합)
|
||||
code_map.put("customer_cd", commonService.bizMakeOptionList("", CommonUtils.nullToEmpty((String)paramMap.get("customer_objid")), "common.getsupplyselect"));
|
||||
|
||||
request.setAttribute("code_map", code_map);
|
||||
}catch(Exception e){
|
||||
@@ -1674,6 +1674,17 @@ public class ProductionPlanningController extends BaseService {
|
||||
@ResponseBody
|
||||
@RequestMapping("/productionplanning/prodPlanResultMgmtGridList.do")
|
||||
public Map prodPlanResultMgmtGridList(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
|
||||
// 프로젝트번호 multiple select 처리 (Java 7 호환)
|
||||
String[] projectNos = request.getParameterValues("search_project_no");
|
||||
if(projectNos != null && projectNos.length > 0) {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for(int i = 0; i < projectNos.length; i++) {
|
||||
if(i > 0) sb.append(",");
|
||||
sb.append(projectNos[i]);
|
||||
}
|
||||
paramMap.put("search_project_nos", sb.toString());
|
||||
}
|
||||
|
||||
commonService.selectListPagingNew("productionplanning.prodPlanResultMgmtGridList", request, paramMap);
|
||||
return paramMap;
|
||||
}
|
||||
|
||||
@@ -1118,8 +1118,8 @@ public class PurchaseOrderController {
|
||||
code_map.put("part_type",commonService.bizMakeOptionList(Constants.PART_TYPE_CODE, (String)paramMap.get("part_type"),"common.getCodeselect"));
|
||||
//발주부품
|
||||
code_map.put("type",commonService.bizMakeOptionList("0001068", (String)paramMap.get("type"),"common.getCodeselect"));
|
||||
//공급업체
|
||||
code_map.put("partner_objid",commonService.bizMakeOptionList("", (String)paramMap.get("partner_objid"),"common.getmatersupplyselect"));
|
||||
//공급업체 (공급업체 + 일반거래처 통합)
|
||||
code_map.put("partner_objid",commonService.bizMakeOptionList("", (String)paramMap.get("partner_objid"),"common.getAllSupplySelect"));
|
||||
//조치담당자
|
||||
code_map.put("sales_mng_user_id", commonService.bizMakeOptionList("", (String)paramMap.get("sales_mng_user_id"),"common.getUserselect"));
|
||||
//상태코드
|
||||
@@ -1294,8 +1294,8 @@ public class PurchaseOrderController {
|
||||
code_map.put("part_type",commonService.bizMakeOptionList(Constants.PART_TYPE_CODE, (String)paramMap.get("part_type"),"common.getCodeselect"));
|
||||
//발주구분
|
||||
code_map.put("type",commonService.bizMakeOptionList("0001068", (String)paramMap.get("type"),"common.getCodeselect"));
|
||||
//공급업체
|
||||
code_map.put("partner_objid",commonService.bizMakeOptionList("", (String)paramMap.get("partner_objid"),"common.getmatersupplyselect"));
|
||||
//공급업체 (공급업체 + 일반거래처 통합)
|
||||
code_map.put("partner_objid",commonService.bizMakeOptionList("", (String)paramMap.get("partner_objid"),"common.getAllSupplySelect"));
|
||||
//조치담당자
|
||||
code_map.put("sales_mng_user_id", commonService.bizMakeOptionList("", (String)paramMap.get("sales_mng_user_id"),"common.getUserselect"));
|
||||
//상태코드
|
||||
|
||||
@@ -2736,6 +2736,24 @@ ORDER BY COALESCE(T.REVISION, '1.0')
|
||||
ORDER BY SUPPLY_NAME
|
||||
</select>
|
||||
|
||||
<!-- 공급업체 + 일반거래처 통합 목록 조회 (발주서 검색용) -->
|
||||
<select id="getAllSupplySelect" parameterType="map" resultType="map">
|
||||
SELECT
|
||||
OBJID::VARCHAR AS CODE
|
||||
,SUPPLY_NAME AS NAME
|
||||
,OBJID::VARCHAR AS CODE_ID
|
||||
,SUPPLY_NAME AS CODE_NAME
|
||||
FROM ADMIN_SUPPLY_MNG
|
||||
UNION ALL
|
||||
SELECT
|
||||
'C_' || OBJID::VARCHAR AS CODE
|
||||
,CLIENT_NM AS NAME
|
||||
,'C_' || OBJID::VARCHAR AS CODE_ID
|
||||
,CLIENT_NM AS CODE_NAME
|
||||
FROM CLIENT_MNG
|
||||
ORDER BY NAME
|
||||
</select>
|
||||
|
||||
<!-- 일반거래처 목록 조회 (CLIENT_MNG 테이블) - 발주서용 -->
|
||||
<select id="getClientMngSupplySelect" parameterType="map" resultType="map">
|
||||
SELECT
|
||||
|
||||
@@ -4416,6 +4416,10 @@
|
||||
''
|
||||
) AS PRODUCT_NAME,
|
||||
CM.CATEGORY_CD AS CATEGORY_CODE,
|
||||
COALESCE(
|
||||
(SELECT CODE_NAME FROM COMM_CODE WHERE CODE_ID = CM.CATEGORY_CD LIMIT 1),
|
||||
CM.CATEGORY_CD
|
||||
) AS CATEGORY_CODE_NAME,
|
||||
-- 생산유형 (TODO: 실제 컬럼명 확인 필요)
|
||||
'' AS PRODUCTION_TYPE,
|
||||
'' AS PRODUCTION_TYPE_NAME,
|
||||
@@ -4472,9 +4476,12 @@
|
||||
WHERE 1=1
|
||||
AND PM.PROJECT_NO IS NOT NULL
|
||||
AND PM.PROJECT_NO != ''
|
||||
<!-- 프로젝트번호 검색 -->
|
||||
<if test="search_project_no != null and search_project_no != ''">
|
||||
AND UPPER(PM.PROJECT_NO) LIKE '%' || UPPER(#{search_project_no}) || '%'
|
||||
<!-- 프로젝트번호 검색 (multiple select) -->
|
||||
<if test="search_project_nos != null and search_project_nos != ''">
|
||||
AND PM.OBJID::VARCHAR IN
|
||||
<foreach item="projNo" collection="search_project_nos.split(',')" open="(" separator="," close=")">
|
||||
#{projNo}
|
||||
</foreach>
|
||||
</if>
|
||||
<!-- 제품구분 검색 -->
|
||||
<if test="search_product_code != null and search_product_code != ''">
|
||||
@@ -4488,9 +4495,13 @@
|
||||
<if test="search_production_type != null and search_production_type != ''">
|
||||
AND 1=1 <!-- TODO: 생산유형 컬럼 확인 후 조건 추가 -->
|
||||
</if>
|
||||
<!-- 고객사 검색 -->
|
||||
<!-- 고객사 검색 (C_ 접두사 처리) -->
|
||||
<if test="search_customer_objid != null and search_customer_objid != ''">
|
||||
AND CM.CUSTOMER_OBJID = #{search_customer_objid}
|
||||
AND (
|
||||
CM.CUSTOMER_OBJID = #{search_customer_objid}
|
||||
OR CM.CUSTOMER_OBJID = REPLACE(#{search_customer_objid}, 'C_', '')
|
||||
OR REPLACE(CM.CUSTOMER_OBJID, 'C_', '') = REPLACE(#{search_customer_objid}, 'C_', '')
|
||||
)
|
||||
</if>
|
||||
<!-- 요청납기 검색 -->
|
||||
<if test="search_req_del_date_from != null and search_req_del_date_from != ''">
|
||||
|
||||
@@ -2947,7 +2947,7 @@ WHERE 1=1
|
||||
AND EXISTS (
|
||||
SELECT 'E' FROM PROJECT_MGMT AS S_P
|
||||
WHERE POM.CONTRACT_MGMT_OBJID = S_P.OBJID
|
||||
AND S_P.CUSTOMER_OBJID = #{customer_cd}
|
||||
AND S_P.CUSTOMER_OBJID = REPLACE(#{customer_cd}, 'C_', '')
|
||||
)
|
||||
</if>
|
||||
<if test="customer_project_name !=null and customer_project_name != '' ">
|
||||
@@ -2975,7 +2975,7 @@ WHERE 1=1
|
||||
AND TO_DATE(POM.DELIVERY_DATE ,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{delivery_end_date}, 'YYYY-MM-DD')
|
||||
</if>
|
||||
<if test="partner_objid !=null and partner_objid != '' ">
|
||||
AND POM.PARTNER_OBJID = #{partner_objid}
|
||||
AND POM.PARTNER_OBJID = REPLACE(#{partner_objid}, 'C_', '')
|
||||
</if>
|
||||
<if test="sales_mng_user_id !=null and sales_mng_user_id != '' ">
|
||||
AND POM.SALES_MNG_USER_ID = #{sales_mng_user_id}
|
||||
@@ -3110,7 +3110,7 @@ SELECT
|
||||
AND EXISTS (
|
||||
SELECT 'E' FROM PROJECT_MGMT AS S_P
|
||||
WHERE POM.CONTRACT_MGMT_OBJID = S_P.OBJID
|
||||
AND S_P.CUSTOMER_OBJID = #{customer_cd}
|
||||
AND S_P.CUSTOMER_OBJID = REPLACE(#{customer_cd}, 'C_', '')
|
||||
)
|
||||
</if>
|
||||
<if test="customer_project_name !=null and customer_project_name != '' ">
|
||||
@@ -3138,7 +3138,7 @@ SELECT
|
||||
AND TO_DATE(POM.DELIVERY_DATE ,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{delivery_end_date}, 'YYYY-MM-DD')
|
||||
</if>
|
||||
<if test="partner_objid !=null and partner_objid != '' ">
|
||||
AND POM.PARTNER_OBJID = #{partner_objid}
|
||||
AND POM.PARTNER_OBJID = REPLACE(#{partner_objid}, 'C_', '')
|
||||
</if>
|
||||
<if test="sales_mng_user_id !=null and sales_mng_user_id != '' ">
|
||||
AND POM.SALES_MNG_USER_ID = #{sales_mng_user_id}
|
||||
@@ -3340,7 +3340,7 @@ WHERE 1=1
|
||||
AND EXISTS (
|
||||
SELECT 'E' FROM PROJECT_MGMT AS S_P
|
||||
WHERE POM.CONTRACT_MGMT_OBJID = S_P.OBJID
|
||||
AND S_P.CUSTOMER_OBJID = #{customer_cd}
|
||||
AND S_P.CUSTOMER_OBJID = REPLACE(#{customer_cd}, 'C_', '')
|
||||
)
|
||||
</if>
|
||||
<if test="customer_project_name !=null and customer_project_name != '' ">
|
||||
@@ -3375,7 +3375,7 @@ WHERE 1=1
|
||||
AND TO_DATE(POM.DELIVERY_DATE ,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{delivery_end_date}, 'YYYY-MM-DD')
|
||||
</if>
|
||||
<if test="partner_objid !=null and partner_objid != '' ">
|
||||
AND POM.PARTNER_OBJID = #{partner_objid}
|
||||
AND POM.PARTNER_OBJID = REPLACE(#{partner_objid}, 'C_', '')
|
||||
</if>
|
||||
<!--
|
||||
<if test="sales_mng_user_id !=null and sales_mng_user_id != '' ">
|
||||
@@ -3567,7 +3567,7 @@ WHERE 1=1
|
||||
AND EXISTS (
|
||||
SELECT 'E' FROM PROJECT_MGMT AS S_P
|
||||
WHERE POM.CONTRACT_MGMT_OBJID = S_P.OBJID
|
||||
AND S_P.CUSTOMER_OBJID = #{customer_cd}
|
||||
AND S_P.CUSTOMER_OBJID = REPLACE(#{customer_cd}, 'C_', '')
|
||||
)
|
||||
</if>
|
||||
<if test="customer_project_name !=null and customer_project_name != '' ">
|
||||
@@ -3602,7 +3602,7 @@ WHERE 1=1
|
||||
AND TO_DATE(POM.DELIVERY_DATE ,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{delivery_end_date}, 'YYYY-MM-DD')
|
||||
</if>
|
||||
<if test="partner_objid !=null and partner_objid != '' ">
|
||||
AND POM.PARTNER_OBJID = #{partner_objid}
|
||||
AND POM.PARTNER_OBJID = REPLACE(#{partner_objid}, 'C_', '')
|
||||
</if>
|
||||
<!--
|
||||
<if test="sales_mng_user_id !=null and sales_mng_user_id != '' ">
|
||||
@@ -4377,7 +4377,7 @@ SELECT POM.OBJID
|
||||
AND TO_CHAR(TO_DATE(S1.CUR_DELIVERY_DATE ,'YYYY-MM-DD'), 'YYYY') = #{Year}
|
||||
</if>
|
||||
<if test="customer_cd !=null and customer_cd != '' ">
|
||||
AND CM.CUSTOMER_OBJID = #{customer_cd}
|
||||
AND CM.CUSTOMER_OBJID = REPLACE(#{customer_cd}, 'C_', '')
|
||||
</if>
|
||||
<if test="customer_project_name !=null and customer_project_name != '' ">
|
||||
AND TRIM(UPPER(CM.CUSTOMER_PROJECT_NAME)) = TRIM(UPPER(#{customer_project_name}))
|
||||
@@ -4408,7 +4408,7 @@ SELECT POM.OBJID
|
||||
AND TO_DATE(POM.DELIVERY_DATE ,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{delivery_end_date}, 'YYYY-MM-DD')
|
||||
</if>
|
||||
<if test="partner_objid !=null and partner_objid != '' ">
|
||||
AND POM.PARTNER_OBJID = #{partner_objid}
|
||||
AND POM.PARTNER_OBJID = REPLACE(#{partner_objid}, 'C_', '')
|
||||
</if>
|
||||
<!-- <if test="sales_mng_user_id !=null and sales_mng_user_id != '' ">
|
||||
AND POM.SALES_MNG_USER_ID = #{sales_mng_user_id}
|
||||
@@ -4427,7 +4427,7 @@ SELECT POM.OBJID
|
||||
AND TO_DATE(TO_CHAR(POM.REGDATE,'YYYY-MM-DD') ,'YYYY-MM-DD') <![CDATA[ <= ]]> TO_DATE(#{reg_end_date}, 'YYYY-MM-DD')
|
||||
</if>
|
||||
<if test="delivery_status !=null and delivery_status != '' ">
|
||||
AND (CASE WHEN 0 <![CDATA[ >= ]]> ((SELECT SUM(REAL_ORDER_QTY::NUMERIC) FROM PURCHASE_ORDER_PART AS O WHERE POM.OBJID::VARCHAR = O.PURCHASE_ORDER_MASTER_OBJID) - (S1.TOTAL_DELIVERY_QTY <!-- - S1.TOTAL_DEFECT_QTY -->)) THEN '입고완료'
|
||||
AND (CASE WHEN 0 <![CDATA[ >= ]]> ((SELECT SUM(ORDER_QTY::NUMERIC) FROM PURCHASE_ORDER_PART AS O WHERE POM.OBJID::VARCHAR = O.PURCHASE_ORDER_MASTER_OBJID) - (S1.TOTAL_DELIVERY_QTY <!-- - S1.TOTAL_DEFECT_QTY -->)) THEN '입고완료'
|
||||
WHEN TO_CHAR(NOW(),'YYYY-MM-DD') <![CDATA[ > ]]> POM.DELIVERY_DATE THEN '지연'
|
||||
ELSE '입고중'
|
||||
END) = #{delivery_status}
|
||||
|
||||
@@ -830,32 +830,59 @@
|
||||
ELSE '입고중'
|
||||
END) = #{search_delivery_status}
|
||||
</if>
|
||||
<!-- 프로젝트번호 (multi select) -->
|
||||
<!-- 프로젝트번호 (multi select) - OBJID로 검색 -->
|
||||
<if test="project_nos != null and project_nos != ''">
|
||||
AND CM.PROJECT_NO IN
|
||||
AND CM.OBJID::VARCHAR IN
|
||||
<foreach item="item" collection="project_nos.split(',')" open="(" separator="," close=")">
|
||||
#{item}
|
||||
</foreach>
|
||||
</if>
|
||||
<!-- 검사자 -->
|
||||
<if test="inspector_id != null and inspector_id != ''">
|
||||
AND IID.INSPECTOR_ID = #{inspector_id}
|
||||
AND EXISTS (
|
||||
SELECT 1 FROM INCOMING_INSPECTION_DETAIL IID_SUB
|
||||
LEFT JOIN INCOMING_INSPECTION_DEFECT IDF_SUB ON IDF_SUB.INSPECTION_DETAIL_OBJID = IID_SUB.OBJID
|
||||
WHERE IID_SUB.PURCHASE_ORDER_MASTER_OBJID = POM.OBJID::VARCHAR
|
||||
AND IDF_SUB.INSPECTOR_ID = #{inspector_id}
|
||||
)
|
||||
</if>
|
||||
<!-- 검사일 (시작) -->
|
||||
<if test="inspection_start_date != null and inspection_start_date != ''">
|
||||
AND IID.INSPECTION_DATE <![CDATA[ >= ]]> #{inspection_start_date}
|
||||
AND EXISTS (
|
||||
SELECT 1 FROM INCOMING_INSPECTION_DETAIL IID_SUB
|
||||
LEFT JOIN INCOMING_INSPECTION_DEFECT IDF_SUB ON IDF_SUB.INSPECTION_DETAIL_OBJID = IID_SUB.OBJID
|
||||
WHERE IID_SUB.PURCHASE_ORDER_MASTER_OBJID = POM.OBJID::VARCHAR
|
||||
AND IDF_SUB.INSPECTION_DATE <![CDATA[ >= ]]> TO_DATE(#{inspection_start_date}, 'YYYY-MM-DD')
|
||||
)
|
||||
</if>
|
||||
<!-- 검사일 (종료) -->
|
||||
<if test="inspection_end_date != null and inspection_end_date != ''">
|
||||
AND IID.INSPECTION_DATE <![CDATA[ <= ]]> #{inspection_end_date}
|
||||
AND EXISTS (
|
||||
SELECT 1 FROM INCOMING_INSPECTION_DETAIL IID_SUB
|
||||
LEFT JOIN INCOMING_INSPECTION_DEFECT IDF_SUB ON IDF_SUB.INSPECTION_DETAIL_OBJID = IID_SUB.OBJID
|
||||
WHERE IID_SUB.PURCHASE_ORDER_MASTER_OBJID = POM.OBJID::VARCHAR
|
||||
AND IDF_SUB.INSPECTION_DATE <![CDATA[ <= ]]> TO_DATE(#{inspection_end_date}, 'YYYY-MM-DD')
|
||||
)
|
||||
</if>
|
||||
<!-- 검사결과 -->
|
||||
<if test="search_inspection_result != null and search_inspection_result != ''">
|
||||
AND (CASE WHEN IID.NG_COUNT > 0 THEN 'NG'
|
||||
WHEN IID.TOTAL_COUNT > 0 AND IID.TOTAL_COUNT = IID.INSPECTED_COUNT THEN 'OK'
|
||||
WHEN IID.INSPECTED_COUNT > 0 THEN '검사중'
|
||||
AND (CASE WHEN DEFECT.NG_COUNT > 0 THEN 'NG'
|
||||
WHEN DEFECT.INSPECTION_TARGET_COUNT > 0 AND DEFECT.INSPECTION_TARGET_COUNT = DEFECT.INSPECTED_COUNT THEN 'OK'
|
||||
WHEN DEFECT.INSPECTED_COUNT > 0 THEN '검사중'
|
||||
ELSE '' END) = #{search_inspection_result}
|
||||
</if>
|
||||
<!-- 요청자 -->
|
||||
<if test="request_user_id != null and request_user_id != ''">
|
||||
AND IID.REQUEST_USER_ID = #{request_user_id}
|
||||
</if>
|
||||
<!-- 요청일 (시작) -->
|
||||
<if test="request_start_date != null and request_start_date != ''">
|
||||
AND IID.REQUEST_DATE <![CDATA[ >= ]]> #{request_start_date}
|
||||
</if>
|
||||
<!-- 요청일 (종료) -->
|
||||
<if test="request_end_date != null and request_end_date != ''">
|
||||
AND IID.REQUEST_DATE <![CDATA[ <= ]]> #{request_end_date}
|
||||
</if>
|
||||
<!-- 요청현황 필터 (수입검사 진행 리스트에서 요청완료 건만 조회) -->
|
||||
<if test="request_status_filter != null and request_status_filter == '요청완료'">
|
||||
AND REQ.DELIVERY_TOTAL_COUNT = REQ.SELECTED_COUNT
|
||||
@@ -1100,23 +1127,23 @@
|
||||
WHERE PID.MASTER_OBJID = PIM.OBJID
|
||||
AND PM.PRODUCT = #{productType})
|
||||
</if>
|
||||
/* 품번 */
|
||||
/* 품번 (OBJID 또는 품번 텍스트로 검색) */
|
||||
<if test="search_part_objid != null and search_part_objid != ''">
|
||||
AND EXISTS (SELECT 1 FROM PROCESS_INSPECTION_DETAIL PID
|
||||
WHERE PID.MASTER_OBJID = PIM.OBJID
|
||||
AND PID.PART_OBJID = #{search_part_objid})
|
||||
AND (PID.PART_OBJID = #{search_part_objid} OR UPPER(PID.PART_NO) LIKE '%' || UPPER(#{search_part_objid}) || '%'))
|
||||
</if>
|
||||
/* 품명 */
|
||||
/* 품명 (LIKE 검색) */
|
||||
<if test="search_part_name != null and search_part_name != ''">
|
||||
AND EXISTS (SELECT 1 FROM PROCESS_INSPECTION_DETAIL PID
|
||||
WHERE PID.MASTER_OBJID = PIM.OBJID
|
||||
AND PID.PART_OBJID = #{search_part_name})
|
||||
AND UPPER(PID.PART_NAME) LIKE '%' || UPPER(#{search_part_name}) || '%')
|
||||
</if>
|
||||
/* 작업환경상태 */
|
||||
/* 작업환경상태 (화면 표시 로직과 동일하게: 하나라도 불량이면 불량) */
|
||||
<if test="search_work_env_status != null and search_work_env_status != ''">
|
||||
AND EXISTS (SELECT 1 FROM PROCESS_INSPECTION_DETAIL PID
|
||||
WHERE PID.MASTER_OBJID = PIM.OBJID
|
||||
AND PID.WORK_ENV_STATUS = CASE WHEN #{search_work_env_status} = 'OK' THEN '양호' ELSE '불량' END)
|
||||
AND (SELECT CASE WHEN COUNT(CASE WHEN PID.WORK_ENV_STATUS = '불량' THEN 1 END) > 0 THEN '불량' ELSE '양호' END
|
||||
FROM PROCESS_INSPECTION_DETAIL PID WHERE PID.MASTER_OBJID = PIM.OBJID
|
||||
) = CASE WHEN #{search_work_env_status} = 'OK' THEN '양호' ELSE '불량' END
|
||||
</if>
|
||||
/* 측정기 */
|
||||
<if test="search_measuring_device != null and search_measuring_device != ''">
|
||||
|
||||
Reference in New Issue
Block a user