no message

main
이범준 1 year ago
parent 004861be9e
commit 8e3ea290ce

@ -1,38 +0,0 @@
server:
port: 8016
servlet:
context-path: /fims
spring:
application:
name: fims
main:
allow-bean-definition-overriding: true
sql:
init:
platform: mariadb
datasource:
driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
url: jdbc:log4jdbc:mariadb://211.119.124.9:4407/platform?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Seoul&useSSL=false
username: fimsweb
password: fimsweb!@
messageSource:
basenames:
- classpath:message/message-common
- classpath:message/authentication-message
- classpath:org/egovframe/rte/fdl/property/messages/properties
propertyService:
properties:
- tempDir: C:\temp
- pageUnit: 10
- pageSize: 10
# extFileName:
# - encoding: UTF-8
# filename: classpath*:properties/your-file-01.properties
# - encoding: UTF-8
# filename: classpath*:properties/your-file-02.properties

@ -1,4 +0,0 @@
log4jdbc.spylogdelegator.name=net.sf.log4jdbc.log.slf4j.Slf4jSpyLogDelegator
log4jdbc.dump.sql.maxlinelength=0
log4jdbc.drivers=org.mariadb.jdbc.Driver

@ -1,81 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 60초마다 설정 파일의 변경을 확인 하여 변경시 갱신 -->
<configuration scan="true" scanPeriod="60 seconds">
<springProperty scope="context" name="applicationName" source="spring.application.name"/>
<property name="LOG_PATH" value="logs"/>
<property name="LOG_FILE_NAME" value="${applicationName}"/>
<property name="ERR_LOG_FILE_NAME" value="${LOG_FILE_NAME}-error"/>
<property name="LOG_PATTERN" value="%d{HH:mm:ss.SSS} %-5level [%logger{0}:%line] - %msg%n"/>
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>${LOG_PATTERN}</pattern>
</encoder>
</appender>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_PATH}/${LOG_FILE_NAME}.log</file>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>${LOG_PATTERN}</pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- .gz,.zip 등을 넣으면 자동 일자별 로그파일 압축 -->
<fileNamePattern>${LOG_PATH}/${LOG_FILE_NAME}.%d{yyyy-MM-dd}_%i.log</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>10MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<maxHistory>30</maxHistory><!-- 로그파일 보관주기(일)-->
<!--<MinIndex>1</MinIndex>
<MaxIndex>10</MaxIndex>-->
</rollingPolicy>
</appender>
<appender name="Error" class="ch.qos.logback.core.rolling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>error</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
<file>${LOG_PATH}/${ERR_LOG_FILE_NAME}.log</file>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>${LOG_PATTERN}</pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- .gz,.zip 등을 넣으면 자동 일자별 로그파일 압축 -->
<fileNamePattern>${LOG_PATH}/${ERR_LOG_FILE_NAME}.%d{yyyy-MM-dd}_%i.log</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- 파일당 최고 용량 kb, mb, gb -->
<maxFileSize>10MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<!-- 일자별 로그파일 최대 보관주기(~일), 해당 설정일 이상된 파일은 자동으로 제거-->
<maxHistory>60</maxHistory>
</rollingPolicy>
</appender>
<root level="DEBUG" additivity="false">
<appender-ref ref="CONSOLE"/>
<appender-ref ref="FILE"/>
<appender-ref ref="Error"/>
</root>
<logger name="jdbc" level="OFF" additivity="false"/>
<logger name="jdbc.sqltiming" level="OFF" additivity="false"/>
<logger name="jdbc.resultsettable" level="OFF" additivity="false"/>
<logger name="jdbc.sqlonly" level="OFF"/>
<logger name="jdbc.resultset" level="OFF" additivity="false"/>
<logger name="jdbc.connection" level="OFF" additivity="false"/>
<logger name="jdbc.audit" level="OFF" additivity="false"/>
<logger name="org.apache.commons" level="OFF" additivity="false"/>
<!-- 특정패키지 로깅레벨 설정 -->
<logger name="cokr.xit" level="DEBUG" additivity="false">
<appender-ref ref="CONSOLE"/>
<appender-ref ref="FILE"/>
<appender-ref ref="Error"/>
</logger>
</configuration>

@ -1,5 +0,0 @@
authenticationFailure.usernameNotFound=\uc0ac\uc6a9\uc790\ub97c \ucc3e\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
authenticationFailure.badCredentials=\uc0ac\uc6a9\uc790 \uc544\uc774\ub514\ub098 \ube44\ubc00\ubc88\ud638\uac00 \uc798\ubabb\ub410\uc2b5\ub2c8\ub2e4.
authenticationFailure.credentialsExpired=\ube44\ubc00\ubc88\ud638\uac00 \ub9cc\ub8cc\ub410\uc2b5\ub2c8\ub2e4.
authenticationFailure.authenticationFailed=\uc0ac\uc6a9\uc790\ub97c \uc778\uc99d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
authenticationFailure.policyViolated=\ub85c\uadf8\uc778 \uc815\ucc45\uc5d0 \ub530\ub77c \uc811\uadfc\uc774 \ucc28\ub2e8\ub410\uc2b5\ub2c8\ub2e4.

@ -1,382 +0,0 @@
valueRequired={0}\uac00 \uc124\uc815\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4.
pageNotFound=\uc694\uccad\ud558\uc2e0 \ud398\uc774\uc9c0\ub97c \ucc3e\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
sessionExpired=\uc138\uc158\uc774 \ub9cc\ub8cc\ub410\uc2b5\ub2c8\ub2e4.
duplicate.object=\uc774\ubbf8 \ub4f1\ub85d\ub41c {0}\uc785\ub2c8\ub2e4.
fail.common.msg=\uc5d0\ub7ec\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4!
fail.common.sql=sql \uc5d0\ub7ec\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4! error code: {0}, error msg: {1}
info.nodata.msg=\ud574\ub2f9 \ub370\uc774\ud130\uac00 \uc5c6\uc2b5\ub2c8\ub2e4.
#UI Common resource#
table.num=\ubc88\ud638
table.regdate=\ub4f1\ub85d\uc77c
table.reger=\ub4f1\ub85d\uc790
table.select=\uc120\ud0dd
title.html=egovframe common component
title.detail=\uc0c1\uc138\uc870\ud68c
title.inquire=\uc870\ud68c
title.update=\uc218\uc815
title.create=\ub4f1\ub85d
title.delete=\uc0ad\uc81c
title.save=\uc800\uc7a5
title.list=\ubaa9\ub85d
title.searchCondition=\uac80\uc0c9\uc870\uac74
title.search=\uac80\uc0c9\uc5b4
title.reply=\ub2f5\uae00
title.scrap=\uc2a4\ud06c\ub7a9
title.comment=\ub313\uae00
title.attachedFileSelect=\ud30c\uc77c\uc120\ud0dd
title.attachedFileDelete=\ud30c\uc77c\uc0ad\uc81c
title.link=\ub9c1\ud06c
title.management=\uad00\ub9ac
title.all=\uc804\uccb4
input.select=\uc120\ud0dd\ud558\uc138\uc694
input.cSelect=\uc120\ud0dd
input.input=\uc785\ub825
input.button=\ubc84\ud2bc
input.selectAll.title=\uc804\uccb4\uc120\ud0dd\uccb4\ud06c\ubc15\uc2a4
input.yes=\uc608
input.no=\uc544\ub2c8\uc624
select.searchCondition=\uc870\ud68c\uc870\uac74 \uc120\ud0dd
button.select=\uc120\ud0dd
button.search=\uac80\uc0c9
button.use=\uc0ac\uc6a9
button.notUsed=\uc0ac\uc6a9\uc911\uc9c0
button.inquire=\uc870\ud68c
button.update=\uc218\uc815
button.create=\ub4f1\ub85d
button.delete=\uc0ad\uc81c
button.deleteDatabase=\uc644\uc804\uc0ad\uc81c
button.close=\ub2eb\uae30
button.save=\uc800\uc7a5
button.list=\ubaa9\ub85d
button.reset=\ucde8\uc18c
button.passwordUpdate=\uc554\ud638\ubcc0\uacbd
button.subscribe=\uac00\uc785\uc2e0\uccad
button.realname=\uc2e4\uba85\ud655\uc778
button.moveToGpin=GPIN\uc2e4\uba85\ud655\uc778\uc73c\ub85c \uc774\ub3d9
button.moveToIhidnum=\uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638 \uc2e4\uba85\ud655\uc778\uc73c\ub85c \uc774\ub3d9
button.agree=\ub3d9\uc758
button.disagree=\ube44\ub3d9\uc758
button.possible=\uac00\ub2a5
button.impossible=\ubd88\uac00\ub2a5
button.qnaregist=Q&A\ub4f1\ub85d
button.cnsltregist=\uc0c1\ub2f4\ub4f1\ub85d
button.preview=\ubbf8\ub9ac\ubcf4\uae30
button.next=\ub2e4\uc74c
button.add=\ubc14\ub85c\ucd94\uac00
button.confirm=\ud655\uc778
button.back = \ub4a4\ub85c
button.yes = \uc608
button.no = \uc544\ub2c8\uc624
button.home = \ud648
button.user = \uc0ac\uc6a9\uc790\uc9c0\uc6d0
button.cop = \ud611\uc5c5
button.wrkstart = \ucd9c\uadfc
button.wrkend = \ud1f4\uadfc
button.reply = \ub2f5\uae00
button.scrap = \uc2a4\ud06c\ub7a9
button.comment = \ub313\uae00
button.excel = \uc5d1\uc140
button.init=\ucd08\uae30\ud654
button.acknowledgment=\uc2b9\uc778
button.cancelAcknowledgment=\uc2b9\uc778\ucde8\uc18c
button.bulkUpload=\uc77c\uad04\ub4f1\ub85d
button.log = \ub85c\uadf8
button.set = \uc124\uc815
button.move = \uc774\ub3d9
#UI Common Message#
common.noScriptTitle.msg=\uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8\ub97c \uc9c0\uc6d0\ud558\uc9c0 \uc54a\ub294 \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c\ub294 \uc77c\ubd80 \uae30\ub2a5\uc744 \uc0ac\uc6a9\ud558\uc2e4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
common.searchCondition.msg=\uc774 \ub808\uc774\uc544\uc6c3\uc740 \ud558\ub2e8 \uc815\ubcf4\ub97c \ub300\ud55c \uac80\uc0c9 \uc815\ubcf4\ub85c \uad6c\uc131\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.
common.summary.list={0}\uc758 \ub0b4\uc5ed\uc5d0 \ub300\ud55c \ubaa9\ub85d\uc744 \ucd9c\ub825\ud569\ub2c8\ub2e4.
common.summary.regist={0}\uc758 \ub4f1\ub85d \uac00\ub2a5\ud55c \ub0b4\uc6a9\uc744 \uc785\ub825\ud558\uc5ec \ub4f1\ub85d \ubc84\ud2bc\uc744 \ud074\ub9ad\ud558\uc5ec \ub4f1\ub85d\ud55c\ub2e4.
common.summary.update={0}\uc758 \ub4f1\ub85d \uac00\ub2a5\ud55c \ub0b4\uc6a9\uc744 \uc785\ub825\ud558\uc5ec \ub4f1\ub85d \ubc84\ud2bc\uc744 \ud074\ub9ad\ud558\uc5ec \uc218\uc815\ud55c\ub2e4.
common.summary.inqire={0}\uc758 \ub0b4\uc5ed\uc5d0 \ub300\ud55c \uc0c1\uc138\uc870\ud68c \ub0b4\uc5ed\uc744 \ucd9c\ub825\ud569\ub2c8\ub2e4.
common.save.msg=\uc800\uc7a5\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
common.regist.msg=\ub4f1\ub85d\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
common.delete.msg=\uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
common.update.msg=\uc218\uc815\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
common.nodata.msg=\uc790\ub8cc\uac00 \uc5c6\uc2b5\ub2c8\ub2e4. \ub2e4\ub978 \uac80\uc0c9\uc870\uac74\uc744 \uc120\ud0dd\ud574\uc8fc\uc138\uc694
common.required.msg=(\uc740)\ub294 \ud544\uc218\uc785\ub825\ud56d\ubaa9\uc785\ub2c8\ub2e4.
common.acknowledgement.msg=\uc2b9\uc778\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
common.acknowledgementcancel.msg=\uc2b9\uc778\ucde8\uc18c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
common.nocomment.msg=\ub313\uae00\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.
common.noguest.msg=\uc791\uc131\ub41c \ubc29\uba85\ub85d\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.
success.request.msg = \uc694\uccad\ucc98\ub9ac\uac00 \uc131\uacf5\uc801\uc73c\ub85c \uc218\ud589\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
success.common.select=\uc815\uc0c1\uc801\uc73c\ub85c \uc870\ud68c\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
success.common.insert=\uc815\uc0c1\uc801\uc73c\ub85c \ub4f1\ub85d\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
success.common.update=\uc815\uc0c1\uc801\uc73c\ub85c \uc218\uc815\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
success.common.delete=\uc815\uc0c1\uc801\uc73c\ub85c \uc0ad\uc81c\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
common.imposbl.fileupload = \ub354 \uc774\uc0c1 \ud30c\uc77c\uc744 \ucca8\ubd80\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
common.isConfmDe.msg=\uc2b9\uc778\uc77c\uc790\ub97c \ud655\uc778 \ubc14\ub78d\ub2c8\ub2e4.
common.isExist.msg = \uc774\ubbf8 \uc874\uc7ac\ud558\uac70\ub098 \uacfc\uac70\uc5d0 \ub4f1\ub85d\uc774 \ub418\uc5c8\ub358 \uc0c1\ud0dc\uc785\ub2c8\ub2e4.
fail.common.insert = \uc0dd\uc131\uc774 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4.
fail.common.update = \uc218\uc815\uc774 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4.
fail.common.delete = \uc0ad\uc81c\uac00 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4.
fail.common.delete.upperMenuExist = \ucc38\uc870\ub418\ub294 \uba54\ub274\uac00 \uc788\uc5b4 \uc0ad\uc81c\uac00 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4.
fail.common.select = \uc870\ud68c\uc5d0 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4.
fail.common.login = \ub85c\uadf8\uc778 \uc815\ubcf4\uac00 \uc62c\ubc14\ub974\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
fail.common.loginIncorrect = {0}\ud68c \uc774\uc0c1 \ub85c\uadf8\uc778 \uc811\uc18d\uc774 \uc2dc\ub3c4 \ub418\uc5b4 \uacc4\uc815\uc774 \uc7a0\uaca8\uc2b5\ub2c8\ub2e4!
fail.common.login.password = \ud328\uc2a4\uc6cc\ub4dc \uc790\ub9ac \uc218\uac00 \uc77c\uce58 \ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.(8\uc790\ub9ac \uc774\uc0c1 20\uc790\ub9ac \uc774\ud558)
fail.common.idsearch = \uc544\uc774\ub514\ub97c \ucc3e\uc744\uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
fail.common.pwsearch = \ube44\ubc00\ubc88\ud638\ub97c \ucc3e\uc744\uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
fail.request.msg = \uc694\uccad\ucc98\ub9ac\ub97c \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4.
fail.common.login.ip = \ub4f1\ub85d\ub41c IP\uac00 \uc544\ub2c8\ubbc0\ub85c \ub85c\uadf8\uc778\uc774 \uac70\ubd80\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
#UI User Message#
fail.user.passwordUpdate1=\ud604\uc7ac \ube44\ubc00\ubc88\ud638\uac00 \ub9de\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
fail.user.passwordUpdate2=\ube44\ubc00\ubc88\ud638\uc640 \ube44\ubc00\ubc88\ud638 \ud655\uc778\uc774 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
info.user.rlnmCnfirm=\uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc2e4\uba85\ud655\uc778\uc744 \ud558\uc2ed\uc2dc\uc624.
success.user.rlnmCnfirm=\ud589\uc815\uc548\uc804\ubd80\uc758 \uc8fc\ubbfc\ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud569\ub2c8\ub2e4.
fail.user.rlnmCnfirm=\ud589\uc815\uc548\uc804\ubd80\uc758 \uc8fc\ubbfc\ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
fail.user.connectFail=\uc2dc\uc2a4\ud15c \uc7a5\uc560\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4.(\uc778\uc99d\uc11c\ubc84 \uc5f0\uacb0 \uc2e4\ud328)
info.user.rlnmPinCnfirm=\uacf5\uacf5 \uc544\uc774\ud540 \uc544\uc774\ub514\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc2e4\uba85\ud655\uc778\uc744 \ud558\uc2ed\uc2dc\uc624.
success.user.rlnmPinCnfirm=\uacf5\uacf5\uc544\uc774\ud540\uc758 \ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud569\ub2c8\ub2e4.
fail.user.rlnmPinCnfirm=\uacf5\uacf5\uc544\uc774\ud540\uc758 \ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
#UI Cop Message#
cop.extrlUser = \uc678\ubd80\uc0ac\uc6a9\uc790
cop.intrlUser = \ub0b4\ubd80\uc0ac\uc6a9\uc790
cop.private = \ube44\uacf5\uac1c
cop.public = \uacf5\uac1c
cop.adbkNm = \uc8fc\uc18c\ub85d\uba85
cop.othbcScope = \uacf5\uac1c\ubc94\uc704
cop.company = \ud68c\uc0ac
cop.part = \ubd80\uc11c
cop.man = \uac1c\uc778
cop.adbkUser = \uad6c\uc131\uc6d0
cop.bbsNm = \uac8c\uc2dc\ud310\uba85
cop.bbsIntrcn = \uac8c\uc2dc\ud310\uc18c\uac1c
cop.bbsTyCode = \uac8c\uc2dc\ud310 \uc720\ud615
cop.bbsAttrbCode = \uac8c\uc2dc\ud310 \uc18d\uc131
cop.replyPosblAt = \ub2f5\uc7a5\uac00\ub2a5\uc5ec\ubd80
cop.fileAtchPosblAt = \ud30c\uc77c\ucca8\ubd80\uac00\ub2a5\uc5ec\ubd80
cop.posblAtchFileNumber = \ucca8\ubd80\uac00\ub2a5\ud30c\uc77c \uc22b\uc790
cop.tmplatId = \ud15c\ud50c\ub9bf \uc815\ubcf4
cop.guestList.subject = \ubc29\uba85\ub85d \uac8c\uc2dc\uae00\uc785\ub2c8\ub2e4.
cop.nttSj = \uc81c\ubaa9
cop.nttCn = \uae00\ub0b4\uc6a9
cop.ntceBgnde = \uac8c\uc2dc\uc2dc\uc791\uc77c
cop.ntceEndde = \uac8c\uc2dc\uc885\ub8cc\uc77c
cop.ntcrNm = \uc791\uc131\uc790
cop.password = \ud328\uc2a4\uc6cc\ub4dc
cop.atchFile = \ud30c\uc77c\ucca8\ubd80
cop.guestList = \ubc29\uba85\ub85d
cop.guestListCn = \ubc29\uba85\ub85d \ub0b4\uc6a9
cop.noticeTerm = \uac8c\uc2dc\uae30\uac04
cop.atchFileList = \ucca8\ubd80\ud30c\uc77c\ubaa9\ub85d
cop.cmmntyNm = \ucee4\ubba4\ub2c8\ud2f0\uba85
cop.cmmntyIntrcn = \ucee4\ubba4\ub2c8\ud2f0 \uc18c\uac1c
cop.cmmntyMngr = \ucee4\ubba4\ub2c8\ud2f0 \uad00\ub9ac\uc790
cop.clbOprtr = \ub3d9\ud638\ud68c \uc6b4\uc601\uc790
cop.clbIntrcn = \ub3d9\ud638\ud68c \uc18c\uac1c
cop.clbNm = \ub3d9\ud638\ud68c \uba85
cop.tmplatNm = \ud15c\ud50c\ub9bf\uba85
cop.tmplatSeCode = \ud15c\ud50c\ub9bf \uad6c\ubd84
cop.tmplatCours = \ud15c\ud50c\ub9bf\uacbd\ub85c
cop.useAt = \uc0ac\uc6a9\uc5ec\ubd80
cop.ncrdNm = \uc774\ub984
cop.cmpnyNm = \ud68c\uc0ac\uba85
cop.deptNm = \ubd80\uc11c\uba85
cop.ofcpsNm = \uc9c1\uc704
cop.clsfNm = \uc9c1\uae09
cop.emailAdres = \uc774\uba54\uc77c\uc8fc\uc18c
cop.telNo = \uc804\ud654\ubc88\ud638
cop.mbtlNum = \ud734\ub300\ud3f0\ubc88\ud638
cop.adres = \uc8fc\uc18c
cop.extrlUserAt = \uc678\ubd80\uc0ac\uc6a9\uc790\uc5ec\ubd80
cop.publicAt = \uacf5\uac1c\uc5ec\ubd80
cop.remark = \ube44\uace0
cop.trgetNm = \ucee4\ubba4\ub2c8\ud2f0/\ub3d9\ud638\ud68c \uc815\ubcf4
cop.preview = \ubbf8\ub9ac\ubcf4\uae30
cop.withdraw.msg=\ud0c8\ud1f4\ucc98\ub9ac \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
cop.reregist.msg=\uc7ac\uac00\uc785 \ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
cop.registmanager.msg=\uc6b4\uc601\uc9c4\uc73c\ub85c \ub4f1\ub85d\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
cop.use.msg=\uc0ac\uc6a9 \ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
cop.unuse.msg=\uc0ac\uc6a9\uc911\uc9c0 \ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
cop.delete.confirm.msg=\uc0ac\uc6a9\uc911\uc9c0\ub97c \uc120\ud0dd\ud558\uc2e4 \uacbd\uc6b0 \ub2e4\uc2dc \uc0ac\uc6a9\uc73c\ub85c \ubcc0\uacbd\uc774 \ubd88\uac00\ub2a5\ud569\ub2c8\ub2e4.
cop.ing.msg=\uc2b9\uc778\uc694\uccad \uc911\uc785\ub2c8\ub2e4.
cop.request.msg=\uac00\uc785\uc2e0\uccad\uc774 \uc815\uc0c1\uc801\uc73c\ub85c \uc694\uccad\ub418\uc5c8\uc2b5\ub2c8\ub2e4
cop.password.msg=\ud328\uc2a4\uc6cc\ub4dc\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624.
cop.password.not.same.msg=\ud328\uc2a4\uc6cc\ub4dc\uac00 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
cop.comment.wrterNm = \uc791\uc131\uc790
cop.comment.commentCn = \ub0b4\uc6a9
cop.comment.commentPassword = \ud328\uc2a4\uc6cc\ub4dc
cop.satisfaction.wrterNm = \uc791\uc131\uc790
cop.satisfaction.stsfdgCn = \ub0b4\uc6a9
cop.satisfaction.stsfdg = \ub9cc\uc871\ub3c4
cop.satisfaction.stsfdgPassword = \ud328\uc2a4\uc6cc\ub4dc
cop.scrap.scrapNm = \uc2a4\ud06c\ub7a9\uba85
#UI USS Message#
uss.ion.noi.ntfcSj=\uc81c\ubaa9
uss.ion.noi.ntfcCn=\ub0b4\uc6a9
uss.ion.noi.ntfcDate=\uc54c\ub9bc\uc77c\uc790
uss.ion.noi.ntfcTime=\uc54c\ub9bc\uc2dc\uac04
uss.ion.noi.ntfcHH=\uc54c\ub9bc\uc2dc\uac04
uss.ion.noi.ntfcMM=\uc54c\ub9bc\ubd84
uss.ion.noi.bhNtfcIntrvl=\uc0ac\uc804\uc54c\ub9bc\uac04\uaca9
uss.ion.noi.bhNtfcIntrvl.msg=\uc0ac\uc804\uc54c\ub9bc\uac04\uaca9 \uc9c0\uc815\uc774 \ud544\uc694\ud569\ub2c8\ub2e4.
uss.ion.noi.alertNtfcTime=\uc54c\ub9bc\uc77c\uc790 \ubc0f \uc2dc\uac04\uc774 \uc720\ud6a8\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
#UI COP Message#
cop.sms.trnsmitTelno=\ubc1c\uc2e0\uc804\ud654\ubc88\ud638
cop.sms.trnsmitCn=\uc804\uc1a1\ub0b4\uc6a9
cop.sms.recptnTelno=\uc218\uc2e0\uc804\ud654\ubc88\ud638
cop.sms.send=\uc804\uc1a1
cop.sms.addRecptn=\ucd94\uac00
cop.sms.recptnTelno.msg=\uc218\uc2e0\uc804\ud654\ubc88\ud638 \uc9c0\uc815\uc774 \ud544\uc694\ud569\ub2c8\ub2e4.
#UI sym.log Message#
sym.log.histSeCode = \uc774\ub825\uad6c\ubd84
sym.log.sysNm = \uc2dc\uc2a4\ud15c\uba85
sym.log.histCn = \uc774\ub825\ub0b4\uc6a9
sym.log.atchFile = \ucca8\ubd80\ud30c\uc77c
sym.log.atchFileList = \ucca8\ubd80\ud30c\uc77c\ubaa9\ub85d
sym.ems.receiver = \ubc1b\ub294\uc0ac\ub78c
sym.ems.title = \uc81c\ubaa9
sym.ems.content = \ubc1c\uc2e0\ub0b4\uc6a9
#Vlidator Errors#
errors.prefix=<div class="error">
errors.suffix=</div><br/>
errors.required={0}\uc740(\ub294) \ud544\uc218 \uc785\ub825\uac12\uc785\ub2c8\ub2e4.
errors.minlength={0}\uc740(\ub294) {1}\uc790 \uc774\uc0c1 \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4.
errors.maxlength={0}\uc740(\ub294) {1}\uc790 \uc774\uc0c1 \uc785\ub825\ud560\uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
errors.invalid={0}\uc740(\ub294) \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uac12\uc785\ub2c8\ub2e4.
errors.minInteger={0}\uc740(\ub294) \uc720\ud6a8\ud55c \uac12\uc774 \uc544\ub2d9\ub2c8\ub2e4. 1 \uc774\uc0c1\uc758 \uac12\uc744 \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4.
errors.byte={0}\uc740(\ub294) byte\ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4.
errors.short={0}\uc740(\ub294) short\ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4.
errors.integer={0}\uc740(\ub294) \uc815\uc218 \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4.
errors.long={0}\uc740(\ub294) long \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4.
errors.float={0}\uc740(\ub294) \uc2e4\uc218 \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4.
errors.double={0}\uc740(\ub294) double \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4.
errors.date={0}\uc740(\ub294) \ub0a0\uc9dc \uc720\ud615\uc774 \uc544\ub2d9\ub2c8\ub2e4.
errors.range={0}\uc740(\ub294) {1}\uacfc {2} \uc0ac\uc774\uc758 \uac12\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4.
errors.creditcard={0}\uc740(\ub294) \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc2e0\uc6a9\uce74\ub4dc \ubc88\ud638\uc785\ub2c8\ub2e4.
errors.email={0}\uc740(\ub294) \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc774\uba54\uc77c \uc8fc\uc18c\uc785\ub2c8\ub2e4.
errors.ihidnum=\uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638\uc785\ub2c8\ub2e4.
errors.korean={0}\uc740(\ub294) \ud55c\uae00\uc744 \uc785\ub825\ud558\uc154\uc57c \ud569\ub2c8\ub2e4.
errors.ip=\uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 IP\uc8fc\uc18c\uc785\ub2c8\ub2e4.
errors.password1={0}\uc740(\ub294) 8~20\uc790 \ub0b4\uc5d0\uc11c \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4.
errors.password2={0}\uc740(\ub294) \ud55c\uae00,\ud2b9\uc218\ubb38\uc790,\ub744\uc5b4\uc4f0\uae30\ub294 \ud5c8\uc6a9\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
errors.password3={0}\uc740(\ub294) \uc21c\ucc28\uc801\uc778 \uc22b\uc790\ub97c 4\uac1c\uc774\uc0c1 \uc5f0\uc18d\ud574\uc11c \uc0ac\uc6a9\ud560\uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
errors.password4={0}\uc740(\ub294) \ubc18\ubcf5\ub418\ub294 \ubb38\uc790\ub098 \uc22b\uc790\ub97c 4\uac1c\uc774\uc0c1 \uc5f0\uc18d\ud574\uc11c \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
errors.notKorean={0}\uc740(\ub294) \ud55c\uae00\uc744 \uc0ac\uc6a9\ud558\uc2e4\uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
error.security.runtime.error = error
#Xss Errors#
errors.xss.checkerUser=\ud574\ub2f9 \uae30\ub2a5\uc5d0 \ub300\ud55c \uc0ac\uc6a9 \ubc0f \ucc98\ub9ac \uad8c\ud55c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.
#File Upload / Download
errors.file.extension=\uc9c0\uc6d0\ub418\ub294 \ud30c\uc77c\uc720\ud615\uc774 \uc544\ub2d9\ub2c8\ub2e4.
errors.file.transfer=\ud30c\uc77c\uc804\uc1a1\uc911 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4.
success.file.transfer=\ud30c\uc77c\uc804\uc1a1\uc774 \uc644\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
#Vlidator Errors- wordDicaryVO#
wordDicaryVO.wordNm=\uc6a9\uc5b4\uba85
wordDicaryVO.engNm=\uc601\ubb38\uba85
wordDicaryVO.wordDc=\uc6a9\uc5b4\uc124\uba85
wordDicaryVO.synonm=\ub3d9\uc758\uc5b4
#Vlidator Errors- cnsltManageVO#
cnsltManageVO.cnsltSj=\uc0c1\ub2f4\uc81c\ubaa9
cnsltManageVO.cnsltCn=\uc0c1\ub2f4\ub0b4\uc6a9
cnsltManageVO.writngPassword=\uc791\uc131\ube44\ubc00\ubc88\ud638
cnsltManageVO.areaNo=\uc9c0\uc5ed\ubc88\ud638
cnsltManageVO.middleTelno=\uc911\uac04\uc804\ud654\ubc88\ud638
cnsltManageVO.endTelno=\ub05d\uc804\ud654\ubc88\ud638
cnsltManageVO.wrterNm=\uc791\uc131\uc790\uba85
cnsltManageVO.managtCn=\ub2f5\ubcc0\ub0b4\uc6a9
#Vlidator Errors- siteManageVO#
siteManageVO.siteNm=\uc0ac\uc774\ud2b8\uba85
siteManageVO.siteUrl=\uc0ac\uc774\ud2b8 URL
siteManageVO.siteDc=\uc0ac\uc774\ud2b8\uc124\uba85
siteManageVO.siteThemaClCode=\uc0ac\uc774\ud2b8\uc8fc\uc81c\ubd84\ub958
siteManageVO.actvtyAt=\ud65c\uc131\uc5ec\ubd80
siteManageVO.useAt=\uc0ac\uc6a9\uc5ec\ubd80
#Vlidator Errors- recomendSiteManageVO#
recomendSiteManageVO.recomendSiteNm=\ucd94\ucc9c\uc0ac\uc774\ud2b8\uba85
recomendSiteManageVO.recomendSiteUrl=\ucd94\ucc9c\uc0ac\uc774\ud2b8 URL
recomendSiteManageVO.recomendSiteDc=\ucd94\ucc9c\uc0ac\uc774\ud2b8\uc124\uba85
recomendSiteManageVO.recomendResnCn=\ucd94\ucc9c\uc0ac\uc774\ud2b8\uc2b9\uc778\uc0ac\uc720
recomendSiteManageVO.confmDe=\uc2b9\uc778\uc77c\uc790
#Vlidator Errors- hpcmManageVO#
hpcmManageVO.hpcmSeCode=\ub3c4\uc6c0\ub9d0\uad6c\ubd84
hpcmManageVO.hpcmDf=\ub3c4\uc6c0\ub9d0\uc815\uc758
hpcmManageVO.hpcmDc=\ub3c4\uc6c0\ub9d0\uc124\uba85
#Vlidator Errors- newsManageVO#
newsManageVO.newsSj=\ub274\uc2a4\uc81c\ubaa9
newsManageVO.newsCn=\ub274\uc2a4\ub0b4\uc6a9
newsManageVO.ntceDe=\uac8c\uc2dc\uc77c\uc790
#Vlidator Errors- faqManageVO#
faqManageVO.qestnSj=\uc9c8\ubb38\uc81c\ubaa9
faqManageVO.qestnCn=\uc9c8\ubb38\ub0b4\uc6a9
faqManageVO.answerCn=\ub2f5\ubcc0\ub0b4\uc6a9
#Vlidator Errors- stplatManageVO#
stplatManageVO.useStplatNm=\uc774\uc6a9\uc57d\uad00\uba85
stplatManageVO.useStplatCn=\uc774\uc6a9\uc57d\uad00\ub0b4\uc6a9
stplatManageVO.infoProvdAgreCn=\uc815\ubcf4\uc81c\uacf5\ub3d9\uc758\ub0b4\uc6a9
#Vlidator Errors- cpyrhtPrtcPolicyVO#
cpyrhtPrtcPolicyVO.cpyrhtPrtcPolicyCn=\uc800\uc791\uad8c\ubcf4\ud638\uc815\ucc45\ub0b4\uc6a9
#Vlidator Errors- qnaManageVO#
qnaManageVO.qestnSj=\uc9c8\ubb38\uc81c\ubaa9
qnaManageVO.qestnCn=\uc9c8\ubb38\ub0b4\uc6a9
qnaManageVO.writngPassword=\uc791\uc131\ube44\ubc00\ubc88\ud638
qnaManageVO.areaNo=\uc9c0\uc5ed\ubc88\ud638
qnaManageVO.middleTelno=\uc911\uac04\uc804\ud654\ubc88\ud638
qnaManageVO.endTelno=\ub05d\uc804\ud654\ubc88\ud638
qnaManageVO.wrterNm=\uc791\uc131\uc790\uba85
qnaManageVO.answerCn=\ub2f5\ubcc0\ub0b4\uc6a9
#Vlidator Errors- ReprtStatsVO#
sts.reprtId = \ubcf4\uace0\uc11cID
sts.title = \ubcf4\uace0\uc11c\uba85
sts.category = \ubcf4\uace0\uc11c\uc720\ud615
sts.status = \uc9c4\ud589\uc0c1\ud0dc
sts.regDate = \ub4f1\ub85d\uc77c\uc2dc
#Rest day messages#
sym.cal.restDay = \ud734\uc77c\uc77c\uc790
sym.cal.restName = \ud734\uc77c\uba85
sym.cal.restDetail = \ud734\uc77c\uc124\uba85
sym.cal.restCategory = \ud734\uc77c\uad6c\ubd84
image.errorBg = \uc624\ub958\uc774\ubbf8\uc9c0
#Custom message#
custom.fail.access=\uc815\uc0c1\uc801\uc778 \uc811\uadfc\uc774 \uc544\ub2d9\ub2c8\ub2e4. \ub85c\uadf8\uc778 \ud6c4 \uc774\uc6a9\ud558\uc138\uc694.
custom.fail.accessDenied=\uc694\uccad\uc5d0 \ub300\ud55c \uad8c\ud55c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.
custom.isNotExist.msg=\ucc98\ub9ac\uc5d0 \ud544\uc694\ud55c \uc790\ub8cc\uac00 \uc874\uc7ac\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.

@ -1,277 +0,0 @@
fail.common.msg=error ocurred!
fail.common.sql=sql error ocurred! error code: {0}, error msg: {1}
info.nodata.msg=no data found.
#UI Common resource#
table.num=num.
table.regdate=reg.date
table.reger=registrant
table.select=select
title.html=egovframe common component
title.detail=Detail Inquiry
title.inquire=Inquire
title.update=Modify
title.create=Create
title.delete=Delete
title.save=Save
title.list=List
title.searchCondition=search condition
title.search=keyword
title.reply=reply
title.scrap=scrap
title.comment=comment
title.attachedFileSelect=attached file
title.attachedFileDelete=attached file delete
title.link=link
title.management=Management
title.all=All
input.select=Select
input.cSelect=Select
input.input=input
input.button=button
input.selectAll.title=Checkbox select all
input.yes=Yes
input.no=No
select.searchCondition=select condition select
button.select=select
button.search=Search
button.use=use
button.notUsed=Not used
button.inquire=inquire
button.update=update
button.create=create
button.delete=delete
button.deleteDatabase=Wiping
button.close=close
button.save=save
button.list=list
button.reset=reset
button.passwordUpdate=password update
button.subscribe=subscribe
button.realname=realname confirm
button.moveToGpin=move to gpin confirm
button.moveToIhidnum=move to ihidnum confirm
button.agree=agree
button.disagree=disagree
button.possible=possible
button.impossible=impossible
button.qnaregist=Q&A create
button.cnsltregist=Counsel create
button.preview=preview
button.next=nexut
button.add=add it now
button.confirm=confirm
button.back =back
button.yes =yes
button.no =no
button.home =home
button.user =user support
button.cop =cooperation
button.wrkstart = work start
button.wrkend = work end
button.reply = reply
button.scrap = scrap
button.comment = comment
button.excel = excel
button.init=init
button.acknowledgment=acknowledgment
button.cancelAcknowledgment=cancel acknowledgment
button.bulkUpload=bulk upload
button.log = log
button.set = set
button.move = move
#UI Common Message#
common.noScriptTitle.msg=I can't use all functions in browser JavaScript is not supported.
common.searchCondition.msg=This layout is a lower information searches made up of information.
common.summary.list={0} A list of the details of the output.
common.summary.regist={0} Registered by typing the possible contents of registers by clicking the button.
common.summary.update={0} Registered by typing the possible content of modification by clicking the button.
common.summary.inqire={0} Full inquiry details about the details of the output.
common.save.msg=confirm save?
common.regist.msg=confirm regist?
common.delete.msg=confirm delete?
common.update.msg=confirm update?
common.nodata.msg=There is no data. please choose another seach keyword
common.required.msg=is required field
common.acknowledgement.msg=confirm acknowledgement?
common.acknowledgementcancel.msg=confirm acknowledgement cancel?
common.nocomment.msg=There is no comment.
common.noguest.msg=There is no guest notice.
success.request.msg=you're request successfully done
success.common.select=successfully selected
success.common.insert=successfully inserted
success.common.update=successfully updated
success.common.delete=successfully deleted
common.imposbl.fileupload = cannot upload files
common.isConfmDe.msg=Please check the approval date box
common.isExist.msg = already exist
fail.common.insert = fail to insert.
fail.common.update = fail to update
fail.common.delete = fail to delete
fail.common.delete.upperMenuExist = fail to delete[upperMenuId foreign key error]
fail.common.select = fail to select
fail.common.login = login information is not correct
fail.common.loginIncorrect = login in more than {0} account will be locked!
fail.common.login.password = password information is not correct(password digit should be 8 to 20)
fail.common.idsearch = can not find id
fail.common.pwsearch = can not find password
fail.request.msg = Failed to handle the request
fail.common.login.ip = Login is refused because it is not a registered IP.
#UI User Message#
fail.user.passwordUpdate1=current password is not correct
fail.user.passwordUpdate2=password confirm is not correct
info.user.rlnmCnfirm=realname confirm ready
success.user.rlnmCnfirm=it is realname
fail.user.rlnmCnfirm=it is not realname
fail.user.connectFail=connection fail
#UI Cop Message#
cop.extrlUser = External User
cop.intrlUser = Internal User
cop.private = private
cop.public = public
cop.bbsNm = BBS Name
cop.bbsIntrcn = BBS Introduction
cop.bbsTyCode = BBS Type
cop.bbsAttrbCode = BBS Attribute
cop.replyPosblAt = Reply Possible Alternative
cop.fileAtchPosblAt = File Attach Possible Alternative
cop.posblAtchFileNumber = Possible Attach File Number
cop.tmplatId = Template Information
cop.guestList.subject = This article registered by Guest List
cop.nttSj = Notice Subject
cop.nttCn = Notice Contents
cop.ntceBgnde = Notice Start Date
cop.ntceEndde = Notice End Date
cop.ntcrNm = Noticer Name
cop.password = PassWord
cop.atchFile = Attach Files
cop.guestList = Guest List
cop.guestListCn = Guest List Contents
cop.noticeTerm = Notice term
cop.atchFileList = Attached File List
cop.cmmntyNm = Community Name
cop.cmmntyIntrcn = Community Introduction
cop.cmmntyMngr = Community Manager
cop.clbOprtr = Club Operator
cop.clbIntrcn = Club Introduction
cop.clbNm = Club Name
cop.tmplatNm = Template Name
cop.tmplatSeCode = Template Se Code
cop.tmplatCours = Template Cours
cop.useAt = Use Alternative
cop.ncrdNm = NameCard user name
cop.cmpnyNm = Company name
cop.deptNm = Department name
cop.ofcpsNm = OFCPS name
cop.clsfNm = Class Name
cop.emailAdres = E-mail
cop.telNo = Tel No.
cop.mbtlNum = Mobile
cop.adres = Address
cop.extrlUserAt = External User alternative
cop.publicAt = Public open alternative
cop.remark = Remark
cop.trgetNm = Company/Club Information
cop.preview = preview
cop.withdraw.msg=confirm withdrawal memebership?
cop.reregist.msg=confirm re-registration?
cop.registmanager.msg=confirm registration of manager?
cop.use.msg=confirm use?
cop.unuse.msg=confirm stop using?
cop.delete.confirm.msg=If you choose to disable the re-use change is impossible.
cop.ing.msg=Approval is being requested.
cop.request.msg=Signup is normally requested.
cop.password.msg=Please enter your password.
cop.password.not.same.msg=Password do not match.
cop.comment.wrterNm = Writer Name
cop.comment.commentCn = Comment
cop.comment.commentPassword = Password
cop.satisfaction.wrterNm = Writer Name
cop.satisfaction.stsfdgCn = Satisfaction
cop.satisfaction.stsfdg = Satisfaction Degree
cop.satisfaction.stsfdgPassword = Password
cop.scrap.scrapNm = Scrap Name
#UI USS Message#
uss.ion.noi.ntfcSj=Subject
uss.ion.noi.ntfcCn=Contents
uss.ion.noi.ntfcDate=Notification Date
uss.ion.noi.ntfcTime=Notification Time
uss.ion.noi.ntfcHH=Notification Hour
uss.ion.noi.ntfcMM=Notification Minute
uss.ion.noi.bhNtfcIntrvl=Beforehand Interval
uss.ion.noi.bhNtfcIntrvl.msg=Beforehand Interval is required.
uss.ion.noi.alertNtfcTime=Date and time of notification is not valid.
#UI COP Message#
cop.sms.trnsmitTelno=Sender
cop.sms.trnsmitCn=Contents
cop.sms.recptnTelno=Receiver(s)
cop.sms.send=Send
cop.sms.addRecptn=Add
cop.sms.recptnTelno.msg=The phone number of receiver is required.
#UI sym.log Message#
sym.log.histSeCode = History Code
sym.log.sysNm = System Name
sym.log.histCn = History Contents
sym.log.atchFile = Attached File
sym.log.atchFileList = Attached File List
sym.ems.receiver = Receiver
sym.ems.title = Title
sym.ems.content = Content
#Vlidator Errors#
errors.required={0} is required.
errors.minlength={0} can not be less than {1} characters.
errors.maxlength={0} can not be greater than {1} characters.
errors.invalid={0} is invalid.
errors.byte={0} must be a byte.
errors.short={0} must be a short.
errors.integer={0} must be an integer.
errors.long={0} must be a long.
errors.float={0} must be a float.
errors.double={0} must be a double.
errors.date={0} is not a date.
errors.range={0} is not in the range {1} through {2}.
errors.creditcard={0} is an invalid credit card number.
errors.email={0} is an invalid e-mail address.
#Vlidator Errors- ReprtStatsVO#
sts.reprtId = Report ID
sts.title = Report Title
sts.category = Report Category
sts.status = Report Status
sts.regDate = Registration Date
#Rest day messages#
sym.cal.restDay = Holiday Date
sym.cal.restName = Holiday Name
sym.cal.restDetail = Holiday Detail
sym.cal.restCategory = Holiday Category
#Custom message#
custom.fail.access=It's not a normal approach. Log in and use it.
custom.fail.accessDenied=You do not have permission to request.
custom.isNotExist.msg=Data required for processing does not exist.

@ -1,375 +0,0 @@
fail.common.msg=\uc5d0\ub7ec\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4!
fail.common.sql=sql \uc5d0\ub7ec\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4! error code: {0}, error msg: {1}
info.nodata.msg=\ud574\ub2f9 \ub370\uc774\ud130\uac00 \uc5c6\uc2b5\ub2c8\ub2e4.
#UI Common resource#
table.num=\ubc88\ud638
table.regdate=\ub4f1\ub85d\uc77c
table.reger=\ub4f1\ub85d\uc790
table.select=\uc120\ud0dd
title.html=egovframe common component
title.detail=\uc0c1\uc138\uc870\ud68c
title.inquire=\uc870\ud68c
title.update=\uc218\uc815
title.create=\ub4f1\ub85d
title.delete=\uc0ad\uc81c
title.save=\uc800\uc7a5
title.list=\ubaa9\ub85d
title.searchCondition=\uac80\uc0c9\uc870\uac74
title.search=\uac80\uc0c9\uc5b4
title.reply=\ub2f5\uae00
title.scrap=\uc2a4\ud06c\ub7a9
title.comment=\ub313\uae00
title.attachedFileSelect=\ud30c\uc77c\uc120\ud0dd
title.attachedFileDelete=\ud30c\uc77c\uc0ad\uc81c
title.link=\ub9c1\ud06c
title.management=\uad00\ub9ac
title.all=\uc804\uccb4
input.select=\uc120\ud0dd\ud558\uc138\uc694
input.cSelect=\uc120\ud0dd
input.input=\uc785\ub825
input.button=\ubc84\ud2bc
input.selectAll.title=\uc804\uccb4\uc120\ud0dd\uccb4\ud06c\ubc15\uc2a4
input.yes=\uc608
input.no=\uc544\ub2c8\uc624
select.searchCondition=\uc870\ud68c\uc870\uac74 \uc120\ud0dd
button.select=\uc120\ud0dd
button.search=\uac80\uc0c9
button.use=\uc0ac\uc6a9
button.notUsed=\uc0ac\uc6a9\uc911\uc9c0
button.inquire=\uc870\ud68c
button.update=\uc218\uc815
button.create=\ub4f1\ub85d
button.delete=\uc0ad\uc81c
button.deleteDatabase=\uc644\uc804\uc0ad\uc81c
button.close=\ub2eb\uae30
button.save=\uc800\uc7a5
button.list=\ubaa9\ub85d
button.reset=\ucde8\uc18c
button.passwordUpdate=\uc554\ud638\ubcc0\uacbd
button.subscribe=\uac00\uc785\uc2e0\uccad
button.realname=\uc2e4\uba85\ud655\uc778
button.moveToGpin=GPIN\uc2e4\uba85\ud655\uc778\uc73c\ub85c \uc774\ub3d9
button.moveToIhidnum=\uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638 \uc2e4\uba85\ud655\uc778\uc73c\ub85c \uc774\ub3d9
button.agree=\ub3d9\uc758
button.disagree=\ube44\ub3d9\uc758
button.possible=\uac00\ub2a5
button.impossible=\ubd88\uac00\ub2a5
button.qnaregist=Q&A\ub4f1\ub85d
button.cnsltregist=\uc0c1\ub2f4\ub4f1\ub85d
button.preview=\ubbf8\ub9ac\ubcf4\uae30
button.next=\ub2e4\uc74c
button.add=\ubc14\ub85c\ucd94\uac00
button.confirm=\ud655\uc778
button.back = \ub4a4\ub85c
button.yes = \uc608
button.no = \uc544\ub2c8\uc624
button.home = \ud648
button.user = \uc0ac\uc6a9\uc790\uc9c0\uc6d0
button.cop = \ud611\uc5c5
button.wrkstart = \ucd9c\uadfc
button.wrkend = \ud1f4\uadfc
button.reply = \ub2f5\uae00
button.scrap = \uc2a4\ud06c\ub7a9
button.comment = \ub313\uae00
button.excel = \uc5d1\uc140
button.init=\ucd08\uae30\ud654
button.acknowledgment=\uc2b9\uc778
button.cancelAcknowledgment=\uc2b9\uc778\ucde8\uc18c
button.bulkUpload=\uc77c\uad04\ub4f1\ub85d
button.log = \ub85c\uadf8
button.set = \uc124\uc815
button.move = \uc774\ub3d9
#UI Common Message#
common.noScriptTitle.msg=\uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8\ub97c \uc9c0\uc6d0\ud558\uc9c0 \uc54a\ub294 \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c\ub294 \uc77c\ubd80 \uae30\ub2a5\uc744 \uc0ac\uc6a9\ud558\uc2e4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
common.searchCondition.msg=\uc774 \ub808\uc774\uc544\uc6c3\uc740 \ud558\ub2e8 \uc815\ubcf4\ub97c \ub300\ud55c \uac80\uc0c9 \uc815\ubcf4\ub85c \uad6c\uc131\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.
common.summary.list={0}\uc758 \ub0b4\uc5ed\uc5d0 \ub300\ud55c \ubaa9\ub85d\uc744 \ucd9c\ub825\ud569\ub2c8\ub2e4.
common.summary.regist={0}\uc758 \ub4f1\ub85d \uac00\ub2a5\ud55c \ub0b4\uc6a9\uc744 \uc785\ub825\ud558\uc5ec \ub4f1\ub85d \ubc84\ud2bc\uc744 \ud074\ub9ad\ud558\uc5ec \ub4f1\ub85d\ud55c\ub2e4.
common.summary.update={0}\uc758 \ub4f1\ub85d \uac00\ub2a5\ud55c \ub0b4\uc6a9\uc744 \uc785\ub825\ud558\uc5ec \ub4f1\ub85d \ubc84\ud2bc\uc744 \ud074\ub9ad\ud558\uc5ec \uc218\uc815\ud55c\ub2e4.
common.summary.inqire={0}\uc758 \ub0b4\uc5ed\uc5d0 \ub300\ud55c \uc0c1\uc138\uc870\ud68c \ub0b4\uc5ed\uc744 \ucd9c\ub825\ud569\ub2c8\ub2e4.
common.save.msg=\uc800\uc7a5\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
common.regist.msg=\ub4f1\ub85d\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
common.delete.msg=\uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
common.update.msg=\uc218\uc815\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
common.nodata.msg=\uc790\ub8cc\uac00 \uc5c6\uc2b5\ub2c8\ub2e4. \ub2e4\ub978 \uac80\uc0c9\uc870\uac74\uc744 \uc120\ud0dd\ud574\uc8fc\uc138\uc694
common.required.msg=(\uc740)\ub294 \ud544\uc218\uc785\ub825\ud56d\ubaa9\uc785\ub2c8\ub2e4.
common.acknowledgement.msg=\uc2b9\uc778\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
common.acknowledgementcancel.msg=\uc2b9\uc778\ucde8\uc18c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
common.nocomment.msg=\ub313\uae00\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.
common.noguest.msg=\uc791\uc131\ub41c \ubc29\uba85\ub85d\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.
success.request.msg = \uc694\uccad\ucc98\ub9ac\uac00 \uc131\uacf5\uc801\uc73c\ub85c \uc218\ud589\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
success.common.select=\uc815\uc0c1\uc801\uc73c\ub85c \uc870\ud68c\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
success.common.insert=\uc815\uc0c1\uc801\uc73c\ub85c \ub4f1\ub85d\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
success.common.update=\uc815\uc0c1\uc801\uc73c\ub85c \uc218\uc815\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
success.common.delete=\uc815\uc0c1\uc801\uc73c\ub85c \uc0ad\uc81c\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
common.imposbl.fileupload = \ub354 \uc774\uc0c1 \ud30c\uc77c\uc744 \ucca8\ubd80\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
common.isConfmDe.msg=\uc2b9\uc778\uc77c\uc790\ub97c \ud655\uc778 \ubc14\ub78d\ub2c8\ub2e4.
common.isExist.msg = \uc774\ubbf8 \uc874\uc7ac\ud558\uac70\ub098 \uacfc\uac70\uc5d0 \ub4f1\ub85d\uc774 \ub418\uc5c8\ub358 \uc0c1\ud0dc\uc785\ub2c8\ub2e4.
fail.common.insert = \uc0dd\uc131\uc774 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4.
fail.common.update = \uc218\uc815\uc774 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4.
fail.common.delete = \uc0ad\uc81c\uac00 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4.
fail.common.delete.upperMenuExist = \ucc38\uc870\ub418\ub294 \uba54\ub274\uac00 \uc788\uc5b4 \uc0ad\uc81c\uac00 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4.
fail.common.select = \uc870\ud68c\uc5d0 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4.
fail.common.login = \ub85c\uadf8\uc778 \uc815\ubcf4\uac00 \uc62c\ubc14\ub974\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
fail.common.loginIncorrect = {0}\ud68c \uc774\uc0c1 \ub85c\uadf8\uc778 \uc811\uc18d\uc774 \uc2dc\ub3c4 \ub418\uc5b4 \uacc4\uc815\uc774 \uc7a0\uaca8\uc2b5\ub2c8\ub2e4!
fail.common.login.password = \ud328\uc2a4\uc6cc\ub4dc \uc790\ub9ac \uc218\uac00 \uc77c\uce58 \ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.(8\uc790\ub9ac \uc774\uc0c1 20\uc790\ub9ac \uc774\ud558)
fail.common.idsearch = \uc544\uc774\ub514\ub97c \ucc3e\uc744\uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
fail.common.pwsearch = \ube44\ubc00\ubc88\ud638\ub97c \ucc3e\uc744\uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
fail.request.msg = \uc694\uccad\ucc98\ub9ac\ub97c \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4.
fail.common.login.ip = \ub4f1\ub85d\ub41c IP\uac00 \uc544\ub2c8\ubbc0\ub85c \ub85c\uadf8\uc778\uc774 \uac70\ubd80\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
#UI User Message#
fail.user.passwordUpdate1=\ud604\uc7ac \ube44\ubc00\ubc88\ud638\uac00 \ub9de\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
fail.user.passwordUpdate2=\ube44\ubc00\ubc88\ud638\uc640 \ube44\ubc00\ubc88\ud638 \ud655\uc778\uc774 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
info.user.rlnmCnfirm=\uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc2e4\uba85\ud655\uc778\uc744 \ud558\uc2ed\uc2dc\uc624.
success.user.rlnmCnfirm=\ud589\uc815\uc548\uc804\ubd80\uc758 \uc8fc\ubbfc\ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud569\ub2c8\ub2e4.
fail.user.rlnmCnfirm=\ud589\uc815\uc548\uc804\ubd80\uc758 \uc8fc\ubbfc\ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
fail.user.connectFail=\uc2dc\uc2a4\ud15c \uc7a5\uc560\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4.(\uc778\uc99d\uc11c\ubc84 \uc5f0\uacb0 \uc2e4\ud328)
info.user.rlnmPinCnfirm=\uacf5\uacf5 \uc544\uc774\ud540 \uc544\uc774\ub514\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc2e4\uba85\ud655\uc778\uc744 \ud558\uc2ed\uc2dc\uc624.
success.user.rlnmPinCnfirm=\uacf5\uacf5\uc544\uc774\ud540\uc758 \ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud569\ub2c8\ub2e4.
fail.user.rlnmPinCnfirm=\uacf5\uacf5\uc544\uc774\ud540\uc758 \ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
#UI Cop Message#
cop.extrlUser = \uc678\ubd80\uc0ac\uc6a9\uc790
cop.intrlUser = \ub0b4\ubd80\uc0ac\uc6a9\uc790
cop.private = \ube44\uacf5\uac1c
cop.public = \uacf5\uac1c
cop.adbkNm = \uc8fc\uc18c\ub85d\uba85
cop.othbcScope = \uacf5\uac1c\ubc94\uc704
cop.company = \ud68c\uc0ac
cop.part = \ubd80\uc11c
cop.man = \uac1c\uc778
cop.adbkUser = \uad6c\uc131\uc6d0
cop.bbsNm = \uac8c\uc2dc\ud310\uba85
cop.bbsIntrcn = \uac8c\uc2dc\ud310\uc18c\uac1c
cop.bbsTyCode = \uac8c\uc2dc\ud310 \uc720\ud615
cop.bbsAttrbCode = \uac8c\uc2dc\ud310 \uc18d\uc131
cop.replyPosblAt = \ub2f5\uc7a5\uac00\ub2a5\uc5ec\ubd80
cop.fileAtchPosblAt = \ud30c\uc77c\ucca8\ubd80\uac00\ub2a5\uc5ec\ubd80
cop.posblAtchFileNumber = \ucca8\ubd80\uac00\ub2a5\ud30c\uc77c \uc22b\uc790
cop.tmplatId = \ud15c\ud50c\ub9bf \uc815\ubcf4
cop.guestList.subject = \ubc29\uba85\ub85d \uac8c\uc2dc\uae00\uc785\ub2c8\ub2e4.
cop.nttSj = \uc81c\ubaa9
cop.nttCn = \uae00\ub0b4\uc6a9
cop.ntceBgnde = \uac8c\uc2dc\uc2dc\uc791\uc77c
cop.ntceEndde = \uac8c\uc2dc\uc885\ub8cc\uc77c
cop.ntcrNm = \uc791\uc131\uc790
cop.password = \ud328\uc2a4\uc6cc\ub4dc
cop.atchFile = \ud30c\uc77c\ucca8\ubd80
cop.guestList = \ubc29\uba85\ub85d
cop.guestListCn = \ubc29\uba85\ub85d \ub0b4\uc6a9
cop.noticeTerm = \uac8c\uc2dc\uae30\uac04
cop.atchFileList = \ucca8\ubd80\ud30c\uc77c\ubaa9\ub85d
cop.cmmntyNm = \ucee4\ubba4\ub2c8\ud2f0\uba85
cop.cmmntyIntrcn = \ucee4\ubba4\ub2c8\ud2f0 \uc18c\uac1c
cop.cmmntyMngr = \ucee4\ubba4\ub2c8\ud2f0 \uad00\ub9ac\uc790
cop.clbOprtr = \ub3d9\ud638\ud68c \uc6b4\uc601\uc790
cop.clbIntrcn = \ub3d9\ud638\ud68c \uc18c\uac1c
cop.clbNm = \ub3d9\ud638\ud68c \uba85
cop.tmplatNm = \ud15c\ud50c\ub9bf\uba85
cop.tmplatSeCode = \ud15c\ud50c\ub9bf \uad6c\ubd84
cop.tmplatCours = \ud15c\ud50c\ub9bf\uacbd\ub85c
cop.useAt = \uc0ac\uc6a9\uc5ec\ubd80
cop.ncrdNm = \uc774\ub984
cop.cmpnyNm = \ud68c\uc0ac\uba85
cop.deptNm = \ubd80\uc11c\uba85
cop.ofcpsNm = \uc9c1\uc704
cop.clsfNm = \uc9c1\uae09
cop.emailAdres = \uc774\uba54\uc77c\uc8fc\uc18c
cop.telNo = \uc804\ud654\ubc88\ud638
cop.mbtlNum = \ud734\ub300\ud3f0\ubc88\ud638
cop.adres = \uc8fc\uc18c
cop.extrlUserAt = \uc678\ubd80\uc0ac\uc6a9\uc790\uc5ec\ubd80
cop.publicAt = \uacf5\uac1c\uc5ec\ubd80
cop.remark = \ube44\uace0
cop.trgetNm = \ucee4\ubba4\ub2c8\ud2f0/\ub3d9\ud638\ud68c \uc815\ubcf4
cop.preview = \ubbf8\ub9ac\ubcf4\uae30
cop.withdraw.msg=\ud0c8\ud1f4\ucc98\ub9ac \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
cop.reregist.msg=\uc7ac\uac00\uc785 \ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
cop.registmanager.msg=\uc6b4\uc601\uc9c4\uc73c\ub85c \ub4f1\ub85d\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
cop.use.msg=\uc0ac\uc6a9 \ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
cop.unuse.msg=\uc0ac\uc6a9\uc911\uc9c0 \ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?
cop.delete.confirm.msg=\uc0ac\uc6a9\uc911\uc9c0\ub97c \uc120\ud0dd\ud558\uc2e4 \uacbd\uc6b0 \ub2e4\uc2dc \uc0ac\uc6a9\uc73c\ub85c \ubcc0\uacbd\uc774 \ubd88\uac00\ub2a5\ud569\ub2c8\ub2e4.
cop.ing.msg=\uc2b9\uc778\uc694\uccad \uc911\uc785\ub2c8\ub2e4.
cop.request.msg=\uac00\uc785\uc2e0\uccad\uc774 \uc815\uc0c1\uc801\uc73c\ub85c \uc694\uccad\ub418\uc5c8\uc2b5\ub2c8\ub2e4
cop.password.msg=\ud328\uc2a4\uc6cc\ub4dc\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624.
cop.password.not.same.msg=\ud328\uc2a4\uc6cc\ub4dc\uac00 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
cop.comment.wrterNm = \uc791\uc131\uc790
cop.comment.commentCn = \ub0b4\uc6a9
cop.comment.commentPassword = \ud328\uc2a4\uc6cc\ub4dc
cop.satisfaction.wrterNm = \uc791\uc131\uc790
cop.satisfaction.stsfdgCn = \ub0b4\uc6a9
cop.satisfaction.stsfdg = \ub9cc\uc871\ub3c4
cop.satisfaction.stsfdgPassword = \ud328\uc2a4\uc6cc\ub4dc
cop.scrap.scrapNm = \uc2a4\ud06c\ub7a9\uba85
#UI USS Message#
uss.ion.noi.ntfcSj=\uc81c\ubaa9
uss.ion.noi.ntfcCn=\ub0b4\uc6a9
uss.ion.noi.ntfcDate=\uc54c\ub9bc\uc77c\uc790
uss.ion.noi.ntfcTime=\uc54c\ub9bc\uc2dc\uac04
uss.ion.noi.ntfcHH=\uc54c\ub9bc\uc2dc\uac04
uss.ion.noi.ntfcMM=\uc54c\ub9bc\ubd84
uss.ion.noi.bhNtfcIntrvl=\uc0ac\uc804\uc54c\ub9bc\uac04\uaca9
uss.ion.noi.bhNtfcIntrvl.msg=\uc0ac\uc804\uc54c\ub9bc\uac04\uaca9 \uc9c0\uc815\uc774 \ud544\uc694\ud569\ub2c8\ub2e4.
uss.ion.noi.alertNtfcTime=\uc54c\ub9bc\uc77c\uc790 \ubc0f \uc2dc\uac04\uc774 \uc720\ud6a8\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
#UI COP Message#
cop.sms.trnsmitTelno=\ubc1c\uc2e0\uc804\ud654\ubc88\ud638
cop.sms.trnsmitCn=\uc804\uc1a1\ub0b4\uc6a9
cop.sms.recptnTelno=\uc218\uc2e0\uc804\ud654\ubc88\ud638
cop.sms.send=\uc804\uc1a1
cop.sms.addRecptn=\ucd94\uac00
cop.sms.recptnTelno.msg=\uc218\uc2e0\uc804\ud654\ubc88\ud638 \uc9c0\uc815\uc774 \ud544\uc694\ud569\ub2c8\ub2e4.
#UI sym.log Message#
sym.log.histSeCode = \uc774\ub825\uad6c\ubd84
sym.log.sysNm = \uc2dc\uc2a4\ud15c\uba85
sym.log.histCn = \uc774\ub825\ub0b4\uc6a9
sym.log.atchFile = \ucca8\ubd80\ud30c\uc77c
sym.log.atchFileList = \ucca8\ubd80\ud30c\uc77c\ubaa9\ub85d
sym.ems.receiver = \ubc1b\ub294\uc0ac\ub78c
sym.ems.title = \uc81c\ubaa9
sym.ems.content = \ubc1c\uc2e0\ub0b4\uc6a9
#Vlidator Errors#
errors.prefix=<div class="error">
errors.suffix=</div><br/>
errors.required={0}\uc740(\ub294) \ud544\uc218 \uc785\ub825\uac12\uc785\ub2c8\ub2e4.
errors.minlength={0}\uc740(\ub294) {1}\uc790 \uc774\uc0c1 \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4.
errors.maxlength={0}\uc740(\ub294) {1}\uc790 \uc774\uc0c1 \uc785\ub825\ud560\uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
errors.invalid={0}\uc740(\ub294) \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uac12\uc785\ub2c8\ub2e4.
errors.minInteger={0}\uc740(\ub294) \uc720\ud6a8\ud55c \uac12\uc774 \uc544\ub2d9\ub2c8\ub2e4. 1 \uc774\uc0c1\uc758 \uac12\uc744 \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4.
errors.byte={0}\uc740(\ub294) byte\ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4.
errors.short={0}\uc740(\ub294) short\ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4.
errors.integer={0}\uc740(\ub294) \uc815\uc218 \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4.
errors.long={0}\uc740(\ub294) long \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4.
errors.float={0}\uc740(\ub294) \uc2e4\uc218 \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4.
errors.double={0}\uc740(\ub294) double \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4.
errors.date={0}\uc740(\ub294) \ub0a0\uc9dc \uc720\ud615\uc774 \uc544\ub2d9\ub2c8\ub2e4.
errors.range={0}\uc740(\ub294) {1}\uacfc {2} \uc0ac\uc774\uc758 \uac12\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4.
errors.creditcard={0}\uc740(\ub294) \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc2e0\uc6a9\uce74\ub4dc \ubc88\ud638\uc785\ub2c8\ub2e4.
errors.email={0}\uc740(\ub294) \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc774\uba54\uc77c \uc8fc\uc18c\uc785\ub2c8\ub2e4.
errors.ihidnum=\uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638\uc785\ub2c8\ub2e4.
errors.korean={0}\uc740(\ub294) \ud55c\uae00\uc744 \uc785\ub825\ud558\uc154\uc57c \ud569\ub2c8\ub2e4.
errors.ip=\uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 IP\uc8fc\uc18c\uc785\ub2c8\ub2e4.
errors.password1={0}\uc740(\ub294) 8~20\uc790 \ub0b4\uc5d0\uc11c \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4.
errors.password2={0}\uc740(\ub294) \ud55c\uae00,\ud2b9\uc218\ubb38\uc790,\ub744\uc5b4\uc4f0\uae30\ub294 \ud5c8\uc6a9\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
errors.password3={0}\uc740(\ub294) \uc21c\ucc28\uc801\uc778 \uc22b\uc790\ub97c 4\uac1c\uc774\uc0c1 \uc5f0\uc18d\ud574\uc11c \uc0ac\uc6a9\ud560\uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
errors.password4={0}\uc740(\ub294) \ubc18\ubcf5\ub418\ub294 \ubb38\uc790\ub098 \uc22b\uc790\ub97c 4\uac1c\uc774\uc0c1 \uc5f0\uc18d\ud574\uc11c \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
errors.notKorean={0}\uc740(\ub294) \ud55c\uae00\uc744 \uc0ac\uc6a9\ud558\uc2e4\uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
error.security.runtime.error = error
#Xss Errors#
errors.xss.checkerUser=\ud574\ub2f9 \uae30\ub2a5\uc5d0 \ub300\ud55c \uc0ac\uc6a9 \ubc0f \ucc98\ub9ac \uad8c\ud55c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.
#File Upload / Download
errors.file.extension=\uc9c0\uc6d0\ub418\ub294 \ud30c\uc77c\uc720\ud615\uc774 \uc544\ub2d9\ub2c8\ub2e4.
errors.file.transfer=\ud30c\uc77c\uc804\uc1a1\uc911 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4.
success.file.transfer=\ud30c\uc77c\uc804\uc1a1\uc774 \uc644\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
#Vlidator Errors- wordDicaryVO#
wordDicaryVO.wordNm=\uc6a9\uc5b4\uba85
wordDicaryVO.engNm=\uc601\ubb38\uba85
wordDicaryVO.wordDc=\uc6a9\uc5b4\uc124\uba85
wordDicaryVO.synonm=\ub3d9\uc758\uc5b4
#Vlidator Errors- cnsltManageVO#
cnsltManageVO.cnsltSj=\uc0c1\ub2f4\uc81c\ubaa9
cnsltManageVO.cnsltCn=\uc0c1\ub2f4\ub0b4\uc6a9
cnsltManageVO.writngPassword=\uc791\uc131\ube44\ubc00\ubc88\ud638
cnsltManageVO.areaNo=\uc9c0\uc5ed\ubc88\ud638
cnsltManageVO.middleTelno=\uc911\uac04\uc804\ud654\ubc88\ud638
cnsltManageVO.endTelno=\ub05d\uc804\ud654\ubc88\ud638
cnsltManageVO.wrterNm=\uc791\uc131\uc790\uba85
cnsltManageVO.managtCn=\ub2f5\ubcc0\ub0b4\uc6a9
#Vlidator Errors- siteManageVO#
siteManageVO.siteNm=\uc0ac\uc774\ud2b8\uba85
siteManageVO.siteUrl=\uc0ac\uc774\ud2b8 URL
siteManageVO.siteDc=\uc0ac\uc774\ud2b8\uc124\uba85
siteManageVO.siteThemaClCode=\uc0ac\uc774\ud2b8\uc8fc\uc81c\ubd84\ub958
siteManageVO.actvtyAt=\ud65c\uc131\uc5ec\ubd80
siteManageVO.useAt=\uc0ac\uc6a9\uc5ec\ubd80
#Vlidator Errors- recomendSiteManageVO#
recomendSiteManageVO.recomendSiteNm=\ucd94\ucc9c\uc0ac\uc774\ud2b8\uba85
recomendSiteManageVO.recomendSiteUrl=\ucd94\ucc9c\uc0ac\uc774\ud2b8 URL
recomendSiteManageVO.recomendSiteDc=\ucd94\ucc9c\uc0ac\uc774\ud2b8\uc124\uba85
recomendSiteManageVO.recomendResnCn=\ucd94\ucc9c\uc0ac\uc774\ud2b8\uc2b9\uc778\uc0ac\uc720
recomendSiteManageVO.confmDe=\uc2b9\uc778\uc77c\uc790
#Vlidator Errors- hpcmManageVO#
hpcmManageVO.hpcmSeCode=\ub3c4\uc6c0\ub9d0\uad6c\ubd84
hpcmManageVO.hpcmDf=\ub3c4\uc6c0\ub9d0\uc815\uc758
hpcmManageVO.hpcmDc=\ub3c4\uc6c0\ub9d0\uc124\uba85
#Vlidator Errors- newsManageVO#
newsManageVO.newsSj=\ub274\uc2a4\uc81c\ubaa9
newsManageVO.newsCn=\ub274\uc2a4\ub0b4\uc6a9
newsManageVO.ntceDe=\uac8c\uc2dc\uc77c\uc790
#Vlidator Errors- faqManageVO#
faqManageVO.qestnSj=\uc9c8\ubb38\uc81c\ubaa9
faqManageVO.qestnCn=\uc9c8\ubb38\ub0b4\uc6a9
faqManageVO.answerCn=\ub2f5\ubcc0\ub0b4\uc6a9
#Vlidator Errors- stplatManageVO#
stplatManageVO.useStplatNm=\uc774\uc6a9\uc57d\uad00\uba85
stplatManageVO.useStplatCn=\uc774\uc6a9\uc57d\uad00\ub0b4\uc6a9
stplatManageVO.infoProvdAgreCn=\uc815\ubcf4\uc81c\uacf5\ub3d9\uc758\ub0b4\uc6a9
#Vlidator Errors- cpyrhtPrtcPolicyVO#
cpyrhtPrtcPolicyVO.cpyrhtPrtcPolicyCn=\uc800\uc791\uad8c\ubcf4\ud638\uc815\ucc45\ub0b4\uc6a9
#Vlidator Errors- qnaManageVO#
qnaManageVO.qestnSj=\uc9c8\ubb38\uc81c\ubaa9
qnaManageVO.qestnCn=\uc9c8\ubb38\ub0b4\uc6a9
qnaManageVO.writngPassword=\uc791\uc131\ube44\ubc00\ubc88\ud638
qnaManageVO.areaNo=\uc9c0\uc5ed\ubc88\ud638
qnaManageVO.middleTelno=\uc911\uac04\uc804\ud654\ubc88\ud638
qnaManageVO.endTelno=\ub05d\uc804\ud654\ubc88\ud638
qnaManageVO.wrterNm=\uc791\uc131\uc790\uba85
qnaManageVO.answerCn=\ub2f5\ubcc0\ub0b4\uc6a9
#Vlidator Errors- ReprtStatsVO#
sts.reprtId = \ubcf4\uace0\uc11cID
sts.title = \ubcf4\uace0\uc11c\uba85
sts.category = \ubcf4\uace0\uc11c\uc720\ud615
sts.status = \uc9c4\ud589\uc0c1\ud0dc
sts.regDate = \ub4f1\ub85d\uc77c\uc2dc
#Rest day messages#
sym.cal.restDay = \ud734\uc77c\uc77c\uc790
sym.cal.restName = \ud734\uc77c\uba85
sym.cal.restDetail = \ud734\uc77c\uc124\uba85
sym.cal.restCategory = \ud734\uc77c\uad6c\ubd84
image.errorBg = \uc624\ub958\uc774\ubbf8\uc9c0
#Custom message#
custom.fail.access=\uc815\uc0c1\uc801\uc778 \uc811\uadfc\uc774 \uc544\ub2d9\ub2c8\ub2e4. \ub85c\uadf8\uc778 \ud6c4 \uc774\uc6a9\ud558\uc138\uc694.
custom.fail.accessDenied=\uc694\uccad\uc5d0 \ub300\ud55c \uad8c\ud55c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.
custom.isNotExist.msg=\ucc98\ub9ac\uc5d0 \ud544\uc694\ud55c \uc790\ub8cc\uac00 \uc874\uc7ac\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.

@ -1,78 +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.base.security.access.dao.ActionGroupMapper">
<resultMap id="groupRow" type="cokr.xit.base.security.access.ActionGroup">
<result property="id" column="GRP_ID"/>
<result property="name" column="GRP_NM"/>
<result property="description" column="DSCRP"/>
<result property="createdAt" column="REG_DT"/>
</resultMap>
<sql id="selectGroups"><include refid="utility.paging-prefix" />
SELECT A.*
FROM TB_ACTION_GRP A
<where>
<if test="groupIDs != null">AND GRP_ID IN (<foreach collection="groupIDs" item="groupID" separator=",">#{groupID}</foreach>)</if>
<if test="by != null and term != null">AND ${by} LIKE CONCAT('%', #{term}, '%')</if>
</where>
<include refid="utility.paging-suffix" /></sql>
<select id="getGroupList" parameterType="map" resultType="dataobject">/* 기능그룹 목록 조회(actionGroupMapper.getGroupList) */
<include refid="selectGroups" /></select>
<select id="getGroups" parameterType="map" resultMap="groupRow">/* 기능그룹 가져오기(actionGroupMapper.getGroups) */
<include refid="selectGroups" /></select>
<insert id="insertGroup" parameterType="cokr.xit.base.security.access.ActionGroup">/* 기능그룹 등록(actionGroupMapper.insertGroup) */
INSERT INTO TB_ACTION_GRP (
GRP_ID
, GRP_NM
, DSCRP
, REG_DT
) VALUES (
#{id}
, #{name}
, #{description}
,<include refid="utility.now" />
)</insert>
<update id="updateGroup" parameterType="cokr.xit.base.security.access.ActionGroup">/* 기능그룹 수정(actionGroupMapper.updateGroup) */
UPDATE TB_ACTION_GRP SET
GRP_NM = #{name}
, DSCRP = #{description}
WHERE GRP_ID = #{id}</update>
<delete id="removeGroups" parameterType="map">/* 기능그룹 삭제(actionGroupMapper.removeGroups) */
DELETE FROM TB_ACTION_GRP
WHERE GRP_ID IN (<foreach collection="groupIDs" item="groupID" separator=",">#{groupID}</foreach>)</delete>
<select id="getActionList" parameterType="map" resultType="dataobject">/* 그룹별 기능 가져오기(actionGroupMapper.getActionList) */
SELECT *
FROM TB_GRP_ACTION
<if test="groupIDs != null">WHERE GRP_ID IN (<foreach collection="groupIDs" item="groupID" separator=",">#{groupID}</foreach>)</if>
ORDER BY GRP_ID, ACTION
</select>
<insert id="addActions" parameterType="map">/* 그룹별 기능 추가(actionGroupMapper.addActions) */
INSERT INTO TB_GRP_ACTION (GRP_ID, ACTION, REG_DT, RGTR)
SELECT GRP_ID, ACTION,<include refid="utility.now" />, #{currentUser.id}
FROM (<foreach collection="actions" item="action" separator="UNION">
SELECT #{groupID} GRP_ID, #{action} ACTION FROM DUAL</foreach>
) A
WHERE NOT EXISTS (
SELECT GRP_ID, ACTION
FROM TB_GRP_ACTION B
WHERE B.GRP_ID = A.GRP_ID
AND B.ACTION = A.ACTION
)</insert>
<delete id="removeActions" parameterType="map">/* 그룹별 기능 삭제(actionGroupMapper.removeActions) */
DELETE FROM TB_GRP_ACTION
<where>
<if test="groupIDs != null">AND GRP_ID IN (<foreach collection="groupIDs" item="groupID" separator=",">#{groupID}</foreach>)</if>
<if test="actions != null">AND ACTION IN (<foreach collection="actions" item="action" separator=",">#{action}</foreach>)</if>
</where>
</delete>
</mapper>

@ -1,145 +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.base.security.access.dao.AuthorityMapper">
<resultMap id="authRow" type="cokr.xit.base.security.Authority">
<result property="type" column="AUTH_TYPE"/>
<result property="id" column="AUTH_ID"/>
<result property="name" column="AUTH_NM"/>
<result property="infoScope" column="INF_SCP"/>
<result property="userInfoScope" column="USER_INF_SCP"/>
<result property="description" column="DSCRP"/>
<result property="createdAt" column="REG_DT"/>
</resultMap>
<sql id="selectAuthorities"><include refid="utility.paging-prefix" />
SELECT * FROM (
SELECT 0 AUTH_TYPE, 'ROLE_ADMIN' AUTH_ID, '시스템 관리자' AUTH_NM, '시스템 관리자' DSCRP, 'all' INF_SCP, 'all' USER_INF_SCP,<include refid="utility.now"/>REG_DT UNION
SELECT 1 AUTH_TYPE, 'ROLE_ANONYMOUS' AUTH_ID, '익명 사용자' AUTH_NM, '모든 사용자' DSCRP, 'none' INF_SCP, 'none' USER_INF_SCP,<include refid="utility.now"/>REG_DT UNION
SELECT 1 AUTH_TYPE, 'ROLE_USER' AUTH_ID, '시스템 사용자' AUTH_NM, '로그인한 사용자' DSCRP, 'self' INF_SCP, 'self' USER_INF_SCP,<include refid="utility.now"/>REG_DT UNION
SELECT 2 AUTH_TYPE, AUTH_ID, AUTH_NM, DSCRP, INF_SCP, USER_INF_SCP, REG_DT
FROM TB_AUTHORITY
) A
<where>
<if test="authIDs != null">AND AUTH_ID IN (<foreach collection="authIDs" item="authID" separator=",">#{authID}</foreach>)</if>
<if test="by != null and term != null">AND ${by} LIKE CONCAT('%', #{term}, '%')</if>
</where>
<include refid="utility.orderBy"/>
<include refid="utility.paging-suffix" /></sql>
<select id="getAuthorityList" parameterType="map" resultType="dataobject">/* 권한 목록 조회(authorityMapper.getAuthorityList) */
<include refid="selectAuthorities" /></select>
<select id="getAuthorities" parameterType="map" resultMap="authRow">/* 권한 가져오기(authorityMapper.getAuthorities) */
<include refid="selectAuthorities" /></select>
<insert id="insertAuthority" parameterType="cokr.xit.base.security.Authority">/* 권한 등록(authorityMapper.insertAuthority) */
INSERT INTO TB_AUTHORITY (
AUTH_ID
, AUTH_NM
, DSCRP
, INF_SCP
, USER_INF_SCP
, REG_DT
) VALUES (
#{id}
, #{name}
, #{description}
, #{infoScope}
, #{userInfoScope}
,<include refid="utility.now" />
)</insert>
<update id="updateAuthority" parameterType="cokr.xit.base.security.Authority">/* 권한 수정(authorityMapper.updateAuthority) */
UPDATE TB_AUTHORITY SET
AUTH_NM = #{name}
, DSCRP = #{description}
, INF_SCP = #{infoScope}
, USER_INF_SCP = #{userInfoScope}
WHERE AUTH_ID = #{id}</update>
<delete id="removeAuthorities" parameterType="map">/* 권한 삭제(authorityMapper.removeAuthorities) */
DELETE FROM TB_AUTHORITY
WHERE AUTH_ID IN (<foreach collection="authIDs" item="authID" separator=",">#{authID}</foreach>)</delete>
<select id="getActionGroupList" parameterType="map" resultType="dataobject">/* 권한-기능그룹 가져오기(authorityMapper.getActionGroups) */
<include refid="utility.paging-prefix" />
SELECT *
FROM TB_AUTH_ACTION
<if test="authIDs != null">WHERE AUTH_ID IN (<foreach collection="authIDs" item="authID" separator=",">#{authID}</foreach>)</if>
ORDER BY AUTH_ID, GRP_ID
<include refid="utility.paging-suffix" /></select>
<insert id="addActionGroups" parameterType="map">/* 권한-기능그룹 추가(authorityMapper.addActionGroups) */
INSERT INTO TB_AUTH_ACTION (AUTH_ID, GRP_ID, REG_DT)
SELECT AUTH_ID, GRP_ID,<include refid="utility.now" />
FROM (<foreach collection="groupIDs" item="groupID" separator=" UNION">
SELECT #{authID} AUTH_ID, #{groupID} GRP_ID FROM DUAL</foreach>
) A
WHERE NOT EXISTS (
SELECT AUTH_ID, GRP_ID
FROM TB_AUTH_ACTION B
WHERE B.AUTH_ID = A.AUTH_ID
AND B.GRP_ID = A.GRP_ID
)</insert>
<delete id="removeActionGroups" parameterType="map">/* 권한-기능그룹 삭제(authorityMapper.removeActionGroups) */
DELETE FROM TB_AUTH_ACTION
<where>
<if test="authIDs != null">AND AUTH_ID IN (<foreach collection="authIDs" item="authID" separator=",">#{authID}</foreach>)</if>
<if test="groupIDs != null">AND GRP_ID IN (<foreach collection="groupIDs" item="groupID" separator=",">#{groupID}</foreach>)</if>
</where>
</delete>
<select id="getActionList" resultType="dataobject">/* 권한-기능 가져오기(authorityMapper.getActionList) */
SELECT A.AUTH_ID
, A.GRP_ID
, C.ACTION
FROM TB_AUTH_ACTION A
, TB_ACTION_GRP B
, TB_GRP_ACTION C
WHERE A.GRP_ID = B.GRP_ID
AND B.GRP_ID = C.GRP_ID
ORDER BY A.AUTH_ID, A.GRP_ID, C.ACTION</select>
<sql id="selectAuthUser">
<include refid="utility.paging-prefix" />
SELECT A.*, USER_ACNT
FROM TB_AUTH_USER A
, TB_USER B
<where>
<if test="authIDs != null">AND AUTH_ID IN (<foreach collection="authIDs" item="authID" separator=",">#{authID}</foreach>)</if>
<if test="userIDs != null">AND A.USER_ID IN (<foreach collection="userIDs" item="userID" separator=",">#{userID}</foreach>)</if>
AND A.USER_ID = B.USER_ID
</where>
<include refid="utility.orderBy"/>
<include refid="utility.paging-suffix" /></sql>
<select id="getUserList" parameterType="map" resultType="dataobject">/* 권한-사용자 가져오기(authorityMapper.getUserList) */
<include refid="selectAuthUser" /></select>
<select id="getUserAuths" parameterType="map" resultType="dataobject">/* 사용자-권한 가져오기(authorityMapper.getUserAuths) */
<include refid="selectAuthUser" /></select>
<insert id="addUsers" parameterType="map">/* 권한-사용자 추가(authorityMapper.addUsers) */
INSERT INTO TB_AUTH_USER (AUTH_ID, USER_ID, REG_DT)
SELECT AUTH_ID, USER_ID,<include refid="utility.now" />
FROM (<foreach collection="userIDs" item="userID" separator="UNION">
SELECT #{authID} AUTH_ID, #{userID} USER_ID FROM DUAL</foreach>
) A
WHERE NOT EXISTS (
SELECT AUTH_ID, USER_ID
FROM TB_AUTH_USER B
WHERE B.AUTH_ID = A.AUTH_ID
AND B.USER_ID = A.USER_ID
)</insert>
<delete id="removeUsers" parameterType="map">/* 권한-사용자 삭제(authorityMapper.removeUsers) */
DELETE FROM TB_AUTH_USER
<where>
<if test="authIDs != null">AND AUTH_ID IN (<foreach collection="authIDs" item="authID" separator=",">#{authID}</foreach>)</if>
<if test="userIDs != null">AND USER_ID IN (<foreach collection="userIDs" item="userID" separator=",">#{userID}</foreach>)</if>
</where>
</delete>
</mapper>

@ -1,230 +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.base.code.dao.CodeMapper">
<resultMap id="categoryRow" type="cokr.xit.base.code.CodeCategory">
<result property="id" column="CTGR_ID"/>
<result property="name" column="CTGR_NM"/>
<result property="description" column="DSCRP"/>
<result property="createdAt" column="REG_DT"/>
<result property="createdBy" column="RGTR"/>
<result property="lastModified" column="MDFCN_DT"/>
<result property="modifiedBy" column="MDFR"/>
<result property="useYN" column="USE_YN"/>
</resultMap>
<resultMap id="groupRow" type="cokr.xit.base.code.CodeGroup">
<result property="id" column="GRP_ID"/>
<result property="name" column="GRP_NM"/>
<result property="categoryID" column="CTGR_ID"/>
<result property="description" column="DSCRP"/>
<result property="createdAt" column="REG_DT"/>
<result property="createdBy" column="RGTR"/>
<result property="lastModified" column="MDFCN_DT"/>
<result property="modifiedBy" column="MDFR"/>
<result property="useYN" column="USE_YN"/>
</resultMap>
<resultMap id="codeRow" type="cokr.xit.base.code.CommonCode">
<result property="groupID" column="GRP_ID"/>
<result property="code" column="CODE"/>
<result property="value" column="CODE_VAL"/>
<result property="description" column="DSCRP"/>
<result property="etc1" column="ETC_1"/>
<result property="etc2" column="ETC_2"/>
<result property="etc3" column="ETC_3"/>
<result property="sortOrder" column="SRT_ORD"/>
<result property="createdAt" column="REG_DT"/>
<result property="createdBy" column="RGTR"/>
<result property="lastModified" column="MDFCN_DT"/>
<result property="modifiedBy" column="MDFR"/>
<result property="useYN" column="USE_YN"/>
</resultMap>
<sql id="selectCategories"><include refid="utility.paging-prefix" />
SELECT *
FROM TB_CODE_CTGR
WHERE USE_YN = 'Y'
<if test="categoryIDs != null"> AND CTGR_ID IN (<foreach collection="categoryIDs" item="categoryID" separator=",">#{categoryID}</foreach>)</if>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix" /></sql>
<select id="getCategoryList" parameterType="map" resultType="dataobject">/* 코드 카테고리 목록 조회(codeMapper.getCategoryList) */
<include refid="selectCategories" /></select>
<select id="getCategories" parameterType="map" resultMap="categoryRow">/*코드 카테고리 가져오기(codeMapper.getCategories)*/
<include refid="selectCategories" /></select>
<insert id="insertCategory" parameterType="map">/* 코드 카테고리 등록(codeMapper.insertCategory) */
INSERT INTO TB_CODE_CTGR (
CTGR_ID
, CTGR_NM
, DSCRP
, REG_DT
, RGTR
, MDFCN_DT
, MDFR
, USE_YN
) VALUES (
#{category.id}
, #{category.name}
, #{category.description}
,<include refid="utility.now" />
, #{currentUser.id}
,<include refid="utility.now" />
, #{currentUser.id}
, 'Y'
)</insert>
<update id="updateCategory" parameterType="map">/* 코드 카테고리 수정(codeMapper.updateCategory) */
UPDATE TB_CODE_CTGR SET
CTGR_NM = #{category.name}
, DSCRP = #{category.description}
, MDFCN_DT =<include refid="utility.now" />
, MDFR = #{currentUser.id}
WHERE CTGR_ID = #{category.id}</update>
<delete id="removeCategories" parameterType="map">/* 코드 카테고리 제거(codeMapper.removeCategories) */
UPDATE TB_CODE_CTGR SET
MDFCN_DT =<include refid="utility.now" />
, MDFR = #{currentUser.id}
, USE_YN = 'N'
<if test='categoryIDs != null'>WHERE CTGR_ID IN (<foreach collection="categoryIDs" item="categoryID" separator=",">#{categoryID}</foreach>)</if></delete>
<sql id="selectGroups"><include refid="utility.paging-prefix" />
SELECT *
FROM TB_CODE_GRP
WHERE USE_YN = 'Y'
<if test="categoryIDs != null">AND CTGR_ID IN (<foreach collection="categoryIDs" item="categoryID" separator=",">#{categoryID}</foreach>)</if>
<if test="groupIDs != null">AND GRP_ID IN (<foreach collection="groupIDs" item="groupID" separator=",">#{groupID}</foreach>)</if>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix" /></sql>
<select id="getGroupList" parameterType="dataobject" resultType="dataobject">/* 코드그룹 목록 조회(codeMapper.getGroupList) */
<include refid="selectGroups" /></select>
<select id="getGroups" parameterType="map" resultMap="groupRow">/* 코드그룹 가져오기(codeMapper.getGroups) */
<include refid="selectGroups" /></select>
<insert id="insertGroup" parameterType="map">/* 코드그룹 등록(codeMapper.insertGroup) */
INSERT INTO TB_CODE_GRP (
GRP_ID
, GRP_NM
, CTGR_ID
, DSCRP
, REG_DT
, RGTR
, MDFCN_DT
, MDFR
, USE_YN
) VALUES (
#{group.id}
, #{group.name}
, #{group.categoryID}
, #{group.description}
,<include refid="utility.now" />
, #{currentUser.id}
,<include refid="utility.now" />
, #{currentUser.id}
, 'Y'
)</insert>
<update id="updateGroup" parameterType="map">/* 코드그룹 수정(codeMapper.updateGroup) */
UPDATE TB_CODE_GRP SET
GRP_NM = #{group.name}
, CTGR_ID = #{group.categoryID}
, DSCRP = #{group.description}
, MDFCN_DT =<include refid="utility.now" />
, MDFR = #{currentUser.id}
WHERE GRP_ID = #{group.id}</update>
<update id="removeGroups" parameterType="map">/*코드그룹 제거(codeMapper.removeGroups) */
UPDATE TB_CODE_GRP SET
USE_YN = 'N'
, MDFCN_DT =<include refid="utility.now" />
, MDFR = #{currentUser.id}
<where>
<if test="categoryIDs != null">CTGR_ID IN (<foreach collection="categoryIDs" item="categoryID" separator=",">#{categoryID}</foreach>)</if>
<if test="groupIDs != null">GRP_ID IN (<foreach collection="groupIDs" item="groupID" separator=",">#{groupID}</foreach>)</if>
</where></update>
<sql id="selectCodes"><include refid="utility.paging-prefix" />
SELECT *
FROM TB_CMN_CODE
WHERE USE_YN = 'Y'
<if test='groupIDs != null'>AND GRP_ID IN (<foreach collection="groupIDs" item="groupID" separator=",">#{groupID}</foreach>)</if>
<if test='codes != null'>AND CODE IN (<foreach collection="codes" item="code" separator=",">#{code}</foreach>)</if>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix" /></sql>
<select id="getCodeList" parameterType="map" resultType="dataobject">/* 그룹별 코드 가져오기(codeMapper.getCodeList) */
<include refid="selectCodes" /></select>
<select id="getCodes" parameterType="map" resultMap="codeRow">/* 코드 가져오기(codeMapper.getCodes) */
<include refid="selectCodes" /></select>
<insert id="insertCode" parameterType="map">/* 코드 등록(codeMapper.insertCode) */
INSERT INTO TB_CMN_CODE (
GRP_ID
, CODE
, CODE_VAL
, DSCRP
, ETC_1
, ETC_2
, ETC_3
, SRT_ORD
, REG_DT
, RGTR
, MDFCN_DT
, MDFR
, USE_YN
) VALUES (
#{code.groupID}
, #{code.code}
, #{code.value}
, #{code.description}
, #{code.etc1}
, #{code.etc2}
, #{code.etc3}
, #{code.sortOrder}
,<include refid="utility.now" />
, #{currentUser.id}
,<include refid="utility.now" />
, #{currentUser.id}
, 'Y'
)</insert>
<update id="updateCode" parameterType="map">/* 코드 수정(codeMapper.updateCode) */
UPDATE TB_CMN_CODE SET
CODE_VAL = #{code.value}
, DSCRP = #{code.description}
, ETC_1 = #{code.etc1}
, ETC_2 = #{code.etc2}
, ETC_3 = #{code.etc3}
, MDFCN_DT =<include refid="utility.now" />
, MDFR = #{currentUser.id}
WHERE GRP_ID = #{code.groupID}
AND CODE = #{code.code}</update>
<update id="reorderCodes" parameterType="map">/* 코드 정렬순서 변경(codeMapper.reorderCodes) */
UPDATE TB_CMN_CODE SET
SRT_ORD = CASE CODE<foreach collection="codes" item="code" index="index" separator=" ">
WHEN #{code} THEN #{index}</foreach>
ELSE SRT_ORD
END
, MDFCN_DT =<include refid="utility.now" />
, MDFR = #{currentUser.id}
WHERE GRP_ID = #{groupID}
AND CODE IN (<foreach collection="codes" item="code" separator=",">#{code}</foreach>)</update>
<update id="removeCodes" parameterType="map">/* 코드 제거(codeMapper.removeCodes) */
UPDATE TB_CMN_CODE SET
MDFCN_DT =<include refid="utility.now" />
, MDFR = #{currentUser.id}
, USE_YN = 'N'
<where>
<if test="groupIDs != null">AND GRP_ID IN (<foreach collection="groupIDs" item="groupID" separator=",">#{groupID}</foreach>)</if>
<if test="codes != null">AND CODE IN (<foreach collection="codes" item="code" separator=",">#{code}</foreach>) </if>
</where></update>
</mapper>

@ -1,126 +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.base.file.dao.FileMapper">
<resultMap id="fileRow" type="cokr.xit.base.file.FileInfo">
<result property="id" column="FILE_ID"/>
<result property="infoType" column="INF_TYPE"/>
<result property="infoKey" column="INF_KEY"/>
<result property="subType" column="SUB_TYPE"/>
<result property="name" column="FILE_NM"/>
<result property="path" column="FILE_PATH"/>
<result property="url" column="URL"/>
<result property="mimeType" column="MIME_TYPE"/>
<result property="size" column="FILE_SIZE"/>
<result property="downloadCount" column="DNLD_CNT"/>
<result property="sortOrder" column="SRT_ORD"/>
<result property="createdAt" column="REG_DT"/>
<result property="createdBy" column="RGTR"/>
<result property="useYN" column="USE_YN"/>
</resultMap>
<sql id="fileDirs">SELECT INF_TYPE
, CONCAT('C://workspace/xit/base/files/', DIR, DATE_FORMAT(CURRENT_DATE, '%Y/%m/%d/')) DIR
FROM (
SELECT '00' INF_TYPE, 'attachment/' DIR UNION
SELECT '01' INF_TYPE, 'document/' DIR UNION
SELECT '02' INF_TYPE, 'article/' DIR
) FILE_DIRS</sql>
<sql id="selectFiles">
<if test="fileIDs != null">
SELECT A.*, REPLACE(FILE_PATH, 'C://workspace/xit/base', '') URL
FROM TB_FILE A
WHERE FILE_ID IN (<foreach collection="fileIDs" item="fileID" separator=",">#{fileID}</foreach>)
ORDER BY FILE_ID</if>
<if test="fileIDs == null"><include refid="utility.paging-prefix" />
SELECT A.*, REPLACE(FILE_PATH, 'C://workspace/xit/base', '') URL
FROM TB_FILE A
<where>
<if test="infoType != null"> AND A.INF_TYPE = #{infoType}</if>
<if test="infoKeys != null"> AND INF_KEY IN (<foreach collection="infoKeys" item="infoKey" separator=",">#{infoKey}</foreach>)</if>
AND USE_YN = 'Y'
</where>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix" /></if></sql>
<select id="getFileList" parameterType="map" resultType="dataobject">/* 파일 목록 조회(fileMapper.getFileList) */
<include refid="selectFiles" /></select>
<select id="getFilesOf" parameterType="map" resultMap="fileRow">/* 파일 가져오기(fileMapper.getFilesOf) */
<include refid="selectFiles" /></select>
<select id="getFiles" parameterType="map" resultMap="fileRow">/* 파일 가져오기(fileMapper.getFiles) */
<include refid="selectFiles" /></select>
<insert id="insertFile" parameterType="map">/* 파일 등록(fileMapper.insertFile) */
<selectKey keyProperty="file.id,file.path" keyColumn="NEW_ID,PATH" resultType="map" order="BEFORE">
SELECT NEW_ID, CONCAT(DIR, NEW_ID, '.', #{file.extension}) PATH
FROM (
SELECT IFNULL(MAX(FILE_ID) + 1, CONCAT(THIS_DAY, '00001')) NEW_ID
FROM TB_FILE A, (<include refid="utility.selectThisDay" />) B
WHERE FILE_ID LIKE CONCAT(THIS_DAY, '%')
) T1, (
<include refid="fileDirs" />
WHERE INF_TYPE = #{file.infoType}
) T2</selectKey>
INSERT INTO TB_FILE (
FILE_ID
, INF_TYPE
, INF_KEY
, SUB_TYPE
, FILE_NM
, FILE_PATH
, MIME_TYPE
, FILE_SIZE
, DNLD_CNT
, SRT_ORD
, RGTR
, REG_DT
, USE_YN
) VALUES (
#{file.id}
, #{file.infoType}
, #{file.infoKey}
, #{file.subType}
, #{file.name}
, #{file.path}
, #{file.mimeType}
, #{file.size}
, #{file.downloadCount}
, #{file.sortOrder}
, #{currentUser.id}
,<include refid="utility.now" />
, 'Y'
)
</insert>
<update id="reorder" parameterType="map">/* 파일 순서 변경(fileMapper.reorder) */
UPDATE TB_FILE SET
SRT_ORD = CASE FILE_ID
<foreach collection="fileIDs" item="fileID" index="index" separator=" ">WHEN #{fileID} THEN #{index}
</foreach>
ELSE SRT_ORD END
WHERE FILE_ID IN (<foreach collection="fileIDs" item="fileID" separator=",">#{fileID}</foreach>)</update>
<update id="updateDownloadCount" parameterType="map">/* 다운로드 횟수 증가(fileMapper.updateDownloadCount) */
UPDATE TB_FILE SET
DNLD_CNT = DNLD_CNT + 1
WHERE USE_YN = 'Y'
AND FILE_ID IN (<foreach collection="fileIDs" item="fileID" separator=",">#{fileID}</foreach>)</update>
<update id="removeFiles" parameterType="map">/* 파일 제거(fileMapper.removeFiles) */
UPDATE TB_FILE SET
USE_YN = 'N'
WHERE USE_YN = 'Y'
<if test="fileIDs != null"> AND FILE_ID IN (<foreach collection="fileIDs" item="fileID" separator=",">#{fileID}</foreach>)</if>
<if test="infoKeys != null">
AND INF_TYPE = #{infoType}
AND INF_KEY IN (<foreach collection="infoKeys" item="infoKey" separator=",">#{infoKey}</foreach>)</if></update>
<delete id="deleteFiles" parameterType="map">/* 파일 삭제(fileMapper.deleteFiles) */
DELETE FROM TB_FILE
<if test="fileIDs != null">WHERE FILE_ID IN (<foreach collection="fileIDs" item="fileID" separator=",">#{fileID}</foreach>)</if>
</delete>
</mapper>

@ -1,94 +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.base.menu.dao.MenuMapper">
<resultMap id="menuRow" type="cokr.xit.base.menu.Menu">
<result property="id" column="MENU_NO"/>
<result property="name" column="MENU_NM"/>
<result property="programFilename" column="PGRM_FILE_NM"/>
<result property="action" column="ACTION"/>
<result property="description" column="DSCRP"/>
<result property="parentID" column="PRNT_NO"/>
<result property="imageName" column="IMG_NM"/>
<result property="imageConf" column="IMG_CNF"/>
<result property="sortOrder" column="SRT_ORD"/>
<result property="createdAt" column="REG_DT"/>
<result property="createdBy" column="RGTR"/>
</resultMap>
<sql id="selectMenus">
SELECT A.*
FROM TB_MENU A
<if test='menuID != null'>WHERE MENU_NO = #{menuID}</if>
ORDER BY PRNT_NO, SRT_ORD, MENU_NO</sql>
<select id="getMenus" parameterType="map" resultMap="menuRow">/* 메뉴 정보 조회(menuMapper.getMenus) */
<include refid="selectMenus" /></select>
<select id="getMenu" parameterType="int" resultMap="menuRow">/* 메뉴 가져오기(menuMapper.getMenu) */
<include refid="selectMenus" /></select>
<insert id="insertMenu" parameterType="map">/* 메뉴 등록(menuMapper.insertMenu) */
<selectKey order="BEFORE" resultType="map" keyColumn="NEW_NO,NEW_ORD" keyProperty="menu.id,menu.sortOrder">
SELECT NEW_NO, NEW_ORD
FROM (SELECT IFNULL(MAX(MENU_NO) + 1, 0) NEW_NO FROM TB_MENU) A,
(<include refid="newSortOrder" />) B</selectKey>
INSERT INTO TB_MENU (
MENU_NO
, MENU_NM
, PRNT_NO
, PGRM_FILE_NM
, ACTION
, DSCRP
, IMG_NM
, IMG_CNF
, SRT_ORD
, REG_DT
, RGTR
) VALUES (
#{menu.id}
, #{menu.name}
, #{menu.parentID}
, #{menu.programFilename}
, #{menu.action}
, #{menu.description}
, #{menu.imageName}
, #{menu.imageConf}
, #{menu.sortOrder}
,<include refid="utility.now" />
, #{currentUser.id}
)</insert>
<update id="updateMenu" parameterType="map">/* 메뉴 수정(menuMapper.updateMenu) */
UPDATE TB_MENU SET
MENU_NM = #{menu.name}
, PGRM_FILE_NM = #{menu.programFilename}
, ACTION = #{menu.action}
, DSCRP = #{menu.description}
, IMG_NM = #{menu.imageName}
, IMG_CNF = #{menu.imageConf}
WHERE MENU_NO = #{menu.id}</update>
<sql id="newSortOrder">SELECT IFNULL(MAX(SRT_ORD) + 1, 0) NEW_ORD FROM TB_MENU WHERE PRNT_NO = IFNULL(#{parentID}, IFNULL(#{menu.parentID}, 0))</sql>
<update id="moveMenus" parameterType="map">/* 메뉴 이동(menuMapper.moveMenus) */
UPDATE TB_MENU SET
PRNT_NO = #{parentID}
, SRT_ORD = SRT_ORD + (<include refid="newSortOrder" />)
WHERE MENU_NO IN (<foreach collection="menuIDs" item="menuID" separator=",">#{menuID}</foreach>)
</update>
<update id="reorderMenus" parameterType="map">/* 메뉴 순서 변경(menuMapper.reorderMenus) */
UPDATE TB_MENU SET
SRT_ORD = CASE MENU_NO
<foreach collection="menuIDs" item="menuID" index="index">WHEN #{menuID} THEN #{index}
</foreach>
ELSE MENU_NO END
WHERE MENU_NO IN (<foreach collection="menuIDs" item="menuID" separator=",">#{menuID}</foreach>)</update>
<delete id="removeMenus" parameterType="map">/* 메뉴 제거(menuMapper.removeMenus) */
DELETE FROM TB_MENU
WHERE MENU_NO IN (<foreach collection="menuIDs" item="menuID" separator=",">#{menuID}</foreach>)
</delete>
</mapper>

@ -1,70 +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.base.security.authentication.dao.PolicyMapper">
<resultMap id="policyRow" type="cokr.xit.base.security.authentication.AuthenticationPolicy">
<result property="userID" column="USER_ID"/>
<result property="ipAddress" column="IP_ADRS"/>
<result property="duplicateYN" column="DPLCT_YN"/>
<result property="limitYN" column="LIMIT_YN"/>
<result property="createdBy" column="RGTR"/>
<result property="createdAt" column="REG_DT"/>
<result property="modifiedBy" column="MDFR"/>
<result property="lastModified" column="MDFCN_DT"/>
</resultMap>
<select id="getPolicyList" parameterType="map" resultType="dataobject">/* 로그인 정책 목록 조회(policyMapper.getPolicyList) */
<include refid="utility.paging-prefix"/>
SELECT A.USER_ID
, USER_NM
, IP_ADRS
, DPLCT_YN
, LIMIT_YN
, MDFR
, MDFCN_DT
FROM TB_USER A LEFT OUTER JOIN TB_LOGIN_POLICY B ON A.USER_ID = B.USER_ID
<if test="term != null">WHERE A.${by} LIKE CONCAT('%', #{term}, '%')</if>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix"/></select>
<select id="getPolicies" parameterType="map" resultMap="policyRow">/* 로그인 정책 가져오기(policyMapper.getPolicies) */
SELECT *
FROM TB_LOGIN_POLICY
<if test="userIDs != null">WHERE USER_ID IN (<foreach collection="userIDs" item="userID" separator=",">#{userID}</foreach>)</if>
ORDER BY USER_ID</select>
<insert id="insertPolicy" parameterType="map">/* 로그인 정책 등록(policyMapper.insertPolicy) */
INSERT INTO TB_LOGIN_POLICY (
USER_ID
, IP_ADRS
, DPLCT_YN
, LIMIT_YN
, REG_DT
, RGTR
, MDFCN_DT
, MDFR
) VALUES (
#{policy.userID}
, #{policy.ipAddress}
, #{policy.duplicateYN}
, #{policy.limitYN}
,<include refid="utility.now" />
, #{currentUser.id}
,<include refid="utility.now" />
, #{currentUser.id}
)</insert>
<update id="updatePolicy" parameterType="map">/* 로그인 정책 수정(policyMapper.updatePolicy) */
UPDATE TB_LOGIN_POLICY SET
IP_ADRS = #{policy.ipAddress}
, DPLCT_YN = #{policy.duplicateYN}
, LIMIT_YN = #{policy.limitYN}
, MDFR = #{currentUser.id}
, MDFCN_DT =<include refid="utility.now" />
WHERE USER_ID = #{policy.userID}</update>
<delete id="removePolicy" parameterType="map">/* 로그인 정책 삭제(policyMapper.removePolicy) */
DELETE FROM TB_LOGIN_POLICY
WHERE USER_ID IN (<foreach collection="userIDs" item="userID" separator=",">#{userID}</foreach>)</delete>
</mapper>

@ -1,135 +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="program">
<resultMap id="programRow" type="cokr.xit.base.menu.Program">
<result property="filename" column="PGRM_FILE_NM"/>
<result property="location" column="PGRM_FILE_PATH"/>
<result property="name" column="PGRM_NM"/>
<result property="description" column="DSCRP"/>
<result property="url" column="URL"/>
</resultMap>
<resultMap id="reqRow" type="cokr.xit.base.menu.ChangeRequest">
<result property="filename" column="PGRM_FILE_NM"/>
<result property="id" column="REQ_ID"/>
<result property="subject" column="SUBJECT"/>
<result property="requestorID" column="REQ_USER"/>
<result property="requestDate" column="REQ_DT"/>
<result property="requestDetail" column="REQ_CNTNT"/>
<result property="processorID" column="PRSC_USER"/>
<result property="processDate" column="PRCS_DT"/>
<result property="processDetail" column="PRCS_CNTNT"/>
<result property="status" column="PRCS_STATUS"/>
</resultMap>
<sql id="selectPrograms">
<include refid="utility.paging-prefix"/>
SELECT A.*
FROM TB_PROGRAM A
<where>
<if test="by != null and term != null">${by} LIKE CONCAT('%', #{term}, '%')</if>
<if test='filenames != null'>PGRM_FILE_NM IN (<foreach collection="filenames" item="filename" separator=",">#{filename}</foreach>)</if>
</where>
ORDER BY<if test='by != null'>${by}</if><if test='by == null'>PGRM_FILE_NM</if>
<include refid="utility.paging-suffix"/></sql>
<select id="getProgramList" parameterType="map" resultType="dataobject">/* 프로그램 목록 조회(program.getProgramList) */
<include refid="selectPrograms"/></select>
<select id="getPrograms" parameterType="map" resultMap="programRow">/* 프로그램 가져오기(program.getPrograms) */
<include refid="selectPrograms"/></select>
<insert id="insertProgram" parameterType="cokr.xit.base.menu.Program">/* 프로그램 등록(program.insertProgram) */
INSERT INTO TB_PROGRAM (
PGRM_FILE_NM
, PGRM_FILE_PATH
, PGRM_NM
, DSCRP
, URL
) VALUES (
#{filename}
, #{location}
, #{name}
, #{description}
, #{url}
)</insert>
<update id="updateProgram" parameterType="cokr.xit.base.menu.Program">/* 프로그램 수정(program.updateProgram) */
UPDATE TB_PROGRAM SET
PGRM_FILE_PATH = #{location}
, PGRM_NM = #{name}
, DSCRP = #{description}
, URL = #{url}
WHERE PGRM_FILE_NM = #{filename}</update>
<delete id="removePrograms" parameterType="map">/* 프로그램 삭제(program.removePrograms) */
DELETE FROM TB_PROGRAM
WHERE PGRM_FILE_NM IN (<foreach collection="filenames" item="filename" separator=",">#{filename}</foreach>)</delete>
<delete id="clearPrograms" parameterType="map">/* 프로그램 비우기(program.clearPrograms) */
DELETE FROM TB_PROGRAM
WHERE PGRM_FILE_NM NOT IN (SELECT PGRM_FILE_NM FROM TB_MENU)</delete>
<sql id="selectRequests">
SELECT A.*
FROM TB_PGRM_CHNG_REQ A
<where>
<if test='fromReqDate != null'>REQ_DT >= #{fromReqDate}</if>
<if test='toReqDate != null'>REQ_DT &lt;= #{toReqDate}</if>
<if test="by != null and term != null">${by} LIKE CONCAT('%', #{term}, '%')</if>
<if test='filenames != null'>PGRM_FILE_NAME IN (<foreach collection="filenames" item="filename" separator=",">#{filename}</foreach>)</if>
<if test='reqIDs != null'>REQ_ID IN (<foreach collection="reqIDs" item="reqID" separator=",">#{reqID}</foreach>)</if>
</where>
ORDER BY PGRM_FILE_NM,<if test='by != null'>${by}</if><if test='by == null'>REQ_ID DESC</if></sql>
<select id="getRequestList" parameterType="map" resultType="dataobject">/* 변경요청 목록 조회(program.getRequestList) */
<include refid="selectRequests" /></select>
<select id="getRequests" parameterType="map" resultType="dataobject">/* 프로그램별 변경요청 목록 조회(program.getRequests) */
<include refid="selectRequests" /></select>
<insert id="insertRequest" parameterType="cokr.xit.base.menu.ChangeRequest">/* 프로그램 변경요청 등록(program.insertRequest) */
INSERT INTO TB_PGRM_CHNG_REQ (
PGRM_FILE_NM
, REQ_ID
, SUBJECT
, REQ_USER
, REQ_DT
, REQ_CNTNT
, PRSC_USER
, PRCS_DT
, PRCS_CNTNT
, PRCS_STATUS
) VALUES (
#{filename}
, #{id}
, #{subject}
, #{requestorID}
, #{requestDate}
, #{requestDetail}
, #{processorID}
, #{processDate}
, #{processDetail}
, #{status}
)</insert>
<update id="updateRequest" parameterType="cokr.xit.base.menu.ChangeRequest">/* 프로그램 변경요청 수정(program.updateRequest) */
UPDATE TB_PGRM_CHNG_REQ SET
SUBJECT = #{subject}
, REQ_USER = #{requestorID}
, REQ_DT = #{requestDate}
, REQ_CNTNT = #{requestDetail}
, PRSC_USER = #{processorID}
, PRCS_DT = #{processDate}
, PRCS_CNTNT = #{processDetail}
WHERE PGRM_FILE_NM = #{filename}
AND REQ_ID = #{id}</update>
<update id="setRequestStatus" parameterType="map">/* 프로그램 변경요청 상태 변경(program.setRequestStatus) */
UPDATE TB_PGRM_CHNG_REQ SET
PRCS_STATUS = #{status}
WHERE PGRM_FILE_NM = #{filename}
AND REQ_ID = #{id}</update>
</mapper>

@ -1,13 +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.foundation.test.TestMapper">
<insert id="insert" parameterType="map">${sql}</insert>
<update id="update" parameterType="map">${sql}</update>
<delete id="delete" parameterType="map">${sql}</delete>
<update id="commit">COMMIT</update>
</mapper>

@ -1,221 +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.base.user.dao.UserMapper">
<resultMap id="userRow" type="cokr.xit.base.user.ManagedUser">
<result property="id" column="USER_ID"/>
<result property="account" column="USER_ACNT"/>
<result property="name" column="USER_NM"/>
<result property="password" column="PASSWD"/>
<result property="passwordHint" column="PASSWD_HINT"/>
<result property="passwordHintAnswer" column="PASSWD_NSR"/>
<result property="empNo" column="EMP_NO"/>
<result property="residentRegNo" column="RSDNT_NO"/>
<result property="gender" column="GENDER"/>
<result property="birthday" column="BRDT"/>
<result property="areaNo" column="AREA_NO"/>
<result property="zipCode" column="ZIP"/>
<result property="address" column="ADDR"/>
<result property="addressDetail" column="DADDR"/>
<result property="phoneNo" column="TELNO"/>
<result property="mobilePhoneNo" column="MBL_TELNO"/>
<result property="faxNo" column="FXNO"/>
<result property="emailAddress" column="EML_ADRS"/>
<result property="positionName" column="POS_NM"/>
<result property="groupID" column="GRP_ID"/>
<result property="orgID" column="ORG_ID"/>
<result property="deptCode" column="DEPT_CD"/>
<result property="institute" column="NSTT_CD"/>
<result property="certificateDn" column="CRTFC_DN"/>
<result property="locked" column="LOCK_YN"/>
<result property="lockCount" column="LOCK_CNT"/>
<result property="lockedDate" column="LOCK_DT"/>
<result property="createdAt" column="REG_DT"/>
<result property="createdBy" column="RGTR"/>
<result property="lastModified" column="MDFCN_DT"/>
<result property="modifiedBy" column="MDFR"/>
<result property="useYN" column="USE_YN"/>
<result property="status" column="STTS"/>
</resultMap>
<sql id="selectUsers"><include refid="utility.paging-prefix" />
SELECT USER_ID
, USER_ACNT
, USER_NM
, PASSWD_HINT
, PASSWD_NSR
, EMP_NO
, RSDNT_NO
, GENDER
, BRDT
, AREA_NO
, ZIP
, ADDR
, DADDR
, TELNO
, MBL_TELNO
, FXNO
, EML_ADRS
, POS_NM
, GRP_ID
, ORG_ID
, DEPT_CD
, NSTT_CD
, CRTFC_DN
, LOCK_YN
, LOCK_CNT
, LOCK_DT
, REG_DT
, STTS
FROM TB_USER
<where><if test="by != null and term != null">AND ${by} LIKE CONCAT('%', #{term}, '%')</if>
<if test="userIDs != null">USER_ID IN (<foreach collection="userIDs" item="userID" separator=",">#{userID}</foreach>)</if>
<if test="status == null and userIDs == null">AND STTS != 'D'</if>
<if test="status != null">AND STTS = #{status}</if></where>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix" /></sql>
<select id="getUserList" parameterType="map" resultType="dataobject">/* 사용자 목록 조회(userMapper.getUserList) */
<include refid="selectUsers"/></select>
<select id="getUsers" parameterType="map" resultMap="userRow">/* 사용자 가져오기(userMapper.getUsers) */
<include refid="selectUsers"/></select>
<select id="getUser" parameterType="map" resultMap="userRow">/* 사용자 계정 가져오기(userMapper.getUser) */
SELECT *
FROM TB_USER
WHERE USER_ACNT = #{account}
AND NSTT_CD = #{institute}</select>
<insert id="insertUser" parameterType="cokr.xit.base.user.ManagedUser">
<selectKey resultType="string" keyProperty="id" keyColumn="NEW_ID" order="BEFORE">SELECT LPAD(IFNULL(MAX(USER_ID) + 1, 1), 10, '0') NEW_ID FROM TB_USER</selectKey>
/* 사용자 정보 등록(userMapper.insertUser) */
INSERT INTO TB_USER (
USER_ID
, USER_ACNT
, USER_NM
, PASSWD
, PASSWD_HINT
, PASSWD_NSR
, EMP_NO
, RSDNT_NO
, GENDER
, BRDT
, AREA_NO
, ZIP
, ADDR
, DADDR
, TELNO
, MBL_TELNO
, FXNO
, EML_ADRS
, POS_NM
, GRP_ID
, ORG_ID
, NSTT_CD
, CRTFC_DN
, LOCK_YN
, LOCK_CNT
, LOCK_DT
, REG_DT
, RGTR
, MDFCN_DT
, MDFR
, USE_YN
, STTS
) VALUES (
#{id}
, #{account}
, #{name}
, #{password}
, #{passwordHint}
, #{passwordHintAnswer}
, #{empNo}
, #{residentRegNo}
, #{gender}
, #{birthday}
, #{areaNo}
, #{zipCode}
, #{address}
, #{addressDetail}
, #{phoneNo}
, #{mobilePhoneNo}
, #{faxNo}
, #{emailAddress}
, #{positionName}
, #{groupID}
, #{orgID}
, #{institute}
, #{certificateDn}
, 'N'
, 0
, NULL
,<include refid="utility.now" />
, #{createdBy}
,<include refid="utility.now" />
, #{createdBy}
, 'Y'
, #{status}
)</insert>
<update id="updateUser" parameterType="cokr.xit.base.user.ManagedUser">/* 사용자 정보 수정(userMapper.updateUser) */
UPDATE TB_USER SET
USER_NM = #{name}
, PASSWD_HINT = #{passwordHint}
, PASSWD_NSR = #{passwordHintAnswer}
, EMP_NO = #{empNo}
, RSDNT_NO = #{residentRegNo}
, GENDER = #{gender}
, BRDT = #{birthday}
, AREA_NO = #{areaNo}
, ZIP = #{zipCode}
, ADDR = #{address}
, DADDR = #{addressDetail}
, TELNO = #{phoneNo}
, MBL_TELNO = #{mobilePhoneNo}
, FXNO = #{faxNo}
, EML_ADRS = #{emailAddress}
, POS_NM = #{positionName}
, GRP_ID = #{groupID}
, ORG_ID = #{orgID}
, NSTT_CD = #{institute}
, CRTFC_DN = #{certificateDn}
, MDFCN_DT =<include refid="utility.now" />
, MDFR = #{modifiedBy}
WHERE USER_ID = #{id}</update>
<update id="changePassword" parameterType="map">/* 비밀번호 변경(userMapper.changePassword) */
UPDATE TB_USER SET
PASSWD = CASE USER_ID<foreach collection="userPasswords" item="userPassword" separator=" ">
WHEN #{userPassword.userID} THEN #{userPassword.password}</foreach>
ELSE PASSWD END
, MDFCN_DT =<include refid="utility.now" />
, MDFR = #{currentUser.id}
WHERE USER_ID IN (<foreach collection="userIDs" item="userID" separator=",">#{userID}</foreach>)
</update>
<update id="lockUsers" parameterType="map">/* 사용자 잠김 해제(userMapper.lockUsers) */
UPDATE TB_USER SET
<if test='lock == true'> LOCK_YN = 'Y'
, LOCK_CNT = LOCK_CNT + 1
, LOCK_DT =<include refid="utility.now" /></if>
<if test='lock == false'> LOCK_YN = 'N'
, LOCK_CNT = 0
, LOCK_DT = NULL</if>
, MDFCN_DT =<include refid="utility.now" />
, MDFR = #{currentUser.id}
WHERE USER_ID IN (<foreach collection="userIDs" item="userID" separator=",">#{userID}</foreach>)
</update>
<update id="setStatus" parameterType="map">/* 사용자 상태 변경(userMapper.setStatus) */
UPDATE TB_USER SET
STTS = #{status}
<if test='"D" == status'>, USE_YN = 'N'</if>
, MDFCN_DT =<include refid="utility.now" />
, MDFR = #{currentUser.id}
WHERE USER_ID IN (<foreach collection="userIDs" item="userID" separator=",">#{userID}</foreach>)
AND STTS != #{status}
</update>
</mapper>

@ -1,29 +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="utility">
<!-- For Maria DB -->
<sql id="paging-prefix"><if test="fetchSize != null and fetchSize &gt; 0">
SELECT QROWS.* FROM (
SELECT ROW_NUMBER() OVER(<include refid="utility.sortBy" />) ROW_NUM
, COUNT(*) OVER() TOT_CNT, QBODY.*
FROM (</if></sql>
<sql id="paging-suffix"><if test="fetchSize != null and fetchSize &gt; 0"> ) QBODY
) QROWS
WHERE ROW_NUM BETWEEN ((#{pageNum} - 1) * #{fetchSize}) + 1 AND (#{pageNum} * #{fetchSize})</if></sql>
<select id="foundRows" resultType="dataobject">/* 전체 결과수 가져오기(utility.foundRows) */
SELECT FOUND_ROWS() TOT_CNT</select>
<sql id="sortBy"><if test="orderBy != null and orderBy != ''">ORDER BY ${orderBy}</if></sql>
<sql id="orderBy"><if test="fetchSize == null or fetchSize &lt; 1"><include refid="utility.sortBy" /></if></sql>
<sql id="now">DATE_FORMAT(CURRENT_TIMESTAMP(), '%Y%m%d%H%i%s')</sql>
<sql id="thisDay">IFNULL(#{thisDay}, DATE_FORMAT(CURRENT_DATE, '%Y%m%d'))</sql>
<sql id="selectThisDay">SELECT<include refid="utility.thisDay" />THIS_DAY</sql>
</mapper>

@ -1,444 +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.biz.cmm.dao.FimsCrackdownMgtMapper">
<!-- *************************************************************************************************************
* tb_crdn : 단속
************************************************************************************************************** -->
<sql id="sqlRtReglt">
SELECT tc.crdn_id
, tc.rtpyr_id -- 납부자ID
, tc.sgg_cd -- 기관코드
, tc.sys_se_cd -- 시스템코드
, tc.crdn_se_cd -- 단속구분코드
, tc.crdn_inpt_se_cd -- 입력구분코드
, tc.crdn_ymd
, tc.crdn_bgng_tm -- 단속시작시간
, tc.crdn_end_hr -- 단속종료시간
, '' AS violt_lrg_code -- 위반 법규 코드
, '' AS violt_dtls_code -- 위반내역코드
, '' AS violt_dtls_etc_cn -- 위반내역 기타 내용
, tc.crdn_plc -- 위반장소
, tc.vltn_nmtm -- 위반횟수
, tc.crdn_stdg_nm -- 위반법정동명
, tc.gps_x
, tc.gps_y
, tc.towng_yn -- 견인여부 코드
, tc.crdn_sn -- 스티커 번호
, tc.atch_file_cnt -- 이미지매수
, tc.minus_amt -- 감경금액
, 0 AS redution_aft_amount -- 감경후 금액
, tc.rcvmt_amt -- 수납금액
, 0 AS rdcamt -- 감액
, tc.adtn_amt -- 가산금
, tc.vhrno -- 차량번호
, tc.vhcl_nm -- 차량명
, tc.carmdl_clsf_nm -- 차종분류명
, tc.carmdl_asort_nm -- 차종종별명
, tc.ffnlg_carmdl_cd -- 과태료차종코드
, tc.vin -- 차대번호
, tc.etc_cn -- 특기사항
, tc.crdn_sparea_cd -- 단속특별구역코드
, tc.crdn_stts_cd
, tc.crdn_reg_se_cd -- 등록구분
, CONCAT(tc.crdn_ymd, tc.crdn_bgng_tm) AS crdnYmdTime
, tc.reg_dt
, tcfl.file_link_id -- CCTV data ID : 접수번호로 보여줄 것
, tcc.cvlcpt_link_id
, tcc.cvlcpt_rcpt_no -- 접수번호
, tcc.cvlcpt_rcpt_ymd -- 접수일자
, tcc.cvlcpt_aplcnt_nm -- 신고자
, tcc.cvlcpt_prcs_prnmnt_dt -- 처리기한
, SUBSTR(tcc.cvlcpt_prcs_prnmnt_dt,1,8) AS cvlcpt_prcs_prnmnt_ymd
, tei.duty_id_v -- 담당자
, tei.pcd_tel_v -- 담당자 전화번호
, tre.levy_excl_id
, tre.levy_excl_rsn_cd -- 서손구분코드
, tre.etc_cn AS levy_excl_etc_cn -- 서손사유상세
, trp.addr_se_cd -- 지번 도로 주소 구분 코드
, trp.zip
, trp.addr
, trp.dtl_addr
, trp.stdg_cd -- 법정동 코드
, IF(tc.crdn_se_cd = '09', '', tcfl.vltn_cn) AS vltnCn -- 위반내용
, (SELECT COUNT(crdn_id)
FROM tb_crdn tgt
WHERE tgt.vhrno = tc.vhrno
AND NOT NULLIF(tc.vhrno, '') IS NULL) AS vhrnoCnt
, (SELECT COUNT(cvlcpt_dscsn_id)
FROM tb_cvlcpt_dscsn_cn tgt
WHERE EXISTS(SELECT 1
FROM tb_crdn
WHERE tgt.crdn_id = crdn_id
AND NOT NULLIF(rtpyr_id, '') IS NULL
AND rtpyr_id = tc.rtpyr_id
)
OR (
NOT NULLIF(tc.vhrno, '') IS NULL
AND tgt.vhrno = tc.vhrno
)
) AS minwonCnt
, tc.mdfcn_dt -- 최종처리일시
, tc.mdfr -- 최종 처리자
FROM tb_crdn tc
LEFT JOIN tb_crdn_file_link tcfl
ON tc.link_id = tcfl.file_link_id
LEFT JOIN tb_crdn_cvlcpt tcc
ON tc.link_id = tcc.cvlcpt_link_id
LEFT JOIN tb_esb_interface tei
ON tc.link_id = tei.interface_seq_n
LEFT JOIN tb_levy_excl tre
ON tc.crdn_id = tre.crdn_id
LEFT JOIN tb_payer trp
ON tc.rtpyr_id = trp.rtpyr_id
</sql>
<select id="selectCrackdowns" resultType="cokr.xit.fims.biz.cmm.FimsCrackdownDTO$Info">
/* cmm-fims-crackdown-mysql-mapper|selectCrackdowns-단속 목록 조회|julim */
<include refid="sqlRtReglt"/>
<where>
<if test='crdnSttsCd != null and crdnSttsCd != ""'>
<if test='crdnSttsCd eq "NON-INIT"'>
<if test='ctznAnsYn eq "Y"'>
AND tc.crdn_stts_cd != '01'
</if>
<if test='ctznAnsYn eq "N"'>
</if>
</if>
<if test='crdnSttsCd != "NON-INIT"'>
AND tc.crdn_stts_cd = #{crdnSttsCd}
</if>
</if>
<if test='schDateOpt eq "crdnYmd"'>
AND tc.crdn_ymd BETWEEN REPLACE(#{schDateFrom},'-','') AND REPLACE(#{schDateTo},'-','')
</if>
<if test='schDateOpt eq "regDt"'>
AND SUBSTR(tc.reg_dt,1,8) BETWEEN REPLACE(#{schDateFrom},'-','') AND REPLACE(#{schDateTo},'-','')
</if>
<if test='vhrno != null and vhrno != ""'>
AND INSTR(tc.vhrno, #{vhrno}) > 0
</if>
<if test='sysSeCd != null and sysSeCd != ""'>
AND tc.sys_se_cd = #{sysSeCd}
</if>
<if test='crdnSeCd != null and crdnSeCd != ""'>
AND tc.crdn_se_cd = #{crdnSeCd}
</if>
<if test='crdnRegSeCd != null and crdnRegSeCd != ""'>
AND tc.crdn_reg_se_cd = #{crdnRegSeCd}
</if>
</where>
ORDER BY tc.sys_se_cd, tc.crdn_se_cd
, tcfl.file_link_id
, tc.link_id
, tc.crdn_ymd, tc.vhrno, tc.crdn_bgng_tm
</select>
<select id="selectCrackdown" resultType="cokr.xit.fims.biz.cmm.FimsCrackdownDTO$Info">
/* cmm-fims-crackdown-mysql-mapper|selectCrackdown-단속 정보 조회|julim */
<include refid="sqlRtReglt"/>
WHERE tc.crdn_id = #{crdnId}
</select>
<select id="selectCtznStmtInfo" resultType="cokr.xit.fims.biz.cmm.FimsCrackdownDTO$Ctzn">
/* cmm-fims-crackdown-mysql-mapper|selectCtznStmtInfo-시민신고 정보 조회|julim */
SELECT tcc.cvlcpt_link_id
, tc.sgg_cd
, tc.sys_se_cd
, tcc.cvlcpt_aply_se_cd
, tcc.cvlcpt_aply_no
, tcc.cvlcpt_rcpt_no
, tcc.cvlcpt_aplcnt_nm
, '' AS cvlcpt_aplcnt_zip
, '' AS cvlcpt_aplcnt_adres
, '' AS cvlcpt_aplcnt_eml_adrs
, '' AS cvlcpt_aplcnt_moblphon_no
, '' AS cvlcpt_aplcnt_tlphon_no
, tcc.cvlcpt_aply_ttl_nm
, tcc.cvlcpt_aply_cn
, tcc.cvlcpt_aply_dt
, tcc.cvlcpt_rcpt_ymd
, tcc.cvlcpt_prcs_prnmnt_dt
, SUBSTR(cvlcpt_prcs_prnmnt_dt,1,8) AS cvlcpt_prcs_prnmnt_ymd
, '' AS cvlcpt_regist_dt
, tc.crdn_plc
, '' AS vltn_cn
, tcc.rgtr
, tcc.mdfcn_dt
, tcc.mdfr
FROM tb_crdn tc
LEFT JOIN tb_crdn_cvlcpt tcc
ON tc.LINK_ID = tcc.cvlcpt_link_id
WHERE tc.crdn_id = #{crdnId}
</select>
<select id="selectRegltSts" resultType="string">
/* cmm-fims-crackdown-mysql-mapper|selectRegltSts-현재 단속 진행 상태 조회|julim */
SELECT crdn_stts_cd
FROM tb_crdn
WHERE crdn_id = #{crdnId}
</select>
<update id="updateRtReglt">
/* cmm-fims-crackdown-mysql-mapper|updateRtReglt-단속 정보 초기 자료 반영|julim */
UPDATE tb_crdn
SET crdn_se_cd = IF(crdn_se_cd = #{crdnSeCd}, crdn_se_cd, #{crdnSeCd})
, crdn_reg_se_cd = IF(crdn_reg_se_cd = #{crdnRegSeCd}, crdn_reg_se_cd, #{crdnRegSeCd})
, sys_se_cd = IF(sys_se_cd = #{sysSeCd}, sys_se_cd, #{sysSeCd})
, crdn_ymd = IF(crdn_ymd = REPLACE(#{crdnYmd}, '-', ''), crdn_ymd, REPLACE(#{crdnYmd}, '-', ''))
, crdn_bgng_tm = IF(crdn_bgng_tm = REPLACE(#{crdnBgngTm}, ':', ''), crdn_bgng_tm, REPLACE(#{crdnBgngTm}, ':', ''))
, atch_file_cnt = IF(atch_file_cnt = #{atchFileCnt}, atch_file_cnt, #{atchFileCnt})
, crdn_plc = IF(crdn_plc = #{crdnPlc}, crdn_plc, #{crdnPlc})
, crdn_stdg_nm = IF(crdn_stdg_nm = #{crdnStdgNm}, crdn_stdg_nm, #{crdnStdgNm})
, vhrno = IF(vhrno = #{vhrno}, vhrno, #{vhrno})
, vhcl_nm = IF(vhcl_nm = #{vhclNm}, vhcl_nm, #{vhclNm})
, vin = IF(vin = #{vin}, vin, #{vin})
, carmdl_asort_nm = IF(carmdl_asort_nm = #{carmdlAsortNm}, carmdl_asort_nm, #{carmdlAsortNm})
, carmdl_clsf_nm = IF(carmdl_clsf_nm = #{carmdlClsfNm}, carmdl_clsf_nm, #{carmdlClsfNm})
, ffnlg_carmdl_cd = IF(ffnlg_carmdl_cd = #{ffnlgCarmdlCd}, ffnlg_carmdl_cd, #{ffnlgCarmdlCd})
, etc_cn = IF(etc_cn = #{etcCn}, etc_cn, #{etcCn})
, crdn_sparea_cd = IF(crdn_sparea_cd = #{crdnSpareaCd}, crdn_sparea_cd, #{crdnSpareaCd})
, crdn_stts_cd = IF(crdn_stts_cd = #{crdnSttsCd}, crdn_stts_cd, #{crdnSttsCd})
, rtpyr_id = IF(rtpyr_id = #{rtpyrId}, rtpyr_id, #{rtpyrId})
, mdfcn_dt = DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, mdfr = #{mdfr}
WHERE crdn_id = #{crdnId}
</update>
<update id="updateProcessStsAndProcessDtRtReglt">
/* cmm-fims-crackdown-mysql-mapper|updateProcessStsAndProcessDtRtReglt-단속 상태와 최종처리일 변경|julim */
UPDATE tb_crdn
SET crdn_stts_cd = IF(crdn_stts_cd = #{crdnSttsCd}, crdn_stts_cd, #{crdnSttsCd})
, mdfcn_dt = DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, mdfr = #{mdfr}
WHERE crdn_id = #{crdnId}
</update>
<select id="selectCtznAnswerTmplInfo" resultType="cokr.xit.fims.framework.biz.cmm.CmmAnsTmplDTO$Dtl">
/* cmm-fims-crackdown-mysql-mapper|selectCtznAnswerTmplInfo-답변템플릿 정보 조회|julim */
SELECT tcat.tmplat_id
, tcat.tmplat_nm
, REPLACE(tcat.prface, '[차량번호]', #{vhrno}) AS prface -- 머리말
, REPLACE(tcat.tlface, '[차량번호]', #{vhrno}) AS tlface -- 꼬리말
, tcatd.answer_se_code -- 답변구분코드
, tcatd.resn_code -- 사유코드
, REPLACE(tcatd.answer_cn, '[차량번호]', #{vhrno}) AS answerCn -- 답변내용
, tcatd.answer_yn -- 답변여부
, tcatd.del_yn -- 삭제여부
FROM tb_cmm_ans_tmpl tcat
JOIN tb_cmm_ans_tmpl_dtl tcatd
ON tcat.tmplat_id = tcatd.tmplat_id
WHERE tcat.tmplat_id = #{tmplatId} -- 민원신고
AND tcatd.answer_se_code = #{answerSeCode} -- 서손 FIM021:서손, FIM025:계도 FIM028:부과
AND tcatd.resn_code = #{resnCode} -- 사유코드 : 계도의 경우 등록된 템플릿이 없으면 '00' 기본값, 부과의 경우 '01' 기본값
</select>
<insert id="saveEcCtznSttemntAnswer">
/* cmm-fims-crackdown-mysql-mapper|saveEcCtznSttemntAnswer-시민신고답변 생성 및 변경|julim */
INSERT
INTO tb_crdn_cvlcpt (
cvlcpt_link_id
, cvlcpt_aply_se_cd
, cvlcpt_aply_no
, cvlcpt_rcpt_no
, cvlcpt_gist
, cvlcpt_prcs_sumry
, cvlcpt_prcs_rslt_cn
, cvlcpt_prcs_cmptn_dt
, reg_dt
, rgtr
) SELECT tei.interface_seq_n
, tei.peti_gubun_c -- 민원구분
, tei.peti_no_c -- 민원신청번호
, tei.civil_no_c -- 민원접수번호
, tei.civil_gist_v -- 민원요지
, tei.civil_abstract_l -- 민원처리요약
, REPLACE(#{cvlcptPrcsRsltCn}, '[전화번호]', tei.pcd_tel_v) -- 민원처리결과
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
FROM tb_esb_interface tei
WHERE tei.interface_seq_n = #{interfaceSeqN}
ON DUPLICATE KEY
UPDATE cvlcpt_prcs_rslt_cn = #{cvlcptPrcsRsltCn}
, cvlcpt_prcs_cmptn_dt = DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
</insert>
<insert id="insertCtznSttemntCmplt">
/* cmm-fims-crackdown-mysql-mapper|insertCtznSttemntCmplt-민원등록|julim */
<selectKey resultType="string" keyProperty="cvlcptDscsnId" order="BEFORE">
SELECT LPAD(IFNULL(MAX(CAST(cvlcpt_dscsn_id AS UNSIGNED))+1, 1), 20, '0') AS cvlcptDscsnId
FROM tb_cvlcpt_dscsn_cn
</selectKey>
INSERT
INTO tb_cvlcpt_dscsn_cn (
cvlcpt_dscsn_id
, crdn_id
, sgg_cd
, dscsn_cn
, cvlcpt_se_cd
, vhrno
, reg_dt
, rgtr
) VALUES (
#{cvlcptDscsnId}
, #{crdnId}
, #{sggCd}
, #{dscsnCn}
, #{cvlcptSeCd}
, #{vhrno}
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
)
</insert>
<select id="selectEcCtznSttemntAnswer" resultType="cokr.xit.fims.biz.ec.CtznStmtDTO$Ans">
/* cmm-fims-crackdown-mysql-mapper|selectEcCtznSttemntAnswer-시민신고답변 데이타 조회|julim */
SELECT tcc.cvlcpt_link_id
, tc.sys_se_cd -- sysGubunC
, tc.sgg_cd -- ancCodeV
, tcc.cvlcpt_aply_se_cd -- 민원구분
, tcc.cvlcpt_aply_no -- 민원신청번호
, tcc.cvlcpt_rcpt_no -- 민원접수번호
, tcc.cvlcpt_gist -- 민원요지
, tcc.cvlcpt_prcs_sumry -- 민원처리요약
, '' AS prcs_dept_code -- 처리부서코드
, '' AS cvlcpt_prcs_deptnm -- 민원처리부서명
, '' AS charger_nm -- 담당자명
, '' AS charger_email -- 담당자이메일
, '' AS charger_tlphon_no -- 담당자전화번호
, tcc.cvlcpt_prcs_rslt_cn -- 민원처리결과
, tcc.cvlcpt_prcs_cmptn_dt -- 처리완료일시
, tei.sys_gubun_c
, tei.anc_code_v
FROM tb_crdn_cvlcpt tcc
JOIN tb_esb_interface tei
ON tcc.cvlcpt_link_id = tei.interface_seq_n
JOIN tb_crdn tc
ON tcc.cvlcpt_link_id = tc.LINK_ID
WHERE tcc.cvlcpt_link_id = #{cvlcptLinkId}
</select>
<select id="selectProcessSttusChangeHist" resultType="cokr.xit.fims.biz.rt.RtDTO$SttusChangeHist">
/* cmm-fims-crackdown-mysql-mapper|selectProcessSttusChangeHist-단속자료 변경 이력 조회|julim */
SELECT stts_hstry_id
, crdn_stts_cd
, reg_dt
, etc_cn
FROM tb_crdn_stts_hstry
WHERE crdn_id = #{crdnId}
</select>
<select id="selectRtpyrAdresHist" resultType="cokr.xit.fims.biz.rt.RtDTO$RtpyrHist">
/* cmm-fims-crackdown-mysql-mapper|selectRtpyrAdresHist-소유자 주소 변경 이력 조회|julim */
SELECT reg_dt
, all_adres
FROM tb_payer_hstry
WHERE rtpyr_id = #{rtpyrId}
</select>
<select id="selectElctrnNticSndng" resultType="cokr.xit.fims.framework.biz.cmm.CmmAnsTmplDTO$Dtl">
/* cmm-fims-crackdown-mysql-mapper|selectElctrnNticSndng-전자고지 발송 이력 조회|julim */
SELECT tens.elctrn_ntic_sndng_id
, tens.signgu_code
, tens.nht_tmplat_id
, tens.sndng_ty_code
, tens.sndng_co
, tens.sndng_process_sttus
, tens.sndng_dt
, tens.clos_dt
, tens.reg_dt
, tens.rgtr
, tens.mdfcn_dt
, tens.mdfr
, tensd.elctrn_ntic_sndng_detail_id
, tensd.main_code
, tensd.ihidnum
, tensd.cn_detail
, tensd.mobile_page_cn
, tensd.external_document_uuid
, tensr.elctrn_ntic_sndng_detail_id
, tensr.sndng_result_code
, tensr.requst_dt
, tensr.inqire_dt
, tensr.readng_dt
, IFNULL(tens.error_cn, tensr.error_cn) AS errorCn
FROM tb_elctrn_ntic_sndng tens
JOIN tb_elctrn_ntic_sndng_detail tensd
ON tens.ELCTRN_NTIC_SNDNG_ID = tensd.ELCTRN_NTIC_SNDNG_ID
LEFT OUTER JOIN tb_elctrn_ntic_sndng_result tensr
ON tensd.ELCTRN_NTIC_SNDNG_DETAIL_ID = tensr.ELCTRN_NTIC_SNDNG_DETAIL_ID
WHERE tensd.main_code = #{crdnId}
</select>
<select id="selectCtznSttemntCmplt" resultType="cokr.xit.fims.biz.cmm.FimsCrackdownDTO$CtznSttemntCmplt">
/* cmm-fims-crackdown-mysql-mapper|selectCtznSttemntCmplt-민원등록 이력 조회|julim */
SELECT tcdc.cvlcpt_dscsn_id
, tcdc.crdn_id
, tcdc.sgg_cd
, tcdc.DSCSN_CN
, tcdc.CVLCPT_SE_CD
, tcdc.vhrno
, tcdc.reg_dt
, tcdc.rgtr
, tcdc.mdfcn_dt
, tcdc.mdfr
FROM tb_cvlcpt_dscsn_cn tcdc
WHERE CVLCPT_SE_CD = #{cvlcptSeCd}
<if test='cvlcptSeCd eq "0"'>
AND EXISTS (SELECT 1
FROM tb_crdn
WHERE tcdc.crdn_id = crdn_id
AND rtpyr_id = #{rtpyrId}
)
</if>
<if test='cvlcptSeCd eq "1"'>
AND tcdc.vhrno = #{vhrno}
</if>
ORDER BY tcdc.reg_dt DESC
</select>
<select id="selectCrackdownVhrnoCnt" resultType="int">
/* cmm-fims-crackdown-mysql-mapper|selectCrackdownVhrnoCnt-단속횟수 조회|julim */
SELECT COUNT(crdn_id)
FROM tb_crdn tc
WHERE tc.vhrno = #{vhrno}
AND NOT NULLIF(#{vltnNmtm}, '') IS NULL
</select>
<select id="selectCrackdownPhotoLayout" resultType="cokr.xit.fims.biz.cmm.NtriDTO$CrackdownPhotoLayout">
/* cmm-fims-crackdown-mysql-mapper|selectCrackdownPhotoLayout-주정차/전용차로 단속사진전송 정보 레이아웃 조회|julim */
SELECT CONCAT(tc.crdn_ymd, tc.crdn_bgng_tm) AS crdnYmdTime -- 단속일시
, tc.vhrno -- 차량번호
, tc.crdn_se_cd -- 단속구분코드
, tcfl.crdn_eqpmnt_no -- 단속장비관리번호
, '' AS violt_dtls_code -- 위반내역코드
, '' AS violt_dtls_etc_cn -- 위반내역기타내용
, '' AS violt_lrg_code -- 위반법규(?? 60자리)
, tc.crdn_plc -- 위반장소
, tc.crdn_sparea_cd -- 단속특별구역구분
, '1' AS regionSe -- 지역구분
, CASE WHEN NULLIF(tc.crdn_stdg_nm, '') IS NULL
THEN '0000000000'
ELSE tc.crdn_stdg_nm
END AS crdnStdgCd -- 지역코드
, tc.gps_x
, tc.gps_y
, '' AS vhclNoX -- 자동차등록번호판위치 X축
, '' AS vhrnoY -- 자동차등록번호판위치 Y축
, tc.atch_file_cnt -- 사진갯수
, 'jpg' AS fileExtsn -- 확장자
FROM tb_crdn tc
JOIN tb_crdn_file_link tcfl
ON tc.link_id = tcfl.file_link_id
WHERE tc.crdn_id = #{crdnId}
</select>
</mapper>

@ -1,381 +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.biz.ec.dao.EcCtznSttemntMapper">
<!-- *************************************************************************************************************
* tb_crdn_cvlcpt : 시민신고 마스터
************************************************************************************************************** -->
<sql id="sqlEcCtznStmt">
SELECT tcc.cvlcpt_link_id
, tc.sgg_cd
, tc.sys_se_cd
, tcc.cvlcpt_aply_se_cd
, tcc.cvlcpt_aply_no
, tcc.cvlcpt_rcpt_no
, tcc.cvlcpt_aplcnt_nm
, '' AS cvlcpt_aplcnt_zip
, '' AS cvlcpt_aplcnt_adres
, '' AS cvlcpt_aplcnt_eml_adrs
, '' AS cvlcpt_aplcnt_moblphon_no
, '' AS cvlcpt_aplcnt_tlphon_no
, tcc.cvlcpt_aply_ttl_nm
, tcc.cvlcpt_aply_cn
, tcc.cvlcpt_aply_dt
, tcc.cvlcpt_rcpt_ymd
, tcc.cvlcpt_prcs_prnmnt_dt
, SUBSTR(tcc.cvlcpt_prcs_prnmnt_dt,1,8) AS cvlcpt_prcs_prnmnt_ymd
, '' AS cvlcpt_regist_dt
, tcc.rgtr
, tcc.mdfcn_dt
, tcc.mdfr
FROM tb_crdn_cvlcpt tcc
INNER JOIN tb_crdn tc on tcc.CVLCPT_LINK_ID=tc.LINK_ID
</sql>
<select id="selectEcCtznSttemnts" resultType="cokr.xit.fims.biz.ec.CtznStmtDTO$Mst">
/* ec-ctzn-sttemnt-mysql-mapper|selectEcCtznSttemnts-민원연계(국민신문고) 목록 조회|julim */
<include refid="sqlEcCtznStmt"/>
</select>
<select id="selectEcCtznSttemnt" resultType="cokr.xit.fims.biz.ec.CtznStmtDTO$Mst">
/* ec-ctzn-sttemnt-mysql-mapper|selectEcCtznSttemnt-민원연계(국민신문고) 조회|julim */
<include refid="sqlEcCtznStmt"/>
WHERE cvlcpt_link_id = #{cvlcptLinkId}
</select>
<insert id="insertEcCtznSttemnt">
/* ec-ctzn-sttemnt-mysql-mapper|insertEcCtznSttemnt-시민신고 마스터 등록|julim */
INSERT
INTO tb_crdn_cvlcpt (
cvlcpt_link_id
, cvlcpt_aply_se_cd
, cvlcpt_aply_no
, cvlcpt_rcpt_no
, cvlcpt_aplcnt_nm
, cvlcpt_aply_ttl_nm
, cvlcpt_aply_cn
, cvlcpt_aply_dt
, cvlcpt_rcpt_ymd
, cvlcpt_prcs_prnmnt_dt
, reg_dt
, rgtr
) VALUES (
#{cvlcptLinkId}
, #{cvlcptAplySeCd}
, #{cvlcptAplyNo}
, #{cvlcptRcptNo}
, #{cvlcptAplcntNm}
, #{cvlcptAplyTtlNm}
, #{cvlcptAplyCn}
, #{cvlcptAplyDt}
, #{cvlcptRcptYmd}
, #{cvlcptPrcsPrnmntDt}
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
)
</insert>
<!-- *************************************************************************************************************
* tb_crdn_cvlcpt : 시민신고 상세
************************************************************************************************************** -->
<sql id="sqlEcCtznStmtDtl">
SELECT tcc.cvlcpt_link_id
, tc.vhrno
, tc.crdn_id
, tc.sgg_cd
, tc.sys_se_cd
, (tc.crdn_ymd || tc.CRDN_TM) AS crdn_ymd_time
, tc.crdn_plc
, '' AS vltn_cn
, tc.gps_x
, tc.gps_y
, tcc.reg_dt
, tcc.rgtr
, tcc.mdfcn_dt
, tcc.mdfr
FROM tb_crdn_cvlcpt tcc
JOIN tb_crdn tc ON tcc.cvlcpt_link_id=tc.LINK_ID
</sql>
<select id="selectEcCtznSttemntDetails" resultType="cokr.xit.fims.biz.ec.CtznStmtDTO$Dtl">
/* ec-ctzn-sttemnt-mysql-mapper|selectEcCtznSttemntDetails-민원연계(국민신문고) 상세(목록) 조회|julim */
<include refid="sqlEcCtznStmtDtl"/>
<where>
<if test='interfaceSeqN != null and interfaceSeqN != ""'>
AND tcc.cvlcpt_link_id = #{cvlcptLinkId}
</if>
<if test='crdnId != null and crdnId != ""'>
AND tc.crdn_id = #{crdnId}
</if>
</where>
</select>
<select id="selectEcCtznSttemntDetail" resultType="cokr.xit.fims.biz.ec.CtznStmtDTO$Dtl">
/* ec-ctzn-sttemnt-mysql-mapper|selectEcCtznSttemntDetail-민원연계(국민신문고) 상세 조회|julim */
<include refid="sqlEcCtznStmtDtl"/>
WHERE tc.link_id = #{interfaceSeqN}
AND tc.crdn_id = #{crdnId}
</select>
<delete id="deleteEcCtznSttemnt">
/* ec-ctzn-sttemnt-mysql-mapper|deleteEcCtznSttemnt-시민신고 상세 삭제|julim */
DELETE
FROM tb_crdn_cvlcpt
WHERE cvlcpt_link_id = #{cvlcptLinkId}
</delete>
<insert id="insertRtRegltFromCtznStmt">
/* ec-ctzn-sttemnt-mysql-mapper|insertRtRegltFromCtznStmt-시민신고 단속 생성|julim */
<selectKey keyColumn="crdnId" keyProperty="crdnId" resultType="string" order="BEFORE">
SELECT LPAD(IFNULL(MAX(CAST(crdn_id AS UNSIGNED))+1, 1), 20, '0') AS crdnId from tb_crdn
</selectKey>
INSERT INTO tb_crdn (
crdn_id
, sgg_cd
, sys_se_cd
, crdn_se_cd
, crdn_inpt_se_cd
, crdn_ymd
, crdn_bgng_tm
, crdn_end_hr
, crdn_plc
, vltn_nmtm
, crdn_stdg_nm
, crdn_sparea_cd
, gps_x
, gps_y
, towng_yn
, atch_file_cnt
, vhrno
, crdn_stts_cd
, crdn_reg_se_cd
, reg_dt
, rgtr
) VALUES (
#{crdnId}
, #{sggCd}
, #{sysSeCd}
, #{crdnSeCd}
, #{crdnInptSeCd} -- 입력 구분 코드
, SUBSTR(#{crdnYmdTime}, 1, 8)
, SUBSTR(#{crdnYmdTime}, 9) -- 단속 시작 시간
, SUBSTR(#{crdnYmdTime}, 9) -- 단속 종료 시간
, #{crdnYmdTime}
, '1' -- 위반 횟수
, (SELECT tgt.EMD_NM
FROM tb_stdg_info tgt
WHERE tgt.EMD_NM = null
limit 1
)
, '' -- 특변단속구역 코드
, #{gpsX}
, #{gpsY}
, 'N' -- 견인 여부 코드
, (SELECT COUNT(tcfd.file_id) - 1
FROM tb_cmm_file_mastr tcfm
JOIN tb_cmm_file_detail tcfd
ON tcfm.inf_type = #{infType}
AND tcfm.inf_key = #{interfaceSeqN}
AND tcfm.file_mastr_id = tcfd.file_mastr_id) -- 이미지 매수
, #{vhrno}
, #{crdnSttsCd} -- 단속:10, 서손:11
, #{crdnRegSeCd}
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
)
</insert>
<insert id="insertRtErppFromCtznStmt">
/* ec-ctzn-sttemnt-mysql-mapper|insertRtErppFromCtznStmt-시민신고 서손 생성|julim */
<selectKey resultType="string" keyProperty="levyExclId" order="BEFORE">
SELECT LPAD(IFNULL(MAX(CAST(levy_excl_id AS UNSIGNED))+1, 1), 20, '0') AS levyExclId
FROM tb_levy_excl
</selectKey>
INSERT INTO tb_levy_excl (
levy_excl_id
, crdn_id
, levy_excl_ymd -- 서손 처리 일자
, levy_excl_rsn_cd -- 서손 구분 코드
, etc_cn -- 서손 사유 상세
, reg_dt
, rgtr
) SELECT #{levyExclId}
, #{crdnId}
, DATE_FORMAT(NOW(), '%Y%m%d')
, ''
, ''
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
FROM tb_crdn_cvlcpt ecs
INNER JOIN tb_crdn tc
WHERE ecs.cvlcpt_link_id = #{cvlcptLinkId}
</insert>
<select id="selectCreateEcCtznSttemntAnswer" resultType="cokr.xit.fims.biz.ec.CtznStmtDTO$Ans">
/* ec-ctzn-sttemnt-mysql-mapper|selectCreateEcCtznSttemntAnswer-시민신고답변 생성 데이타 조회|cjm */
SELECT tei.interface_seq_n
, tei.sys_gubun_c -- sysSeCd
, tei.anc_code_v -- sggCd
, tei.peti_gubun_c AS cvlcptAplySeCd -- 민원구분
, tei.peti_no_c AS cvlcptAplyNo -- 민원신청번호
, tei.civil_no_c AS cvlcptRcptNo -- 민원접수번호
-- , tei.civil_gist_v AS cvlcptGist -- 민원요지
, tei.civil_gist_v AS cvlcptGist -- 민원요지
-- , tei.civil_abstract_l AS cvlcptPrcsSumry -- 민원처리요약
, tei.civil_abstract_l AS cvlcptPrcsSumry -- 민원처리요약
, tei.pcd_dept_v AS prcsDeptCode -- 처리부서코드
, tei.pcd_dept_nm_v AS cvlcptPrcsDeptnm -- 민원처리부서명
, tei.duty_id_v AS chargerNm -- 담당자명
, tei.pcd_email_v AS chargerEmail -- 담당자이메일
, tei.pcd_tel_v AS chargerTlphonNo -- 담당자전화번호
-- , tei.pcd_rst_cont_l AS cvlcptPrcsRsltCn -- 민원처리결과
, '1. 교통질서 확립에 힘써주신 점에 대해 감사드립니다.
2. 귀하께서 안전신문고를 통해 신청하신 민원에 대한 검토 결과를 다음과 같이 알려드립니다.
3. 귀하의 민원내용은 불법 주정차 신고에 관한 것으로 판단됩니다.
4. 귀하의 신고에 대해 검토한 결과는 다음과 같습니다.
가. 해당 차량은 도로교통법 제32조, 제33조, 제34조, 제35조에 의거한 불법 주정차 차량으로 판단됩니다.
나. 따라서, 위반 차량에 대해 주정차 위반 과태료 부과 처분이 이루어졌음을 알려드립니다.
5. 안전을 위한 시민 정신에 감사드리며, 답변 내용에 대한 추가 설명이 필요한 경우 군포시청 차량관리과 주차단속팀 박효주 주무관(☏031-390-0291)에게 연락 주시면 친절히 안내해 드리도록 하겠습니다. 감사합니다.' AS cvlcptPrcsRsltCn -- 민원처리결과
FROM tb_esb_interface tei
WHERE tei.interface_seq_n = #{interfaceSeqN}
</select>
<select id="selectEcCtznSttemntAnswer" resultType="cokr.xit.fims.biz.ec.CtznStmtDTO$Ans">
/* ec-ctzn-sttemnt-mysql-mapper|selectEcCtznSttemntAnswer-시민신고답변 데이타 조회|cjm */
SELECT tcc.CVLCPT_LINK_ID
, tc.sys_se_cd -- sysGubunC
, tc.sgg_cd -- ancCodeV
, tcc.cvlcpt_aply_se_cd -- 민원구분
, tcc.cvlcpt_aply_no -- 민원신청번호
, tcc.cvlcpt_rcpt_no -- 민원접수번호
, tcc.cvlcpt_gist -- 민원요지
, tcc.cvlcpt_prcs_sumry -- 민원처리요약
, '' AS prcs_dept_code -- 처리부서코드
, '' AS cvlcpt_prcs_deptnm -- 민원처리부서명
, '' AS charger_nm -- 담당자명
, '' AS charger_email -- 담당자이메일
, '' AS charger_tlphon_no -- 담당자전화번호
, tcc.cvlcpt_prcs_rslt_cn -- 민원처리결과
, tcc.cvlcpt_prcs_cmptn_dt -- 처리완료일시
FROM tb_crdn_cvlcpt tcc
INNER JOIN tb_crdn tc ON tcc.CVLCPT_LINK_ID = tc.LINK_ID
WHERE tcc.cvlcpt_link_id = #{cvlcptLinkId}
</select>
<insert id="saveEcCtznSttemntAnswer">
/* ec-ctzn-sttemnt-mysql-mapper|saveEcCtznSttemntAnswer-시민신고답변 생성 및 변경|cjm */
INSERT
INTO tb_crdn_cvlcpt (
cvlcpt_link_id
, cvlcpt_aply_se_cd
, cvlcpt_aply_no
, cvlcpt_rcpt_no
, cvlcpt_gist
, cvlcpt_prcs_sumry
, cvlcpt_prcs_rslt_cn
, cvlcpt_prcs_cmptn_dt
, reg_dt
, rgtr
) VALUES (
#{cvlcptLinkId}
, #{cvlcptAplySeCd}
, #{cvlcptAplyNo}
, #{cvlcptRcptNo}
, #{cvlcptGist}
, #{cvlcptPrcsSumry}
, #{cvlcptPrcsRsltCn}
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
)
ON DUPLICATE KEY
UPDATE cvlcpt_gist = #{cvlcptGist}
, cvlcpt_prcs_sumry = #{cvlcptPrcsSumry}
, cvlcpt_prcs_rslt_cn = #{cvlcptPrcsRsltCn}
-- , cvlcpt_prcs_cmptn_dt = DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
</insert>
<update id="updatecvlcptPrcsRsltCnOfEcCtznSttemntAnswer">
/* ec-ctzn-sttemnt-mysql-mapper|updatecvlcptPrcsRsltCnOfEcCtznSttemntAnswer-시민신고 답변내용 변경|cjm */
UPDATE tb_crdn_cvlcpt
SET cvlcpt_prcs_rslt_cn = #{cvlcptPrcsRsltCn}
WHERE cvlcpt_link_id = #{cvlcptLinkId}
</update>
<select id="dragAndDropIsExists" resultType="cokr.xit.fims.framework.biz.cmm.CmmFileDTO$FileDtl">
/* ec-ctzn-sttemnt-mysql-mapper|isExists-드래그앤 드롭 사진저장 조회|cjm */
select * from tb_cmm_file_detail
where file_mastr_id = #{fileMastrId}
and file_id = #{fileId}
</select>
<insert id="dragAndDropSaveImg">
insert into tb_cmm_file_detail (
select #{fileMastrId},
file_id,
orginl_file_nm,
mime_type,
file_extsn,
file_size,
file_path,
reg_dt,
rgtr
from tb_cmm_file_detail
where file_id = #{fileId}
)
</insert>
<delete id="dragAndDropDeleteImg">
delete from tb_cmm_file_detail
where file_mastr_id != #{fileMastrId}
and file_id = #{fileId}
</delete>
<resultMap id="resultMapCtznStmt" type="cokr.xit.fims.biz.ec.CtznStmtDTO$Mst">
<result column="cvlcpt_link_id" property="cvlcptLinkId"/>
<result column="sgg_cd" property="sggCd"/>
<result column="sys_se_cd" property="sysSeCd"/>
<result column="cvlcpt_aply_se_cd" property="cvlcptAplySeCd"/>
<result column="cvlcpt_aply_no" property="cvlcptAplyNo"/>
<result column="cvlcpt_rcpt_no" property="cvlcptRcptNo"/>
<result column="cvlcpt_aplcnt_nm" property="cvlcptAplcntNm"/>
<result column="cvlcpt_aplcnt_zip" property="cvlcptAplcntZip"/>
<result column="cvlcpt_aplcnt_adres" property="cvlcptAplcntAdres"/>
<result column="cvlcpt_aplcnt_moblphon_no" property="cvlcptAplcntMoblphonNo"/>
<result column="cvlcpt_aplcnt_eml_adrs" property="cvlcptAplcntEmlAdrs"/>
<result column="cvlcpt_aplcnt_tlphon_no" property="cvlcptAplcntTlphonNo"/>
<result column="cvlcpt_aply_ttl_nm" property="cvlcptAplyTtlNm"/>
<result column="cvlcpt_aply_cn" property="cvlcptAplyCn"/>
<result column="cvlcpt_aply_dt" property="cvlcptAplyDt"/>
<result column="cvlcpt_rcpt_ymd" property="cvlcptRcptYmd"/>
<result column="cvlcpt_prcs_prnmnt_dt" property="cvlcptPrcsPrnmntDt"/>
<result column="cvlcpt_prcs_prnmnt_ymd" property="cvlcptPrcsPrnmntYmd"/>
<result column="cvlcpt_regist_dt" property="cvlcptRegistDt"/>
<result column="rgtr" property="rgtr"/>
<result column="mdfcn_dt" property="mdfcnDt"/>
<result column="mdfr" property="mdfr"/>
</resultMap>
<select id="selectCtznSttemnts" resultMap="resultMapCtznStmt">
/* ec-ctzn-sttemnt-mysql-mapper|selectCtznSttemnts-민원연계(국민신문고) 목록 조회|julim */
<include refid="sqlEcCtznStmt"/>
</select>
</mapper>

@ -1,210 +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.biz.ec.dao.EcNatlNewspaperMapper">
<!-- *************************************************************************************************************
* tb_esb_interface : 민원연계(국민신문고) 인터페이스
************************************************************************************************************** -->
<sql id="sqlEsbInterface">
SELECT tei.interface_seq_n
, tei.sys_gubun_c
, tei.anc_code_v
, tei.peti_gubun_c
, tei.peti_anc_code_v
, tei.peti_no_c
, tei.civil_no_c
, tei.peter_name_v
, tei.zip_code_c
, tei.address_v
, tei.email_v
, tei.cel_no_v
, tei.tel_no_v
, tei.peti_title_v
, tei.peti_reason_l
, tei.open_yn_c
, tei.peti_reg_d
, tei.peti_reason_attach_yn_c
, tei.civil_gist_v
, tei.civil_abstract_l
, tei.pcd_dept_v
, tei.pcd_dept_nm_v
, tei.duty_id_v
, tei.pcd_email_v
, tei.pcd_tel_v
, tei.pcd_rst_cont_l
, tei.do_reg_d
, tei.pcd_rst_cont_attach_yn_c
, tei.pcd_anc_code_v
, tei.peti_proc_dur_n
, tei.peti_end_d
, tei.anc_reg_d
, tei.more_again_v
, tei.satisfy_c
, tei.satisfy2_c
, tei.satisfy3_c
, tei.satisfy_reg_d
, tei.reg_d
, tei.send_yn_c
, tei.send_d
, tei.apply_d
, tei.apply_gubun_c
, tei.pcd_gubun_v
, tei.pcd_gubun2_v
, tei.pcd_gubun3_v
, tei.peti_path_gubun_c
, tei.reg_dt
, tei.rgtr
, teif.peti_file_size_n
, teif.peti_file_path1_v
, teif.peti_file_path2_v
, teif.peti_file_path3_v
, teif.peti_file_path4_v
, teif.peti_file_path5_v
, teif.pcd_file_size_n
, teif.pcd_file_path1_v
, teif.pcd_file_path2_v
, teif.pcd_file_path3_v
, teif.pcd_file_path4_v
, teif.pcd_file_path5_v
FROM tb_esb_interface tei
INNER JOIN tb_esb_interface_file teif
ON tei.interface_seq_n = teif.interface_seq_n
</sql>
<select id="selectEsbInterfaces" resultType="cokr.xit.fims.biz.ec.NatlNewspaperRcvDTO">
/* ec-esb-interface-mysql-mapper|selectEsbInterfaces-민원연계(국민신문고) 목록 조회|julim */
<include refid="sqlEsbInterface"/>
ORDER BY tei.interface_seq_n
</select>
<select id="selectEsbInterface" resultType="cokr.xit.fims.biz.ec.NatlNewspaperRcvDTO">
/* ec-esb-interface-mysql-mapper|selectEsbInterface-민원연계(국민신문고) 정보 조회|julim */
<include refid="sqlEsbInterface"/>
WHERE tei.interface_seq_n = #{interfaceSeqN}
</select>
<insert id="insertEsbInterface">
/* ec-esb-interface-mysql-mapper|insertEsbInterface-민원연계(국민신문고) 등록|julim */
INSERT
INTO tb_esb_interface (
interface_seq_n
, sys_gubun_c
, anc_code_v
, peti_gubun_c
, peti_anc_code_v
, peti_no_c
, civil_no_c
, peter_name_v
, zip_code_c
, address_v
, email_v
, cel_no_v
, tel_no_v
, peti_title_v
, peti_reason_l
, open_yn_c
, peti_reg_d
, peti_reason_attach_yn_c
, civil_gist_v
, civil_abstract_l
, pcd_dept_v
, pcd_dept_nm_v
, duty_id_v
, pcd_email_v
, pcd_tel_v
, pcd_rst_cont_l
, do_reg_d
, peti_proc_dur_n
, peti_end_d
, anc_reg_d
, more_again_v
, satisfy_c
, satisfy2_c
, satisfy3_c
, satisfy_reg_d
, reg_d
, send_yn_c
, send_d
, apply_d
, apply_gubun_c
, pcd_gubun_v
, pcd_gubun2_v
, pcd_gubun3_v
, peti_path_gubun_c
, reg_dt
, rgtr
) VALUES (
#{interfaceSeqN}
, #{sysGubunC}
, #{ancCodeV}
, #{petiGubunC}
, #{petiAncCodeV}
, #{petiNoC}
, #{civilNoC}
, #{peterNameV}
, #{zipCodeC}
, #{addressV}
, #{emailV}
, #{celNoV}
, #{telNoV}
, #{petiTitleV}
, #{petiReasonL}
, #{openYnC}
, #{petiRegD}
, #{petiReasonAttachYnC}
, #{civilGistV}
, #{civilAbstractL}
, #{pcdDeptV}
, #{pcdDeptNmV}
, #{dutyIdV}
, #{pcdEmailV}
, #{pcdTelV}
, #{pcdRstContL}
, #{doRegD}
, #{petiProcDurN}
, #{petiEndD}
, #{ancRegD}
, #{moreAgainV}
, #{satisfyC}
, #{satisfy2C}
, #{satisfy3C}
, #{satisfyRegD}
, #{regD}
, #{sendYnC}
, #{sendD}
, #{applyD}
, #{applyGubunC}
, #{pcdGubunV}
, #{pcdGubun2V}
, #{pcdGubun3V}
, #{petiPathGubunC}
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
)
</insert>
<insert id="insertEsbInterfaceFile">
/* ec-esb-interface-mysql-mapper|insertEsbInterface-민원연계(국민신문고) 등록|julim */
INSERT
INTO tb_esb_interface_file (
interface_seq_n
, peti_file_size_n
, peti_file_path1_v
, peti_file_path2_v
, peti_file_path3_v
, peti_file_path4_v
, peti_file_path5_v
)
VALUES (
#{interfaceSeqN}
, #{petiFileSizeN}
, #{petiFilePath1V}
, #{petiFilePath2V}
, #{petiFilePath3V}
, #{petiFilePath4V}
, #{petiFilePath5V}
)
</insert>
</mapper>

@ -1,215 +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.biz.ec.dao.EcCctvCrackdownMapper">
<!-- *************************************************************************************************************
* tb_crdn_file_link : 외부단속연계
************************************************************************************************************** -->
<sql id="sqlEcExtrlRegltCntc">
SELECT file_link_id
, sgg_cd
, sys_se_cd
, crdn_se_cd
, inpt_se_cd
, vhrno
, crdn_ymd
, crdn_bgng_tm
, crdn_end_tm
, crdn_stdg_nm
, crdn_plc
, crdn_sparea_nm
, crdn_bzenty_cd
, crdn_eqpmnt_no
, vltn_cn
, gps_x
, gps_y
, trsm_cd
, crdn_file_nm
, photo_file_nm_1
, photo_file_nm_2
, photo_file_nm_3
, photo_file_nm_4
, reg_dt
, rgtr
, mdfcn_dt
, mdfr
FROM tb_crdn_file_link
</sql>
<select id="selectEcExtrlRegltCntcs" resultType="cokr.xit.fims.biz.ec.CctvCrackdownDTO$ExtrlRegltCntc">
/* ec-extrl-reglt-cntc-mysql-mapper|selectEcExtrlRegltCntcs-외부연계 목록 조회|julim */
<include refid="sqlEcExtrlRegltCntc"/>
<where>
<if test='sysSeCd != null and sysSeCd != ""'>
AND sys_se_cd = #{sysSeCd}
</if>
<if test='crdnSeCd != null and crdnSeCd != ""'>
AND crdn_se_cd = #{crdnSeCd}
</if>
</where>
ORDER BY sys_se_cd, crdn_se_cd, crdn_ymd desc
</select>
<select id="selectEcExtrlRegltCntc" resultType="cokr.xit.fims.biz.ec.CctvCrackdownDTO$ExtrlRegltCntc">
/* ec-extrl-reglt-cntc-mysql-mapper|selectEcExtrlRegltCntc-외부연계 정보 조회|julim */
<include refid="sqlEcExtrlRegltCntc"/>
WHERE file_link_id = #{fileLinkId}
</select>
<insert id="insertEcExtrlRegltCntc">
/* ec-extrl-reglt-cntc-mysql-mapper|insertEcExtrlRegltCntc-외부연계 정보 등록|julim */
<selectKey keyColumn="fileLinkId" keyProperty="fileLinkId" resultType="cokr.xit.fims.biz.ec.CctvCrackdownDTO$ExtrlRegltCntc" order="BEFORE">
SELECT LPAD(IFNULL(MAX(CAST(file_link_id AS UNSIGNED))+1, 1), 30, '0') AS fileLinkId
FROM tb_crdn_file_link
</selectKey>
INSERT
INTO tb_crdn_file_link (
file_link_id
, sgg_cd
, sgg_nm
, inst_cd
, sys_se_cd
, crdn_se_cd
, inpt_se_cd
, vhrno
, crdn_ymd
, crdn_bgng_tm
, crdn_end_tm
, crdn_stdg_nm
, crdn_plc
, crdn_sparea_nm
, crdn_bzenty_cd
, crdn_eqpmnt_no
, vltn_cn
, gps_x
, gps_y
, trsm_cd
, reg_dt
, rgtr
) VALUES (
#{fileLinkId}
, #{sggCd}
, #{sggNm}
, #{instCd}
, #{sysSeCd}
, #{crdnSeCd}
, #{inptSeCd}
, #{vhrno}
, #{crdnYmd}
, #{crdnBgngTm}
, #{crdnEndTm}
, #{crdnStdgNm}
, #{crdnPlc}
, #{crdnSpareaNm}
, #{crdnBzentyCd}
, #{crdnEqpmntNo}
, #{vltnCn}
, #{gpsX}
, #{gpsY}
, #{trsmCd}
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
)
</insert>
<update id="updateEcExtrlRegltCntc">
/* ec-extrl-reglt-cntc-mysql-mapper|updateEcExtrlRegltCntc-외부연계 단속 자료 변경|julim */
UPDATE tb_crdn_file_link
SET vhrno = #{vhrno}
, mdfcn_dt = DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, mdfr = #{mdfr}
WHERE file_link_id = #{fileLinkId}
</update>
<insert id="insertRtRegltFromEcExtrRegltCntc">
/* ec-extrl-reglt-cntc-mysql-mapper|insertRtRegltFromEcExtrRegltCntc-외부연계 단속 자료 생성|julim */
<selectKey keyColumn="crdnId" keyProperty="crdnId" resultType="cokr.xit.fims.biz.ec.CctvCrackdownDTO$Request" order="BEFORE">
SELECT LPAD(IFNULL(MAX(CAST(crdn_id AS UNSIGNED))+1, 1), 20, '0') AS crdnId from tb_crdn
</selectKey>
INSERT INTO tb_crdn (
crdn_id
, link_id
, sgg_cd
, sys_se_cd
, crdn_se_cd
, crdn_inpt_se_cd
, crdn_ymd
, crdn_bgng_tm
, crdn_end_hr
, crdn_plc
, vltn_nmtm
, crdn_stdg_nm
, crdn_sparea_cd
, gps_x
, gps_y
, towng_yn
, atch_file_cnt
, vhrno
, crdn_stts_cd
, crdn_reg_se_cd
, del_yn
, reg_dt
, rgtr
, mdfcn_dt
, mdfr
) SELECT #{crdnId}
, file_link_id
, sgg_cd
, sys_se_cd
, crdn_se_cd
, inpt_se_cd -- 입력 구분 코드
, crdn_ymd
, crdn_bgng_tm -- 단속 시작 시간
, crdn_end_tm -- 단속 종료 시간
, crdn_plc -- crdn_plc
, '1' -- 위반 횟수
, crdn_stdg_nm -- 위반 법정동 명
, #{crdnSpareaCd} -- 특변단속구역 코드
, gps_x
, gps_y
, 'N' -- 견인 여부 코드
, #{atchFileCnt}
, vhrno
, #{crdnSttsCd} -- 단속:10, 서손:11
, #{crdnRegSeCd}
, 'N'
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
FROM tb_crdn_file_link
WHERE file_link_id = #{fileLinkId}
</insert>
<insert id="insertRtErppFromEcExtrRegltCntc">
/* ec-extrl-reglt-cntc-mysql-mapper|insertRtErppFromEcExtrRegltCntc-외부연계 서손 자료 생성|julim */
INSERT INTO tb_levy_excl (
levy_excl_id
, crdn_id
, levy_excl_ymd -- 서손 처리 일자
, levy_excl_rsn_cd -- 서손 구분 코드
, etc_cn -- 서손 사유 상세
, reg_dt
, rgtr
) SELECT #{levyExclId}
, #{crdnId}
, DATE_FORMAT(NOW(), '%Y%m%d')
, ''
, ''
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
FROM tb_crdn_file_link
WHERE file_link_id = #{fileLinkId}
</insert>
<update id="updateStatusAndCrdnIdOfEcExtrRegltCntc">
/* ec-extrl-reglt-cntc-mysql-mapper|EcExtrRegltCntc-외부연계 단속ID set|julim */
UPDATE tb_crdn_file_link
SET trsm_cd = #{trsmCd}
, mdfcn_dt = DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, mdfr = #{mdfr}
WHERE file_link_id = #{fileLinkId}
</update>
</mapper>

@ -1,485 +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.biz.rt.dao.RtCrackdownMgtMapper">
<!-- *************************************************************************************************************
* tb_crdn : 단속
************************************************************************************************************** -->
<sql id="sqlRtReglt">
SELECT tc.crdn_id
, tc.rtpyr_id -- 납부자ID
, tc.sgg_cd -- 기관코드
, tc.sys_se_cd -- 시스템코드
, tc.crdn_se_cd -- 단속구분코드
, tc.crdn_inpt_se_cd -- 입력구분코드
, tc.crdn_ymd
, tc.crdn_bgng_tm -- 단속시작시간
, tc.crdn_end_hr -- 단속종료시간
, '' AS violt_lrg_code -- 위반 법규 코드
, '' AS violt_dtls_code -- 위반내역코드
, '' AS violt_dtls_etc_cn -- 위반내역 기타 내용
, tc.crdn_plc -- 위반장소
, tc.vltn_nmtm -- 위반횟수
, tc.crdn_stdg_nm -- 위반법정코드
, tc.gps_x
, tc.gps_y
, tc.towng_yn -- 견인여부 코드
, tc.crdn_sn -- 스티커 번호
, tc.atch_file_cnt -- 이미지매수
, tc.minus_amt -- 감경금액
, 0 AS redution_aft_amount -- 감경후 금액
, tc.rcvmt_amt -- 수납금액
, 0 AS rdcamt -- 감액
, tc.adtn_amt -- 가산금
, tc.vhrno -- 차량번호
, tc.vhcl_nm -- 차량명
, tc.carmdl_clsf_nm -- 차종분류명
, tc.carmdl_asort_nm -- 차종종별명
, tc.ffnlg_carmdl_cd -- 과태료차종코드
, tc.vin -- 차대번호
, tc.etc_cn -- 특기사항
, tc.crdn_sparea_cd -- 단속특별구역코드
, tc.crdn_stts_cd
, tc.crdn_reg_se_cd
, CONCAT(tc.crdn_ymd, tc.crdn_bgng_tm) AS crdnYmdTime
, tc.reg_dt
, tc.rgtr
, tc.mdfcn_dt
, tc.mdfr
FROM tb_crdn tc
</sql>
<!--
/* TODO : 차적조회를 안하고 바로 자료 전송 하여 rtpyr를 알수 없음
JOIN tb_payer trp
ON tc.rtpyr_id = trp.rtpyr_id
*/
-->
<select id="selectRtReglts" resultType="cokr.xit.fims.biz.rt.RtDTO$Reglt">
/* rt-reglt-and-erpp-mysql-mapper|selectRtReglts-단속 목록 조회|julim */
<include refid="sqlRtReglt"/>
<where>
<if test='schDateOpt eq "crdnYmd"'>
AND tc.crdn_ymd BETWEEN REPLACE(#{schDateFrom},'-','') AND REPLACE(#{schDateTo},'-','')
</if>
<if test='schDateOpt eq "regDt"'>
AND SUBSTR(tc.reg_dt,1,8) BETWEEN REPLACE(#{schDateFrom},'-','') AND REPLACE(#{schDateTo},'-','')
</if>
<if test='vhrno != null and vhrno != ""'>
AND INSTR(tc.vhrno, #{vhrno}) > 0
</if>
<if test='sysSeCd != null and sysSeCd != ""'>
AND tc.sys_se_cd = #{sysSeCd}
</if>
<if test='crdnSeCd != null and crdnSeCd != ""'>
AND tc.crdn_se_cd = #{crdnSeCd}
</if>
<if test='crdnRegSeCd != null and crdnRegSeCd != ""'>
AND tc.crdn_reg_se_cd = #{crdnRegSeCd}
</if>
<if test='cnfmYn != null and cnfmYn != ""'>
<if test='cnfmYn eq "Y"'>
AND LENGTH(IFNULL(tc.ffnlg_carmdl_cd, '')) > 0
</if>
<if test='cnfmYn eq "N"'>
AND LENGTH(IFNULL(tc.ffnlg_carmdl_cd, '')) = 0
</if>
</if>
</where>
ORDER BY tc.sys_se_cd, tc.crdn_se_cd, tc.crdn_ymd, tc.vhrno, tc.crdn_bgng_tm
</select>
<select id="selectRtReglt" resultType="cokr.xit.fims.biz.rt.RtDTO$Reglt">
/* rt-reglt-and-erpp-mysql-mapper|selectRtReglt-단속 정보 조회|julim */
<include refid="sqlRtReglt"/>
WHERE tc.crdn_id = #{crdnId}
</select>
<select id="selectRtRegltByVhrno" resultType="cokr.xit.fims.biz.rt.RtDTO$Reglt">
/* rt-reglt-and-erpp-mysql-mapper|selectRtRegltByVhrno-차량 단속 정보 목록 조회|julim */
<include refid="sqlRtReglt"/>
WHERE tc.vhrno = #{vhrno}
ORDER BY tc.crdn_ymd DESC, tc.crdn_bgng_tm DESC
</select>
<insert id="insertRtReglt">
/* rt-reglt-and-erpp-mysql-mapper|insertRtReglt-단속 정보 등록|julim */
<selectKey keyColumn="crdnId" keyProperty="crdnId" resultType="cokr.xit.fims.biz.rt.RtDTO$Reglt" order="BEFORE">
SELECT LPAD(IFNULL(MAX(CAST(crdn_id AS UNSIGNED))+1, 1), 20, '0') AS crdnId from tb_crdn
</selectKey>
insert into tb_crdn(
crdn_id
, sgg_cd
, sys_se_cd
, crdn_se_cd
, crdn_inpt_se_cd
, crdn_ymd
, crdn_plc
, vltn_nmtm
, minus_amt
, rcvmt_amt
, adtn_amt
, vhrno
, vhcl_nm
, etc_cn
, crdn_stts_cd
, del_yn
, reg_dt
, rgtr
, mdfcn_dt
, mdfr
) VALUES (
#{crdnId}
, #{sggCd}
, #{sysSeCd}
, #{crdnSeCd}
, #{crdnInptSeCd}
, REPLACE(#{crdnYmd},'-','')
, #{crdnPlc}
, #{vltnNmtm}
, #{minusAmt}
, #{rcvmtAmt}
, #{adtnAmt}
, #{vhrno}
, #{vhclNm}
, #{etcCn}
, #{crdnSttsCd}
, 'N'
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
)
</insert>
<update id="updateRtReglt">
/* rt-reglt-and-erpp-mysql-mapper|updateRtReglt-단속 정보 변경|julim */
UPDATE tb_crdn
SET crdn_se_cd = IF(crdn_se_cd = #{crdnSeCd}, crdn_se_cd, #{crdnSeCd})
, crdn_inpt_se_cd = IF(crdn_inpt_se_cd = #{crdnInptSeCd}, crdn_inpt_se_cd, #{crdnInptSeCd})
, crdn_plc = IF(crdn_plc = #{crdnPlc}, crdn_plc, #{crdnPlc})
, vltn_nmtm = IF(vltn_nmtm = #{vltnNmtm}, vltn_nmtm, #{vltnNmtm})
, minus_amt = IF(minus_amt = #{minusAmt}, minus_amt, #{minusAmt})
, rcvmt_amt = IF(rcvmt_amt = #{rcvmtAmt}, rcvmt_amt, #{rcvmtAmt})
, adtn_amt = IF(adtn_amt = #{adtnAmt}, adtn_amt, #{adtnAmt})
, vhrno = IF(vhrno = #{vhrno}, vhrno, #{vhrno})
, vhcl_nm = IF(vhcl_nm = #{vhclNm}, vhcl_nm, #{vhclNm})
, etc_cn = IF(etc_cn = #{etcCn}, etc_cn, #{etcCn})
, mdfcn_dt = DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, mdfr = #{mdfr}
WHERE crdn_id = #{crdnId}
</update>
<delete id="deleteRtReglt">
/* rt-reglt-and-erpp-mysql-mapper|deleteRtReglt-단속 정보 삭제|julim */
DELETE
FROM tb_crdn
WHERE crdn_id = #{crdnId}
</delete>
<!-- *************************************************************************************************************
* tb_levy_excl : 서손
************************************************************************************************************** -->
<insert id="insertRtErpp">
/* rt-reglt-and-erpp-mysql-mapper|insertRtErpp-서손 데이타 등록|julim */
<selectKey resultType="string" keyProperty="levyExclId" order="BEFORE">
SELECT LPAD(IFNULL(MAX(CAST(levy_excl_id AS UNSIGNED))+1, 1), 20, '0') AS levyExclId
FROM tb_levy_excl
</selectKey>
INSERT
INTO tb_levy_excl (
levy_excl_id
, crdn_id
, levy_excl_ymd
, levy_excl_rsn_cd
, etc_cn
, reg_dt
, rgtr
) VALUES (
#{levyExclId}
, #{crdnId}
, #{levyExclYmd}
, #{levyExclRsnCd}
, #{etcCn}
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
)
</insert>
<!-- *************************************************************************************************************
* tb_payer : 납부자
************************************************************************************************************** -->
<select id="selectRtRtpyr" resultType="cokr.xit.fims.biz.rt.RtDTO$Rtpyr">
/* rt-reglt-and-erpp-mysql-mapper|selectRtRtpyr-납부자 정보 조회|julim */
SELECT rtpyr_id
, sgg_cd
, sys_se_cd
, rtpyr_se_cd
, rtpyr_no
, rtpyr_nm
, rtpyr_cttpc
, rtpyr_cttpc_se_cd
, rtpyr_eml
, rtpyr_stts_cd
, addr_se_cd
, zip
, road_nm_cd
, udgd_se_cd
, bmno
, bsno
, stdg_cd
, dong_cd
, mtn_se_cd
, mno
, sno
, spcl_dong
, spcl_ho
, spcl_addr
, addr
, dtl_addr
, whol_addr
, rtpyr_inpt_se_cd
, reg_dt
, rgtr
, mdfcn_dt
, mdfr
FROM tb_payer
WHERE rtpyr_id = #{rtpyrId}
</select>
<insert id="insertRtRtpyr">
/* rt-reglt-and-erpp-mysql-mapper|insertRtRtpyr-납부자 정보 등록|julim */
<selectKey resultType="string" keyProperty="rtpyrId" order="BEFORE">
SELECT LPAD(IFNULL(MAX(CAST(rtpyr_id AS UNSIGNED))+1, 1), 20, '0') AS rtpyrId
FROM tb_payer
</selectKey>
INSERT
INTO tb_payer (
rtpyr_id
, sgg_cd
, sys_se_cd
, rtpyr_se_cd
, rtpyr_no
, rtpyr_nm
, rtpyr_cttpc
, rtpyr_cttpc_se_cd
, rtpyr_eml
, rtpyr_stts_cd
, addr_se_cd
, zip
, road_nm_cd
, udgd_se_cd
, bmno
, bsno
, stdg_cd
, dong_cd
, mtn_se_cd
, mno
, sno
, spcl_dong
, spcl_ho
, spcl_addr
, addr
, dtl_addr
, whol_addr
, rtpyr_inpt_se_cd
, reg_dt
, rgtr
) VALUES (
#{rtpyrId}
, #{sggCd}
, #{sysSeCd}
, #{rtpyrSeCd}
, #{rtpyrNo}
, #{rtpyrNm}
, #{rtpyrCttpc}
, #{rtpyrCttpcSeCd}
, #{rtpyrEml}
, #{rtpyrSttsCd}
, #{addrSeCd}
, #{zip}
, #{roadNmCd}
, #{udgdSeCd}
, #{bmno}
, #{bsno}
, #{stdgCd}
, #{dongCd}
, #{mtnSeCd}
, #{mno}
, #{sno}
, #{spclDong}
, #{spclHo}
, #{spclAddr}
, #{addr}
, #{dtlAddr}
, #{wholAddr}
, #{rtpyrInptSeCd}
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
)
</insert>
<update id="updateRtRtpyr">
/* rt-reglt-and-erpp-mysql-mapper|updateRtRtpyr-납부자 정보 변경|julim */
UPDATE tb_payer
SET rtpyr_se_cd = IF(rtpyr_se_cd = #{rtpyrSeCd}, rtpyr_se_cd, #{rtpyrSeCd})
, rtpyr_no = IF(rtpyr_no = #{rtpyrNo}, rtpyr_no, #{rtpyrNo})
, rtpyr_nm = IF(rtpyr_nm = #{rtpyrNm}, rtpyr_nm, #{rtpyrNm})
, rtpyr_cttpc = IF(rtpyr_cttpc = #{rtpyrCttpc}, rtpyr_cttpc, #{rtpyrCttpc})
, zip = IF(zip = #{zip}, zip, #{zip})
, addr = IF(addr = #{addr}, addr, #{addr})
, dtl_addr = IF(dtl_addr = #{dtlAddr}, dtl_addr, #{dtlAddr})
, mdfcn_dt = DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, mdfr = #{mdfr}
WHERE rtpyr_id = #{rtpyrId}
</update>
<insert id="saveRtRtpyr">
/* rt-reglt-and-erpp-mysql-mapper|saveRtRtpyr-납부자 정보 등록 / 변경|julim */
<selectKey resultType="string" keyProperty="rtpyrId" order="BEFORE">
SELECT LPAD(IFNULL(MAX(CAST(rtpyr_id AS UNSIGNED))+1, 1), 20, '0') AS rtpyrId
FROM tb_payer
</selectKey>
INSERT
INTO tb_payer (
rtpyr_id
, sgg_cd
, sys_se_cd
, rtpyr_se_cd
, rtpyr_no
, rtpyr_nm
, rtpyr_cttpc
, rtpyr_cttpc_se_cd
, rtpyr_eml
, rtpyr_stts_cd
, addr_se_cd
, zip
, road_nm_cd
, udgd_se_cd
, bmno
, bsno
, stdg_cd
, dong_cd
, mtn_se_cd
, mno
, sno
, spcl_dong
, spcl_ho
, spcl_addr
, addr
, dtl_addr
, whol_addr
, rtpyr_inpt_se_cd
, reg_dt
, rgtr
) VALUES (
#{rtpyrId}
, #{sggCd}
, #{sysSeCd}
, #{rtpyrSeCd}
, #{rtpyrNo}
, #{rtpyrNm}
, #{rtpyrCttpc}
, #{rtpyrCttpcSeCd}
, #{rtpyrEml}
, #{rtpyrSttsCd}
, #{addrSeCd}
, #{zip}
, #{roadNmCd}
, #{udgdSeCd}
, #{bmno}
, #{bsno}
, #{stdgCd}
, #{dongCd}
, #{mtnSeCd}
, #{mno}
, #{sno}
, #{spclDong}
, #{spclHo}
, #{spclAddr}
, #{addr}
, #{dtlAddr}
, #{wholAddr}
, #{rtpyrInptSeCd}
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
)
ON DUPLICATE KEY
UPDATE rtpyr_se_cd = IF(rtpyr_se_cd = #{rtpyrSeCd}, rtpyr_se_cd, #{rtpyrSeCd})
, rtpyr_no = IF(rtpyr_no = #{rtpyrNo}, rtpyr_no, #{rtpyrNo})
, rtpyr_nm = IF(rtpyr_nm = #{rtpyrNm}, rtpyr_nm, #{rtpyrNm})
, rtpyr_cttpc = IF(rtpyr_cttpc = #{rtpyrCttpc}, rtpyr_cttpc, #{rtpyrCttpc})
, zip = IF(zip = #{zip}, zip, #{zip})
, addr = IF(addr = #{addr}, addr, #{addr})
, dtl_addr = IF(dtl_addr = #{dtlAddr}, dtl_addr, #{dtlAddr})
, mdfcn_dt = DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, mdfr = #{mdfr}
</insert>
<!-- *************************************************************************************************************
* tb_crdn_stts_hstry : 처리상태변경이력
************************************************************************************************************** -->
<insert id="insertRtProcessSttsChangeHist">
/* rt-reglt-and-erpp-mysql-mapper|insertRtProcessSttsChangeHist-처리상태변경이력 등록|julim */
INSERT
INTO tb_crdn_stts_hstry (
crdn_id
, stts_hstry_id
, crdn_stts_cd
, etc_cn
, reg_dt
, rgtr
) VALUES (
#{crdnId}
, (SELECT LPAD(IFNULL(MAX(CAST(tgt.stts_hstry_id AS UNSIGNED)) + 1, 1), 2, '0')
FROM tb_crdn_stts_hstry tgt
WHERE tgt.crdn_id = #{crdnId})
, #{crdnSttsCd}
, #{etcCn}
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
)
</insert>
<!-- *************************************************************************************************************
* 단속자료 첨부파일 목록 조회
************************************************************************************************************** -->
<select id="selectRtRegltAttchFiles" resultType="cokr.xit.fims.framework.biz.cmm.CmmFileDTO$FileDtl">
/* rt-reglt-and-erpp-mysql-mapper|selectRtRegltAttchFiles-단속자료 첨부파일 목록 조회|julim */
SELECT tcfd.file_mastr_id
, tcfd.file_id
, tcfd.orginl_file_nm
, tcfd.mime_type
, tcfd.file_extsn
, tcfd.file_size
, tcfd.file_path
, tcfd.reg_dt
, tcfd.rgtr
, tcfm.inf_key
FROM tb_cmm_file_mastr tcfm
JOIN tb_cmm_file_detail tcfd
ON tcfm.file_mastr_id = tcfd.file_mastr_id
WHERE tcfm.inf_type = #{infType}
<if test='infType eq "CFL"'>
-- 외부연계 : CCTV-고정형, CCTV-이동형, CCTV-버스장착형
AND tcfm.inf_key = (SELECT link_id
FROM tb_crdn
WHERE crdn_id = #{crdnId})
</if>
<if test='infType eq "EIF"'>
-- 시민신고(국민신문고) : 초기자료 편집인 경우 시민신고 이미지 전체, 그외는 해당 차량 단속이미지만 선택
AND tcfm.inf_key = (SELECT link_id
FROM tb_crdn
WHERE crdn_id = #{crdnId})
</if>
ORDER BY tcfm.inf_key, tcfd.orginl_file_nm
</select>
</mapper>

@ -1,130 +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.framework.biz.cache.dao.CacheBbsMapper">
<resultMap id="bbsResultMap" type="cokr.xit.fims.framework.biz.mng.bbs.XitBasicBbsMngVO">
<result column="ntt_sj" property="nttSj" />
<result column="ntcr_id" property="ntcrId" />
<result column="ntcr_nm" property="ntcrNm" />
<result column="ntt_no" property="nttNo" />
<result column="ntt_cn" property="nttCn" />
<result column="passwd" property="passwd" />
<result column="rgtr" property="rgtr" />
<result column="frstRgtrNm" property="frstRgtrNm" />
<result column="regDt" property="regDt" />
<result column="ntce_bgn_de" property="ntceBgnde" />
<result column="ntce_end_de" property="ntceEndDe" />
<result column="inqireCo" property="inqireCo" />
<result column="use_yn" property="useYn" />
<result column="atch_file_id" property="atchFileId" />
<result column="bbs_id" property="bbsId" />
<result column="ntt_id" property="nttId" />
<result column="parnts" property="parnts" />
<result column="reply_at" property="replyAt" />
<result column="reply_lc" property="replyLc" />
<result column="srt_ord" property="srtOrd" />
<result column="bbs_ty_code" property="bbsTyCode" />
<result column="bbs_attrb_code" property="bbsAttrbCode" />
<result column="reply_posbl_yn" property="replyPosblYn" />
<result column="file_atch_posbl_yn" property="fileAtchPosblYn" />
<result column="posbl_atch_file_number" property="posblAtchFileNumber" />
<result column="bbs_nm" property="bbsNm" />
<collection column="{bbsId=bbs_id, nttId=ntt_id}" property="_children" select="selectBaseBbsChildList" javaType="List" />
</resultMap>
<select id="selectLatestBbsList" parameterType="map" resultType="caseMap">
/* cacheboard-mysql-mapper|selectLatestBbsList-게시판 최신 게시글 목록 조회|julim */
SELECT bbs_id
, ntt_id
, ntt_no
, ntt_sj
, ntt_cn
, answer_yn
, parnts_sntnc_no
, answer_lc
, srt_ord
, rdcnt
, use_yn
, ntce_begin_de
, ntce_end_de
, ntcr_id
, ntcr_nm
, passwd
, atch_file_id
, reg_dt
, rgtr
, mdfcn_dt
, mdfr
FROM xit_bbs
<where>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(bbsId)">
AND BBS_ID = #{bbsId}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(parntsSntncNo)">
AND PARNTS_SNTNC_NO = #{parntsSntncNo}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(useYn)">
AND USE_YN = #{useYn}
</if>
</where>
ORDER BY reg_dt DESC
</select>
<select id="selectBaseBbsList" parameterType="map" resultMap="bbsResultMap">
/* cacheboard-mysql-mapper|selectBaseBbsList-기본(공용)게시판 목록 조회|julim */
<include refid="sqlBbs"/>
ORDER BY XB.reg_dt DESC
LIMIT #{pageSize}
</select>
<select id="selectBaseBbsChildList" resultMap="bbsResultMap">
/* cacheboard-mysql-mapper|selectBaseBbsChildListt-기본(공용)게시판 자식 목록 조회|julim */
<include refid="sqlBbs"/>
ORDER BY XB.reg_dt ASC
</select>
<sql id="sqlBbs">
SELECT XB.ntt_sj
, XB.ntcr_id
, XB.ntcr_nm
, XB.ntt_no
, XB.ntt_cn
, XB.passwd
, XB.rgtr
, IFNULL(VUM.user_nm, XB.ntcr_nm) AS frstRgtrNm
, DATE_FORMAT(XB.reg_dt, '%Y-%m-%d') AS regDt
, XB.ntce_begin_de
, XB.ntce_end_de
, XB.rdcnt AS inqireCo
, XB.use_yn
, XB.atch_file_id
, XB.bbs_id
, XB.ntt_id
, XB.parnts_sntnc_no AS parnts
, XB.answer_yn
, XB.answer_lc
, XB.srt_ord
, XBM.bbs_ty_code
, XBM.bbs_attrb_code
, XBM.reply_posbl_yn
, XBM.file_atch_posbl_yn
, XBM.atch_posbl_file_number
, XBM.BBS_NM
FROM xit_bbs xb
LEFT OUTER JOIN xit_vw_user_mastr VUM
ON XB.rgtr = VUM.USER_ID
LEFT OUTER JOIN xit_bbs_mastr XBM
ON XB.bbs_id = XBM.bbs_id
WHERE XB.BBS_ID = #{bbsId}
<choose>
<when test='nttId != null and nttId != ""'>
AND XB.parnts_sntnc_no = #{nttId}
AND XB.parnts_sntnc_no != 0
</when>
<otherwise>
AND XB.parnts_sntnc_no = 0
</otherwise>
</choose>
</sql>
</mapper>

@ -1,115 +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.framework.biz.cache.dao.CacheCodeMapper">
<select id="selectCodes" parameterType="string" resultType="caseMap">
/* cachecode-mysql-mapper|selectCodes-공통코드 코드그룹 조회|julim */
SELECT code
, code_val
, dscrp
, etc_1
, etc_2
, etc_3
, srt_ord
FROM tb_cmn_code
WHERE grp_id = #{grpId}
AND use_yn = 'Y'
ORDER BY srt_ord
</select>
<select id="selectComboCodes" parameterType="map" resultType="caseMap">
/* cachecode-mysql-mapper|selectComboCodes-공통[업무] 콤보코드 조회|julim */
<choose>
<when test='type != null and type == "ORGN"'>
/* 조직 코드 */
SELECT org_id AS code
, orgnzt_nm AS code_val
FROM xit_orgnzt_info
</when>
<when test='type != null and type == "AUTHOR"'>
/* 권한 코드 */
SELECT auth_Id AS code
, AUTH_NM AS code_val
FROM TB_AUTHORITY
</when>
<when test='type != null and type == "CMM_CFN"'>
/* 분류코드 */
SELECT ctgr_id AS code
, ctgr_nm AS code_val
FROM tb_code_ctgr
WHERE use_yn = 'Y'
</when>
<when test='type != null and type == "CMM_GRP"'>
/* 공통 코드 그룹 */
SELECT grp_id AS code
, grp_nm AS code_val
FROM tb_code_grp
WHERE ctgr_id = #{grpId}
AND use_yn = 'Y'
</when>
<when test='type != null and type == "CMM_ETC1"'>
/* 공통 코드 etc1 */
SELECT etc_1 AS code
, code_val
FROM tb_cmn_code
WHERE grp_id = #{grpId}
AND use_yn = 'Y'
AND etc_1 = CASE WHEN etc_1 IS NULL THEN 'NONE'
WHEN etc_1 = '' THEN 'NONE'
ELSE etc_1
END
ORDER BY srt_ord
</when>
<when test='type != null and type == "CMM_ETC2"'>
/* 공통 코드 etc2 */
SELECT etc_2 AS code
, code_val
FROM tb_cmn_code
WHERE grp_id = #{grpId}
AND use_yn = 'Y'
AND etc_2 = CASE WHEN etc_2 IS NULL THEN 'NONE'
WHEN etc_2 = '' THEN 'NONE'
ELSE etc_2
END
ORDER BY srt_ord
</when>
<when test='type != null and type == "CMM_ETC3"'>
/* 공통 코드 etc3 */
SELECT etc_3 AS code
, code_val
FROM tb_cmn_code
WHERE grp_id = #{grpId}
AND use_yn = 'Y'
AND etc_3 = CASE WHEN etc_3 IS NULL THEN 'NONE'
WHEN etc_3 = '' THEN 'NONE'
ELSE etc_3
END
ORDER BY srt_ord
</when>
<otherwise>
/* 공통 코드 */
SELECT code
, code_val
FROM tb_cmn_code
WHERE grp_id = #{grpId}
AND use_yn = 'Y'
ORDER BY srt_ord
</otherwise>
</choose>
</select>
</mapper>

@ -1,92 +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.framework.biz.cmm.dao.XitFrameCodeMapper">
<select id="findClCodes" resultType="cokr.xit.fims.framework.core.XitCodeVO">
/** findClCodes */
/** 분류코드 목록 조회 */
SELECT CTGR_ID AS "ctgrId"
,CTGR_NM AS "ctgrNm"
,DSCRP AS "dscrp"
FROM tb_code_ctgr
WHERE USE_YN = 'Y'
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(ctgrId)">
AND CTGR_ID = #{ctgrId}
</if>
</select>
<select id="findCmmnCodes" resultType="cokr.xit.fims.framework.core.XitCodeVO">
/** findCmmnCodes */
/** 공통코드 목록 조회 */
SELECT GRP_ID AS "grpId"
, GRP_NM AS "grpNm"
, DSCRP AS "dscrp"
, CTGR_ID AS "ctgrId"
FROM tb_code_grp
WHERE USE_YN = 'Y'
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(grpId)">
AND GRP_ID = #{grpId}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(ctgrId)">
AND CTGR_ID = #{ctgrId}
</if>
</select>
<select id="findCmmnDetailCodes" resultType="cokr.xit.fims.framework.core.XitCodeVO">
/** findCmmnDetailCodes */
/** 공통상세코드 목록 조회 */
SELECT GRP_ID AS "grpId"
,CODE AS "code"
,CODE_VAL AS "codeVal"
,DSCRP AS "dscrp"
FROM tb_cmn_code
WHERE USE_YN = 'Y'
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(grpId)">
AND GRP_ID = #{grpId}
</if>
</select>
<select id="findOrgnztCodes" resultType="cokr.xit.fims.framework.core.XitCodeVO">
/** findOrgnztCodes */
/** 조직코드 목록 조회 */
SELECT
#{tableNm} AS "grpId"
,ORG_ID AS "code"
,ORGNZT_NM AS "codeVal"
,DSCRP AS "dscrp"
FROM XIT_ORGNZT_INFO
WHERE 1=1
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(orgId)">
AND ORG_ID LIKE #{orgId}
</if>
</select>
<select id="instCdToSggCd" resultType="java.lang.String">
SELECT SGG_CD
FROM TB_SGG_INFO
WHERE INST_CD = #{instCd}
</select>
<select id="sggCdToInstCd" resultType="java.lang.String">
SELECT INST_CD
FROM TB_SGG_INFO
WHERE SGG_CD = #{sggCd}
</select>
<select id="getSggNm" resultType="java.lang.String">
SELECT INST_NM
FROM TB_SGG_INFO
WHERE SGG_CD = #{sggCd}
</select>
</mapper>

@ -1,62 +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.framework.biz.cmm.dao.XitFrameFileMapper">
<!-- SQL 페이징 코드 -->
<sql id="pageBefore">
SELECT LIST.* FROM(
</sql>
<sql id="pageAfter">
) LIST LIMIT #{firstIndex}, #{recordCountPerPage}
</sql>
<sql id="findList_SELECT">
SELECT
A.ATCH_FILE_ID AS "atchFileId"
,B.FILE_CN AS "fileCn"
,B.FILE_SN AS "fileSn"
,B.FILE_STRE_COURS AS "fileStreCours"
,B.STRE_FILE_NM AS "streFileNm"
,B.FILE_EXTSN AS "fileExtsn"
,B.ORIGNL_FILE_NM AS "orignlFileNm"
,B.FILE_SIZE AS "fileSize"
,A.CREAT_DT AS "creatDt"
</sql>
<sql id="findList_FROM">
FROM XIT_FILE_ATTRB A
INNER JOIN XIT_FILE_DETAIL_INFO B ON A.ATCH_FILE_ID = B.ATCH_FILE_ID
</sql>
<sql id="findList_WHERE">
</sql>
<select id="findList" resultType="java.util.Map">
/** XitFrameFileMapper.findList */
/** 첨부파일 목록 조회 */
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE 1=1
AND A.ATCH_FILE_ID = #{atchFileId}
AND A.USE_YN = 'Y'
<!-- 이미지파일 여부 -->
<if test="isImageFile == 'true'">
AND UPPER (B.FILE_EXTSN) IN ('GIF', 'JPG', 'BMP', 'PNG')
</if>
ORDER BY B.FILE_SN
</select>
<select id="findView" resultType="java.util.Map">
/** XitFrameFileMapper.findView */
/** 첨부파일 상세정보 조회 */
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE 1=1
AND A.ATCH_FILE_ID = #{atchFileId}
AND B.FILE_SN = #{fileSn}
ORDER BY B.FILE_SN
</select>
</mapper>

@ -1,76 +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.framework.biz.cmm.dao.XitFramePopupMapper">
<!-- SQL 페이징 코드 -->
<sql id="pageBefore">
SELECT LIST.* FROM(
</sql>
<sql id="pageAfter">
) LIST LIMIT #{firstIndex}, #{recordCountPerPage}
</sql>
<select id="findListZip" resultType="java.util.Map">
/** XitFramePopupMapper.findListZip */
/** 우편번호 목록 조회 */
<if test="searchGubun == 'list'">
<include refid="pageBefore"/>
</if>
<include refid="findListZip_SELECT"/>
<include refid="findListZip_FROM"/>
WHERE 1 = 1
<include refid="findListZip_WHERE"/>
<if test="searchGubun == 'list'">
<include refid="pageAfter"/>
</if>
</select>
<select id="findListZipTotCnt" resultType="int">
/** XitFramePopupMapper.findListZipTotCnt */
/** 우편번호 목록 조회 총 건수 */
SELECT COUNT(1) AS "CNT"
<include refid="findListZip_FROM"/>
WHERE 1 = 1
<include refid="findListZip_WHERE"/>
</select>
<sql id="findListZip_SELECT">
SELECT ZIP AS "zip"
, SN AS "sn"
, CTPRVN_NM AS "ctprvnNm"
, SGG_NM AS "sggNm"
, EMD_NM AS "emdNm"
, LI_BULD_NM AS "liBuldNm"
, LNBR_DONG_HO AS "lnbrDongHo"
</sql>
<sql id="findListZip_FROM">
FROM XIT_ZIP
</sql>
<sql id="findListZip_WHERE">
<choose>
<when test="searchCondition== '1'.toString()">
AND ZIP = #{searchKeyword}
</when>
<when test="searchCondition== '2'.toString()">
AND CTPRVN_NM LIKE CONCAT('%',#{searchKeyword},'%')
</when>
<when test="searchCondition== '3'.toString()">
AND SGG_NM LIKE CONCAT('%',#{searchKeyword},'%')
</when>
<when test="searchCondition== '4'.toString()">
AND EMD_NM LIKE CONCAT('%',#{searchKeyword},'%')
</when>
<when test="searchCondition== '5'.toString()">
AND LI_BULD_NM LIKE CONCAT('%',#{searchKeyword},'%')
</when>
</choose>
</sql>
</mapper>

@ -1,38 +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.framework.biz.cmm.dao.XitFrameSchedulerMapper">
<insert id="addSysLogSummaryOfYesterday">
/** addSysLogSummaryOfYesterday */
/** 시스템 로그 전날 로그 요약 등록 */
INSERT INTO XIT_SYS_LOG_SUMRY(
OCCRRNC_DE
,SRVC_NM
,METHOD_NM
,CREAT_CO
,UPDT_CO
,RDCNT
,DELETE_CO
,OUTPT_CO
,ERROR_CO
)
SELECT DATE_FORMAT(B.CREAT_DT, '%Y%m%d') AS "OCCRRNC_DE"
, 'Member-login' AS "SRVC_NM"
, 'actionLogin' AS "METHOD_NM"
, SUM(CASE WHEN B.CONECT_MTHD = 'I' THEN 1 ELSE 0 END) AS "CREAT_CO"
, SUM(CASE WHEN B.CONECT_MTHD = 'U' THEN 1 ELSE 0 END) AS "UPDT_CO"
, SUM(CASE WHEN B.CONECT_MTHD = 'R' THEN 1 ELSE 0 END) AS "RDCNT"
, SUM(CASE WHEN B.CONECT_MTHD = 'O' THEN 1 ELSE 0 END) AS "DELETE_CO"
, 0 AS "OUTPT_CO"
, 0 AS "ERROR_CO"
FROM XIT_CONECT_LOG B
WHERE NOT EXISTS (
SELECT FA.OCCRRNC_DE
FROM XIT_SYS_LOG_SUMRY FA
WHERE TRIM(FA.OCCRRNC_DE) = DATE_FORMAT(DATE_SUB(NOW(), INTERVAL 1 DAY ), '%Y%m%d')
)
AND DATE_FORMAT(B.CREAT_DT, '%Y%m%d') = DATE_FORMAT(DATE_SUB(NOW(), INTERVAL 1 DAY ), '%Y%m%d')
GROUP BY DATE_FORMAT(B.CREAT_DT, '%Y%m%d'), B.CONECT_MTHD
</insert>
</mapper>

@ -1,77 +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.framework.biz.cmm.dao.XitFrameUnitMapper">
<select id="findMaxFileSn" resultType="int">
/** XitFrameUnitMapper.findMaxFileSn */
/** 파일순번 채번 */
SELECT IFNULL(MAX(FILE_SN),0)+1 AS "FILE_SN" FROM XIT_FILE_DETAIL_INFO WHERE ATCH_FILE_ID = #{atchFileId}
</select>
<select id="findLongTermDisconectUser" resultType="java.util.Map">
/** XitFrameUnitMapper.findLongTermDisconectUser */
/** 장기미접속 사용자 조회 */
SELECT A.USER_ID
,A.USER_ACNT
FROM tb_user A
LEFT OUTER JOIN (
/** 현재일 기준 일정기간 내 접속 로그 정보 */
SELECT DISTINCT CONECT_ID AS "USER_ID"
FROM XIT_CONECT_LOG
WHERE ERROR_OCCRRNC_YN = 'N'
AND CREAT_DT &gt;= DATE_ADD(NOW(), INTERVAL #{term} MONTH)
AND CONECT_ID IS NOT NULL
) B ON A.USER_ID = B.USER_ID
WHERE B.USER_ID IS NULL
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(userId)">
AND B.USER_ID = #{userId}
</if>
</select>
<select id="findXitUserInfoByAccountInfo" resultType="cokr.xit.fims.framework.biz.mng.user.XitUserInfoVO">
SELECT A.USER_ID
,A.USER_ACNT
,A.ORG_ID
,A.USER_NM
,A.PASSWD
,A.EMP_NO
,A.GENDER
,A.BRDT
,A.FXNO
,A.ADDR
,A.PASSWD_HINT
,A.PASSWD_NSR
,A.AREA_NO
,A.DADDR
,A.ZIP
,A.TELNO
,A.MBL_TELNO
,A.EML_ADRS
,A.POS_NM
,A.GRP_ID
,A.NSTT_CD
,A.STTS
,A.CRTFC_DN
,A.REG_DT
,B.JOB_DATA_AUTHOR
,B.USER_MANAGE_AUTHOR
,B.ELCTRNSANCTN_USE_YN
,B.JOB_CONFM_AUTHOR_YN
FROM tb_user A
LEFT JOIN XIT_USER_ETC_OPTION B ON A.USER_ID=B.USER_ID
WHERE 1=1
AND A.USER_ACNT = #{userAcnt}
</select>
</mapper>

@ -1,6 +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.framework.biz.cmm.dao.XitLoginMapper">
</mapper>

@ -1,156 +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.framework.biz.cmm.dao.CmmAnsTmplMapper">
<!-- *************************************************************************************************************
* Cmm_Ans_Tmpl : 공통 답변 템플릿
************************************************************************************************************** -->
<sql id="sqlCmmAnsTmpl">
SELECT DISTINCT
tcat.tmplat_id
, tcat.tmplat_nm
, tcat.prface
, tcat.tlface
, tcat.reg_dt
, tcat.rgtr
, (SELECT SA.user_nm FROM xit_vw_user_mastr SA WHERE SA.USER_ID = tcat.rgtr) AS rgtrNm
, tcat.mdfcn_dt
, tcat.mdfr
, tcatd.answer_se_code
, cdc.grp_nm AS answerSeCodeNm
, tcatd.resn_code
, cdc.code_val AS resnCodeNm
, tcatd.answer_cn
, tcatd.answer_yn
, tcatd.del_yn
FROM tb_cmm_ans_tmpl tcat
LEFT JOIN tb_cmm_ans_tmpl_dtl tcatd
ON tcat.tmplat_id = tcatd.tmplat_id
LEFT OUTER JOIN (
SELECT
xcc.grp_id
, xcc.grp_nm
, xcdc.code
, xcdc.code_val
FROM tb_code_grp xcc
LEFT JOIN tb_cmn_code xcdc
ON xcc.grp_id = xcdc.grp_id
WHERE xcc.grp_id IN ( 'FIM028', 'FIM025', 'FIM021')
) cdc
ON tcatd.answer_se_code = cdc.grp_id
AND tcatd.resn_code = cdc.code
</sql>
<select id="selectCmmAnsTmplList" resultType="cokr.xit.fims.framework.biz.cmm.CmmAnsTmplDTO$Dtl">
/* cmm-ansTmpl-mysql-mapper|selectCmmAnsTmplList-공통 답변 템플릿 목록 조회|sjh88 */
<include refid="sqlCmmAnsTmpl"/>
<where>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(tmplatNm)">
AND tcat.tmplat_nm LIKE CONCAT('%',#{tmplatNm},'%')
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(tmplatId)">
AND tcat.tmplat_id = #{tmplatId}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(answerSeCode)">
AND tcatd.answer_se_code = #{answerSeCode}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(resnCode)">
AND tcatd.resn_code = #{resnCode}
</if>
</where>
</select>
<select id="selectCmmAnsTmpl" resultType="cokr.xit.fims.framework.biz.cmm.CmmAnsTmplDTO$Dtl">
/* cmm-ansTmpl-mysql-mapper|selectCmmAnsTmpl-공통 답변 템플릿 정보 조회|sjh88 */
<include refid="sqlCmmAnsTmpl"/>
<where>
AND tcat.tmplat_id = #{tmplatId}
AND tcatd.answer_se_code = #{answerSeCode}
AND tcatd.resn_code = #{resnCode}
</where>
</select>
<select id="selectComboCodes" resultType="java.util.Map">
SELECT
xcdc.code
, xcdc.code_val
FROM tb_cmn_code xcdc
WHERE xcdc.GRP_ID = #{grpId}
AND NOT EXISTS (SELECT 1 FROM tb_cmm_ans_tmpl_dtl tcatd WHERE tcatd.answer_se_code = xcdc.grp_id AND tcatd.resn_code = xcdc.code )
</select>
<insert id="insertCmmAnsTmpl">
/* cmm-ansTmpl-mysql-mapper|insertCmmAnsTmpl-공통 답변 템플릿 등록|sjh88 */
INSERT
INTO tb_cmm_ans_tmpl (
tmplat_id
, tmplat_nm
, prface
, tlface
, reg_dt
, rgtr
) VALUES (
#{tmplatId}
, #{tmplatNm}
, #{prface}
, #{tlface}
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
)
</insert>
<insert id="insertCmmAnsTmplDtl">
/* cmm-ansTmpl-mysql-mapper|insertCmmAnsTmplDtl-공통 답변 템플릿 상세 등록|sjh88 */
INSERT
INTO tb_cmm_ans_tmpl_dtl (
tmplat_id
, answer_se_code
, resn_code
, answer_cn
, answer_yn
, del_yn
, reg_dt
, rgtr
) VALUES (
#{tmplatId}
, #{answerSeCode}
, #{resnCode}
, #{answerCn}
, #{answerYn}
, 'N'
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
)
</insert>
<update id="updateCmmAnsTmpl">
UPDATE tb_cmm_ans_tmpl
SET
tmplat_nm = IF(tmplat_nm = #{tmplatNm}, tmplat_nm, #{tmplatNm})
, prface = IF(prface = #{prface}, prface, #{prface})
, tlface = IF(tlface = #{tlface}, tlface, #{tlface})
, mdfcn_dt = DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, mdfr = #{mdfr}
WHERE tmplat_id = #{tmplatId}
</update>
<update id="updateCmmAnsTmplDtl">
UPDATE tb_cmm_ans_tmpl_dtl
SET
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(delYn)">
del_yn = #{delYn}
</if>
<if test="!@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(delYn)">
answer_cn = IF(answer_cn = #{answerCn}, answer_cn, #{answerCn})
</if>
, mdfcn_dt = DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, mdfr = #{mdfr}
WHERE tmplat_id = #{tmplatId}
AND answer_se_code = #{answerSeCode}
AND resn_code = #{resnCode}
</update>
</mapper>

@ -1,153 +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.framework.biz.cmm.dao.CmmFileMapper">
<!-- *************************************************************************************************************
* tb_cmm_file_mastr : 파일 공통 마스터
************************************************************************************************************** -->
<select id="selectCmmFileMastr" resultType="cokr.xit.fims.framework.biz.cmm.CmmFileDTO$FileMst">
/* cmm-file-mysql-mapper|insertCmmFileMastr- 파일 마스터 정보 등록|julim */
SELECT file_mastr_id
, inf_type
, inf_key
, reg_dt
, rgtr
FROM tb_cmm_file_mastr
WHERE file_mastr_id = #{fileMastrId}
</select>
<select id="selectFileMastrIdByInfTypeAndInfKey" resultType="string">
/* cmm-file-mysql-mapper|selectFileMastrIdByInfTypeAndInfKey- 파일 마스터 아이디 조회|julim */
SELECT file_mastr_id
FROM tb_cmm_file_mastr
WHERE inf_type = #{infType}
AND inf_key = #{infKey}
</select>
<insert id="insertCmmFileMastr">
/* cmm-file-mysql-mapper|insertCmmFileMastr- 파일 마스터 정보 등록|julim */
INSERT
INTO tb_cmm_file_mastr (
file_mastr_id
, inf_type
, inf_key
, reg_dt
, rgtr
) VALUE (
#{fileMastrId}
, #{infType}
, #{infKey}
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
)
</insert>
<insert id="deleteCmmFileMastr">
/* cmm-file-mysql-mapper|deleteCmmFileMastr- 파일 마스터 정보 삭제|julim */
DELETE
FROM tb_cmm_file_mastr
WHERE file_mastr_id = #{fileMastrId}
</insert>
<!-- *************************************************************************************************************
* tb_cmm_file_detail : 파일 공통 상세
************************************************************************************************************** -->
<sql id="sqlCmmFileDetail">
# noinspection SqlResolve @ any/"tcfd"
SELECT tcfd.file_mastr_id
, tcfd.file_id
, tcfd.orginl_file_nm
, tcfd.mime_type
, tcfd.file_extsn
, tcfd.file_size
, tcfd.file_path
, tcfd.reg_dt
, tcfd.rgtr
</sql>
<select id="selectFilesByFileMastrId" resultType="cokr.xit.fims.framework.biz.cmm.CmmFileDTO$FileDtl">
/* cmm-file-mysql-mapper|selectFilesByFileMastrId- 파일 상세 목록 조회-master id로|julim */
<include refid="sqlCmmFileDetail"/>
FROM tb_cmm_file_detail tcfd
WHERE tcfd.file_mastr_id = #{fileMastrId}
</select>
<!--suppress SqlResolve -->
<select id="selectFilesByInfTypeAndInfKey" resultType="cokr.xit.fims.framework.biz.cmm.CmmFileDTO$FileDtl">
/* cmm-file-mysql-mapper|selectFilesByInfTypeAndInfKey- 파일 상세 목록 조회:업무코드 and 업무아이디로|julim */
<include refid="sqlCmmFileDetail"/>
FROM tb_cmm_file_detail tcfd
WHERE EXISTS (
SELECT 1
FROM tb_cmm_file_mastr
WHERE inf_type = #{infType}
AND inf_key = #{infKey}
AND file_mastr_id = tcfd.file_mastr_id
)
ORDER BY tcfd.orginl_file_nm, tcfd.reg_dt DESC
</select>
<select id="selectCmmFileDetail" resultType="cokr.xit.fims.framework.biz.cmm.CmmFileDTO$FileDtl">
/* cmm-file-mysql-mapper|selectCmmFileDetail- 파일 상세 조회|julim */
<include refid="sqlCmmFileDetail"/>
FROM tb_cmm_file_detail tcfd
WHERE tcfd.file_mastr_id = #{fileMastrId}
AND tcfd.file_id = #{fileId}
</select>
<insert id="insertCmmFileDetail">
/* cmm-file-mysql-mapper|insertCmmFileDetail- 파일 상세 정보 등록|julim */
INSERT
INTO tb_cmm_file_detail (
file_mastr_id
, file_id
, orginl_file_nm
, mime_type
, file_extsn
, file_size
, file_path
, reg_dt
, rgtr
) VALUE (
#{fileMastrId}
, #{fileId}
, #{orginlFileNm}
, #{mimeType}
, #{fileExtsn}
, #{fileSize}
, #{filePath}
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, #{rgtr}
)
</insert>
<delete id="deleteCmmFileDetail">
/* cmm-file-mysql-mapper|deleteCmmFileDetail- 파일 상세 정보 삭제|julim */
DELETE
FROM tb_cmm_file_detail
WHERE file_mastr_id = #{fileMastrId}
<if test='fileId != null and fileId != ""'>
AND file_id = #{fileId}
</if>
</delete>
<!--suppress SqlResolve -->
<!-- NatlNewspaper 에서 첨부 파일 조회시, inf_key가 interfaceSeqN + 01, 02 형태 -->
<select id="selectFilesByEsbInterfaces" resultType="cokr.xit.fims.framework.biz.cmm.CmmFileDTO$FileDtl">#
/* cmm-file-mysql-mapper|selectFilesByEsbInterfaces- 파일 상세 목록 조회:시민신고 파일 첨부|julim */
<include refid="sqlCmmFileDetail"/>
, tcfm.inf_key
FROM tb_cmm_file_detail tcfd
JOIN tb_cmm_file_mastr tcfm
ON tcfd.file_mastr_id = tcfm.file_mastr_id
AND tcfm.inf_type = #{infType}
AND INSTR(inf_key, #{infKey}) > 0
ORDER BY tcfd.orginl_file_nm, tcfd.reg_dt DESC
</select>
</mapper>

@ -1,84 +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.framework.biz.mng.admin.dao.XitAdminDbMngMapper">
<!-- SQL 페이징 코드 -->
<sql id="pageBefore">
SELECT LIST.* FROM(
</sql>
<sql id="pageAfter">
) LIST LIMIT #{firstIndex}, #{recordCountPerPage}
</sql>
<sql id="findList_SELECT">
</sql>
<sql id="findList_FROM">
</sql>
<sql id="findList_WHERE">
</sql>
<select id="findList" flushCache="true" useCache="false" resultType="cokr.xit.fims.framework.biz.mng.admin.XitAdminDbMngVO">
/** XitAdminDbMngMapper.findList */
/** 관리자DB관리 목록 조회 */
<if test="searchGubun == 'list'">
<include refid="pageBefore" />
</if>
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE 1=1
<include refid="findList_WHERE"/>
<if test="searchGubun == 'list'">
<include refid="pageAfter" />
</if>
</select>
<select id="findListTotCnt" resultType="int">
/** XitAdminDbMngMapper.findListTotCnt */
/** 관리자DB관리 목록 총건수 조회 */
SELECT COUNT(1) AS "CNT"
<include refid="findList_FROM"/>
WHERE 1=1
<include refid="findList_WHERE"/>
</select>
<select id="findView" resultType="cokr.xit.fims.framework.biz.mng.admin.XitAdminDbMngVO">
/** XitAdminDbMngMapper.findView */
/** 관리자DB관리 상세정보 조회 */
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE A.GRP_ID = #{grpId}
</select>
<select id="findDynamicSql" flushCache="false" resultType="java.util.LinkedHashMap">
/** XitAdminDbMngMapper.findDynamicSql */
/** 관리자DB관리 동적질의문 조회 */
${dynamicSql}
</select>
<insert id="addDynamicSql" flushCache="false">
/** XitAdminDbMngMapper.addDynamicSql */
/** 관리자DB관리 동적질의문 등록 */
${dynamicSql}
</insert>
<update id="modifyDynamicSql" flushCache="false">
/** XitAdminDbMngMapper.modifyDynamicSql */
/** 관리자DB관리 동적질의문 수정 */
${dynamicSql}
</update>
<delete id="removeDynamicSql" flushCache="false">
/** XitAdminDbMngMapper.removeDynamicSql */
/** 관리자DB관리 동적질의문 삭제 */
${dynamicSql}
</delete>
</mapper>

@ -1,79 +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.framework.biz.mng.admin.dao.XitConectionLogMngMapper">
<!-- SQL 페이징 코드 -->
<sql id="pageBefore">
SELECT LIST.* FROM(
</sql>
<sql id="pageAfter">
) LIST LIMIT #{firstIndex}, #{recordCountPerPage}
</sql>
<sql id="findList_SELECT">
SELECT
A.LOG_ID AS "logId"
,A.CREAT_DT AS "creatDt"
,A.CONECT_MTHD AS "loginMthd"
,A.CONECT_IP AS "loginIp"
,A.CONECT_ID AS "loginId"
,B.USER_NM AS "loginNm"
</sql>
<sql id="findList_FROM">
FROM XIT_CONECT_LOG A
LEFT OUTER JOIN XIT_VW_USER_MASTR B ON A.CONECT_ID = B.USER_ID
</sql>
<sql id="findList_WHERE">
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(searchWrd)">
AND A.CONECT_MTHD LIKE CONCAT('%',#{searchWrd},'%')
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(searchBgnDe)">
AND DATE_FORMAT(A.CREAT_DT, '%Y%m%d') BETWEEN #{searchBgnDe} AND #{searchEndDe}
</if>
</sql>
<select id="findList" resultType="cokr.xit.fims.framework.biz.mng.admin.XitConectionLogMngVO">
/** XitConectionLogMngMapper.findList */
/** 접속로그관리 목록 조회 */
<if test="searchGubun == 'list'">
<include refid="pageBefore" />
</if>
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE 1=1
<include refid="findList_WHERE"/>
ORDER BY A.CREAT_DT DESC
<if test="searchGubun == 'list'">
<include refid="pageAfter" />
</if>
</select>
<select id="findListTotCnt" resultType="int">
/** XitConectionLogMngMapper.findListTotCnt */
/** 접속로그관리 목록 총건수 조회 */
SELECT COUNT(1) AS "CNT"
<include refid="findList_FROM"/>
WHERE 1=1
<include refid="findList_WHERE"/>
</select>
<select id="findView" resultType="cokr.xit.fims.framework.biz.mng.admin.XitConectionLogMngVO">
/** XitConectionLogMngMapper.findView */
/** 접속로그관리 상세정보 조회 */
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE A.LOG_ID = #{logId}
</select>
</mapper>

@ -1,153 +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.framework.biz.mng.admin.dao.XitConectionStatsMngMapper">
<!-- SQL 페이징 코드 -->
<sql id="pageBefore">
SELECT LIST.* FROM(
</sql>
<sql id="pageAfter">
) LIST LIMIT #{firstIndex}, #{recordCountPerPage}
</sql>
<sql id="findList_SELECT">
</sql>
<sql id="findList_FROM">
</sql>
<sql id="findList_WHERE">
</sql>
<select id="findList" resultType="cokr.xit.fims.framework.biz.mng.admin.XitConectionStatsMngVO">
/** XitConectionStatsMngMapper.findList */
/** 접속통계관리 목록 조회 */
<!-- <if test="searchGubun == 'list'"> -->
<!-- <include refid="pageBefore" /> -->
<!-- </if> -->
<!-- <include refid="findList_SELECT"/> -->
<!-- <include refid="findList_FROM"/> -->
<!-- WHERE 1=1 -->
<!-- <include refid="findList_WHERE"/> -->
<!-- <if test="searchGubun == 'list'"> -->
<!-- <include refid="pageAfter" /> -->
<!-- </if> -->
<choose>
<!-- 서비스별 통계 -->
<when test="statsKind == 'SERVICE'">
SELECT METHOD_NM AS conectMethod
, IFNULL(SUM(CREAT_CO),0) AS "creatCo"
, IFNULL(SUM(UPDT_CO),0) AS "updtCo"
, IFNULL(SUM(RDCNT),0) AS "inqireCo"
, IFNULL(SUM(DELETE_CO),0) AS "deleteCo"
, IFNULL(SUM(OUTPT_CO),0) AS "outptCo"
, IFNULL(SUM(ERROR_CO),0) AS "errorCo"
<!-- 기간검색(년) -->
<if test="'Y'.toString() == pdKind">
, SUBSTRINGINGING(OCCRRNC_DE, 1, 4) AS "statsDate"
</if>
<!-- 기간검색(월) -->
<if test="'M'.toString() == pdKind">
, CONCAT(SUBSTRINGINGING(OCCRRNC_DE, 1, 4),'-',SUBSTRINGINGING(OCCRRNC_DE, 5, 2)) AS "statsDate"
</if>
<!-- 기간검색(일) -->
<if test="'D'.toString() == pdKind">
, CONCAT(SUBSTRINGINGING(OCCRRNC_DE, 1, 4),'-',SUBSTRINGINGING(OCCRRNC_DE, 5, 2),'-',SUBSTRINGINGING(OCCRRNC_DE, 7, 2)) AS "statsDate"
</if>
, 0 AS "statsCo"
FROM XIT_SYS_LOG_SUMRY
WHERE OCCRRNC_DE BETWEEN REPLACE(#{fromDate},'-','') AND REPLACE(#{toDate},'-','')
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(detailStatsKind)">
AND SRVC_NM LIKE CONCAT('%',#{detailStatsKind} '%')
</if>
<if test="'Y'.toString() == pdKind">
GROUP BY METHOD_NM, SUBSTRINGINGING(OCCRRNC_DE, 1, 4)
ORDER BY SUBSTRINGINGING(OCCRRNC_DE, 1, 4)
</if>
<if test="'M'.toString() == pdKind">
GROUP BY METHOD_NM, CONCAT(SUBSTRINGINGING(OCCRRNC_DE, 1, 4),'-',SUBSTRINGINGING(OCCRRNC_DE, 5, 2))
ORDER BY CONCAT(SUBSTRINGINGING(OCCRRNC_DE, 1, 4), '-', SUBSTRINGINGING(OCCRRNC_DE, 5, 2))
</if>
<if test="'D'.toString() == pdKind">
GROUP BY METHOD_NM, SUBSTRINGINGING(CONCAT(OCCRRNC_DE, 1, 4),'-',SUBSTRINGINGING(OCCRRNC_DE, 5, 2),'-',SUBSTRINGINGING(OCCRRNC_DE, 7, 2))
ORDER BY SUBSTRINGINGING(CONCAT(OCCRRNC_DE, 1, 4),'-',SUBSTRINGINGING(OCCRRNC_DE, 5, 2),'-',SUBSTRINGINGING(OCCRRNC_DE, 7, 2))
</if>
</when>
<!-- 개인별 통계 -->
<when test="statsKind == 'PRSONAL'">
SELECT COUNT(CONECT_ID) AS "statsCo"
<!-- 기간검색(년) -->
<if test="'Y'.toString() == pdKind">
, SUBSTRINGINGING(DATE_FORMAT(CREAT_DT, '%Y%m%d'), 1, 4) AS "statsDate"
</if>
<!-- 기간검색(월) -->
<if test="'M'.toString() == pdKind">
,SUBSTRINGINGING(CONCAT(DATE_FORMAT(CREAT_DT, '%Y%m%d'), 1, 4),'-',SUBSTRINGINGING(DATE_FORMAT(CREAT_DT, '%Y%m%d'), 5, 2)) AS "statsDate"
</if>
<!-- 기간검색(일) -->
<if test="'D'.toString() == pdKind">
, SUBSTRINGINGING(CONCAT(DATE_FORMAT(CREAT_DT, '%Y%m%d'), 1, 4),'-',SUBSTRINGINGING(DATE_FORMAT(CREAT_DT, '%Y%m%d'), 5, 2),'-',SUBSTRINGINGING(DATE_FORMAT(CREAT_DT, '%Y%m%d'), 7, 2)) AS "statsDate"
</if>
, '' AS "conectMethod"
, 0 AS "creatCo"
, 0 AS "updtCo"
, 0 AS "inqireCo"
, 0 AS "deleteCo"
, 0 AS "outptCo"
, 0 AS "errorCo"
FROM XIT_CONECT_LOG
WHERE 1=1
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(detailStatsKind)">
AND CONECT_ID = #{detailStatsKind}
</if>
<!-- 시작일자~종료일자 기간제한 -->
AND DATE_FORMAT(CREAT_DT, '%Y%m%d') BETWEEN REPLACE(#{fromDate},'-','') AND REPLACE(#{toDate},'-','')
<if test="'Y'.toString() == pdKind">
GROUP BY SUBSTRINGINGING(DATE_FORMAT(CREAT_DT, '%Y%m%d'), 1, 4)
ORDER BY SUBSTRINGINGING(DATE_FORMAT(CREAT_DT, '%Y%m%d'), 1, 4)
</if>
<if test="'M'.toString() == pdKind">
GROUP BY CONCAT(SUBSTRINGINGING(DATE_FORMAT(CREAT_DT, '%Y%m%d'), 1, 4),'-',SUBSTRINGINGING(DATE_FORMAT(CREAT_DT, '%Y%m%d'), 5, 2))
ORDER BY CONCAT(SUBSTRINGINGING(DATE_FORMAT(CREAT_DT, '%Y%m%d'), 1, 4),'-',SUBSTRINGINGING(DATE_FORMAT(CREAT_DT, '%Y%m%d'), 5, 2))
</if>
<if test="'D'.toString() == pdKind">
GROUP BY CONCAT(SUBSTRINGINGING(DATE_FORMAT(CREAT_DT, '%Y%m%d'), 1, 4),'-',SUBSTRINGINGING(DATE_FORMAT(CREAT_DT, '%Y%m%d'), 5, 2),'-',SUBSTRINGINGING(DATE_FORMAT(CREAT_DT, '%Y%m%d'), 7, 2))
ORDER BY CONCAT(SUBSTRINGINGING(DATE_FORMAT(CREAT_DT, '%Y%m%d'), 1, 4),'-',SUBSTRINGINGING(DATE_FORMAT(CREAT_DT, '%Y%m%d'), 5, 2),'-',SUBSTRINGINGING(DATE_FORMAT(CREAT_DT, '%Y%m%d'), 7, 2))
</if>
</when>
</choose>
</select>
<select id="findListTotCnt" resultType="int">
/** XitConectionStatsMngMapper.findListTotCnt */
/** 접속통계관리 목록 총건수 조회 */
<!-- SELECT COUNT(1) AS "CNT" -->
<!-- <include refid="findList_FROM"/> -->
<!-- WHERE 1=1 -->
<!-- <include refid="findList_WHERE"/> -->
</select>
<select id="findView" resultType="cokr.xit.fims.framework.biz.mng.admin.XitConectionStatsMngVO">
/** XitConectionStatsMngMapper.findView */
/** 접속통계관리 상세정보 조회 */
<!-- <include refid="findList_SELECT"/> -->
<!-- <include refid="findList_FROM"/> -->
<!-- WHERE A.GRP_ID = #{grpId} -->
</select>
</mapper>

@ -1,82 +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.framework.biz.mng.auth.dao.XitLoginPolicyMngMapper">
<!-- SQL 페이징 코드 -->
<sql id="pageBefore">
SELECT LIST.* FROM(
</sql>
<sql id="pageAfter">
) LIST LIMIT #{firstIndex}, #{recordCountPerPage}
</sql>
<sql id="findList_SELECT">
SELECT A.USER_ID AS "emplyrUniqueId"
,A.USER_ACNT AS "emplyrId"
,A.USER_NM AS "emplyrNm"
,A.USER_SE AS "emplyrSe"
,B.IP_ADDR AS "ipAddr"
,B.DPLCT_YN AS "dplctYn"
,B.LIMIT_YN AS "limitYn"
,B.MDFR AS "userId"
,B.MDFCN_DT AS "regDate"
,CASE B.USER_ID WHEN NULL THEN 'N' ELSE 'Y' END AS "regYn"
</sql>
<sql id="findList_FROM">
FROM XIT_VW_USER_MASTR A
LEFT OUTER JOIN tb_login_policy B ON A.USER_ID = B.USER_ID
</sql>
<sql id="findList_WHERE">
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(searchKeyword)">
<choose>
<when test="'1'.toString() == searchCondition">
AND A.USER_NM LIKE CONCAT('%',#{searchKeyword},'%')
</when>
</choose>
</if>
</sql>
<select id="findList" resultType="cokr.xit.fims.framework.biz.mng.auth.XitLoginPolicyMngVO">
/** XitLoginPolicyMngMapper.findList */
/** 로그인정책관리 목록 조회 */
<if test="searchGubun == 'list'">
<include refid="pageBefore" />
</if>
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE 1=1
<include refid="findList_WHERE"/>
<if test="searchGubun == 'list'">
<include refid="pageAfter" />
</if>
</select>
<select id="findListTotCnt" resultType="int">
/** XitLoginPolicyMngMapper.findListTotCnt */
/** 로그인정책관리 목록 총건수 조회 */
SELECT COUNT(1) AS "CNT"
<include refid="findList_FROM"/>
WHERE 1=1
<include refid="findList_WHERE"/>
</select>
<select id="findView" resultType="cokr.xit.fims.framework.biz.mng.auth.XitLoginPolicyMngVO">
/** XitLoginPolicyMngMapper.findView */
/** 로그인정책관리 상세정보 조회 */
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE A.USER_ID = #{emplyrUniqId}
</select>
</mapper>

@ -1,48 +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.framework.biz.mng.auth.dao.AuthByUserMgtMapper">
<!-- ***** ********************************************************************************************************
* xit_user _info : 업무사용자 정보
********** **************************************************************************************************** -->
<sql id ="sqlAuthUser">
SELECT USER_ID AS uniqId
, xui.USER_ACNT
, xui.user_nm
, xui.grp_id
, cdc.code_val AS mberTyNm
, uss.auth_Id
, IF(uss.USER_ID IS NULL, 'N', 'Y') AS regYn
FROM (
SELECT USER_ID
, USER_ACNT
, user_nm user_nm
, grp_id
FROM tb_user ) xui
LEFT OUTER JOIN tb_auth_user uss
ON xui.USER_ID = uss.USER_ID
LEFT OUTER JOIN tb_cmn_code cdc
ON cdc.grp_id = 'XIT012'
AND 1=1
<where>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(userAcnt)">
AND INSTR(xui.USER_ACNT, #{userAcnt}) > 0
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(userNm)">
AND INSTR(xui.user_nm, #{userNm}) > 0
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(grpId)">
AND xui.grp_id = #{grpId}
</if>
</where>
</sql>
<select id ="selectAuthUsers" parameterType="map" resultType="cokr.xit.fims.framework.biz.mng.auth.XitAuthUsrMngVO">
/* auth-by-user-mysql-mapper|selectAuthUsers-사용자별권한관리 목록 조회|julim */
<include refid="sqlAuthUser"/>
</select>
<select id ="selectAuthUser" resultType="cokr.xit.fims.framework.biz.mng.auth.XitAuthUsrMngVO">
/* auth-by-user-mysql-mapper|selectAuthUser-사용자별권한관리 정보 조회|julim */
<include refid="sqlAuthUser"/>
</select>
</mapper>

@ -1,19 +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.framework.biz.mng.auth.dao.AuthHierarchyMgtMapper">
<!-- *************************************************************************************************************
* TB_AUTHORITY : 권한 정보
************************************************************************************************************** -->
<select id="selectAuthHierarchies" resultType="cokr.xit.fims.framework.biz.mng.auth.XitAuthHierarchyMngVO">
SELECT auth_Id
, AUTH_NM
, dscrp
, REG_DT
FROM TB_AUTHORITY
<where>
AND INSTR(AUTH_NM, #{searchKeyword}) > 0
</where>
</select>
</mapper>

@ -1,196 +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.framework.biz.mng.bbs.dao.XitBasicBbsMngMapper">
<!-- SQL 페이징 코드 -->
<sql id="pageBefore">
SELECT LIST.* FROM(
</sql>
<sql id="pageAfter">
) LIST LIMIT #{firstIndex}, #{recordCountPerPage}
</sql>
<sql id="findList_SELECT">
SELECT A.NTT_SJ AS "nttSj"
,A.NTCR_ID AS "ntcrId"
,A.NTCR_NM AS "ntcrNm"
,A.NTT_NO AS "nttNo"
,A.NTT_CN AS "nttCn"
,A.PASSWD AS "passwd"
,A.RGTR AS "rgtr"
,IFNULL (B.USER_NM, A.NTCR_NM) AS "frstRgtrNm"
,DATE_FORMAT(A.REG_DT, '%Y-%m-%d') AS "regDt"
,A.NTCE_BEGIN_DE AS "ntceBgnde"
,A.NTCE_END_DE AS "nposblAtchFileNumber"
,A.RDCNT AS "inqireCo"
,A.USE_YN AS "useYn"
,A.ATCH_FILE_ID AS "atchFileId"
,A.BBS_ID AS "bbsId"
,A.NTT_ID AS "nttId"
,A.PARNTS_SNTNC_NO AS "parnts"
,A.ANSWER_YN AS "replyAt"
,A.ANSWER_LC AS "replyLc"
,A.SRT_ORD AS "srtOrd"
,C.BBS_TY_CODE AS "bbsTyCode"
,C.BBS_ATTRB_CODE AS "bbsAttrbCode"
,C.REPLY_POSBL_YN AS "replyPosblYn"
,C.FILE_ATCH_POSBL_YN AS "fileAtchPosblYn"
,C.ATCH_POSBL_FILE_NUMBER AS "posblAtchFileNumber"
,C.BBS_NM AS "bbsNm"
</sql>
<sql id="findList_FROM">
FROM XIT_BBS A
LEFT OUTER JOIN XIT_VW_USER_MASTR B ON A.RGTR = B.USER_ID
LEFT OUTER JOIN XIT_BBS_MASTR C ON A.BBS_ID = C.BBS_ID
</sql>
<sql id="findList_WHERE">
AND A.BBS_ID = #{bbsId}
AND A.PARNTS_SNTNC_NO = 0
<choose>
<when test="'0'.toString() == searchCnd">
AND A.NTT_SJ LIKE CONCAT('%',#{searchWrd},'%')
</when>
<when test="'1'.toString() == searchCnd">
AND A.NTT_CN LIKE CONCAT('%',#{searchWrd},'%')
</when>
<when test="'2'.toString() == searchCnd">
AND B.USER_NM LIKE CONCAT('%',#{searchWrd},'%')
</when>
</choose>
</sql>
<resultMap id="findListResultMap" type="cokr.xit.fims.framework.biz.mng.bbs.XitBasicBbsMngVO">
<result column="nttSj" property="nttSj" />
<result column="ntcrId" property="ntcrId" />
<result column="ntcrNm" property="ntcrNm" />
<result column="nttNo" property="nttNo" />
<result column="nttCn" property="nttCn" />
<result column="passwd" property="passwd" />
<result column="rgtr" property="rgtr" />
<result column="frstRgtrNm" property="frstRgtrNm" />
<result column="regDt" property="regDt" />
<result column="ntceBgnde" property="ntceBgnde" />
<result column="nposblAtchFileNumber" property="nposblAtchFileNumber" />
<result column="inqireCo" property="inqireCo" />
<result column="useYn" property="useYn" />
<result column="atchFileId" property="atchFileId" />
<result column="bbsId" property="bbsId" />
<result column="nttId" property="nttId" />
<result column="parnts" property="parnts" />
<result column="replyAt" property="replyAt" />
<result column="replyLc" property="replyLc" />
<result column="srtOrd" property="srtOrd" />
<result column="bbsTyCode" property="bbsTyCode" />
<result column="bbsAttrbCode" property="bbsAttrbCode" />
<result column="replyPosblYn" property="replyPosblYn" />
<result column="fileAtchPosblYn" property="fileAtchPosblYn" />
<result column="posblAtchFileNumber" property="posblAtchFileNumber" />
<result column="bbsNm" property="bbsNm" />
<collection column="{bbsId=bbsId, nttId=nttId}" property="_children" select="findListChildren" javaType="java.util.List" />
</resultMap>
<!-- <select id="findList" resultType="xitframework.xit.category.mng.bbs.basic.model.XitBasicBbsMngVO"> -->
<select id="findList" resultMap="findListResultMap">
/** XitBasicBbsMngMapper.findList */
/** 기본(공용)게시판 목록 조회 */
<if test="searchGubun == 'list'">
<include refid="pageBefore" />
</if>
<!-- WITH TREE_QUERY(BBS_ID, NTT_ID, NTT_NO, PARNT_NTT_ID, NTT_DEPTH, NTT_SORT) AS -->
<!-- ( -->
<!-- SELECT -->
<!-- A.BBS_ID AS "BBS_ID" -->
<!-- , A.NTT_ID AS "NTT_ID" -->
<!-- , A.NTT_NO AS "NTT_NO" -->
<!-- , A.PARNTS_SNTNC_NO AS "PARNT_NTT_ID" -->
<!-- , 1 AS "NTT_DEPTH" -->
<!-- , LPAD(A.NTT_ID,10,'0') AS "NTT_SORT" -->
<!-- FROM XIT_BBS A -->
<!-- WHERE A.BBS_ID = #{bbsId} -->
<!-- AND A.PARNTS_SNTNC_NO = 0 -->
<!-- UNION ALL -->
<!-- SELECT -->
<!-- A.BBS_ID AS "BBS_ID" -->
<!-- , A.NTT_ID AS "NTT_ID" -->
<!-- , A.NTT_NO AS "NTT_NO" -->
<!-- , A.PARNTS_SNTNC_NO AS "PARNT_NTT_ID" -->
<!-- , B.NTT_DEPTH+1 AS "NTT_DEPTH" -->
<!-- , CONCAT(B.NTT_SORT,'_',LPAD(A.NTT_ID,10,'0')) AS "NTT_SORT" -->
<!-- FROM XIT_BBS A -->
<!-- INNER JOIN TREE_QUERY B ON A.PARNTS_SNTNC_NO = B.NTT_ID -->
<!-- WHERE A.BBS_ID = #{bbsId} -->
<!-- AND A.PARNTS_SNTNC_NO != 0 -->
<!-- ) -->
<!-- <include refid="findList_SELECT"/> -->
<!-- <include refid="findList_FROM"/> -->
<!-- INNER JOIN TREE_QUERY Z ON A.BBS_ID=Z.BBS_ID AND A.NTT_ID=Z.NTT_ID -->
<!-- WHERE 1=1 -->
<!-- <include refid="findList_WHERE"/> -->
<!-- ORDER BY Z.NTT_SORT -->
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE 1=1
<include refid="findList_WHERE"/>
ORDER BY A.REG_DT DESC LIMIT 100000
<if test="searchGubun == 'list'">
<include refid="pageAfter" />
</if>
</select>
<!-- <select id="findListChildren" resultType="xitframework.xit.category.mng.bbs.basic.model.XitBasicBbsMngVO"> -->
<select id="findListChildren" resultMap="findListResultMap">
/** XitBasicBbsMngMapper.findListChildren */
/** 기본(공용)게시판 자식 목록 조회 */
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE 1=1
AND A.PARNTS_SNTNC_NO != 0
AND A.BBS_ID = #{bbsId}
AND A.PARNTS_SNTNC_NO = #{nttId}
ORDER BY A.REG_DT ASC
</select>
<select id="findListTotCnt" resultType="int">
/** XitBasicBbsMngMapper.findListTotCnt */
/** 기본(공용)게시판 목록 총건수 조회 */
SELECT COUNT(1) AS "CNT"
<include refid="findList_FROM"/>
WHERE 1=1
<include refid="findList_WHERE"/>
</select>
<select id="findView" resultType="cokr.xit.fims.framework.biz.mng.bbs.XitBasicBbsMngVO">
/** XitBasicBbsMngMapper.findView */
/** 기본(공용)게시판 상세정보 조회 */
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE A.BBS_ID = #{bbsId}
AND A.NTT_ID = #{nttId}
</select>
<select id="findMaxNttId" resultType="String">
/** XitBasicBbsMngMapper.findMaxNttId */
/** 게시물ID 채번 */
<!-- SELECT IFNULL(MAX(CAST(NTT_ID)),0)+1 AS "NTT_ID" FROM XIT_BBS [2021.12.23]임현수 : 디비 버전문제로 문법오류 나서 수정함-->
SELECT IFNULL(MAX(CAST(NTT_ID AS DECIMAL)),0)+1 AS "NTT_ID" FROM XIT_BBS
</select>
<select id="findMaxNttNo" resultType="String">
/** XitBasicBbsMngMapper.findMaxNttNo */
/** 게시물번호 채번 */
SELECT IFNULL(MAX(NTT_NO),0)+1 AS "NTT_NO"
FROM XIT_BBS
WHERE BBS_ID = #{bbsId}
AND PARNTS_SNTNC_NO = #{parntsSntncNo}
</select>
</mapper>

@ -1,107 +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.framework.biz.mng.bbs.dao.XitBbsCreateMngMapper">
<!-- SQL 페이징 코드 -->
<sql id="pageBefore">
SELECT LIST.* FROM(
</sql>
<sql id="pageAfter">
) LIST LIMIT #{firstIndex}, #{recordCountPerPage}
</sql>
<sql id="findList_SELECT">
SELECT A.BBS_ID AS "bbsId"
,A.BBS_TY_CODE AS "bbsTyCode"
,B.CODE_VAL AS "bbsTyCodeNm"
,A.BBS_INTRCN AS "bbsIntrcn"
,A.BBS_ATTRB_CODE AS "bbsAttrbCode"
,C.CODE_VAL AS "bbsAttrbCodeNm"
,A.BBS_NM AS "bbsNm"
,A.TMPLAT_ID AS "tmplatId"
,D.TMPLAT_NM AS "tmplatNm"
,D.TMPLAT_COURS AS "tmplatCours"
,A.FILE_ATCH_POSBL_YN AS "fileAtchPosblYn"
,A.ATCH_POSBL_FILE_NUMBER AS "posblAtchFileNumber"
,A.ATCH_POSBL_FILE_SIZE AS "posblAtchFileSize"
,A.REPLY_POSBL_YN AS "replyPosblYn"
,A.RGTR AS "rgtr"
,(SELECT SA.USER_NM FROM XIT_VW_USER_MASTR SA WHERE SA.USER_ID = A.RGTR) AS "frstRgtrNm"
,A.USE_YN AS "useYn"
,DATE_FORMAT(A.REG_DT, '%Y-%m-%d') AS "regDt"
,(SELECT IFNULL (SA.USE_YN, 'N')
FROM XIT_BBS_PRCUSE SA
<!-- WHERE SA.BBS_ID = #{bbsId} -->
WHERE SA.BBS_ID = A.BBS_ID
AND SA.TRGET_ID IN (#{uniqId}, 'SYSTEM_DEFAULT_BOARD'))
AS "authFlag"
</sql>
<sql id="findList_FROM">
FROM XIT_BBS_MASTR A
LEFT OUTER JOIN (SELECT GRP_ID, CODE, CODE_VAL
FROM tb_cmn_code
WHERE GRP_ID = 'XIT004' AND USE_YN = 'Y') B ON A.BBS_TY_CODE = B.CODE
LEFT OUTER JOIN (SELECT GRP_ID, CODE, CODE_VAL
FROM tb_cmn_code
WHERE GRP_ID = 'XIT009' AND USE_YN = 'Y') C ON A.BBS_ATTRB_CODE = C.CODE
LEFT OUTER JOIN XIT_TMPLAT_INFO D ON A.TMPLAT_ID = D.TMPLAT_ID AND D.USE_YN = 'Y'
</sql>
<sql id="findList_WHERE">
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(useYn)">
AND A.USE_YN = #{useYn}
</if>
<choose>
<when test="'0'.toString() == searchCnd">
AND A.BBS_NM LIKE CONCAT('%',#{searchWrd},'%')
</when>
<when test="'1'.toString() == searchCnd">
AND B.CODE_VAL LIKE CONCAT('%',#{searchWrd},'%')
</when>
</choose>
</sql>
<select id="findList" resultType="cokr.xit.fims.framework.biz.mng.bbs.XitBbsCreateMngVO">
/** XitBbsCreateMngMapper.findList */
/** 게시판생성관리 목록 조회 */
<if test="searchGubun == 'list'">
<include refid="pageBefore" />
</if>
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE 1=1
<include refid="findList_WHERE"/>
ORDER BY A.REG_DT DESC
<if test="searchGubun == 'list'">
<include refid="pageAfter" />
</if>
</select>
<select id="findListTotCnt" resultType="int">
/** XitBbsCreateMngMapper.findListTotCnt */
/** 게시판생성관리 목록 총건수 조회 */
SELECT COUNT(1) AS "CNT"
<include refid="findList_FROM"/>
WHERE 1=1
<include refid="findList_WHERE"/>
</select>
<select id="findView" resultType="cokr.xit.fims.framework.biz.mng.bbs.XitBbsCreateMngVO">
/** XitBbsCreateMngMapper.findView */
/** 게시판생성관리 상세정보 조회 */
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE A.BBS_ID = #{bbsId}
</select>
</mapper>

@ -1,91 +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.framework.biz.mng.bbs.dao.XitBbsTmplateMngMapper">
<!-- SQL 페이징 코드 -->
<sql id="pageBefore">
SELECT LIST.* FROM(
</sql>
<sql id="pageAfter">
) LIST LIMIT #{firstIndex}, #{recordCountPerPage}
</sql>
<sql id="findList_SELECT">
SELECT A.TMPLAT_ID AS "tmplatId"
,A.TMPLAT_NM AS "tmplatNm"
,A.TMPLAT_SE_CODE AS "tmplatSeCode"
,A.TMPLAT_COURS AS "tmplatCours"
,A.USE_YN AS "useYn"
,A.RGTR AS "rgtr"
,A.REG_DT AS "regDt"
,A.MDFR AS "mdfr"
,A.MDFCN_DT AS "mdfcnDt"
,B.CODE_VAL AS "tmplatSeCodeNm"
,(SELECT SA.USER_NM FROM XIT_VW_USER_MASTR SA WHERE SA.USER_ID=A.RGTR) AS "frstRgtrNm"
,(SELECT SA.USER_NM FROM XIT_VW_USER_MASTR SA WHERE SA.USER_ID=A.MDFR) AS "lastMdfrNm"
</sql>
<sql id="findList_FROM">
FROM XIT_TMPLAT_INFO A
LEFT OUTER JOIN tb_cmn_code B ON A.TMPLAT_SE_CODE = B.CODE
</sql>
<sql id="findList_WHERE">
AND B.GRP_ID = 'XIT005'
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(typeFlag)">
AND A.TMPLAT_SE_CODE = #{tmplatSeCode}
</if>
<choose>
<when test="'0'.toString() == searchCnd">
AND A.TMPLAT_NM LIKE CONCAT('%',#{searchWrd},'%')
</when>
<when test="'1'.toString() == searchCnd">
AND B.CODE_VAL LIKE CONCAT('%',#{searchWrd},'%')
</when>
</choose>
</sql>
<select id="findList" resultType="cokr.xit.fims.framework.biz.mng.bbs.XitBbsTmplateMngVO">
/** XitBbsTmplateMngMapper.findList */
/** 게시판템플릿관리 목록 조회 */
<if test="searchGubun == 'list'">
<include refid="pageBefore" />
</if>
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE 1=1
<include refid="findList_WHERE"/>
ORDER BY A.REG_DT DESC
<if test="searchGubun == 'list'">
<include refid="pageAfter" />
</if>
</select>
<select id="findListTotCnt" resultType="int">
/** XitBbsTmplateMngMapper.findListTotCnt */
/** 게시판템플릿관리 목록 총건수 조회 */
SELECT COUNT(1) AS "CNT"
<include refid="findList_FROM"/>
WHERE 1=1
<include refid="findList_WHERE"/>
</select>
<select id="findView" resultType="cokr.xit.fims.framework.biz.mng.bbs.XitBbsTmplateMngVO">
/** XitBbsTmplateMngMapper.findView */
/** 게시판템플릿관리 상세정보 조회 */
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE A.TMPLAT_ID = #{tmplatId}
</select>
</mapper>

@ -1,89 +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.framework.biz.mng.bbs.dao.XitBbsUseMngMapper">
<!-- SQL 페이징 코드 -->
<sql id="pageBefore">
SELECT LIST.* FROM(
</sql>
<sql id="pageAfter">
) LIST LIMIT #{firstIndex}, #{recordCountPerPage}
</sql>
<sql id="findList_SELECT">
SELECT A.BBS_ID AS "bbsId"
,E.BBS_NM AS "bbsNm"
,A.TRGET_ID AS "trgetId"
,A.REGIST_SE_CODE AS "registSeCode"
,B.CODE_VAL AS "registSeCodeNm"
,A.USE_YN AS "useYn"
,A.RGTR AS "rgtr"
,A.REG_DT AS "regDt"
,'시스템 활용' AS "cmmntyId"
,'시스템 활용' AS "cmmntyNm"
,'시스템 활용' AS "clbId"
,'시스템 활용' AS "clbNm"
,'시스템 활용' AS "bbsTyCode"
</sql>
<sql id="findList_FROM">
FROM XIT_BBS_PRCUSE A
LEFT OUTER JOIN tb_cmn_code B ON B.CODE = A.REGIST_SE_CODE
LEFT OUTER JOIN XIT_BBS_MASTR E ON A.BBS_ID = E.BBS_ID
</sql>
<sql id="findList_WHERE">
AND B.GRP_ID = 'XIT001'
AND A.REGIST_SE_CODE != 'REGC07'
<choose>
<when test="'0'.toString() == searchCnd">
AND E.BBS_NM LIKE CONCAT('%',#{searchWrd},'%')
</when>
</choose>
</sql>
<select id="findList" resultType="cokr.xit.fims.framework.biz.mng.bbs.XitBbsUseMngVO">
/** XitBbsUseMngMapper.findList */
/** 게시판사용관리 목록 조회 */
<if test="searchGubun == 'list'">
<include refid="pageBefore" />
</if>
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE 1=1
<include refid="findList_WHERE"/>
ORDER BY A.REG_DT DESC
<if test="searchGubun == 'list'">
<include refid="pageAfter" />
</if>
</select>
<select id="findListTotCnt" resultType="int">
/** XitBbsUseMngMapper.findListTotCnt */
/** 게시판사용관리 목록 총건수 조회 */
SELECT COUNT(1) AS "CNT"
<include refid="findList_FROM"/>
WHERE 1=1
<include refid="findList_WHERE"/>
</select>
<select id="findView" resultType="cokr.xit.fims.framework.biz.mng.bbs.XitBbsUseMngVO">
/** XitBbsUseMngMapper.findView */
/** 게시판사용관리 상세정보 조회 */
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE B.GRP_ID = 'XIT001'
AND A.BBS_ID = #{bbsId}
AND A.TRGET_ID = #{trgetId}
</select>
</mapper>

@ -1,171 +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.framework.biz.mng.bbs.dao.BoardBasicMgtMapper">
<!-- *************************************************************************************************************
* xit_bbs_basic : 게시판 기본
************************************************************************************************************** -->
<sql id="sqlBoardMaster">
, xbm.bbs_ty_code
, xbm.bbs_attrb_code
, xbm.reply_posbl_yn
, xbm.file_atch_posbl_yn
, xbm.atch_posbl_file_number
, xbm.bbs_nm
</sql>
<sql id="sqlBoardBasic">
SELECT xb.ntt_sj
, xb.ntcr_id
, xb.ntcr_nm
, xb.ntt_no
, xb.ntt_cn
, xb.passwd
, xb.rgtr
, IFNULL (xvum.user_nm, xb.ntcr_nm) AS "frstRgtrNm"
, xb.reg_dt
, xb.ntce_begin_de
, xb.ntce_end_de
, xb.rdcnt AS "inqireco"
, xb.use_yn
, xb.atch_file_id
, xb.bbs_id
, xb.ntt_id
, xb.parnts_sntnc_no AS "parnts"
, xb.answer_yn AS "replyat"
, xb.answer_lc AS "replylc"
, xb.srt_ord
<include refid="sqlBoardMaster"/>
FROM xit_bbs xb
LEFT OUTER JOIN xit_vw_user_mastr xvum
ON xb.rgtr = xvum.USER_ID
LEFT OUTER JOIN xit_bbs_mastr xbm
ON xb.bbs_id = xbm.bbs_id
</sql>
<select id="selectBoardBasics" resultType="cokr.xit.fims.framework.biz.mng.bbs.XitBasicBbsMngVO">
/* board-mastr-mysql-mapper|sqlBoardBasic-BBS 기본 정보 조회|sjh88 */
<include refid="sqlBoardBasic"/>
<where>
AND xb.bbs_id = #{bbsId}
AND xb.parnts_sntnc_no = 0
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(nttSj)">
AND xb.ntt_sj LIKE CONCAT('%',#{nttSj},'%')
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(nttCn)">
AND xb.ntt_cn LIKE CONCAT('%',#{nttCn},'%')
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(ntcrNm)">
AND xvum.user_nm LIKE CONCAT('%',#{ntcrNm},'%')
</if>
</where>
ORDER BY xb.reg_dt DESC
</select>
<select id="selectBoardBasic" resultType="cokr.xit.fims.framework.biz.mng.bbs.XitBasicBbsMngVO">
/* board-mastr-mysql-mapper|selectBoardBasics-BBS 기본(생성) 목록 조회|sjh88 */
<include refid="sqlBoardBasic"/>
<where>
AND xb.bbs_id = #{bbsId}
AND xb.parnts_sntnc_no = 0
AND xb.ntt_no = #{nttNo}
</where>
ORDER BY xb.reg_dt DESC
</select>
<select id="selectBoardMaster" resultType="cokr.xit.fims.framework.biz.mng.bbs.XitBasicBbsMngVO">
/* boards-mastr-mysql-mapper|selectBoardMaster-BBS 마스터 정보 조회|sjh88 */
SELECT #{bbsId} AS "bbsId"
<include refid="sqlBoardMaster"/>
FROM xit_bbs_mastr xbm
<where>
AND xbm.bbs_id = #{bbsId}
</where>
</select>
<insert id="insertBoardBasic">
/* board-mastr-mysql-mapper|insertBoardBasic-BBS 기본(생성) 정보 등록|sjh88 */
<selectKey resultType="hashmap" keyColumn="nttId,nttNo" keyProperty="nttId,nttNo" order="BEFORE">
SELECT
(/** 게시물ID 채번 */
SELECT CAST(IFNULL(MAX(CAST(ntt_id AS DECIMAL)),0)+1 AS CHAR)
FROM xit_bbs
WHERE bbs_id = #{bbsId}
) AS "nttId",
(/** 게시물번호 채번 */
SELECT CAST(IFNULL(MAX(ntt_no),0)+1 AS DOUBLE)
FROM xit_bbs
WHERE bbs_id = #{bbsId}
AND parnts_sntnc_no = #{parntsSntncNo}
) AS "nttNo"
FROM DUAL
</selectKey>
INSERT
INTO xit_bbs (
ntt_id
, bbs_id
, ntt_no
, ntt_sj
, ntt_cn
, answer_yn
, parnts_sntnc_no
, answer_lc
, srt_ord
, rdcnt
, ntce_begin_de
, ntce_end_de
, ntcr_id
, ntcr_nm
, passwd
, atch_file_id
, reg_dt
, rgtr
) VALUES (
#{nttId}
, #{bbsId}
, #{nttNo}
, #{nttSj}
, #{nttCn}
, #{answerYn}
, #{parntsSntncNo}
, #{answerLc}
, #{srtOrd}
, 0
, #{ntceBeginDe}
, #{ntceEndDe}
, #{ntcrId}
, #{ntcrNm}
, #{passwd}
, #{atchFileId}
, NOW()
, #{rgtr}
)
</insert>
<update id="updateBoardBasic">
/* board-mastr-mysql-mapper|updateBoardBasic-BBS 기본(생성) 정보 변경|sjh88 */
UPDATE xit_bbs
SET
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(useYn)">
atch_file_id = #{useYn}
</if>
<if test="!@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(useYn)">
ntt_sj = IF(ntt_sj = #{nttSj}, ntt_sj, #{nttSj})
, ntt_cn = IF(ntt_cn = #{nttCn}, ntt_cn, #{nttCn})
, srt_ord = IF(srt_ord = #{srtOrd}, srt_ord, #{srtOrd})
, ntce_begin_de = IF(ntce_begin_de = #{ntceBeginDe}, ntce_begin_de, #{ntceBeginDe})
, ntce_end_de = IF(ntce_end_de = #{ntceEndDe}, ntce_end_de, #{ntceEndDe})
, ntcr_id = IF(ntcr_id = #{ntcrId}, ntcr_id, #{ntcrId})
, ntcr_nm = IF(ntcr_nm = #{ntcrNm}, ntcr_nm, #{ntcrNm})
, passwd = IF(passwd = #{passwd}, passwd, #{passwd})
, atch_file_id = IF(atch_file_id = #{atchFileId}, atch_file_id, #{atchFileId})
</if>
, mdfcn_dt = NOW()
, mdfr = #{mdfr}
WHERE bbs_id = #{bbsId}
AND ntt_id = #{nttId}
</update>
</mapper>

@ -1,130 +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.framework.biz.mng.bbs.dao.BoardCreateMgtMapper">
<!-- *************************************************************************************************************
* xit_bbs_mastr : 게시판 마스터
************************************************************************************************************** -->
<sql id="sqlBoardMastr">
SELECT xbm.bbs_id
, xbm.bbs_ty_code
, cdc.code_val AS bbsTyCodeNm
, xbm.bbs_intrcn
, xbm.bbs_attrb_code
, cdc2.code_val AS bbsAttrbCodeNm
, xbm.bbs_nm AS bbsNm
, xbm.tmplat_id
, xti.tmplat_nm
, xti.tmplat_cours
, xbm.file_atch_posbl_yn
, xbm.atch_posbl_file_number
, xbm.atch_posbl_file_size
, xbm.reply_posbl_yn
, xbm.rgtr
, (SELECT sa.user_nm
FROM XIT_VW_USER_MASTR SA
WHERE sa.USER_ID = xbm.rgtr) AS frstRgtrNm
, xbm.use_yn AS useYn
, DATE_FORMAT(xbm.reg_dt, '%Y-%m-%d') AS regDt
, (SELECT IFNULL(sa.use_yn, 'N')
FROM xit_bbs_prcuse sa
WHERE sa.bbs_id = xbm.bbs_id
AND sa.trget_id IN (#{uniqId}, 'SYSTEM_DEFAULT_BOARD')) AS authFlag
FROM xit_bbs_mastr xbm
LEFT OUTER JOIN (SELECT grp_id
, code
, code_val
FROM tb_cmn_code
WHERE grp_id = 'XIT004'
AND use_yn = 'Y') cdc
ON xbm.bbs_ty_code = cdc.code
LEFT OUTER JOIN (SELECT grp_id
, code
, code_val
FROM tb_cmn_code
WHERE grp_id = 'XIT009'
AND use_yn = 'Y') cdc2
ON xbm.bbs_attrb_code = cdc2.code
LEFT OUTER JOIN xit_tmplat_info xti
ON xbm.tmplat_id = xti.tmplat_id
AND xti.use_yn = 'Y'
</sql>
<select id="selectBoardMastrs" resultType="cokr.xit.fims.framework.biz.mng.bbs.XitBbsCreateMngVO">
/* board-mastr-mysql-mapper|selectBoardMastrs-BBS 마스터(생성) 목록 조회|julim */
<include refid="sqlBoardMastr"/>
<where>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(useYn)">
AND xbm.use_yn = #{useYn}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(bbsNm)">
AND INSTR(xbm.bbs_nm, #{bbsNm}) > 0
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(bbsTyCodeNm)">
AND INSTR(cdc.code_val, #{bbsTyCodeNm}) > 0
</if>
</where>
ORDER BY xbm.reg_dt DESC
</select>
<select id="selectBoardMastr" resultType="cokr.xit.fims.framework.biz.mng.bbs.XitBbsCreateMngVO">
/* boards-mastr-mysql-mapper|selectBoardMastr-BBS 마스터(생성) 정보 조회|julim */
<include refid="sqlBoardMastr"/>
WHERE xbm.bbs_id = #{bbsId}
</select>
<insert id="insertBoardMastr">
/* board-mastr-mysql-mapper|insertBoardMastr-BBS 마스터(생성) 정보 등록|julim */
INSERT
INTO xit_bbs_mastr (
bbs_id
, bbs_nm
, bbs_intrcn
, bbs_ty_code
, bbs_attrb_code
, atch_posbl_file_number
, atch_posbl_file_size
, tmplat_id
, use_yn
, reg_dt
, rgtr
) VALUES (
#{bbsId}
, #{bbsNm}
, #{bbsIntrcn}
, #{bbsTyCode}
, #{bbsAttrbCode}
, #{atchPosblFileNumber}
, #{atchPosblFileSize}
, #{tmplatId}
, #{useYn}
, NOW()
, #{rgtr}
)
</insert>
<update id="updateBoardMastr">
/* board-mastr-mysql-mapper|updateBoardMastr-BBS 마스터(생성) 정보 변경|julim */
UPDATE xit_bbs_mastr
SET bbs_nm = IF(bbs_nm = #{bbsNm}, bbs_nm, #{bbsNm})
, bbs_intrcn = IF(bbs_intrcn = #{bbsIntrcn}, bbs_intrcn, #{bbsIntrcn})
, bbs_ty_code = IF(bbs_ty_code = #{bbsTyCode}, bbs_ty_code, #{bbsTyCode})
, bbs_attrb_code = IF(bbs_attrb_code = #{bbsAttrbCode}, bbs_attrb_code, #{bbsAttrbCode})
, atch_posbl_file_number = IF(atch_posbl_file_number = #{atchPosblFileNumber}, atch_posbl_file_number, #{atchPosblFileNumber})
, atch_posbl_file_size = IF(atch_posbl_file_size = #{atchPosblFileSize}, atch_posbl_file_size, #{atchPosblFileSize})
, tmplat_id = IF(tmplat_id = #{tmplatId}, tmplat_id, #{tmplatId})
, use_yn = IF(use_yn = #{useYn}, use_yn, #{useYn})
, mdfcn_dt = NOW()
, mdfr = #{mdfr}
WHERE bbs_id = #{bbsId}
</update>
<delete id="deleteBoardMastr">
/* board-mastr-mysql-mapper|deleteBoardMastr-BBS 마스터(생성) 정보 삭제|julim */
DELETE
FROM xit_bbs_mastr
WHERE bbs_id = #{bbsId}
</delete>
</mapper>

@ -1,92 +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.framework.biz.mng.bbs.dao.BoardUseMgtMapper">
<!-- *************************************************************************************************************
* xit_bbs_prcuse : 게시판 활용
************************************************************************************************************** -->
<sql id="sqlBoardPrcuse">
SELECT xbp.bbs_id
, xbm.bbs_nm
, xbp.trget_id
, xbp.regist_se_code
, cdc.code_val AS registSeCodeNm
, xbp.use_yn
, xbp.rgtr
, xbp.reg_dt
, '시스템 활용' AS cmmntyId
, '시스템 활용' AS cmmntyNm
, '시스템 활용' AS clbId
, '시스템 활용' AS clbNm
, '시스템 활용' AS bbsTyCode
FROM xit_bbs_prcuse xbp
LEFT OUTER JOIN tb_cmn_code cdc
ON cdc.code = xbp.regist_se_code
LEFT OUTER JOIN xit_bbs_mastr xbm
ON xbp.bbs_id = xbm.bbs_id
</sql>
<select id="selectBoardPrcuseList" resultType="cokr.xit.fims.framework.biz.mng.bbs.XitBbsUseMngVO">
/* board-prcuse-mysql-mapper|selectBoardPrcuseList-BBS 활용 목록 조회|julim */
<include refid="sqlBoardPrcuse"/>
<where>
AND cdc.grp_id = 'XIT001'
AND xbp.regist_se_code != 'REGC07'
<choose>
<when test="'0'.toString() == searchCnd">
AND INSTR(xbm.bbs_nm, #{searchWrd}) > 0
</when>
</choose>
</where>
ORDER BY xbp.reg_dt DESC
</select>
<select id="selectBoardPrcuse" resultType="cokr.xit.fims.framework.biz.mng.bbs.XitBbsUseMngVO">
/* board-prcuse-mysql-mapper|selectBoardPrcuse-BBS 활용 정보 조회|julim */
<include refid="sqlBoardPrcuse"/>
WHERE cdc.grp_id = 'XIT001'
AND xbp.bbs_id = #{bbsId}
AND xbp.trget_id = #{trgetId}
</select>
<insert id="insertBoardPrcuse">
/* board-mastr-mysql-mapper|insertBbsMastr-BBS 마스터(생성) 정보 등록|julim */
INSERT
INTO xit_bbs_prcuse (
trget_id
, bbs_id
, regist_se_code
, use_yn
, reg_dt
, rgtr
) VALUES (
#{trgetId}
, #{bbsId}
, #{registSeCode}
, #{useYn}
, NOW()
, #{rgtr}
)
</insert>
<update id="updateBoardPrcuse">
/*board-prcuse-mysql-mapper|updateBoardPrcuse-BBS 활용 정보 변경|julim */
UPDATE xit_bbs_prcuse
SET regist_se_code = IF(regist_se_code = #{registSeCode}, regist_se_code, #{registSeCode})
, use_yn = IF(use_yn = #{useYn}, use_yn, #{useYn})
, mdfcn_dt = NOW()
, mdfr = #{mdfr}
WHERE trget_id = #{trgetId}
AND bbs_id = #{bbsId}
</update>
<delete id="deleteBoardPrcuse">
/* board-prcuse-mysql-mapper|deleteBoardPrcuse-BBS 활용 정보 삭제|julim */
DELETE
FROM xit_bbs_prcuse
WHERE trget_id = #{trgetId}
AND bbs_id = #{bbsId}
</delete>
</mapper>

@ -1,94 +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.framework.biz.mng.bbs.dao.BoardTmplMgtMapper">
<!-- *************************************************************************************************************
* xit_tmplat_info : 템플릿 정보
************************************************************************************************************** -->
<sql id="sqlTmplInfo">
SELECT xti.tmplat_id
, xti.tmplat_nm
, xti.tmplat_se_code
, xti.tmplat_cours
, xti.use_yn
, xti.rgtr
, xti.reg_dt
, xti.mdfr
, xti.mdfcn_dt
, cdc.code_val AS tmplatSeCodeNm
, (SELECT SA.user_nm FROM xit_vw_user_mastr SA WHERE SA.USER_ID = xti.rgtr) AS frstRgtrNm
, (SELECT SA.user_nm FROM xit_vw_user_mastr SA WHERE SA.USER_ID = xti.mdfr) AS lastMdfrNm
FROM xit_tmplat_info xti
LEFT OUTER JOIN tb_cmn_code cdc
ON xti.tmplat_se_code = cdc.code
AND cdc.grp_id = 'XIT005'
<where>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(tmplatSeCode)">
AND xti.tmplat_se_code = #{tmplatSeCode}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(codeVal)">
AND INSTR(cdc.code_val, #{codeVal}) > 0
</if>
</where>
</sql>
<select id="selectBoardTmpls" resultType="cokr.xit.fims.framework.biz.mng.bbs.XitBbsTmplateMngVO">
/* board-tmpl-mysql-mapper|selectBoardTmpls-템플릿 목록 조회|julim */
<include refid="sqlTmplInfo"/>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(tmplatNm)">
AND INSTR(xti.tmplat_nm, #{tmplatNm}) > 0
</if>
ORDER BY xti.reg_dt DESC
</select>
<select id="selectBoardTmpl" resultType="cokr.xit.fims.framework.biz.mng.bbs.XitBbsTmplateMngVO">
/* board-tmpl-mysql-mapper|selectBoardTmpl-템플릿 정보 조회|julim */
<include refid="sqlTmplInfo"/>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(tmplatId)">
AND xti.tmplat_id = #{tmplatId}
</if>
</select>
<insert id="insertBoardTmpl">
/* board-tmpl-mysql-mapper|insertBoardTmpl-템플릿 정보 등록|julim */
INSERT
INTO xit_tmplat_info (
tmplat_id
, tmplat_nm
, tmplat_cours
, tmplat_se_code
, use_yn
, reg_dt
, rgtr
) VALUE (
#{tmplatId}
, #{tmplatNm}
, #{tmplatCours}
, #{tmplatSeCode}
, #{useYn}
, NOW()
, #{rgtr}
)
</insert>
<update id="updateBoardTmpl">
/* board-tmpl-mysql-mapper|updateBoardTmpl-템플릿 정보 변경|julim */
UPDATE xit_tmplat_info
SET tmplat_nm = IF(tmplat_nm = #{tmplatNm}, tmplat_nm, #{tmplatNm})
, tmplat_cours = IF(tmplat_cours = #{tmplatCours}, tmplat_cours, #{tmplatCours})
, tmplat_se_code = IF(tmplat_se_code = #{tmplatSeCode}, tmplat_se_code, #{tmplatSeCode})
, use_yn = IF(use_yn = #{useYn}, use_yn, #{useYn})
, mdfcn_dt = NOW()
, mdfr = #{mdfr}
WHERE tmplat_id = #{tmplatId}
</update>
<delete id="deleteBoardTmpl">
/* board-tmpl-mysql-mapper|deleteBoardTmpl-템플릿 정보 삭제|julim */
DELETE
FROM xit_tmplat_info
WHERE tmplat_id = #{tmplatId}
</delete>
</mapper>

@ -1,77 +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.framework.biz.mng.code.dao.CodeCfnMgtMapper">
<!-- *************************************************************************************************************
* tb_code_ctgr : 분류 코드
************************************************************************************************************** -->
<sql id="sqlCmmnClCode">
SELECT ctgr_id
, ctgr_nm
, dscrp
, use_yn
, reg_dt
, rgtr
, mdfcn_dt
, mdfr
FROM tb_code_ctgr
<where>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(ctgrId)">
AND INSTR(ctgr_id, #{ctgrId}) > 0
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(ctgrNm)">
AND INSTR(ctgr_nm, #{ctgrNm}) > 0
</if>
</where>
</sql>
<select id="selectCmmnClCodes" resultType="cokr.xit.fims.framework.biz.mng.code.XitClCodeMngVO">
/* code-cfn-mysql-mapper|selectCmmnClCodes-분류코드 목록 조회|julim */
<include refid="sqlCmmnClCode"/>
</select>
<select id="selectCmmnClCode" resultType="cokr.xit.fims.framework.biz.mng.code.XitClCodeMngVO">
/* code-cfn-mysql-mapper|selectCmmnClCode-분류코드 정보 조회|julim */
<include refid="sqlCmmnClCode"/>
</select>
<insert id="insertCmmnClCode">
/* code-cfn-mysql-mapper|insertCmmnClCode-분류코드 정보 등록|julim */
INSERT
INTO tb_code_ctgr (
ctgr_id
, ctgr_nm
, dscrp
, use_yn
, reg_dt
, rgtr
) VALUE (
#{ctgrId}
, #{ctgrNm}
, #{dscrp}
, #{useYn}
, NOW()
, #{rgtr}
)
</insert>
<update id="updateCmmnClCode">
/* code-cfn-mysql-mapper|updateCmmnClCode-분류코드 정보 변경|julim */
UPDATE tb_code_ctgr
SET ctgr_nm = IF(ctgr_nm = #{ctgrNm}, ctgr_nm, #{ctgrNm})
, dscrp = IF(dscrp = #{dscrp}, dscrp, #{dscrp})
, use_yn = IF(use_yn = #{useYn}, use_yn, #{useYn})
, mdfcn_dt = NOW()
, mdfr = #{mdfr}
WHERE ctgr_id = #{ctgrId}
</update>
<delete id="deleteCmmnClCode">
/* code-cfn-mysql-mapper|deleteCmmnClCode-분류코드 정보 삭제|julim */
DELETE
FROM tb_code_ctgr
WHERE ctgr_id = #{ctgrId}
</delete>
</mapper>

@ -1,115 +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.framework.biz.mng.code.dao.CodeDtlMgtMapper">
<!-- *************************************************************************************************************
* tb_cmn_code : 공통 코드
************************************************************************************************************** -->
<sql id="sqlCmmnDtlCode">
SELECT cdc.grp_id
, xcc.grp_nm
, cdc.code
, cdc.code_val
, cdc.dscrp
, cdc.etc_1
, cdc.etc_2
, cdc.etc_3
, cdc.srt_ord
, cdc.use_yn
, cdc.reg_dt
, cdc.rgtr
, cdc.mdfcn_dt
, cdc.mdfr
FROM tb_cmn_code cdc
JOIN tb_code_grp xcc
ON cdc.grp_id = xcc.grp_id
<where>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(ctgrId)">
AND xcc.ctgr_id = #{ctgrId}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(grpId)">
AND INSTR(cdc.grp_id, #{grpId}) > 0
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(grpNm)">
AND INSTR(xcc.grp_nm, #{grpNm}) > 0
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(code)">
AND INSTR(cdc.code, #{code}) > 0
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(codeVal)">
AND INSTR(cdc.code_val, #{codeVal}) > 0
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(useYn)">
AND cdc.use_yn = #{useYn}
</if>
</where>
</sql>
<select id="selectCmmnDtlCodes" resultType="cokr.xit.fims.framework.biz.mng.code.XitDetailCodeMngVO">
/* code-dtl-mysql-mapper|selectCmmnDtlCodes-코드 목록 조회|julim */
<include refid="sqlCmmnDtlCode"/>
</select>
<select id="selectCmmnDtlCode" resultType="cokr.xit.fims.framework.biz.mng.code.XitDetailCodeMngVO">
/* /* code-dtl-mysql-mapper|selectCmmnDtlCode-코드 정보 조회|julim */
<include refid="sqlCmmnDtlCode"/>
</select>
<insert id="insertCmmnDtlCode">
/* code-dtl-mysql-mapper|insertCmmnDtlCode-코드 정보 등록|julim */
INSERT
INTO tb_cmn_code (
grp_id
, code
, code_val
, dscrp
, etc_1
, etc_2
, etc_3
, srt_ord
, use_yn
, reg_dt
, rgtr
) VALUE (
#{grpId}
, #{code}
, #{codeVal}
, #{dscrp}
, #{etc1}
, #{etc2}
, #{etc3}
, #{srtOrd}
, #{useYn}
, NOW()
, #{rgtr}
)
</insert>
<update id="updateCmmnDtlCode">
/* code-dtl-mysql-mapper|updateCmmnDtlCode-코드 정보 변경|julim */
UPDATE tb_cmn_code
SET code_val = IF(code_val = #{grpNm}, code_val, #{codeVal})
, dscrp = IF(dscrp = #{dscrp}, dscrp, #{dscrp})
, etc_1 = IF(etc_1 = #{etc1}, etc_1, #{etc1})
, etc_2 = IF(etc_2 = #{etc2}, etc_2, #{etc2})
, etc_3 = IF(etc_3 = #{etc3}, etc_3, #{etc3})
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(srtOrd)">
, srt_ord = IF(srt_ord = #{srtOrd}, srt_ord, #{srtOrd})
</if>
, use_yn = IF(use_yn = #{useYn}, use_yn, #{useYn})
, mdfcn_dt = NOW()
, mdfr = #{mdfr}
WHERE grp_id = #{grpId}
AND code = #{code}
</update>
<delete id="deleteCmmnDtlCode">
/* code-dtl-mysql-mapper|deleteCmmnDtlCode-코드 정보 삭제|julim */
DELETE
FROM tb_cmn_code
WHERE grp_id = #{grpId}
AND code = #{code}
</delete>
</mapper>

@ -1,92 +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.framework.biz.mng.code.dao.CodeGrpMgtMapper">
<!-- *************************************************************************************************************
* tb_code_grp : 그룹 코드
************************************************************************************************************** -->
<sql id="sqlCmmnCode">
SELECT xcc.ctgr_id
, xccc.ctgr_nm
, xcc.grp_id
, xcc.grp_nm
, xcc.dscrp
, xcc.use_yn
, xcc.reg_dt
, xcc.rgtr
, xcc.mdfcn_dt
, xcc.mdfr
FROM tb_code_grp xcc
JOIN tb_code_ctgr xccc
ON xcc.ctgr_id = xccc.ctgr_id
<where>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(ctgrId)">
AND xcc.ctgr_id = #{ctgrId}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(grpId)">
AND INSTR(xcc.grp_id, #{grpId}) > 0
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(grpNm)">
AND INSTR(xcc.grp_nm, #{grpNm}) > 0
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(useYn)">
AND xcc.use_yn = #{useYn}
</if>
</where>
</sql>
<select id="selectCmmnGrpCodes" resultType="cokr.xit.fims.framework.biz.mng.code.XitCmmnCodeMngVO">
/* code-grp-mysql-mapper|selectCmmnGrpCodes-코드그룹 목록 조회|julim */
<include refid="sqlCmmnCode"/>
ORDER BY xcc.ctgr_id, xcc.grp_id
</select>
<select id="selectCmmnGrpCode" resultType="cokr.xit.fims.framework.biz.mng.code.XitCmmnCodeMngVO">
/* code-grp-mysql-mapper|selectCmmnGrpCode-코드그룹 정보 조회|julim */
<include refid="sqlCmmnCode"/>
</select>
<insert id="insertCmmnGrpCode">
/* code-grp-mysql-mapper|insertCmmnGrpCode-코드그룹 정보 등록|julim */
INSERT
INTO tb_code_grp (
ctgr_id
, grp_id
, grp_nm
, dscrp
, use_yn
, reg_dt
, rgtr
) VALUE (
#{ctgrId}
, #{grpId}
, #{grpNm}
, #{dscrp}
, #{useYn}
, NOW()
, #{rgtr}
)
</insert>
<update id="updateCmmnGrpCode">
/* code-grp-mysql-mapper|updateCmmnGrpCode-코드그룹 정보 변경|julim */
UPDATE tb_code_grp
SET grp_nm = IF(grp_nm = #{grpNm}, grp_nm, #{grpNm})
, dscrp = IF(dscrp = #{dscrp}, dscrp, #{dscrp})
, use_yn = IF(use_yn = #{useYn}, use_yn, #{useYn})
, mdfcn_dt = NOW()
, mdfr = #{mdfr}
WHERE ctgr_id = #{ctgrId}
AND grp_id = #{grpId}
</update>
<delete id="deleteCmmnGrpCode">
/* code-grp-mysql-mapper|deleteCmmnGrpCode-코드그룹 정보 삭제|julim */
DELETE
FROM tb_code_grp
WHERE ctgr_id = #{ctgrId}
AND grp_id = #{grpId}
</delete>
</mapper>

@ -1,102 +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.framework.biz.mng.code.dao.ZipCodeMgtMapper">
<!-- *************************************************************************************************************
* xit_zip : 우편번호
************************************************************************************************************** -->
<sql id="sqlZip">
SELECT zip
, sn
, ctprvn_nm
, sgg_nm
, emd_nm
, li_buld_nm
, lnbr_dong_ho
, reg_dt
, rgtr
, mdfcn_dt
, mdfr
FROM xit_zip
<where>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(zip)">
AND zip = #{zip}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(sn)">
AND sn = #{sn}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(ctprvnNm)">
AND ctprvn_nm = #{ctprvnNm}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(sggNm)">
AND sgg_nm = #{sggNm}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(emdNm)">
AND emd_nm = #{emdNm}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(liBuldNm)">
AND li_buld_nm = #{liBuldNm}
</if>
</where>
</sql>
<select id="selectZips" resultType="cokr.xit.fims.framework.biz.mng.code.XitZipCodeMngVO">
/* zip-mysql-mapper|selectZips-우편번호 목록 조회|julim */
<include refid="sqlZip"/>
</select>
<select id="selectZip" resultType="cokr.xit.fims.framework.biz.mng.code.XitZipCodeMngVO">
/* zip-mysql-mapper|selectZips-우편번호 정보 조회|julim */
<include refid="sqlZip"/>
</select>
<insert id="insertZip">
/* zip-mysql-mapper|insetZip-우편번호 정보 등록|julim */
INSERT
INTO xit_zip (
zip
, sn
, ctprvn_nm
, sgg_nm
, emd_nm
, li_buld_nm
, lnbr_dong_ho
, reg_dt
, rgtr
) VALUES (
#{zip}
, #{sn}
, #{ctprvnNm}
, #{sggNm}
, #{emdNm}
, #{liBuldNm}
, #{lnbrDongHo}
, NOW()
, #{rgtr}
)
</insert>
<update id="updateZip">
/* zip-mysql-mapper|updateZip-우편번호 정보 변경|julim */
UPDATE xit_zip
SET ctprvn_nm = IF(ctprvn_nm = #{ctprvnNm}, ctprvn_nm, #{ctprvnNm})
, sgg_nm = IF(sgg_nm = #{sggNm}, sgg_nm, #{sggNm})
, emd_nm = IF(emd_nm = #{emdNm}, emd_nm, #{emdNm})
, li_buld_nm = IF(li_buld_nm = #{liBuldNm}, li_buld_nm, #{liBuldNm})
, lnbr_dong_ho = IF(lnbr_dong_ho = #{lnbrDongHo}, lnbr_dong_ho, #{lnbrDongHo})
, mdfcn_dt = NOW()
, mdfr = #{mdfr}
WHERE zip = #{zip}
AND sn = #{sn}
</update>
<delete id="deleteZip">
/* zip-mysql-mapper|deleteZip-우편번호 정보 삭제|julim */
DELETE
FROM xit_zip
WHERE zip = #{zip}
AND sn = #{sn}
</delete>
</mapper>

@ -1,167 +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.framework.biz.mng.menu.dao.MenuMgtMapper">
<!-- *************************************************************************************************************
* tb_menu : 메뉴 정보
************************************************************************************************************** -->
<sql id="sqlMenuInfo">
SELECT menu_no
, srt_ord
, menu_nm
, action
, prnt_no
, dscrp
, img_cnf AS relateImagePath
, img_nm
, pgrm_file_nm
FROM tb_menu
<where>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(menuNo)">
AND menu_no LIKE CONCAT(#{menuNo}, '%')
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(prntNo)">
AND prnt_no = #{prntNo}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(menuNm)">
AND INSTR(menu_nm, #{menuNm}) > 0
</if>
</where>
ORDER BY menu_no
</sql>
<select id="selectMenuInfos" resultType="cokr.xit.fims.framework.biz.mng.menu.XitMenuInfoVO">
/* menu-mysql-mapper|selectMenuInfos-메뉴 목록 조회|julim */
<include refid="sqlMenuInfo"/>
</select>
<select id="selectMenuInfo" resultType="cokr.xit.fims.framework.biz.mng.menu.XitMenuInfoVO">
/* menu-mysql-mapper|selectMenuInfo-메뉴 정보 조회|julim */
<include refid="sqlMenuInfo"/>
</select>
<select id="selectMenuCreatDtls" resultType="cokr.xit.fims.framework.biz.mng.menu.XitMenuInfoVO">
/* menu-mysql-mapper|selectMenuCreatDtls-메뉴생성내역 권한 데이터 조회|julim */
SELECT menu_no
FROM tb_menu
<where>
AND menu_no = #{menuNo}
</where>
</select>
<insert id="insertMenuInfo" parameterType="cokr.xit.fims.framework.biz.mng.menu.XitMenuInfoVO">
/* menu-mysql-mapper|insertMenuInfo-메뉴 정보 등록|julim */
INSERT
INTO tb_menu (
menu_no
, menu_nm
, action
, pgrm_file_nm
, prnt_no
, srt_ord
, dscrp
, img_cnf
, img_nm
) VALUES (
#{menuNo}
, #{menuNm}
, #{action}
, #{pgrmFileNm}
, #{prntNo}
, #{srtOrd}
, #{dscrp}
, #{imgCnf}
, #{imgNm}
)
</insert>
<update id="updateMenuInfo" parameterType="cokr.xit.fims.framework.biz.mng.menu.XitMenuInfoVO">
/* menu-mysql-mapper|updateyMenuInfo-메뉴 정보 변경|julim */
UPDATE tb_menu
SET menu_nm = IF(menu_nm = #{menuNm}, menu_nm, #{menuNm})
, action = IF(action = #{action}, action, #{action})
, pgrm_file_nm = IF(pgrm_file_nm = #{pgrmFileNm}, pgrm_file_nm, #{pgrmFileNm})
, prnt_no = IF(prnt_no = #{prntNo}, prnt_no, #{prntNo})
, srt_ord = IF(srt_ord = #{srtOrd}, srt_ord, #{srtOrd})
, dscrp = IF(dscrp = #{dscrp}, dscrp, #{dscrp})
, img_cnf = IF(img_cnf = #{imgCnf}, img_cnf, #{imgCnf})
, img_nm = IF(img_nm = #{imgNm}, img_nm, #{imgNm})
WHERE menu_no = #{menuNo}
</update>
<delete id="deleteMenuInfo" parameterType="string">
/* menu-mysql-mapper|deletetMenuInfo-메뉴 정보 삭제|julim */
DELETE
FROM tb_menu
WHERE menu_no = #{menuNo}
</delete>
<delete id="deleteAllMenuInfo" parameterType="string">
/* menu-mysql-mapper|deletetAllMenuInfo-메뉴 정보 삭제|julim */
DELETE
FROM tb_menu
</delete>
<delete id="deleteMenuCreatDtlsList">
/* menu-mysql-mapper|deleteMenuCreatDtlsList-메뉴생성내역 권한 데이터 삭제|julim */
DELETE
FROM tb_menu
WHERE menu_no = #{menuNo}
</delete>
<delete id="deleteAllMenuCreatDtlsList">
/* menu-mysql-mapper|deleteAllMenuCreatDtlsList-메뉴생성내역 전체데이터 삭제|julim */
DELETE
FROM tb_menu
</delete>
<select id="findListOfMenuInfo" resultType="cokr.xit.fims.framework.biz.mng.menu.MenuCreateMngVO">
/** XitMenuCreateMngMapper.findListOfMenuInfo */
/** 메뉴목록 조회 */
SELECT
A.MENU_NO AS "menuNo"
, A.srt_ord AS "srtOrd"
, A.MENU_NM AS "menuNm"
, A.prnt_no AS "prntNo"
, '' AS "chkYeoBu"
FROM tb_menu A
WHERE A.MENU_NO &gt; 0
ORDER BY A.srt_ord
</select>
<select id="findUserScrtySetupByUsr" resultType="cokr.xit.fims.framework.biz.mng.menu.MenuCreateMngVO">
/** XitMenuCreateMngMapper.findUserScrtySetupByUsr */
/** 사용자별 사용자보안설정 데이터 조회 */
SELECT auth_Id AS "authId"
FROM TB_AUTH_USER
WHERE USER_ID = (
SELECT USER_ID
FROM XIT_VW_USER_MASTR
WHERE USER_ACNT = #{searchKeyword}
)
</select>
</mapper>

@ -1,93 +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.framework.biz.mng.user.dao.XitUserAbsntMngMapper">
<!-- SQL 페이징 코드 -->
<sql id="pageBefore">
SELECT LIST.* FROM(
</sql>
<sql id="pageAfter">
) LIST LIMIT #{firstIndex}, #{recordCountPerPage}
</sql>
<sql id="findList_SELECT">
SELECT X.USER_ID AS "userId"
,X.USER_ACNT AS "userAcnt"
,X.USER_NM AS "userNm"
,X.USER_ABSNCE_YN AS "userAbsnceYn"
,X.REG_YN AS "regYn"
,X.MDFR AS "mdfr"
,X.MDFCN_DT AS "mdfcnDt"
</sql>
<sql id="findList_FROM">
FROM (
SELECT A.USER_ID
,A.USER_ACNT
,A.USER_NM
,(CASE
WHEN B.USER_ABSNCE_YN IS NULL THEN 'N'
ELSE B.USER_ABSNCE_YN
END)
AS USER_ABSNCE_YN
,(CASE WHEN B.USER_ABSNCE_YN IS NULL THEN 'N' ELSE 'Y' END)
AS REG_YN
,MDFR
,MDFCN_DT
FROM tb_user A
LEFT OUTER JOIN XIT_USER_ABSNCE B ON A.USER_ID = B.USER_ID
) X
</sql>
<sql id="findList_WHERE">
<if test="'1'.toString() == searchCondition">
AND X.USER_NM LIKE CONCAT('%',#{searchKeyword},'%')
</if>
<if test="'A'.toString() != selAbsnceAt">
AND X.USER_ABSNCE_YN = #{selAbsnceAt}
</if>
</sql>
<select id="findList" resultType="cokr.xit.fims.framework.biz.mng.user.XitUserAbsntMngVO">
/** XitUserAbsntMngMapper.findList */
/** 사용자부재관리 목록 조회 */
<if test="searchGubun == 'list'">
<include refid="pageBefore" />
</if>
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE 1 = 1
<include refid="findList_WHERE"/>
ORDER BY MDFCN_DT DESC
<if test="searchGubun == 'list'">
<include refid="pageAfter" />
</if>
</select>
<select id="findListTotCnt" resultType="int">
/** XitUserAbsntMngMapper.findListTotCnt */
/** 사용자부재관리 목록 총건수 조회 */
SELECT COUNT(1) AS "CNT"
<include refid="findList_FROM"/>
WHERE 1=1
<include refid="findList_WHERE"/>
</select>
<select id="findView" resultType="cokr.xit.fims.framework.biz.mng.user.XitUserAbsntMngVO">
/** XitUserAbsntMngMapper.findView */
/** 사용자부재관리 상세정보 조회 */
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE X.USER_ID = #{userId}
</select>
</mapper>

@ -1,113 +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.framework.biz.mng.user.dao.XitUserEtcOptMngMapper">
<!-- SQL 페이징 코드 -->
<sql id="pageBefore">
SELECT LIST.* FROM(
</sql>
<sql id="pageAfter">
) LIST LIMIT #{firstIndex}, #{recordCountPerPage}
</sql>
<sql id="findList_SELECT">
SELECT A.USER_ID AS "userId"
,A.USER_ACNT AS "userAcnt"
,A.USER_NM AS "userNm"
,B.JOB_DATA_AUTHOR AS "jobDataAuthor"
,B.USER_MANAGE_AUTHOR AS "userManageAuthor"
,B.ELCTRNSANCTN_USE_YN AS "elctrnsanctnUseYn"
,B.JOB_CONFM_AUTHOR_YN AS "jobConfmAuthorYn"
</sql>
<sql id="findList_FROM">
FROM tb_user A
LEFT JOIN XIT_USER_ETC_OPTION B ON A.USER_ID=B.USER_ID
</sql>
<sql id="findList_WHERE">
<choose>
<when test="'0'.toString() == searchCondition">
AND A.USER_ACNT LIKE #{searchKeyword}
</when>
<when test="'1'.toString() == searchCondition">
AND A.USER_NM LIKE CONCAT('%',#{searchKeyword},'%')
</when>
<when test="'2'.toString() == searchCondition">
AND A.GRP_ID = #{searchKeyword}
</when>
</choose>
</sql>
<select id="findList" resultType="cokr.xit.fims.framework.biz.mng.user.XitUserEtcOptMngVO">
/** XitUserEtcOptMngMapper.findList */
/** 사용자기타옵션관리 목록 조회 */
<if test="searchGubun == 'list'">
<include refid="pageBefore" />
</if>
<include refid="findList_SELECT"/>
<include refid="findList_FROM"/>
WHERE 1 = 1
<include refid="findList_WHERE"/>
ORDER BY A.USER_ACNT
<if test="searchGubun == 'list'">
<include refid="pageAfter" />
</if>
</select>
<select id="findListTotCnt" resultType="int">
/** XitUserEtcOptMngMapper.findListTotCnt */
/** 사용자기타옵션관리 목록 총건수 조회 */
SELECT COUNT(1) AS "CNT"
<include refid="findList_FROM"/>
WHERE 1=1
<include refid="findList_WHERE"/>
</select>
<select id="findView" resultType="cokr.xit.fims.framework.biz.mng.user.XitUserEtcOptMngVO">
/** XitUserEtcOptMngMapper.findView */
/** 사용자기타옵션관리 상세정보 조회 */
SELECT USER_ID AS "uniqId"
,'USR03' AS "userTy"
,A.USER_ID AS "emplyrUniqId"
,A.USER_ACNT AS "emplyrId"
,A.USER_NM AS "emplyrNm"
,A.PASSWD AS "passwd"
,A.PASSWD_HINT AS "passwdHint"
,A.PASSWD_NSR AS "passwdNsr"
,A.EMP_NO AS "empNo"
,A.GENDER AS "gender"
,A.BRDT AS "brdt"
,A.AREA_NO AS "areaNo"
,A.FXNO AS "fxno"
,A.ADDR AS "addr"
,A.DADDR AS "daddr"
,A.ZIP AS "zip"
,A.TELNO AS "telno"
,A.MBL_TELNO AS "mblTelno"
,A.EML_ADRS AS "emlAdrs"
,A.POS_NM AS "posNm"
,A.GRP_ID AS "grpId"
,A.ORG_ID AS "orgId"
,A.NSTT_CD AS "nsttCd"
,A.STTS AS "stts"
,A.REG_DT AS "regDt"
,A.CRTFC_DN AS "crtfcDn"
,B.JOB_DATA_AUTHOR AS "jobDataAuthor"
,B.USER_MANAGE_AUTHOR AS "userManageAuthor"
,B.ELCTRNSANCTN_USE_YN AS "elctrnsanctnUseYn"
,B.JOB_CONFM_AUTHOR_YN AS "jobConfmAuthorYn"
<include refid="findList_FROM"/>
WHERE A.USER_ID = #{uniqId}
</select>
</mapper>

@ -1,396 +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.framework.biz.mng.user.dao.UserMgtMapper">
<!-- *************************************************************************************************************
* tb_user : 업무사용자 정보
************************************************************************************************************** -->
<select id="selectUsers" resultType="cokr.xit.fims.framework.biz.mng.user.XitUserInfoVO">
/* user-mysql-mapper|selectUsers-사용자 목록 조회|julim */
SELECT xui.USER_ID AS uniqId
, 'USR03' AS userTy
, xui.USER_ACNT
, xui.user_nm
, xui.eml_adrs
, xui.area_no
, xui.mbl_telno
, xui.grp_id
, xui.stts
, xui.REG_DT
, cdc.code_val AS sttsNm
FROM tb_user xui
LEFT OUTER JOIN tb_cmn_code cdc
ON cdc.grp_id = 'XIT013'
AND xui.stts = cdc.code
<where>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(sbscrbSttus)">
AND xui.stts = #{sbscrbSttus}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(userAcnt)">
AND INSTR(xui.USER_ACNT, #{userAcnt}) > 0
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(userNm)">
AND INSTR(xui.user_nm, #{userNm}) > 0
</if>
</where>
ORDER BY REG_DT DESC
</select>
<select id="selectUser" resultType="cokr.xit.fims.framework.biz.mng.user.XitUserInfoVO">
/* user-mysql-mapper|selectUser-사용자 정보 조회|julim */
SELECT USER_ID AS uniqId
, 'USR03' AS userTy
, USER_ACNT AS emplyrId
, user_nm AS emplyrNm
, passwd
, passwd_hint
, passwd_nsr
, emp_no
, gender
, brdt
, area_no
, fxno
, addr
, daddr
, zip
, telno
, mbl_telno
, eml_adrs
, pos_nm
, grp_id
, org_id
, nstt_cd
, stts
, REG_DT
, crtfc_dn
FROM tb_user
WHERE USER_ID = #{uniqId}
</select>
<insert id="insertUserInfo" parameterType="cokr.xit.fims.framework.biz.mng.user.XitUserInfoVO">
/* user-mysql-mapper|insertUserInfo-사용자정보 등록|julim */
INSERT
INTO tb_user(
USER_ID
, USER_ACNT
, org_id
, user_nm
, passwd
, emp_no
, gender
, brdt
, fxno
, addr
, passwd_hint
, passwd_nsr
, area_no
, daddr
, zip
, telno
, mbl_telno
, eml_adrs
, pos_nm
, grp_id
, nstt_cd
, stts
, crtfc_dn
, LOCK_YN
, LOCK_CNT
, USE_YN
, REG_DT
) VALUES (
#{userId}
, #{userAcnt}
, #{orgId}
, #{userNm}
, #{passwd}
, #{empNo}
, #{gender}
, #{brdt}
, #{fxno}
, #{addr}
, #{passwdHint}
, #{passwdNsr}
, #{areaNo}
, #{daddr}
, #{zip}
, #{telno}
, #{mblTelno}
, #{emlAdrs}
, #{posNm}
, #{grpId}
, #{nsttCd}
, #{stts}
, #{crtfcDn}
, 'N'
, 0
, 'Y'
, NOW()
)
</insert>
<update id="updateUserInfo" parameterType="cokr.xit.fims.framework.biz.mng.user.XitUserInfoVO">
/* user-mysql-mapper|updateUserInfo-사용자정보 변경|julim */
UPDATE tb_user
<set>
org_id = IF(org_id = #{orgId}, org_id, #{orgId})
, user_nm = IF(user_nm = #{userNm}, user_nm, #{userNm})
, emp_no = IF(emp_no = #{empNo}, emp_no, #{empNo})
, gender = IF(gender = #{gender}, gender, #{gender})
, brdt = IF(brdt = #{brdt}, brdt, #{brdt})
, fxno = IF(fxno = #{fxno}, fxno, #{fxno})
, zip = IF(zip = #{zip}, zip, #{zip})
, addr = IF(addr = #{addr}, addr, #{addr})
, daddr = IF(daddr = #{daddr}, daddr, #{daddr})
, area_no = IF(area_no = #{areaNo}, area_no, #{areaNo})
, telno = IF(telno = #{telno}, telno, #{telno})
, mbl_telno = IF(mbl_telno = #{mblTelno}, mbl_telno, #{mblTelno})
, eml_adrs = IF(eml_adrs = #{emlAdrs}, eml_adrs, #{emlAdrs})
, pos_nm = IF(pos_nm = #{posNm}, pos_nm, #{posNm})
, grp_id = IF(grp_id = #{grpId}, grp_id, #{grpId})
, nstt_cd = IF(nstt_cd = #{nsttCd}, nstt_cd, #{nsttCd})
, stts = IF(stts = #{stts}, stts, #{stts})
, crtfc_dn = IF(crtfc_dn = #{crtfcDn}, crtfc_dn, #{crtfcDn})
</set>
WHERE USER_ID = #{userId}
</update>
<delete id="deleteUserInfo" parameterType="string">
/* user-mysql-mapper|deleteUserInfo-사용자정보 삭제|julim */
DELETE
FROM tb_user
WHERE USER_ID = #{userId}
</delete>
<select id="selectCheckUserInfo" parameterType="string" resultType="caseMap">
/* user-mysql-mapper|selectCheckUserInfo-사용자정보 USER_ID, grp_id 조회|julim */
SELECT xui.USER_ID
, xui.org_id
, xui.grp_id
, xui.nstt_cd
, ueo.user_manage_author
, ueo.elctrnsanctn_use_yn
FROM tb_user xui
JOIN xit_user_etc_option ueo
ON xui.USER_ID = ueo.USER_ID
WHERE xui.USER_ID = #{userId}
</select>
<!-- *************************************************************************************************************
* 사용자 보안 설정
************************************************************************************************************** -->
<select id="selectUserScrtySetups" parameterType="cokr.xit.fims.framework.biz.mng.user.XitUserScrtySetupVO" resultType="cokr.xit.fims.framework.biz.mng.user.XitUserScrtySetupVO">
/* user-mysql-mapper|selectUserScrtySetups-사용자보안설정 목록 조회|julim */
SELECT USER_ID
, auth_Id
FROM tb_auth_user
<where>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(userId)">
AND USER_ID = #{userId}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(authId)">
AND auth_Id = #{authId}
</if>
</where>
</select>
<select id="selectUserScrtySetup" parameterType="string" resultType="cokr.xit.fims.framework.biz.mng.user.XitUserScrtySetupVO">
/* user-mysql-mapper|selectUserScrtySetup-사용자보안설정 조회|julim */
SELECT USER_ID
, auth_Id
FROM tb_auth_user
WHERE USER_ID = #{userId}
</select>
<insert id="insertUserScrtySetup" parameterType="cokr.xit.fims.framework.biz.mng.user.XitUserScrtySetupVO">
/* user-mysql-mapper|insertUserScrtySetup-사용자보안설정 등록|julim */
INSERT
INTO tb_auth_user (
USER_ID
, auth_Id
) VALUES (
#{userId}
, #{authId}
)
</insert>
<update id="updateUserScrtySetup" parameterType="cokr.xit.fims.framework.biz.mng.user.XitUserScrtySetupVO">
/* user-mysql-mapper|updateUserScrtySetup-사용자보안설정 변경|julim */
UPDATE tb_auth_user
SET auth_Id = IF(auth_Id = #{authId}, auth_Id, #{authId})
WHERE USER_ID = #{userId}
</update>
<delete id="deleteUserScrtySetup" parameterType="string">
/* user-mysql-mapper|deleteUserScrtySetup-사용자보안설정 삭제|julim */
DELETE
FROM tb_auth_user
WHERE USER_ID = #{userId}
</delete>
<!-- *************************************************************************************************************
* xit_user_etc_option : 사용자 기타 옵션
************************************************************************************************************** -->
<select id="selectUserEtcOptions" parameterType="cokr.xit.fims.framework.biz.mng.user.XitUserEtcOptionVO" resultType="cokr.xit.fims.framework.biz.mng.user.XitUserEtcOptionVO">
/* user-mysql-mapper|selectUserEtcOptions-사용자기타옵션 목록 조회|julim */
SELECT USER_ID
, job_data_author
, user_manage_author
, elctrnsanctn_use_yn
, job_confm_author_yn
FROM xit_user_etc_option
<where>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(userId)">
AND USER_ID = #{userId}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(jobDataAuthor)">
AND job_data_author = #{jobDataAuthor}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(userManageAuthor)">
AND user_manage_author = #{userManageAuthor}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(elctrnsanctnUseYn)">
AND elctrnsanctn_use_yn = #{elctrnsanctnUseYn}
</if>
<if test="@cokr.xit.fims.framework.core.utils.XitCmmnUtil@notEmpty(jobConfmAuthorYn)">
AND job_confm_author_yn = #{jobConfmAuthorYn}
</if>
</where>
</select>
<select id="selectUserEtcOption" parameterType="string" resultType="cokr.xit.fims.framework.biz.mng.user.XitUserEtcOptionVO">
/* user-mysql-mapper|selectUserEtcOption-사용자기타옵션 조회|julim */
SELECT USER_ID
, job_data_author
, user_manage_author
, elctrnsanctn_use_yn
, job_confm_author_yn
FROM xit_user_etc_option
WHERE USER_ID = #{userId}
</select>
<insert id="insertUserEtcOption" parameterType="cokr.xit.fims.framework.biz.mng.user.XitUserEtcOptionVO">
/* user-mysql-mapper|insertUserEtcOption-사용자기타옵션 등록|julim */
INSERT
INTO xit_user_etc_option(
USER_ID
, job_data_author
, user_manage_author
, elctrnsanctn_use_yn
, job_confm_author_yn
) VALUES (
#{userId}
, #{jobDataAuthor }
, #{userManageAuthor }
, #{elctrnsanctnUseYn}
, #{jobConfmAuthorYn}
)
</insert>
<update id="updateUserEtcOption" parameterType="cokr.xit.fims.framework.biz.mng.user.XitUserEtcOptionVO">
/* user-mysql-mapper|updateUserEtcOption-사용자기타옵션 변경|julim */
UPDATE xit_user_etc_option
SET job_data_author = #{jobDataAuthor}
, user_manage_author = #{userManageAuthor }
, elctrnsanctn_use_yn= #{elctrnsanctnUseYn}
, job_confm_author_yn= #{jobConfmAuthorYn}
WHERE USER_ID = #{userId}
</update>
<delete id="deleteUserEtcOption" parameterType="string">
/* user-mysql-mapper|deleteUserEtcOption-사용자기타옵션 삭제|julim */
DELETE
FROM XIT_USER_ETC_OPTION
WHERE USER_ID = #{userId}
</delete>
<!-- *************************************************************************************************************
* xit_user_info_change_dtls : 사용자 정보 변경 이력
************************************************************************************************************** -->
<insert id="insertUserInfoChangeDtls" parameterType="string">
/* user-mysql-mapper|insertUserInfoChangeDtls-사용자정보변경이력내역 등록|julim */
INSERT
INTO xit_user_info_change_dtls (
USER_ID
, USER_ACNT
, change_de
, org_id
, grp_id
, emp_no
, gender
, brdt
, fxno
, addr
, area_no
, daddr
, zip
, telno
, mbl_telno
, eml_adrs
, nstt_cd
, stts
) SELECT USER_ID
, USER_ACNT
, DATE_FORMAT(NOW(), '%Y%m%d%H%i%s')
, org_id
, grp_id
, emp_no
, gender
, brdt
, fxno
, addr
, area_no
, daddr
, zip
, telno
, mbl_telno
, eml_adrs
, nstt_cd
, stts
FROM tb_user
WHERE USER_ID = #{userId}
</insert>
<delete id="deleteUserInfoChangeDtlsList">
/* user-mysql-mapper|deleteUserInfoChangeDtlsList-사용자정보변경이력 내역 목록 삭제|julim */
DELETE
FROM xit_user_info_change_dtls
WHERE USER_ID = #{userId}
</delete>
</mapper>

@ -1,81 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!--
cacheEnabled 설정에서 각 mapper 에 설정된 캐시를 전역적으로 사용할지 말지에 대한 여부 true | false true
lazyLoadingEnabled 늦은 로딩을 사용할지에 대한 여부. 사용하지 않는다면 모두 즉시 로딩할 것이다. 이 값은 fetchType 속성을 사용해서 대체할 수 있다. true | false false
aggressiveLazyLoading 활성화 상태로 두게 되면 늦은(lazy) 로딩 프로퍼티를 가진 객체는 호출에 따라 로드될 것이다. 반면에 개별 프로퍼티는 요청할때 로드된다. true | false true
multipleResultSetsEnabled 한개의 구문에서 여러개의 ResultSet 을 허용할지의 여부(드라이버가 해당 기능을 지원해야 함) true | false true
useColumnLabel 칼럼명 대신에 칼럼라벨을 사용. 드라이버마다 조금 다르게 작동한다. 문서와 간단한 테스트를 통해 실제 기대하는 것처럼 작동하는지 확인해야 한다. true | false true
useGeneratedKeys 생성키에 대한 JDBC 지원을 허용. 지원하는 드라이버가 필요하다. true 로 설정하면 생성키를 강제로 생성한다. 일부 드라이버(예를들면, Derby)에서는 이 설정을 무시한다. true | false False
autoMappingBehavior MyBatis 가 칼럼을 필드/프로퍼티에 자동으로 매핑할지와 방법에 대해 명시. PARTIAL 은 간단한 자동매핑만 할뿐, 내포된 결과에 대해서는 처리하지 않는다. FULL 은 처리가능한 모든 자동매핑을 처리한다. NONE, PARTIAL, FULL PARTIAL
defaultExecutorType 디폴트 실행자(executor) 설정. SIMPLE 실행자는 특별히 하는 것이 없다. REUSE 실행자는 PreparedStatement 를 재사용한다. BATCH 실행자는 구문을 재사용하고 수정을 배치처리한다. SIMPLE REUSE BATCH SIMPLE
defaultStatementTimeout 데이터베이스로의 응답을 얼마나 오래 기다릴지를 판단하는 타임아웃을 셋팅 양수 셋팅되지 않음(null)
safeRowBoundsEnabled 중첩구문내 RowBound 사용을 허용 true | false False
mapUnderscoreToCamelCase 전통적인 데이터베이스 칼럼명 형태인 A_COLUMN을 CamelCase형태의 자바 프로퍼티명 형태인 aColumn으로 자동으로 매핑하도록 함 true | false False
localCacheScope 마이바티스는 순환참조를 막거나 반복된 쿼리의 속도를 높히기 위해 로컬캐시를 사용한다. 디폴트 설정인 SESSION을 사용해서 동일 세션의 모든 쿼리를 캐시한다. localCacheScope=STATEMENT 로 설정하면 로컬 세션은 구문 실행할때만 사용하고 같은 SqlSession에서 두개의 다른 호출사이에는 데이터를 공유하지 않는다. SESSION | STATEMENT SESSION
jdbcTypeForNull JDBC타입을 파라미터에 제공하지 않을때 null값을 처리한 JDBC타입을 명시한다. 일부 드라이버는 칼럼의 JDBC타입을 정의하도록 요구하지만 대부분은 NULL, VARCHAR 나 OTHER 처럼 일반적인 값을 사용해서 동작한다. JdbcType 이늄. 대부분은 NULL, VARCHAR 나 OTHER 를 공통적으로 사용한다. OTHER
lazyLoadTriggerMethods 늦은 로딩을 야기하는 객체의 메소드를 명시 메소드 이름을 나열하고 여러개일 경우 콤마(,) 로 구분 equals,clone,hashCode,toString
defaultScriptingLanguage 동적으로 SQL을 만들기 위해 기본적으로 사용하는 언어를 명시 타입별칭이나 패키지 경로를 포함한 클래스명 org.apache.ibatis.scripting.xmltags.XMLDynamicLanguageDriver
callSettersOnNulls 가져온 값이 null일때 setter나 맵의 put 메소드를 호출할지를 명시 Map.keySet() 이나 null값을 초기화할때 유용하다. int, boolean 등과 같은 원시타입은 null을 셋팅할 수 없다는 점은 알아두면 좋다. true | false false
logPrefix 마이바티스가 로거(logger) 이름에 추가할 접두사 문자열을 명시 문자열 셋팅하지 않음
logImpl 마이바티스가 사용할 로깅 구현체를 명시 이 설정을 사용하지 않으면 마이바티스가 사용할 로깅 구현체를 자동으로 찾는다. SLF4J | LOG4J | LOG4J2 | JDK_LOGGING | COMMONS_LOGGING | STDOUT_LOGGING | NO_LOGGING 셋팅하지 않음
proxyFactory 마이바티스가 늦은 로딩을 처리할 객체를 생성할 때 사용할 프록시 툴을 명시 CGLIB | JAVASSIST CGLIB
-->
<settings>
<!--
Settings 설정 옵션 사이트 참조
-.사이트주소: https://postitforhooney.tistory.com/entry/MyBatisSetting-Mybatis%EC%97%90%EC%84%9C-%ED%95%84%EC%9A%94%ED%95%9C-%EB%B6%80%EB%B6%84%EB%93%A4-setting%EC%9E%90%EB%A3%8C
-->
<setting name="mapUnderscoreToCamelCase" value="true"/>
<setting name="cacheEnabled" value="true" />
<setting name="jdbcTypeForNull" value="VARCHAR" /><!-- NULL / VARCHAR / OTHER-->
<setting name="callSettersOnNulls" value="true"/> <!-- resultType으로 Map Collection 지정 시 value가 null일 떄 컬럼 누락문제 해결을 위한 설정 -->
<setting name="lazyLoadingEnabled" value="false" />
<setting name="multipleResultSetsEnabled" value="true" />
<setting name="useColumnLabel" value="true" />
<setting name="useGeneratedKeys" value="false" />
<setting name="autoMappingBehavior" value="PARTIAL" /><!-- NONE / PARTIAL / FULL-->
<setting name="defaultExecutorType" value="SIMPLE" /><!-- SIMPLE / REUSE / BATCH-->
<setting name="defaultStatementTimeout" value="25" />
<setting name="safeRowBoundsEnabled" value="false" />
<setting name="localCacheScope" value="SESSION" /><!-- SESSION / STATEMENT-->
<setting name="lazyLoadTriggerMethods" value="equals,clone,hashCode,toString"/>
<setting name="aggressiveLazyLoading" value="true" />
</settings>
<typeAliases>
<typeAlias alias="egovMap" type="org.egovframe.rte.psl.dataaccess.util.EgovMap"/>
<typeAlias alias="dataobject" type="cokr.xit.foundation.data.DataObject"/>
<typeAlias alias="xitMap" type="cokr.xit.fims.framework.core.utils.XitMap"/>
<!-- Parameter에 선언시 Key 대소문자 구분X / resultType에 선언하면 Key가 소문자로 mapping -->
<typeAlias alias="caseMap" type="org.apache.commons.collections.map.CaseInsensitiveMap"/>
<typeAlias alias="insensitiveMap" type="org.springframework.util.LinkedCaseInsensitiveMap"/>
</typeAliases>
<!-- 오라클 timeStamp 컬럼 변환처리 -->
<!-- <typeHandlers> -->
<!-- <typeHandler handler="cokr.xit.fims.framework.core.utilsCustomDateHandler" javaType="java.util.Date" jdbcType="DATE"/> -->
<!-- </typeHandlers> -->
<typeHandlers>
<!-- java.sql.Timestamp 를 java.util.Date 형으로 반환 -->
<typeHandler javaType="java.sql.Timestamp" handler="org.apache.ibatis.type.DateTypeHandler"/>
<typeHandler javaType="java.sql.Time" handler="org.apache.ibatis.type.DateTypeHandler"/>
<typeHandler javaType="java.sql.Date" handler="org.apache.ibatis.type.DateTypeHandler"/>
<typeHandler handler="cokr.xit.fims.framework.support.mybatis.ObjectTypeHandler" javaType="java.lang.Object"/>
<typeHandler handler="cokr.xit.foundation.data.RowValueHandler" javaType="java.lang.Object"/>
</typeHandlers>
<plugins>
<!--<plugin interceptor="cokr.xit.foundation.data.paging.PagingSupport" />-->
<plugin interceptor="cokr.xit.fims.framework.support.mybatis.paging.OffsetLimitInterceptor">
<property name="dialectClass" value="cokr.xit.fims.framework.support.mybatis.paging.dialect.MySQLDialect"/>
</plugin>
</plugins>
</configuration>

@ -1,80 +0,0 @@
<%@ page language="java" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<%@ page import="java.util.HashMap, javax.servlet.http.HttpServletRequest, cokr.xit.foundation.data.Convert" %>
<%! private static final HashMap<String, String> titles = new HashMap<>();
static {
titles.put("404", "Page Not Found");
titles.put("sessionExpired", "Session Expired");
titles.put("invalidSession", "Invalid Session");
titles.put("accessDenied", "Access Denied");
titles.put("500", "Server Error");
}
private static void setTitle(HttpServletRequest hreq) {
String status = Convert.toString(hreq.getAttribute("status"));
if (status == "")
status = "500";
String title = titles.get(status);
if (title == null)
title = titles.get("500");
hreq.setAttribute("title", title);
}
%>
<% setTitle(request); %>
<c:if test="${json}"><%
response.setContentType("application/json; charset=UTF-8");
%>{
"path": "${path}",
"failed": true,
"status": "${status}",
"title": "${title}",
"message": "${message}",
"description": "${description}",
"stacktrace": "${stacktrace}"
}</c:if>
<c:if test="${!json}"><%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<jsp:include page="/WEB-INF/jsp/include/head.jsp" />
<style>
.misc-wrapper {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
min-height: calc(100vh - (1.625rem * 2));
text-align: center;
}
</style>
<body>
<!-- Content -->
<!-- Error -->
<div class="container-xxl container-p-y">
<div class="misc-wrapper">
<h2 class="mb-2 mx-2">${title} :(</h2>
<p class="mb-4 mx-2">죄송합니다. 😖</p>
<p class="mb-4 mx-2">${message}</p>
<a onclick="wctx.home();" class="btn btn-primary" href="javascript:void(0);">처음으로 돌아가기</a>
<a onclick="history.back();" class="btn btn-primary mt-2" href="javascript:void(0);" autofocus>이전으로 돌아가기</a>
<div class="mt-3">
<img
src="<c:url value="/resources/img/illustrations/page-misc-error-light.png"/>"
alt="page-misc-error-light"
width="500"
class="img-fluid"
data-app-dark-img="illustrations/page-misc-error-dark.png"
data-app-light-img="illustrations/page-misc-error-light.png"
/>
</div>
</div>
</div>
<!-- /Error -->
<!-- / Content -->
<jsp:include page="/WEB-INF/jsp/include/tail.jsp" />
<script>
${functions}
</script>
</body>
</html></c:if>

@ -1,27 +0,0 @@
<%@ page contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="ko">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" >
<meta http-equiv="content-language" content="ko">
<title>ERROR</title>
</head>
<body>
<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="100%" height="100%" align="center" valign="middle" style="padding-top:150px;"><table border="0" cellspacing="0" cellpadding="0">
<img src="${pageContext.request.contextPath}/resources/image/fims/framework/common/error_monitor.png" alt="에러"/>
</td>
</tr>
<tr>
<td width="100%" height="100%" align="center" valign="middle" style="padding-top:30px;"><table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><span style="font-family:Tahoma; font-weight:bold; color:#000000; line-height:150%; width:440px; height:70px;">오류발생 알림화면(허용되지 않는 요청을 하셨습니다)</span></td>
</tr>
</table></td>
</tr>
</table>
</body>
</html>

@ -1,4 +0,0 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
서비스 이용에 불편을 드려 죄송합니다.
담당자에게 문의하시기 바랍니다.
실패사유: ${exception.message }

@ -1,26 +0,0 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<link href="${ctx}/resources/common/css/error.css" rel="stylesheet" type="text/css" />
<title>알림 </title>
<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="100%" height="100%" align="center" valign="middle" style="">
<table border="0" cellspacing="0" cellpadding="0" >
<tr>
<td>
<div class="error">
<img src="${pageContext.request.contextPath}/resources/image/fims/framework/common/error_monitor.png" alt="에러"/>
<p>오류가 발생했습니다!</p>
<span style="font-weight: bold;">
Fail Info: <label style="color: red;">${exception.message }</label>
</span>
<p/>
<a href="javascript:history.back();">
이전 페이지
</a>
</div>
</td>
</tr>
</table>
</td>
</tr>
</table>

@ -1,35 +0,0 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<!-- Footer -->
<footer class="content-footer footer bg-footer-theme">
<div class="container-xxl d-flex flex-wrap justify-content-between py-2 flex-md-row flex-column">
<div class="mb-2 mb-md-0">
©
<span id="footerYear"></span>
<script>
document.getElementById("footerYear").innerText = new Date().getFullYear();
</script>
, made with XIT Base by
<a href="http://xit.co.kr" target="_blank" class="footer-link fw-bolder">(주)엑스아이티</a>
</div>
<%--div>
<a href="https://themeselection.com/license/" class="footer-link me-4" target="_blank">License</a>
<a href="https://themeselection.com/" target="_blank" class="footer-link me-4">More Themes</a>
<a
href="https://demos.themeselection.com/sneat-bootstrap-html-admin-template/documentation/"
target="_blank"
class="footer-link me-4"
>Documentation</a
>
<a
href="https://themeselection.com/support/"
target="_blank"
class="footer-link d-none d-sm-inline-block"
>Support</a
>
</div--%>
</div>
</footer>
<!-- / Footer -->

@ -1,48 +0,0 @@
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<!DOCTYPE html>
<html
lang="kr"
class="light-style layout-navbar-fixed layout-menu-fixed "
dir="ltr"
data-theme="theme-default"
data-assets-path="<c:url value="/resources/"/>"
data-template="vertical-menu-template-starter">
<head>
<meta charset="UTF-8">
<title>과태료통합관리시스템</title>
<!-- Favicon -->
<link rel="icon" type="image/x-icon" href="<c:url value="/resources/image/favicon.ico"/>" />
<!-- Fonts -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Public+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap" >
<!-- Icons. Uncomment required icon fonts -->
<link rel="stylesheet" href="<c:url value="/resources/3rd-party/sneat/fonts/boxicons.css"/>" />
<link rel="stylesheet" href="<c:url value="/resources/3rd-party/sneat/fonts/fontawesome.css"/>" />
<link rel="stylesheet" href="<c:url value="/resources/3rd-party/sneat/fonts/flag-icons.css"/>" />
<link rel="stylesheet" href="<c:url value="/resources/css/fims/framework/common/xit-icon.css"/>" />
<!-- Core CSS -->
<link rel="stylesheet" href="<c:url value="/resources/css/fims/framework/common/xit-core.css"/>" />
<link rel="stylesheet" href="<c:url value="/resources/3rd-party/sneat/css/theme-default.css"/>" />
<link rel="stylesheet" href="<c:url value="/resources/3rd-party/sneat/css/docs.css"/>" />
<link rel="stylesheet" href="<c:url value="/resources/css/fims/framework/common/xit-core-extend.css"/>" />
<!-- Vendors CSS -->
<link rel="stylesheet" href="<c:url value="/resources/3rd-party/sneat/libs/perfect-scrollbar/perfect-scrollbar.css"/>" />
<link rel="stylesheet" href="<c:url value="/resources/css/styles.css"/>" />
<link rel="stylesheet" href="<c:url value="/resources/css/fims/framework/common/common.css"/>"/>
<link rel="stylesheet" href="<c:url value="/resources/3rd-party/jquery-ui/1.13.2/themes/redmond/jquery-ui.css"/>" />
<link rel="stylesheet" href="<c:url value="/resources/lib/fims/framework/datepicker/datepicker.css"/>" />
<link rel="stylesheet" href="<c:url value="/resources/3rd-party/tui/grid/4.21.5/tui-grid/tui-grid.css"/>" />
<link rel="stylesheet" href="<c:url value="/resources/css/fims/framework/common/xit-tui-grid.css"/>" />
<link rel="stylesheet" href="<c:url value="/resources/3rd-party/tui/grid/4.21.5/tui-pagination/tui-pagination.css"/>" />
</head>

@ -1,7 +0,0 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<!-- FIMS 추가 -->
<%@ taglib prefix="code" uri="/WEB-INF/tlds/code.tld"%>
<%@ taglib prefix="privacy" uri="/WEB-INF/tlds/privacy.tld"%>

@ -1,73 +0,0 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<div class="spinner-border spinner-border-lg text-primary wait" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<!-- Helpers -->
<script src="<c:url value="/resources/3rd-party/sneat/js/helpers.js"/>"></script>
<!--! Template customizer & Theme config files MUST be included after core stylesheets and helpers.js in the <head> section -->
<!--? Template customizer: To hide customizer set displayCustomizer value false in config.js. -->
<script src="<c:url value="/resources/3rd-party/sneat/js/template-customizer.js"/>"></script>
<%--? Config: Mandatory theme config file contain global vars & default theme options, Set your preferred theme option in this file. -->
<script src="../../assets/js/config.js"></script--%>
<!-- Core JS -->
<!-- build:js assets/vendor/js/core.js -->
<script src="<c:url value="/resources/3rd-party/sneat/libs/jquery/jquery.js"/>"></script>
<script src="<c:url value="/resources/3rd-party/jquery-ui/1.13.2/jquery-ui.js"/>"></script>
<script src="<c:url value="/resources/3rd-party/sneat/libs/popper/popper.js"/>"></script>
<script src="<c:url value="/resources/3rd-party/sneat/js/bootstrap.js"/>"></script>
<script src="<c:url value="/resources/3rd-party/sneat/libs/perfect-scrollbar/perfect-scrollbar.js"/>"></script>
<script src="<c:url value="/resources/3rd-party/sneat/libs/hammer/hammer.js"/>"></script>
<script src="<c:url value="/resources/3rd-party/sneat/libs/i18n/i18n.js"/>"></script>
<script src="<c:url value="/resources/3rd-party/sneat/js/menu.js"/>"></script>
<script src="<c:url value="/resources/js/base/base.js?${ver}"/>"></script>
<script src="<c:url value="/resources/js/base/dataset.js?${ver}"/>"></script>
<script src="<c:url value="/resources/js/base/menu-support.js?${ver}"/>"></script>
<script src="<c:url value="/resources/js/base/menu-support-fims.js?${ver}"/>"></script>
<!-- endbuild -->
<c:set var="functions" scope="request">
wctx.path = "${pageContext.request.contextPath}";
wctx.version = "${ver}";
wctx.trace = ${!production};
wctx.csrf = {
header:"${_csrf.headerName}",
token:"${_csrf.token}"
};
dialog.title = "XIT Base";
<c:if test="${currentUser.authenticated}">
function logout() {
dialog.alert({
content:"로그아웃 하시겠습니까?",
onOK:function(){
var form = $("<form action=\"<c:url value='/logout.do'/>\", method=\"POST\">");
$("<input name=\"${_csrf.parameterName}\" value=\"${_csrf.token}\" type=\"hidden\">").appendTo(form);
form.appendTo("body").submit();
}
});
}</c:if>
<c:if test="${currentUser.hasAuthorities('ROLE_ADMIN')}">
async function selectURL(multiple) {
return new Promise(function(resolve, reject) {
ajax.get({
url:wctx.url("/urls.do"),
data:{multiple:multiple},
success: resp => {
dialog.open({
title:"URL 선택",
content:resp,
getData:() => getSelectedURL(),
onOK:selected => {
resolve(selected);
}
});
}
});
});
}
</c:if>
${functions}</c:set>

@ -1,139 +0,0 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<!-- Navbar -->
<nav class="layout-navbar container-xxl navbar navbar-expand-xl navbar-detached align-items-center bg-navbar-theme"
id="layout-navbar"
>
<div class="layout-menu-toggle navbar-nav align-items-xl-center me-3 me-xl-0 d-xl-none">
<a class="nav-item nav-link px-0 me-xl-4" href="javascript:void(0)">
<i class="bx bx-menu bx-sm"></i>
</a>
</div>
<div class="navbar-nav-right d-flex align-items-center" id="navbar-collapse">
<!-- Search -->
<div class="navbar-nav align-items-center">
<div class="nav-item navbar-search-wrapper mb-0">
<a class="nav-item nav-link search-toggler px-0" href="javascript:void(0);">
<span id="pageTitle" class="fw-bold" style="font-size:x-large;"></span>
</a>
</div>
</div>
<!-- /Search -->
<div class="ms-2 me-2" style="min-width: max-content;">
<select id="schOpt" class="form-select">
<option value="vhrno">차량번호</option>
<option value="rtpyrNm">납부자명</option>
<option value="rtpyrNo">납부자번호</option>
<option value="petitionerNm">신고인명</option>
</select>
<input type="text" id="schWord" class="form-control" />
<button type="button" id="fastSearch" class="btn btn-outline-dark bg-orange" title="통합조회">
<i class="bx bx-search"></i>통합조회
</button>
</div>
<div class="ms-auto me-2" style="min-width: max-content;">
<div class="form-check-inline custom-option custom-option-basic" style="background-color: #d9dee3">
<label for="securityMode" class="form-check-label custom-option-content">
<input type="checkbox" id="securityMode" name="securityMode" class="form-check-input" value="Y" />
보안모드
</label>
</div>
<button type="button" class="btn btn-outline-dark">
민원관리
</button>
<button type="button" class="btn btn-outline-dark">
일정관리
</button>
<button type="button" class="btn btn-outline-dark">
공지사항
</button>
<button type="button" class="btn btn-primary">
사용자 메뉴얼
</button>
<button type="button" class="btn btn-secondary" onclick="fn_goMyView('${sessionScope.XitLoginSession.uniqId}','${sessionScope.XitLoginSession.userSe}');">
환경설정
</button>
</div>
<ul class="navbar-nav flex-row align-items-center ms-auto">
<!-- Style Switcher -->
<li class="nav-item me-2 me-xl-0">
<a class="nav-link style-switcher-toggle hide-arrow" href="javascript:void(0);">
<i class="bx bx-sm"></i>
</a>
</li>
<!--/ Style Switcher -->
<!-- User -->
<li class="nav-item navbar-dropdown dropdown-user dropdown">
<a class="nav-link dropdown-toggle hide-arrow" href="javascript:void(0);" data-bs-toggle="dropdown">
<div class="avatar avatar-online">
<img src="<c:url value="/resources/img/avatars/1.png"/>" alt class="w-px-40 h-auto rounded-circle" />
</div>
</a>
<ul class="dropdown-menu dropdown-menu-end">
<li>
<a class="dropdown-item" href="pages-account-settings-account.html">
<div class="d-flex">
<div class="flex-shrink-0 me-3">
<div class="avatar avatar-online">
<img src="<c:url value="/resources/img/avatars/1.png"/>" alt class="w-px-40 h-auto rounded-circle" />
</div>
</div>
<div class="flex-grow-1">
<span class="fw-semibold d-block">${currentUser.name}</span>
<small class="text-muted">${currentUser.account}</small>
</div>
</div>
</a>
</li>
<li>
<div class="dropdown-divider"></div>
</li>
<li>
<a class="dropdown-item" href="pages-profile-user.html">
<i class="bx bx-user me-2"></i>
<span class="align-middle">프로필</span>
</a>
</li>
<li>
<a class="dropdown-item" href="pages-account-settings-account.html">
<i class="bx bx-cog me-2"></i>
<span class="align-middle">설정</span>
</a>
</li>
<li>
<div class="dropdown-divider"></div>
</li>
<li>
<a class="dropdown-item" href="pages-help-center-landing.html">
<i class="bx bx-support me-2"></i>
<span class="align-middle">Help</span>
</a>
</li>
<li>
<div class="dropdown-divider"></div>
</li>
<li onclick="logout();">
<a class="dropdown-item">
<i class="bx bx-power-off me-2"></i>
<span class="align-middle">로그아웃</span>
</a>
</li>
</ul>
</li>
<!--/ User -->
</ul>
</div>
</nav>
<!-- / Navbar -->
<c:set var="functions" scope="request">${functions}
function setPageTitle(pageTitle) {
$("#pageTitle").html(pageTitle);
}</c:set>

@ -1,32 +0,0 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<!-- Menu -->
<aside id="layout-menu" class="layout-menu menu-vertical menu bg-menu-theme">
<div class="app-brand demo">
<a href="javascript:wctx.home();" class="app-brand-link">
<span class="app-brand-logo demo">
<img src="<c:url value='/'/>resources/image/fims/framework/login/mainLogo_01.png" width="42px" height="42px" alt="logo" />
</span>
<span class="app-brand-text demo menu-text fw-bolder ms-2">과태료통합관리시스템</span>
</a>
<a href="javascript:void(0);" class="layout-menu-toggle menu-link text-large ms-auto">
<i class="bx bx-chevron-left bx-sm align-middle"></i>
</a>
</div>
<div class="menu-inner-shadow"></div>
<ul id="menus" class="menu-inner py-1">
</ul>
</aside>
<!-- / Menu -->
<c:set var="userMenus" scope="request">let userMenus = ${userMenus};
function setUserMenus(menus) {
let menuSupport = new FimsMenuSupport("#layout-menu").setMenuInfo(menus).setActive(wctx.current());
let currentMenu = menuSupport.getMenu(wctx.current());
if (currentMenu)
setPageTitle(currentMenu.name);
}
setUserMenus(userMenus);
</c:set>

@ -1,76 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!--
/**
* @Class Name : custom.tld
* @Description : 커스텀 태그
* 수정일 수정자 수정내용
* ================================================
* 2014.02.14. pi 최초 생성
*
* @USE : <cct:codeTag pcode="schBdcode" tagType="select" tagName="tname" selectedValue="" tagTitle="구분" className="form-control input-sm" useNullOpt="N"/>
*
* useNullOpt : 전체선택 등 옵션, 기본값 : N, N이 아닌 다른 문자열이 들어갈 경우 해당 문자열이 첫번째 옵션으로 출력됨.
*/
-->
<taglib xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd"
version="2.1">
<tlib-version>1.2</tlib-version>
<uri>cct</uri>
<tag>
<description>코드관리 코드 리스트 태그(select, checkbox, radio) 만들기</description>
<name>codeTag</name>
<tag-class>egovframework.itgcms.util.CreateCodeTag</tag-class>
<body-content>empty</body-content>
<attribute>
<name>pcode</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>tagType</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>tagName</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>selectedValue</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>tagTitle</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>className</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>useNullOpt</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
<tag>
<description>코드관리 코드 이름 가져오기</description>
<name>getCodeName</name>
<tag-class>egovframework.itgcms.util.GetCode</tag-class>
<body-content>empty</body-content>
<attribute>
<name>code</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
</taglib>

@ -1,50 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!--
/**
* @Class Name : custom.tld
* @Description : 커스텀 태그
* 수정일 수정자 수정내용
* ================================================
* 2014.02.14. pi 최초 생성
*
*/
-->
<taglib xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd"
version="2.1">
<tlib-version>1.2</tlib-version>
<uri>ora</uri>
<tag>
<description>코드관리 코드 리스트 SELECT 태그 만들기</description>
<name>selectCodeList</name>
<tag-class>egovframework.itgcms.util.CustomTagSelectCodeList</tag-class>
<body-content>empty</body-content>
<attribute>
<name>codeList</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>selectName</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>selectedValue</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>selectTitle</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>className</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
</taglib>

@ -1,145 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<taglib xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
version="2.0">
<description>Common Code tag library</description>
<display-name>Common Code tag library</display-name>
<tlib-version>1.0</tlib-version>
<short-name>code</short-name>
<tag>
<description>select box JSTL</description>
<name>select</name>
<tag-class>cokr.xit.fims.framework.support.tag.code.CodeSelectBoxTag</tag-class>
<body-content>JSP</body-content>
<attribute>
<name>type</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>grpId</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>etc_1</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>etc_2</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>etc_3</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>id</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>name</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>title</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>defaultSelect</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>isEmptySelect</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>emptyMessageKey</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>cls</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>alt</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>onchange</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>disabled</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>display</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
<tag>
<name>radio</name>
<tag-class>cokr.xit.fims.framework.support.tag.code.CodeRadioBoxTag</tag-class>
<body-content>JSP</body-content>
<attribute>
<name>grpId</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>type</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>etc_1</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>etc_2</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>etc_3</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>id</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>name</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>defaultSelect</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>cls</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>alt</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>onclick</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
</taglib>

@ -1,552 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<taglib xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
version="2.0">
<description>Egov CrossSite Tag Replace Special Html Code Convert(JSTL 1.1 core library 기반)</description>
<display-name>Egov JSTL core</display-name>
<tlib-version>1.1</tlib-version>
<short-name>egovc</short-name>
<tag>
<description>
Catches any Throwable that occurs in its body and optionally
exposes it.
</description>
<name>catch</name>
<tag-class>org.apache.taglibs.standard.tag.common.core.CatchTag</tag-class>
<body-content>JSP</body-content>
<attribute>
<description>
Name of the exported scoped variable for the
exception thrown from a nested action. The type of the
scoped variable is the type of the exception thrown.
</description>
<name>var</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
</tag>
<tag>
<description>
Simple conditional tag that establishes a context for
mutually exclusive conditional operations, marked by
&lt;when&gt; and &lt;otherwise&gt;
</description>
<name>choose</name>
<tag-class>org.apache.taglibs.standard.tag.common.core.ChooseTag</tag-class>
<body-content>JSP</body-content>
</tag>
<tag>
<description>
Simple conditional tag, which evalutes its body if the
supplied condition is true and optionally exposes a Boolean
scripting variable representing the evaluation of this condition
</description>
<name>if</name>
<tag-class>org.apache.taglibs.standard.tag.rt.core.IfTag</tag-class>
<body-content>JSP</body-content>
<attribute>
<description>
The test condition that determines whether or
not the body content should be processed.
</description>
<name>test</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
<type>boolean</type>
</attribute>
<attribute>
<description>
Name of the exported scoped variable for the
resulting value of the test condition. The type
of the scoped variable is Boolean.
</description>
<name>var</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
<attribute>
<description>
Scope for var.
</description>
<name>scope</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
</tag>
<tag>
<description>
Retrieves an absolute or relative URL and exposes its contents
to either the page, a String in 'var', or a Reader in 'varReader'.
</description>
<name>import</name>
<tag-class>org.apache.taglibs.standard.tag.rt.core.ImportTag</tag-class>
<tei-class>org.apache.taglibs.standard.tei.ImportTEI</tei-class>
<body-content>JSP</body-content>
<attribute>
<description>
The URL of the resource to import.
</description>
<name>url</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<description>
Name of the exported scoped variable for the
resource's content. The type of the scoped
variable is String.
</description>
<name>var</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
<attribute>
<description>
Scope for var.
</description>
<name>scope</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
<attribute>
<description>
Name of the exported scoped variable for the
resource's content. The type of the scoped
variable is Reader.
</description>
<name>varReader</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
<attribute>
<description>
Name of the context when accessing a relative
URL resource that belongs to a foreign
context.
</description>
<name>context</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<description>
Character encoding of the content at the input
resource.
</description>
<name>charEncoding</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
<tag>
<description>
The basic iteration tag, accepting many different
collection types and supporting subsetting and other
functionality
</description>
<name>forEach</name>
<tag-class>org.apache.taglibs.standard.tag.rt.core.ForEachTag</tag-class>
<tei-class>org.apache.taglibs.standard.tei.ForEachTEI</tei-class>
<body-content>JSP</body-content>
<attribute>
<description>
Collection of items to iterate over.
</description>
<name>items</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
<type>java.lang.Object</type>
</attribute>
<attribute>
<description>
If items specified:
Iteration begins at the item located at the
specified index. First item of the collection has
index 0.
If items not specified:
Iteration begins with index set at the value
specified.
</description>
<name>begin</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
<type>int</type>
</attribute>
<attribute>
<description>
If items specified:
Iteration ends at the item located at the
specified index (inclusive).
If items not specified:
Iteration ends when index reaches the value
specified.
</description>
<name>end</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
<type>int</type>
</attribute>
<attribute>
<description>
Iteration will only process every step items of
the collection, starting with the first one.
</description>
<name>step</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
<type>int</type>
</attribute>
<attribute>
<description>
Name of the exported scoped variable for the
current item of the iteration. This scoped
variable has nested visibility. Its type depends
on the object of the underlying collection.
</description>
<name>var</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
<attribute>
<description>
Name of the exported scoped variable for the
status of the iteration. Object exported is of type
javax.servlet.jsp.jstl.core.LoopTagStatus. This scoped variable has nested
visibility.
</description>
<name>varStatus</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
</tag>
<tag>
<description>
Iterates over tokens, separated by the supplied delimeters
</description>
<name>forTokens</name>
<tag-class>org.apache.taglibs.standard.tag.rt.core.ForTokensTag</tag-class>
<body-content>JSP</body-content>
<attribute>
<description>
String of tokens to iterate over.
</description>
<name>items</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
<type>java.lang.String</type>
</attribute>
<attribute>
<description>
The set of delimiters (the characters that
separate the tokens in the string).
</description>
<name>delims</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
<type>java.lang.String</type>
</attribute>
<attribute>
<description>
Iteration begins at the token located at the
specified index. First token has index 0.
</description>
<name>begin</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
<type>int</type>
</attribute>
<attribute>
<description>
Iteration ends at the token located at the
specified index (inclusive).
</description>
<name>end</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
<type>int</type>
</attribute>
<attribute>
<description>
Iteration will only process every step tokens
of the string, starting with the first one.
</description>
<name>step</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
<type>int</type>
</attribute>
<attribute>
<description>
Name of the exported scoped variable for the
current item of the iteration. This scoped
variable has nested visibility.
</description>
<name>var</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
<attribute>
<description>
Name of the exported scoped variable for the
status of the iteration. Object exported is of
type
javax.servlet.jsp.jstl.core.LoopTag
Status. This scoped variable has nested
visibility.
</description>
<name>varStatus</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
</tag>
<tag>
<description>
Like &lt;%= ... &gt;, but for expressions.
</description>
<name>out</name>
<tag-class>egovframework.com.cmm.EgovComCrossSiteHndlr</tag-class>
<body-content>JSP</body-content>
<attribute>
<description>
Expression to be evaluated.
</description>
<name>value</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<description>
Default value if the resulting value is null.
</description>
<name>default</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<description>
Determines whether characters &lt;,&gt;,&amp;,'," in the
resulting string should be converted to their
corresponding character entity codes. Default value is
true.
</description>
<name>escapeXml</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
<tag>
<description>
Subtag of &lt;choose&gt; that follows &lt;when&gt; tags
and runs only if all of the prior conditions evaluated to
'false'
</description>
<name>otherwise</name>
<tag-class>org.apache.taglibs.standard.tag.common.core.OtherwiseTag</tag-class>
<body-content>JSP</body-content>
</tag>
<tag>
<description>
Adds a parameter to a containing 'import' tag's URL.
</description>
<name>param</name>
<tag-class>org.apache.taglibs.standard.tag.rt.core.ParamTag</tag-class>
<body-content>JSP</body-content>
<attribute>
<description>
Name of the query string parameter.
</description>
<name>name</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<description>
Value of the parameter.
</description>
<name>value</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
<tag>
<description>
Redirects to a new URL.
</description>
<name>redirect</name>
<tag-class>org.apache.taglibs.standard.tag.rt.core.RedirectTag</tag-class>
<body-content>JSP</body-content>
<attribute>
<description>
The URL of the resource to redirect to.
</description>
<name>url</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<description>
Name of the context when redirecting to a relative URL
resource that belongs to a foreign context.
</description>
<name>context</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
<tag>
<description>
Removes a scoped variable (from a particular scope, if specified).
</description>
<name>remove</name>
<tag-class>org.apache.taglibs.standard.tag.common.core.RemoveTag</tag-class>
<body-content>empty</body-content>
<attribute>
<description>
Name of the scoped variable to be removed.
</description>
<name>var</name>
<required>true</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
<attribute>
<description>
Scope for var.
</description>
<name>scope</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
</tag>
<tag>
<description>
Sets the result of an expression evaluation in a 'scope'
</description>
<name>set</name>
<tag-class>org.apache.taglibs.standard.tag.rt.core.SetTag</tag-class>
<body-content>JSP</body-content>
<attribute>
<description>
Name of the exported scoped variable to hold the value
specified in the action. The type of the scoped variable is
whatever type the value expression evaluates to.
</description>
<name>var</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
<attribute>
<description>
Expression to be evaluated.
</description>
<name>value</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<description>
Target object whose property will be set. Must evaluate to
a JavaBeans object with setter property property, or to a
java.util.Map object.
</description>
<name>target</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<description>
Name of the property to be set in the target object.
</description>
<name>property</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<description>
Scope for var.
</description>
<name>scope</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
</tag>
<tag>
<description>
Creates a URL with optional query parameters.
</description>
<name>url</name>
<tag-class>org.apache.taglibs.standard.tag.rt.core.UrlTag</tag-class>
<body-content>JSP</body-content>
<attribute>
<description>
Name of the exported scoped variable for the
processed url. The type of the scoped variable is
String.
</description>
<name>var</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
<attribute>
<description>
Scope for var.
</description>
<name>scope</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
<attribute>
<description>
URL to be processed.
</description>
<name>value</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<description>
Name of the context when specifying a relative URL
resource that belongs to a foreign context.
</description>
<name>context</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
<tag>
<description>
Subtag of &lt;choose&gt; that includes its body if its
condition evalutes to 'true'
</description>
<name>when</name>
<tag-class>org.apache.taglibs.standard.tag.rt.core.WhenTag</tag-class>
<body-content>JSP</body-content>
<attribute>
<description>
The test condition that determines whether or not the
body content should be processed.
</description>
<name>test</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
<type>boolean</type>
</attribute>
</tag>
</taglib>

@ -1,39 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<taglib xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
version="2.0">
<description>Common Code tag library</description>
<display-name>Common Code tag library</display-name>
<tlib-version>1.0</tlib-version>
<short-name>privacy</short-name>
<tag>
<description>주민번호 입력 box JSTL</description>
<name>input</name>
<tag-class>cokr.xit.fims.framework.support.tag.privacy.input</tag-class>
<body-content>JSP</body-content>
<attribute>
<name>id</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>name</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>cls</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>disabled</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>readonly</name>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
</taglib>

@ -1,103 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="4.0" xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd">
<display-name>egovframework.ebt</display-name>
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/</url-pattern>
<url-pattern>*.do</url-pattern>
</filter-mapping>
<filter>
<filter-name>accessFilter</filter-name>
<filter-class>cokr.xit.foundation.web.AccessFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>accessFilter</filter-name>
<url-pattern>/</url-pattern>
<url-pattern>*.do</url-pattern>
</filter-mapping>
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/</url-pattern>
<url-pattern>*.do</url-pattern>
</filter-mapping>
<listener>
<listener-class>org.springframework.security.web.session.HttpSessionEventPublisher</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:/spring/context-*.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>dispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:/spring/dispatcher-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcherServlet</servlet-name>
<url-pattern>/</url-pattern>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>/resources/*</url-pattern>
<url-pattern>/files/*</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>/index.do</welcome-file>
</welcome-file-list>
<login-config>
<auth-method>BASIC</auth-method>
</login-config>
<session-config>
<session-timeout>60</session-timeout>
<cookie-config>
<http-only>true</http-only>
<secure>false</secure>
</cookie-config>
<tracking-mode>COOKIE</tracking-mode>
</session-config>
<error-page>
<error-code>403</error-code>
<location>/error/accessDenied.do</location>
</error-page>
<error-page>
<error-code>404</error-code>
<location>/error/pageNotFound.do</location>
</error-page>
<error-page>
<location>/error/500.jsp</location>
</error-page>
</web-app>

@ -1,70 +0,0 @@
// package io.subji.examplesprintrestdocs;
//
// import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document;
// import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.documentationConfiguration;
// import static org.springframework.restdocs.mockmvc.RestDocumentationRequestBuilders.get;
// import static org.springframework.restdocs.operation.preprocess.Preprocessors.preprocessRequest;
// import static org.springframework.restdocs.operation.preprocess.Preprocessors.preprocessResponse;
// import static org.springframework.restdocs.operation.preprocess.Preprocessors.prettyPrint;
// import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
//
// import org.junit.jupiter.api.BeforeEach;
// import org.junit.jupiter.api.Test;
// import org.junit.jupiter.api.extension.ExtendWith;
// import org.springframework.boot.test.context.SpringBootTest;
// import org.springframework.restdocs.RestDocumentationContextProvider;
// import org.springframework.restdocs.RestDocumentationExtension;
// import org.springframework.restdocs.payload.PayloadDocumentation;
// import org.springframework.test.context.junit.jupiter.SpringExtension;
// import org.springframework.test.web.servlet.MockMvc;
// import org.springframework.test.web.servlet.setup.MockMvcBuilders;
// import org.springframework.web.context.WebApplicationContext;
//
// @ExtendWith({ RestDocumentationExtension.class, SpringExtension.class })
// @SpringBootTest(classes = ExampleSprintRestDocsApplication.class)
// class ExampleSprintRestDocsApplicationTests {
//
// private MockMvc mockMvc;
//
// @Test
// void contextLoads() {
// }
//
// @BeforeEach
// public void setUp(
// WebApplicationContext webApplicationContext,
// RestDocumentationContextProvider restDocumentationContextProvider) {
// this.mockMvc = MockMvcBuilders.webAppContextSetup(webApplicationContext)
// .apply(documentationConfiguration(restDocumentationContextProvider))
// .alwaysDo(document("{method-name}", preprocessRequest(prettyPrint()), preprocessResponse(prettyPrint())))
// .build();
// }
//
// @Test
// public void readExample() throws Exception {
// this.mockMvc.perform(get("/test"))
// .andExpect(status().isOk())
// .andDo(
// document("test-example",
// preprocessRequest(prettyPrint()),
// preprocessResponse(prettyPrint()),
// PayloadDocumentation.responseFields(
// PayloadDocumentation.fieldWithPath("id")
// .description("ID 필드 입니다."),
// PayloadDocumentation.fieldWithPath("name")
// .description("이름 필드 입니다."),
// PayloadDocumentation.fieldWithPath("body")
// .description("데이터 필드 입니다.")
// )));
// // links(
// // // linkWithRel 은 텍스트를 링크화 한다.
// // linkWithRel("test").description("The Test resource")),
// // //subsectionWithPath 를 사용해서 메서드에 대한 응답을 문서화 했다.
// // responseFields(subsectionWithPath("_links")
// // .description("Links to other resources")),
// // // 응답에 "Content-type" 헤더를 추가하기 위해 headerWithName 을 사용
// // responseHeaders(headerWithName("Content-Type")
// // .description("The Content-Type of the payload, e.g. `application/hal+json`")))
// }
//
// }
Loading…
Cancel
Save