시군구,부서 관리 수정
parent
d695519292
commit
67bcf44f97
@ -0,0 +1,39 @@
|
|||||||
|
package cokr.xit.applib;
|
||||||
|
|
||||||
|
public class SQLUtil {
|
||||||
|
|
||||||
|
public static final String SCRIPT_START = "<script>";
|
||||||
|
public static final String SCRIPT_END = "</script>";
|
||||||
|
|
||||||
|
public static final String now = """
|
||||||
|
<if test="_databaseId == 'mariadb'">DATE_FORMAT(CURRENT_TIMESTAMP, '%Y%m%d%H%i%s')</if>
|
||||||
|
<if test="_databaseId == 'oracle'">TO_CHAR(CURRENT_TIMESTAMP, 'YYYYMMDDHH24MISS')</if>
|
||||||
|
""";
|
||||||
|
|
||||||
|
public static final String sortBy = """
|
||||||
|
<if test="orderBy != null and orderBy != ''">ORDER BY ${orderBy}</if>
|
||||||
|
""";
|
||||||
|
|
||||||
|
public static final String orderBy = """
|
||||||
|
<if test="fetchSize == null or fetchSize < 1">"""
|
||||||
|
+sortBy+"""
|
||||||
|
</if>""";
|
||||||
|
|
||||||
|
public static final String pagingPrefix = """
|
||||||
|
<if test="fetchSize != null and fetchSize > 0">
|
||||||
|
SELECT QROWS.*
|
||||||
|
FROM (
|
||||||
|
SELECT ROW_NUMBER() OVER("""
|
||||||
|
+sortBy+"""
|
||||||
|
) ROW_NUM
|
||||||
|
, COUNT(*) OVER() TOT_CNT
|
||||||
|
, QBODY.*
|
||||||
|
FROM (
|
||||||
|
</if>""";
|
||||||
|
|
||||||
|
public static final String pagingSuffix = """
|
||||||
|
<if test="fetchSize != null and fetchSize > 0"> ) QBODY
|
||||||
|
) QROWS
|
||||||
|
WHERE ROW_NUM BETWEEN ((#{pageNum} - 1) * #{fetchSize}) + 1 AND (#{pageNum} * #{fetchSize})
|
||||||
|
</if>""";
|
||||||
|
}
|
@ -1,120 +0,0 @@
|
|||||||
package cokr.xit.applib.ogdp.dao;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
import org.egovframe.rte.psl.dataaccess.mapper.Mapper;
|
|
||||||
|
|
||||||
import cokr.xit.applib.ogdp.OgdpQuery;
|
|
||||||
import cokr.xit.applib.ogdp.OgdpSigungu;
|
|
||||||
import cokr.xit.foundation.component.AbstractMapper;
|
|
||||||
import cokr.xit.foundation.data.DataObject;
|
|
||||||
|
|
||||||
@Mapper("cmmnOgdpMapper")
|
|
||||||
public interface CmmnOgdpMapper extends AbstractMapper {
|
|
||||||
|
|
||||||
/**모든 기관,부서 목록을 반환한다.<br />
|
|
||||||
* @param
|
|
||||||
* @return 기관,부서 목록
|
|
||||||
*/
|
|
||||||
List<DataObject> selectAllOgdpList();
|
|
||||||
|
|
||||||
/**사용가능한 기관,부서 목록을 반환한다.<br />
|
|
||||||
* @param stringMap
|
|
||||||
* @param
|
|
||||||
* @return 기관,부서 목록
|
|
||||||
*/
|
|
||||||
List<DataObject> selectAbleOgdpList(Map<String, Object> params);
|
|
||||||
|
|
||||||
/**사용자의 시군구코드,시군구명,기관코드,기관명,부서코드,부서명을 반환한다.<br />
|
|
||||||
* @param 사용자ID
|
|
||||||
* @return 시군구코드,시군구명,기관코드,기관명,부서코드,부서명
|
|
||||||
*/
|
|
||||||
DataObject selectOgdpInfoOfUser(String userId);
|
|
||||||
|
|
||||||
/**모든 기관 목록을 반환한다.<br />
|
|
||||||
* @param
|
|
||||||
* @return 기관 목록
|
|
||||||
*/
|
|
||||||
List<DataObject> selectAllInstList();
|
|
||||||
|
|
||||||
/**모든 시군구 목록을 반환한다.<br />
|
|
||||||
* @param
|
|
||||||
* @return 시군구 목록
|
|
||||||
*/
|
|
||||||
List<DataObject> selectAllSggList();
|
|
||||||
|
|
||||||
/**부서코드에 매칭되는 시군구코드를 반환한다.<br />
|
|
||||||
* @param deptCd 부서코드
|
|
||||||
* @return 시군구코드
|
|
||||||
*/
|
|
||||||
String selectSggCdByDeptCd(String deptCd);
|
|
||||||
|
|
||||||
/**시군구 정보를 수정한다.
|
|
||||||
* @param params 파라미터
|
|
||||||
* <ul><li>"sgg" - 시군구 정보</li>
|
|
||||||
* <li>"currentUser" - 현재 접속한 사용자</li>
|
|
||||||
* </ul>
|
|
||||||
* @return 저장된 정보수
|
|
||||||
*/
|
|
||||||
int updateSgg(Map<String, Object> params);
|
|
||||||
|
|
||||||
/**시군구 정보를 수정한다.
|
|
||||||
* @param sgg 시군구
|
|
||||||
* @return 저장 여부
|
|
||||||
* <ul><li>저장됐으면 true</li>
|
|
||||||
* <li>그렇지 않으면 false</li>
|
|
||||||
* </ul>
|
|
||||||
*/
|
|
||||||
default boolean updateSgg(OgdpSigungu sgg) {
|
|
||||||
return sgg != null && updateSgg(params().set("sgg", sgg)) == 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**지정한 조건에 따라 시군구 객체들을 반환한다.
|
|
||||||
* @param req 시군구 조회 조건
|
|
||||||
* @return 시군구 객체 목록
|
|
||||||
*/
|
|
||||||
List<DataObject> selectSggs(OgdpQuery req);
|
|
||||||
|
|
||||||
/**지정한 조건에 따라 시군구 객체를 반환한다.
|
|
||||||
* @param req 시군구 조회 조건
|
|
||||||
* @return 시군구 객체
|
|
||||||
*/
|
|
||||||
default DataObject selectSggInfo(OgdpQuery req) {
|
|
||||||
|
|
||||||
|
|
||||||
// 사용 여부 확인
|
|
||||||
if (req.getUseYn() == null) {
|
|
||||||
req.setUseYn("Y");
|
|
||||||
}
|
|
||||||
// 기본 정렬
|
|
||||||
if (req.getOrderBy() == null) {
|
|
||||||
req.setOrderBy("S.SGG_CD DESC");
|
|
||||||
}
|
|
||||||
|
|
||||||
List<DataObject> sggs = selectSggs(req);
|
|
||||||
|
|
||||||
return (!sggs.isEmpty() || sggs.size() == 1) ? sggs.get(0) : null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**부서 사용여부를 변경한다.
|
|
||||||
* @param params 파라미터
|
|
||||||
* <ul><li>"deptCds" - 부서 코드 목록</li>
|
|
||||||
* <li>"currentUser" - 현재 접속한 사용자</li>
|
|
||||||
* </ul>
|
|
||||||
* @return 저장된 정보수
|
|
||||||
*/
|
|
||||||
int setStatus(Map<String, ?> params);
|
|
||||||
|
|
||||||
/**부서 사용여부를 변경한다.
|
|
||||||
* @param deptCds 부서 코드 목록
|
|
||||||
* @return 저장된 정보 수
|
|
||||||
*/
|
|
||||||
default int setStatus(String useYn, String... deptCds) {
|
|
||||||
DataObject params = params();
|
|
||||||
params.set("useYn", useYn);
|
|
||||||
params.set("deptCds", deptCds);
|
|
||||||
int effected = setStatus(params);
|
|
||||||
return effected;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,96 +0,0 @@
|
|||||||
package cokr.xit.applib.ogdp.dao;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
import org.egovframe.rte.psl.dataaccess.mapper.Mapper;
|
|
||||||
|
|
||||||
import cokr.xit.applib.ogdp.OgdpQuery;
|
|
||||||
import cokr.xit.base.user.Department;
|
|
||||||
import cokr.xit.foundation.component.AbstractMapper;
|
|
||||||
import cokr.xit.foundation.data.DataObject;
|
|
||||||
|
|
||||||
/** 소속 정보 DAO
|
|
||||||
*
|
|
||||||
* <p>상세 설명:
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
* ============ 변경 이력 ============
|
|
||||||
* 2023-09-15 leebj 최초 작성
|
|
||||||
* ================================
|
|
||||||
* </pre>
|
|
||||||
*/
|
|
||||||
@Mapper("defaultOgdpMapper")
|
|
||||||
public interface DefaultOgdpMapper extends AbstractMapper {
|
|
||||||
|
|
||||||
/**지정한 조건에 따라 부서 목록을 조회하여 반환한다.<br />
|
|
||||||
* @param req 부서 조회 조건
|
|
||||||
* @return 부서 목록
|
|
||||||
*/
|
|
||||||
List<DataObject> selectDeptList(OgdpQuery req);
|
|
||||||
|
|
||||||
/**지정한 조건에 따라 부서 객체들을 반환한다.
|
|
||||||
* @param req 부서 조회 조건
|
|
||||||
* @return 부서 객체 목록
|
|
||||||
*/
|
|
||||||
List<DataObject> selectDepts(OgdpQuery req);
|
|
||||||
|
|
||||||
/**지정한 조건에 따라 부서 객체를 반환한다.
|
|
||||||
* @param req 부서 조회 조건
|
|
||||||
* @return 부서 객체
|
|
||||||
*/
|
|
||||||
default DataObject selectDeptInfo(OgdpQuery req) {
|
|
||||||
|
|
||||||
// 기본 정렬
|
|
||||||
if (req.getOrderBy() == null) {
|
|
||||||
req.setOrderBy("D.DEPT_CD DESC");
|
|
||||||
}
|
|
||||||
|
|
||||||
List<DataObject> depts = selectDepts(req);
|
|
||||||
|
|
||||||
return !depts.isEmpty() ? depts.get(0) : null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**부서 정보를 등록한다.
|
|
||||||
* @param params 파라미터
|
|
||||||
* <ul><li>"dept" - 부서 정보</li>
|
|
||||||
* <li>"currentUser" - 현재 접속한 사용자</li>
|
|
||||||
* </ul>
|
|
||||||
* @return 저장된 정보수
|
|
||||||
*/
|
|
||||||
int insertDept(Map<String, Object> params);
|
|
||||||
|
|
||||||
/**부서 정보를 등록한다.
|
|
||||||
* @param dept 부서
|
|
||||||
* @return 저장 여부
|
|
||||||
* <ul><li>저장됐으면 true</li>
|
|
||||||
* <li>그렇지 않으면 false</li>
|
|
||||||
* </ul>
|
|
||||||
*/
|
|
||||||
default boolean insert(Department dept) {
|
|
||||||
return dept != null && insertDept(params().set("dept", dept)) == 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**부서 정보를 수정한다.
|
|
||||||
* @param params 파라미터
|
|
||||||
* <ul><li>"dept" - 부서 정보</li>
|
|
||||||
* <li>"currentUser" - 현재 접속한 사용자</li>
|
|
||||||
* </ul>
|
|
||||||
* @return 저장된 정보수
|
|
||||||
*/
|
|
||||||
int updateDept(Map<String, Object> params);
|
|
||||||
|
|
||||||
/**부서 정보를 수정한다.
|
|
||||||
* @param dept 부서
|
|
||||||
* @return 저장 여부
|
|
||||||
* <ul><li>저장됐으면 true</li>
|
|
||||||
* <li>그렇지 않으면 false</li>
|
|
||||||
* </ul>
|
|
||||||
*/
|
|
||||||
default boolean update(Department dept) {
|
|
||||||
return dept != null && updateDept(params().set("dept", dept)) == 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
@ -0,0 +1,466 @@
|
|||||||
|
package cokr.xit.applib.ogdp.dao;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import org.apache.ibatis.annotations.InsertProvider;
|
||||||
|
import org.apache.ibatis.annotations.Select;
|
||||||
|
import org.apache.ibatis.annotations.SelectProvider;
|
||||||
|
import org.apache.ibatis.annotations.Update;
|
||||||
|
import org.apache.ibatis.annotations.UpdateProvider;
|
||||||
|
import org.egovframe.rte.psl.dataaccess.mapper.Mapper;
|
||||||
|
|
||||||
|
import cokr.xit.applib.SQLUtil;
|
||||||
|
import cokr.xit.applib.ogdp.OgdpQuery;
|
||||||
|
import cokr.xit.applib.ogdp.OgdpSigungu;
|
||||||
|
import cokr.xit.foundation.component.AbstractMapper;
|
||||||
|
import cokr.xit.foundation.data.DataObject;
|
||||||
|
|
||||||
|
@Mapper("ogdpMapper")
|
||||||
|
public interface OgdpMapper extends AbstractMapper {
|
||||||
|
|
||||||
|
/**모든 기관,부서 목록을 반환한다.<br />
|
||||||
|
* @param
|
||||||
|
* @return 기관,부서 목록
|
||||||
|
*/
|
||||||
|
@Select(SQLUtil.SCRIPT_START+"""
|
||||||
|
/* 전체 기관,부서 목록 조회(ogdpMapper.selectAllOgdpList) */
|
||||||
|
SELECT CONCAT(A.INST_CD,'/',B.DEPT_CD) AS OGDP_CD
|
||||||
|
, CONCAT(A.INST_NM,' / ',B.DEPT_NM) AS OGDP_NM
|
||||||
|
, A.INST_CD
|
||||||
|
, A.INST_NM
|
||||||
|
, B.DEPT_CD
|
||||||
|
, B.DEPT_NM
|
||||||
|
, A.SGG_CD
|
||||||
|
, A.SGG_NM
|
||||||
|
FROM TB_SGG A
|
||||||
|
LEFT OUTER JOIN TB_DEPT B ON (A.INST_CD = B.INST_CD)
|
||||||
|
UNION
|
||||||
|
SELECT ('default/default') AS OGDP_CD
|
||||||
|
, CONCAT('기본 기관',' / ','기본 부서') AS OGDP_NM
|
||||||
|
, 'default' AS INST_CD
|
||||||
|
, '기본 기관' AS INST_NM
|
||||||
|
, 'default' AS DEPT_CD
|
||||||
|
, '기본 부서' AS DEPT_NM
|
||||||
|
, 'default' AS SGG_CD
|
||||||
|
, '기본 시군구' AS SGG_NM
|
||||||
|
FROM DUAL
|
||||||
|
"""+SQLUtil.SCRIPT_END)
|
||||||
|
List<DataObject> selectAllOgdpList();
|
||||||
|
|
||||||
|
/**사용가능한 기관,부서 목록을 반환한다.<br />
|
||||||
|
* @param stringMap
|
||||||
|
* @param
|
||||||
|
* @return 기관,부서 목록
|
||||||
|
*/
|
||||||
|
@Select(SQLUtil.SCRIPT_START+"""
|
||||||
|
/* 사용가능한 기관,부서 목록 조회(ogdpMapper.selectAbleOgdpList) */
|
||||||
|
SELECT CONCAT(A.INST_CD,'/',B.DEPT_CD) AS OGDP_CD
|
||||||
|
, CONCAT(A.INST_NM,' / ',B.DEPT_NM) AS OGDP_NM
|
||||||
|
, A.INST_CD
|
||||||
|
, A.INST_NM
|
||||||
|
, B.DEPT_CD
|
||||||
|
, B.DEPT_NM
|
||||||
|
, A.SGG_CD
|
||||||
|
, A.SGG_NM
|
||||||
|
FROM TB_SGG A
|
||||||
|
LEFT OUTER JOIN TB_DEPT B ON (A.INST_CD = B.INST_CD)
|
||||||
|
<choose>
|
||||||
|
<when test='anonymous == "Y" '>
|
||||||
|
WHERE A.INST_CD = #{institute}
|
||||||
|
</when>
|
||||||
|
<otherwise>
|
||||||
|
<if test="currentUser.institute != 'default'">
|
||||||
|
WHERE A.SGG_CD = #{currentUser.user.orgID}
|
||||||
|
</if>
|
||||||
|
<if test="currentUser.institute == 'default'">
|
||||||
|
UNION
|
||||||
|
SELECT 'default/default' AS OGDP_CD
|
||||||
|
, CONCAT('기본 기관',' / ','기본 부서') AS OGDP_NM
|
||||||
|
, 'default' AS INST_CD
|
||||||
|
, '기본 기관' AS INST_NM
|
||||||
|
, 'default' AS DEPT_CD
|
||||||
|
, '기본 부서' AS DEPT_NM
|
||||||
|
, 'default' AS SGG_CD
|
||||||
|
, '기본 시군구' AS SGG_NM
|
||||||
|
FROM DUAL
|
||||||
|
</if>
|
||||||
|
</otherwise>
|
||||||
|
</choose>
|
||||||
|
"""+SQLUtil.SCRIPT_END)
|
||||||
|
List<DataObject> selectAbleOgdpList(Map<String, Object> params);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**사용자의 시군구코드,시군구명,기관코드,기관명,부서코드,부서명을 반환한다.<br />
|
||||||
|
* @param 사용자ID
|
||||||
|
* @return 시군구코드,시군구명,기관코드,기관명,부서코드,부서명
|
||||||
|
*/
|
||||||
|
@Select(SQLUtil.SCRIPT_START+"""
|
||||||
|
/* 사용자의 시군구,기관,부서 조회(ogdpMapper.selectOgdpInfoOfUser) */
|
||||||
|
SELECT S.SGG_CD
|
||||||
|
, S.SGG_NM
|
||||||
|
, U.NSTT_CD AS INST_CD
|
||||||
|
, S.INST_NM
|
||||||
|
, U.DEPT_CD
|
||||||
|
, D.DEPT_NM
|
||||||
|
FROM TB_USER U
|
||||||
|
LEFT OUTER JOIN TB_SGG S ON (U.ORG_ID = S.SGG_CD)
|
||||||
|
LEFT OUTER JOIN TB_DEPT D ON (U.DEPT_CD = D.DEPT_CD)
|
||||||
|
WHERE U.USER_ID = #{userId}
|
||||||
|
"""+SQLUtil.SCRIPT_END)
|
||||||
|
DataObject selectOgdpInfoOfUser(String userId);
|
||||||
|
|
||||||
|
|
||||||
|
/**모든 기관 목록을 반환한다.<br />
|
||||||
|
* @param
|
||||||
|
* @return 기관 목록
|
||||||
|
*/
|
||||||
|
@Select(SQLUtil.SCRIPT_START+"""
|
||||||
|
/* 모든 기관 조회(ogdpMapper.selectAllInstList) */
|
||||||
|
SELECT INST_CD
|
||||||
|
, INST_NM
|
||||||
|
FROM TB_SGG
|
||||||
|
WHERE USE_YN = 'Y'
|
||||||
|
"""+SQLUtil.SCRIPT_END)
|
||||||
|
List<DataObject> selectAllInstList();
|
||||||
|
|
||||||
|
/**모든 시군구 목록을 반환한다.<br />
|
||||||
|
* @param
|
||||||
|
* @return 시군구 목록
|
||||||
|
*/
|
||||||
|
@Select(SQLUtil.SCRIPT_START+"""
|
||||||
|
/* 모든 시군구 조회(ogdpMapper.selectAllSggList) */
|
||||||
|
SELECT SGG_CD
|
||||||
|
, SGG_NM
|
||||||
|
FROM TB_SGG
|
||||||
|
WHERE USE_YN = 'Y'
|
||||||
|
"""+SQLUtil.SCRIPT_END)
|
||||||
|
List<DataObject> selectAllSggList();
|
||||||
|
|
||||||
|
/**부서코드에 매칭되는 시군구코드를 반환한다.<br />
|
||||||
|
* @param deptCd 부서코드
|
||||||
|
* @return 시군구코드
|
||||||
|
*/
|
||||||
|
@Select(SQLUtil.SCRIPT_START+"""
|
||||||
|
/* 부서에 따른 시군구코드 조회(ogdpMapper.selectSggCdByDeptCd) */
|
||||||
|
SELECT SGG_CD
|
||||||
|
FROM TB_DEPT
|
||||||
|
WHERE DEPT_CD = #{deptCd}
|
||||||
|
"""+SQLUtil.SCRIPT_END)
|
||||||
|
String selectSggCdByDeptCd(String deptCd);
|
||||||
|
|
||||||
|
/**시군구 정보를 수정한다.
|
||||||
|
* @param sgg 시군구
|
||||||
|
* @return 저장 여부
|
||||||
|
* <ul><li>저장됐으면 true</li>
|
||||||
|
* <li>그렇지 않으면 false</li>
|
||||||
|
* </ul>
|
||||||
|
*/
|
||||||
|
default boolean updateSgg(OgdpSigungu sgg) {
|
||||||
|
return sgg != null && updateSgg(params().set("sgg", sgg)) == 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**시군구 정보를 수정한다.
|
||||||
|
* @param params 파라미터
|
||||||
|
* <ul><li>"sgg" - 시군구 정보</li>
|
||||||
|
* <li>"currentUser" - 현재 접속한 사용자</li>
|
||||||
|
* </ul>
|
||||||
|
* @return 저장된 정보수
|
||||||
|
*/
|
||||||
|
@Update(SQLUtil.SCRIPT_START+"""
|
||||||
|
/* 시군구 설정정보 수정 (ogdpMapper.updateSgg) */
|
||||||
|
UPDATE TB_SGG
|
||||||
|
SET MDFCN_DT =
|
||||||
|
"""
|
||||||
|
+SQLUtil.now
|
||||||
|
+"""
|
||||||
|
, MDFR = #{sgg.modifiedBy}
|
||||||
|
, INST_ZIP = #{sgg.instituteZipCode} <!-- 기관 우편번호 -->
|
||||||
|
, INST_ADDR = #{sgg.instAddress} <!-- 기관 기본 주소 -->
|
||||||
|
, INST_DADDR = #{sgg.instDetailAddress} <!-- 기관 상세 주소 -->
|
||||||
|
<if test="sgg.symbolFilepath != null">
|
||||||
|
, SYMBOL_FILE_PATH = #{sgg.symbolFilepath} <!-- 상징 파일 경로 -->
|
||||||
|
, SYMBOL_FILE_NM = #{sgg.symbolFilename} <!-- 상징 파일 명 -->
|
||||||
|
</if>
|
||||||
|
<if test="sgg.logoFilepath != null">
|
||||||
|
, LOGO_FILE_PATH = #{sgg.logoFilepath} <!-- 로고 파일 경로 -->
|
||||||
|
, LOGO_FILE_NM = #{sgg.logoFilename} <!-- 로고 파일 명 -->
|
||||||
|
</if>
|
||||||
|
<if test="sgg.officialSealFilepath != null">
|
||||||
|
, OFFCS_FILE_PATH = #{sgg.officialSealFilepath} <!-- 직인 파일 경로 -->
|
||||||
|
, OFFCS_FILE_NM = #{sgg.officialSealFilename} <!-- 직인 파일 명 -->
|
||||||
|
</if>
|
||||||
|
WHERE SGG_CD = #{sgg.sggID}
|
||||||
|
"""+SQLUtil.SCRIPT_END)
|
||||||
|
int updateSgg(Map<String, Object> params);
|
||||||
|
|
||||||
|
/**지정한 조건에 따라 시군구 객체를 반환한다.
|
||||||
|
* @param req 시군구 조회 조건
|
||||||
|
* @return 시군구 객체
|
||||||
|
*/
|
||||||
|
default DataObject selectSggInfo(OgdpQuery req) {
|
||||||
|
|
||||||
|
// 사용 여부 확인
|
||||||
|
if (req.getUseYn() == null) {
|
||||||
|
req.setUseYn("Y");
|
||||||
|
}
|
||||||
|
|
||||||
|
return selectSgg(req);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**지정한 조건에 따라 시군구 객체들을 반환한다.
|
||||||
|
* @param req 시군구 조회 조건
|
||||||
|
* @return 시군구 객체 목록
|
||||||
|
*/
|
||||||
|
@SelectProvider(type=OgdpMapper.class, method="selectSggProvider")
|
||||||
|
DataObject selectSgg(OgdpQuery req);
|
||||||
|
|
||||||
|
public static String selectSggProvider() {
|
||||||
|
|
||||||
|
String comment = " /* 시군구 객체 가져오기(ogdpMapper.selectSggs) */ ";
|
||||||
|
|
||||||
|
String selectFrom = """
|
||||||
|
SELECT S.SGG_CD <!-- 시군구 코드 -->
|
||||||
|
, S.SGG_NM <!-- 시군구 명 -->
|
||||||
|
, S.INST_SE_CD <!-- 기관 구분 코드 -->
|
||||||
|
, S.INST_CD <!-- 기관 코드 -->
|
||||||
|
, S.INST_NM <!-- 기관 명 -->
|
||||||
|
, (CASE
|
||||||
|
WHEN S.INST_DADDR IS NULL OR S.INST_DADDR = ''
|
||||||
|
THEN S.INST_ADDR
|
||||||
|
ELSE CONCAT(S.INST_ADDR,' ',S.INST_DADDR)
|
||||||
|
END) AS INST_FULL_ADDR <!-- 기관 전체 주소 -->
|
||||||
|
, S.INST_ADDR <!-- 기관 기본 주소 -->
|
||||||
|
, S.INST_DADDR <!-- 기관 상세 주소 -->
|
||||||
|
, S.INST_ZIP <!-- 기관 우편번호 -->
|
||||||
|
, S.SYMBOL_FILE_PATH <!-- 상징 파일 경로 -->
|
||||||
|
, S.SYMBOL_FILE_NM <!-- 상징 파일 명 -->
|
||||||
|
, S.LOGO_FILE_PATH <!-- 로고 파일 경로 -->
|
||||||
|
, S.LOGO_FILE_NM <!-- 로고 파일 명 -->
|
||||||
|
, S.OFFCS_FILE_PATH <!-- 직인 파일 경로 -->
|
||||||
|
, S.OFFCS_FILE_NM <!-- 직인 파일 명 -->
|
||||||
|
FROM TB_SGG S
|
||||||
|
""";
|
||||||
|
String where = """
|
||||||
|
<where>
|
||||||
|
<if test="sggCd != null">
|
||||||
|
AND S.SGG_CD = #{sggCd} <!-- 시군구 코드 -->
|
||||||
|
</if>
|
||||||
|
<if test="useYn != null">
|
||||||
|
AND S.USE_YN = #{useYn} <!-- 사용 여부 -->
|
||||||
|
</if>
|
||||||
|
</where>
|
||||||
|
""";
|
||||||
|
|
||||||
|
return SQLUtil.SCRIPT_START
|
||||||
|
+ comment
|
||||||
|
+ selectFrom + where
|
||||||
|
+ SQLUtil.SCRIPT_END;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**부서 사용여부를 변경한다.
|
||||||
|
* @param deptCds 부서 코드 목록
|
||||||
|
* @return 저장된 정보 수
|
||||||
|
*/
|
||||||
|
default int setStatus(String useYn, String... deptCds) {
|
||||||
|
DataObject params = params();
|
||||||
|
params.set("useYn", useYn);
|
||||||
|
params.set("deptCds", deptCds);
|
||||||
|
int effected = setStatus(params);
|
||||||
|
return effected;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**부서 사용여부를 변경한다.
|
||||||
|
* @param params 파라미터
|
||||||
|
* <ul><li>"deptCds" - 부서 코드 목록</li>
|
||||||
|
* <li>"currentUser" - 현재 접속한 사용자</li>
|
||||||
|
* </ul>
|
||||||
|
* @return 저장된 정보수
|
||||||
|
*/
|
||||||
|
@Update(SQLUtil.SCRIPT_START+"""
|
||||||
|
/* 부서 사용 여부 변경(ogdpMapper.setStatus) */
|
||||||
|
UPDATE TB_DEPT
|
||||||
|
SET USE_YN = #{useYn} <!-- 사용 여부 -->
|
||||||
|
, MDFCN_DT =
|
||||||
|
"""
|
||||||
|
+SQLUtil.now
|
||||||
|
+"""
|
||||||
|
<!-- 수정 일시 -->
|
||||||
|
, MDFR = #{currentUser.id} <!-- 수정자 -->
|
||||||
|
WHERE DEPT_CD IN ( <foreach collection="deptCds" item="deptCd" separator=","> #{deptCd} </foreach> )<!-- 부서 코드 -->
|
||||||
|
"""+SQLUtil.SCRIPT_END)
|
||||||
|
int setStatus(Map<String, ?> params);
|
||||||
|
|
||||||
|
|
||||||
|
@InsertProvider(type=OgdpMapper.class, method="insertDeptProvider")
|
||||||
|
int insertDept(Map<String, Object> params);
|
||||||
|
|
||||||
|
/**부서 정보를 등록한다.
|
||||||
|
* @param params 파라미터
|
||||||
|
* <ul><li>"dept" - 부서 정보</li>
|
||||||
|
* <li>"currentUser" - 현재 접속한 사용자</li>
|
||||||
|
* </ul>
|
||||||
|
* @return 저장된 정보수
|
||||||
|
*/
|
||||||
|
public static String insertDeptProvider(Map<String, Object> params) {
|
||||||
|
|
||||||
|
String comment = "/* 부서 등록(ogdpMapper.insertDept) */ ";
|
||||||
|
|
||||||
|
String insertInto = """
|
||||||
|
INSERT
|
||||||
|
INTO TB_DEPT (
|
||||||
|
DEPT_CD <!-- 부서 코드 -->
|
||||||
|
, SGG_CD <!-- 시군구 코드 -->
|
||||||
|
, INST_CD <!-- 기관 코드 -->
|
||||||
|
, DEPT_NM <!-- 부서 명 -->
|
||||||
|
, DEPT_TELNO <!-- 부서 전화번호 -->
|
||||||
|
, DEPT_FXNO <!-- 부서 팩스번호 -->
|
||||||
|
, USE_YN <!-- 사용 여부 -->
|
||||||
|
, REG_DT <!-- 등록 일시 -->
|
||||||
|
, RGTR <!-- 등록자 -->
|
||||||
|
, MDFCN_DT <!-- 수정 일시 -->
|
||||||
|
, MDFR <!-- 수정자 -->
|
||||||
|
""";
|
||||||
|
String values = """
|
||||||
|
) VALUES (
|
||||||
|
#{dept.deptID} <!-- 부서 코드 -->
|
||||||
|
, #{dept.sggID} <!-- 시군구 코드 -->
|
||||||
|
, #{dept.instCode} <!-- 기관 코드 -->
|
||||||
|
, #{dept.name} <!-- 부서 명 -->
|
||||||
|
, #{dept.telno} <!-- 부서 전화번호 -->
|
||||||
|
, #{dept.faxno} <!-- 부서 팩스번호 -->
|
||||||
|
, 'Y' <!-- 사용 여부 -->
|
||||||
|
,
|
||||||
|
"""
|
||||||
|
+SQLUtil.now
|
||||||
|
+"""
|
||||||
|
, #{dept.createdBy} <!-- 등록자 -->
|
||||||
|
,
|
||||||
|
"""
|
||||||
|
+SQLUtil.now
|
||||||
|
+"""
|
||||||
|
, #{dept.modifiedBy} <!-- 수정자 -->
|
||||||
|
""";
|
||||||
|
String close = ")";
|
||||||
|
|
||||||
|
String insertIntoAdd = params.get("insertIntoAdd") == null ? "" : (String)params.get("insertIntoAdd");
|
||||||
|
String valuesAdd = params.get("valuesAdd") == null ? "" : (String)params.get("valuesAdd");
|
||||||
|
|
||||||
|
return SQLUtil.SCRIPT_START
|
||||||
|
+ comment
|
||||||
|
+ insertInto + insertIntoAdd + values + valuesAdd + close
|
||||||
|
+ SQLUtil.SCRIPT_END;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@UpdateProvider(type=OgdpMapper.class, method="updateDeptProvider")
|
||||||
|
int updateDept(Map<String, Object> params);
|
||||||
|
|
||||||
|
|
||||||
|
public static String updateDeptProvider(Map<String, Object> params) {
|
||||||
|
|
||||||
|
|
||||||
|
String comment = "/* 부서 수정(ogdpMapper.updateDept) */ ";
|
||||||
|
|
||||||
|
String updateSet = """
|
||||||
|
UPDATE TB_DEPT
|
||||||
|
SET SGG_CD = #{dept.sggID} <!-- 시군구 코드 -->
|
||||||
|
, INST_CD = #{dept.instCode} <!-- 기관 코드 -->
|
||||||
|
, DEPT_NM = #{dept.name} <!-- 부서 명 -->
|
||||||
|
, DEPT_TELNO = #{dept.telno} <!-- 부서 전화번호 -->
|
||||||
|
, DEPT_FXNO = #{dept.faxno} <!-- 부서 팩스번호 -->
|
||||||
|
, MDFCN_DT =
|
||||||
|
"""
|
||||||
|
+SQLUtil.now
|
||||||
|
+"""
|
||||||
|
<!-- 수정 일시 -->
|
||||||
|
, MDFR = #{dept.modifiedBy} <!-- 수정자 -->
|
||||||
|
""";
|
||||||
|
String where = """
|
||||||
|
WHERE DEPT_CD = #{dept.deptID}
|
||||||
|
AND USE_YN = 'Y'
|
||||||
|
""";
|
||||||
|
|
||||||
|
String updateSetAdd = params.get("updateSetAdd") == null ? "" : (String)params.get("updateSetAdd");
|
||||||
|
|
||||||
|
return SQLUtil.SCRIPT_START
|
||||||
|
+ comment
|
||||||
|
+ updateSet + updateSetAdd + where
|
||||||
|
+ SQLUtil.SCRIPT_END;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@SelectProvider(type=OgdpMapper.class, method="selectDeptInfoProvider")
|
||||||
|
DataObject selectDeptInfo(OgdpQuery req);
|
||||||
|
|
||||||
|
public static String selectDeptInfoProvider(OgdpQuery req) {
|
||||||
|
|
||||||
|
String comment = "/* 부서 객체 가져오기(ogdpMapper.selectDeptInfo) */ ";
|
||||||
|
|
||||||
|
String selectFromWhere = selectDept(req);
|
||||||
|
|
||||||
|
return SQLUtil.SCRIPT_START
|
||||||
|
+ comment
|
||||||
|
+ selectFromWhere
|
||||||
|
+ SQLUtil.SCRIPT_END;
|
||||||
|
}
|
||||||
|
|
||||||
|
@SelectProvider(type=OgdpMapper.class, method="selectDeptListProvider")
|
||||||
|
List<DataObject> selectDeptList(OgdpQuery query);
|
||||||
|
|
||||||
|
public static String selectDeptListProvider(OgdpQuery req) {
|
||||||
|
|
||||||
|
|
||||||
|
String comment = "/* 부서 객체 목록 가져오기(ogdpMapper.selectDeptList) */ ";
|
||||||
|
|
||||||
|
String selectFromWhere = selectDept(req);
|
||||||
|
|
||||||
|
return SQLUtil.SCRIPT_START
|
||||||
|
+ comment
|
||||||
|
+ SQLUtil.pagingPrefix
|
||||||
|
+ selectFromWhere
|
||||||
|
+ SQLUtil.orderBy
|
||||||
|
+ SQLUtil.pagingSuffix
|
||||||
|
+ SQLUtil.SCRIPT_END;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String selectDept(OgdpQuery req) {
|
||||||
|
String select = """
|
||||||
|
SELECT D.DEPT_CD <!-- 부서 코드 -->
|
||||||
|
, D.SGG_CD <!-- 시군구 코드 -->
|
||||||
|
, (SELECT SGG_NM FROM TB_SGG WHERE SGG_CD = D.SGG_CD) AS SGG_NM <!-- 시군구 명 -->
|
||||||
|
, D.INST_CD <!-- 기관 코드 -->
|
||||||
|
, (SELECT INST_NM FROM TB_SGG WHERE INST_CD = D.INST_CD) AS INST_NM <!-- 기관 명 -->
|
||||||
|
, D.DEPT_NM <!-- 부서 명 -->
|
||||||
|
, D.DEPT_TELNO <!-- 부서 전화번호 -->
|
||||||
|
, D.DEPT_FXNO <!-- 부서 팩스번호 -->
|
||||||
|
, D.USE_YN <!-- 사용 여부 -->
|
||||||
|
, (CASE D.USE_YN WHEN 'Y' THEN '사용' WHEN 'N' THEN '미사용' ELSE '' END) AS USE_YN_NM <!-- 사용 여부 명 -->
|
||||||
|
, D.REG_DT <!-- 등록 일시 -->
|
||||||
|
, D.RGTR <!-- 등록자 -->
|
||||||
|
, D.MDFCN_DT <!-- 수정 일시 -->
|
||||||
|
, D.MDFR <!-- 수정자 -->
|
||||||
|
""";
|
||||||
|
|
||||||
|
String fromWhere = """
|
||||||
|
FROM TB_DEPT D
|
||||||
|
<where>
|
||||||
|
<if test="sggCd != null">
|
||||||
|
AND D.SGG_CD = #{sggCd} <!-- 시군구 코드 -->
|
||||||
|
</if>
|
||||||
|
<if test="deptCd != null">
|
||||||
|
AND D.DEPT_CD = #{deptCd} <!-- 부서 코드 -->
|
||||||
|
</if>
|
||||||
|
<if test="instCd != null">
|
||||||
|
AND D.INST_CD = #{instCd} <!-- 기관 코드 -->
|
||||||
|
</if>
|
||||||
|
<if test="useYn != null">
|
||||||
|
AND D.USE_YN = #{useYn} <!-- 사용 여부 -->
|
||||||
|
</if>
|
||||||
|
</where>
|
||||||
|
""";
|
||||||
|
return select + req.getSelectAdd() + fromWhere;
|
||||||
|
}
|
||||||
|
}
|
@ -1,41 +0,0 @@
|
|||||||
package cokr.xit.applib.ogdp.service;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import cokr.xit.applib.ogdp.OgdpQuery;
|
|
||||||
import cokr.xit.base.user.Department;
|
|
||||||
import cokr.xit.foundation.data.DataObject;
|
|
||||||
|
|
||||||
public interface OgdpService {
|
|
||||||
|
|
||||||
/**지정한 조건에 따라 부서 목록을 조회하여 반환한다.
|
|
||||||
* @param req 부서 정보 조회 조건
|
|
||||||
* @return 부서 목록
|
|
||||||
*/
|
|
||||||
List<DataObject> getDeptList(OgdpQuery req);
|
|
||||||
|
|
||||||
/**지정한 조건에 따라 부서 객체를 반환한다.
|
|
||||||
* @param req 부서 조회 조건
|
|
||||||
* @return 부서 객체
|
|
||||||
*/
|
|
||||||
DataObject getDeptInfo(OgdpQuery req);
|
|
||||||
|
|
||||||
/**부서 정보를 등록한다.
|
|
||||||
* @param dept 부서
|
|
||||||
* @return 저장 여부
|
|
||||||
* <ul><li>저장됐으면 true</li>
|
|
||||||
* <li>그렇지 않으면 false</li>
|
|
||||||
* </ul>
|
|
||||||
*/
|
|
||||||
String create(Department dept);
|
|
||||||
|
|
||||||
/**부서 정보를 수정한다.
|
|
||||||
* @param dept 부서
|
|
||||||
* @return 저장 여부
|
|
||||||
* <ul><li>저장됐으면 true</li>
|
|
||||||
* <li>그렇지 않으면 false</li>
|
|
||||||
* </ul>
|
|
||||||
*/
|
|
||||||
String update(Department dept);
|
|
||||||
|
|
||||||
}
|
|
@ -0,0 +1,133 @@
|
|||||||
|
package cokr.xit.applib.ogdp.service.bean;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
|
import cokr.xit.applib.ogdp.OgdpQuery;
|
||||||
|
import cokr.xit.applib.ogdp.OgdpSigungu;
|
||||||
|
import cokr.xit.applib.ogdp.dao.OgdpMapper;
|
||||||
|
import cokr.xit.base.user.Department;
|
||||||
|
import cokr.xit.foundation.UserInfo;
|
||||||
|
import cokr.xit.foundation.component.AbstractBean;
|
||||||
|
import cokr.xit.foundation.data.DataObject;
|
||||||
|
|
||||||
|
public abstract class AbstractOgdpBean extends AbstractBean {
|
||||||
|
|
||||||
|
@Resource(name="ogdpMapper")
|
||||||
|
private OgdpMapper ogdpMapper;
|
||||||
|
|
||||||
|
public Object selectAllOgdpList() {
|
||||||
|
return ogdpMapper.selectAllOgdpList();
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<DataObject> selectAbleOgdpList(DataObject params) {
|
||||||
|
return ogdpMapper.selectAbleOgdpList(params);
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<DataObject> selectAllInstList() {
|
||||||
|
return ogdpMapper.selectAllInstList();
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<DataObject> selectAllSggList(){
|
||||||
|
return ogdpMapper.selectAllSggList();
|
||||||
|
}
|
||||||
|
|
||||||
|
public DataObject selectOgdpInfoOfUser(String userId){
|
||||||
|
return ogdpMapper.selectOgdpInfoOfUser(userId);
|
||||||
|
}
|
||||||
|
|
||||||
|
public String selectSggCdByDeptCd(String deptCd) {
|
||||||
|
return ogdpMapper.selectSggCdByDeptCd(deptCd);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**userInfo 객체에 해당 사용자가 소속된 시군구,기관,부서 정보를 저장한다.
|
||||||
|
* @param userInfo 사용자 정보
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public void initUserInfo(UserInfo userInfo) {
|
||||||
|
|
||||||
|
DataObject ogdpInfo = ogdpMapper.selectOgdpInfoOfUser(userInfo.getId());
|
||||||
|
|
||||||
|
Map<String, Object> infoMap = userInfo.getInfo();
|
||||||
|
if(ogdpInfo == null) {
|
||||||
|
infoMap.put("sggCd", "");
|
||||||
|
infoMap.put("sggNm", "");
|
||||||
|
infoMap.put("instCd", "");
|
||||||
|
infoMap.put("instNm", "");
|
||||||
|
infoMap.put("deptCd", "");
|
||||||
|
infoMap.put("deptNm", "");
|
||||||
|
} else {
|
||||||
|
infoMap.put("sggCd", ogdpInfo.string("SGG_CD"));
|
||||||
|
infoMap.put("sggNm", ogdpInfo.string("SGG_NM"));
|
||||||
|
infoMap.put("instCd", ogdpInfo.string("INST_CD"));
|
||||||
|
infoMap.put("instNm", ogdpInfo.string("INST_NM"));
|
||||||
|
infoMap.put("deptCd", ogdpInfo.string("DEPT_CD"));
|
||||||
|
infoMap.put("deptNm", ogdpInfo.string("DEPT_NM"));
|
||||||
|
}
|
||||||
|
|
||||||
|
userInfo.setInfo(infoMap);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**시군구 정보를 수정한다.
|
||||||
|
* @param sgg 시군구
|
||||||
|
* @return 저장 여부
|
||||||
|
* <ul><li>저장됐으면 true</li>
|
||||||
|
* <li>그렇지 않으면 false</li>
|
||||||
|
* </ul>
|
||||||
|
*/
|
||||||
|
public boolean updateSgg(OgdpSigungu sgg) {
|
||||||
|
return ogdpMapper.updateSgg(sgg);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**지정한 조건에 따라 시군구 객체를 반환한다.
|
||||||
|
* @param req 시군구 조회 조건
|
||||||
|
* @return 시군구 객체
|
||||||
|
*/
|
||||||
|
public DataObject getSggInfo(OgdpQuery req) {
|
||||||
|
return ogdpMapper.selectSggInfo(req);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**부서 정보를 삭제한다.
|
||||||
|
* @param deptCds 부서 코드 목록
|
||||||
|
* @return 저장 여부
|
||||||
|
* <ul><li>저장됐으면 true</li>
|
||||||
|
* <li>그렇지 않으면 false</li>
|
||||||
|
* </ul>
|
||||||
|
*/
|
||||||
|
public boolean remove(String... deptCds) {
|
||||||
|
return ogdpMapper.setStatus("N", deptCds) > 0 ? true : false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**지정한 조건에 따라 부서 목록을 조회하여 반환한다.
|
||||||
|
* @param req 부서 정보 조회 조건
|
||||||
|
* @return 부서 목록
|
||||||
|
*/
|
||||||
|
public abstract List<DataObject> getDeptList(OgdpQuery req);
|
||||||
|
|
||||||
|
/**지정한 조건에 따라 부서 객체를 반환한다.
|
||||||
|
* @param req 부서 조회 조건
|
||||||
|
* @return 부서 객체
|
||||||
|
*/
|
||||||
|
public abstract DataObject getDeptInfo(OgdpQuery req);
|
||||||
|
|
||||||
|
/**부서 정보를 등록한다.
|
||||||
|
* @param dept 부서
|
||||||
|
* @return 저장 여부
|
||||||
|
* <ul><li>저장됐으면 true</li>
|
||||||
|
* <li>그렇지 않으면 false</li>
|
||||||
|
* </ul>
|
||||||
|
*/
|
||||||
|
public abstract boolean createDept(Department dept);
|
||||||
|
|
||||||
|
/**부서 정보를 수정한다.
|
||||||
|
* @param dept 부서
|
||||||
|
* @return 저장 여부
|
||||||
|
* <ul><li>저장됐으면 true</li>
|
||||||
|
* <li>그렇지 않으면 false</li>
|
||||||
|
* </ul>
|
||||||
|
*/
|
||||||
|
public abstract boolean updateDept(Department dept);
|
||||||
|
}
|
@ -1,82 +0,0 @@
|
|||||||
package cokr.xit.applib.ogdp.service.bean;
|
|
||||||
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
|
|
||||||
import org.springframework.stereotype.Component;
|
|
||||||
|
|
||||||
import cokr.xit.applib.ogdp.OgdpQuery;
|
|
||||||
import cokr.xit.applib.ogdp.OgdpSigungu;
|
|
||||||
import cokr.xit.applib.ogdp.dao.CmmnOgdpMapper;
|
|
||||||
import cokr.xit.foundation.UserInfo;
|
|
||||||
import cokr.xit.foundation.component.AbstractBean;
|
|
||||||
import cokr.xit.foundation.data.DataObject;
|
|
||||||
|
|
||||||
@Component("cmmnOgdpBean")
|
|
||||||
public class CmmnOgdpBean extends AbstractBean {
|
|
||||||
|
|
||||||
@Resource(name="cmmnOgdpMapper")
|
|
||||||
private CmmnOgdpMapper cmmnOgdpMapper;
|
|
||||||
|
|
||||||
|
|
||||||
/**userInfo 객체에 해당 사용자가 소속된 시군구,기관,부서 정보를 저장한다.
|
|
||||||
* @param userInfo 사용자 정보
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
public void initUserInfo(UserInfo userInfo) {
|
|
||||||
|
|
||||||
DataObject ogdpInfo = cmmnOgdpMapper.selectOgdpInfoOfUser(userInfo.getId());
|
|
||||||
|
|
||||||
Map<String, Object> infoMap = userInfo.getInfo();
|
|
||||||
if(ogdpInfo == null) {
|
|
||||||
infoMap.put("sggCd", "");
|
|
||||||
infoMap.put("sggNm", "");
|
|
||||||
infoMap.put("instCd", "");
|
|
||||||
infoMap.put("instNm", "");
|
|
||||||
infoMap.put("deptCd", "");
|
|
||||||
infoMap.put("deptNm", "");
|
|
||||||
} else {
|
|
||||||
infoMap.put("sggCd", ogdpInfo.string("SGG_CD"));
|
|
||||||
infoMap.put("sggNm", ogdpInfo.string("SGG_NM"));
|
|
||||||
infoMap.put("instCd", ogdpInfo.string("INST_CD"));
|
|
||||||
infoMap.put("instNm", ogdpInfo.string("INST_NM"));
|
|
||||||
infoMap.put("deptCd", ogdpInfo.string("DEPT_CD"));
|
|
||||||
infoMap.put("deptNm", ogdpInfo.string("DEPT_NM"));
|
|
||||||
}
|
|
||||||
|
|
||||||
userInfo.setInfo(infoMap);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**시군구 정보를 수정한다.
|
|
||||||
* @param sgg 시군구
|
|
||||||
* @return 저장 여부
|
|
||||||
* <ul><li>저장됐으면 true</li>
|
|
||||||
* <li>그렇지 않으면 false</li>
|
|
||||||
* </ul>
|
|
||||||
*/
|
|
||||||
public boolean updateSgg(OgdpSigungu sgg) {
|
|
||||||
return cmmnOgdpMapper.updateSgg(sgg);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**지정한 조건에 따라 시군구 객체를 반환한다.
|
|
||||||
* @param req 시군구 조회 조건
|
|
||||||
* @return 시군구 객체
|
|
||||||
*/
|
|
||||||
public DataObject getSggInfo(OgdpQuery req) {
|
|
||||||
return cmmnOgdpMapper.selectSggInfo(req);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**부서 정보를 삭제한다.
|
|
||||||
* @param deptCds 부서 코드 목록
|
|
||||||
* @return 저장 여부
|
|
||||||
* <ul><li>저장됐으면 true</li>
|
|
||||||
* <li>그렇지 않으면 false</li>
|
|
||||||
* </ul>
|
|
||||||
*/
|
|
||||||
public boolean remove(String... deptCds) {
|
|
||||||
return cmmnOgdpMapper.setStatus("N", deptCds) > 0 ? true : false;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
@ -0,0 +1,63 @@
|
|||||||
|
package cokr.xit.applib.ogdp.service.bean;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import cokr.xit.applib.ogdp.OgdpQuery;
|
||||||
|
import cokr.xit.applib.ogdp.dao.OgdpMapper;
|
||||||
|
import cokr.xit.base.user.Department;
|
||||||
|
import cokr.xit.foundation.data.DataObject;
|
||||||
|
|
||||||
|
@Component("defaultOgdpBean")
|
||||||
|
public class DefaultOgdpBean extends AbstractOgdpBean {
|
||||||
|
|
||||||
|
|
||||||
|
@Resource(name = "ogdpMapper")
|
||||||
|
private OgdpMapper ogdpMapper;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<DataObject> getDeptList(OgdpQuery query) {
|
||||||
|
// 기본 정렬
|
||||||
|
if (query.getOrderBy() == null) {
|
||||||
|
if(query.getFetchSize() > 0) {
|
||||||
|
query.setOrderBy("QBODY.DEPT_CD DESC");
|
||||||
|
} else {
|
||||||
|
query.setOrderBy("D.DEPT_CD DESC");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return ogdpMapper.selectDeptList(query);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public DataObject getDeptInfo(OgdpQuery query) {
|
||||||
|
|
||||||
|
return ogdpMapper.selectDeptInfo(query);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean createDept(Department dept) {
|
||||||
|
|
||||||
|
boolean result = dept != null && ogdpMapper.insertDept(
|
||||||
|
new DataObject()
|
||||||
|
.set("currentUser", currentUser())
|
||||||
|
.set("dept", dept)) == 1;
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean updateDept(Department dept) {
|
||||||
|
boolean result = dept != null && ogdpMapper.updateDept(
|
||||||
|
new DataObject()
|
||||||
|
.set("currentUser", currentUser())
|
||||||
|
.set("dept", dept)) == 1;
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -1,43 +0,0 @@
|
|||||||
package cokr.xit.applib.ogdp.service.bean;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
|
|
||||||
import org.springframework.stereotype.Service;
|
|
||||||
|
|
||||||
import cokr.xit.applib.ogdp.OgdpQuery;
|
|
||||||
import cokr.xit.applib.ogdp.dao.DefaultOgdpMapper;
|
|
||||||
import cokr.xit.applib.ogdp.service.OgdpService;
|
|
||||||
import cokr.xit.base.user.Department;
|
|
||||||
import cokr.xit.foundation.component.AbstractServiceBean;
|
|
||||||
import cokr.xit.foundation.data.DataObject;
|
|
||||||
|
|
||||||
@Service("defaultOgdpService")
|
|
||||||
public class DefaultOgdpServiceBean extends AbstractServiceBean implements OgdpService {
|
|
||||||
|
|
||||||
@Resource(name = "defaultOgdpMapper")
|
|
||||||
private DefaultOgdpMapper defaultOgdpMapper;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public List<DataObject> getDeptList(OgdpQuery req) {
|
|
||||||
return defaultOgdpMapper.selectDeptList(req);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public DataObject getDeptInfo(OgdpQuery req) {
|
|
||||||
return defaultOgdpMapper.selectDeptInfo(req);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String create(Department dept) {
|
|
||||||
return defaultOgdpMapper.insert(dept) ? "[S]" : "[F]";
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String update(Department dept) {
|
|
||||||
return defaultOgdpMapper.update(dept) ? "[S]" : "[F]";
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
@ -1,47 +0,0 @@
|
|||||||
package cokr.xit.fims.mngt.dao;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
import org.egovframe.rte.psl.dataaccess.mapper.Mapper;
|
|
||||||
|
|
||||||
import cokr.xit.applib.ogdp.OgdpQuery;
|
|
||||||
import cokr.xit.fims.mngt.FimsDepartment;
|
|
||||||
import cokr.xit.foundation.component.AbstractMapper;
|
|
||||||
import cokr.xit.foundation.data.DataObject;
|
|
||||||
|
|
||||||
@Mapper("fimsOgdpMapper")
|
|
||||||
public interface FimsOgdpMapper extends AbstractMapper {
|
|
||||||
|
|
||||||
default DataObject selectDeptInfo(OgdpQuery req) {
|
|
||||||
// 기본 정렬
|
|
||||||
if (req.getOrderBy() == null) {
|
|
||||||
req.setOrderBy("D.DEPT_CD DESC");
|
|
||||||
}
|
|
||||||
|
|
||||||
List<DataObject> depts = selectDepts(req);
|
|
||||||
|
|
||||||
return !depts.isEmpty() ? depts.get(0) : null;
|
|
||||||
};
|
|
||||||
|
|
||||||
/**지정한 조건에 따라 부서 객체들을 반환한다.
|
|
||||||
* @param req 부서 조회 조건
|
|
||||||
* @return 부서 객체 목록
|
|
||||||
*/
|
|
||||||
List<DataObject> selectDepts(OgdpQuery req);
|
|
||||||
|
|
||||||
List<DataObject> selectDeptList(OgdpQuery query);
|
|
||||||
|
|
||||||
default boolean insertDept(FimsDepartment dept) {
|
|
||||||
return dept != null && insertDept(params().set("dept", dept)) == 1;
|
|
||||||
};
|
|
||||||
|
|
||||||
int insertDept(Map<String, Object> params);
|
|
||||||
|
|
||||||
default boolean updateDept(FimsDepartment dept) {
|
|
||||||
return dept != null && updateDept(params().set("dept", dept)) == 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
int updateDept(Map<String, Object> params);
|
|
||||||
|
|
||||||
}
|
|
@ -1,51 +0,0 @@
|
|||||||
package cokr.xit.fims.mngt.service.bean;
|
|
||||||
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
|
|
||||||
import org.springframework.stereotype.Service;
|
|
||||||
|
|
||||||
import cokr.xit.applib.ogdp.OgdpQuery;
|
|
||||||
import cokr.xit.applib.ogdp.service.OgdpService;
|
|
||||||
import cokr.xit.base.user.Department;
|
|
||||||
import cokr.xit.fims.mngt.FimsDepartment;
|
|
||||||
import cokr.xit.foundation.component.AbstractServiceBean;
|
|
||||||
import cokr.xit.foundation.data.DataObject;
|
|
||||||
|
|
||||||
|
|
||||||
@Service("fimsOgdpService")
|
|
||||||
public class FimsOgdpServiceBean extends AbstractServiceBean implements OgdpService {
|
|
||||||
|
|
||||||
@Resource(name="fimsOgdpBean")
|
|
||||||
private FimsOgdpBean fimsOgdpBean;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public List<DataObject> getDeptList(OgdpQuery query) {
|
|
||||||
return fimsOgdpBean.getDeptList(query);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public DataObject getDeptInfo(OgdpQuery query) {
|
|
||||||
return fimsOgdpBean.getDeptInfo(query);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String create(Department dept) {
|
|
||||||
if(dept instanceof FimsDepartment fdept) {
|
|
||||||
return fimsOgdpBean.createFimsDept(fdept) ? "[S]" : "[F]";
|
|
||||||
}
|
|
||||||
return "[F]";
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String update(Department dept) {
|
|
||||||
if(dept instanceof FimsDepartment fdept) {
|
|
||||||
return fimsOgdpBean.updateFimsDept(fdept) ? "[S]" : "[F]";
|
|
||||||
}
|
|
||||||
return "[F]";
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,190 +0,0 @@
|
|||||||
<?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="cokr.xit.fims.mngt.dao.FimsOgdpMapper">
|
|
||||||
|
|
||||||
<sql id="selectDept">
|
|
||||||
SELECT D.DEPT_CD <!-- 부서 코드 -->
|
|
||||||
, D.SGG_CD <!-- 시군구 코드 -->
|
|
||||||
, (SELECT SGG_NM FROM TB_SGG WHERE SGG_CD = D.SGG_CD) AS SGG_NM <!-- 시군구 명 -->
|
|
||||||
, D.INST_CD <!-- 기관 코드 -->
|
|
||||||
, (SELECT INST_NM FROM TB_SGG WHERE INST_CD = D.INST_CD) AS INST_NM <!-- 기관 명 -->
|
|
||||||
, D.DEPT_NM <!-- 부서 명 -->
|
|
||||||
, D.DEPT_TELNO <!-- 부서 전화번호 -->
|
|
||||||
, D.DEPT_FXNO <!-- 부서 팩스번호 -->
|
|
||||||
, D.CVLCPT_LINK_SE_CD <!-- 민원 연계 구분 코드 -->
|
|
||||||
, D.VRBACNT_LINK_SE_CD <!-- 가상계좌 연계 구분 코드 -->
|
|
||||||
, D.PSTOFC_NM <!-- 우체국 명 -->
|
|
||||||
, D.RG_NO_HEADER <!-- 등기 번호 헤더 -->
|
|
||||||
, D.SNDNG_LINK_SE_CD <!-- 발송 연계 구분 코드 -->
|
|
||||||
, D.EGP_CON_ORG <!-- E그린 외부기관구분코드 -->
|
|
||||||
, D.EGP_RCEPT_ID <!-- E그린 접수우체국국기호 -->
|
|
||||||
, D.EGP_APVL_NB <!-- E그린 후납계약승인번호 -->
|
|
||||||
, D.EGP_ESB_PATH <!-- E그린 ESB경로 -->
|
|
||||||
, D.EGP_POST_INST_ID <!-- E그린 우정정보센터 기관ID -->
|
|
||||||
, D.EGP_CERT_CN <!-- E그린 인증서CN -->
|
|
||||||
, D.ENS_INTERFACE_ID <!-- 세외수입 인터페이스ID -->
|
|
||||||
, D.ENS_SOURCE_CD <!-- 세외수입 소스코드 -->
|
|
||||||
, D.ENS_TARGET_CD <!-- 세외수입 타겟코드 -->
|
|
||||||
, D.ENS_URL <!-- 세외수입 URL -->
|
|
||||||
, D.NXRP_LINK_YN <!-- 세외수입 연계 여부 -->
|
|
||||||
, D.NXRP_LINK_SRVC_URL <!-- 세외수입 연계 서비스 URL -->
|
|
||||||
, D.NXRP_RGN_SE_CD <!-- 세외수입 지역 구분 코드 -->
|
|
||||||
, D.DTBN_BANK_NM <!-- 교부 은행 명 -->
|
|
||||||
, D.DTBN_ACTNO <!-- 교부 계좌번호 -->
|
|
||||||
, D.DOC_HEADER <!-- 문서 머릿말 -->
|
|
||||||
, D.SRVR_OS <!-- 서버 OS -->
|
|
||||||
, D.USE_YN <!-- 사용 여부 -->
|
|
||||||
, GET_CODE_NM('CMN003', D.USE_YN) AS USE_YN_NM <!-- 사용 여부 명 -->
|
|
||||||
, D.REG_DT <!-- 등록 일시 -->
|
|
||||||
, D.RGTR <!-- 등록자 -->
|
|
||||||
, D.MDFCN_DT <!-- 수정 일시 -->
|
|
||||||
, D.MDFR <!-- 수정자 -->
|
|
||||||
FROM TB_DEPT D
|
|
||||||
</sql>
|
|
||||||
|
|
||||||
<select id="selectDepts" parameterType="map" resultType="dataobject">
|
|
||||||
/* 부서 객체 가져오기(fimsOgdpMapper.selectDepts) */
|
|
||||||
<include refid="selectDept" />
|
|
||||||
<where>
|
|
||||||
<if test="sggCd != null">
|
|
||||||
AND D.SGG_CD = #{sggCd} <!-- 시군구 코드 -->
|
|
||||||
</if>
|
|
||||||
<if test="deptCd != null">
|
|
||||||
AND D.DEPT_CD = #{deptCd} <!-- 부서 코드 -->
|
|
||||||
</if>
|
|
||||||
<if test="instCd != null">
|
|
||||||
AND D.INST_CD = #{instCd} <!-- 기관 코드 -->
|
|
||||||
</if>
|
|
||||||
<if test="useYn != null">
|
|
||||||
AND D.USE_YN = #{useYn} <!-- 사용 여부 -->
|
|
||||||
</if>
|
|
||||||
</where>
|
|
||||||
<include refid="utility.orderBy" />
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<select id="selectDeptList" parameterType="map" resultType="dataobject">
|
|
||||||
/* 부서 목록 조회(fimsOgdpMapper.selectDeptList) */
|
|
||||||
<include refid="utility.paging-prefix" />
|
|
||||||
<include refid="selectDept" />
|
|
||||||
WHERE D.SGG_CD = #{sggCd} <!-- 시군구 코드 -->
|
|
||||||
<if test="deptCd != null">
|
|
||||||
AND D.DEPT_CD = #{deptCd} <!-- 부서 코드 -->
|
|
||||||
</if>
|
|
||||||
<if test="instCd != null">
|
|
||||||
AND D.INST_CD = #{instCd} <!-- 기관 코드 -->
|
|
||||||
</if>
|
|
||||||
<if test="useYn != null">
|
|
||||||
AND D.USE_YN = #{useYn} <!-- 사용 여부 -->
|
|
||||||
</if>
|
|
||||||
<include refid="utility.orderBy" />
|
|
||||||
<include refid="utility.paging-suffix" />
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<insert id="insertDept" parameterType="map">
|
|
||||||
/* 부서 등록(fimsOgdpMapper.insertDept) */
|
|
||||||
INSERT
|
|
||||||
INTO TB_DEPT (
|
|
||||||
DEPT_CD <!-- 부서 코드 -->
|
|
||||||
, SGG_CD <!-- 시군구 코드 -->
|
|
||||||
, INST_CD <!-- 기관 코드 -->
|
|
||||||
, DEPT_NM <!-- 부서 명 -->
|
|
||||||
, DEPT_TELNO <!-- 부서 전화번호 -->
|
|
||||||
, DEPT_FXNO <!-- 부서 팩스번호 -->
|
|
||||||
, CVLCPT_LINK_SE_CD <!-- 민원 연계 구분 코드 -->
|
|
||||||
, VRBACNT_LINK_SE_CD <!-- 가상계좌 연계 구분 코드 -->
|
|
||||||
, PSTOFC_NM <!-- 우체국 명 -->
|
|
||||||
, RG_NO_HEADER <!-- 등기 번호 헤더 -->
|
|
||||||
, SNDNG_LINK_SE_CD <!-- 발송 연계 구분 코드 -->
|
|
||||||
, EGP_CON_ORG <!-- E그린 외부기관구분코드 -->
|
|
||||||
, EGP_RCEPT_ID <!-- E그린 접수우체국국기호 -->
|
|
||||||
, EGP_APVL_NB <!-- E그린 후납계약승인번호 -->
|
|
||||||
, EGP_ESB_PATH <!-- E그린 ESB경로 -->
|
|
||||||
, EGP_POST_INST_ID <!-- E그린 우정정보센터 기관ID -->
|
|
||||||
, EGP_CERT_CN <!-- E그린 인증서CN -->
|
|
||||||
, ENS_INTERFACE_ID <!-- 세외수입 인터페이스ID -->
|
|
||||||
, ENS_SOURCE_CD <!-- 세외수입 소스코드 -->
|
|
||||||
, ENS_TARGET_CD <!-- 세외수입 타겟코드 -->
|
|
||||||
, ENS_URL <!-- 세외수입 URL -->
|
|
||||||
, NXRP_LINK_YN <!-- 세외수입 연계 여부 -->
|
|
||||||
, NXRP_RGN_SE_CD <!-- 세외수입 지역 구분 코드 -->
|
|
||||||
, DTBN_BANK_NM <!-- 교부 은행 명 -->
|
|
||||||
, DTBN_ACTNO <!-- 교부 계좌번호 -->
|
|
||||||
, DOC_HEADER <!-- 문서 머릿말 -->
|
|
||||||
, SRVR_OS <!-- 서버 OS -->
|
|
||||||
, USE_YN <!-- 사용 여부 -->
|
|
||||||
, REG_DT <!-- 등록 일시 -->
|
|
||||||
, RGTR <!-- 등록자 -->
|
|
||||||
, MDFCN_DT <!-- 수정 일시 -->
|
|
||||||
, MDFR <!-- 수정자 -->
|
|
||||||
) VALUES (
|
|
||||||
#{dept.deptID} <!-- 부서 코드 -->
|
|
||||||
, #{dept.sggID} <!-- 시군구 코드 -->
|
|
||||||
, #{dept.instCode} <!-- 기관 코드 -->
|
|
||||||
, #{dept.name} <!-- 부서 명 -->
|
|
||||||
, #{dept.telno} <!-- 부서 전화번호 -->
|
|
||||||
, #{dept.faxno} <!-- 부서 팩스번호 -->
|
|
||||||
, #{dept.cvlcptLinkSeCd} <!-- 민원 연계 구분 코드 -->
|
|
||||||
, #{dept.vrbacntLinkSeCd} <!-- 가상계좌 연계 구분 코드 -->
|
|
||||||
, #{dept.pstofcNm} <!-- 우체국 명 -->
|
|
||||||
, #{dept.rgNoHeader} <!-- 등기 번호 헤더 -->
|
|
||||||
, #{dept.sndngLinkSeCd} <!-- 발송 연계 구분 코드 -->
|
|
||||||
, #{dept.egpConOrg} <!-- E그린 외부기관구분코드 -->
|
|
||||||
, #{dept.egpRceptId} <!-- E그린 접수우체국국기호 -->
|
|
||||||
, #{dept.egpApvlNb} <!-- E그린 후납계약승인번호 -->
|
|
||||||
, #{dept.egpEsbPath} <!-- E그린 ESB경로 -->
|
|
||||||
, #{dept.egpPostInstId} <!-- E그린 우정정보센터 기관ID -->
|
|
||||||
, #{dept.egpCertCn} <!-- E그린 인증서CN -->
|
|
||||||
, #{dept.ensInterfaceId} <!-- 세외수입 인터페이스ID -->
|
|
||||||
, #{dept.ensSourceCd} <!-- 세외수입 소스코드 -->
|
|
||||||
, #{dept.ensTargetCd} <!-- 세외수입 타겟코드 -->
|
|
||||||
, #{dept.ensUrl} <!-- 세외수입 URL -->
|
|
||||||
, #{dept.nxrpLinkYn} <!-- 세외수입 연계 여부 -->
|
|
||||||
, #{dept.nxrpRgnSeCd} <!-- 세외수입 지역 구분 코드 -->
|
|
||||||
, #{dept.dtbnBankNm} <!-- 교부 은행 명 -->
|
|
||||||
, #{dept.dtbnActno} <!-- 교부 계좌번호 -->
|
|
||||||
, #{dept.docHeader} <!-- 문서 머릿말 -->
|
|
||||||
, #{dept.srvrOs} <!-- 서버 OS -->
|
|
||||||
, 'Y' <!-- 사용 여부 -->
|
|
||||||
, <include refid="utility.now" /> <!-- 등록 일시 -->
|
|
||||||
, #{dept.createdBy} <!-- 등록자 -->
|
|
||||||
, <include refid="utility.now" /> <!-- 수정 일시 -->
|
|
||||||
, #{dept.modifiedBy} <!-- 수정자 -->
|
|
||||||
)
|
|
||||||
</insert>
|
|
||||||
|
|
||||||
<update id="updateDept" parameterType="map">
|
|
||||||
/* 부서 수정(fimsOgdpMapper.updateDept) */
|
|
||||||
UPDATE TB_DEPT
|
|
||||||
SET SGG_CD = #{dept.sggID} <!-- 시군구 코드 -->
|
|
||||||
, INST_CD = #{dept.instCode} <!-- 기관 코드 -->
|
|
||||||
, DEPT_NM = #{dept.name} <!-- 부서 명 -->
|
|
||||||
, DEPT_TELNO = #{dept.telno} <!-- 부서 전화번호 -->
|
|
||||||
, DEPT_FXNO = #{dept.faxno} <!-- 부서 팩스번호 -->
|
|
||||||
, CVLCPT_LINK_SE_CD = #{dept.cvlcptLinkSeCd} <!-- 민원 연계 구분 코드 -->
|
|
||||||
, VRBACNT_LINK_SE_CD = #{dept.vrbacntLinkSeCd} <!-- 가상계좌 연계 구분 코드 -->
|
|
||||||
, PSTOFC_NM = #{dept.pstofcNm} <!-- 우체국 명 -->
|
|
||||||
, RG_NO_HEADER = #{dept.rgNoHeader} <!-- 등기 번호 헤더 -->
|
|
||||||
, SNDNG_LINK_SE_CD = #{dept.sndngLinkSeCd} <!-- 발송 연계 구분 코드 -->
|
|
||||||
, EGP_CON_ORG = #{dept.egpConOrg} <!-- E그린 외부기관구분코드 -->
|
|
||||||
, EGP_RCEPT_ID = #{dept.egpRceptId} <!-- E그린 접수우체국국기호 -->
|
|
||||||
, EGP_APVL_NB = #{dept.egpApvlNb} <!-- E그린 후납계약승인번호 -->
|
|
||||||
, EGP_ESB_PATH = #{dept.egpEsbPath} <!-- E그린 ESB경로 -->
|
|
||||||
, EGP_POST_INST_ID = #{dept.egpPostInstId} <!-- E그린 우정정보센터 기관ID -->
|
|
||||||
, EGP_CERT_CN = #{dept.egpCertCn} <!-- E그린 인증서CN -->
|
|
||||||
, ENS_INTERFACE_ID = #{dept.ensInterfaceId} <!-- 세외수입 인터페이스ID -->
|
|
||||||
, ENS_SOURCE_CD = #{dept.ensSourceCd} <!-- 세외수입 소스코드 -->
|
|
||||||
, ENS_TARGET_CD = #{dept.ensTargetCd} <!-- 세외수입 타겟코드 -->
|
|
||||||
, ENS_URL = #{dept.ensUrl} <!-- 세외수입 URL -->
|
|
||||||
, NXRP_LINK_YN = #{dept.nxrpLinkYn} <!-- 세외수입 연계 여부 -->
|
|
||||||
, NXRP_RGN_SE_CD = #{dept.nxrpRgnSeCd} <!-- 세외수입 지역 구분 코드 -->
|
|
||||||
, DTBN_BANK_NM = #{dept.dtbnBankNm} <!-- 교부 은행 명 -->
|
|
||||||
, DTBN_ACTNO = #{dept.dtbnActno} <!-- 교부 계좌번호 -->
|
|
||||||
, DOC_HEADER = #{dept.docHeader} <!-- 문서 머릿말 -->
|
|
||||||
, SRVR_OS = #{dept.srvrOs} <!-- 서버 OS -->
|
|
||||||
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
|
|
||||||
, MDFR = #{dept.modifiedBy} <!-- 수정자 -->
|
|
||||||
WHERE DEPT_CD = #{dept.deptID}
|
|
||||||
AND USE_YN = 'Y'
|
|
||||||
</update>
|
|
||||||
|
|
||||||
</mapper>
|
|
@ -1,174 +0,0 @@
|
|||||||
<?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="cokr.xit.applib.ogdp.dao.CmmnOgdpMapper">
|
|
||||||
|
|
||||||
<select id="selectAllOgdpList" resultType="dataobject">
|
|
||||||
/* 전체 기관,부서 목록 조회(cmmnOgdpMapper.selectAllOgdpList) */
|
|
||||||
SELECT CONCAT(A.INST_CD,'/',B.DEPT_CD) AS OGDP_CD
|
|
||||||
, CONCAT(A.INST_NM,' / ',B.DEPT_NM) AS OGDP_NM
|
|
||||||
, A.INST_CD
|
|
||||||
, A.INST_NM
|
|
||||||
, B.DEPT_CD
|
|
||||||
, B.DEPT_NM
|
|
||||||
, A.SGG_CD
|
|
||||||
, A.SGG_NM
|
|
||||||
FROM TB_SGG A
|
|
||||||
LEFT OUTER JOIN TB_DEPT B ON (A.INST_CD = B.INST_CD)
|
|
||||||
UNION
|
|
||||||
SELECT ('default/default') AS OGDP_CD
|
|
||||||
, CONCAT('기본 기관',' / ','기본 부서') AS OGDP_NM
|
|
||||||
, 'default' AS INST_CD
|
|
||||||
, '기본 기관' AS INST_NM
|
|
||||||
, 'default' AS DEPT_CD
|
|
||||||
, '기본 부서' AS DEPT_NM
|
|
||||||
, 'default' AS SGG_CD
|
|
||||||
, '기본 시군구' AS SGG_NM
|
|
||||||
FROM DUAL
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<select id="selectAbleOgdpList" parameterType="map" resultType="dataobject">
|
|
||||||
/* 사용가능한 기관,부서 목록 조회(cmmnOgdpMapper.selectAbleOgdpList) */
|
|
||||||
SELECT CONCAT(A.INST_CD,'/',B.DEPT_CD) AS OGDP_CD
|
|
||||||
, CONCAT(A.INST_NM,' / ',B.DEPT_NM) AS OGDP_NM
|
|
||||||
, A.INST_CD
|
|
||||||
, A.INST_NM
|
|
||||||
, B.DEPT_CD
|
|
||||||
, B.DEPT_NM
|
|
||||||
, A.SGG_CD
|
|
||||||
, A.SGG_NM
|
|
||||||
FROM TB_SGG A
|
|
||||||
LEFT OUTER JOIN TB_DEPT B ON (A.INST_CD = B.INST_CD)
|
|
||||||
<choose>
|
|
||||||
<when test='anonymous == "Y" '>
|
|
||||||
WHERE A.INST_CD = #{institute}
|
|
||||||
</when>
|
|
||||||
<otherwise>
|
|
||||||
<if test="currentUser.institute != 'default'">
|
|
||||||
WHERE A.SGG_CD = #{currentUser.user.orgID}
|
|
||||||
</if>
|
|
||||||
<if test="currentUser.institute == 'default'">
|
|
||||||
UNION
|
|
||||||
SELECT 'default/default' AS OGDP_CD
|
|
||||||
, CONCAT('기본 기관',' / ','기본 부서') AS OGDP_NM
|
|
||||||
, 'default' AS INST_CD
|
|
||||||
, '기본 기관' AS INST_NM
|
|
||||||
, 'default' AS DEPT_CD
|
|
||||||
, '기본 부서' AS DEPT_NM
|
|
||||||
, 'default' AS SGG_CD
|
|
||||||
, '기본 시군구' AS SGG_NM
|
|
||||||
FROM DUAL
|
|
||||||
</if>
|
|
||||||
</otherwise>
|
|
||||||
</choose>
|
|
||||||
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<select id="selectOgdpInfoOfUser" parameterType="string" resultType="dataobject">
|
|
||||||
/* 사용자의 시군구,기관,부서 조회(cmmnOgdpMapper.selectOgdpInfoOfUser) */
|
|
||||||
SELECT S.SGG_CD
|
|
||||||
, S.SGG_NM
|
|
||||||
, U.NSTT_CD AS INST_CD
|
|
||||||
, S.INST_NM
|
|
||||||
, U.DEPT_CD
|
|
||||||
, D.DEPT_NM
|
|
||||||
FROM TB_USER U
|
|
||||||
LEFT OUTER JOIN TB_SGG S ON (U.ORG_ID = S.SGG_CD)
|
|
||||||
LEFT OUTER JOIN TB_DEPT D ON (U.DEPT_CD = D.DEPT_CD)
|
|
||||||
WHERE U.USER_ID = #{userId}
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<select id="selectAllSggList" parameterType="string" resultType="dataobject">
|
|
||||||
/* 모든 시군구 조회(cmmnOgdpMapper.selectAllSggList) */
|
|
||||||
SELECT SGG_CD
|
|
||||||
, SGG_NM
|
|
||||||
FROM TB_SGG
|
|
||||||
WHERE USE_YN = 'Y'
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<select id="selectAllInstList" parameterType="string" resultType="dataobject">
|
|
||||||
/* 모든 기관 조회(cmmnOgdpMapper.selectAllInstList) */
|
|
||||||
SELECT INST_CD
|
|
||||||
, INST_NM
|
|
||||||
FROM TB_SGG
|
|
||||||
WHERE USE_YN = 'Y'
|
|
||||||
</select>
|
|
||||||
|
|
||||||
|
|
||||||
<sql id="selectSgg">
|
|
||||||
SELECT S.SGG_CD <!-- 시군구 코드 -->
|
|
||||||
, S.SGG_NM <!-- 시군구 명 -->
|
|
||||||
, S.INST_SE_CD <!-- 기관 구분 코드 -->
|
|
||||||
, S.INST_CD <!-- 기관 코드 -->
|
|
||||||
, S.INST_NM <!-- 기관 명 -->
|
|
||||||
, (CASE
|
|
||||||
WHEN S.INST_DADDR IS NULL OR S.INST_DADDR = ''
|
|
||||||
THEN S.INST_ADDR
|
|
||||||
ELSE CONCAT(S.INST_ADDR,' ',S.INST_DADDR)
|
|
||||||
END) AS INST_FULL_ADDR <!-- 기관 전체 주소 -->
|
|
||||||
, S.INST_ADDR <!-- 기관 기본 주소 -->
|
|
||||||
, S.INST_DADDR <!-- 기관 상세 주소 -->
|
|
||||||
, S.INST_ZIP <!-- 기관 우편번호 -->
|
|
||||||
, S.SYMBOL_FILE_PATH <!-- 상징 파일 경로 -->
|
|
||||||
, S.SYMBOL_FILE_NM <!-- 상징 파일 명 -->
|
|
||||||
, S.LOGO_FILE_PATH <!-- 로고 파일 경로 -->
|
|
||||||
, S.LOGO_FILE_NM <!-- 로고 파일 명 -->
|
|
||||||
, S.OFFCS_FILE_PATH <!-- 직인 파일 경로 -->
|
|
||||||
, S.OFFCS_FILE_NM <!-- 직인 파일 명 -->
|
|
||||||
FROM TB_SGG S
|
|
||||||
</sql>
|
|
||||||
|
|
||||||
<select id="selectSggs" parameterType="map" resultType="dataobject">
|
|
||||||
/* 시군구 객체 가져오기(cmmnOgdpMapper.selectSggs) */
|
|
||||||
<include refid="selectSgg" />
|
|
||||||
<where>
|
|
||||||
<if test="sggCd != null">
|
|
||||||
AND S.SGG_CD = #{sggCd} <!-- 시군구 코드 -->
|
|
||||||
</if>
|
|
||||||
<if test="useYn != null">
|
|
||||||
AND S.USE_YN = #{useYn} <!-- 사용 여부 -->
|
|
||||||
</if>
|
|
||||||
</where>
|
|
||||||
<include refid="utility.orderBy" />
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<select id="selectSggCdByDeptCd" parameterType="string" resultType="string">
|
|
||||||
/* 부서에 따른 시군구코드 조회(cmmnOgdpMapper.selectSggCdByDeptCd) */
|
|
||||||
SELECT SGG_CD
|
|
||||||
FROM TB_DEPT
|
|
||||||
WHERE DEPT_CD = #{deptCd}
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<update id="updateSgg" parameterType="map">
|
|
||||||
/* 시군구 설정정보 수정 (cmmnOgdpMapper.updateSgg) */
|
|
||||||
UPDATE TB_SGG
|
|
||||||
SET MDFCN_DT = <include refid="utility.now" />
|
|
||||||
, MDFR = #{sgg.modifiedBy}
|
|
||||||
, INST_ZIP = #{sgg.instituteZipCode} <!-- 기관 우편번호 -->
|
|
||||||
, INST_ADDR = #{sgg.instAddress} <!-- 기관 기본 주소 -->
|
|
||||||
, INST_DADDR = #{sgg.instDetailAddress} <!-- 기관 상세 주소 -->
|
|
||||||
<if test="sgg.symbolFilepath != null">
|
|
||||||
, SYMBOL_FILE_PATH = #{sgg.symbolFilepath} <!-- 상징 파일 경로 -->
|
|
||||||
, SYMBOL_FILE_NM = #{sgg.symbolFilename} <!-- 상징 파일 명 -->
|
|
||||||
</if>
|
|
||||||
<if test="sgg.logoFilepath != null">
|
|
||||||
, LOGO_FILE_PATH = #{sgg.logoFilepath} <!-- 로고 파일 경로 -->
|
|
||||||
, LOGO_FILE_NM = #{sgg.logoFilename} <!-- 로고 파일 명 -->
|
|
||||||
</if>
|
|
||||||
<if test="sgg.officialSealFilepath != null">
|
|
||||||
, OFFCS_FILE_PATH = #{sgg.officialSealFilepath} <!-- 직인 파일 경로 -->
|
|
||||||
, OFFCS_FILE_NM = #{sgg.officialSealFilename} <!-- 직인 파일 명 -->
|
|
||||||
</if>
|
|
||||||
WHERE SGG_CD = #{sgg.sggID}
|
|
||||||
</update>
|
|
||||||
|
|
||||||
<update id="setStatus" parameterType="map">
|
|
||||||
/* 부서 사용 여부 변경(cmmnOgdpMapper.setStatus) */
|
|
||||||
UPDATE TB_DEPT
|
|
||||||
SET USE_YN = #{useYn} <!-- 사용 여부 -->
|
|
||||||
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
|
|
||||||
, MDFR = #{currentUser.id} <!-- 수정자 -->
|
|
||||||
WHERE DEPT_CD IN ( <foreach collection="deptCds" item="deptCd" separator=","> #{deptCd} </foreach> )<!-- 부서 코드 -->
|
|
||||||
</update>
|
|
||||||
|
|
||||||
|
|
||||||
</mapper>
|
|
@ -1,108 +0,0 @@
|
|||||||
<?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="cokr.xit.applib.ogdp.dao.DefaultOgdpMapper">
|
|
||||||
|
|
||||||
|
|
||||||
<sql id="selectDept">
|
|
||||||
SELECT D.DEPT_CD <!-- 부서 코드 -->
|
|
||||||
, D.SGG_CD <!-- 시군구 코드 -->
|
|
||||||
, (SELECT SGG_NM FROM TB_SGG WHERE SGG_CD = D.SGG_CD) AS SGG_NM <!-- 시군구 명 -->
|
|
||||||
, D.INST_CD <!-- 기관 코드 -->
|
|
||||||
, (SELECT INST_NM FROM TB_SGG WHERE INST_CD = D.INST_CD) AS INST_NM <!-- 기관 명 -->
|
|
||||||
, D.DEPT_NM <!-- 부서 명 -->
|
|
||||||
, D.DEPT_TELNO <!-- 부서 전화번호 -->
|
|
||||||
, D.DEPT_FXNO <!-- 부서 팩스번호 -->
|
|
||||||
, D.USE_YN <!-- 사용 여부 -->
|
|
||||||
, GET_CODE_NM('CMN003', D.USE_YN) AS USE_YN_NM <!-- 사용 여부 명 -->
|
|
||||||
, D.REG_DT <!-- 등록 일시 -->
|
|
||||||
, D.RGTR <!-- 등록자 -->
|
|
||||||
, D.MDFCN_DT <!-- 수정 일시 -->
|
|
||||||
, D.MDFR <!-- 수정자 -->
|
|
||||||
FROM TB_DEPT D
|
|
||||||
</sql>
|
|
||||||
|
|
||||||
<select id="selectDeptList" parameterType="map" resultType="dataobject">
|
|
||||||
/* 부서 목록 조회(defaultOgdpMapper.selectDeptList) */
|
|
||||||
<include refid="utility.paging-prefix" />
|
|
||||||
<include refid="selectDept" />
|
|
||||||
WHERE D.SGG_CD = #{sggCd} <!-- 시군구 코드 -->
|
|
||||||
<if test="deptCd != null">
|
|
||||||
AND D.DEPT_CD = #{deptCd} <!-- 부서 코드 -->
|
|
||||||
</if>
|
|
||||||
<if test="instCd != null">
|
|
||||||
AND D.INST_CD = #{instCd} <!-- 기관 코드 -->
|
|
||||||
</if>
|
|
||||||
<if test="useYn != null">
|
|
||||||
AND D.USE_YN = #{useYn} <!-- 사용 여부 -->
|
|
||||||
</if>
|
|
||||||
<include refid="utility.orderBy" />
|
|
||||||
<include refid="utility.paging-suffix" />
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<select id="selectDepts" parameterType="map" resultType="dataobject">
|
|
||||||
/* 부서 객체 가져오기(defaultOgdpMapper.selectDepts) */
|
|
||||||
<include refid="selectDept" />
|
|
||||||
<where>
|
|
||||||
<if test="sggCd != null">
|
|
||||||
AND D.SGG_CD = #{sggCd} <!-- 시군구 코드 -->
|
|
||||||
</if>
|
|
||||||
<if test="deptCd != null">
|
|
||||||
AND D.DEPT_CD = #{deptCd} <!-- 부서 코드 -->
|
|
||||||
</if>
|
|
||||||
<if test="instCd != null">
|
|
||||||
AND D.INST_CD = #{instCd} <!-- 기관 코드 -->
|
|
||||||
</if>
|
|
||||||
<if test="useYn != null">
|
|
||||||
AND D.USE_YN = #{useYn} <!-- 사용 여부 -->
|
|
||||||
</if>
|
|
||||||
</where>
|
|
||||||
<include refid="utility.orderBy" />
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<insert id="insertDept" parameterType="map">
|
|
||||||
/* 부서 등록(defaultOgdpMapper.insertDept) */
|
|
||||||
INSERT
|
|
||||||
INTO TB_DEPT (
|
|
||||||
DEPT_CD <!-- 부서 코드 -->
|
|
||||||
, SGG_CD <!-- 시군구 코드 -->
|
|
||||||
, INST_CD <!-- 기관 코드 -->
|
|
||||||
, DEPT_NM <!-- 부서 명 -->
|
|
||||||
, DEPT_TELNO <!-- 부서 전화번호 -->
|
|
||||||
, DEPT_FXNO <!-- 부서 팩스번호 -->
|
|
||||||
, USE_YN <!-- 사용 여부 -->
|
|
||||||
, REG_DT <!-- 등록 일시 -->
|
|
||||||
, RGTR <!-- 등록자 -->
|
|
||||||
, MDFCN_DT <!-- 수정 일시 -->
|
|
||||||
, MDFR <!-- 수정자 -->
|
|
||||||
) VALUES (
|
|
||||||
#{dept.deptID} <!-- 부서 코드 -->
|
|
||||||
, #{dept.sggID} <!-- 시군구 코드 -->
|
|
||||||
, #{dept.instCode} <!-- 기관 코드 -->
|
|
||||||
, #{dept.name} <!-- 부서 명 -->
|
|
||||||
, #{dept.telno} <!-- 부서 전화번호 -->
|
|
||||||
, #{dept.faxno} <!-- 부서 팩스번호 -->
|
|
||||||
, 'Y' <!-- 사용 여부 -->
|
|
||||||
, <include refid="utility.now" /> <!-- 등록 일시 -->
|
|
||||||
, #{dept.createdBy} <!-- 등록자 -->
|
|
||||||
, <include refid="utility.now" /> <!-- 수정 일시 -->
|
|
||||||
, #{dept.modifiedBy} <!-- 수정자 -->
|
|
||||||
)
|
|
||||||
</insert>
|
|
||||||
|
|
||||||
<update id="updateDept" parameterType="map">
|
|
||||||
/* 부서 수정(defaultOgdpMapper.updateDept) */
|
|
||||||
UPDATE TB_DEPT
|
|
||||||
SET SGG_CD = #{dept.sggID} <!-- 시군구 코드 -->
|
|
||||||
, INST_CD = #{dept.instCode} <!-- 기관 코드 -->
|
|
||||||
, DEPT_NM = #{dept.name} <!-- 부서 명 -->
|
|
||||||
, DEPT_TELNO = #{dept.telno} <!-- 부서 전화번호 -->
|
|
||||||
, DEPT_FXNO = #{dept.faxno} <!-- 부서 팩스번호 -->
|
|
||||||
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
|
|
||||||
, MDFR = #{dept.modifiedBy} <!-- 수정자 -->
|
|
||||||
WHERE DEPT_CD = #{dept.deptID}
|
|
||||||
AND USE_YN = 'Y'
|
|
||||||
</update>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</mapper>
|
|
Loading…
Reference in New Issue