|
|
@@ -19,70 +19,77 @@
|
|
|
<!-- 1:1문의 목록 -->
|
|
|
<select id="getOneToOneQnaList" parameterType="Counsel" resultType="Counsel">
|
|
|
/* TsaCounsel.getOneToOneQnaList */
|
|
|
- SELECT Z.*
|
|
|
- FROM(
|
|
|
- SELECT @rownum := @rownum + 1 AS RNUM
|
|
|
- ,A.*
|
|
|
- FROM (
|
|
|
- SELECT A.COUNSEL_SQ /*상담일련번호*/
|
|
|
- , A.SITE_CD /*사이트코드*/
|
|
|
- , FN_GET_CODE_NM('G059',A.COUNSEL_CLSF) AS COUNSEL_CLSF_NM /*상담분류명*/
|
|
|
- , FN_GET_CODE_NM(A.COUNSEL_CLSF,A.COUNSEL_DCLSF) AS COUNSEL_DCLSF_NM /*상담상세분류명*/
|
|
|
- , A.COUNSEL_DCLSF /*상담상세분류*/
|
|
|
- , DATE_FORMAT(A.QUEST_DT,'%Y-%m-%d %H:%i:%S') AS QUEST_DT /*문의일시*/
|
|
|
- , A.QUEST_TITLE /*문의제목*/
|
|
|
- , A.CUST_NO /*고객번호*/
|
|
|
- , B.CUST_ID /*고객ID*/
|
|
|
- , B.CUST_NM /*고객명*/
|
|
|
- , A.CELL_PHNNO /*휴대전화번호*/
|
|
|
- , A.SMS_REQ_YN /*SMS요청여부*/
|
|
|
- , A.SMS_SEND_YN /*SMS발송여부*/
|
|
|
- , A.EMAIL /*이메일*/
|
|
|
- , A.ANS_STAT /*답변상태*/
|
|
|
- , DATE_FORMAT(A.ANS_DT, '%Y-%m-%d %H:%i:%S') AS ANS_DT /*답변일시*/
|
|
|
- , A.ANS_NO /*답변자번호*/
|
|
|
- , D.USER_NM AS ANS_NM /*답변자명*/
|
|
|
- FROM TB_COUNSEL A
|
|
|
- INNER JOIN TB_CUSTOMER B ON A.CUST_NO = B.CUST_NO
|
|
|
- LEFT OUTER JOIN TB_USER D ON A.ANS_NO = D.USER_NO
|
|
|
- JOIN ( SELECT @rownum := 0) R
|
|
|
- WHERE COUNSEL_TYPE = 'C' /*상담유형(1:1문의)*/
|
|
|
- <if test="siteCd != null and siteCd != ''">
|
|
|
- AND A.SITE_CD = #{siteCd}
|
|
|
- </if>
|
|
|
- <if test="counselClsf != null and counselClsf != ''">
|
|
|
- AND A.COUNSEL_CLSF = #{counselClsf}
|
|
|
- </if>
|
|
|
- <if test="counselDclsf != null and counselDclsf != ''">
|
|
|
- AND A.COUNSEL_DCLSF = #{counselDclsf}
|
|
|
- </if>
|
|
|
- <if test="ansNo != null and ansNo != ''">
|
|
|
- AND A.ANS_NO = #{ansNo}
|
|
|
- </if>
|
|
|
- <if test="delYn != null and delYn != ''">
|
|
|
- AND A.DEL_YN = #{delYn}
|
|
|
- </if>
|
|
|
- <if test="condition != null and condition != ''">
|
|
|
- <if test="custGb == 'custId'">
|
|
|
- AND B.CUST_ID LIKE #{condition}||'%'
|
|
|
- </if>
|
|
|
- <if test="custGb == 'custNm'">
|
|
|
- AND B.CUST_NM LIKE FN_ENC_AES(#{condition})||'%'
|
|
|
- </if>
|
|
|
- <if test="custGb == 'email'">
|
|
|
- AND A.EMAIL LIKE FN_ENC_AES(#{condition})||'%'
|
|
|
- </if>
|
|
|
- </if>
|
|
|
- <if test="termStdt != null and termStdt != ''">
|
|
|
- AND A.QUEST_DT <![CDATA[>=]]> STR_TO_DATE(#{termStdt},'%Y-%m-%d')
|
|
|
- </if>
|
|
|
- <if test="termEddt != null and termEddt != ''">
|
|
|
- AND A.QUEST_DT <![CDATA[<]]> DATE_ADD(STR_TO_DATE(#{termEddt},'%Y-%m-%d'),INTERVAL 1 DAY)
|
|
|
- </if>
|
|
|
- <if test="ansStat != null and ansStat != ''">
|
|
|
- AND A.ANS_STAT = #{ansStat}
|
|
|
- </if>
|
|
|
- ORDER BY A.QUEST_DT DESC
|
|
|
+ SELECT Z.*
|
|
|
+ FROM (
|
|
|
+ SELECT @rownum := @rownum + 1 AS RNUM
|
|
|
+ , A.*
|
|
|
+ FROM (
|
|
|
+ SELECT A.COUNSEL_SQ /*상담일련번호*/
|
|
|
+ , A.SITE_CD /*사이트코드*/
|
|
|
+ , FN_GET_CODE_NM('G059',A.COUNSEL_CLSF) AS COUNSEL_CLSF_NM /*상담분류명*/
|
|
|
+ , FN_GET_CODE_NM(A.COUNSEL_CLSF,A.COUNSEL_DCLSF) AS COUNSEL_DCLSF_NM /*상담상세분류명*/
|
|
|
+ , A.COUNSEL_DCLSF /*상담상세분류*/
|
|
|
+ , DATE_FORMAT(A.QUEST_DT,'%Y-%m-%d %H:%i:%S') AS QUEST_DT /*문의일시*/
|
|
|
+ , A.QUEST_TITLE /*문의제목*/
|
|
|
+ , A.CUST_NO /*고객번호*/
|
|
|
+ , B.CUST_ID /*고객ID*/
|
|
|
+ , B.CUST_NM /*고객명*/
|
|
|
+ , A.CELL_PHNNO /*휴대전화번호*/
|
|
|
+ , A.SMS_REQ_YN /*SMS요청여부*/
|
|
|
+ , A.SMS_SEND_YN /*SMS발송여부*/
|
|
|
+ , A.EMAIL /*이메일*/
|
|
|
+ , A.ANS_STAT /*답변상태*/
|
|
|
+ , A.ASSIGNED_CS_NO /*할당된상담사번호*/
|
|
|
+ , (SELECT USER_NM
|
|
|
+ FROM TB_USER
|
|
|
+ WHERE USER_NO = A.ASSIGNED_CS_NO) AS ASSIGNED_CS_NM /*할당된상담사명*/
|
|
|
+ , DATE_FORMAT(A.ANS_DT, '%Y-%m-%d %H:%i:%S') AS ANS_DT /*답변일시*/
|
|
|
+ , A.ANS_NO /*답변자번호*/
|
|
|
+ , D.USER_NM AS ANS_NM /*답변자명*/
|
|
|
+ FROM TB_COUNSEL A
|
|
|
+ INNER JOIN TB_CUSTOMER B ON A.CUST_NO = B.CUST_NO
|
|
|
+ LEFT OUTER JOIN TB_USER D ON A.ANS_NO = D.USER_NO
|
|
|
+ JOIN (SELECT @rownum := 0) R
|
|
|
+ WHERE COUNSEL_TYPE = 'C' /*상담유형(1:1문의)*/
|
|
|
+ <if test="siteCd != null and siteCd != ''">
|
|
|
+ AND A.SITE_CD = #{siteCd}
|
|
|
+ </if>
|
|
|
+ <if test="counselClsf != null and counselClsf != ''">
|
|
|
+ AND A.COUNSEL_CLSF = #{counselClsf}
|
|
|
+ </if>
|
|
|
+ <if test="counselDclsf != null and counselDclsf != ''">
|
|
|
+ AND A.COUNSEL_DCLSF = #{counselDclsf}
|
|
|
+ </if>
|
|
|
+ <if test="ansNo != null and ansNo != ''">
|
|
|
+ AND A.ANS_NO = #{ansNo}
|
|
|
+ </if>
|
|
|
+ <if test="delYn != null and delYn != ''">
|
|
|
+ AND A.DEL_YN = #{delYn}
|
|
|
+ </if>
|
|
|
+ <if test="condition != null and condition != ''">
|
|
|
+ <if test="custGb == 'custId'">
|
|
|
+ AND B.CUST_ID LIKE #{condition}||'%'
|
|
|
+ </if>
|
|
|
+ <if test="custGb == 'custNm'">
|
|
|
+ AND B.CUST_NM LIKE FN_ENC_AES(#{condition})||'%'
|
|
|
+ </if>
|
|
|
+ <if test="custGb == 'email'">
|
|
|
+ AND A.EMAIL LIKE FN_ENC_AES(#{condition})||'%'
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
+ <if test="termStdt != null and termStdt != ''">
|
|
|
+ AND A.QUEST_DT <![CDATA[>=]]> STR_TO_DATE(#{termStdt},'%Y-%m-%d')
|
|
|
+ </if>
|
|
|
+ <if test="termEddt != null and termEddt != ''">
|
|
|
+ AND A.QUEST_DT <![CDATA[<]]> DATE_ADD(STR_TO_DATE(#{termEddt},'%Y-%m-%d'),INTERVAL 1 DAY)
|
|
|
+ </if>
|
|
|
+ <if test="ansStat != null and ansStat != ''">
|
|
|
+ AND A.ANS_STAT = #{ansStat}
|
|
|
+ </if>
|
|
|
+ <if test="assignedCsNo != null and assignedCsNo != ''">
|
|
|
+ AND A.ASSIGNED_CS_NO = #{assignedCsNo}
|
|
|
+ </if>
|
|
|
+ ORDER BY A.QUEST_DT DESC
|
|
|
<include refid="getListPagingCondition_sql"/>
|
|
|
</select>
|
|
|
|
|
|
@@ -128,9 +135,26 @@
|
|
|
<if test="ansStat != null and ansStat != ''">
|
|
|
AND A.ANS_STAT = #{ansStat}
|
|
|
</if>
|
|
|
+ <if test="assignedCsNo != null and assignedCsNo != ''">
|
|
|
+ AND A.ASSIGNED_CS_NO = #{assignedCsNo}
|
|
|
+ </if>
|
|
|
ORDER BY A.QUEST_DT DESC
|
|
|
</select>
|
|
|
|
|
|
+ <!--1:1문의 상담사 할당 Update -->
|
|
|
+ <update id="updateOneToOneQnaCounselor" parameterType="Counsel">
|
|
|
+ /* TsaCounsel.updateOneToOneQnaCounselor */
|
|
|
+ UPDATE TB_COUNSEL
|
|
|
+ SET ASSIGNED_CS_NO = #{assignedCsNo}
|
|
|
+ , ASSIGNED_YMD = DATE_FORMAT(NOW(),'%Y%m%d')
|
|
|
+ , ASSIGNED_HMS = DATE_FORMAT(NOW(),'%H%i%S')
|
|
|
+ , ASSIGNER_NO = #{updNo}
|
|
|
+ , UPD_NO = #{updNo}
|
|
|
+ , UPD_DT = NOW()
|
|
|
+ WHERE COUNSEL_SQ = #{counselSq}
|
|
|
+ AND ANS_STAT IN ('G060_00','G060_10') /*대기중,처리중*/
|
|
|
+ </update>
|
|
|
+
|
|
|
<!-- 1:1문의 상세 -->
|
|
|
<select id="getOneToOneQna" parameterType="Counsel" resultType="Counsel">
|
|
|
/* TsaCounsel.getOneToOneQna */
|
|
|
@@ -159,13 +183,29 @@
|
|
|
, A.SYS_FILE_NM2 /*시스템파일명2*/
|
|
|
, A.ANS_STAT /*답변상태코드*/
|
|
|
, FN_GET_CODE_NM('G060',A.ANS_STAT) AS ANS_STAT_NM /*답변상태명*/
|
|
|
+ , A.ASSIGNED_CS_NO /*할당된상담사번호*/
|
|
|
+ , D.USER_NM AS ASSIGNER_NM /*할당자명*/
|
|
|
+ , DATE_FORMAT(CONCAT(A.ASSIGNED_YMD,A.ASSIGNED_HMS),'%Y-%m-%d %H:%i:%S') AS ASSIGNED_DT /*할당일시*/
|
|
|
FROM TB_COUNSEL A
|
|
|
INNER JOIN TB_CUSTOMER B ON A.CUST_NO = B.CUST_NO
|
|
|
LEFT OUTER JOIN TB_USER C ON A.ANS_NO = C.USER_NO
|
|
|
+ LEFT OUTER JOIN TB_USER D ON A.ASSIGNER_NO = D.USER_NO
|
|
|
WHERE A.COUNSEL_SQ = #{counselSq}
|
|
|
AND A.COUNSEL_TYPE = 'C' /*상담유형(1:1문의)*/
|
|
|
</select>
|
|
|
|
|
|
+ <!--문의 답변 임시 저장 -->
|
|
|
+ <update id="updateQnaAnswerTemp" parameterType="Counsel">
|
|
|
+ /* TsaCounsel.updateQnaAnswerTemp */
|
|
|
+ UPDATE TB_COUNSEL
|
|
|
+ SET ANS_TITLE = #{ansTitle}
|
|
|
+ , ANS_CONTENT = #{ansContent}
|
|
|
+ , ANS_STAT = 'G060_10' /*처리중*/
|
|
|
+ , UPD_NO = #{updNo}
|
|
|
+ , UPD_DT = NOW()
|
|
|
+ WHERE COUNSEL_SQ = #{counselSq}
|
|
|
+ </update>
|
|
|
+
|
|
|
<!--문의 답변 저장 -->
|
|
|
<update id="updateQnaAnswer" parameterType="Counsel">
|
|
|
/* TsaCounsel.updateQnaAnswer */
|