3320 lines
96 KiB
XML
3320 lines
96 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE mapper
|
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
<mapper namespace="common">
|
|
<!-- //파일 정보 DB저장 -->
|
|
<insert id="insertUploadFileInfo" parameterType="map">
|
|
INSERT INTO ATTACH_FILE_INFO(
|
|
OBJID
|
|
, TARGET_OBJID
|
|
, PARENT_TARGET_OBJID
|
|
, SAVED_FILE_NAME
|
|
, REAL_FILE_NAME
|
|
, DOC_TYPE
|
|
, DOC_TYPE_NAME
|
|
, FILE_SIZE
|
|
, FILE_EXT
|
|
, FILE_PATH
|
|
, WRITER
|
|
, REGDATE
|
|
, STATUS
|
|
) VALUES (
|
|
${objId}::integer
|
|
, #{targetObjId}
|
|
, #{parentTargetObjId}
|
|
, #{savedFileName}
|
|
, #{realFileName}
|
|
, #{docType}
|
|
, #{docTypeName}
|
|
, ${fileSize}
|
|
, #{fileExt}
|
|
, #{filePath}
|
|
, #{writer}
|
|
, now()
|
|
, 'Active'
|
|
)
|
|
</insert>
|
|
|
|
<!-- //파일목록 조회 -->
|
|
<select id="getObjIdFileList" resultType="map" parameterType="map">
|
|
SELECT OBJID
|
|
, TARGET_OBJID
|
|
, PARENT_TARGET_OBJID
|
|
, SAVED_FILE_NAME
|
|
, REAL_FILE_NAME
|
|
, DOC_TYPE
|
|
, DOC_TYPE_NAME
|
|
, FILE_SIZE
|
|
, FILE_EXT
|
|
, UPPER(FILE_EXT) UPPER_FILE_EXT
|
|
, REPLACE(FILE_PATH, '\', '\\') AS FILE_PATH
|
|
, WRITER
|
|
, (SELECT USER_NAME FROM USER_INFO USER_INFO_T WHERE USER_INFO_T.USER_ID = WRITER) AS USER_NAME
|
|
, (SELECT DEPT_NAME FROM USER_INFO USER_INFO_T WHERE USER_INFO_T.USER_ID = WRITER) AS DEPT_NAME
|
|
, TO_CHAR(REGDATE, 'YYYY-MM-DD') AS REGDATE
|
|
, REGDATE AS REGDATE_ORG
|
|
, STATUS
|
|
FROM ATTACH_FILE_INFO
|
|
WHERE 1=1
|
|
AND OBJID = ${ObjId}
|
|
<if test="docType != null and !''.equals(docType)">
|
|
AND DOC_TYPE = #{docType}
|
|
</if>
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
ORDER BY REGDATE_ORG DESC
|
|
</select>
|
|
|
|
<!-- //사용자 간편 목록 조회 -->
|
|
<select id="getPostUseUserInfo" resultType="map" parameterType="map">
|
|
SELECT * FROM USER_INFO WHERE 1=1 AND USER_ID = #{writer}
|
|
</select>
|
|
|
|
<!-- //파일목록 조회 -->
|
|
<select id="getFileList" resultType="map" parameterType="map">
|
|
SELECT OBJID
|
|
, TARGET_OBJID
|
|
, PARENT_TARGET_OBJID
|
|
, SAVED_FILE_NAME
|
|
, REAL_FILE_NAME
|
|
, DOC_TYPE
|
|
, DOC_TYPE_NAME
|
|
, FILE_SIZE
|
|
, FILE_EXT
|
|
, UPPER(FILE_EXT) UPPER_FILE_EXT
|
|
, REPLACE(FILE_PATH, '\', '\\') AS FILE_PATH
|
|
, WRITER
|
|
, (SELECT USER_NAME FROM USER_INFO USER_INFO_T WHERE USER_INFO_T.USER_ID = WRITER) AS USER_NAME
|
|
, (SELECT DEPT_NAME FROM USER_INFO USER_INFO_T WHERE USER_INFO_T.USER_ID = WRITER) AS DEPT_NAME
|
|
, TO_CHAR(REGDATE, 'YYYY-MM-DD') AS REGDATE
|
|
, REGDATE AS REGDATE_ORG
|
|
, STATUS
|
|
FROM ATTACH_FILE_INFO
|
|
WHERE 1=1
|
|
|
|
<if test="(targetObjId == null or ''.equals(targetObjId)) and (parentTargetObjId == null or ''.equals(parentTargetObjId))">
|
|
AND 1=2
|
|
</if>
|
|
<if test="targetObjId != null and !''.equals(targetObjId)">
|
|
AND TARGET_OBJID = #{targetObjId}
|
|
</if>
|
|
<if test="parentTargetObjId != null and !''.equals(parentTargetObjId)">
|
|
AND PARENT_TARGET_OBJID = #{parentTargetObjId}
|
|
</if>
|
|
|
|
<if test="docType != null and !''.equals(docType)">
|
|
AND DOC_TYPE = #{docType}
|
|
</if>
|
|
<!-- 일괄다운로드시 여러 DOC_TYPE 조회 시 사용 -->
|
|
<if test="docTypeList != null and docTypeList.size != 0">
|
|
AND DOC_TYPE IN
|
|
<foreach collection="docTypeList" item="docType" index="index" separator="," open="(" close=")">
|
|
#{docType}
|
|
</foreach>
|
|
</if>
|
|
<!-- //date search -->
|
|
<if test="search_fromDate != null and !''.equals(search_fromDate)">
|
|
AND REGDATE <![CDATA[ >= ]]> TO_DATE(#{search_fromDate}, 'YYYY-MM-DD')
|
|
</if>
|
|
<if test="search_toDate != null and !''.equals(search_toDate)">
|
|
AND REGDATE <![CDATA[ <= ]]> last_day(TO_DATE(#{search_toDate}, 'YYYY-MM-DD'))
|
|
</if>
|
|
<!-- //금형이관 인수인계서는 파일명이 part no로 되어있음 -->
|
|
<if test="partNo != null and !''.equals(partNo)">
|
|
AND UPPER(REAL_FILE_NAME) LIKE UPPER('%${partNo}%')
|
|
</if>
|
|
<if test="fileSizeNot0 != null and !''.equals(fileSizeNot0)">
|
|
AND FILE_SIZE > 0
|
|
</if>
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
ORDER BY REGDATE_ORG DESC
|
|
</select>
|
|
|
|
<!-- //파일목록 조회 -->
|
|
<select id="getApprovalLine" resultType="map" parameterType="map">
|
|
select
|
|
USER_NAME(T1.WRITER) as WRITER,
|
|
to_char(T1.REGDATE, 'YYYY-MM-DD') as REGDATE,
|
|
USER_NAME(T2.TARGET_USER_ID) TARGET_USER_NAME,
|
|
to_char(T2.PROC_DATE, 'YYYY-MM-DD') as PROC_DATE,
|
|
T1.STATUS,
|
|
T2.STATUS
|
|
from
|
|
APPROVAL T,
|
|
ROUTE T1,
|
|
<!-- 반려 or 결재완료 조회 처리 240307 -->
|
|
( SELECT T1.*
|
|
FROM ( SELECT TARGET_OBJID
|
|
,MAX(T.ROUTE_SEQ) AS ROUTE_SEQ
|
|
FROM ROUTE T
|
|
WHERE T.TARGET_OBJID = #{objId}::INTEGER
|
|
GROUP BY T.TARGET_OBJID
|
|
) T
|
|
,ROUTE T1
|
|
WHERE T.TARGET_OBJID = T1.TARGET_OBJID
|
|
AND T.ROUTE_SEQ = T1.ROUTE_SEQ
|
|
) B,
|
|
INBOXTASK T2
|
|
where T.OBJID = B.APPROVAL_OBJID
|
|
AND T.OBJID = T1.APPROVAL_OBJID
|
|
<!--
|
|
and T.TARGET_OBJID = #{objId}::integer
|
|
240201 동시발주 동시결재 때문에 위 조건에서 아래로 변경
|
|
-->
|
|
and ( T.TARGET_OBJID = #{objId}::INTEGER
|
|
OR T.OBJID IN (SELECT APPROVAL_OBJID FROM APPROVAL_TARGET AT WHERE AT.TARGET_OBJID = #{objId}::INTEGER)
|
|
)
|
|
and T1.OBJID = T2.ROUTE_OBJID
|
|
order by
|
|
T1.REGDATE,
|
|
T2.SEQ asc
|
|
</select>
|
|
<!-- <select id="getApprovalLine" resultType="map" parameterType="map">
|
|
SELECT
|
|
USER_NAME(T1.WRITER) AS WRITER
|
|
,TO_CHAR(T1.REGDATE,'YYYY-MM-DD') AS REGDATE
|
|
,USER_NAME(T2.TARGET_USER_ID) TARGET_USER_NAME
|
|
,TO_CHAR(T2.PROC_DATE,'YYYY-MM-DD') AS PROC_DATE
|
|
FROM APPROVAL T,ROUTE T1 ,INBOXTASK T2
|
|
WHERE T.OBJID = T1.APPROVAL_OBJID
|
|
AND T.TARGET_OBJID=#{objId}
|
|
AND T1.STATUS!='reject'
|
|
AND T1.OBJID = T2.ROUTE_OBJID
|
|
ORDER BY T1.REGDATE,T2.SEQ ASC
|
|
</select> -->
|
|
|
|
|
|
<!-- //파일목록 조회 -->
|
|
<select id="getFilesList" resultType="map" parameterType="map">
|
|
SELECT OBJID
|
|
, TARGET_OBJID
|
|
, SAVED_FILE_NAME
|
|
, REAL_FILE_NAME
|
|
, DOC_TYPE
|
|
, DOC_TYPE_NAME
|
|
, FILE_SIZE
|
|
, FILE_EXT
|
|
, UPPER(FILE_EXT) UPPER_FILE_EXT
|
|
, REPLACE(FILE_PATH, '\', '\\') AS FILE_PATH
|
|
, WRITER
|
|
, (SELECT USER_NAME FROM USER_INFO USER_INFO_T WHERE USER_INFO_T.USER_ID = WRITER) AS USER_NAME
|
|
, (SELECT DEPT_NAME FROM USER_INFO USER_INFO_T WHERE USER_INFO_T.USER_ID = WRITER) AS DEPT_NAME
|
|
, TO_CHAR(REGDATE, 'YYYY-MM-DD') AS REGDATE
|
|
, REGDATE AS REGDATE_ORG
|
|
, STATUS
|
|
FROM ATTACH_FILE_INFO
|
|
WHERE 1=1
|
|
AND TARGET_OBJID IN
|
|
<foreach collection="objIdsarr" item="objkey" index="index" separator="," open="(" close=")">
|
|
#{objkey}
|
|
</foreach>
|
|
<if test="docType != null and !''.equals(docType)">
|
|
AND DOC_TYPE = #{docType}
|
|
</if>
|
|
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
ORDER BY REGDATE_ORG DESC
|
|
</select>
|
|
|
|
<select id="getSupCdList" resultType="map" parameterType="map">
|
|
SELECT
|
|
OBJID AS CODE_ID
|
|
,SUPPLY_CODE
|
|
,SUPPLY_NAME AS CODE_NAME
|
|
,REG_NO
|
|
,SUPPLY_ADDRESS
|
|
,SUPPLY_BUSNAME
|
|
,SUPPLY_STOCKNAME
|
|
,SUPPLY_TEL_NO
|
|
,SUPPLY_FAX_NO
|
|
,CHARGE_USER_NAME
|
|
,PAYMENT_METHOD
|
|
,REG_ID
|
|
,REG_DATE
|
|
,STATUS
|
|
FROM SUPPLY_MNG T
|
|
WHERE SUPPLY_CODE = #{codeId}
|
|
ORDER BY T.SUPPLY_CODE
|
|
</select>
|
|
|
|
<!-- //코드목록조회 -->
|
|
<select id="getCodeList" resultType="map" parameterType="map">
|
|
SELECT
|
|
OBJID
|
|
,CODE_ID
|
|
,PARENT_CODE_ID
|
|
,CODE_NAME
|
|
,ID
|
|
,CODE_CD
|
|
,EXT_VAL
|
|
,WRITER
|
|
,(
|
|
SELECT
|
|
CASE
|
|
WHEN USER_NAME = NULL THEN '정보없음'
|
|
ELSE USER_NAME
|
|
END
|
|
FROM
|
|
USER_INFO
|
|
WHERE USER_ID = T.WRITER
|
|
) USER_NAME
|
|
,TO_CHAR(REGDATE,'YYYY-MM-DD') REGDATE
|
|
,REGDATE
|
|
,CASE STATUS
|
|
WHEN 'active' THEN '활성화'
|
|
ELSE '비활성화'
|
|
END AS STATUS
|
|
FROM COMM_CODE T
|
|
WHERE 1=1
|
|
AND PARENT_CODE_ID = #{codeId}
|
|
</select>
|
|
<select id="getCodeList2" resultType="map" parameterType="map">
|
|
SELECT
|
|
OBJID
|
|
,CODE_ID
|
|
,PARENT_CODE_ID
|
|
,CODE_NAME
|
|
,ID
|
|
,CODE_CD
|
|
,EXT_VAL
|
|
,WRITER
|
|
,(SELECT CASE WHEN USER_NAME = NULL THEN '정보없음' ELSE USER_NAME END FROM USER_INFO WHERE USER_ID = T.WRITER) USER_NAME
|
|
,TO_CHAR(REGDATE,'YYYY-MM-DD') REGDATE
|
|
,REGDATE
|
|
<!-- ,DECODE(STATUS,'active','활성화','비활성화') as STATUS -->
|
|
,CASE STATUS
|
|
WHEN 'active' THEN '활성화'
|
|
ELSE '비활성화'
|
|
END STATUS
|
|
FROM COMM_CODE T
|
|
WHERE 1=1
|
|
<if test="parentCodeId !=null and parentCodeId != '' ">
|
|
AND PARENT_CODE_ID = #{parentCodeId}
|
|
</if>
|
|
<if test="id !=null and id != '' ">
|
|
AND ID = #{id}
|
|
</if>
|
|
<if test="codeCd !=null and codeCd != '' ">
|
|
AND CODE_CD = #{codeCd}
|
|
</if>
|
|
<if test="extVal !=null and extVal != '' ">
|
|
AND EXT_VAL = #{extVal}
|
|
</if>
|
|
|
|
<if test="connectByParentCodeId !=null and connectByParentCodeId != '' ">
|
|
START WITH PARENT_CODE_ID = #{connectByParentCodeId}
|
|
CONNECT BY PRIOR CODE_ID = PARENT_CODE_ID
|
|
ORDER SIBLINGS BY CODE_ID
|
|
</if>
|
|
</select>
|
|
|
|
|
|
<!-- //파일목록 조회(변환용) -->
|
|
<select id="getFileListForConvert" resultType="map" parameterType="map">
|
|
SELECT OBJID
|
|
, TARGET_OBJID
|
|
, SAVED_FILE_NAME
|
|
, REAL_FILE_NAME
|
|
, DOC_TYPE
|
|
, DOC_TYPE_NAME
|
|
, FILE_SIZE
|
|
, FILE_EXT
|
|
, UPPER(FILE_EXT) UPPER_FILE_EXT
|
|
, REPLACE(FILE_PATH, '\', '\\') AS FILE_PATH
|
|
, FILE_PATH AS FILE_PATH_ORG
|
|
, WRITER
|
|
, TO_CHAR(REGDATE, 'YYYY-MM-DD') AS REGDATE
|
|
, REGDATE AS REGDATE_ORG
|
|
, STATUS
|
|
FROM ATTACH_FILE_INFO
|
|
WHERE 1=1
|
|
AND TARGET_OBJID = #{targetObjId}
|
|
<if test="docType != null and !''.equals(docType)">
|
|
AND DOC_TYPE = #{docType}
|
|
</if>
|
|
<!-- 일괄다운로드시 여러 DOC_TYPE 조회 시 사용 -->
|
|
<if test="docTypeList != null and docTypeList.size != 0">
|
|
AND DOC_TYPE IN
|
|
<foreach collection="docTypeList" item="docType" index="index" separator="," open="(" close=")">
|
|
#{docType}
|
|
</foreach>
|
|
</if>
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
ORDER BY REGDATE_ORG DESC
|
|
</select>
|
|
|
|
<!-- //파일삭제 (논리적삭제, status : Deleted) -->
|
|
<update id="deleteFileInfo_logical" parameterType="map">
|
|
UPDATE ATTACH_FILE_INFO SET STATUS = 'Deleted' WHERE 1=1
|
|
|
|
<if test="(objId == null or ''.equals(objId)) and (targetObjId == null or ''.equals(targetObjId))">
|
|
AND 1=2
|
|
</if>
|
|
<if test="objId != null and !''.equals(objId)">
|
|
AND OBJID = ${objId}
|
|
</if>
|
|
<if test="targetObjId != null and !''.equals(targetObjId)">
|
|
AND TARGET_OBJID = #{targetObjId}
|
|
</if>
|
|
<if test="docType != null and !''.equals(docType)">
|
|
AND DOC_TYPE = #{docType}
|
|
</if>
|
|
</update>
|
|
|
|
<!-- //파일삭제 (물리적삭제) -->
|
|
<update id="deleteFileInfo_physical" parameterType="map">
|
|
DELETE FROM ATTACH_FILE_INFO WHERE 1=1
|
|
<if test="objId != null and !''.equals(objId)">
|
|
AND OBJID = ${objId}
|
|
</if>
|
|
<if test="targetObjId != null and !''.equals(targetObjId)">
|
|
AND TARGET_OBJID = #{targetObjId}
|
|
</if>
|
|
<if test="docType != null and !''.equals(docType)">
|
|
AND DOC_TYPE = #{docType}
|
|
</if>
|
|
</update>
|
|
|
|
<!-- //파일 정보 조회 -->
|
|
<select id="getFileInfo" parameterType="map" resultType="map">
|
|
SELECT OBJID
|
|
, TARGET_OBJID
|
|
, SAVED_FILE_NAME
|
|
, REAL_FILE_NAME
|
|
, DOC_TYPE
|
|
, DOC_TYPE_NAME
|
|
, FILE_SIZE
|
|
, FILE_EXT
|
|
, replace(FILE_PATH, '\', '\\') as file_path
|
|
, WRITER
|
|
, TO_CHAR(REGDATE, 'YYYY-MM-DD') AS REGDATE
|
|
, REGDATE AS REGDATE_ORG
|
|
, STATUS
|
|
FROM ATTACH_FILE_INFO
|
|
WHERE 1=1
|
|
AND OBJID = ${objId}
|
|
</select>
|
|
|
|
<!-- //OEM정보 조회(콤보박스용) -->
|
|
<select id="getOEMList" parameterType="map" resultType="map">
|
|
SELECT OBJID
|
|
, OEM_CODE
|
|
, OEM_NAME
|
|
FROM OEM_MNG
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
<if test="search_oemCode != null and !''.equals(search_oemCode)">
|
|
AND OEM_CODE = #{search_oemCode}
|
|
</if>
|
|
<if test="search_oemName != null and !''.equals(search_oemName)">
|
|
AND OEM_NAME = #{search_oemName}
|
|
</if>
|
|
ORDER BY OEM_NAME
|
|
</select>
|
|
|
|
<!-- Part 정보조회(ajax, 콤보박스용) -->
|
|
<select id="getPartMngList" parameterType="map" resultType="map">
|
|
SELECT
|
|
T.*,
|
|
ROW_NUMBER() OVER(ORDER BY REG_DATE DESC) RNUM
|
|
FROM(
|
|
SELECT
|
|
T.*
|
|
,(SELECT O.CODE_NAME FROM COMM_CODE O WHERE O.CODE_ID = T.PRODUCT_GROUP AND O.PARENT_CODE_ID = #{PRODUCT_GROUP_CODE}) AS PRODUCT_GROUP_TITLE
|
|
,(SELECT O.CODE_NAME FROM COMM_CODE O WHERE O.CODE_ID = T.PRODUCT AND O.PARENT_CODE_ID = T.PRODUCT_GROUP) AS PRODUCT_TITLE
|
|
,(SELECT O.CODE_NAME FROM COMM_CODE O WHERE O.CODE_ID = T.MATERIAL AND O.PARENT_CODE_ID = #{MATERIAL_CODE}) AS MATERIAL_TITLE
|
|
,(SELECT O.CODE_NAME FROM COMM_CODE O WHERE O.CODE_ID = T.SPEC_NO AND O.PARENT_CODE_ID = #{SPEC_NO_CODE}) AS SPEC_NO_TITLE
|
|
,(SELECT O.CODE_NAME FROM COMM_CODE O WHERE O.CODE_ID = T.DESIGN_APPLY_POINT AND O.PARENT_CODE_ID = #{DESIGN_APPLY_POINT_CODE}) AS DESIGN_APPLY_POINT_TITLE
|
|
,(SELECT OEM_CODE FROM OEM_MNG WHERE OBJID = COALESCE(T.CUSTOMER,'0')::NUMERIC) AS CUSTOMER_TITLE
|
|
,(SELECT CAR_CODE||'{'||CAR_NAME||'}' FROM CAR_MNG WHERE OBJID = COALESCE(T.CAR_TYPE,'0')::NUMERIC) AS CAR_TYPE_TITLE
|
|
FROM
|
|
<include refid="partMng.partMngBase"/> T
|
|
) T
|
|
where 1=1
|
|
<if test="search_customer != null and search_customer != ''">
|
|
AND CUSTOMER = #{search_customer}
|
|
</if>
|
|
<if test="search_material != null and search_material != ''">
|
|
AND MATERIAL = #{search_material}
|
|
</if>
|
|
<!-- EO 기능 말들고 추가 필요 -->
|
|
<if test="search_eo != null and search_eo != ''">
|
|
AND UPPER(EO_NO) LIKE UPPER('%${search_eo}%')
|
|
</if>
|
|
<if test="search_except_eo != null and search_except_eo != ''">
|
|
AND EO != #{search_except_eo}
|
|
AND (EO IS NULL OR EO = '' OR EO = '0')
|
|
</if>
|
|
<if test="search_eo_date_from != null and search_eo_date_from != ''">
|
|
AND EO_DATE <![CDATA[ >= ]]> #{search_eo_date_from}::TIMESTAMP
|
|
</if>
|
|
<if test="search_eo_date_to != null and search_eo_date_to != ''">
|
|
AND EO_DATE <![CDATA[ <= ]]> #{search_eo_date_to}::TIMESTAMP
|
|
</if>
|
|
<if test="search_car_type != null and search_car_type != ''">
|
|
AND CAR_TYPE = #{search_car_type}
|
|
</if>
|
|
<if test="search_product_group != null and search_product_group != ''">
|
|
AND PRODUCT_GROUP = #{search_product_group}
|
|
</if>
|
|
<if test="search_product != null and search_product != ''">
|
|
AND PRODUCT = #{search_product}
|
|
</if>
|
|
<if test="search_part_no != null and search_part_no != ''">
|
|
AND UPPER(PART_NO) LIKE UPPER('%${search_part_no}%')
|
|
</if>
|
|
|
|
<if test="search_exist_part_no != null and search_exist_part_no != ''">
|
|
AND PART_NO = #{search_exist_part_no}
|
|
</if>
|
|
|
|
<if test="search_not_exist_part_no != null and search_not_exist_part_no != ''">
|
|
AND PART_NO != #{search_not_exist_part_no}
|
|
</if>
|
|
|
|
<if test="search_part_name != null and search_part_name != ''">
|
|
AND UPPER(PART_NAME) LIKE UPPER('%${search_part_name}%')
|
|
</if>
|
|
<if test="search_mold_dev != null and search_mold_dev != ''">
|
|
AND UPPER(search_mold_dev) LIKE UPPER('%${search_mold_dev}%')
|
|
</if>
|
|
<if test="search_surface_treatment != null and search_surface_treatment != ''">
|
|
AND UPPER(search_surface_treatment) LIKE UPPER('%${search_surface_treatment}%')
|
|
</if>
|
|
<if test="search_writer != null and search_writer != ''">
|
|
AND WRITER = #{search_writer}
|
|
</if>
|
|
<if test="IS_LAST != null and IS_LAST != ''">
|
|
AND IS_LAST = #{IS_LAST}
|
|
</if>
|
|
<if test="STATUS != null and STATUS != ''">
|
|
AND STATUS = #{STATUS}
|
|
</if>
|
|
</select>
|
|
|
|
<!-- //차종정보 조회(콤보박스용) -->
|
|
<select id="getCarTypeList" parameterType="map" resultType="map">
|
|
SELECT OBJID
|
|
, (SELECT OEM_CODE FROM OEM_MNG WHERE OBJID = CAR_MNG.OEM_OBJID) AS OEM_CODE
|
|
<!-- , (SELECT GRADE_NAME FROM CAR_GRADE_MNG WHERE OBJID = CAR_MNG.GRADE_OBJID) AS GRADE_NAME -->
|
|
, CAR_CODE
|
|
, MODEL_CODE
|
|
, CAR_NAME
|
|
, DESCRIPTION
|
|
, OEM_OBJID
|
|
FROM CAR_MNG
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
<if test="search_oemCode != null and !''.equals(search_oemCode)">
|
|
AND OEM_OBJID = (SELECT OBJID FROM OEM_MNG WHERE OEM_CODE = #{search_oemCode} AND UPPER(STATUS) = 'ACTIVE')
|
|
</if>
|
|
<if test="search_oemName != null and !''.equals(search_oemName)">
|
|
AND OEM_OBJID = (SELECT OBJID FROM OEM_MNG WHERE OEM_NAME = #{search_oemName} AND UPPER(STATUS) = 'ACTIVE')
|
|
</if>
|
|
<if test="search_oemObjId != null and !''.equals(search_oemObjId)">
|
|
AND OEM_OBJID = ${search_oemObjId}
|
|
</if>
|
|
<if test="search_carCode != null and !''.equals(search_carCode)">
|
|
AND CAR_CODE = #{search_carCode}
|
|
</if>
|
|
<if test="search_carName != null and !''.equals(search_carName)">
|
|
AND CAR_NAME = #{search_carName}
|
|
</if>
|
|
ORDER BY CAR_NAME, CAR_CODE
|
|
</select>
|
|
|
|
<!-- 프로젝트 기준 차종정보 조회(ajax, 콤보박스용) -->
|
|
<select id="getProjectBaseCarTypeList" parameterType="map" resultType="map">
|
|
SELECT OBJID
|
|
, (SELECT OEM_CODE FROM OEM_MNG WHERE OBJID = CAR.OEM_OBJID) AS OEM_CODE
|
|
, (SELECT GRADE_NAME FROM CAR_GRADE_MNG WHERE OBJID = CAR.GRADE_OBJID) AS GRADE_NAME
|
|
, CAR_CODE
|
|
, MODEL_CODE
|
|
, CAR_NAME
|
|
, DESCRIPTION
|
|
, OEM_OBJID
|
|
FROM CAR_MNG CAR
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
AND EXISTS(
|
|
SELECT * FROM PMS_PJT_INFO PJT WHERE UPPER(STATUS) = 'CONFIRM' AND CAR.OBJID = PJT.CAR_OBJID
|
|
)
|
|
<if test="search_oemCode != null and !''.equals(search_oemCode)">
|
|
AND OEM_OBJID = (SELECT OBJID FROM OEM_MNG WHERE OEM_CODE = #{search_oemCode} AND UPPER(STATUS) = 'ACTIVE')
|
|
</if>
|
|
<if test="search_oemName != null and !''.equals(search_oemName)">
|
|
AND OEM_OBJID = (SELECT OBJID FROM OEM_MNG WHERE OEM_NAME = #{search_oemName} AND UPPER(STATUS) = 'ACTIVE')
|
|
</if>
|
|
<if test="search_oemObjId != null and !''.equals(search_oemObjId)">
|
|
AND OEM_OBJID = ${search_oemObjId}
|
|
</if>
|
|
<if test="search_carCode != null and !''.equals(search_carCode)">
|
|
AND CAR_CODE = #{search_carCode}
|
|
</if>
|
|
<if test="search_carName != null and !''.equals(search_carName)">
|
|
AND CAR_NAME = #{search_carName}
|
|
</if>
|
|
ORDER BY CAR_NAME, CAR_CODE
|
|
</select>
|
|
|
|
<!-- //제품군 조회(콤보박스용) -->
|
|
<select id="getProductGroupList" parameterType="map" resultType="map">
|
|
SELECT OBJID
|
|
, CODE_NAME PRODUCT_GROUP_NAME
|
|
, '' DESCRIPTION
|
|
FROM COMM_CODE
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
AND PARENT_CODE_ID = '0005116'
|
|
ORDER BY PRODUCT_GROUP_NAME
|
|
</select>
|
|
|
|
<!-- //제품 조회(콤보박스용) -->
|
|
<select id="getProductList" parameterType="map" resultType="map">
|
|
SELECT COMM_CODE.OBJID
|
|
, COMM_GROUP.OBJID PRODUCT_GROUP_OBJID
|
|
, COMM_CODE.CODE_ID PRODUCT_CODE
|
|
, COMM_CODE.CODE_NAME PRODUCT_NAME
|
|
, '' PRODUCT_DESC
|
|
FROM COMM_CODE
|
|
INNER JOIN (
|
|
SELECT OBJID
|
|
, CODE_ID
|
|
FROM COMM_CODE
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
AND PARENT_CODE_ID = '0005116'
|
|
<if test="search_productGroupObjId != null and !''.equals(search_productGroupObjId) and search_productGroupObjId != 'undefined'">
|
|
AND OBJID = ${search_productGroupObjId}
|
|
</if>
|
|
<if test="search_productGroupName != null and !''.equals(search_productGroupName) and search_productGroupName != 'undefined'">
|
|
AND CODE_NAME = #{search_productGroupName}
|
|
</if>
|
|
) COMM_GROUP ON PARENT_CODE_ID = COMM_GROUP.CODE_ID
|
|
ORDER BY PRODUCT_NAME
|
|
</select>
|
|
|
|
<!-- //지역사양 조회(콤보박스용) -->
|
|
<select id="getRegionList" parameterType="map" resultType="map">
|
|
SELECT OBJID
|
|
, REGION_NAME
|
|
, DESCRIPTION
|
|
FROM REGION_MNG
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
ORDER BY REGION_NAME
|
|
</select>
|
|
|
|
|
|
<!-- //사원 목록 조회 -->
|
|
<select id="getUserList" parameterType="map" resultType="map">
|
|
SELECT
|
|
SABUN
|
|
, USER_ID
|
|
, USER_ID AS CODE
|
|
, USER_NAME
|
|
, USER_NAME AS NAME
|
|
, USER_NAME_ENG
|
|
, USER_NAME_CN
|
|
, DEPT_CODE
|
|
, DEPT_NAME
|
|
, POSITION_CODE
|
|
, POSITION_NAME
|
|
, RANK
|
|
, EMAIL
|
|
, TEL
|
|
, CELL_PHONE
|
|
, USER_TYPE
|
|
, USER_TYPE_NAME
|
|
, DATA_TYPE
|
|
, FAX_NO
|
|
FROM USER_INFO
|
|
WHERE 1=1
|
|
|
|
AND STATUS = 'active'
|
|
|
|
<choose>
|
|
<when test='search_user_type == null or "".equals(search_user_type) '>
|
|
AND NVL(partner_objid, '') = ''
|
|
</when>
|
|
<when test='search_user_type != null and "A".equals(search_user_type) '>
|
|
</when>
|
|
<when test='search_user_type != null and "U".equals(search_user_type) '>
|
|
AND NVL(partner_objid, '') = ''
|
|
</when>
|
|
<when test='search_user_type != null and "P".equals(search_user_type) '>
|
|
AND NVL(partner_objid, '') != ''
|
|
</when>
|
|
<otherwise>
|
|
</otherwise>
|
|
</choose>
|
|
|
|
<if test="search_userId != null and !''.equals(search_userId)">
|
|
AND UPPER(USER_ID) LIKE UPPER('%${search_userId}%')
|
|
</if>
|
|
<if test="search_userName != null and !''.equals(search_userName)">
|
|
AND UPPER(USER_NAME) LIKE UPPER('%${search_userName}%')
|
|
</if>
|
|
<if test="search_userNameEng != null and !''.equals(search_userNameEng)">
|
|
AND UPPER(USER_NAME_ENG) LIKE UPPER('%${search_userNameEng}%')
|
|
</if>
|
|
<if test="search_userNameCn != null and !''.equals(search_userNameCn)">
|
|
AND UPPER(USER_NAME_CN) LIKE UPPER('%${search_userNameCn}%')
|
|
</if>
|
|
<if test="search_deptCode != null and !''.equals(search_deptCode)">
|
|
AND UPPER(DEPT_CODE) LIKE UPPER('%${search_deptCode}%')
|
|
</if>
|
|
<if test="search_deptName != null and !''.equals(search_deptName)">
|
|
AND UPPER(DEPT_NAME) LIKE UPPER('%${search_deptName}%')
|
|
</if>
|
|
<if test="search_positionCode != null and !''.equals(search_positionCode)">
|
|
AND UPPER(POSITION_CODE) LIKE UPPER('%${search_positionCode}%')
|
|
</if>
|
|
<if test="search_positionName != null and !''.equals(search_positionName)">
|
|
AND UPPER(POSITION_NAME) LIKE UPPER('%${search_positionName}%')
|
|
</if>
|
|
<if test="search_email != null and !''.equals(search_email)">
|
|
AND UPPER(EMAIL) LIKE UPPER('%${search_email}%')
|
|
</if>
|
|
<if test="search_tel != null and !''.equals(search_tel)">
|
|
AND UPPER(TEL) LIKE UPPER('%${search_tel}%')
|
|
</if>
|
|
<if test="search_cellPhone != null and !''.equals(search_cellPhone)">
|
|
AND UPPER(CELL_PHONE) LIKE UPPER('%${search_cellPhone}%')
|
|
</if>
|
|
<if test="search_userTypeName != null and !''.equals(search_userTypeName)">
|
|
AND UPPER(USER_TYPE_NAME) LIKE UPPER('%${search_userTypeName}%')
|
|
</if>
|
|
<if test="search_dataType != null and !''.equals(search_dataType)">
|
|
AND UPPER(DATA_TYPE) LIKE UPPER('%${search_dataType}%')
|
|
</if>
|
|
ORDER BY DEPT_NAME ASC, USER_TYPE_NAME ASC, USER_NAME ASC, DEPT_CODE ASC
|
|
</select>
|
|
|
|
<!-- //재질 조회(콤보박스용) -->
|
|
<select id="getMaterialList" parameterType="map" resultType="map">
|
|
SELECT OBJID,
|
|
MATERIAL_NAME,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS
|
|
FROM MATERIAL_MNG
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
ORDER BY MATERIAL_NAME
|
|
</select>
|
|
|
|
<!-- //생산공장 조회(콤보박스용) -->
|
|
<select id="getFactoryList" parameterType="map" resultType="map">
|
|
select
|
|
(ROW_NUMBER() OVER()) RNUM,
|
|
OBJID,
|
|
CODE_NAME FACTORY_NAME,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS
|
|
from
|
|
comm_code
|
|
where
|
|
1 = 1
|
|
and UPPER(STATUS) = 'ACTIVE'
|
|
and parent_code_id = 'SPE90000'
|
|
order by
|
|
RNUM
|
|
</select>
|
|
|
|
<!-- //라인설치장소 조회(콤보박스용) -->
|
|
<select id="getLineAreaList" parameterType="map" resultType="map">
|
|
SELECT (ROW_NUMBER() OVER()) RNUM,
|
|
OBJID,
|
|
CODE_NAME AREA_NAME,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS
|
|
FROM comm_code
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
and parent_code_id='0005150'
|
|
ORDER BY RNUM
|
|
</select>
|
|
|
|
<!-- //GRADE 조회(콤보박스용) -->
|
|
<select id="getCarGrade" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID::varchar
|
|
,'' AS DESCRIPTION
|
|
,CODE_ID AS GRADE_CODE
|
|
,CODE_NAME AS GRADE_NAME
|
|
,REGDATE
|
|
,STATUS
|
|
,WRITER
|
|
FROM COMM_CODE
|
|
WHERE UPPER(STATUS) = 'ACTIVE'
|
|
AND PARENT_CODE_ID='0005132'
|
|
ORDER BY GRADE_NAME
|
|
</select>
|
|
|
|
<!-- //자재유형 조회(콤보박스용) -->
|
|
<select id="getMaterialTypeList" parameterType="map" resultType="map">
|
|
SELECT OBJID,
|
|
MATERIAL_TYPE_NAME,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS
|
|
FROM MATERIAL_TYPE_MNG
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
ORDER BY MATERIAL_TYPE_NAME
|
|
</select>
|
|
|
|
<!-- //사양(option) 조회(콤보박스용) -->
|
|
<select id="getOptionSpecList" parameterType="map" resultType="map">
|
|
SELECT OBJID,
|
|
OPTION_NAME,
|
|
DESCRIPTION,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS
|
|
FROM OPTION_SPEC_MNG
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
ORDER BY OPTION_NAME
|
|
</select>
|
|
|
|
<!--MS SPEC 조회(콤보박스용) -->
|
|
<select id="getSPECList" parameterType="map" resultType="map">
|
|
SELECT OBJID,
|
|
CATEGORY_OBJID,
|
|
(SELECT CATEGORY_NAME FROM STANDARD_DOC_CATEGORY WHERE OBJID = CATEGORY_OBJID) AS CATEGORY_NAME,
|
|
DOC_NO,
|
|
DOC_NAME,
|
|
PRODUCT_GROUP_OBJID,
|
|
PRODUCT_OBJID,
|
|
CAR_OBJID,
|
|
COMPATITION_CAR_NAME,
|
|
STANDARD_NAME,
|
|
DESCRIPTION,
|
|
CHANGE_HISTORY,
|
|
STEP,
|
|
REV,
|
|
ESTABLISH_DATE,
|
|
REVISION_DATE,
|
|
IS_LAST,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS,
|
|
GRADE_OBJID,
|
|
COMPANY_OBJID,
|
|
SPEC_NO,
|
|
COMPETE_COMPANY_OBJID,
|
|
OEM_OBJID
|
|
FROM STANDARD_DOC_INFO
|
|
WHERE CATEGORY_OBJID IN(
|
|
SELECT OBJID
|
|
FROM STANDARD_DOC_CATEGORY T
|
|
WHERE PARENT_OBJID = (SELECT OBJID FROM STANDARD_DOC_CATEGORY WHERE UPPER(CATEGORY_NAME) = 'SPEC')
|
|
<if test="search_categoryName != null and !''.equals(search_categoryName)">
|
|
AND UPPER(CATEGORY_NAME) LIKE UPPER('%${search_categoryName}%')
|
|
</if>
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
)
|
|
AND IS_LAST = '1'
|
|
ORDER BY REGDATE DESC
|
|
</select>
|
|
|
|
<!-- 설계적용시점 조회(콤보박스용) -->
|
|
<select id="getApplyPointList" parameterType="map" resultType="map">
|
|
SELECT OBJID,
|
|
APPLY_POINT_NAME,
|
|
DESCRIPTION,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS
|
|
FROM APPLY_POINT_MNG
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
ORDER BY APPLY_POINT_NAME
|
|
</select>
|
|
|
|
<!-- //file download log -->
|
|
<insert id="insertFileDownloadLog" parameterType="map">
|
|
INSERT INTO FILE_DOWN_LOG(
|
|
OBJID
|
|
, LOG_TIME
|
|
, SYSTEM_NAME
|
|
, USER_ID
|
|
, FILE_OBJID
|
|
, REMOTE_ADDR
|
|
) VALUES (
|
|
#{objId}::integer
|
|
, now()
|
|
, #{systemName}
|
|
, #{userId}
|
|
, #{fileObjId}::integer
|
|
, #{remoteAddr}
|
|
)
|
|
</insert>
|
|
<!-- //메뉴 path -->
|
|
<select id="getMenuPath" resultType="map" parameterType="map">
|
|
SELECT OBJID, REPLACE(SYS_CONNECT_BY_PATH(MENU_NAME_KOR, ' > '), '> 사용자 > ', '') AS PATH
|
|
FROM MENU_INFO
|
|
WHERE 1=1
|
|
AND OBJID = #{menuObjId}
|
|
START WITH PARENT_OBJ_ID = 0
|
|
CONNECT BY PRIOR OBJID = PARENT_OBJ_ID
|
|
ORDER SIBLINGS BY SEQ
|
|
</select>
|
|
<!-- //변환된 CadFile에 대한 정보를 입력 혹은 수정한다. -->
|
|
<update id="mergeTranslateCadFileInfo" parameterType="map">
|
|
MERGE INTO ATTACH_FILE_INFO
|
|
USING DUAL
|
|
ON (TARGET_OBJID = #{targetObjId} AND DOC_TYPE = #{docType})
|
|
WHEN MATCHED THEN
|
|
UPDATE SET REGDATE = SYSDATE, WRITER = #{writer}
|
|
WHEN NOT MATCHED THEN
|
|
INSERT (OBJID, TARGET_OBJID, SAVED_FILE_NAME, REAL_FILE_NAME, DOC_TYPE, DOC_TYPE_NAME, FILE_EXT, FILE_PATH, WRITER, REGDATE, STATUS) VALUES (
|
|
#{objId}
|
|
, #{targetObjId}
|
|
, #{savedFileName}
|
|
, #{realFileName}
|
|
, #{docType}
|
|
, #{docTypeName}
|
|
, #{fileExt}
|
|
, #{filePath}
|
|
, #{writer}
|
|
, SYSDATE
|
|
, 'Active'
|
|
)
|
|
</update>
|
|
<!-- //milestone 목록 조회 -->
|
|
<select id="getMilestoneList" parameterType="map" resultType="map">
|
|
SELECT OBJID
|
|
, SEQ
|
|
, OEM_OBJID
|
|
, MILESTONE_NAME
|
|
, STATUS
|
|
FROM OEM_MILESTONE_MNG
|
|
WHERE 1=1
|
|
<if test="search_oemObjId != null and !''.equals(search_oemObjId)">
|
|
AND OEM_OBJID = ${search_oemObjId}
|
|
</if>
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
ORDER BY SEQ
|
|
</select>
|
|
<select id="getTestTypeList" parameterType="map" resultType="map">
|
|
SELECT OBJID
|
|
, TEST_TYPE_NAME
|
|
FROM TEST_TYPE_MNG
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
ORDER BY REGDATE ASC
|
|
</select>
|
|
|
|
<!-- //Part 목록 조회 -->
|
|
<select id="getPartList" parameterType="map" resultType="map">
|
|
SELECT A.OBJID
|
|
, A.PART_NO
|
|
, A.PART_NAME
|
|
FROM PART_INFO A
|
|
WHERE 1=1
|
|
AND UPPER(A.STATUS) = 'COMPLETE'
|
|
AND A.IS_LAST = 1
|
|
<if test="search_partNo != null and !''.equals(search_partNo)">
|
|
AND UPPER(A.PART_NO) LIKE UPPER('%${search_partNo}%')
|
|
</if>
|
|
<if test="search_partName != null and !''.equals(search_partName)">
|
|
AND UPPER(A.PART_NAME) LIKE UPPER('%${search_partName}%')
|
|
</if>
|
|
</select>
|
|
|
|
<!-- //사업장 목록 조회 -->
|
|
<select id="getLocationList" parameterType="map" resultType="map">
|
|
SELECT DISTINCT USER_TYPE_NAME
|
|
FROM USER_INFO
|
|
WHERE 1=1
|
|
AND USER_TYPE_NAME IS NOT NULL
|
|
ORDER BY USER_TYPE_NAME
|
|
</select>
|
|
|
|
<!-- //설계체크리스트 대분류 조회(콤보박스용) -->
|
|
<select id="getDesignCheckListGroupList" parameterType="map" resultType="map">
|
|
SELECT OBJID
|
|
, TARGET_OBJID
|
|
, (SELECT PRODUCT_NAME FROM PRODUCT_MNG WHERE OBJID = TARGET_OBJID) AS PROD_NAME
|
|
, GROUP_NAME
|
|
, SEQ
|
|
FROM DESIGN_CHECK_LIST_GROUP
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
<if test="search_productObjId != null and !''.equals(search_productObjId)">
|
|
AND TARGET_OBJID = ${search_productObjId}
|
|
</if>
|
|
<if test="search_categoryObjId != null and !''.equals(search_categoryObjId)">
|
|
AND OBJID = (SELECT GROUP_OBJID FROM DESIGN_CHECK_LIST_CATEGORY WHERE OBJID = #{search_categoryObjId})
|
|
</if>
|
|
<if test="search_productName != null and !''.equals(search_productName)">
|
|
AND TARGET_OBJID = (SELECT OBJID FROM PRODUCT_MNG WHERE PRODUCT_NAME = #{search_productName})
|
|
</if>
|
|
ORDER BY SEQ ASC
|
|
</select>
|
|
|
|
<!-- //설계체크리스트 중분류 조회(콤보박스용) -->
|
|
<select id="getDesignCheckListCategoryList" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID,
|
|
PRODUCT_OBJID,
|
|
(SELECT PRODUCT_NAME FROM PRODUCT_MNG WHERE OBJID = PRODUCT_OBJID) AS PROD_NAME,
|
|
GROUP_OBJID,
|
|
CATEGORY_NAME,
|
|
SEQ,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS
|
|
FROM DESIGN_CHECK_LIST_CATEGORY
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
<if test="search_productObjId != null and !''.equals(search_productObjId)">
|
|
AND PRODUCT_OBJID = ${search_productObjId}
|
|
</if>
|
|
<if test="search_productName != null and !''.equals(search_productName)">
|
|
AND PRODUCT_OBJID = (SELECT OBJID FROM PRODUCT_MNG WHERE PRODUCT_NAME = #{search_productName})
|
|
</if>
|
|
<if test="search_groupObjId != null and !''.equals(search_groupObjId)">
|
|
AND GROUP_OBJID = #{search_groupObjId}
|
|
</if>
|
|
ORDER BY SEQ ASC
|
|
</select>
|
|
|
|
<!-- //설계체크리스트 소분류 조회(콤보박스용) -->
|
|
<select id="getDesignCheckListAttributeList" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID,
|
|
PRODUCT_OBJID,
|
|
(SELECT PRODUCT_NAME FROM PRODUCT_MNG WHERE OBJID = PRODUCT_OBJID) AS PROD_NAME,
|
|
CATEGORY_OBJID,
|
|
ATTRIBUTE_NAME,
|
|
REPLACE(CHECK_OPTION,chr(13)||chr(10), '\n') AS CHECK_OPTION,
|
|
REPLACE(CHECK_BASE,chr(13)||chr(10), '\n') AS CHECK_BASE,
|
|
SEQ,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS
|
|
FROM DESIGN_CHECK_LIST_ATTRIBUTE
|
|
WHERE 1=1
|
|
<if test="search_productObjId != null and !''.equals(search_productObjId)">
|
|
AND PRODUCT_OBJID = ${search_productObjId}
|
|
</if>
|
|
<if test="search_productName != null and !''.equals(search_productName)">
|
|
AND PRODUCT_OBJID = (SELECT OBJID FROM PRODUCT_MNG WHERE PRODUCT_NAME = #{search_productName})
|
|
</if>
|
|
<if test="search_categoryObjId != null and !''.equals(search_categoryObjId)">
|
|
AND CATEGORY_OBJID = #{search_categoryObjId}
|
|
</if>
|
|
ORDER BY SEQ ASC
|
|
</select>
|
|
|
|
<!-- //SOP일자가 가장 먼 고객사의 코드와 차종의 코드를 조회한다. -->
|
|
<select id="getCarInfoFarthestSOP" parameterType="map" resultType="map">
|
|
SELECT OBJID AS CAR_OBJID
|
|
, OEM_OBJID AS OEM_OBJID
|
|
FROM CAR_MNG
|
|
WHERE 1=1
|
|
AND OBJID = (
|
|
SELECT CAR_OBJID
|
|
FROM (
|
|
SELECT *
|
|
FROM CAR_MILESTONE_MNG
|
|
WHERE MILESTONE_OBJID = (SELECT OBJID FROM OEM_MILESTONE_MNG WHERE UPPER(MILESTONE_NAME) = 'SOP' AND ROWNUM = 1)
|
|
ORDER BY MILESTONE_DATE DESC NULLS LAST
|
|
)
|
|
WHERE ROWNUM = 1
|
|
)
|
|
</select>
|
|
|
|
<!-- //이름 순으로 가장 앞에 해당하는 제품군의 정보를 가져온다. -->
|
|
<select id="getProductGroupInfoOrderByName" parameterType="map" resultType="map">
|
|
SELECT OBJID FROM(
|
|
SELECT
|
|
OBJID,
|
|
PRODUCT_GROUP_NAME,
|
|
DESCRIPTION,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS
|
|
FROM PRODUCT_GROUP_MNG
|
|
WHERE UPPER(STATUS) = 'ACTIVE'
|
|
AND PRODUCT_GROUP_NAME NOT IN ('-')
|
|
ORDER BY PRODUCT_GROUP_NAME ASC
|
|
)WHERE ROWNUM = 1
|
|
</select>
|
|
|
|
<!-- //차종 object id를 통해 sop날짜를 구한다. -->
|
|
<select id="getSOPDate_byCarObjId" parameterType="map" resultType="map">
|
|
SELECT TO_CHAR(MILESTONE_DATE, 'YYYY-MM-DD') AS SOP
|
|
FROM CAR_MILESTONE_MNG A,
|
|
(
|
|
SELECT OBJID
|
|
FROM OEM_MILESTONE_MNG
|
|
WHERE UPPER(MILESTONE_NAME) = 'SOP'
|
|
) B
|
|
WHERE 1=1
|
|
AND A.CAR_OBJID = #{carObjId}
|
|
AND A.MILESTONE_OBJID = B.OBJID
|
|
</select>
|
|
|
|
<!-- 부서 정보를 조회한다. -->
|
|
<select id="searchDeptList" parameterType="map" resultType="map">
|
|
SELECT
|
|
DEPT_CODE
|
|
, DEPT_CODE AS CODE
|
|
, PARENT_DEPT_CODE
|
|
, DEPT_NAME
|
|
, DEPT_NAME AS NAME
|
|
, MASTER_SABUN
|
|
, MASTER_USER_ID
|
|
, LOCATION
|
|
, LOCATION_NAME
|
|
, TO_CHAR(REGDATE, 'YYYY-MM-DD') AS REGDATE
|
|
, REGDATE AS REGDATE_ORG
|
|
FROM DEPT_INFO
|
|
WHERE 1=1
|
|
<if test="search_locationName != null and !''.equals(search_locationName)">
|
|
AND UPPER(LOCATION_NAME) LIKE UPPER('%${search_locationName}%')
|
|
</if>
|
|
<if test="search_deptName != null and !''.equals(search_deptName)">
|
|
AND UPPER(DEPT_NAME) LIKE UPPER('%${search_deptName}%')
|
|
</if>
|
|
ORDER BY LOCATION_NAME ASC, DEPT_NAME ASC
|
|
</select>
|
|
<!-- //OEM정보 조회(콤보박스용) -->
|
|
<select id="getOEMList_combo" parameterType="map" resultType="map">
|
|
SELECT OBJID
|
|
, OEM_CODE
|
|
, OEM_NAME
|
|
FROM OEM_MNG
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
<if test="search_oemCode != null and !''.equals(search_oemCode)">
|
|
AND OEM_CODE = #{search_oemCode}
|
|
</if>
|
|
<if test="search_oemName != null and !''.equals(search_oemName)">
|
|
AND OEM_NAME = #{search_oemName}
|
|
</if>
|
|
ORDER BY OEM_NAME DESC
|
|
</select>
|
|
|
|
<!-- //차종정보 조회(콤보박스용) -->
|
|
<select id="getCarTypeList_combo" parameterType="map" resultType="map">
|
|
SELECT OBJID
|
|
, (SELECT OEM_CODE FROM OEM_MNG WHERE OBJID = CAR_MNG.OEM_OBJID) AS OEM_CODE
|
|
, (SELECT GRADE_NAME FROM CAR_GRADE_MNG WHERE OBJID = CAR_MNG.GRADE_OBJID) AS GRADE_NAME
|
|
, CAR_CODE
|
|
, MODEL_CODE
|
|
, CAR_NAME
|
|
, DESCRIPTION
|
|
, OEM_OBJID
|
|
FROM CAR_MNG
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
<if test="search_oemCode != null and !''.equals(search_oemCode)">
|
|
AND OEM_OBJID = (SELECT OBJID FROM OEM_MNG WHERE OEM_CODE = #{search_oemCode} AND UPPER(STATUS) = 'ACTIVE')
|
|
</if>
|
|
<if test="search_oemName != null and !''.equals(search_oemName)">
|
|
AND OEM_OBJID = (SELECT OBJID FROM OEM_MNG WHERE OEM_NAME = #{search_oemName} AND UPPER(STATUS) = 'ACTIVE')
|
|
</if>
|
|
<if test="search_oemObjId != null and !''.equals(search_oemObjId)">
|
|
AND OEM_OBJID = ${search_oemObjId}
|
|
</if>
|
|
<if test="search_carCode != null and !''.equals(search_carCode)">
|
|
AND CAR_CODE = #{search_carCode}
|
|
</if>
|
|
<if test="search_carName != null and !''.equals(search_carName)">
|
|
AND CAR_NAME = #{search_carName}
|
|
</if>
|
|
ORDER BY CAR_NAME, CAR_CODE
|
|
</select>
|
|
|
|
<!-- //제품군 조회(콤보박스용) -->
|
|
<!-- <select id="getProductGroupList_combo" parameterType="map" resultType="map">
|
|
SELECT OBJID
|
|
, CODE_NAME PRODUCT_GROUP_NAME
|
|
, '' DESCRIPTION
|
|
FROM PRODUCT_GROUP_MNG
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
AND PARENT_CODE_ID = '0005116'
|
|
ORDER BY PRODUCT_GROUP_NAME
|
|
|
|
SELECT OBJID
|
|
, CODE_NAME PRODUCT_GROUP_NAME
|
|
, '' DESCRIPTION
|
|
FROM PRODUCT_GROUP_MNG
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
AND PARENT_CODE_ID = '0005116'
|
|
ORDER BY PRODUCT_GROUP_NAME
|
|
|
|
</select> -->
|
|
|
|
<select id="getProductGroupList_combo" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID
|
|
,CODE_ID
|
|
,PARENT_CODE_ID
|
|
,CODE_NAME AS PRODUCT_GROUP_NAME
|
|
,'' AS DESCRIPTION
|
|
,ID
|
|
,CODE_CD
|
|
,EXT_VAL
|
|
,WRITER
|
|
,(
|
|
SELECT
|
|
CASE
|
|
WHEN USER_NAME = NULL THEN '정보없음'
|
|
ELSE USER_NAME
|
|
END
|
|
FROM
|
|
USER_INFO
|
|
WHERE USER_ID = T.WRITER
|
|
) USER_NAME
|
|
,TO_CHAR(REGDATE,'YYYY-MM-DD') REGDATE
|
|
,REGDATE
|
|
,CASE STATUS
|
|
WHEN 'active' THEN '활성화'
|
|
ELSE '비활성화'
|
|
END AS STATUS
|
|
FROM COMM_CODE T
|
|
WHERE 1=1
|
|
AND PARENT_CODE_ID = #{PRODUCT_GROUP_CODE}
|
|
</select>
|
|
|
|
<!-- //제품 조회(콤보박스용) -->
|
|
<select id="getProductList_combo" parameterType="map" resultType="map">
|
|
SELECT OBJID
|
|
, PRODUCT_GROUP_OBJID
|
|
, PRODUCT_CODE
|
|
, PRODUCT_NAME
|
|
, PRODUCT_DESC
|
|
FROM PRODUCT_MNG
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
<if test="search_productGroupObjId != null and !''.equals(search_productGroupObjId)">
|
|
AND PRODUCT_GROUP_OBJID = ${search_productGroupObjId}
|
|
</if>
|
|
<if test="search_productGroupName != null and !''.equals(search_productGroupName)">
|
|
AND PRODUCT_GROUP_OBJID = (SELECT OBJID FROM PRODUCT_GROUP_MNG WHERE PRODUCT_GROUP_NAME = #{search_productGroupName})
|
|
</if>
|
|
ORDER BY PRODUCT_NAME
|
|
</select>
|
|
|
|
<!-- //재질 조회(콤보박스용) -->
|
|
<select id="getMaterialList_combo" parameterType="map" resultType="map">
|
|
SELECT OBJID,
|
|
MATERIAL_NAME,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS
|
|
FROM MATERIAL_MNG
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
ORDER BY MATERIAL_NAME
|
|
</select>
|
|
|
|
<!-- //자재유형 조회(콤보박스용) -->
|
|
<select id="getMaterialTypeList_combo" parameterType="map" resultType="map">
|
|
SELECT OBJID,
|
|
MATERIAL_TYPE_NAME,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS
|
|
FROM MATERIAL_TYPE_MNG
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
ORDER BY MATERIAL_TYPE_NAME
|
|
</select>
|
|
|
|
<!-- //사양(option) 조회(콤보박스용) -->
|
|
<select id="getOptionSpecList_combo" parameterType="map" resultType="map">
|
|
SELECT OBJID,
|
|
OPTION_NAME,
|
|
DESCRIPTION,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS
|
|
FROM OPTION_SPEC_MNG
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
ORDER BY OPTION_NAME
|
|
</select>
|
|
|
|
<!-- 설계적용시점 조회(콤보박스용) -->
|
|
<select id="getApplyPointList_combo" parameterType="map" resultType="map">
|
|
SELECT OBJID,
|
|
APPLY_POINT_NAME,
|
|
DESCRIPTION,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS
|
|
FROM APPLY_POINT_MNG
|
|
WHERE 1=1
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
ORDER BY APPLY_POINT_NAME
|
|
</select>
|
|
|
|
<!--MS SPEC 조회(콤보박스용) -->
|
|
<select id="getSPECList_combo" parameterType="map" resultType="map">
|
|
SELECT OBJID,
|
|
CATEGORY_OBJID,
|
|
(SELECT CATEGORY_NAME FROM STANDARD_DOC_CATEGORY WHERE OBJID = CATEGORY_OBJID) AS CATEGORY_NAME,
|
|
DOC_NO,
|
|
DOC_NAME,
|
|
PRODUCT_GROUP_OBJID,
|
|
PRODUCT_OBJID,
|
|
CAR_OBJID,
|
|
COMPATITION_CAR_NAME,
|
|
STANDARD_NAME,
|
|
DESCRIPTION,
|
|
CHANGE_HISTORY,
|
|
STEP,
|
|
REV,
|
|
ESTABLISH_DATE,
|
|
REVISION_DATE,
|
|
IS_LAST,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS,
|
|
GRADE_OBJID,
|
|
COMPANY_OBJID,
|
|
SPEC_NO,
|
|
COMPETE_COMPANY_OBJID,
|
|
OEM_OBJID
|
|
FROM STANDARD_DOC_INFO
|
|
WHERE CATEGORY_OBJID IN(
|
|
SELECT OBJID
|
|
FROM STANDARD_DOC_CATEGORY T
|
|
WHERE PARENT_OBJID = (SELECT OBJID FROM STANDARD_DOC_CATEGORY WHERE UPPER(CATEGORY_NAME) = 'SPEC')
|
|
<if test="search_categoryName != null and !''.equals(search_categoryName)">
|
|
AND UPPER(CATEGORY_NAME) LIKE UPPER('%${search_categoryName}%')
|
|
</if>
|
|
AND UPPER(STATUS) = 'ACTIVE'
|
|
)
|
|
AND IS_LAST = '1'
|
|
ORDER BY REGDATE DESC
|
|
</select>
|
|
|
|
<!-- //지역사양 조회(콤보박스용) -->
|
|
<select id="getRegionList_combo" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID
|
|
,CODE_ID
|
|
,PARENT_CODE_ID
|
|
,CODE_NAME AS REGION_NAME
|
|
,'' AS DESCRIPTION
|
|
,ID
|
|
,CODE_CD
|
|
,EXT_VAL
|
|
,WRITER
|
|
,(
|
|
SELECT
|
|
CASE
|
|
WHEN USER_NAME = NULL THEN '정보없음'
|
|
ELSE USER_NAME
|
|
END
|
|
FROM
|
|
USER_INFO
|
|
WHERE USER_ID = T.WRITER
|
|
) USER_NAME
|
|
,TO_CHAR(REGDATE,'YYYY-MM-DD') REGDATE
|
|
,REGDATE
|
|
,CASE STATUS
|
|
WHEN 'active' THEN '활성화'
|
|
ELSE '비활성화'
|
|
END AS STATUS
|
|
FROM COMM_CODE T
|
|
WHERE 1=1
|
|
AND PARENT_CODE_ID = #{REGION_CODE}
|
|
</select>
|
|
|
|
|
|
<!-- 코드 조회-->
|
|
<select id="getCodeselect" parameterType="map" resultType="map">
|
|
SELECT
|
|
CODE_ID AS CODE,
|
|
CODE_NAME AS NAME,
|
|
CODE_CD,
|
|
STATUS,
|
|
ID,
|
|
EXT_VAL,
|
|
'COL_'||CODE_ID AS COL_NAME
|
|
FROM
|
|
COMM_CODE T
|
|
WHERE 1 = 1
|
|
AND UPPER(T.STATUS)= 'ACTIVE'
|
|
<choose>
|
|
<when test="code != null and !''.equals(code)">
|
|
AND PARENT_CODE_ID = #{code}
|
|
</when>
|
|
<otherwise>
|
|
AND PARENT_CODE_ID IS NULL
|
|
</otherwise>
|
|
</choose>
|
|
</select>
|
|
|
|
<!-- 코드 조회-->
|
|
<select id="getAdminCodeselect" parameterType="map" resultType="map">
|
|
WITH RECURSIVE V_CODE(
|
|
OBJID,
|
|
CODE_ID,
|
|
PARENT_CODE_ID,
|
|
CODE_NAME,
|
|
ID,
|
|
CODE_CD,
|
|
EXT_VAL,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS,
|
|
LEV,
|
|
PATH
|
|
) AS (
|
|
SELECT
|
|
CODE.*,
|
|
1,
|
|
ARRAY [CODE.CODE_ID]
|
|
FROM
|
|
COMM_CODE CODE
|
|
WHERE 1=1
|
|
<choose>
|
|
<when test="code != null and !''.equals(code)">
|
|
AND CODE.PARENT_CODE_ID = #{code}
|
|
</when>
|
|
<otherwise>
|
|
AND (CODE.PARENT_CODE_ID IS NULL OR CODE.PARENT_CODE_ID = '')
|
|
</otherwise>
|
|
</choose>
|
|
|
|
UNION ALL
|
|
|
|
SELECT
|
|
ORG_CODE.*,
|
|
LEV + 1,
|
|
PATH
|
|
FROM
|
|
COMM_CODE ORG_CODE
|
|
JOIN
|
|
V_CODE
|
|
ON
|
|
ORG_CODE.PARENT_CODE_ID = V_CODE.CODE_ID
|
|
WHERE 1=1
|
|
)
|
|
SELECT
|
|
OBJID,
|
|
CODE_ID AS CODE,
|
|
PARENT_CODE_ID,
|
|
CODE_NAME AS NAME,
|
|
ID,
|
|
CODE_CD,
|
|
EXT_VAL,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS,
|
|
LEV,
|
|
PATH
|
|
FROM
|
|
V_CODE V
|
|
WHERE 1=1
|
|
AND LEV='1'
|
|
ORDER BY
|
|
PATH,
|
|
LEV,
|
|
CODE_ID,
|
|
STATUS
|
|
</select>
|
|
|
|
<!-- <select id="getAdminCodeselect" parameterType="map" resultType="map">
|
|
SELECT
|
|
LEV
|
|
,CODE
|
|
,NAME
|
|
,CODE_CD
|
|
,STATUS
|
|
,ID
|
|
,EXT_VAL
|
|
FROM(
|
|
SELECT LEVEL AS LEV,
|
|
CODE_ID AS CODE,
|
|
CODE_NAME AS NAME,
|
|
CODE_CD,
|
|
STATUS,
|
|
ID,
|
|
EXT_VAL
|
|
FROM COMM_CODE A
|
|
<choose>
|
|
<when test="code != null and !''.equals(code)">
|
|
START WITH PARENT_CODE_ID = #{code}
|
|
</when>
|
|
<otherwise>
|
|
START WITH PARENT_CODE_ID IS NULL
|
|
</otherwise>
|
|
</choose>
|
|
CONNECT BY PRIOR CODE_ID = PARENT_CODE_ID
|
|
ORDER SIBLINGS BY CODE_ID
|
|
) T
|
|
WHERE T.LEV='1'
|
|
</select> -->
|
|
|
|
|
|
<select id="getDeptselect" parameterType="map" resultType="map">
|
|
SELECT DEPT_CODE AS CODE,
|
|
DEPT_NAME AS NAME,
|
|
DEPT_CODE AS CODE_CD,
|
|
'' AS STATUS,
|
|
'' AS ID,
|
|
'' AS EXT_VAL
|
|
FROM DEPT_INFO T
|
|
WHERE 1 = 1
|
|
</select>
|
|
|
|
<select id="getProjectNoselect" parameterType="map" resultType="map">
|
|
SELECT
|
|
T.ORDER_MGMT_OBJID::varchar AS CODE
|
|
,T1.PROJECT_NO AS NAME
|
|
,T1.PROJECT_NO AS CODE_CD
|
|
,'' AS STATUS
|
|
,'' AS ID
|
|
,'' AS EXT_VAL
|
|
FROM PROJECT_MGMT T,ORDER_MGMT T1
|
|
WHERE T.ORDER_MGMT_OBJID = T1.ORDER_MGMT_OBJID
|
|
<if test="code != null and !''.equals(code)">
|
|
AND T.ORDER_MGMT_OBJID != #{code}
|
|
</if>
|
|
ORDER BY PROJECT_NO DESC
|
|
</select>
|
|
|
|
<select id="getProjectNoselect2" parameterType="map" resultType="map">
|
|
select
|
|
T.OBJID as CODE_ID,
|
|
T.PROJECT_NO as CODE_NAME
|
|
from
|
|
PROJECT_MGMT T
|
|
where
|
|
T.RESULT_CD = '0001111'
|
|
order by
|
|
T.PROJECT_NO desc,
|
|
CODE_NAME
|
|
<!-- select
|
|
T.ORDER_MGMT_OBJID as CODE_ID,
|
|
T1.PROJECT_NO as CODE_NAME
|
|
from
|
|
PROJECT_MGMT T,
|
|
ORDER_MGMT T1
|
|
where
|
|
T.ORDER_MGMT_OBJID = T1.ORDER_MGMT_OBJID
|
|
and T1.RESULT_CD = 'RES00300'
|
|
order by
|
|
T1.PROJECT_NO desc,
|
|
CODE_NAME -->
|
|
</select>
|
|
|
|
<!-- <select id="getProjectNoselect2" parameterType="map" resultType="map">
|
|
SELECT
|
|
TO_CHAR(T.ORDER_MGMT_OBJID) AS CODE_ID
|
|
,TO_CHAR(T1.PROJECT_NO) AS CODE_NAME
|
|
FROM PROJECT_MGMT T,ORDER_MGMT T1
|
|
WHERE T.ORDER_MGMT_OBJID = T1.ORDER_MGMT_OBJID
|
|
AND T1.RESULT_CD = 'RES00300'
|
|
ORDER BY T1.PROJECT_NO DESC, CODE_NAME
|
|
</select> -->
|
|
|
|
<select id="getsupplyselect" parameterType="map" resultType="map">
|
|
SELECT * FROM (
|
|
<!-- 기존 SUPPLY_MNG 데이터 -->
|
|
SELECT
|
|
OBJID::VARCHAR AS CODE
|
|
,SUPPLY_NAME AS NAME
|
|
,SUPPLY_CODE AS CODE_ID
|
|
,SUPPLY_NAME AS CODE_NAME
|
|
,SUPPLY_CODE AS CODE_CD
|
|
,REG_NO
|
|
,CHARGE_USER_NAME
|
|
,SUPPLY_TEL_NO
|
|
,SUPPLY_FAX_NO
|
|
,PAYMENT_METHOD
|
|
,STATUS AS STATUS
|
|
,'' AS ID
|
|
,'' AS EXT_VAL
|
|
,'SUPPLY' AS DATA_SOURCE
|
|
FROM SUPPLY_MNG
|
|
WHERE 1=1
|
|
AND SUPPLY_CODE != '0000269'
|
|
<if test="SUPPLY_OBJID != null and !''.equals(SUPPLY_OBJID)">
|
|
AND OBJID::VARCHAR = #{SUPPLY_OBJID}::VARCHAR
|
|
</if>
|
|
<if test="CHARGER_TYPE != null and !''.equals(CHARGER_TYPE)">
|
|
AND CHARGER_TYPE = #{CHARGER_TYPE}
|
|
</if>
|
|
|
|
UNION ALL
|
|
|
|
<!-- CLIENT_MNG (일반거래처) 데이터 -->
|
|
SELECT
|
|
'C_' || OBJID::VARCHAR AS CODE
|
|
,CLIENT_NM AS NAME
|
|
,CLIENT_CD AS CODE_ID
|
|
,CLIENT_NM AS CODE_NAME
|
|
,CLIENT_CD AS CODE_CD
|
|
,BUS_REG_NO AS REG_NO
|
|
,CEO_NM AS CHARGE_USER_NAME
|
|
,TEL_NO AS SUPPLY_TEL_NO
|
|
,FAX_NO AS SUPPLY_FAX_NO
|
|
,PAYMENT_TERM AS PAYMENT_METHOD
|
|
,USE_YN AS STATUS
|
|
,'' AS ID
|
|
,'' AS EXT_VAL
|
|
,'CLIENT' AS DATA_SOURCE
|
|
FROM CLIENT_MNG
|
|
WHERE 1=1
|
|
<if test="SUPPLY_OBJID != null and !''.equals(SUPPLY_OBJID)">
|
|
AND ('C_' || OBJID::VARCHAR) = #{SUPPLY_OBJID}::VARCHAR
|
|
</if>
|
|
) AS COMBINED
|
|
ORDER BY NAME
|
|
</select>
|
|
<select id="getsupplyselect2" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID::VARCHAR AS CODE_ID
|
|
,SUPPLY_NAME AS CODE_NAME
|
|
,SUPPLY_CODE
|
|
,SUPPLY_NAME
|
|
,SUPPLY_CODE AS CODE_CD
|
|
,REG_NO
|
|
,CHARGE_USER_NAME
|
|
,SUPPLY_TEL_NO
|
|
,SUPPLY_FAX_NO
|
|
,PAYMENT_METHOD
|
|
,STATUS AS STATUS
|
|
,'' AS ID
|
|
,'' AS EXT_VAL
|
|
FROM SUPPLY_MNG
|
|
WHERE 1=1
|
|
<!-- AND SUPPLY_CODE != '0000269' -->
|
|
<if test="SUPPLY_OBJID != null and !''.equals(SUPPLY_OBJID)">
|
|
AND OBJID::VARCHAR = #{SUPPLY_OBJID}::VARCHAR
|
|
</if>
|
|
<if test="CHARGER_TYPE != null and !''.equals(CHARGER_TYPE)">
|
|
AND CHARGER_TYPE = #{CHARGER_TYPE}
|
|
</if>
|
|
ORDER BY CODE_NAME
|
|
</select>
|
|
|
|
<select id="getOrderNoList" parameterType="map" resultType="map">
|
|
SELECT
|
|
T.ORDER_NO AS CODE
|
|
,T.ORDER_NO AS NAME
|
|
,'' AS ID
|
|
FROM MATERIAL_MASTER_MGMT T
|
|
WHERE T.DEL_YN='N'
|
|
ORDER BY T.ORDER_NO DESC
|
|
</select>
|
|
|
|
|
|
<select id="getUserselect" parameterType="map" resultType="map">
|
|
SELECT USER_ID AS CODE,
|
|
<!-- (SELECT '[' ||O.DEPT_NAME|| ']' FROM DEPT_INFO O WHERE O.DEPT_CODE = T.DEPT_CODE) || --> USER_NAME AS NAME,
|
|
SABUN AS CODE_CD,
|
|
'' AS STATUS,
|
|
'' AS ID,
|
|
'' AS EXT_VAL
|
|
,CELL_PHONE
|
|
,DEPT_CODE
|
|
,DEPT_NAME
|
|
,POSITION_CODE
|
|
,POSITION_NAME
|
|
,RANK
|
|
,EMAIL
|
|
FROM USER_INFO T
|
|
WHERE 1 = 1
|
|
|
|
<choose>
|
|
<when test='search_user_type == null or "".equals(search_user_type) '>
|
|
AND NVL(partner_objid, '') = ''
|
|
</when>
|
|
<when test='search_user_type != null and "A".equals(search_user_type) '>
|
|
</when>
|
|
<when test='search_user_type != null and "U".equals(search_user_type) '>
|
|
AND NVL(partner_objid, '') = ''
|
|
</when>
|
|
<when test='search_user_type != null and "P".equals(search_user_type) '>
|
|
AND NVL(partner_objid, '') != ''
|
|
</when>
|
|
<otherwise>
|
|
</otherwise>
|
|
</choose>
|
|
|
|
<if test="code != null and !''.equals(code)">
|
|
AND DEPT_CODE = #{code}
|
|
</if>
|
|
AND STATUS = 'active'
|
|
ORDER BY NAME
|
|
</select>
|
|
|
|
<select id="getYear" parameterType="map" resultType="map">
|
|
<![CDATA[
|
|
SELECT TO_CHAR(TO_CHAR(SYSDATE, 'YYYY') - LEVEL + 1) AS CODE,
|
|
TO_CHAR(TO_CHAR(SYSDATE, 'YYYY') - LEVEL + 1) AS NAME,
|
|
TO_CHAR(TO_CHAR(SYSDATE, 'YYYY') - LEVEL + 1) AS CODE_CD,
|
|
'' AS STATUS,
|
|
'' AS ID,
|
|
'' AS EXT_VAL
|
|
FROM DUAL
|
|
CONNECT BY LEVEL <= ((TO_CHAR(SYSDATE, 'YYYY') + 1) - 2017)
|
|
]]>
|
|
</select>
|
|
|
|
<select id="getDeptselect2" parameterType="map" resultType="map">
|
|
SELECT
|
|
DEPT_CODE AS CODE_ID
|
|
,DEPT_NAME AS CODE_NAME
|
|
FROM DEPT_INFO
|
|
</select>
|
|
|
|
<select id="getUserselect2" parameterType="map" resultType="map">
|
|
SELECT USER_ID AS CODE_ID,
|
|
(SELECT '[' ||O.DEPT_NAME|| ']' FROM DEPT_INFO O WHERE O.DEPT_CODE = T.DEPT_CODE) || USER_NAME AS CODE_NAME,
|
|
SABUN AS CODE_CD,
|
|
T.DEPT_CODE AS DEPT_CODE_ID,
|
|
'' AS STATUS,
|
|
'' AS ID,
|
|
'' AS EXT_VAL
|
|
FROM USER_INFO T
|
|
WHERE 1 = 1
|
|
<if test="code != null and !''.equals(code)">
|
|
AND DEPT_CODE = #{code}
|
|
</if>
|
|
</select>
|
|
|
|
<select id="getUserselect3" parameterType="map" resultType="map">
|
|
SELECT USER_ID AS CODE_ID,
|
|
USER_NAME AS CODE_NAME,
|
|
SABUN AS CODE_CD,
|
|
T.DEPT_CODE AS DEPT_CODE_ID,
|
|
'' AS STATUS,
|
|
'' AS ID,
|
|
'' AS EXT_VAL
|
|
FROM USER_INFO T
|
|
WHERE 1 = 1
|
|
AND DEPT_CODE = 'FT'
|
|
ORDER BY CODE_NAME
|
|
</select>
|
|
<select id="getUserselect4" parameterType="map" resultType="map">
|
|
SELECT USER_ID AS CODE_ID,
|
|
USER_NAME AS CODE_NAME,
|
|
SABUN AS CODE_CD,
|
|
T.DEPT_CODE AS DEPT_CODE_ID,
|
|
'' AS STATUS,
|
|
'' AS ID,
|
|
'' AS EXT_VAL
|
|
FROM USER_INFO T
|
|
WHERE 1 = 1
|
|
AND DEPT_CODE IN ('MM','MF')
|
|
ORDER BY CODE_NAME
|
|
</select>
|
|
<select id="getUserselect5" parameterType="map" resultType="map">
|
|
SELECT USER_ID AS CODE_ID,
|
|
USER_NAME AS CODE_NAME,
|
|
SABUN AS CODE_CD,
|
|
T.DEPT_CODE AS DEPT_CODE_ID,
|
|
'' AS STATUS,
|
|
'' AS ID,
|
|
'' AS EXT_VAL
|
|
FROM USER_INFO T
|
|
WHERE 1 = 1
|
|
AND DEPT_CODE in('MD','EC')
|
|
ORDER BY CODE_NAME
|
|
</select>
|
|
<select id="getUserselect6" parameterType="map" resultType="map">
|
|
SELECT USER_ID AS CODE_ID,
|
|
USER_NAME AS CODE_NAME,
|
|
SABUN AS CODE_CD,
|
|
T.DEPT_CODE AS DEPT_CODE_ID,
|
|
'' AS STATUS,
|
|
'' AS ID,
|
|
'' AS EXT_VAL
|
|
FROM USER_INFO T
|
|
WHERE 1 = 1
|
|
<if test="code != null and !''.equals(code)">
|
|
AND DEPT_CODE = #{code}
|
|
</if>
|
|
ORDER BY CODE_NAME
|
|
</select>
|
|
|
|
|
|
<select id="getResult" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID
|
|
,CODE_ID
|
|
,PARENT_CODE_ID
|
|
,CODE_NAME
|
|
,ID
|
|
,CODE_CD
|
|
,EXT_VAL
|
|
,WRITER
|
|
,TO_CHAR(REGDATE,'YYYY-MM-DD') REGDATE
|
|
,REGDATE
|
|
FROM COMM_CODE T
|
|
WHERE PARENT_CODE_ID = 'RCR10000'
|
|
</select>
|
|
|
|
<select id="selectUserViewMenuList" parameterType="map" resultType="map">
|
|
WITH RECURSIVE v_menu(
|
|
LEVEL,
|
|
MENU_TYPE,
|
|
OBJID,
|
|
PARENT_OBJ_ID,
|
|
MENU_NAME_KOR,
|
|
MENU_URL,
|
|
MENU_DESC,
|
|
SEQ,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS,
|
|
PATH,
|
|
CYCLE
|
|
) AS (
|
|
SELECT
|
|
1 AS LEVEL,
|
|
MENU_TYPE,
|
|
OBJID::numeric,
|
|
PARENT_OBJ_ID,
|
|
MENU_NAME_KOR,
|
|
MENU_URL,
|
|
MENU_DESC,
|
|
SEQ,
|
|
WRITER,
|
|
REGDATE,
|
|
STATUS,
|
|
ARRAY [MENU.OBJID],
|
|
FALSE
|
|
FROM MENU_INFO MENU
|
|
WHERE PARENT_OBJ_ID=0
|
|
AND MENU_TYPE=1
|
|
|
|
UNION ALL
|
|
|
|
SELECT
|
|
V_MENU.LEVEL+1,
|
|
MENU_SUB.MENU_TYPE,
|
|
MENU_SUB.OBJID,
|
|
MENU_SUB.PARENT_OBJ_ID,
|
|
MENU_SUB.MENU_NAME_KOR,
|
|
MENU_SUB.MENU_URL,
|
|
MENU_SUB.MENU_DESC,
|
|
MENU_SUB.SEQ,
|
|
MENU_SUB.WRITER,
|
|
MENU_SUB.REGDATE,
|
|
MENU_SUB.STATUS,
|
|
PATH||MENU_SUB.SEQ::numeric,
|
|
MENU_SUB.OBJID = ANY(PATH)
|
|
FROM MENU_INFO MENU_SUB
|
|
JOIN
|
|
V_MENU
|
|
ON
|
|
MENU_SUB.PARENT_OBJ_ID = V_MENU.OBJID
|
|
WHERE 1=1
|
|
AND UPPER(MENU_SUB.STATUS) = 'ACTIVE'
|
|
)
|
|
SELECT
|
|
LEVEL AS LEV,
|
|
case MENU_TYPE
|
|
when '0' then 'admin'
|
|
when '1' then 'user'
|
|
else ''
|
|
END AS MENU_TYPE,
|
|
OBJID,
|
|
PARENT_OBJ_ID,
|
|
MENU_NAME_KOR,
|
|
LPAD(' ', 3*(LEVEL-1))||MENU_NAME_KOR LPAD_MENU_NAME_KOR,
|
|
MENU_URL,
|
|
MENU_DESC,
|
|
SEQ,
|
|
WRITER,
|
|
TO_CHAR(REGDATE,'YYYY-MM-DD') REGDATE,
|
|
STATUS,
|
|
case UPPER(STATUS)
|
|
when 'ACTIVE' then '활성화'
|
|
when 'INACTIVE' then '비활성화'
|
|
else ''
|
|
END AS STATUS_TITLE,
|
|
B.CREATE_AUTH_CNT,
|
|
B.READ_AUTH_CNT,
|
|
B.UPDATE_AUTH_CNT,
|
|
B.DELETE_AUTH_CNT
|
|
FROM
|
|
v_menu A,
|
|
(
|
|
SELECT
|
|
B.MENU_OBJID,
|
|
SUM(CASE B.CREATE_YN WHEN 'Y' THEN 1 ELSE 0 END) CREATE_AUTH_CNT,
|
|
SUM(CASE B.READ_YN WHEN 'Y' THEN 1 ELSE 0 END) READ_AUTH_CNT,
|
|
SUM(CASE B.UPDATE_YN WHEN 'Y' THEN 1 ELSE 0 END) UPDATE_AUTH_CNT,
|
|
SUM(CASE B.DELETE_YN WHEN 'Y' THEN 1 ELSE 0 END) DELETE_AUTH_CNT
|
|
FROM
|
|
REL_MENU_AUTH B,
|
|
AUTHORITY_MASTER C
|
|
WHERE
|
|
1 = 1
|
|
AND B.AUTH_OBJID = C.OBJID
|
|
AND C.OBJID IN (
|
|
SELECT
|
|
MASTER_OBJID
|
|
FROM
|
|
AUTHORITY_SUB_USER
|
|
WHERE
|
|
USER_ID = #{userId}
|
|
)
|
|
GROUP BY
|
|
B.MENU_OBJID
|
|
) B
|
|
WHERE 1=1
|
|
AND a.objid = b.menu_objid
|
|
AND A.seq > 99
|
|
<if test="menuObjId != null and !''.equals(menuObjId)">
|
|
AND A.OBJID = #{menuObjId}::numeric
|
|
</if>
|
|
ORDER BY PATH,SEQ
|
|
</select>
|
|
|
|
|
|
<select id="getProjectNoList" parameterType="map" resultType="map">
|
|
SELECT
|
|
PMS_PJT_CONCEPT_INFO.*,
|
|
PMS_PJT_WBS_INFO.WBS_TASK_RATIO
|
|
FROM(
|
|
SELECT
|
|
A.OBJID AS CONCEPT_OBJID
|
|
, A.OBJID AS CODE_ID
|
|
, A.FOREIGN_TYPE AS FOREIGN_TYPE_ORG
|
|
, case A.FOREIGN_TYPE when 'D' then '국내'
|
|
when 'F' then '해외'
|
|
else A.FOREIGN_TYPE
|
|
end FOREIGN_TYPE
|
|
, A.OEM_OBJID
|
|
, (SELECT OEM_CODE FROM OEM_MNG WHERE OBJID = A.OEM_OBJID) AS OEM_CODE
|
|
, (SELECT OEM_NAME FROM OEM_MNG WHERE OBJID = A.OEM_OBJID) AS OEM_NAME
|
|
, A.CAR_OBJID
|
|
, (SELECT CAR_CODE FROM CAR_MNG WHERE OBJID = A.CAR_OBJID) AS CAR_CODE
|
|
, (SELECT CAR_NAME FROM CAR_MNG WHERE OBJID = A.CAR_OBJID) AS CAR_NAME
|
|
, (SELECT MODEL_CODE FROM CAR_MNG WHERE OBJID = A.CAR_OBJID) AS CAR_MODEL_CODE
|
|
, A.PJT_TYPE AS PJT_TYPE_ORG
|
|
, case A.PJT_TYPE when 'new' then '신차'
|
|
when 'derivative' then '파생차'
|
|
when 'sample' then '시작차'
|
|
else A.PJT_TYPE
|
|
end PJT_TYPE
|
|
, A.OEM_FACTORY
|
|
, A.IS_DEL AS CONCEPT_IS_DEL_ORG
|
|
, case A.IS_DEL || '' when '0' then '삭제됨'
|
|
when '1' then '활성화'
|
|
else A.IS_DEL || ''
|
|
end CONCEPT_IS_DEL
|
|
, A.WRITER AS CONCEPT_WRITER_USER_ID
|
|
, (SELECT DEPT_NAME FROM USER_INFO WHERE USER_ID = A.WRITER) AS CONCEPT_WRITER_DEPT_NAME
|
|
, (SELECT USER_NAME FROM USER_INFO WHERE USER_ID = A.WRITER) AS CONCEPT_WRITER_USER_NAME
|
|
|
|
, count(B.TARGET_OBJID) AS CONCEPT_PROD_CNT
|
|
|
|
, ( select code_name from comm_code c where c.code_id = B.PARENT_CODE_ID) as PRODUCT_GROUP_NAME
|
|
, ( select code_id from comm_code c where c.code_id = B.PARENT_CODE_ID) as PRODUCT_GROUP_OBJID
|
|
|
|
, B.ESTIMATE_NO
|
|
, B.ESTIMATE_NO AS CODE_NAME
|
|
, A.ESTIMATE_REQ_DATE AS ESTIMATE_REQ_DATE_ORG
|
|
, TO_CHAR(A.ESTIMATE_REQ_DATE, 'YYYY-MM-DD') AS ESTIMATE_REQ_DATE
|
|
, A.ESTIMATE_SUBMIT_DATE AS ESTIMATE_SUBMIT_DATE_ORG
|
|
, TO_CHAR(A.ESTIMATE_SUBMIT_DATE, 'YYYY-MM-DD') AS ESTIMATE_SUBMIT_DATE
|
|
, A.WRITER AS ESTIMATE_PIC_USER_ID
|
|
, (SELECT DEPT_NAME FROM USER_INFO WHERE USER_ID = A.WRITER) AS ESTIMATE_PIC_DEPT_NAME
|
|
, (SELECT USER_NAME FROM USER_INFO WHERE USER_ID = A.WRITER) AS ESTIMATE_PIC_USER_NAME
|
|
, A.YEARLY_AVG_PRODUCTION_CNT
|
|
, A.TOTAL_PRODUCTION_CNT
|
|
, (select CODE_NAME FROM COMM_CODE WHERE PARENT_CODE_ID = '0005154' AND UPPER(STATUS) = 'ACTIVE' and objid = A.STATUS) as BIDDING_RESULT
|
|
, B.IS_DEL AS CONCEPT_PROD_IS_DEL_ORG
|
|
, case B.IS_DEL || '' when '0' then '삭제됨'
|
|
when '1' then '활성화'
|
|
else B.IS_DEL || ''
|
|
end CONCEPT_PROD_IS_DEL
|
|
, B.WRITER AS CONCEPT_PROD_WRITER_USER_ID
|
|
, (SELECT DEPT_NAME FROM USER_INFO WHERE USER_ID = B.WRITER) AS CONCEPT_PROD_WRITER_DEPT_NAME
|
|
, (SELECT USER_NAME FROM USER_INFO WHERE USER_ID = B.WRITER) AS CONCEPT_PROD_WRITER_USER_NAME
|
|
, case B.STATUS when 'create' then '진행중'
|
|
when 'complete' then '완료'
|
|
else B.STATUS
|
|
end STATUS
|
|
, B.STATUS AS STATUS_ORG
|
|
|
|
, (SELECT COUNT(1) FROM ATTACH_FILE_INFO WHERE TARGET_OBJID = A.OBJID AND DOC_TYPE='PJT_CONCEPT_ESTIMATE_ATTACH' AND UPPER(STATUS) = 'ACTIVE') AS ESTIMATE_FILE_CNT
|
|
, (SELECT COUNT(1) FROM ATTACH_FILE_INFO WHERE TARGET_OBJID = A.OBJID AND DOC_TYPE='PJT_CONCEPT_SR_ATTACH' AND UPPER(STATUS) = 'ACTIVE') AS SR_FILE_CNT
|
|
, (SELECT COUNT(1) FROM ATTACH_FILE_INFO WHERE TARGET_OBJID = A.OBJID AND DOC_TYPE='PJT_CONCEPT_DATA_ATTACH' AND UPPER(STATUS) = 'ACTIVE') AS DATA_FILE_CNT
|
|
, (SELECT COUNT(1) FROM ATTACH_FILE_INFO WHERE TARGET_OBJID = A.OBJID AND DOC_TYPE='PJT_CONCEPT_COOPERATION_ATTACH' AND UPPER(STATUS) = 'ACTIVE') AS COOPERATION_FILE_CNT
|
|
, (SELECT COUNT(1) FROM ATTACH_FILE_INFO WHERE TARGET_OBJID = A.OBJID AND DOC_TYPE='PJT_CONCEPT_FINAL_ATTACH' AND UPPER(STATUS) = 'ACTIVE') AS FINAL_FILE_CNT
|
|
, (select milestone_date from PMS_REL_PJT_CONCEPT_MILESTONE where target_objid = A.OBJID and milestone_objid in (select objid from OEM_MILESTONE_MNG where milestone_name = '양산')) as MILESTONE_DATE
|
|
, (select USER_NAME || position_name from user_info where user_id = A.PM_ID) AS PM_INFO
|
|
, (select CODE_NAME from comm_code where parent_code_id = '0005150' and objid = A.OEM_FACTORY) AS OEM_FACTORY_NAME
|
|
, (select count(*) from pms_invest_cost_mng where target_objid = A.OBJID) AS invest_cnt
|
|
, (SELECT round( SUM(amount)/10000000, 2) FROM PMS_INVEST_COST_MNG WHERE TARGET_OBJID = A.OBJID) AS invest_amoumt
|
|
, (SELECT ROUND(100.0 * SUM(TASK.OK_CNT) / SUM(TASK.TASK_CNT))|| '%' as WBS_TASK_RATIO from ( select PWTI.TARGET_OBJID, case when PWTI.PM_CONFIRM_STATUS = 'ok' then 1 else 0 end OK_CNT, 1 TASK_CNT from PMS_WBS_TASK_INFO PWTI where PWTI.target_objid = '1551736239' ) TASK group by TASK.TARGET_OBJID ) AS WBS_TASK_RATIO
|
|
FROM
|
|
PMS_PJT_CONCEPT_INFO A,
|
|
(select P.*, C.PARENT_CODE_ID from PMS_REL_PJT_CONCEPT_PROD P inner join comm_code c on P.PROD_OBJID = C.objid) B
|
|
WHERE 1=1
|
|
AND A.OBJID = B.TARGET_OBJID
|
|
AND A.IS_DEL = 1
|
|
AND B.IS_DEL = 1
|
|
AND A.STATUS = (select objid from comm_code where parent_code_id = '0005154' and code_name = '수주')
|
|
group by A.OBJID, A.FOREIGN_TYPE, A.OEM_OBJID,A.car_objid , A.PJT_TYPE, A.OEM_FACTORY, A.IS_DEL, A.WRITER, B.PARENT_CODE_ID,B.ESTIMATE_NO ,
|
|
A.ESTIMATE_REQ_DATE, A.ESTIMATE_SUBMIT_DATE, B.ESTIMATE_PIC, A.YEARLY_AVG_PRODUCTION_CNT ,A.TOTAL_PRODUCTION_CNT , A.STATUS, B.IS_DEL,
|
|
B.WRITER, B.status, A.PM_ID
|
|
) PMS_PJT_CONCEPT_INFO
|
|
LEFT OUTER JOIN(
|
|
select
|
|
A.TARGET_OBJID,
|
|
ROUND(100.0 * SUM(A.OK_CNT) / SUM(A.TASK_CNT))||'%' AS WBS_TASK_RATIO
|
|
FROM(
|
|
SELECT
|
|
PWTI.TARGET_OBJID,
|
|
CASE
|
|
WHEN PWTI.PM_CONFIRM_STATUS = 'ok' THEN 1
|
|
ELSE 0
|
|
END OK_CNT,
|
|
1 TASK_CNT
|
|
FROM PMS_WBS_TASK_INFO PWTI
|
|
) A
|
|
GROUP BY TARGET_OBJID
|
|
) PMS_PJT_WBS_INFO
|
|
ON PMS_PJT_CONCEPT_INFO.CONCEPT_OBJID = PMS_PJT_WBS_INFO.TARGET_OBJID::INTEGER
|
|
</select>
|
|
|
|
|
|
|
|
<select id="getresourceList" resultType="map" parameterType="map">
|
|
SELECT
|
|
DISTINCT
|
|
T.PRODUCT_TITLE AS CODE_ID
|
|
,T1.CODE_NAME
|
|
FROM
|
|
RESOURCE_MNG T,COMM_CODE T1
|
|
WHERE T.PRODUCT_TITLE = T1.CODE_ID
|
|
AND T.RESOURCE_TITLE = T1.PARENT_CODE_ID
|
|
</select>
|
|
|
|
<select id="getStandList" resultType="map" parameterType="map">
|
|
SELECT
|
|
T.OBJID::varchar AS CODE_ID
|
|
,T.STANDARD AS CODE_NAME
|
|
,T.PRODUCT_TITLE AS PARENT_CODE_ID
|
|
,T.UNIT
|
|
,T.UNIT_TITLE
|
|
FROM RESOURCE_MNG T
|
|
</select>
|
|
|
|
|
|
<select id="resourcePrice" resultType="map" parameterType="map">
|
|
SELECT
|
|
T.UNIT_PRICE::float * T1.WEIGHT::FLOAT AS UNIT_PRICE
|
|
FROM RESOURCE_PRICE T,RESOURCE_MNG T1
|
|
WHERE T.PARENT_OBJID = T1.OBJID
|
|
AND T.PARENT_OBJID =#{objId}::integer
|
|
ORDER BY T.REGDATE DESC
|
|
LIMIT 1
|
|
</select>
|
|
|
|
<!-- //지역사양 조회(콤보박스용) -->
|
|
<select id="getConceptStatus" parameterType="map" resultType="map">
|
|
SELECT OBJID
|
|
, CODE_ID
|
|
, CODE_NAME
|
|
FROM COMM_CODE
|
|
WHERE PARENT_CODE_ID = '0005154' AND UPPER(STATUS) = 'ACTIVE'
|
|
ORDER BY CODE_ID
|
|
</select>
|
|
|
|
<!-- //PM팀 조회(콤보박스용) -->
|
|
<select id="getPmList" parameterType="map" resultType="map">
|
|
select
|
|
SABUN ,
|
|
USER_ID ,
|
|
USER_NAME
|
|
from
|
|
USER_INFO
|
|
where
|
|
DEPT_CODE = 'DEPT06' AND UPPER(STATUS)= 'ACTIVE'
|
|
</select>
|
|
|
|
<!-- 코드 조회-->
|
|
<select id="getCodeselectList" parameterType="map" resultType="map">
|
|
SELECT CODE_ID AS CODE,
|
|
CODE_NAME AS NAME,
|
|
CODE_CD,
|
|
STATUS,
|
|
ID,
|
|
EXT_VAL
|
|
FROM COMM_CODE T
|
|
WHERE 1 = 1
|
|
AND UPPER(T.STATUS)= 'ACTIVE'
|
|
AND PARENT_CODE_ID = #{code}
|
|
</select>
|
|
|
|
<select id="getProductCodeselect" parameterType="map" resultType="map">
|
|
SELECT
|
|
objid::varchar AS code
|
|
,product_code AS NAME
|
|
,product_code AS CODE_CD
|
|
,'' AS STATUS
|
|
,'' AS ID
|
|
FROM product_mgmt
|
|
ORDER BY product_code
|
|
</select>
|
|
<select id="getAsProductCodeselect" parameterType="map" resultType="map">
|
|
SELECT
|
|
product_code AS code
|
|
,product_code AS NAME
|
|
,product_code AS CODE_CD
|
|
,'' AS STATUS
|
|
,'' AS ID
|
|
FROM product_mgmt
|
|
ORDER BY product_code
|
|
</select>
|
|
<select id="getPartNoselect" parameterType="map" resultType="map">
|
|
SELECT
|
|
objid::varchar AS code
|
|
<!-- ,part_no ||'-'|| revision AS NAME -->
|
|
,CASE WHEN revision IS NULL OR revision = ''
|
|
THEN part_no
|
|
WHEN revision IS NOT NULL OR revision != ''
|
|
THEN part_no || revision
|
|
END AS name
|
|
,part_no AS CODE_CD
|
|
,'' AS STATUS
|
|
,'' AS ID
|
|
FROM part_mng
|
|
ORDER BY part_no
|
|
</select>
|
|
|
|
<select id="getProductUPGselect" parameterType="map" resultType="map">
|
|
SELECT
|
|
P.*,
|
|
(UPG_CODE ||'-'|| PRODUCT_CODE ||'-'|| VC) AS UPG_NO
|
|
FROM(
|
|
SELECT
|
|
PMUD.OBJID AS DETAIL_OBJID,
|
|
PMUD.OBJID::VARCHAR AS CODE,
|
|
PMUD.TARGET_OBJID AS MASTER_OBJID,
|
|
PMUD.UPG_NAME,
|
|
PMUD.UPG_CODE,
|
|
PMUD.UPG_NAME AS NAME,
|
|
PMUD.UPG_CODE AS CODE_CD,
|
|
PMUD.VC,
|
|
PMUD.NOTE,
|
|
PMUD.PRODUCT_OBJID,
|
|
(SELECT PRODUCT_CODE FROM PRODUCT_MGMT PM WHERE 1=1 AND PM.OBJID = PMUD.PRODUCT_OBJID) AS PRODUCT_CODE
|
|
FROM
|
|
PRODUCT_MGMT_UPG_DETAIL PMUD
|
|
WHERE VC !=''
|
|
<if test="PRODUCT_MGMT_OBJID != null and !''.equals(PRODUCT_MGMT_OBJID)">
|
|
AND PMUD.PRODUCT_OBJID = #{PRODUCT_MGMT_OBJID}::INTEGER
|
|
</if>
|
|
<if test="PRODUCT_MGMT_SPEC != null and !''.equals(PRODUCT_MGMT_SPEC)">
|
|
AND PMUD.TARGET_OBJID = #{PRODUCT_MGMT_SPEC}::INTEGER
|
|
</if>
|
|
<if test="UPG_MASTER_OBJID != null and !''.equals(UPG_MASTER_OBJID)">
|
|
AND PMUD.TARGET_OBJID = #{UPG_MASTER_OBJID}::INTEGER
|
|
</if>
|
|
<if test="UPG_DETAIL_OBJID != null and !''.equals(UPG_DETAIL_OBJID)">
|
|
AND PMUD.OBJID = #{UPG_DETAIL_OBJID}::INTEGER
|
|
</if>
|
|
) P
|
|
</select>
|
|
|
|
|
|
<select id="getProductUPGNEWselect" parameterType="map" resultType="map">
|
|
SELECT
|
|
DISTINCT
|
|
UPG_CODE ||'-'|| (SELECT PRODUCT_CODE FROM PRODUCT_MGMT PM WHERE 1=1 AND PM.OBJID = PMUD.PRODUCT_OBJID) ||'-'|| VC AS CODE
|
|
,(SELECT code_name FROM comm_code AS CC WHERE CC.EXT_VAL = PMUD.UPG_CODE) AS NAME
|
|
FROM
|
|
PRODUCT_MGMT_UPG_DETAIL PMUD
|
|
WHERE VC !=''
|
|
<if test="PRODUCT_MGMT_OBJID != null and !''.equals(PRODUCT_MGMT_OBJID)">
|
|
AND PMUD.PRODUCT_OBJID = #{PRODUCT_MGMT_OBJID}::INTEGER
|
|
</if>
|
|
<if test="PRODUCT_MGMT_SPEC != null and !''.equals(PRODUCT_MGMT_SPEC)">
|
|
AND PMUD.TARGET_OBJID = #{PRODUCT_MGMT_SPEC}::INTEGER
|
|
</if>
|
|
<if test="UPG_MASTER_OBJID != null and !''.equals(UPG_MASTER_OBJID)">
|
|
AND PMUD.TARGET_OBJID = #{UPG_MASTER_OBJID}::INTEGER
|
|
</if>
|
|
<if test="UPG_DETAIL_OBJID != null and !''.equals(UPG_DETAIL_OBJID)">
|
|
AND PMUD.OBJID = #{UPG_DETAIL_OBJID}::INTEGER
|
|
</if>
|
|
</select>
|
|
|
|
|
|
|
|
<select id="getProductUPGPARTselect" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID::varchar
|
|
,UPG_NO
|
|
,PART_NO
|
|
,PART_NAME
|
|
,UNIT
|
|
,QTY
|
|
,SPEC
|
|
,MATERIAL
|
|
,WEIGHT
|
|
,PART_TYPE
|
|
,REMARK
|
|
FROM PART_MNG AS T
|
|
<!-- WHERE T.UPG_NO = #{UPG_OBJID} -->
|
|
</select>
|
|
|
|
|
|
<select id="getProductSPECSelect" parameterType="map" resultType="map">
|
|
SELECT
|
|
PMUM.OBJID,
|
|
PMUM.TARGET_OBJID AS PRODUCT_MGMT_OBJID,
|
|
PMUM.SPEC_NAME
|
|
FROM
|
|
PRODUCT_MGMT_UPG_MASTER PMUM
|
|
WHERE 1=1
|
|
<if test="TARGET_OBJID != null and !''.equals(TARGET_OBJID)">
|
|
AND PMUM.TARGET_OBJID = #{TARGET_OBJID}::INTEGER
|
|
</if>
|
|
</select>
|
|
|
|
<select id="getProductRELDataSelect" parameterType="map" resultType="map">
|
|
SELECT
|
|
PMUM.OBJID,
|
|
PMUM.TARGET_OBJID AS PRODUCT_MGMT_OBJID,
|
|
PMUM.SPEC_NAME,
|
|
PMUD.OBJID AS DETAIL_OBJID,
|
|
PMUD.TARGET_OBJID AS MASTER_OBJID,
|
|
PMUD.UPG_NAME,
|
|
PMUD.UPG_CODE,
|
|
PMUD.VC,
|
|
PMUD.NOTE
|
|
FROM
|
|
PRODUCT_MGMT_UPG_MASTER PMUM
|
|
WHERE 1=1
|
|
<if test="TARGET_OBJID != null and !''.equals(TARGET_OBJID)">
|
|
AND PMUM.TARGET_OBJID = #{TARGET_OBJID}
|
|
</if>
|
|
</select>
|
|
|
|
|
|
<select id="getProductUpgMasterselect" parameterType="map" resultType="map">
|
|
SELECT
|
|
COALESCE(t1.objid,t.objid)::varchar AS code
|
|
,CASE WHEN t1.spec_name IS null
|
|
THEN product_code
|
|
ELSE product_code
|
|
END AS NAME
|
|
,product_code AS CODE_CD
|
|
,'' AS STATUS
|
|
,t1.spec_name AS ID
|
|
,t.objid::varchar
|
|
FROM product_mgmt AS t
|
|
left outer join product_mgmt_upg_master AS t1
|
|
ON t.objid = t1.target_objid
|
|
ORDER BY product_code
|
|
</select>
|
|
|
|
|
|
<select id="getProductMasterselect" parameterType="map" resultType="map">
|
|
SELECT
|
|
t.objid::varchar AS code
|
|
,t.product_code AS NAME
|
|
,t.product_code AS CODE_CD
|
|
,'' AS STATUS
|
|
,'' AS ID
|
|
FROM product_mgmt AS t
|
|
ORDER BY product_code
|
|
</select>
|
|
|
|
<select id="getEcrCodeselect" parameterType="map" resultType="map">
|
|
SELECT
|
|
objid::varchar AS code
|
|
,ecr_no AS NAME
|
|
,ecr_no AS CODE_CD
|
|
,'' AS STATUS
|
|
,'' AS ID
|
|
FROM ecr_mng
|
|
where 1=1
|
|
<if test="code != null and !''.equals(code)">
|
|
AND OBJID = #{code}::numeric
|
|
</if>
|
|
ORDER BY ecr_no
|
|
</select>
|
|
|
|
<select id="getCodeselectUser" parameterType="map" resultType="map">
|
|
select
|
|
user_id as code,
|
|
user_name || '(' || dept_name || ')' as name
|
|
from
|
|
user_info
|
|
</select>
|
|
|
|
|
|
<select id="gettemplate_code_detailList" parameterType="map" resultType="map">
|
|
SELECT CODE_ID AS CODE,
|
|
CODE_NAME AS NAME,
|
|
CODE_CD,
|
|
STATUS,
|
|
ID,
|
|
EXT_VAL
|
|
FROM COMM_CODE T
|
|
WHERE 1 = 1
|
|
AND UPPER(T.STATUS)= 'ACTIVE'
|
|
<choose>
|
|
<when test="detailCd != null and !''.equals(detailCd)">
|
|
AND PARENT_CODE_ID = #{detailCd}
|
|
</when>
|
|
<otherwise>
|
|
AND PARENT_CODE_ID IS NULL
|
|
</otherwise>
|
|
</choose>
|
|
|
|
</select>
|
|
|
|
<select id="getCustomerCodeselect" parameterType="map" resultType="map">
|
|
SELECT
|
|
T.OBJID::VARCHAR AS CODE
|
|
,T.SUPPLY_NAME AS NAME
|
|
,T.SUPPLY_NAME AS CODE_CD
|
|
,'' AS STATUS
|
|
,'' AS ID
|
|
<!--
|
|
,T1.OBJID
|
|
-->
|
|
FROM SUPPLY_MNG AS T
|
|
<!--
|
|
,(SELECT T1.CUSTOMER_OBJID,T1.OBJID
|
|
FROM CONTRACT_MGMT T1, RELEASE_MGMT T2
|
|
WHERE T1.OBJID = T2.PARENT_OBJID::NUMERIC
|
|
) AS T1
|
|
WHERE T1.CUSTOMER_OBJID NOT LIKE 'C_%' AND T.OBJID::VARCHAR = T1.CUSTOMER_OBJID::VARCHAR
|
|
-->
|
|
</select>
|
|
|
|
|
|
|
|
<select id="getAsProductList" parameterType="map" resultType="map">
|
|
|
|
SELECT * FROM(
|
|
SELECT
|
|
T.PRODUCT AS CODE
|
|
,(SELECT PRODUCT_CODE FROM PRODUCT_MGMT AS O WHERE O.OBJID::VARCHAR = T.PRODUCT)||'('||T1.RELEASE_CAR_NO||')' AS NAME
|
|
,COALESCE(T1.RELEASE_CAR_NO , '') AS PSHELLNO
|
|
<!--
|
|
,T.WARRANTY AS GOODSGUARANTEE
|
|
-->
|
|
,T1.RELEASE_DATE AS INOUTDATE
|
|
FROM CONTRACT_MGMT AS T,RELEASE_MGMT AS T1
|
|
WHERE T.OBJID = T1.PARENT_OBJID
|
|
AND T.CUSTOMER_OBJID = #{CUSTCD}
|
|
<!--
|
|
AND SUBSTR(CONTRACT_DATE,1,4) =#{YEAR}
|
|
-->
|
|
<!--
|
|
UNION ALL
|
|
|
|
SELECT
|
|
T.PRODUCT1 AS CODE
|
|
,(SELECT PRODUCT_CODE FROM PRODUCT_MGMT AS O WHERE O.OBJID::VARCHAR = T.PRODUCT1)||'('||T1.RELEASE_CAR_NO||')' AS NAME
|
|
,COALESCE(T1.RELEASE_CAR_NO , '') AS PSHELLNO
|
|
,T.WARRANTY1 AS GOODSGUARANTEE
|
|
,T1.RELEASE_DATE AS INOUTDATE
|
|
FROM CONTRACT_MGMT AS T,RELEASE_MGMT AS T1
|
|
WHERE T.OBJID = T1.PARENT_OBJID::NUMERIC
|
|
AND T.CUSTOMER_OBJID = #{CUSTCD}
|
|
AND SUBSTR(CONTRACT_DATE,1,4) =#{YEAR}
|
|
UNION ALL
|
|
|
|
SELECT
|
|
T.PRODUCT2 AS CODE
|
|
,(SELECT PRODUCT_CODE FROM PRODUCT_MGMT AS O WHERE O.OBJID::VARCHAR = T.PRODUCT2)||'('||T1.RELEASE_CAR_NO||')' AS NAME
|
|
,COALESCE(T1.RELEASE_CAR_NO , '') AS PSHELLNO
|
|
,T.WARRANTY2 AS GOODSGUARANTEE
|
|
,T1.RELEASE_DATE AS INOUTDATE
|
|
FROM CONTRACT_MGMT AS T,RELEASE_MGMT AS T1
|
|
WHERE T.OBJID = T1.PARENT_OBJID::NUMERIC
|
|
AND T.CUSTOMER_OBJID = #{CUSTCD}
|
|
AND SUBSTR(CONTRACT_DATE,1,4) =#{YEAR}
|
|
-->
|
|
) AS T
|
|
WHERE T.CODE !=''
|
|
<!-- SELECT T2.GOODSCD AS CODE
|
|
,(SELECT O.GOODSNM FROM swsb110a_tbl AS O WHERE O.goodscd = T2.goodscd)||'('||T1.PSHELLNO||')' AS NAME
|
|
,T1.INOUTNO AS ID
|
|
,COALESCE(T1.PSHELLNO , '') AS PSHELLNO
|
|
,T2.goodsguarantee
|
|
,T1.inoutdate
|
|
FROM SWSF010A_TBL AS T1, SWSC110A_TBL AS T2
|
|
WHERE DELIVERYTYPE = '11' /* 입고구분 */
|
|
AND T1.GOODSCD = T2.GOODSCD
|
|
AND T2.CUSTCD = #{CUSTCD}
|
|
AND SUBSTRING(T2.FINISHDATE,1,4) = #{YEAR} -->
|
|
</select>
|
|
|
|
<select id="getmaintenanceselect" parameterType="map" resultType="map">
|
|
SELECT CONCAT(areaA, areaB, areaC, areaD) AS code
|
|
, areaName AS name
|
|
FROM SWJA050A_TBL A
|
|
ORDER BY areaName asc
|
|
</select>
|
|
|
|
<select id="getCustomerInfo" parameterType="map" resultType="map">
|
|
SELECT
|
|
CODE_NAME(AREA_CD) AS AREA_CD
|
|
,SUPPLY_NAME
|
|
,CODE_NAME(SUPPLY_CODE) AS SUPPLY_CODE
|
|
,CHARGE_USER_NAME
|
|
,REG_ID
|
|
,BUS_REG_NO
|
|
,REG_NO
|
|
,SUPPLY_BUSNAME
|
|
,SUPPLY_STOCKNAME
|
|
,SUPPLY_ADDRESS
|
|
,SUPPLY_TEL_NO
|
|
,EMAIL
|
|
,OFFICE_NO
|
|
,SUPPLY_FAX_NO
|
|
FROM SUPPLY_MNG
|
|
WHERE OBJID= #{OBJID}::NUMERIC
|
|
</select>
|
|
|
|
|
|
|
|
<select id="getoptionList" parameterType="map" resultType="map">
|
|
SELECT OBJID::VARCHAR AS CODE
|
|
,OPTION_NAME AS NAME
|
|
FROM OPTION_MNG
|
|
WHERE UPPER(STATUS)= 'ACTIVE'
|
|
</select>
|
|
|
|
|
|
<select id="getContractList" parameterType="map" resultType="map">
|
|
SELECT OBJID::VARCHAR AS CODE
|
|
,CONTRACT_NO ||'/'|| PRODUCT_CODE AS NAME
|
|
FROM CONTRACT_MGMT
|
|
</select>
|
|
|
|
<select id="getContractOptionList" parameterType="map" resultType="map">
|
|
SELECT option_objid::VARCHAR AS CODE
|
|
FROM CONTRACT_MGMT_OPTION
|
|
WHERE CONTRACT_OBJID= #{objId}::NUMERIC
|
|
</select>
|
|
|
|
|
|
<select id="getContractcodeList" parameterType="map" resultType="map">
|
|
SELECT
|
|
CODE_ID AS CODE
|
|
,CODE_NAME AS NAME
|
|
FROM COMM_CODE
|
|
WHERE PARENT_CODE_ID = #{OBJID}
|
|
ORDER BY NAME ASC
|
|
</select>
|
|
|
|
|
|
<select id="getContractProductList" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID::VARCHAR AS CODE
|
|
,PRODUCT_NAME AS NAME
|
|
FROM PRODUCT_MGMT
|
|
WHERE PRODUCT_TYPE = #{OBJID}
|
|
ORDER BY NAME ASC
|
|
</select>
|
|
|
|
<select id="getOptionHighselect" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID::varchar AS CODE
|
|
,OPTION_NAME AS NAME
|
|
,OPTION_NO AS CODE_ID
|
|
,'' AS ID
|
|
,'' AS EXT_VAL
|
|
FROM OPTION_MNG
|
|
WHERE CATEGORY='high'
|
|
</select>
|
|
|
|
<select id="getOptionChildList" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID::varchar AS CODE
|
|
,OPTION_NAME AS NAME
|
|
,OPTION_NO AS CODE_ID
|
|
,'' AS ID
|
|
,'' AS EXT_VAL
|
|
FROM OPTION_MNG
|
|
WHERE PARENT_OBJID = #{OBJID}
|
|
AND CATEGORY=#{CATEGORY}
|
|
|
|
</select>
|
|
|
|
<select id="getOptionLastPrice" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID::varchar
|
|
,PRICE::VARCHAR
|
|
,REG_DATE
|
|
FROM OPTION_PRICE_HISTORY
|
|
WHERE OPTION_OBJID::NUMERIC = #{OBJID}::NUMERIC
|
|
ORDER BY REG_DATE DESC
|
|
LIMIT 1
|
|
</select>
|
|
|
|
<select id="getOptionGridCodeList" resultType="map" parameterType="map">
|
|
SELECT
|
|
OBJID AS CODE_ID
|
|
,OPTION_NAME AS CODE_NAME
|
|
FROM OPTION_MNG T
|
|
WHERE 1=1
|
|
<if test="parentCodeId !=null and parentCodeId != '' ">
|
|
AND CATEGORY = #{parentCodeId}
|
|
</if>
|
|
</select>
|
|
|
|
|
|
|
|
<select id="getOptionMidList" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID::varchar AS CODE
|
|
,OPTION_NAME AS NAME
|
|
,OPTION_NO AS CODE_ID
|
|
,'' AS ID
|
|
,'' AS EXT_VAL
|
|
FROM OPTION_MNG
|
|
WHERE PARENT_OBJID = #{code}
|
|
AND CATEGORY='mid'
|
|
|
|
</select>
|
|
|
|
<select id="getOptionLowList" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID::varchar AS CODE
|
|
,OPTION_NAME AS NAME
|
|
,OPTION_NO AS CODE_ID
|
|
,'' AS ID
|
|
,'' AS EXT_VAL
|
|
FROM OPTION_MNG
|
|
WHERE PARENT_OBJID = #{code}
|
|
AND CATEGORY='low'
|
|
|
|
</select>
|
|
|
|
|
|
<select id="getAsContractYearList" parameterType="map" resultType="map">
|
|
SELECT DISTINCT
|
|
SUBSTR(CONTRACT_DATE,1,4) AS YY_DATE
|
|
FROM CONTRACT_MGMT AS T,RELEASE_MGMT AS T1
|
|
WHERE T.OBJID = T1.PARENT_OBJID::NUMERIC
|
|
AND T.CUSTOMER_OBJID = #{CUSTCD}
|
|
</select>
|
|
|
|
|
|
<select id="getPartCodeList" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID::varchar AS CODE
|
|
,PART_NO AS NAME
|
|
,PART_NAME AS CODE_ID
|
|
,'' AS ID
|
|
,'' AS EXT_VAL
|
|
FROM PART_MNG
|
|
WHERE status='release'
|
|
|
|
</select>
|
|
|
|
|
|
<select id="getPartInfo" parameterType="map" resultType="map">
|
|
SELECT
|
|
PART_NO
|
|
,PART_NAME
|
|
,(SELECT CODE_NAME FROM COMM_CODE WHERE CODE_ID = UNIT) AS UNIT
|
|
,SPEC
|
|
,MATERIAL
|
|
,WEIGHT
|
|
,THICKNESS
|
|
,WIDTH
|
|
,HEIGHT
|
|
,OUT_DIAMETER
|
|
,IN_DIAMETER
|
|
,LENGTH
|
|
FROM PART_MNG
|
|
WHERE OBJID= #{OBJID}::NUMERIC
|
|
</select>
|
|
|
|
<select id="getSpecNameList" resultType="map" parameterType="map">
|
|
SELECT
|
|
SPEC_NAME AS CODE_ID,
|
|
SPEC_NAME AS CODE_NAME
|
|
FROM
|
|
PART_BOM_REPORT
|
|
WHERE 1=1
|
|
AND PRODUCT_MGMT_OBJID::VARCHAR = #{codeId}::VARCHAR
|
|
</select>
|
|
|
|
<select id="getRevNoselect" parameterType="map" resultType="map">
|
|
SELECT
|
|
T.OBJID::varchar AS CODE
|
|
,COALESCE(T.REVISION, '1.0') AS NAME
|
|
,T1.PRODUCT_CODE AS CODE_CD
|
|
,'' AS STATUS
|
|
,T.spec_name AS ID
|
|
,'' AS EXT_VAL
|
|
FROM PART_BOM_REPORT T,PRODUCT_MGMT T1
|
|
WHERE T.PRODUCT_MGMT_OBJID = T1.OBJID
|
|
AND T1.OBJID = #{code}::numeric
|
|
ORDER BY COALESCE(T.REVISION, '1.0')
|
|
|
|
</select>
|
|
|
|
<select id="getProductNoselect" parameterType="map" resultType="map">
|
|
SELECT
|
|
T1.OBJID::varchar AS CODE
|
|
,T1.PRODUCT_CODE AS NAME
|
|
,T1.PRODUCT_CODE AS CODE_CD
|
|
,'' AS STATUS
|
|
,'' AS ID
|
|
,'' AS EXT_VAL
|
|
FROM PRODUCT_MGMT T1
|
|
</select>
|
|
|
|
<select id="getAdminSupCdList" resultType="map" parameterType="map">
|
|
select * from(
|
|
SELECT
|
|
OBJID AS CODE_ID
|
|
,SUPPLY_CODE
|
|
,SUPPLY_NAME AS CODE_NAME
|
|
,REPLACE(REPLACE(SUPPLY_NAME, '(주)', ''),' ','') AS ORDER_SUPPLY_NAME
|
|
,REG_NO
|
|
,SUPPLY_ADDRESS
|
|
,SUPPLY_BUSNAME
|
|
,SUPPLY_STOCKNAME
|
|
,SUPPLY_TEL_NO
|
|
,SUPPLY_FAX_NO
|
|
,CHARGE_USER_NAME
|
|
,PAYMENT_METHOD
|
|
,REG_ID
|
|
,REG_DATE
|
|
,STATUS
|
|
FROM ADMIN_SUPPLY_MNG T
|
|
) S
|
|
WHERE 1=1
|
|
<if test="codeId != null and !''.equals(codeId)">
|
|
AND SUPPLY_CODE = #{codeId}
|
|
</if>
|
|
ORDER BY S.ORDER_SUPPLY_NAME
|
|
</select>
|
|
|
|
<select id="getAdminSupplyCodeList" resultType="map" parameterType="map">
|
|
SELECT
|
|
T.OBJID AS CODE
|
|
,T.SUPPLY_CODE
|
|
,T.SUPPLY_NAME AS CODE_NAME
|
|
,T.REG_NO
|
|
,T.SUPPLY_ADDRESS
|
|
,T.SUPPLY_BUSNAME
|
|
,T.SUPPLY_STOCKNAME
|
|
,T.SUPPLY_TEL_NO
|
|
,T.SUPPLY_FAX_NO
|
|
,T.CHARGE_USER_NAME
|
|
,T.PAYMENT_METHOD
|
|
,T.REG_ID
|
|
,T.REG_DATE
|
|
,T.STATUS
|
|
,SCM.CHARGER_NAME
|
|
,SCM.PHONE
|
|
,SCM.TEL
|
|
,SCM.FAX
|
|
,SCM.EMAIL
|
|
FROM
|
|
ADMIN_SUPPLY_MNG T
|
|
LEFT OUTER JOIN (
|
|
SELECT
|
|
*,
|
|
ROW_NUMBER() OVER( PARTITION BY CHARGER_NAME ORDER BY REGDATE ) AS ROW_NUM
|
|
FROM SUPPLY_CHARGER_MNG
|
|
WHERE 1=1
|
|
<if test="CHARGER_TYPE != null and !''.equals(CHARGER_TYPE)">
|
|
AND CHARGER_TYPE = #{CHARGER_TYPE}
|
|
</if>
|
|
) SCM
|
|
ON T.OBJID::VARCHAR = SCM.SUPPLY_OBJID::VARCHAR
|
|
AND ROW_NUM = 1
|
|
|
|
WHERE 1=1
|
|
AND T.SUPPLY_CODE != '0000269'
|
|
<if test="SUPPLY_OBJID != null and !''.equals(SUPPLY_OBJID)">
|
|
AND T.OBJID::VARCHAR = #{SUPPLY_OBJID}::VARCHAR
|
|
</if>
|
|
ORDER BY T.SUPPLY_NAME
|
|
</select>
|
|
|
|
<select id="getAjaxProductMgmtList" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID,
|
|
OBJID AS CODE,
|
|
PRODUCT_CATEGORY,
|
|
PRODUCT_TYPE,
|
|
PRODUCT_GRADE,
|
|
PRODUCT_TON,
|
|
PRODUCT_BOOM,
|
|
PRODUCT_VEHICLE,
|
|
PRODUCT_CODE,
|
|
PRODUCT_CODE AS CODE_NAME,
|
|
PRODUCT_CODE AS NAME,
|
|
PRODUCTION_FLAG,
|
|
REGDATE,
|
|
WRITER,
|
|
CONTENTS
|
|
FROM
|
|
PRODUCT_MGMT
|
|
WHERE 1=1
|
|
<if test="PRODUCT_CATEGORY != null and !''.equals(PRODUCT_CATEGORY)">
|
|
AND PRODUCT_CATEGORY = #{PRODUCT_CATEGORY}
|
|
</if>
|
|
<if test="PRODUCT_TYPE != null and !''.equals(PRODUCT_TYPE)">
|
|
AND PRODUCT_TYPE = #{PRODUCT_TYPE}
|
|
</if>
|
|
</select>
|
|
|
|
<!-- //라인설치장소 조회(콤보박스용) -->
|
|
<select id="getCodeDataList" parameterType="map" resultType="map">
|
|
SELECT
|
|
*
|
|
FROM COMM_CODE
|
|
WHERE 1=1
|
|
<if test="code_name != null and !''.equals(code_name)">
|
|
AND CODE_NAME = #{code_name}
|
|
</if>
|
|
<if test="parent_code_id != null and !''.equals(parent_code_id)">
|
|
AND PARENT_CODE_ID = #{parent_code_id}
|
|
</if>
|
|
</select>
|
|
|
|
|
|
<select id="getAddress2List" parameterType="map" resultType="map">
|
|
SELECT CODE_ID AS CODE,
|
|
CODE_NAME AS NAME,
|
|
CODE_CD,
|
|
STATUS,
|
|
ID,
|
|
EXT_VAL
|
|
FROM COMM_CODE T
|
|
WHERE PARENT_CODE_ID = #{CODE}
|
|
</select>
|
|
|
|
|
|
<select id="getproductcode" parameterType="map" resultType="map">
|
|
SELECT
|
|
PRODUCT_CODE AS CODE
|
|
FROM PRODUCT_MGMT
|
|
WHERE OBJID::numeric = #{OBJID}::numeric
|
|
</select>
|
|
|
|
<!-- 공급업체 목록 조회 (ADMIN_SUPPLY_MNG 테이블) -->
|
|
<select id="getmatersupplyselect" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID::VARCHAR AS CODE
|
|
,SUPPLY_NAME AS NAME
|
|
,OBJID::VARCHAR AS CODE_ID
|
|
,SUPPLY_NAME AS CODE_NAME
|
|
,SUPPLY_CODE AS CODE_CD
|
|
,REG_NO
|
|
,CHARGE_USER_NAME
|
|
,SUPPLY_TEL_NO
|
|
,SUPPLY_FAX_NO
|
|
,PAYMENT_METHOD
|
|
,STATUS AS STATUS
|
|
,'' AS ID
|
|
,'' AS EXT_VAL
|
|
FROM ADMIN_SUPPLY_MNG
|
|
ORDER BY SUPPLY_NAME
|
|
</select>
|
|
|
|
<!-- 일반거래처 목록 조회 (CLIENT_MNG 테이블) - 발주서용 -->
|
|
<select id="getClientMngSupplySelect" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID::VARCHAR AS CODE
|
|
,CLIENT_NM AS NAME
|
|
,OBJID::VARCHAR AS CODE_ID
|
|
,CLIENT_NM AS CODE_NAME
|
|
,CLIENT_CD AS CODE_CD
|
|
,BUS_REG_NO AS REG_NO
|
|
,CEO_NM AS CHARGE_USER_NAME
|
|
,TEL_NO AS SUPPLY_TEL_NO
|
|
,FAX_NO AS SUPPLY_FAX_NO
|
|
,EMAIL AS SUPPLY_EMAIL
|
|
,PAYMENT_TERM AS PAYMENT_METHOD
|
|
,USE_YN AS STATUS
|
|
,'' AS ID
|
|
,'' AS EXT_VAL
|
|
FROM CLIENT_MNG
|
|
WHERE 1=1
|
|
--AND USE_YN = 'Y'
|
|
ORDER BY CLIENT_NM
|
|
</select>
|
|
|
|
<select id="getsupCode" parameterType="map" resultType="map">
|
|
SELECT OBJID::VARCHAR SUPPLY_CODE
|
|
FROM ADMIN_SUPPLY_MNG T
|
|
WHERE SUPPLY_NAME = #{SUPNAME}
|
|
</select>
|
|
|
|
|
|
<select id="getProjectNameList" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID::VARCHAR AS CODE
|
|
<!-- ,PROJECT_NO||'('||PROJECT_NAME||')' AS NAME -->
|
|
,PROJECT_NO AS NAME
|
|
FROM PROJECT_MGMT
|
|
<if test="customer_objid != null and !''.equals(customer_objid)">
|
|
WHERE CUSTOMER_OBJID = #{customer_objid}
|
|
</if>
|
|
<if test="contract_objid != null and !''.equals(contract_objid)">
|
|
WHERE CONTRACT_OBJID = (SELECT CONTRACT_OBJID FROM PROJECT_MGMT WHERE OBJID = #{contract_objid})
|
|
</if>
|
|
ORDER BY SUBSTRING(PROJECT_NO,POSITION('-' IN PROJECT_NO)+1) DESC
|
|
<!--
|
|
ORDER BY PROJECT_NO
|
|
-->
|
|
</select>
|
|
|
|
<select id="getCodeselectAllLevel" parameterType="map" resultType="map">
|
|
WITH RECURSIVE V_CODE AS (
|
|
SELECT CODE_ID
|
|
, PARENT_CODE_ID
|
|
, CODE_ID AS ROOT
|
|
, 1 AS LEV
|
|
, ARRAY [CODE_ID::TEXT] AS PATH
|
|
, FALSE AS CYCLE
|
|
FROM COMM_CODE
|
|
WHERE 1=1
|
|
AND PARENT_CODE_ID = #{parent_code_id}
|
|
|
|
UNION ALL
|
|
|
|
SELECT A.CODE_ID
|
|
, A.PARENT_CODE_ID
|
|
, V.ROOT
|
|
, V.LEV + 1 AS LEV
|
|
, V.PATH||A.CODE_ID::TEXT AS PATH
|
|
, A.PARENT_CODE_ID = ANY(V.PATH) AS CYCLE
|
|
FROM COMM_CODE A, V_CODE V
|
|
WHERE 1=1
|
|
AND V.CODE_ID = A.PARENT_CODE_ID
|
|
<if test="status !=null and status != '' ">
|
|
AND A.STATUS = #{status}
|
|
</if>
|
|
)
|
|
SELECT *
|
|
FROM (
|
|
SELECT T1.ROOT, T1.PARENT_CODE_ID, T1.CODE_ID, REPLACE(REPLACE(T1.PATH::VARCHAR,'{',''),'}','') AS PATH, T1.LEV, T1.CYCLE
|
|
,T2.CODE_NAME, T2.ID, T2.CODE_CD, T2.EXT_VAL
|
|
FROM V_CODE AS T1
|
|
LEFT OUTER JOIN COMM_CODE AS T2
|
|
ON T1.CODE_ID = T2.CODE_ID
|
|
) AS TT
|
|
WHERE 1=1
|
|
<if test="path !=null and path != '' ">
|
|
AND PATH LIKE '%#{path}%'
|
|
</if>
|
|
<if test="id !=null and id != '' ">
|
|
AND ID = #{id}
|
|
</if>
|
|
<if test="codeCd !=null and codeCd != '' ">
|
|
AND CODE_CD = #{codeCd}
|
|
</if>
|
|
<if test="extVal !=null and extVal != '' ">
|
|
AND EXT_VAL = #{extVal}
|
|
</if>
|
|
</select>
|
|
|
|
<!-- COMM_CODE 버젼 -->
|
|
<select id="getUnitCodeList_old" parameterType="map" resultType="map">
|
|
SELECT
|
|
CODE_ID AS CODE,
|
|
CODE_NAME AS NAME
|
|
FROM COMM_CODE
|
|
<choose>
|
|
<when test="customer_objid !=null and customer_objid != '' ">
|
|
WHERE PARENT_CODE_ID =
|
|
(SELECT PRODUCT FROM PROJECT_MGMT
|
|
WHERE OBJID=#{customer_objid})
|
|
</when>
|
|
<otherwise>
|
|
WHERE PARENT_CODE_ID in
|
|
(SELECT PRODUCT FROM PROJECT_MGMT)
|
|
</otherwise>
|
|
</choose>
|
|
</select>
|
|
|
|
<select id="getUnitCodeList_old2" parameterType="map" resultType="map">
|
|
SELECT
|
|
TS.OBJID AS CODE,
|
|
TASK_NAME AS NAME
|
|
FROM PMS_WBS_TASK_STANDARD TS
|
|
,PMS_WBS_TEMPLATE T
|
|
WHERE T.OBJID = TS.PARENT_OBJID
|
|
<if test="unitCode !=null and unitCode != '' ">
|
|
AND TS.OBJID = #{unitCode}
|
|
</if>
|
|
<choose>
|
|
<when test="project_objid !=null and project_objid != '' ">
|
|
<!--
|
|
AND (SELECT PROJECT_NO FROM PROJECT_MGMT WHERE OBJID=#{customer_objid}) LIKE T.TITLE||'%'
|
|
AND T.PRODUCT_OBJID =
|
|
-->
|
|
AND EXISTS
|
|
(SELECT PRODUCT FROM PROJECT_MGMT
|
|
WHERE OBJID = #{project_objid}
|
|
<if test="customer_objid !=null and customer_objid != '' ">
|
|
CUSTOMER_OBJID=#{customer_objid}
|
|
</if>
|
|
AND PROJECT_NO LIKE T.TITLE||'%'
|
|
)
|
|
</when>
|
|
<otherwise>
|
|
AND T.PRODUCT_OBJID IN
|
|
(SELECT PRODUCT FROM PROJECT_MGMT)
|
|
</otherwise>
|
|
</choose>
|
|
ORDER BY TS.UNIT_NO ASC
|
|
</select>
|
|
|
|
<!-- 20240202 new 프로젝트의 유닛으로 변경(이전까지는 위 getUnitCodeList_old2 표준유닛 사용) -->
|
|
<select id="getUnitCodeList" parameterType="map" resultType="map">
|
|
SELECT
|
|
T.OBJID AS CODE,
|
|
<!--
|
|
,T.UNIT_NO || '-' || T.TASK_NAME AS NAME
|
|
-->
|
|
CASE WHEN NVL(UNIT_NO, '') = '' THEN TASK_NAME
|
|
WHEN LENGTH(UNIT_NO) > 0 AND UNIT_NO = SUBSTR(TASK_NAME, 0, LENGTH(UNIT_NO)+1) THEN TASK_NAME
|
|
ELSE T.UNIT_NO || '-' || T.TASK_NAME
|
|
END AS NAME
|
|
,T.TASK_NAME
|
|
<!-- TASK_NAME AS NAME -->
|
|
FROM PMS_WBS_TASK T
|
|
WHERE 1=1
|
|
<if test="unitCode !=null and unitCode != '' ">
|
|
AND T.OBJID = #{unitCode}
|
|
</if>
|
|
<if test="unitName !=null and unitName != '' ">
|
|
AND ( TRIM(UPPER(T.TASK_NAME)) = TRIM(UPPER(#{unitName}))
|
|
OR TRIM(UPPER(T.UNIT_NO || '-' || T.TASK_NAME)) = TRIM(UPPER(#{unitName})) )
|
|
</if>
|
|
<choose>
|
|
<when test="project_objid !=null and project_objid != '' ">
|
|
<!--
|
|
AND (SELECT PROJECT_NO FROM PROJECT_MGMT WHERE OBJID=#{customer_objid}) LIKE T.TITLE||'%'
|
|
AND T.PRODUCT_OBJID =
|
|
-->
|
|
AND CONTRACT_OBJID = #{project_objid}
|
|
</when>
|
|
<otherwise>
|
|
AND T.CONTRACT_OBJID IN
|
|
(SELECT OBJID FROM PROJECT_MGMT)
|
|
</otherwise>
|
|
</choose>
|
|
ORDER BY T.UNIT_NO ASC
|
|
</select>
|
|
|
|
<select id="getProjectListByUnit" parameterType="map" resultType="map">
|
|
SELECT *
|
|
FROM PROJECT_MGMT P
|
|
WHERE 1=1
|
|
AND EXISTS
|
|
(SELECT
|
|
TS.OBJID AS CODE,
|
|
TASK_NAME AS NAME
|
|
FROM PMS_WBS_TASK_STANDARD TS
|
|
,PMS_WBS_TEMPLATE T
|
|
WHERE T.OBJID = TS.PARENT_OBJID
|
|
AND TS.OBJID = #{unitCode}
|
|
AND P.PROJECT_NO LIKE T.TITLE||'%'
|
|
)
|
|
ORDER BY P.PROJECT_NO
|
|
</select>
|
|
|
|
<select id="getProjectUnitCodeList" parameterType="map" resultType="map">
|
|
SELECT
|
|
T.OBJID AS CODE,
|
|
TASK_NAME AS NAME
|
|
FROM PMS_WBS_TASK T
|
|
WHERE 1=1
|
|
<if test="unitCode !=null and unitCode != '' ">
|
|
AND T.OBJID = #{unitCode}
|
|
</if>
|
|
<if test="project_objid !=null and project_objid != '' ">
|
|
AND CONTRACT_OBJID=#{project_objid}
|
|
</if>
|
|
ORDER BY T.UNIT_NO ASC
|
|
</select>
|
|
|
|
<select id="getBomCodeList" resultType="map" parameterType="map">
|
|
<!-- COMM_CODE 버젼
|
|
SELECT
|
|
CODE_ID AS CODE,
|
|
CODE_NAME AS NAME,
|
|
'' AS ID
|
|
FROM COMM_CODE T
|
|
-->
|
|
<!-- 유닛 표준 버전
|
|
SELECT
|
|
TS.OBJID AS CODE,
|
|
TASK_NAME AS NAME
|
|
FROM PMS_WBS_TASK_STANDARD TS
|
|
,PMS_WBS_TEMPLATE T
|
|
WHERE T.OBJID = TS.PARENT_OBJID
|
|
AND TS.OBJID = #{code}
|
|
240207 아래 프로젝트의 유닛으로 변경
|
|
-->
|
|
SELECT
|
|
T.OBJID AS CODE,
|
|
T.TASK_NAME AS NAME
|
|
FROM PMS_WBS_TASK T
|
|
WHERE T.OBJID = #{code}
|
|
</select>
|
|
|
|
<select id="getPurchaseOrderCdList" resultType="map" parameterType="map">
|
|
SELECT
|
|
POM.OBJID AS CODE_ID
|
|
,POM.PURCHASE_ORDER_NO AS CODE_NAME
|
|
FROM
|
|
PURCHASE_ORDER_MASTER POM
|
|
LEFT OUTER JOIN PURCHASE_ORDER_PART POP
|
|
ON POM.OBJID = POP.PURCHASE_ORDER_MASTER_OBJID
|
|
WHERE 1=1
|
|
<if test="part_objid != null and part_objid != '' ">
|
|
AND POP.PART_OBJID = #{part_objid}
|
|
</if>
|
|
<if test="partnerObjid != null and partnerObjid != '' ">
|
|
AND POM.PARTNER_OBJID = #{partnerObjid}
|
|
</if>
|
|
GROUP BY POM.OBJID, POM.PURCHASE_ORDER_NO
|
|
ORDER BY SPLIT_PART( PURCHASE_ORDER_NO, '-', 3)::NUMERIC DESC
|
|
<!--
|
|
ORDER BY POM.PURCHASE_ORDER_NO DESC
|
|
-->
|
|
</select>
|
|
|
|
<select id="getContractNoList" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID::VARCHAR AS CODE
|
|
,CONTRACT_NO || '(' || CUSTOMER_PROJECT_NAME || ')' AS NAME
|
|
FROM CONTRACT_MGMT
|
|
WHERE 1=1
|
|
<if test="result_cd != null and result_cd != '' ">
|
|
AND result_cd = #{result_cd}
|
|
</if>
|
|
ORDER BY CONTRACT_NO
|
|
</select>
|
|
|
|
<select id="getCusProjectNoList" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID::VARCHAR AS CODE
|
|
,PROJECT_NO AS NAME
|
|
FROM PROJECT_MGMT
|
|
ORDER BY PROJECT_NO
|
|
</select>
|
|
|
|
<select id="getProgressProjectNoList" parameterType="map" resultType="map">
|
|
SELECT
|
|
P.OBJID::VARCHAR AS CODE_ID
|
|
,P.PROJECT_NO AS CODE_NAME
|
|
,(SELECT SUPPLY_NAME FROM SUPPLY_MNG SM WHERE SM.OBJID::VARCHAR = P.CUSTOMER_OBJID) || ' ' || P.PROJECT_NO || ' ' || C.PROJECT_NAME AS PROJ_INFO
|
|
,P.REQ_DEL_DATE
|
|
FROM PROJECT_MGMT P
|
|
INNER JOIN CONTRACT_MGMT C
|
|
ON C.OBJID = P.CONTRACT_OBJID
|
|
LEFT OUTER JOIN (
|
|
SELECT
|
|
T.CONTRACT_OBJID,
|
|
CASE
|
|
WHEN COUNT(CASE WHEN PARENT_OBJID IS NOT NULL AND PARENT_OBJID != '' THEN 1 END) = 0 THEN 0
|
|
ELSE ROUND((
|
|
COUNT(CASE WHEN SETUP_ACT_END != '' AND SETUP_ACT_END IS NOT NULL AND PARENT_OBJID IS NOT NULL AND PARENT_OBJID != '' THEN 1 END)::FLOAT
|
|
/
|
|
COUNT(CASE WHEN PARENT_OBJID IS NOT NULL AND PARENT_OBJID != '' THEN 1 END)
|
|
* 100
|
|
)::numeric, 1)
|
|
END AS SETUP_RATETOTAL
|
|
FROM
|
|
SETUP_WBS_TASK T
|
|
GROUP BY
|
|
T.CONTRACT_OBJID
|
|
) ST ON ST.CONTRACT_OBJID = P.OBJID
|
|
LEFT OUTER JOIN (
|
|
SELECT
|
|
CONTRACT_OBJID,
|
|
COUNT(CASE WHEN DESIGN_act_start IS NOT NULL AND DESIGN_act_start!='' THEN 1 END) AS DESIGN_START_COUNT
|
|
FROM
|
|
PMS_WBS_TASK
|
|
GROUP BY
|
|
CONTRACT_OBJID
|
|
) WT ON WT.CONTRACT_OBJID = P.OBJID
|
|
WHERE C.CONTRACT_RESULT = '0000964'
|
|
<if test="SEARCH_PROJECT_YEAR != null and SEARCH_PROJECT_YEAR !=''">
|
|
<!--
|
|
AND TO_CHAR(TO_DATE(C.CONTRACT_DATE, 'YYYY'), 'YYYY') = #{SEARCH_PROJECT_YEAR}
|
|
-->
|
|
AND #{SEARCH_PROJECT_YEAR} BETWEEN
|
|
(SELECT <!-- COALESCE( -->
|
|
LEAST(
|
|
MIN(TO_CHAR(TO_DATE(NULLIF(PURCHASE_PLAN_START, ''), 'YYYY'), 'YYYY')),
|
|
MIN(TO_CHAR(TO_DATE(NULLIF(PRODUCE_PLAN_START , ''), 'YYYY'), 'YYYY')),
|
|
MIN(TO_CHAR(TO_DATE(NULLIF(DESIGN_PLAN_START , ''), 'YYYY'), 'YYYY')),
|
|
MIN(TO_CHAR(TO_DATE(NULLIF(SETUP_PLAN_START , ''), 'YYYY'), 'YYYY'))
|
|
)<!-- , TO_CHAR(TO_DATE(C.CONTRACT_DATE, 'YYYY'), 'YYYY')) -->
|
|
FROM PMS_WBS_TASK O
|
|
WHERE O.CONTRACT_OBJID=P.OBJID)
|
|
AND (SELECT <!-- COALESCE( -->
|
|
GREATEST(
|
|
MAX(TO_CHAR(TO_DATE(NULLIF(PURCHASE_PLAN_END, ''), 'YYYY'), 'YYYY')),
|
|
MAX(TO_CHAR(TO_DATE(NULLIF(PRODUCE_PLAN_END , ''), 'YYYY'), 'YYYY')),
|
|
MAX(TO_CHAR(TO_DATE(NULLIF(DESIGN_PLAN_END , ''), 'YYYY'), 'YYYY')),
|
|
MAX(TO_CHAR(TO_DATE(NULLIF(SETUP_PLAN_END , ''), 'YYYY'), 'YYYY'))
|
|
)<!-- , TO_CHAR(TO_DATE(T.DUE_DATE, 'YYYY'), 'YYYY')) -->
|
|
FROM PMS_WBS_TASK O
|
|
WHERE O.CONTRACT_OBJID=P.OBJID)
|
|
</if>
|
|
<!--
|
|
AND SETUP_RATETOTAL != '100'
|
|
AND WT.DESIGN_START_COUNT > 0
|
|
-->
|
|
ORDER BY SUBSTRING(P.PROJECT_NO,POSITION('-' IN P.PROJECT_NO)+1) DESC
|
|
</select>
|
|
|
|
<!-- //유저 ID 조회 -->
|
|
<select id="getUserInfo" resultType="map" parameterType="map">
|
|
SELECT
|
|
SABUN
|
|
,USER_ID
|
|
,USER_NAME
|
|
FROM USER_INFO T
|
|
WHERE 1=1
|
|
AND USER_NAME = #{USER_NAME}
|
|
</select>
|
|
|
|
<select id="getPartBomProjectNameList" parameterType="map" resultType="map">
|
|
SELECT DISTINCT
|
|
CONTRACT_OBJID::VARCHAR AS CODE
|
|
,(SELECT PROJECT_NO FROM PROJECT_MGMT AS O WHERE O.OBJID = PMR.CONTRACT_OBJID)||'('||(SELECT PROJECT_NAME FROM PROJECT_MGMT AS O WHERE O.OBJID = PMR.CONTRACT_OBJID)||')' AS NAME
|
|
FROM PART_BOM_REPORT PMR
|
|
</select>
|
|
|
|
<select id="getPartBomProjectNameList2" parameterType="map" resultType="map">
|
|
SELECT DISTINCT
|
|
CONTRACT_OBJID::VARCHAR AS CODE
|
|
,(SELECT PROJECT_NO FROM PROJECT_MGMT AS O WHERE O.OBJID = PMR.CONTRACT_OBJID) AS NAME
|
|
FROM PART_BOM_REPORT PMR
|
|
</select>
|
|
|
|
<select id="getBomUnitCodeList" parameterType="map" resultType="map">
|
|
SELECT
|
|
UNIT_CODE AS CODE
|
|
,( SELECT
|
|
CASE WHEN NVL(UNIT_NO, '') = '' THEN TASK_NAME
|
|
WHEN LENGTH(UNIT_NO) > 0 AND UNIT_NO = SUBSTR(TASK_NAME, 0, LENGTH(UNIT_NO)+1) THEN TASK_NAME
|
|
ELSE T.UNIT_NO || '-' || T.TASK_NAME END AS NAME
|
|
FROM PMS_WBS_TASK T WHERE T.OBJID = PMR.UNIT_CODE) AS NAME
|
|
<!-- ,(SELECT CODE_NAME FROM COMM_CODE AS O WHERE O.CODE_ID = PMR.UNIT_CODE) AS NAME -->
|
|
FROM PART_BOM_REPORT PMR
|
|
WHERE CONTRACT_OBJID = #{OBJID}
|
|
</select>
|
|
|
|
<select id="getBomPartList" parameterType="map" resultType="map">
|
|
SELECT
|
|
BPQ.PART_NO::VARCHAR AS CODE
|
|
,(SELECT PART_NO FROM PART_MNG AS O WHERE O.OBJID::VARCHAR = BPQ.PART_NO) AS NAME
|
|
,(SELECT PART_NAME FROM PART_MNG AS O WHERE O.OBJID::VARCHAR = BPQ.PART_NO) AS PART_NAME
|
|
,(SELECT SPEC FROM PART_MNG AS O WHERE O.OBJID::VARCHAR = BPQ.PART_NO) AS SPEC
|
|
,(SELECT MAKER FROM PART_MNG AS O WHERE O.OBJID::VARCHAR = BPQ.PART_NO) AS MAKER
|
|
,(SELECT MATERIAL FROM PART_MNG AS O WHERE O.OBJID::VARCHAR = BPQ.PART_NO) AS MATERIAL
|
|
,(SELECT code_name(PART_TYPE) FROM PART_MNG AS O WHERE O.OBJID::VARCHAR = BPQ.PART_NO) AS PART_TYPE
|
|
FROM PART_BOM_REPORT PMR , BOM_PART_QTY BPQ
|
|
WHERE PMR.OBJID = BPQ.BOM_REPORT_OBJID::VARCHAR
|
|
AND PMR.CONTRACT_OBJID=#{OBJID}
|
|
AND PMR.UNIT_CODE = #{UNIT_CODE}
|
|
</select>
|
|
|
|
<select id="getBomPartLastList" parameterType="map" resultType="map">
|
|
SELECT
|
|
P.OBJID AS CODE
|
|
, P.PART_NO AS NAME
|
|
, P.OBJID
|
|
, P.PART_NO
|
|
, P.PART_NAME
|
|
, P.SPEC
|
|
, P.MAKER
|
|
FROM PART_MNG P
|
|
WHERE 1=1
|
|
AND P.IS_LAST = '1'
|
|
AND P.OBJID IN (
|
|
SELECT LAST_PART_OBJID
|
|
<!--
|
|
(SELECT PM1.OBJID
|
|
FROM PART_MNG PM1
|
|
, PART_MNG PM2
|
|
WHERE PM1.IS_LAST = '1'
|
|
AND PM2.OBJID = BPQ.PART_NO
|
|
AND PM1.PART_NO = PM2.PART_NO)
|
|
-->
|
|
FROM PART_BOM_REPORT PMR
|
|
, BOM_PART_QTY BPQ
|
|
WHERE PMR.OBJID = BPQ.BOM_REPORT_OBJID::VARCHAR
|
|
AND PMR.CONTRACT_OBJID = #{OBJID}
|
|
AND PMR.UNIT_CODE = #{UNIT_CODE}
|
|
AND BPQ.STATUS IN ('editing', 'deleting', 'deploy', 'beforeEdit')
|
|
)
|
|
ORDER BY PART_NO
|
|
<!--
|
|
SELECT
|
|
BPQ.PART_NO::VARCHAR AS CODE
|
|
,P.PART_NO NAME
|
|
,P.PART_NAME
|
|
,P.SPEC
|
|
,P.MAKER
|
|
FROM PART_BOM_REPORT PMR
|
|
,BOM_PART_QTY BPQ
|
|
,PART_MNG P
|
|
WHERE PMR.OBJID = BPQ.BOM_REPORT_OBJID::VARCHAR
|
|
AND PMR.CONTRACT_OBJID=#{OBJID}
|
|
AND PMR.UNIT_CODE = #{UNIT_CODE}
|
|
AND BPQ.STATUS IN ('editing','deleting', 'deploy')
|
|
AND P.IS_LAST = '1'
|
|
AND P.OBJID = ( SELECT PM1.OBJID
|
|
FROM PART_MNG PM1
|
|
,PART_MNG PM2
|
|
WHERE PM1.IS_LAST = '1'
|
|
AND PM2.OBJID = BPQ.PART_NO
|
|
AND PM1.PART_NO = PM2.PART_NO
|
|
)
|
|
-->
|
|
</select>
|
|
|
|
<select id="getUnitTitleCodeList" parameterType="map" resultType="map">
|
|
SELECT
|
|
TITLE AS CODE
|
|
,TITLE AS NAME
|
|
FROM PMS_WBS_TEMPLATE
|
|
WHERE PRODUCT_OBJID = #{OBJID}
|
|
ORDER BY TITLE
|
|
</select>
|
|
|
|
<select id="getworkmailList" parameterType="map" resultType="map">
|
|
SELECT
|
|
(SELECT EMAIL FROM USER_INFO AS O WHERE O.USER_ID = T.USER_ID ) AS EMAIL
|
|
FROM WORK_MAIL_LIST AS T
|
|
WHERE T.MAILTYPE = #{MAILTYPE}
|
|
</select>
|
|
|
|
<select id="getMechanicalTypeList" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID::VARCHAR AS CODE,
|
|
TITLE as NAME,
|
|
PRODUCT_OBJID
|
|
FROM
|
|
PMS_WBS_TEMPLATE
|
|
WHERE 1=1
|
|
</select>
|
|
|
|
<select id="getStdCodeNameList" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID::VARCHAR AS CODE
|
|
,CODE_NAME AS NAME
|
|
,CODE_ID
|
|
FROM PROCUREMENT_STANDARD
|
|
<if test="search_category != null and !''.equals(search_category)">
|
|
WHERE CATEGORY = #{search_category}
|
|
</if>
|
|
|
|
ORDER BY CODE_NAME
|
|
</select>
|
|
|
|
<select id="getStdCodeIDList" parameterType="map" resultType="map">
|
|
SELECT
|
|
OBJID::VARCHAR AS CODE
|
|
,CODE_ID AS NAME
|
|
FROM PROCUREMENT_STANDARD
|
|
<if test="search_category != null and !''.equals(search_category)">
|
|
WHERE CATEGORY = #{search_category}
|
|
</if>
|
|
|
|
ORDER BY CODE_ID
|
|
</select>
|
|
|
|
<!-- 사용자 권한 체크 -->
|
|
<select id="checkUserAuthority" parameterType="map" resultType="int">
|
|
SELECT COUNT(*)
|
|
FROM AUTHORITY_SUB_USER
|
|
WHERE USER_ID = #{userId}
|
|
AND MASTER_OBJID::varchar = #{masterObjid}
|
|
</select>
|
|
|
|
<!-- 고객사 정보 조회 (공급업체 + 일반거래처 통합) -->
|
|
<select id="getSupplyInfo" parameterType="map" resultType="map">
|
|
<choose>
|
|
<!-- 일반거래처인 경우 (C_로 시작) -->
|
|
<when test="objId != null and objId.startsWith('C_')">
|
|
SELECT
|
|
C.OBJID,
|
|
C.CLIENT_CD AS SUPPLY_CODE,
|
|
C.CLIENT_NM AS SUPPLY_NAME,
|
|
C.BUS_REG_NO AS REG_NO,
|
|
C.ADDR1 AS SUPPLY_ADDRESS,
|
|
C.BUS_TYPE AS SUPPLY_BUSNAME,
|
|
C.BUS_ITEM AS SUPPLY_STOCKNAME,
|
|
C.TEL_NO AS SUPPLY_TEL_NO,
|
|
C.FAX_NO AS SUPPLY_FAX_NO,
|
|
C.CEO_NM AS CHARGE_USER_NAME,
|
|
C.PAYMENT_TERM AS PAYMENT_METHOD,
|
|
(SELECT CHARGER_NAME FROM SUPPLY_CHARGER_MNG WHERE SUPPLY_OBJID::VARCHAR = C.OBJID::VARCHAR ORDER BY REGDATE LIMIT 1 OFFSET 0) AS MANAGER1_NAME,
|
|
(SELECT EMAIL FROM SUPPLY_CHARGER_MNG WHERE SUPPLY_OBJID::VARCHAR = C.OBJID::VARCHAR ORDER BY REGDATE LIMIT 1 OFFSET 0) AS MANAGER1_EMAIL,
|
|
(SELECT CHARGER_NAME FROM SUPPLY_CHARGER_MNG WHERE SUPPLY_OBJID::VARCHAR = C.OBJID::VARCHAR ORDER BY REGDATE LIMIT 1 OFFSET 1) AS MANAGER2_NAME,
|
|
(SELECT EMAIL FROM SUPPLY_CHARGER_MNG WHERE SUPPLY_OBJID::VARCHAR = C.OBJID::VARCHAR ORDER BY REGDATE LIMIT 1 OFFSET 1) AS MANAGER2_EMAIL,
|
|
(SELECT CHARGER_NAME FROM SUPPLY_CHARGER_MNG WHERE SUPPLY_OBJID::VARCHAR = C.OBJID::VARCHAR ORDER BY REGDATE LIMIT 1 OFFSET 2) AS MANAGER3_NAME,
|
|
(SELECT EMAIL FROM SUPPLY_CHARGER_MNG WHERE SUPPLY_OBJID::VARCHAR = C.OBJID::VARCHAR ORDER BY REGDATE LIMIT 1 OFFSET 2) AS MANAGER3_EMAIL,
|
|
(SELECT CHARGER_NAME FROM SUPPLY_CHARGER_MNG WHERE SUPPLY_OBJID::VARCHAR = C.OBJID::VARCHAR ORDER BY REGDATE LIMIT 1 OFFSET 3) AS MANAGER4_NAME,
|
|
(SELECT EMAIL FROM SUPPLY_CHARGER_MNG WHERE SUPPLY_OBJID::VARCHAR = C.OBJID::VARCHAR ORDER BY REGDATE LIMIT 1 OFFSET 3) AS MANAGER4_EMAIL,
|
|
(SELECT CHARGER_NAME FROM SUPPLY_CHARGER_MNG WHERE SUPPLY_OBJID::VARCHAR = C.OBJID::VARCHAR ORDER BY REGDATE LIMIT 1 OFFSET 4) AS MANAGER5_NAME,
|
|
(SELECT EMAIL FROM SUPPLY_CHARGER_MNG WHERE SUPPLY_OBJID::VARCHAR = C.OBJID::VARCHAR ORDER BY REGDATE LIMIT 1 OFFSET 4) AS MANAGER5_EMAIL
|
|
FROM CLIENT_MNG C
|
|
WHERE C.OBJID::VARCHAR = REPLACE(#{objId}, 'C_', '')
|
|
</when>
|
|
<!-- 공급업체인 경우 -->
|
|
<otherwise>
|
|
SELECT
|
|
OBJID,
|
|
SUPPLY_CODE,
|
|
SUPPLY_NAME,
|
|
REG_NO,
|
|
SUPPLY_ADDRESS,
|
|
SUPPLY_BUSNAME,
|
|
SUPPLY_STOCKNAME,
|
|
SUPPLY_TEL_NO,
|
|
SUPPLY_FAX_NO,
|
|
CHARGE_USER_NAME,
|
|
PAYMENT_METHOD,
|
|
MANAGER1_NAME,
|
|
MANAGER1_EMAIL,
|
|
MANAGER2_NAME,
|
|
MANAGER2_EMAIL,
|
|
MANAGER3_NAME,
|
|
MANAGER3_EMAIL,
|
|
MANAGER4_NAME,
|
|
MANAGER4_EMAIL,
|
|
MANAGER5_NAME,
|
|
MANAGER5_EMAIL
|
|
FROM SUPPLY_MNG
|
|
WHERE OBJID = #{objId}::numeric
|
|
</otherwise>
|
|
</choose>
|
|
</select>
|
|
</mapper> |