- Add Docker Compose configurations for dev, prod, and standalone environments - Add database initialization scripts (init-db.sh, init-db-docker.sh) - Add enhanced start-docker-linux.sh with DB init support - Add comprehensive database initialization guide - Support for automatic dbexport.pgsql import on first run - Include safety checks for production environment
840 lines
30 KiB
XML
840 lines
30 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">
|
|
|
|
<!--
|
|
/**
|
|
* 영업관리 공통 쿼리
|
|
* @since 2021.10.01
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.10.01 김효일 최초작성
|
|
**/
|
|
-->
|
|
<mapper namespace="salesMgmtCommon">
|
|
|
|
<!--
|
|
/**
|
|
* 고객 목록 조회
|
|
* @since 2021.10.01
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.10.01 김효일 최초작성
|
|
**/
|
|
-->
|
|
<select id="getCustomerList" resultType="map">
|
|
/* salesMgmtCommon.getCustomerList */
|
|
SELECT custCd AS code /* 고객코드 */
|
|
, CUSTNM AS name /* 고객명 */
|
|
FROM SWSB210A_TBL A
|
|
ORDER BY custNm ASC /* 고객명 */
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 고객 조회
|
|
* @since 2021.10.01
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.10.01 김효일 최초작성
|
|
**/
|
|
-->
|
|
<select id="getCustomer" resultType="map" parameterType="java.lang.String">
|
|
/* salesMgmtCommon.getCustomer */
|
|
SELECT custCd /* 고객코드 */
|
|
, custNm /* 고객명 */
|
|
, taxNo1 /* 사업자번호 */
|
|
, taxNo2 /* 법인/주민번호 */
|
|
, custBoss /* 대표자명 */
|
|
, deptCd /* 영업부서 */
|
|
, (SELECT dept_name FROM DEPT_INFO WHERE dept_code = A.deptCd) AS deptNm /* 영업부서명 */
|
|
, salesMan /* 영업담당자ID */
|
|
, (SELECT user_name FROM USER_INFO WHERE user_id = A.salesMan) AS salesman_nm /* 영업담당자명 */
|
|
FROM SWSB210A_TBL A
|
|
WHERE custCd = #{custCd} /* 고객코드 */
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 관리부서 목록 조회
|
|
* @since 2021.10.01
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.10.01 김효일 최초작성
|
|
**/
|
|
-->
|
|
<select id="getBDeptList" resultType="map" parameterType="map">
|
|
/* salesMgmtCommon.getBDeptList */
|
|
SELECT dept_code AS code
|
|
, dept_name AS name
|
|
FROM DEPT_INFO
|
|
WHERE STATUS = 'active'
|
|
ORDER BY dept_name ASC
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 관리담당자 목록 조회
|
|
* @since 2021.10.01
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.10.01 김효일 최초작성
|
|
**/
|
|
-->
|
|
<select id="getBEmpList" resultType="map" parameterType="map">
|
|
/* salesMgmtCommon.getBEmpList */
|
|
SELECT user_id AS code
|
|
, user_name AS name
|
|
FROM USER_INFO
|
|
WHERE 1 = 1
|
|
<if test='deptCd != null and deptCd !=""'>
|
|
AND dept_code = #{deptCd}
|
|
</if>
|
|
AND status = 'active'
|
|
ORDER BY user_name ASC
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 제품코드 목록 조회
|
|
* @since 2021.10.01
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.10.01 김효일 최초작성
|
|
**/
|
|
-->
|
|
<select id="getGoodsList" resultType="map" parameterType="map">
|
|
/* salesMgmtCommon.getGoodsList */
|
|
SELECT goodsCd AS code
|
|
, goodsNm AS name
|
|
FROM SWSB110A_TBL A
|
|
ORDER BY goodsNm ASC
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 제품 조회
|
|
* @since 2021.10.01
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.10.01 김효일 최초작성
|
|
**/
|
|
-->
|
|
<select id="getGoods" resultType="map" parameterType="map">
|
|
/* salesMgmtCommon.getGoods */
|
|
SELECT A.goodscd /* 제품코드 */
|
|
, A.c_class
|
|
, CASE WHEN LENGTH(C_Class) = 4 then A.C_Class || ' - ' ||
|
|
(SELECT ltrim(rtrim(DTL_NM)) from SWSA999A_TBL where COMM_CD = 'S110' AND SUBSTRING(DTL_CD,1,1) = SUBSTRING(A.C_Class,1,1)) || ' - ' ||
|
|
(SELECT ltrim(rtrim(DTL_NM)) from SWSA999A_TBL where COMM_CD = 'S120' AND SUBSTRING(DTL_CD,1,3) = SUBSTRING(A.C_Class,1,3)) || ' - ' ||
|
|
(SELECT ltrim(rtrim(DTL_NM)) from SWSA999A_TBL where COMM_CD = 'S130' AND DTL_CD = A.C_Class )
|
|
ELSE '' END AS c_classNm /* 제품그룹명 */
|
|
, A.goodsguarantee /* 보증기간 */
|
|
, B.imItemNm /* 제품명 */
|
|
, B.imItemSpec /* 규격 */
|
|
, B.imUnit /* 단위 */
|
|
, C.product_code /* 양산제품코드 */
|
|
FROM SWSB110A_TBL A
|
|
INNER JOIN SWPA100A_TBL B ON
|
|
A.goodsCd = B.imItemId /* 제품코드 */
|
|
INNER JOIN PRODUCT_MGMT C ON
|
|
A.goodsCd = C.objid:: VARCHAR /* 제품코드 */
|
|
ORDER BY B.imItemNm ASC
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 공통코드 목록 조회
|
|
* @since 2021.10.01
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.10.01 김효일 최초작성
|
|
**/
|
|
-->
|
|
<select id="getCodeList" resultType="map" parameterType="map">
|
|
/* salesMgmtCommon.getCodeList */
|
|
SELECT MINORCD AS code
|
|
, CDNM AS name
|
|
FROM SWSA050A_TBL
|
|
WHERE MajorCd = #{majorCd}
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 영업부서 목록 조회
|
|
* @since 2021.10.01
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.10.01 김효일 최초작성
|
|
**/
|
|
-->
|
|
<select id="getDeptList" resultType="map" parameterType="map">
|
|
/* salesMgmtCommon.getDeptList */
|
|
SELECT dept_code AS code
|
|
, dept_name AS name
|
|
FROM DEPT_INFO
|
|
WHERE STATUS = 'active'
|
|
AND sales_yn = 'Y'
|
|
ORDER BY dept_name ASC
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 영업담당자 목록 조회
|
|
* @since 2021.10.01
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.10.01 김효일 최초작성
|
|
* 2021.10.05 민상익 deptCd 조건추가
|
|
* 2021.11.23 민상익 if deptCd 조건줌.
|
|
**/
|
|
-->
|
|
<select id="getSalesmanList" resultType="map" parameterType="map">
|
|
/* salesMgmtCommon.getSalesmanList */
|
|
SELECT user_id AS code
|
|
, user_name AS name
|
|
FROM USER_INFO
|
|
WHERE 1=1
|
|
<if test="deptCd != null and deptCd != ''">
|
|
AND dept_code = #{deptCd}
|
|
</if>
|
|
AND status = 'active'
|
|
ORDER BY user_name ASC
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 장착지 목록 조회
|
|
* @since 2021.10.01
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.10.01 김효일 최초작성
|
|
**/
|
|
-->
|
|
<select id="getOutRegionList" resultType="map" parameterType="map">
|
|
/* salesMgmtCommon.getOutRegionList */
|
|
SELECT CUSTCD AS code
|
|
, CUSTNM AS name
|
|
FROM SWSB011A_TBL A
|
|
ORDER BY CUSTNM ASC
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* AS지사 목록 조회
|
|
* @since 2021.10.01
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.10.01 김효일 최초작성
|
|
**/
|
|
-->
|
|
<select id="getAreaList" parameterType="map" resultType="map">
|
|
/* salesMgmtCommon.getAreaList */
|
|
SELECT CONCAT(areaA, areaB, areaC, areaD) AS code
|
|
, areaName AS name
|
|
FROM SWJA050A_TBL A
|
|
ORDER BY areaName ASC
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 검색용 양산제품 목록 조회
|
|
* @since 2021.11.04
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.11.04 김효일 최초작성
|
|
**/
|
|
-->
|
|
<select id="getSearchProductList" resultType="map" parameterType="map">
|
|
/* salesMgmtCommon.getSearchProductList */
|
|
SELECT *
|
|
FROM (
|
|
SELECT ROW_NUMBER() OVER (ORDER BY product_code) AS RNUM
|
|
, A.product_code /* 양산제품명 */
|
|
, B.spec_name /* 사양명 */
|
|
, A.product_code||'_'||B.spec_name AS product_name /* 양산제품명 */
|
|
, A.objid||'_'||B.objid AS product_id /* 양산제품ID */
|
|
, A.objid::VARCHAR
|
|
, B.objid::VARCHAR AS master_objid
|
|
, (SELECT code_name FROM COMM_CODE WHERE code_id = A.product_category) AS product_category /* 제품구분 */
|
|
, (SELECT code_name FROM COMM_CODE WHERE code_id = A.product_type) AS product_type /* Type */
|
|
, (SELECT code_name FROM COMM_CODE WHERE code_id = A.product_grade) AS product_grade /* Grade */
|
|
, (SELECT code_name FROM COMM_CODE WHERE code_id = A.product_ton) AS product_ton /* 톤(Ton)수 */
|
|
, (SELECT code_name FROM COMM_CODE WHERE code_id = A.product_boom) AS product_boom /* BOOM단수 */
|
|
, (SELECT code_name FROM COMM_CODE WHERE code_id = A.product_vehicle) AS product_vechile /* Vechile */
|
|
, (SELECT code_name FROM COMM_CODE WHERE code_id = A.production_flag) AS product_flag /* 생산여부 */
|
|
FROM PRODUCT_MGMT A
|
|
INNER JOIN PRODUCT_MGMT_UPG_MASTER B ON
|
|
A.objid = B.target_objid
|
|
WHERE 1 = 1
|
|
<if test="condProductNm != null and condProductNm != ''">
|
|
AND product_code LIKE CONCAT('%', #{condProductNm}, '%') /* 양산제품코드 */
|
|
</if>
|
|
ORDER BY product_code ASC /* 양산제품코드 */
|
|
) T
|
|
WHERE 1=1
|
|
<if test="PAGE_END != null and PAGE_END != ''">
|
|
<![CDATA[ AND RNUM <= #{PAGE_END}::integer ]]>
|
|
</if>
|
|
<if test="PAGE_START != null and PAGE_START != ''">
|
|
<![CDATA[ AND RNUM >= #{PAGE_START}::integer ]]>
|
|
</if>
|
|
|
|
<!--
|
|
SELECT *
|
|
FROM (
|
|
SELECT ROW_NUMBER() OVER (ORDER BY product_code) AS RNUM
|
|
, A.product_code /* 양산제품코드 */
|
|
, (SELECT code_name FROM COMM_CODE WHERE code_id = A.product_category) AS product_category /* 제품구분 */
|
|
, (SELECT code_name FROM COMM_CODE WHERE code_id = A.product_type) AS product_type /* Type */
|
|
, (SELECT code_name FROM COMM_CODE WHERE code_id = A.product_grade) AS product_grade /* Grade */
|
|
, (SELECT code_name FROM COMM_CODE WHERE code_id = A.product_ton) AS product_ton /* 톤(Ton)수 */
|
|
, (SELECT code_name FROM COMM_CODE WHERE code_id = A.product_boom) AS product_boom /* BOOM단수 */
|
|
, (SELECT code_name FROM COMM_CODE WHERE code_id = A.product_vehicle) AS product_vechile /* Vechile */
|
|
, (SELECT code_name FROM COMM_CODE WHERE code_id = A.production_flag) AS product_flag /* 생산여부 */
|
|
FROM PRODUCT_MGMT A
|
|
WHERE 1 = 1
|
|
<if test="condProductNm != null and condProductNm != ''">
|
|
AND product_code LIKE CONCAT('%', #{condProductNm}, '%') /* 양산제품코드 */
|
|
</if>
|
|
ORDER BY product_code ASC /* 양산제품코드 */
|
|
) T
|
|
WHERE 1=1
|
|
<if test="PAGE_END != null and PAGE_END != ''">
|
|
<![CDATA[ AND RNUM <= #{PAGE_END}::integer ]]>
|
|
</if>
|
|
<if test="PAGE_START != null and PAGE_START != ''">
|
|
<![CDATA[ AND RNUM >= #{PAGE_START}::integer ]]>
|
|
</if>
|
|
-->
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 검색용 형상제품 로우카운트 조회
|
|
* @since 2021.11.04
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.11.04 김효일 최초작성
|
|
**/
|
|
-->
|
|
<select id="getSearchProductListCnt" parameterType="map" resultType="map">
|
|
/* salesMgmtCommon.getSearchProductListCnt */
|
|
SELECT CEIL(TOTAL_CNT/#{COUNT_PER_PAGE})::numeric::integer AS MAX_PAGE_SIZE
|
|
, TOTAL_CNT::integer
|
|
FROM (
|
|
SELECT COUNT(1)::float TOTAL_CNT
|
|
FROM (
|
|
SELECT *
|
|
FROM PRODUCT_MGMT
|
|
WHERE 1 = 1
|
|
<if test="condProductNm != null and condProductNm != ''">
|
|
AND product_code LIKE CONCAT('%', #{condProductNm}, '%') /* 양산제품코드 */
|
|
</if>
|
|
) T
|
|
) T
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 검색용 고객 목록 조회
|
|
* @since 2021.11.04
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.11.04 김효일 최초작성
|
|
**/
|
|
-->
|
|
<select id="getSearchCustomerList" resultType="map" parameterType="map">
|
|
/* salesMgmtCommon.getSearchCustomerList */
|
|
SELECT *
|
|
FROM (
|
|
SELECT ROW_NUMBER() OVER (ORDER BY custNm) AS RNUM
|
|
, custCd /* 고객코드 */
|
|
, custNm /* 고객명 */
|
|
, taxNo1 /* 사업자번호 */
|
|
, taxNo2 /* 법인/주민번호 */
|
|
, custBoss /* 대표자명 */
|
|
, deptCd /* 영업부서 */
|
|
, (SELECT dept_name FROM DEPT_INFO WHERE dept_code = A.deptCd) AS deptNm /* 영업부서명 */
|
|
, salesMan /* 영업담당자ID */
|
|
, (SELECT user_name FROM USER_INFO WHERE user_id = A.salesMan) AS salesmanNm /* 영업담당자명 */
|
|
FROM SWSB210A_TBL A
|
|
WHERE 1 = 1
|
|
<if test="condCustNm != null and condCustNm != ''">
|
|
AND custNm LIKE CONCAT('%', #{condCustNm}, '%') /* 고객명 */
|
|
</if>
|
|
) T
|
|
WHERE 1=1
|
|
<if test="PAGE_END != null and PAGE_END != ''">
|
|
<![CDATA[ AND RNUM <= #{PAGE_END}::integer ]]>
|
|
</if>
|
|
<if test="PAGE_START != null and PAGE_START != ''">
|
|
<![CDATA[ AND RNUM >= #{PAGE_START}::integer ]]>
|
|
</if>
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 검색용 고객 로우카운트 조회
|
|
* @since 2021.11.04
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.11.04 김효일 최초작성
|
|
**/
|
|
-->
|
|
<select id="getSearchCustomerListCnt" parameterType="map" resultType="map">
|
|
/* salesMgmtCommon.getSearchCustomerListCnt */
|
|
SELECT CEIL(TOTAL_CNT/#{COUNT_PER_PAGE})::numeric::integer AS MAX_PAGE_SIZE
|
|
, TOTAL_CNT::integer
|
|
FROM (
|
|
SELECT COUNT(1)::float TOTAL_CNT
|
|
FROM (
|
|
SELECT *
|
|
FROM SWSB210A_TBL
|
|
WHERE 1 = 1
|
|
<if test="condCustNm != null and condCustNm != ''">
|
|
AND custNm LIKE CONCAT('%', #{condCustNm}, '%') /* 고객명 */
|
|
</if>
|
|
) T
|
|
) T
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 검색용 제품 목록 조회
|
|
* @since 2021.10.01
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.10.01 김효일 최초작성
|
|
**/
|
|
-->
|
|
<select id="getSearchGoodsList" resultType="map" parameterType="map">
|
|
/* salesMgmtCommon.getSearchGoodsList */
|
|
SELECT *
|
|
FROM (
|
|
SELECT ROW_NUMBER() OVER (ORDER BY goodsNm) AS RNUM
|
|
, A.goodscd /* 제품코드 */
|
|
, A.goodsNm /* 제품명 */
|
|
, A.goodsSpec /* 규격 */
|
|
, A.goodsUnit /* 단위 */
|
|
, A.c_class /* 제품그룹 */
|
|
, CASE WHEN A.c_class IS NOT NULL then
|
|
CONCAT(
|
|
(SELECT ltrim(rtrim(DTL_NM)) from SWSA999A_TBL where COMM_CD = 'S110' AND SUBSTRING(DTL_CD,1,1) = SUBSTRING(A.c_class,1,1)),
|
|
'-',
|
|
(SELECT ltrim(rtrim(DTL_NM)) from SWSA999A_TBL where COMM_CD = 'S120' AND SUBSTRING(DTL_CD,1,3) = SUBSTRING(A.c_class,1,3)),
|
|
'-',
|
|
(SELECT ltrim(rtrim(DTL_NM)) from SWSA999A_TBL where COMM_CD = 'S130' AND DTL_CD = A.c_class )
|
|
)
|
|
ELSE '' END AS c_classNm /* 제품그룹명 */
|
|
, A.goodsguarantee /* 보증기간 */
|
|
FROM SWSB110A_TBL A
|
|
WHERE 1 = 1
|
|
<if test="condGoodsNm != null and condGoodsNm != ''">
|
|
AND goodsNm = #{condGoodsNm} /* 제품명 */
|
|
</if>
|
|
) T
|
|
WHERE 1=1
|
|
<if test="PAGE_END != null and PAGE_END != ''">
|
|
<![CDATA[ AND RNUM <= #{PAGE_END}::integer ]]>
|
|
</if>
|
|
<if test="PAGE_START != null and PAGE_START != ''">
|
|
<![CDATA[ AND RNUM >= #{PAGE_START}::integer ]]>
|
|
</if>
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 검색용 제품 로우카운트 조회
|
|
* @since 2021.10.01
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.10.01 김효일 최초작성
|
|
**/
|
|
-->
|
|
<select id="getSearchGoodsListCnt" parameterType="map" resultType="map">
|
|
/* salesMgmtCommon.getSearchGoodsListCnt */
|
|
SELECT CEIL(TOTAL_CNT/#{COUNT_PER_PAGE})::numeric::integer AS MAX_PAGE_SIZE
|
|
, TOTAL_CNT::integer
|
|
FROM (
|
|
SELECT COUNT(1)::float TOTAL_CNT
|
|
FROM (
|
|
SELECT *
|
|
FROM SWSB110A_TBL A
|
|
WHERE 1 = 1
|
|
<if test="condGoodsNm != null and condGoodsNm != ''">
|
|
AND goodsNm = #{condGoodsNm} /* 제품명 */
|
|
</if>
|
|
) T
|
|
) T
|
|
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 검색용 계약 목록 조회
|
|
* @since 2021.10.01
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.10.01 김효일 최초작성
|
|
**/
|
|
-->
|
|
<select id="getSearchContractList" resultType="map" parameterType="map">
|
|
/* salesMgmtCommon.getSearchContractList */
|
|
SELECT *
|
|
FROM (
|
|
SELECT ROW_NUMBER() OVER (ORDER BY A.CRET_DATE) AS RNUM
|
|
, A.*
|
|
, (SELECT CdNm FROM SWSA050A_TBL WHERE MajorCd = 'SE' AND MinorCd = A.OrderUnit) AS orderUnitNm /* 시장구분명 */
|
|
, (CASE A.SaleGB WHEN '0' THEN '일반' WHEN '1' THEN '대리점' END) AS saleGBNm /* 판매구분명 */
|
|
, (SELECT CdNm FROM SWSA050A_TBL WHERE MajorCd = 'GE' AND MinorCd = A.SaleType) AS saleTypeNm /* 판매유형명 */
|
|
, (SELECT CustNm FROM SWSB210A_TBL WHERE CustCd = A.CustCd) AS custNm /* 고객명 */
|
|
, (SELECT GoodsNm FROM SWSB110A_TBL WHERE GoodsCd = A.GoodsCd) AS goodsNm /* 제품명 */
|
|
, B.CustNm /* 고객명 */
|
|
, B.CustBoss /* 대표자명 */
|
|
, B.TaxNo1 /* 사업자번호 */
|
|
, B.TaxNo2 /* 법인/주민번호 */
|
|
, B.adrs AS custAdrs /* 고객주소 */
|
|
, C.goodsNm /* 제품명 */
|
|
, C.goodsSpec /* 제품규격 */
|
|
, C.c_class /* 제품그룹 */
|
|
, CASE WHEN C.c_class IS NOT NULL then
|
|
CONCAT(
|
|
(SELECT ltrim(rtrim(DTL_NM)) from SWSA999A_TBL where COMM_CD = 'S110' AND SUBSTRING(DTL_CD,1,1) = SUBSTRING(C.c_class,1,1)),
|
|
'-',
|
|
(SELECT ltrim(rtrim(DTL_NM)) from SWSA999A_TBL where COMM_CD = 'S120' AND SUBSTRING(DTL_CD,1,3) = SUBSTRING(C.c_class,1,3)),
|
|
'-',
|
|
(SELECT ltrim(rtrim(DTL_NM)) from SWSA999A_TBL where COMM_CD = 'S130' AND DTL_CD = C.c_class )
|
|
)
|
|
ELSE '' END AS c_classNm /* 제품그룹명 */
|
|
FROM SWSC110A_TBL A
|
|
LEFT OUTER JOIN SWSB210A_TBL B
|
|
ON A.CustCd = B.CustCd /* 고객코드 */
|
|
LEFT OUTER JOIN SWSB110A_TBL C
|
|
ON A.goodsCd = C.goodsCd /* 제품코드 */
|
|
WHERE 1 = 1
|
|
<if test='condDeliveryType == "12"'>
|
|
AND A.chulhaYN = '1' /* 출하 */
|
|
</if>
|
|
<if test='condDeliveryType == "11" or condDeliveryType == "21"'>
|
|
AND A.chulhaYN <![CDATA[ <> ]]> '1' /* 특장출고 */
|
|
</if>
|
|
<if test='condOrderNo != null and condOrderNo != ""'>
|
|
AND A.orderNo = #{condOrderNo} /* 계약번호 */
|
|
</if>
|
|
) T
|
|
WHERE 1=1
|
|
<if test="PAGE_END != null and PAGE_END != ''">
|
|
<![CDATA[ AND RNUM <= #{PAGE_END}::integer ]]>
|
|
</if>
|
|
<if test="PAGE_START != null and PAGE_START != ''">
|
|
<![CDATA[ AND RNUM >= #{PAGE_START}::integer ]]>
|
|
</if>
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 검색용 계약 로우카운트 조회
|
|
* @since 2021.10.01
|
|
* @author kim
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.10.01 김효일 최초작성
|
|
**/
|
|
-->
|
|
<select id="getSearchContractListCnt" parameterType="map" resultType="map">
|
|
/* salesMgmtCommon.getSearchContractListCnt */
|
|
SELECT CEIL(TOTAL_CNT/#{COUNT_PER_PAGE})::numeric::integer AS MAX_PAGE_SIZE
|
|
, TOTAL_CNT::integer
|
|
FROM (
|
|
SELECT COUNT(1)::float TOTAL_CNT
|
|
FROM (
|
|
SELECT *
|
|
FROM SWSC110A_TBL A
|
|
LEFT OUTER JOIN SWSB210A_TBL B
|
|
ON A.CustCd = B.CustCd /* 고객코드 */
|
|
LEFT OUTER JOIN SWSB110A_TBL C
|
|
ON A.goodsCd = C.goodsCd /* 제품코드 */
|
|
WHERE 1 = 1
|
|
<if test="condDeliveryType == '12'">
|
|
AND A.chulhaYN = '1' /* 출하 */
|
|
</if>
|
|
<if test="condDeliveryType == '11' or condDeliveryType == '21'">
|
|
<if test="condAcntUnit == '1'">
|
|
AND A.chulhaYN = '1'' /* 크레인출고 */
|
|
</if>
|
|
<if test="condAcntUnit == '2'">
|
|
AND A.chulhaYN <![CDATA[ <> ]]> '1' /* 특장출고 */
|
|
</if>
|
|
</if>
|
|
<if test="condOrderNo != null and condOrderNo != ''">
|
|
AND A.orderNo = #{condOrderNo} /* 계약번호 */
|
|
</if>
|
|
) T
|
|
) T
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 제품그룹 목록 조회
|
|
* @since 2021.11.04
|
|
* @author min
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.11.04 민상익 최초작성
|
|
**/
|
|
-->
|
|
|
|
<select id="getSWSA999A" resultType="map" parameterType="map">
|
|
/* salesMgmtCommon.getSWSA999A */
|
|
SELECT DTL_CD AS code
|
|
, CASE WHEN LENGTH(A.DTL_CD) > 4 then
|
|
CONCAT(
|
|
A.DTL_CD,
|
|
'-',
|
|
(SELECT ltrim(rtrim(DTL_NM)) from SWSA999A_TBL where COMM_CD = 'S110' AND SUBSTRING(DTL_CD,1,1) = SUBSTRING(A.DTL_CD,1,1)),
|
|
'-',
|
|
(SELECT ltrim(rtrim(DTL_NM)) from SWSA999A_TBL where COMM_CD = 'S120' AND SUBSTRING(DTL_CD,1,3) = SUBSTRING(A.DTL_CD,1,3)),
|
|
'-',
|
|
(SELECT ltrim(rtrim(DTL_NM)) from SWSA999A_TBL where COMM_CD = 'S130' AND DTL_CD = A.DTL_CD )
|
|
)
|
|
ELSE '' END AS name
|
|
FROM SWSA999A_TBL A
|
|
WHERE COMM_CD = #{majorCd}
|
|
AND DTL_CD <![CDATA[ <> ]]> '*'
|
|
ORDER BY DTL_CD ASC
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 업체명 목록 조회
|
|
* @since 2021.11.17
|
|
* @author min
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.11.17 민상익 최초작성
|
|
**/
|
|
-->
|
|
<select id="getCompanyName" resultType="map" parameterType="map">
|
|
/* salesMgmtCommon.getCompanyName */
|
|
SELECT SuVndCd AS code
|
|
, SuVndNm AS name
|
|
FROM SWPC100A_TBL A
|
|
ORDER BY SuVndNm ASC
|
|
</select>
|
|
|
|
|
|
<!--
|
|
/**
|
|
* 품목 목록 조회
|
|
* @since 2021.11.18
|
|
* @author min
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.11.17 민상익 최초작성
|
|
**/
|
|
-->
|
|
<select id="getImItemList" resultType="map" parameterType="map">
|
|
/* salesMgmtCommon.getImItemList */
|
|
SELECT ImItemId AS code
|
|
, ImItemNm AS name
|
|
FROM SWPA100A_TBL A
|
|
ORDER BY ImItemNm ASC
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 공정코드 공정명 조회
|
|
* @since 2021.11.27
|
|
* @author min
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.11.27 민상익 최초작성
|
|
**/
|
|
-->
|
|
<select id="getIWcCorseNm" resultType="map" parameterType="map">
|
|
/* salesMgmtCommon.getIWcCorseNm */
|
|
SELECT A.ayUpgCode AS code /* 공정코드 */
|
|
, A.ayUpgName AS name /* 공정명 */
|
|
FROM KLBOM_TBL A
|
|
INNER JOIN COMM_CODE AS B ON
|
|
A.ayUpgName = B.code_name
|
|
GROUP BY A.ayUpgCode
|
|
, A.ayUpgName
|
|
, B.code_id
|
|
ORDER BY B.code_id
|
|
|
|
<!--
|
|
SELECT C.upg_code AS code /* 공정코드 */
|
|
, C.upg_name AS name /* 공정명 */
|
|
FROM PRODUCT_MGMT B
|
|
INNER JOIN PRODUCT_MGMT_UPG_DETAIL C ON
|
|
B.objid = C.product_objid
|
|
INNER JOIN COMM_CODE AS D ON
|
|
C.upg_name = D.code_name
|
|
GROUP BY C.upg_name
|
|
, C.upg_code
|
|
, D.code_id
|
|
ORDER BY D.code_id
|
|
-->
|
|
</select>
|
|
<!--
|
|
/**
|
|
* 기종 품목 목록 조회
|
|
* @since 2021.11.27
|
|
* @author min
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.11.27 민상익 최초작성
|
|
**/
|
|
-->
|
|
<select id="getPdImItemList" resultType="map" parameterType="map">
|
|
/* salesMgmtCommon.getPdImItemList */
|
|
SELECT DISTINCT A.goodscd AS code /* 제품코드 */
|
|
, A.goodsNm AS name /* 제품명 */
|
|
FROM SWSB110A_TBL A
|
|
INNER JOIN SWPA100A_TBL B ON
|
|
A.goodsCd = B.imProdNo /* 기종코드 */
|
|
ORDER BY A.goodsNm ASC /* 제품명 */
|
|
</select>
|
|
|
|
<!--
|
|
/**
|
|
* 계약 번호 조회
|
|
* @since 2021.11.27
|
|
* @author min
|
|
* @version 1.0
|
|
*
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* **************** ********************** ********************************************************
|
|
* 2021.11.30 민상익 최초작성
|
|
**/
|
|
-->
|
|
<select id="getOrderNoList" resultType="map" parameterType="map">
|
|
/* salesMgmtCommon.getOrderNoList */
|
|
SELECT OrderNo AS code
|
|
, OrderNo AS name
|
|
FROM SWSC110A_TBL A
|
|
</select>
|
|
|
|
</mapper> |