admin/front 분리
This commit is contained in:
@@ -1,119 +0,0 @@
|
||||
spring:
|
||||
application:
|
||||
name: api
|
||||
datasource:
|
||||
url: jdbc:log4jdbc:mariadb://121.160.234.222:3000/ALISTLMS?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Seoul&connectionCollation=utf8mb4_uca1400_ai_ci
|
||||
username: alist_dev
|
||||
password: 1qaz2wsx!@
|
||||
driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
|
||||
hikari:
|
||||
maximum-pool-size: 10
|
||||
minimum-idle: 5
|
||||
connection-timeout: 10000
|
||||
idle-timeout: 600000
|
||||
data:
|
||||
redis:
|
||||
host: 121.160.234.222
|
||||
port: 3001
|
||||
password: 1qaz2wsx!@
|
||||
servlet:
|
||||
multipart:
|
||||
max-file-size: -1
|
||||
max-request-size: -1
|
||||
|
||||
migration:
|
||||
datasource:
|
||||
alist:
|
||||
jdbc-url: jdbc:log4jdbc:sqlserver://bigfuntnp.co.kr:51433;databaseName=alist_dev;encrypt=false;trustServerCertificate=true
|
||||
username: bigfuntnp
|
||||
password: password12!@
|
||||
driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
|
||||
maximum-pool-size: 5
|
||||
minimum-idle: 1
|
||||
connection-timeout: 10000
|
||||
eltown:
|
||||
jdbc-url: jdbc:log4jdbc:sqlserver://bigfuntnp.co.kr:51433;databaseName=eltown;encrypt=false;trustServerCertificate=true
|
||||
username: bigfuntnp
|
||||
password: password12!@
|
||||
driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
|
||||
maximum-pool-size: 5
|
||||
minimum-idle: 1
|
||||
connection-timeout: 10000
|
||||
|
||||
logging:
|
||||
config: classpath:logback-local.xml
|
||||
|
||||
jwt:
|
||||
secret: "F9k3s!29dkF#1lP0X9QZx8eW!2m@0AbD"
|
||||
access-token-validity-seconds: 3600
|
||||
refresh-token-validity-seconds: 2592000
|
||||
|
||||
cookie:
|
||||
secure: false # (HTTP) -> false
|
||||
domain: # (HTTP) -> 비워두세요
|
||||
name: ALIST_SSO
|
||||
same-site: Lax # (HTTP) -> Lax
|
||||
|
||||
swagger:
|
||||
login:
|
||||
id: alist
|
||||
password: "1qaz2wsx!@"
|
||||
|
||||
tus-file:
|
||||
upload:
|
||||
tus-endpoint: https://file-alist.pjt.kr/tus/file/
|
||||
public-base-url: https://file-alist.pjt.kr
|
||||
tmp-root: /srv/project/alist/uploads/tmp
|
||||
final-root: /srv/project/alist/uploads
|
||||
interrupt-seconds: 30
|
||||
auth-cache:
|
||||
ttl-seconds: 20
|
||||
|
||||
# types:
|
||||
# notice:
|
||||
# folder: notice 저장폴더
|
||||
# max-size: 20MB 최대 용량
|
||||
# image-only: false
|
||||
# resize:
|
||||
# enabled: true
|
||||
# width: 800 고정넓이
|
||||
# height: 600 고정높이
|
||||
# max-width: 1200 최대 넓이
|
||||
|
||||
file:
|
||||
upload:
|
||||
view:
|
||||
file-domain: http://localhost:8110
|
||||
root-path: ${tus-file.upload.final-root}
|
||||
max-size: 10MB
|
||||
allowed-extensions: [jpg, jpeg, png, gif, pdf, hwp, hwpx, doc, docx, xls, xlsx, ppt, pptx, txt, csv, zip]
|
||||
types:
|
||||
profile:
|
||||
folder: profile
|
||||
max-size: 5MB
|
||||
image-only: true
|
||||
resize:
|
||||
enabled: true
|
||||
width: 400
|
||||
height: 400
|
||||
notice:
|
||||
folder: notice
|
||||
max-size: 20MB
|
||||
image-only: false
|
||||
resize:
|
||||
enabled: true
|
||||
max-width: 1200
|
||||
|
||||
springdoc:
|
||||
api-docs:
|
||||
enabled: true
|
||||
swagger-ui:
|
||||
enabled: true
|
||||
|
||||
sso:
|
||||
session:
|
||||
ttl-seconds: 7200
|
||||
code:
|
||||
ttl-seconds: 300
|
||||
cookie:
|
||||
name: ALIST_SSO
|
||||
@@ -1,121 +0,0 @@
|
||||
spring:
|
||||
application:
|
||||
name: api
|
||||
main:
|
||||
banner-mode: log
|
||||
datasource:
|
||||
url: jdbc:log4jdbc:mariadb://${DB_HOST}:${DB_PORT}/${DB_NAME}?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Seoul&connectionCollation=utf8mb4_uca1400_ai_ci
|
||||
username: ${DB_USERNAME}
|
||||
password: ${DB_PASSWORD}
|
||||
driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
|
||||
hikari:
|
||||
maximum-pool-size: 10
|
||||
minimum-idle: 5
|
||||
connection-timeout: 10000
|
||||
idle-timeout: 600000
|
||||
data:
|
||||
redis:
|
||||
host: ${REDIS_HOST}
|
||||
port: ${REDIS_PORT}
|
||||
password: ${REDIS_PASSWORD}
|
||||
servlet:
|
||||
multipart:
|
||||
max-file-size: -1
|
||||
max-request-size: -1
|
||||
|
||||
migration:
|
||||
datasource:
|
||||
alist:
|
||||
jdbc-url: jdbc:log4jdbc:sqlserver://${ALIST_DB_HOST}:${ALIST_DB_PORT};databaseName=${ALIST_DB_NAME};encrypt=false;trustServerCertificate=true
|
||||
username: ${ALIST_DB_USERNAME}
|
||||
password: ${ALIST_DB_PASSWORD}
|
||||
driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
|
||||
maximum-pool-size: 5
|
||||
minimum-idle: 1
|
||||
connection-timeout: 10000
|
||||
eltown:
|
||||
jdbc-url: jdbc:log4jdbc:sqlserver://${ELTOWN_DB_HOST}:${ELTOWN_DB_PORT};databaseName=${ELTOWN_DB_NAME};encrypt=false;trustServerCertificate=true
|
||||
username: ${ELTOWN_DB_USERNAME}
|
||||
password: ${ELTOWN_DB_PASSWORD}
|
||||
driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
|
||||
maximum-pool-size: 5
|
||||
minimum-idle: 1
|
||||
connection-timeout: 10000
|
||||
|
||||
logging:
|
||||
config: classpath:logback-pjt.xml
|
||||
|
||||
jwt:
|
||||
secret: ${JWT_SECRET}
|
||||
access-token-validity-seconds: 3600
|
||||
refresh-token-validity-seconds: 2592000
|
||||
|
||||
cookie:
|
||||
secure: true # 프로젝트 환경 (HTTPS)
|
||||
domain: api-alist.pjt.kr
|
||||
name: ALIST_SSO
|
||||
same-site: None
|
||||
|
||||
swagger:
|
||||
login:
|
||||
id: ${SWAGGER_ID}
|
||||
password: ${SWAGGER_PASSWORD}
|
||||
|
||||
tus-file:
|
||||
upload:
|
||||
tus-endpoint: https://file-alist.pjt.kr/tus/file/
|
||||
public-base-url: https://file-alist.pjt.kr
|
||||
tmp-root: /srv/project/alist/uploads/tmp
|
||||
final-root: /srv/project/alist/uploads
|
||||
interrupt-seconds: 30
|
||||
auth-cache:
|
||||
ttl-seconds: 20
|
||||
|
||||
# types:
|
||||
# notice:
|
||||
# folder: notice 저장폴더
|
||||
# max-size: 20MB 최대 용량
|
||||
# image-only: false
|
||||
# resize:
|
||||
# enabled: true
|
||||
# width: 800 고정넓이
|
||||
# height: 600 고정높이
|
||||
# max-width: 1200 최대 넓이
|
||||
|
||||
file:
|
||||
upload:
|
||||
view:
|
||||
file-domain: https://file-alist.pjt.kr
|
||||
root-path: ${tus-file.upload.final-root}
|
||||
max-size: 10MB
|
||||
allowed-extensions: [jpg, jpeg, png, gif, pdf, hwp, hwpx, doc, docx, xls, xlsx, ppt, pptx, txt, csv, zip]
|
||||
types:
|
||||
profile:
|
||||
folder: profile
|
||||
max-size: 5MB
|
||||
image-only: true
|
||||
resize:
|
||||
enabled: true
|
||||
width: 400
|
||||
height: 400
|
||||
notice:
|
||||
folder: notice
|
||||
max-size: 20MB
|
||||
image-only: false
|
||||
resize:
|
||||
enabled: true
|
||||
max-width: 1200
|
||||
|
||||
springdoc:
|
||||
api-docs:
|
||||
enabled: true
|
||||
swagger-ui:
|
||||
enabled: true
|
||||
|
||||
sso:
|
||||
session:
|
||||
ttl-seconds: 7200
|
||||
code:
|
||||
ttl-seconds: 300
|
||||
cookie:
|
||||
name: ALIST_SSO
|
||||
@@ -1,18 +0,0 @@
|
||||
|
||||
q p ,,
|
||||
db \ / `7MMF' db mm
|
||||
;MM:o=--*--=o MM MM
|
||||
,V^MM. / \ MM `7MM ,pP"Ybd mmMMmm
|
||||
,M `MM d b MM MM 8I `" MM
|
||||
AbmmmqMA MM , MM `YMMMa. MM
|
||||
A' VML MM ,M MM L. I8 MM
|
||||
.AMA. .AMMA. .JMMmmmmMMM .JMML.M9mmmP' `Mbmo
|
||||
|
||||
|
||||
:: ALIST API ::
|
||||
Application : ${spring.application.name}
|
||||
Profile : ${spring.profiles.active}
|
||||
Spring Boot : ${spring-boot.version}
|
||||
Java : ${java.version}
|
||||
Port : ${server.port}
|
||||
PID : ${PID}
|
||||
@@ -1,3 +0,0 @@
|
||||
log4jdbc.spylogdelegator.name=net.sf.log4jdbc.log.slf4j.Slf4jSpyLogDelegator
|
||||
log4jdbc.drivers=org.mariadb.jdbc.Driver,com.microsoft.sqlserver.jdbc.SQLServerDriver
|
||||
log4jdbc.dump.sql.maxlinelength=0
|
||||
@@ -1,42 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<configuration scan="true">
|
||||
|
||||
<!-- 로그 디렉토리 -->
|
||||
<property name="LOG_PATH" value="/logs" />
|
||||
|
||||
<!-- Spring Boot가 제공하는 %clr / 색상 변환기 등록 -->
|
||||
<include resource="org/springframework/boot/logging/logback/defaults.xml"/>
|
||||
|
||||
<!-- 콘솔 -->
|
||||
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
|
||||
<encoder>
|
||||
<pattern>%clr(%d{HH:mm:ss.SSS}){faint} %clr(%5p) %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n</pattern>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<!-- 콘솔 appender: Boot 기본 제공 -->
|
||||
<include resource="org/springframework/boot/logging/logback/console-appender.xml"/>
|
||||
|
||||
<!-- ==== 로컬(local) ==== -->
|
||||
<root level="INFO">
|
||||
<appender-ref ref="CONSOLE"/>
|
||||
</root>
|
||||
|
||||
<!-- springframework -->
|
||||
<logger name="org.springframework" level="INFO"/>
|
||||
|
||||
<!-- project -->
|
||||
<logger name="com.alist.api" level="DEBUG"/>
|
||||
|
||||
<!-- MyBatis SQL/파라미터 보고 싶으면 DEBUG -->
|
||||
<logger name="org.mybatis" level="DEBUG"/>
|
||||
<logger name="org.apache.ibatis" level="DEBUG"/>
|
||||
|
||||
<!-- log4jdbc -->
|
||||
<logger name="jdbc.sqltiming" level="DEBUG"/>
|
||||
<logger name="jdbc.resultsettable" level="DEBUG"/>
|
||||
<logger name="jdbc.audit" level="OFF"/>
|
||||
<logger name="jdbc.resultset" level="OFF"/>
|
||||
<logger name="jdbc.sqlonly" level="OFF"/>
|
||||
|
||||
</configuration>
|
||||
@@ -1,56 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<configuration scan="true">
|
||||
|
||||
<!-- 로그 디렉토리 -->
|
||||
<property name="LOG_PATH" value="/logs" />
|
||||
|
||||
<!-- 파일 -->
|
||||
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
|
||||
<!-- 현재 로그는 고정 위치 (tail 편함) -->
|
||||
<file>${LOG_PATH}/api.log</file>
|
||||
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
||||
|
||||
<!-- 롤링 파일은 날짜 폴더(yyyy/MM) 하위로 저장 -->
|
||||
<fileNamePattern>
|
||||
${LOG_PATH}/%d{yyyy/MM}/api.log-%d{yyyy-MM-dd}.%i
|
||||
</fileNamePattern>
|
||||
|
||||
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
|
||||
<maxFileSize>50MB</maxFileSize>
|
||||
</timeBasedFileNamingAndTriggeringPolicy>
|
||||
|
||||
<maxHistory>180</maxHistory>
|
||||
<cleanHistoryOnStart>true</cleanHistoryOnStart>
|
||||
</rollingPolicy>
|
||||
|
||||
<encoder>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} | %-5level | %-15thread | %-40logger{40} | %msg%n</pattern>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<!-- ==== 빅펀개발(pjt) ==== -->
|
||||
<!-- 기본 -->
|
||||
<root level="INFO">
|
||||
<appender-ref ref="FILE"/>
|
||||
</root>
|
||||
|
||||
<!-- springframework -->
|
||||
<logger name="org.springframework" level="WARN"/>
|
||||
|
||||
<!-- project -->
|
||||
<logger name="com.alist.api" level="INFO"/>
|
||||
|
||||
<!-- MyBatis -->
|
||||
<logger name="org.mybatis" level="WARN"/>
|
||||
<logger name="org.apache.ibatis" level="WARN"/>
|
||||
|
||||
<!-- log4jdbc -->
|
||||
<logger name="jdbc.sqltiming" level="INFO"/>
|
||||
<logger name="jdbc.resultsettable" level="OFF"/>
|
||||
<logger name="jdbc.audit" level="OFF"/>
|
||||
<logger name="jdbc.resultset" level="OFF"/>
|
||||
<logger name="jdbc.sqlonly" level="OFF"/>
|
||||
|
||||
</configuration>
|
||||
@@ -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="com.alist.api.modules.admin.auth.mapper.AdminAuthMapper">
|
||||
<select id="selectAdminAuthLogin" resultType="com.alist.api.modules.admin.auth.vo.AdminAuthLoginVo">
|
||||
/*AdminAuthMapper.selectAdminAuthLogin*/
|
||||
SELECT ATU.user_idx
|
||||
, ATU.id
|
||||
, ATU.password
|
||||
, ATUT.user_token_idx
|
||||
, ATUT.user_role
|
||||
, ATUT.user_type
|
||||
FROM ALISTLMS.test_user ATU
|
||||
INNER JOIN ALISTLMS.test_user_token ATUT ON ATUT.user_idx = ATU.user_idx
|
||||
WHERE ATU.id = #{id}
|
||||
AND ATU.del_yn = 1
|
||||
AND ATUT.user_type IN ('A')
|
||||
LIMIT 1
|
||||
</select>
|
||||
|
||||
<select id="selectAdminTokenByUserTokenIdx" resultType="com.alist.api.modules.admin.auth.vo.AdminAuthLoginVo">
|
||||
/*AdminAuthMapper.selectAdminTokenByUserTokenIdx*/
|
||||
SELECT ATU.user_idx
|
||||
, ATU.id
|
||||
, ATUT.user_token_idx
|
||||
, ATUT.refresh_token
|
||||
, ATUT.user_role
|
||||
, ATUT.user_type
|
||||
FROM ALISTLMS.test_user_token ATUT
|
||||
INNER JOIN ALISTLMS.test_user ATU ON ATU.user_idx = ATUT.user_idx
|
||||
WHERE ATUT.user_token_idx = #{userTokenIdx}
|
||||
AND ATUT.user_type IN ('A')
|
||||
AND ATU.del_yn = 1
|
||||
LIMIT 1
|
||||
</select>
|
||||
|
||||
<select id="selectAdminAuthApiKeyLogin" resultType="com.alist.api.modules.admin.auth.vo.AdminAuthApiKeyLoginVo">
|
||||
/*AdminAuthMapper.selectAdminAuthApiKeyLogin*/
|
||||
SELECT ATU.user_idx
|
||||
, ATU.id
|
||||
, ATUT.user_token_idx
|
||||
, ATUT.user_role
|
||||
, ATUT.user_type
|
||||
FROM ALISTLMS.test_user_token ATUT
|
||||
INNER JOIN ALISTLMS.test_user ATU ON ATU.user_idx = ATUT.user_idx
|
||||
WHERE ATUT.user_api_key = #{userApiKey}
|
||||
AND ATUT.user_type IN ('A')
|
||||
AND ATU.del_yn = 1
|
||||
LIMIT 1
|
||||
</select>
|
||||
|
||||
<update id="updateAdminRefreshToken">
|
||||
/*AdminAuthMapper.updateAdminRefreshToken*/
|
||||
UPDATE ALISTLMS.test_user_token
|
||||
SET refresh_token = #{refreshToken}
|
||||
, expires_at = #{expiresAt}
|
||||
, updated_at = now()
|
||||
WHERE user_token_idx = #{userTokenIdx}
|
||||
AND user_type IN ('A')
|
||||
</update>
|
||||
|
||||
<update id="updateAdminLastLoginAt">
|
||||
/*AdminAuthMapper.updateAdminLastLoginAt*/
|
||||
UPDATE ALISTLMS.test_user
|
||||
SET last_login_at = now()
|
||||
, update_at = now()
|
||||
WHERE user_idx = #{userIdx}
|
||||
</update>
|
||||
|
||||
<update id="updateClearAdminRefreshToken">
|
||||
/*AdminAuthMapper.updateClearAdminRefreshToken*/
|
||||
UPDATE ALISTLMS.test_user_token
|
||||
SET refresh_token = null
|
||||
, expires_at = null
|
||||
, updated_at = now()
|
||||
WHERE user_token_idx = #{userTokenIdx}
|
||||
AND user_type IN ('A')
|
||||
</update>
|
||||
|
||||
<update id="updateAdminApiKeyLoginRefreshToken">
|
||||
/*AdminAuthMapper.updateAdminApiKeyLoginRefreshToken*/
|
||||
UPDATE ALISTLMS.test_user_token
|
||||
SET refresh_token = #{refreshToken}
|
||||
, expires_at = #{expiresAt}
|
||||
, updated_at = now()
|
||||
WHERE user_token_idx = #{userTokenIdx}
|
||||
AND user_type IN ('A')
|
||||
</update>
|
||||
</mapper>
|
||||
@@ -1,141 +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="com.alist.api.modules.admin.member.mapper.AdminMemberMapper">
|
||||
<sql id="adminMemberWhere">
|
||||
FROM ALISTLMS.test_user ATU
|
||||
INNER JOIN ALISTLMS.test_user_token ATUT ON ATUT.user_idx = ATU.user_idx
|
||||
WHERE ATU.del_yn = 1
|
||||
<if test="keyword != null and keyword != ''">
|
||||
AND (
|
||||
ATU.id LIKE CONCAT('%', #{keyword}, '%')
|
||||
OR ATU.email LIKE CONCAT('%', #{keyword}, '%')
|
||||
OR ATU.hp LIKE CONCAT('%', #{keyword}, '%')
|
||||
)
|
||||
</if>
|
||||
<if test="userRole != null and userRole != ''">
|
||||
AND ATUT.user_role = #{userRole}
|
||||
</if>
|
||||
<if test="userType != null and userType != ''">
|
||||
AND ATUT.user_type = #{userType}
|
||||
</if>
|
||||
<if test="dormantYn != null and dormantYn != ''">
|
||||
AND ATU.dormant_yn = #{dormantYn}
|
||||
</if>
|
||||
<if test="withdrawStatus != null and withdrawStatus != ''">
|
||||
AND ATU.withdraw_status = #{withdrawStatus}
|
||||
</if>
|
||||
</sql>
|
||||
|
||||
<select id="selectAdminMemberCount" resultType="int">
|
||||
/*AdminMemberMapper.selectAdminMemberCount*/
|
||||
SELECT COUNT(*)
|
||||
<include refid="adminMemberWhere"/>
|
||||
</select>
|
||||
|
||||
<select id="selectAdminMemberList" resultType="com.alist.api.modules.admin.member.vo.AdminMemberVo">
|
||||
/*AdminMemberMapper.selectAdminMemberList*/
|
||||
SELECT ATU.user_idx
|
||||
, ATUT.user_token_idx
|
||||
, ATU.id
|
||||
, ATU.email
|
||||
, ATU.hp
|
||||
, ATUT.user_role
|
||||
, ATUT.user_type
|
||||
, ATU.dormant_yn
|
||||
, ATU.dormant_at
|
||||
, ATU.withdraw_status
|
||||
, ATU.withdraw_at
|
||||
, ATU.create_at
|
||||
, ATU.update_at
|
||||
<include refid="adminMemberWhere"/>
|
||||
ORDER BY ATU.user_idx DESC
|
||||
LIMIT #{limit}
|
||||
OFFSET #{offset}
|
||||
</select>
|
||||
|
||||
<select id="selectAdminMemberView" resultType="com.alist.api.modules.admin.member.vo.AdminMemberViewVo">
|
||||
/*AdminMemberMapper.selectAdminMemberView*/
|
||||
SELECT ATU.user_idx
|
||||
, ATUT.user_token_idx
|
||||
, ATU.id
|
||||
, ATU.email
|
||||
, ATU.hp
|
||||
, ATUT.user_role
|
||||
, ATUT.user_type
|
||||
, ATU.dormant_yn
|
||||
, ATU.dormant_at
|
||||
, ATU.withdraw_status
|
||||
, ATU.withdraw_at
|
||||
, ATU.create_at
|
||||
, ATU.update_at
|
||||
FROM ALISTLMS.test_user ATU
|
||||
INNER JOIN ALISTLMS.test_user_token ATUT ON ATUT.user_idx = ATU.user_idx
|
||||
WHERE ATU.del_yn = 1
|
||||
AND ATU.user_idx = #{userIdx}
|
||||
</select>
|
||||
|
||||
<update id="updateAdminMemberModify">
|
||||
/*AdminMemberMapper.updateAdminMemberModify*/
|
||||
UPDATE ALISTLMS.test_user ATU
|
||||
INNER JOIN ALISTLMS.test_user_token ATUT ON ATUT.user_idx = ATU.user_idx
|
||||
SET ATU.update_at = now()
|
||||
, ATUT.updated_at = now()
|
||||
<if test="email != null and email != ''">
|
||||
, ATU.email = #{email}
|
||||
</if>
|
||||
<if test="hp != null and hp != ''">
|
||||
, ATU.hp = #{hp}
|
||||
</if>
|
||||
<if test="userRole != null and userRole != ''">
|
||||
, ATUT.user_role = #{userRole}
|
||||
</if>
|
||||
<if test="userType != null and userType != ''">
|
||||
, ATUT.user_type = #{userType}
|
||||
</if>
|
||||
WHERE ATU.user_idx = #{userIdx}
|
||||
AND ATU.del_yn = 1
|
||||
</update>
|
||||
|
||||
<update id="updateAdminMemberDormantModify">
|
||||
/*AdminMemberMapper.updateAdminMemberDormantModify*/
|
||||
UPDATE ALISTLMS.test_user
|
||||
SET dormant_yn = #{dormantYn}
|
||||
, dormant_at =
|
||||
CASE
|
||||
WHEN #{dormantYn} = 'Y' THEN now()
|
||||
WHEN #{dormantYn} = 'N' THEN NULL
|
||||
ELSE dormant_at
|
||||
END
|
||||
, update_at = now()
|
||||
WHERE user_idx = #{userIdx}
|
||||
AND del_yn = 1
|
||||
</update>
|
||||
|
||||
<update id="updateAdminMemberWithdrawModify">
|
||||
/*AdminMemberMapper.updateAdminMemberWithdrawModify*/
|
||||
UPDATE ALISTLMS.test_user
|
||||
SET withdraw_status = #{withdrawStatus}
|
||||
, withdraw_at =
|
||||
CASE
|
||||
WHEN #{withdrawStatus} IN ('P', 'Y') THEN now()
|
||||
WHEN #{withdrawStatus} = 'N' THEN NULL
|
||||
ELSE withdraw_at
|
||||
END
|
||||
, update_at = now()
|
||||
WHERE user_idx = #{userIdx}
|
||||
AND del_yn = 1
|
||||
</update>
|
||||
|
||||
<update id="updateAdminMemberDelete">
|
||||
/*AdminMemberMapper.updateAdminMemberDelete*/
|
||||
UPDATE ALISTLMS.test_user
|
||||
SET del_yn = 2
|
||||
, update_at = now()
|
||||
WHERE user_idx IN
|
||||
<foreach collection="userIdxList" item="userIdx" open="(" separator="," close=")">
|
||||
#{userIdx}
|
||||
</foreach>
|
||||
AND del_yn = 1
|
||||
</update>
|
||||
</mapper>
|
||||
@@ -1,229 +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="com.alist.api.modules.admin.notice.mapper.AdminNoticeMapper">
|
||||
<sql id="adminNoticeWhere">
|
||||
FROM ALISTLMS.NOTICE N
|
||||
WHERE N.DEL_YN = 'N'
|
||||
<if test="keyword != null and keyword != ''">
|
||||
AND (
|
||||
N.TITLE LIKE CONCAT('%', #{keyword}, '%')
|
||||
OR N.CONTENT LIKE CONCAT('%', #{keyword}, '%')
|
||||
)
|
||||
</if>
|
||||
<if test="noticeType != null and noticeType != ''">
|
||||
AND N.NOTICE_TYPE = #{noticeType}
|
||||
</if>
|
||||
<if test="targetScope != null and targetScope != ''">
|
||||
AND N.TARGET_SCOPE = #{targetScope}
|
||||
</if>
|
||||
<if test="campusIdx != null">
|
||||
AND EXISTS (
|
||||
SELECT 1
|
||||
FROM ALISTLMS.NOTICE_CAMPUS NC
|
||||
WHERE NC.NOTICE_IDX = N.NOTICE_IDX
|
||||
AND NC.CAMPUS_IDX = #{campusIdx}
|
||||
)
|
||||
</if>
|
||||
<if test="pinYn != null and pinYn != ''">
|
||||
AND N.PIN_YN = #{pinYn}
|
||||
</if>
|
||||
<if test="useYn != null and useYn != ''">
|
||||
AND N.USE_YN = #{useYn}
|
||||
</if>
|
||||
</sql>
|
||||
|
||||
<select id="selectAdminNoticeCount" resultType="int">
|
||||
/*AdminNoticeMapper.selectAdminNoticeCount*/
|
||||
SELECT COUNT(*)
|
||||
<include refid="adminNoticeWhere"/>
|
||||
</select>
|
||||
|
||||
<select id="selectAdminNoticeList" resultType="com.alist.api.modules.admin.notice.vo.AdminNoticeVo">
|
||||
/*AdminNoticeMapper.selectAdminNoticeList*/
|
||||
SELECT N.NOTICE_IDX
|
||||
, N.NOTICE_TYPE
|
||||
, N.TARGET_SCOPE
|
||||
, N.TITLE
|
||||
, N.PIN_YN
|
||||
, N.START_DATE
|
||||
, N.END_DATE
|
||||
, N.VIEW_COUNT
|
||||
, N.USE_YN
|
||||
, N.CREATE_DATE
|
||||
, N.UPDATE_DATE
|
||||
<include refid="adminNoticeWhere"/>
|
||||
ORDER BY N.PIN_YN DESC, N.NOTICE_IDX DESC
|
||||
LIMIT #{limit}
|
||||
OFFSET #{offset}
|
||||
</select>
|
||||
|
||||
<select id="selectAdminNoticeView" resultType="com.alist.api.modules.admin.notice.vo.AdminNoticeViewVo">
|
||||
/*AdminNoticeMapper.selectAdminNoticeView*/
|
||||
SELECT N.NOTICE_IDX
|
||||
, N.NOTICE_TYPE
|
||||
, N.TARGET_SCOPE
|
||||
, N.TITLE
|
||||
, N.CONTENT
|
||||
, N.PIN_YN
|
||||
, N.START_DATE
|
||||
, N.END_DATE
|
||||
, N.VIEW_COUNT
|
||||
, N.USE_YN
|
||||
, N.DEL_YN
|
||||
, N.CREATE_DATE
|
||||
, N.CREATE_MEMBER
|
||||
, N.UPDATE_DATE
|
||||
, N.UPDATE_MEMBER
|
||||
FROM ALISTLMS.NOTICE N
|
||||
WHERE N.NOTICE_IDX = #{noticeIdx}
|
||||
AND N.DEL_YN = 'N'
|
||||
</select>
|
||||
|
||||
<select id="selectAdminNoticeCampusIdxList" resultType="long">
|
||||
/*AdminNoticeMapper.selectAdminNoticeCampusIdxList*/
|
||||
SELECT NC.CAMPUS_IDX
|
||||
FROM ALISTLMS.NOTICE_CAMPUS NC
|
||||
WHERE NC.NOTICE_IDX = #{noticeIdx}
|
||||
ORDER BY NC.CAMPUS_IDX
|
||||
</select>
|
||||
|
||||
<select id="selectAdminNoticeFileList" resultType="com.alist.api.modules.admin.notice.vo.AdminNoticeFileVo">
|
||||
/*AdminNoticeMapper.selectAdminNoticeFileList*/
|
||||
SELECT NF.NOTICE_FILE_IDX
|
||||
, NF.NOTICE_IDX
|
||||
, NF.FILE_ORIGINAL_NAME
|
||||
, NF.FILE_SAVE_NAME
|
||||
, NF.FILE_PATH
|
||||
, NF.FILE_SIZE
|
||||
, NF.FILE_EXT
|
||||
, NF.SORT_ORDER
|
||||
, NF.CREATE_DATE
|
||||
FROM ALISTLMS.NOTICE_FILE NF
|
||||
WHERE NF.NOTICE_IDX = #{noticeIdx}
|
||||
AND NF.DEL_YN = 'N'
|
||||
ORDER BY NF.SORT_ORDER ASC, NF.NOTICE_FILE_IDX ASC
|
||||
</select>
|
||||
|
||||
<insert id="insertAdminNoticeAdd" parameterType="com.alist.api.modules.admin.notice.dto.AdminNoticeAddDto" useGeneratedKeys="true" keyProperty="noticeIdx">
|
||||
/*AdminNoticeMapper.insertAdminNoticeAdd*/
|
||||
INSERT INTO ALISTLMS.NOTICE (
|
||||
NOTICE_TYPE
|
||||
, TARGET_SCOPE
|
||||
, TITLE
|
||||
, CONTENT
|
||||
, PIN_YN
|
||||
, START_DATE
|
||||
, END_DATE
|
||||
, USE_YN
|
||||
, DEL_YN
|
||||
, CREATE_MEMBER
|
||||
, UPDATE_MEMBER
|
||||
) VALUES (
|
||||
#{noticeType}
|
||||
, #{targetScope}
|
||||
, #{title}
|
||||
, #{content}
|
||||
, #{pinYn}
|
||||
, #{startDate}
|
||||
, #{endDate}
|
||||
, #{useYn}
|
||||
, 'N'
|
||||
, #{createMember}
|
||||
, #{updateMember}
|
||||
)
|
||||
</insert>
|
||||
|
||||
<insert id="insertAdminNoticeCampusAdd" parameterType="com.alist.api.modules.admin.notice.dto.AdminNoticeCampusDto">
|
||||
/*AdminNoticeMapper.insertAdminNoticeCampusAdd*/
|
||||
INSERT INTO ALISTLMS.NOTICE_CAMPUS (
|
||||
NOTICE_IDX
|
||||
, CAMPUS_IDX
|
||||
, CREATE_MEMBER
|
||||
) VALUES (
|
||||
#{noticeIdx}
|
||||
, #{campusIdx}
|
||||
, #{createMember}
|
||||
)
|
||||
</insert>
|
||||
|
||||
<insert id="insertAdminNoticeFileAdd" parameterType="com.alist.api.modules.admin.notice.dto.AdminNoticeFileDto">
|
||||
/*AdminNoticeMapper.insertAdminNoticeFileAdd*/
|
||||
INSERT INTO ALISTLMS.NOTICE_FILE (
|
||||
NOTICE_IDX
|
||||
, FILE_ORIGINAL_NAME
|
||||
, FILE_SAVE_NAME
|
||||
, FILE_PATH
|
||||
, FILE_SIZE
|
||||
, FILE_EXT
|
||||
, SORT_ORDER
|
||||
, DEL_YN
|
||||
, CREATE_MEMBER
|
||||
, UPDATE_MEMBER
|
||||
) VALUES (
|
||||
#{noticeIdx}
|
||||
, #{fileOriginalName}
|
||||
, #{fileSaveName}
|
||||
, #{filePath}
|
||||
, #{fileSize}
|
||||
, #{fileExt}
|
||||
, #{sortOrder}
|
||||
, 'N'
|
||||
, #{createMember}
|
||||
, #{updateMember}
|
||||
)
|
||||
</insert>
|
||||
|
||||
<update id="updateAdminNoticeModify" parameterType="com.alist.api.modules.admin.notice.dto.AdminNoticeModifyDto">
|
||||
/*AdminNoticeMapper.updateAdminNoticeModify*/
|
||||
UPDATE ALISTLMS.NOTICE
|
||||
SET NOTICE_TYPE = #{noticeType}
|
||||
, TARGET_SCOPE = #{targetScope}
|
||||
, TITLE = #{title}
|
||||
, CONTENT = #{content}
|
||||
, PIN_YN = #{pinYn}
|
||||
, START_DATE = #{startDate}
|
||||
, END_DATE = #{endDate}
|
||||
, USE_YN = #{useYn}
|
||||
, UPDATE_MEMBER = #{updateMember}
|
||||
WHERE NOTICE_IDX = #{noticeIdx}
|
||||
AND DEL_YN = 'N'
|
||||
</update>
|
||||
|
||||
<update id="updateAdminNoticeDelete" parameterType="com.alist.api.modules.admin.notice.dto.AdminNoticeDeleteDto">
|
||||
/*AdminNoticeMapper.updateAdminNoticeDelete*/
|
||||
UPDATE ALISTLMS.NOTICE
|
||||
SET DEL_YN = 'Y'
|
||||
, UPDATE_MEMBER = #{updateMember}
|
||||
WHERE NOTICE_IDX = #{noticeIdx}
|
||||
AND DEL_YN = 'N'
|
||||
</update>
|
||||
|
||||
<delete id="deleteAdminNoticeCampusByNoticeIdx">
|
||||
/*AdminNoticeMapper.deleteAdminNoticeCampusByNoticeIdx*/
|
||||
DELETE FROM ALISTLMS.NOTICE_CAMPUS
|
||||
WHERE NOTICE_IDX = #{noticeIdx}
|
||||
</delete>
|
||||
|
||||
<update id="updateAdminNoticeFileDeleteByNoticeIdx">
|
||||
/*AdminNoticeMapper.updateAdminNoticeFileDeleteByNoticeIdx*/
|
||||
UPDATE ALISTLMS.NOTICE_FILE
|
||||
SET DEL_YN = 'Y'
|
||||
, UPDATE_MEMBER = #{updateMember}
|
||||
WHERE NOTICE_IDX = #{noticeIdx}
|
||||
AND DEL_YN = 'N'
|
||||
</update>
|
||||
|
||||
<update id="updateAdminNoticeFileDeleteByNoticeFileIdxList">
|
||||
/*AdminNoticeMapper.updateAdminNoticeFileDeleteByNoticeFileIdxList*/
|
||||
UPDATE ALISTLMS.NOTICE_FILE
|
||||
SET DEL_YN = 'Y'
|
||||
, UPDATE_MEMBER = #{updateMember}
|
||||
WHERE NOTICE_IDX = #{noticeIdx}
|
||||
AND DEL_YN = 'N'
|
||||
AND NOTICE_FILE_IDX IN
|
||||
<foreach collection="noticeFileIdxList" item="noticeFileIdx" open="(" separator="," close=")">
|
||||
#{noticeFileIdx}
|
||||
</foreach>
|
||||
</update>
|
||||
</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="com.alist.api.modules.admin.schedule.mapper.AdminScheduleMapper">
|
||||
<sql id="adminScheduleWhere">
|
||||
FROM ALISTLMS.SCHEDULE_JOB ASJ
|
||||
WHERE ASJ.DEL_YN = 'N'
|
||||
<if test="keyword != null and keyword != ''">
|
||||
AND (
|
||||
ASJ.JOB_NAME LIKE CONCAT('%', #{keyword}, '%')
|
||||
OR ASJ.JOB_DESCRIPTION LIKE CONCAT('%', #{keyword}, '%')
|
||||
)
|
||||
</if>
|
||||
<if test="jobGroup != null and jobGroup != ''">
|
||||
AND ASJ.JOB_GROUP = #{jobGroup}
|
||||
</if>
|
||||
<if test="lastStatus != null">
|
||||
AND ASJ.LAST_STATUS = #{lastStatus}
|
||||
</if>
|
||||
<if test="useYn != null and useYn != ''">
|
||||
AND ASJ.USE_YN = #{useYn}
|
||||
</if>
|
||||
</sql>
|
||||
|
||||
<select id="selectAdminScheduleCount" resultType="int">
|
||||
/*AdminScheduleMapper.selectAdminScheduleCount*/
|
||||
SELECT COUNT(*)
|
||||
<include refid="adminScheduleWhere"/>
|
||||
</select>
|
||||
|
||||
<select id="selectAdminScheduleList" resultType="com.alist.api.modules.admin.schedule.vo.AdminScheduleVo">
|
||||
/*AdminScheduleMapper.selectAdminScheduleList*/
|
||||
SELECT ASJ.SCHEDULE_JOB_IDX
|
||||
, ASJ.JOB_NAME
|
||||
, ASJ.JOB_GROUP
|
||||
, ASJ.JOB_DESCRIPTION
|
||||
, ASJ.CRON_EXPR
|
||||
, ASJ.TIMEZONE_ID
|
||||
, ASJ.MAX_RUNNING_SECONDS
|
||||
, ASJ.LAST_RUN_DATE
|
||||
, ASJ.LAST_END_DATE
|
||||
, ASJ.LAST_SUCCESS_DATE
|
||||
, ASJ.LAST_STATUS
|
||||
, ASJ.LAST_MESSAGE
|
||||
, ASJ.RUN_LOCK_DATE
|
||||
, ASJ.RUN_LOCK_OWNER
|
||||
, ASJ.USE_YN
|
||||
, ASJ.CREATE_DATE
|
||||
, ASJ.UPDATE_DATE
|
||||
<include refid="adminScheduleWhere"/>
|
||||
ORDER BY ASJ.SCHEDULE_JOB_IDX DESC
|
||||
LIMIT #{limit}
|
||||
OFFSET #{offset}
|
||||
</select>
|
||||
|
||||
<select id="selectAdminScheduleView" resultType="com.alist.api.modules.admin.schedule.vo.AdminScheduleViewVo">
|
||||
/*AdminScheduleMapper.selectAdminScheduleView*/
|
||||
SELECT ASJ.SCHEDULE_JOB_IDX
|
||||
, ASJ.JOB_NAME
|
||||
, ASJ.JOB_GROUP
|
||||
, ASJ.JOB_DESCRIPTION
|
||||
, ASJ.CRON_EXPR
|
||||
, ASJ.TIMEZONE_ID
|
||||
, ASJ.MAX_RUNNING_SECONDS
|
||||
, ASJ.LAST_RUN_DATE
|
||||
, ASJ.LAST_END_DATE
|
||||
, ASJ.LAST_SUCCESS_DATE
|
||||
, ASJ.LAST_STATUS
|
||||
, ASJ.LAST_MESSAGE
|
||||
, ASJ.RUN_LOCK_DATE
|
||||
, ASJ.RUN_LOCK_OWNER
|
||||
, ASJ.USE_YN
|
||||
, ASJ.DEL_YN
|
||||
, ASJ.CREATE_DATE
|
||||
, ASJ.CREATE_MEMBER
|
||||
, ASJ.UPDATE_DATE
|
||||
, ASJ.UPDATE_MEMBER
|
||||
FROM ALISTLMS.SCHEDULE_JOB ASJ
|
||||
WHERE ASJ.SCHEDULE_JOB_IDX = #{scheduleJobIdx}
|
||||
AND ASJ.DEL_YN = 'N'
|
||||
</select>
|
||||
|
||||
<select id="selectAdminScheduleDuplicateCount" resultType="int">
|
||||
/*AdminScheduleMapper.selectAdminScheduleDuplicateCount*/
|
||||
SELECT COUNT(*)
|
||||
FROM ALISTLMS.SCHEDULE_JOB ASJ
|
||||
WHERE ASJ.DEL_YN = 'N'
|
||||
AND ASJ.JOB_NAME = #{jobName}
|
||||
AND ASJ.JOB_GROUP = #{jobGroup}
|
||||
</select>
|
||||
|
||||
<select id="selectAdminScheduleModifyDuplicateCount" resultType="int">
|
||||
/*AdminScheduleMapper.selectAdminScheduleModifyDuplicateCount*/
|
||||
SELECT COUNT(*)
|
||||
FROM ALISTLMS.SCHEDULE_JOB ASJ
|
||||
WHERE ASJ.DEL_YN = 'N'
|
||||
AND ASJ.JOB_NAME = #{jobName}
|
||||
AND ASJ.JOB_GROUP = #{jobGroup}
|
||||
AND ASJ.SCHEDULE_JOB_IDX != #{scheduleJobIdx}
|
||||
</select>
|
||||
|
||||
<sql id="adminScheduleLogWhere">
|
||||
FROM ALISTLMS.SCHEDULE_JOB_LOG ASJL
|
||||
WHERE ASJL.SCHEDULE_JOB_IDX = #{scheduleJobIdx}
|
||||
<if test="status != null">
|
||||
AND ASJL.STATUS = #{status}
|
||||
</if>
|
||||
<if test="startDateFrom != null and startDateFrom != ''">
|
||||
AND ASJL.START_DATE <![CDATA[>=]]> #{startDateFrom}
|
||||
</if>
|
||||
<if test="startDateTo != null and startDateTo != ''">
|
||||
AND ASJL.START_DATE <![CDATA[<=]]> #{startDateTo}
|
||||
</if>
|
||||
</sql>
|
||||
|
||||
<select id="selectAdminScheduleLogCount" resultType="int">
|
||||
/*AdminScheduleMapper.selectAdminScheduleLogCount*/
|
||||
SELECT COUNT(*)
|
||||
<include refid="adminScheduleLogWhere"/>
|
||||
</select>
|
||||
|
||||
<select id="selectAdminScheduleLogList" resultType="com.alist.api.modules.admin.schedule.vo.AdminScheduleLogVo">
|
||||
/*AdminScheduleMapper.selectAdminScheduleLogList*/
|
||||
SELECT ASJL.SCHEDULE_JOB_LOG_IDX
|
||||
, ASJL.SCHEDULE_JOB_IDX
|
||||
, ASJL.RUN_ID
|
||||
, ASJL.JOB_NAME
|
||||
, ASJL.START_DATE
|
||||
, ASJL.END_DATE
|
||||
, ASJL.TARGET_COUNT
|
||||
, ASJL.SUCCESS_COUNT
|
||||
, ASJL.FAIL_COUNT
|
||||
, ASJL.MESSAGE
|
||||
, ASJL.ERROR_MESSAGE
|
||||
, ASJL.LOCK_OWNER
|
||||
, ASJL.STATUS
|
||||
, ASJL.CREATE_DATE
|
||||
<include refid="adminScheduleLogWhere"/>
|
||||
ORDER BY ASJL.SCHEDULE_JOB_LOG_IDX DESC
|
||||
LIMIT #{limit}
|
||||
OFFSET #{offset}
|
||||
</select>
|
||||
|
||||
<insert id="insertAdminScheduleAdd" parameterType="com.alist.api.modules.admin.schedule.dto.AdminScheduleAddDto" useGeneratedKeys="true" keyProperty="scheduleJobIdx">
|
||||
/*AdminScheduleMapper.insertAdminScheduleAdd*/
|
||||
INSERT INTO ALISTLMS.SCHEDULE_JOB (
|
||||
JOB_NAME
|
||||
, JOB_GROUP
|
||||
, JOB_DESCRIPTION
|
||||
, CRON_EXPR
|
||||
, TIMEZONE_ID
|
||||
, MAX_RUNNING_SECONDS
|
||||
, LAST_STATUS
|
||||
, USE_YN
|
||||
, DEL_YN
|
||||
, CREATE_MEMBER
|
||||
, UPDATE_MEMBER
|
||||
) VALUES (
|
||||
#{jobName}
|
||||
, #{jobGroup}
|
||||
, #{jobDescription}
|
||||
, #{cronExpr}
|
||||
, #{timezoneId}
|
||||
, #{maxRunningSeconds}
|
||||
, 0
|
||||
, #{useYn}
|
||||
, 'N'
|
||||
, #{createMember}
|
||||
, #{updateMember}
|
||||
)
|
||||
</insert>
|
||||
|
||||
<update id="updateAdminScheduleModify" parameterType="com.alist.api.modules.admin.schedule.dto.AdminScheduleModifyDto">
|
||||
/*AdminScheduleMapper.updateAdminScheduleModify*/
|
||||
UPDATE ALISTLMS.SCHEDULE_JOB
|
||||
SET JOB_NAME = #{jobName}
|
||||
, JOB_GROUP = #{jobGroup}
|
||||
, JOB_DESCRIPTION = #{jobDescription}
|
||||
, CRON_EXPR = #{cronExpr}
|
||||
, TIMEZONE_ID = #{timezoneId}
|
||||
, MAX_RUNNING_SECONDS = #{maxRunningSeconds}
|
||||
, USE_YN = #{useYn}
|
||||
, UPDATE_MEMBER = #{updateMember}
|
||||
WHERE SCHEDULE_JOB_IDX = #{scheduleJobIdx}
|
||||
AND DEL_YN = 'N'
|
||||
</update>
|
||||
|
||||
<update id="updateAdminScheduleDelete" parameterType="com.alist.api.modules.admin.schedule.dto.AdminScheduleDeleteDto">
|
||||
/*AdminScheduleMapper.updateAdminScheduleDelete*/
|
||||
UPDATE ALISTLMS.SCHEDULE_JOB
|
||||
SET DEL_YN = 'Y'
|
||||
, UPDATE_MEMBER = #{updateMember}
|
||||
WHERE SCHEDULE_JOB_IDX = #{scheduleJobIdx}
|
||||
AND DEL_YN = 'N'
|
||||
</update>
|
||||
</mapper>
|
||||
@@ -1,123 +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="com.alist.api.modules.admin.sso.mapper.AdminSsoMapper">
|
||||
<sql id="adminSsoWhere">
|
||||
FROM ALISTLMS.SSO_CLIENT SC
|
||||
WHERE SC.DEL_YN = 'N'
|
||||
<if test="keyword != null and keyword != ''">
|
||||
AND (
|
||||
SC.CLIENT_ID LIKE CONCAT('%', #{keyword}, '%')
|
||||
OR SC.CLIENT_NAME LIKE CONCAT('%', #{keyword}, '%')
|
||||
OR SC.REDIRECT_URI LIKE CONCAT('%', #{keyword}, '%')
|
||||
OR SC.MEMO LIKE CONCAT('%', #{keyword}, '%')
|
||||
)
|
||||
</if>
|
||||
<if test="useYn != null and useYn != ''">
|
||||
AND SC.USE_YN = #{useYn}
|
||||
</if>
|
||||
</sql>
|
||||
|
||||
<select id="selectAdminSsoCount" resultType="int">
|
||||
/*AdminSsoMapper.selectAdminSsoCount*/
|
||||
SELECT COUNT(*)
|
||||
<include refid="adminSsoWhere"/>
|
||||
</select>
|
||||
|
||||
<select id="selectAdminSsoList" resultType="com.alist.api.modules.admin.sso.vo.AdminSsoVo">
|
||||
/*AdminSsoMapper.selectAdminSsoList*/
|
||||
SELECT SC.SSO_CLIENT_IDX
|
||||
, SC.CLIENT_ID
|
||||
, SC.CLIENT_NAME
|
||||
, SC.REDIRECT_URI
|
||||
, SC.MEMO
|
||||
, SC.USE_YN
|
||||
, SC.CREATE_DATE
|
||||
, SC.UPDATE_DATE
|
||||
<include refid="adminSsoWhere"/>
|
||||
ORDER BY SC.SSO_CLIENT_IDX DESC
|
||||
LIMIT #{limit}
|
||||
OFFSET #{offset}
|
||||
</select>
|
||||
|
||||
<select id="selectAdminSsoView" resultType="com.alist.api.modules.admin.sso.vo.AdminSsoViewVo">
|
||||
/*AdminSsoMapper.selectAdminSsoView*/
|
||||
SELECT SC.SSO_CLIENT_IDX
|
||||
, SC.CLIENT_ID
|
||||
, SC.CLIENT_NAME
|
||||
, SC.REDIRECT_URI
|
||||
, SC.MEMO
|
||||
, SC.USE_YN
|
||||
, SC.DEL_YN
|
||||
, SC.CREATE_DATE
|
||||
, SC.CREATE_MEMBER
|
||||
, SC.UPDATE_DATE
|
||||
, SC.UPDATE_MEMBER
|
||||
FROM ALISTLMS.SSO_CLIENT SC
|
||||
WHERE SC.SSO_CLIENT_IDX = #{ssoClientIdx}
|
||||
AND SC.DEL_YN = 'N'
|
||||
</select>
|
||||
|
||||
<select id="selectAdminSsoDuplicateCount" resultType="int">
|
||||
/*AdminSsoMapper.selectAdminSsoDuplicateCount*/
|
||||
SELECT COUNT(*)
|
||||
FROM ALISTLMS.SSO_CLIENT SC
|
||||
WHERE SC.DEL_YN = 'N'
|
||||
AND SC.CLIENT_ID = #{clientId}
|
||||
</select>
|
||||
|
||||
<select id="selectAdminSsoModifyDuplicateCount" resultType="int">
|
||||
/*AdminSsoMapper.selectAdminSsoModifyDuplicateCount*/
|
||||
SELECT COUNT(*)
|
||||
FROM ALISTLMS.SSO_CLIENT SC
|
||||
WHERE SC.DEL_YN = 'N'
|
||||
AND SC.CLIENT_ID = #{clientId}
|
||||
AND SC.SSO_CLIENT_IDX != #{ssoClientIdx}
|
||||
</select>
|
||||
|
||||
<insert id="insertAdminSsoAdd" parameterType="com.alist.api.modules.admin.sso.dto.AdminSsoAddDto" useGeneratedKeys="true" keyProperty="ssoClientIdx">
|
||||
/*AdminSsoMapper.insertAdminSsoAdd*/
|
||||
INSERT INTO ALISTLMS.SSO_CLIENT (
|
||||
CLIENT_ID
|
||||
, CLIENT_NAME
|
||||
, REDIRECT_URI
|
||||
, MEMO
|
||||
, USE_YN
|
||||
, DEL_YN
|
||||
, CREATE_MEMBER
|
||||
, UPDATE_MEMBER
|
||||
) VALUES (
|
||||
#{clientId}
|
||||
, #{clientName}
|
||||
, #{redirectUri}
|
||||
, #{memo}
|
||||
, #{useYn}
|
||||
, 'N'
|
||||
, #{createMember}
|
||||
, #{updateMember}
|
||||
)
|
||||
</insert>
|
||||
|
||||
|
||||
<update id="updateAdminSsoModify" parameterType="com.alist.api.modules.admin.sso.dto.AdminSsoModifyDto">
|
||||
/*AdminSsoMapper.updateAdminSsoModify*/
|
||||
UPDATE ALISTLMS.SSO_CLIENT
|
||||
SET CLIENT_ID = #{clientId}
|
||||
, CLIENT_NAME = #{clientName}
|
||||
, REDIRECT_URI = #{redirectUri}
|
||||
, MEMO = #{memo}
|
||||
, USE_YN = #{useYn}
|
||||
, UPDATE_MEMBER = #{updateMember}
|
||||
WHERE SSO_CLIENT_IDX = #{ssoClientIdx}
|
||||
AND DEL_YN = 'N'
|
||||
</update>
|
||||
|
||||
<update id="updateAdminSsoDelete" parameterType="com.alist.api.modules.admin.sso.dto.AdminSsoDeleteDto">
|
||||
/*AdminSsoMapper.updateAdminSsoDelete*/
|
||||
UPDATE ALISTLMS.SSO_CLIENT
|
||||
SET DEL_YN = 'Y'
|
||||
, UPDATE_MEMBER = #{updateMember}
|
||||
WHERE SSO_CLIENT_IDX = #{ssoClientIdx}
|
||||
AND DEL_YN = 'N'
|
||||
</update>
|
||||
</mapper>
|
||||
@@ -1,65 +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="com.alist.api.modules.cors.mapper.CorsMapper">
|
||||
<sql id="corsWhere">
|
||||
FROM ALISTLMS.test_cors_allowed_list
|
||||
WHERE del_yn = 1
|
||||
AND allowed_origin IS NOT NULL
|
||||
<if test="keyword != null and keyword != ''">
|
||||
AND allowed_origin LIKE CONCAT('%', #{keyword}, '%')
|
||||
</if>
|
||||
</sql>
|
||||
|
||||
<select id="selectCorsList" resultType="com.alist.api.modules.cors.vo.CorsVo">
|
||||
/*CorsMapper.selectCorsList*/
|
||||
SELECT cors_idx
|
||||
, allowed_origin
|
||||
<include refid="corsWhere"/>
|
||||
ORDER BY cors_idx DESC
|
||||
LIMIT #{limit}
|
||||
OFFSET #{offset}
|
||||
</select>
|
||||
|
||||
<select id="selectCorsListCount" resultType="int">
|
||||
/*CorsMapper.selectCorsListCount*/
|
||||
SELECT COUNT(*)
|
||||
<include refid="corsWhere"/>
|
||||
</select>
|
||||
|
||||
<select id="selectCorsCacheList" resultType="com.alist.api.modules.cors.vo.CorsCacheVo">
|
||||
/*CorsMapper.selectCorsCacheList*/
|
||||
SELECT allowed_origin
|
||||
FROM ALISTLMS.test_cors_allowed_list
|
||||
WHERE del_yn = 1
|
||||
AND allowed_origin IS NOT NULL
|
||||
ORDER BY cors_idx
|
||||
</select>
|
||||
|
||||
<select id="selectCorsCount" parameterType="string" resultType="int">
|
||||
/*CorsMapper.selectCorsCount*/
|
||||
SELECT COUNT(1)
|
||||
FROM ALISTLMS.test_cors_allowed_list
|
||||
WHERE del_yn = 1
|
||||
AND allowed_origin = #{allowedOrigin}
|
||||
</select>
|
||||
|
||||
<insert id="insertCorsAdd" parameterType="com.alist.api.modules.cors.dto.CorsAddDto">
|
||||
/*CorsMapper.insertCorsAdd*/
|
||||
INSERT INTO ALISTLMS.test_cors_allowed_list (
|
||||
allowed_origin
|
||||
, del_yn
|
||||
) VALUES (
|
||||
#{allowedOrigin}
|
||||
, 1
|
||||
)
|
||||
</insert>
|
||||
|
||||
<update id="updateCorsDelete">
|
||||
/*CorsMapper.updateCorsDelete*/
|
||||
UPDATE ALISTLMS.test_cors_allowed_list
|
||||
SET del_yn = 0
|
||||
WHERE cors_idx = #{corsIdx}
|
||||
AND del_yn = 1
|
||||
</update>
|
||||
</mapper>
|
||||
@@ -1,109 +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="com.alist.api.modules.front.user.mapper.UserMapper">
|
||||
|
||||
<select id="selectDuplicateUserCount" resultType="int">
|
||||
/*UserMapper.selectDuplicateUserCount*/
|
||||
select count(*)
|
||||
from ALISTLMS.test_user
|
||||
where id = #{id}
|
||||
</select>
|
||||
|
||||
<select id="selectUserByUserTokenIdx" resultType="com.alist.api.modules.front.user.vo.UserVo">
|
||||
/*UserMapper.selectUserByUserTokenIdx*/
|
||||
SELECT ATU.user_idx
|
||||
, ATU.password
|
||||
FROM ALISTLMS.test_user ATU
|
||||
INNER JOIN ALISTLMS.test_user_token ATUT ON ATUT.user_idx = ATU.user_idx
|
||||
WHERE ATUT.user_token_idx = #{userTokenIdx}
|
||||
AND ATU.del_yn = 1
|
||||
</select>
|
||||
|
||||
<select id="selectUserProfileView" resultType="com.alist.api.modules.front.user.vo.UserProfileViewVo">
|
||||
/*UserMapper.selectUserProfileView*/
|
||||
SELECT ATU.user_idx
|
||||
, ATU.id
|
||||
, ATU.email
|
||||
, ATU.hp
|
||||
, ATUT.user_role
|
||||
, ATUT.user_type
|
||||
FROM ALISTLMS.test_user ATU
|
||||
INNER JOIN ALISTLMS.test_user_token ATUT ON ATUT.user_idx = ATU.user_idx
|
||||
WHERE ATUT.user_token_idx = #{userTokenIdx}
|
||||
AND ATU.del_yn = 1
|
||||
AND ATU.withdraw_status != 'Y'
|
||||
</select>
|
||||
|
||||
<insert id="insertUserAdd" useGeneratedKeys="true" keyProperty="userIdx">
|
||||
/*UserMapper.insertUserAdd*/
|
||||
insert into ALISTLMS.test_user (id, password, del_yn, create_at, update_at)
|
||||
value (#{id}, #{newPassword}, 1, now(), now())
|
||||
</insert>
|
||||
|
||||
<insert id="insertUserToken" useGeneratedKeys="true" keyProperty="userTokenIdx">
|
||||
/*UserMapper.insertUserToken*/
|
||||
insert into ALISTLMS.test_user_token (user_idx, user_api_key, user_role, user_type, created_at, updated_at)
|
||||
value (#{userIdx}, #{userApiKey}, #{userRole}, #{userType}, now(), now())
|
||||
</insert>
|
||||
|
||||
<update id="updateUserPasswordModify">
|
||||
/*UserMapper.updateUserPasswordModify*/
|
||||
UPDATE ALISTLMS.test_user ATU
|
||||
INNER JOIN ALISTLMS.test_user_token ATUT ON ATUT.user_idx = ATU.user_idx
|
||||
SET ATU.password = #{newPassword}
|
||||
, ATU.update_at = now()
|
||||
WHERE ATUT.user_token_idx = #{userTokenIdx}
|
||||
AND ATU.del_yn = 1
|
||||
</update>
|
||||
|
||||
<update id="updateUserProfileModify">
|
||||
/*UserMapper.updateUserProfileModify*/
|
||||
UPDATE ALISTLMS.test_user ATU
|
||||
INNER JOIN ALISTLMS.test_user_token ATUT ON ATUT.user_idx = ATU.user_idx
|
||||
SET ATU.update_at = now()
|
||||
<if test="email != null and email != ''">
|
||||
, ATU.email = #{email}
|
||||
</if>
|
||||
<if test="hp != null and hp != ''">
|
||||
, ATU.hp = #{hp}
|
||||
</if>
|
||||
WHERE ATUT.user_token_idx = #{userTokenIdx}
|
||||
AND ATU.del_yn = 1
|
||||
</update>
|
||||
|
||||
<update id="updateUserWithdrawModify">
|
||||
/*UserMapper.updateUserWithdrawModify*/
|
||||
UPDATE ALISTLMS.test_user ATU
|
||||
INNER JOIN ALISTLMS.test_user_token ATUT ON ATUT.user_idx = ATU.user_idx
|
||||
SET ATU.withdraw_status = #{withdrawStatus}
|
||||
, ATU.withdraw_at =
|
||||
CASE
|
||||
WHEN #{withdrawStatus} = 'P' THEN now()
|
||||
WHEN #{withdrawStatus} = 'N' THEN NULL
|
||||
ELSE ATU.withdraw_at
|
||||
END
|
||||
, ATU.update_at = now()
|
||||
WHERE ATUT.user_token_idx = #{userTokenIdx}
|
||||
AND ATU.del_yn = 1
|
||||
AND ATU.withdraw_status != 'Y'
|
||||
</update>
|
||||
|
||||
<update id="updateUserDormantModify">
|
||||
/*UserMapper.updateUserDormantModify*/
|
||||
UPDATE ALISTLMS.test_user ATU
|
||||
INNER JOIN ALISTLMS.test_user_token ATUT ON ATUT.user_idx = ATU.user_idx
|
||||
SET ATU.dormant_yn = #{dormantYn}
|
||||
, ATU.dormant_at =
|
||||
CASE
|
||||
WHEN #{dormantYn} = 'Y' THEN now()
|
||||
WHEN #{dormantYn} = 'N' THEN NULL
|
||||
ELSE ATU.dormant_at
|
||||
END
|
||||
, ATU.update_at = now()
|
||||
WHERE ATUT.user_token_idx = #{userTokenIdx}
|
||||
AND ATU.del_yn = 1
|
||||
AND ATU.withdraw_status != 'Y'
|
||||
</update>
|
||||
|
||||
</mapper>
|
||||
@@ -1,73 +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="com.alist.api.modules.front.auth.mapper.AuthMapper">
|
||||
<update id="updateRefreshToken">
|
||||
/*LoginMapper.updateRefreshToken*/
|
||||
update ALISTLMS.test_user_token
|
||||
set refresh_token = #{refreshToken}
|
||||
, expires_at = #{expiresAt}
|
||||
, updated_at = now()
|
||||
where user_token_idx = #{userTokenIdx}
|
||||
</update>
|
||||
|
||||
<select id="selectLogin" resultType="com.alist.api.modules.front.auth.vo.LoginVo">
|
||||
/*LoginMapper.selectLogin*/
|
||||
SELECT ATU.user_idx
|
||||
, ATU.id
|
||||
, ATU.password
|
||||
FROM ALISTLMS.test_user ATU
|
||||
INNER JOIN ALISTLMS.test_user_token ATUT ON ATUT.user_idx = ATU.user_idx
|
||||
WHERE ATU.id = #{id}
|
||||
AND ATU.del_yn = 1
|
||||
AND ATUT.user_type IN ('T','S')
|
||||
LIMIT 1
|
||||
</select>
|
||||
|
||||
<select id="selectUserTokenByUserId" resultType="com.alist.api.modules.front.auth.vo.LoginTokenVo">
|
||||
/*LoginMapper.selectUserTokenByUserId*/
|
||||
select user_token_idx
|
||||
, user_role
|
||||
, user_type
|
||||
, refresh_token
|
||||
from ALISTLMS.test_user_token
|
||||
where user_idx = #{userIdx}
|
||||
</select>
|
||||
|
||||
<select id="selectUserTokenByUserApiKey" resultType="com.alist.api.modules.front.auth.vo.LoginTokenVo">
|
||||
/*LoginMapper.selectUserTokenByUserApiKey*/
|
||||
select user_token_idx
|
||||
, user_role
|
||||
, user_type
|
||||
, refresh_token
|
||||
from ALISTLMS.test_user_token
|
||||
where user_api_key = #{userApiKey}
|
||||
</select>
|
||||
|
||||
<select id="selectUserTokenByUserTokenIdx" resultType="com.alist.api.modules.front.auth.vo.LoginTokenVo">
|
||||
/*LoginMapper.selectUserTokenByUserTokenIdx*/
|
||||
select user_token_idx
|
||||
, user_role
|
||||
, user_type
|
||||
, refresh_token
|
||||
from ALISTLMS.test_user_token
|
||||
where user_token_idx = #{userTokenIdx}
|
||||
</select>
|
||||
|
||||
<update id="clearRefreshTokenByUserTokenIdx">
|
||||
/*LoginMapper.clearRefreshTokenByUserTokenIdx*/
|
||||
update ALISTLMS.test_user_token
|
||||
set refresh_token = null
|
||||
, expires_at = null
|
||||
, updated_at = now()
|
||||
where user_token_idx = #{userTokenIdx}
|
||||
</update>
|
||||
|
||||
<update id="updateLoginByLastAt">
|
||||
/*LoginMapper.updateLoginByLastAt*/
|
||||
update ALISTLMS.test_user
|
||||
set last_login_at = now()
|
||||
, update_at = now()
|
||||
where user_idx = #{userIdx}
|
||||
</update>
|
||||
</mapper>
|
||||
@@ -1,18 +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="com.alist.api.modules.front.auth.mapper.SsoMapper">
|
||||
<select id="selectSsoClient" resultType="com.alist.api.modules.front.auth.vo.SsoClientVo">
|
||||
/*SsoMapper.selectSsoClient*/
|
||||
SELECT SSO_CLIENT_IDX
|
||||
, CLIENT_ID
|
||||
, CLIENT_NAME
|
||||
, REDIRECT_URI
|
||||
, MEMO
|
||||
, USE_YN
|
||||
FROM ALISTLMS.SSO_CLIENT
|
||||
WHERE CLIENT_ID = #{clientId}
|
||||
AND USE_YN = 'Y'
|
||||
LIMIT 1
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -1,26 +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="com.alist.api.modules.migration.alist.user.mapper.AlistUserMapper">
|
||||
<select id="selectAlistUserList" resultType="com.alist.api.modules.migration.alist.user.vo.AlistUserVo">
|
||||
/*AlistUserMapper.selectAlistUserList*/
|
||||
SELECT memid AS ID
|
||||
, memname AS NAME
|
||||
, memhp AS HP
|
||||
, mememail AS EMAIL
|
||||
, (
|
||||
CASE memType
|
||||
WHEN 'S' THEN '학생'
|
||||
WHEN 'T' THEN '교사'
|
||||
WHEN 'P' THEN '일반'
|
||||
ELSE '기타'
|
||||
END
|
||||
) AS TYPE
|
||||
, regdate as JOIN_DATE
|
||||
FROM dbo.member WITH (NOLOCK)
|
||||
WHERE memid = #{id}
|
||||
AND PWDCOMPARE(#{password}
|
||||
, mempw) = 1
|
||||
AND memstatus <![CDATA[<>]]> 'LEAVE'
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -1,44 +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="com.alist.api.modules.migration.eltown.user.mapper.EltownUserMapper">
|
||||
<select id="selectEltownUserList" resultType="com.alist.api.modules.migration.eltown.user.vo.EltownUserVo">
|
||||
/*EltownUserMapper.selectEltownUserList*/
|
||||
SELECT '학생' AS TYPE
|
||||
, User_Id AS ID
|
||||
, User_Name AS NAME
|
||||
, User_Email AS EMAIL
|
||||
, '' AS HP
|
||||
, Ins_Date AS JOIN_DATE
|
||||
FROM dbo.SSL_T_PSN_MEM_01
|
||||
WHERE User_Id = #{id}
|
||||
AND User_Pwd = #{md5Password}
|
||||
AND ISNULL(DeleteYN, 'N') = 'N'
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT '단체' AS TYPE
|
||||
, Group_Id AS ID
|
||||
, Group_Name AS NAME
|
||||
, Group_Email AS EMAIL
|
||||
, CONCAT(Group_Tel1, '-', Group_Tel2, '-', Group_Tel3) AS HP
|
||||
, Ins_Date AS JOIN_DATE
|
||||
FROM dbo.SSL_T_GRO_MEM_01
|
||||
WHERE Group_Id = #{id}
|
||||
AND Group_Pwd = #{md5Password}
|
||||
AND ISNULL(DeleteYN, 'N') = 'N'
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT '교사' AS TYPE
|
||||
, Teacher_Id AS ID
|
||||
, Teacher_Name AS NAME
|
||||
, Teacher_Email AS EMAIL
|
||||
, '' AS HP
|
||||
, Ins_Date AS JOIN_DATE
|
||||
FROM dbo.SSL_T_TEA_MEM_01
|
||||
WHERE Teacher_Id = #{id}
|
||||
AND Teacher_Pwd = #{md5Password}
|
||||
AND ISNULL(DeleteYN, 'N') = 'N'
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -1,356 +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="com.alist.api.modules.tusFile.mapper.TusFileMapper">
|
||||
<select id="selectTusFileUploadAuthCount" resultType="java.lang.Integer">
|
||||
/*TusFileMapper.selectTusFileUploadAuthCount*/
|
||||
SELECT COUNT(*)
|
||||
FROM ALISTLMS.FILE_DETAIL LFD
|
||||
INNER JOIN ALISTLMS.test_user_token LTUT ON LTUT.user_idx = LFD.CREATE_MEMBER
|
||||
WHERE LFD.DEL_YN = 'N'
|
||||
AND LFD.FILE_UUID = #{fileUuid}
|
||||
AND LTUT.user_token_idx = #{userTokenIdx}
|
||||
AND LFD.STATUS IN (0,1,2,3)
|
||||
AND (#{sizeBytes} IS NULL OR LFD.SIZE_BYTES = #{sizeBytes})
|
||||
AND (#{originName} IS NULL OR #{originName} = '' OR LFD.ORIGIN_NAME = #{originName})
|
||||
AND (
|
||||
#{contentType} IS NULL OR #{contentType} = ''
|
||||
OR LFD.CONTENT_TYPE IS NULL OR LFD.CONTENT_TYPE = ''
|
||||
OR LOWER(LFD.CONTENT_TYPE) = LOWER(#{contentType})
|
||||
)
|
||||
</select>
|
||||
|
||||
<select id="selectTusFileUploadMeta" resultType="com.alist.api.modules.tusFile.dto.TusFileUploadMetaDto">
|
||||
/*TusFileMapper.selectTusFileUploadMeta*/
|
||||
SELECT FILE_UUID, ORIGIN_NAME, SIZE_BYTES, CONTENT_TYPE, TUS_UPLOAD_ID, STATUS
|
||||
FROM ALISTLMS.FILE_DETAIL
|
||||
WHERE FILE_UUID = #{fileUuid}
|
||||
AND DEL_YN = 'N'
|
||||
LIMIT 1
|
||||
</select>
|
||||
|
||||
<select id="selectTusFileUploadCancelCount" resultType="java.lang.Integer">
|
||||
/*TusFileMapper.selectTusFileUploadCancelCount*/
|
||||
SELECT COUNT(*)
|
||||
FROM ALISTLMS.FILE_DETAIL LFD
|
||||
INNER JOIN ALISTLMS.test_user_token LTUT ON LTUT.user_idx = LFD.CREATE_MEMBER
|
||||
WHERE LFD.DEL_YN = 'N'
|
||||
AND LFD.FILE_UUID = #{fileUuid}
|
||||
AND LTUT.user_token_idx = #{userTokenIdx}
|
||||
AND LFD.STATUS IN (0,1,2)
|
||||
</select>
|
||||
|
||||
<select id="selectTusFileUploadCancelProgress" resultType="com.alist.api.modules.tusFile.vo.TusFileUploadCancelProgressVo">
|
||||
/*TusFileMapper.selectTusFileUploadCancelProgress*/
|
||||
SELECT LFD.FILE_UUID
|
||||
, COALESCE(LFD.UPLOADED_BYTES, 0) AS UPLOADED_BYTES
|
||||
, COALESCE(LFD.SIZE_BYTES, 0) AS SIZE_BYTES
|
||||
FROM ALISTLMS.FILE_DETAIL LFD
|
||||
INNER JOIN ALISTLMS.test_user_token LTUT ON LTUT.user_idx = LFD.CREATE_MEMBER
|
||||
WHERE LFD.FILE_UUID = #{fileUuid}
|
||||
AND LTUT.user_token_idx = #{userTokenIdx}
|
||||
AND LFD.DEL_YN = 'N'
|
||||
LIMIT 1
|
||||
</select>
|
||||
|
||||
<select id="selectTusFileMoveTask" resultType="com.alist.api.modules.tusFile.dto.TusFileMoveTaskDto">
|
||||
/*TusFileMapper.selectTusFileMoveTask*/
|
||||
SELECT LFD.FILE_DETAIL_IDX
|
||||
, LFD.FILE_MASTER_IDX
|
||||
, LFD.FILE_UUID
|
||||
, LFD.TUS_UPLOAD_ID
|
||||
, LFD.ORIGIN_NAME
|
||||
, LFD.CONTENT_TYPE
|
||||
, LFD.SIZE_BYTES
|
||||
, LFD.UPLOADED_BYTES
|
||||
, LFM.FOLDER_PATH
|
||||
, LFD.SAVE_NAME
|
||||
, LFD.SAVE_PATH
|
||||
, LFD.`EXT`
|
||||
, LFD.MOVE_YN
|
||||
, LFD.MOVE_TRY_COUNT
|
||||
, LFD.MOVE_LAST_ERROR
|
||||
FROM ALISTLMS.FILE_DETAIL LFD
|
||||
INNER JOIN ALISTLMS.FILE_MASTER LFM ON LFM.FILE_MASTER_IDX = LFD.FILE_MASTER_IDX
|
||||
AND LFM.DEL_YN = 'N'
|
||||
WHERE LFD.FILE_UUID = #{fileUuid}
|
||||
AND LFD.DEL_YN = 'N'
|
||||
LIMIT 1
|
||||
</select>
|
||||
|
||||
<select id="selectTusFileList" resultType="com.alist.api.modules.tusFile.vo.TusFileListItemVo">
|
||||
/*TusFileMapper.selectTusFileList*/
|
||||
SELECT LFD.FILE_DETAIL_IDX
|
||||
, LFD.FILE_MASTER_IDX
|
||||
, LFD.FILE_UUID
|
||||
, LFD.ORIGIN_NAME
|
||||
, LFD.CONTENT_TYPE
|
||||
, LFD.SIZE_BYTES
|
||||
FROM ALISTLMS.FILE_DETAIL LFD
|
||||
INNER JOIN ALISTLMS.FILE_MASTER LFM ON LFM.FILE_MASTER_IDX = LFD.FILE_MASTER_IDX
|
||||
AND LFM.DEL_YN = 'N'
|
||||
INNER JOIN ALISTLMS.test_user_token LTUT ON LTUT.user_idx = LFM.USER_IDX
|
||||
WHERE LFD.FILE_MASTER_IDX = #{fileMasterIdx}
|
||||
AND LTUT.user_token_idx = #{userTokenIdx}
|
||||
AND LFD.DEL_YN = 'N'
|
||||
AND LFD.STATUS = 3
|
||||
AND LFD.MOVE_YN = 'Y'
|
||||
ORDER BY LFD.FILE_SEQ ASC, LFD.FILE_DETAIL_IDX ASC
|
||||
</select>
|
||||
|
||||
<select id="selectTusFileViewOrDownload" resultType="com.alist.api.modules.tusFile.vo.TusFileViewOrDownloadVo">
|
||||
/*TusFileMapper.selectTusFileViewOrDownload*/
|
||||
SELECT LFD.FILE_DETAIL_IDX
|
||||
, LFD.FILE_MASTER_IDX
|
||||
, LFD.FILE_UUID
|
||||
, LFD.ORIGIN_NAME
|
||||
, LFD.CONTENT_TYPE
|
||||
, LFD.SIZE_BYTES
|
||||
, LFD.SAVE_PATH
|
||||
, LTUT.user_idx
|
||||
FROM ALISTLMS.FILE_DETAIL LFD
|
||||
INNER JOIN ALISTLMS.FILE_MASTER LFM ON LFM.FILE_MASTER_IDX = LFD.FILE_MASTER_IDX
|
||||
AND LFM.DEL_YN = 'N'
|
||||
INNER JOIN ALISTLMS.test_user_token LTUT ON LTUT.user_idx = LFM.USER_IDX
|
||||
WHERE LFD.FILE_UUID = #{fileUuid}
|
||||
AND LTUT.user_token_idx = #{userTokenIdx}
|
||||
AND LFD.DEL_YN = 'N'
|
||||
AND LFD.STATUS = 3
|
||||
AND LFD.MOVE_YN = 'Y'
|
||||
LIMIT 1
|
||||
</select>
|
||||
|
||||
<select id="selectTusFileDeleteTargetCount" resultType="java.lang.Integer">
|
||||
/*TusFileMapper.selectTusFileDeleteTargetCount*/
|
||||
SELECT COUNT(*)
|
||||
FROM ALISTLMS.FILE_DETAIL LFD
|
||||
INNER JOIN ALISTLMS.FILE_MASTER LFM ON LFM.FILE_MASTER_IDX = LFD.FILE_MASTER_IDX
|
||||
AND LFM.DEL_YN = 'N'
|
||||
INNER JOIN ALISTLMS.test_user_token LTUT ON LTUT.user_idx = LFM.USER_IDX
|
||||
WHERE LFD.FILE_UUID = #{fileUuid}
|
||||
AND LTUT.user_token_idx = #{userTokenIdx}
|
||||
AND LFD.DEL_YN = 'N'
|
||||
AND LFD.STATUS = 3
|
||||
AND LFM.STATUS = 3
|
||||
</select>
|
||||
|
||||
<select id="selectUserIdxByUserTokenIdx" resultType="java.lang.Integer">
|
||||
/*TusFileMapper.selectUserIdxByUserTokenIdx*/
|
||||
SELECT user_idx
|
||||
FROM test_user_token
|
||||
WHERE user_token_idx = #{userTokenIdx}
|
||||
</select>
|
||||
|
||||
<insert id="insertTusFileUploadInitMaster" useGeneratedKeys="true" keyProperty="fileMasterIdx">
|
||||
/*TusFileMapper.insertTusFileUploadInitMaster*/
|
||||
INSERT INTO ALISTLMS.FILE_MASTER (
|
||||
USER_IDX, FILE_CATEGORY, FOLDER_PATH, TOTAL_COUNT, DONE_COUNT, FAIL_COUNT, STATUS, DEL_YN, CREATE_MEMBER, UPDATE_MEMBER
|
||||
) VALUES (
|
||||
#{userIdx}, #{fileCategory}, #{folderPath}, #{totalCount}, 0, 0, #{status}, 'N', #{userIdx}, #{userIdx}
|
||||
)
|
||||
</insert>
|
||||
|
||||
<insert id="insertTusFileUploadInitDetail">
|
||||
/*TusFileMapper.insertTusFileUploadInitDetail*/
|
||||
INSERT INTO ALISTLMS.FILE_DETAIL (
|
||||
FILE_MASTER_IDX, FILE_SEQ, FILE_UUID, ORIGIN_NAME, CONTENT_TYPE, SIZE_BYTES, UPLOADED_BYTES, TUS_UPLOAD_ID, STATUS, DEL_YN, CREATE_MEMBER, UPDATE_MEMBER
|
||||
) VALUES (
|
||||
#{fileMasterIdx}, #{fileSeq}, #{fileUuid}, #{originName}, #{contentType}, #{sizeBytes}, 0, NULL, #{status}, 'N', #{userIdx}, #{userIdx}
|
||||
)
|
||||
</insert>
|
||||
|
||||
<insert id="insertTusFileHookEventLog">
|
||||
/*TusFileMapper.insertTusFileHookEventLog*/
|
||||
INSERT INTO ALISTLMS.FILE_UPLOAD_EVENT_LOG (
|
||||
FILE_DETAIL_IDX, EVENT_TYPE, OFFSET_BYTES, BYTES_WRITTEN, HTTP_STATUS, MESSAGE, RAW_JSON
|
||||
)
|
||||
SELECT LFD.FILE_DETAIL_IDX
|
||||
, #{type}
|
||||
, #{offset}
|
||||
, NULL
|
||||
, NULL
|
||||
, NULL
|
||||
, NULL
|
||||
FROM ALISTLMS.FILE_DETAIL LFD
|
||||
WHERE LFD.FILE_UUID = #{fileUuid}
|
||||
LIMIT 1
|
||||
</insert>
|
||||
|
||||
<insert id="insertTusFileViewOrDownloadEventLog">
|
||||
/*TusFileMapper.insertTusFileViewOrDownloadEventLog*/
|
||||
INSERT INTO ALISTLMS.FILE_DOWNLOAD_EVENT_LOG (
|
||||
FILE_MASTER_IDX
|
||||
, FILE_DETAIL_IDX
|
||||
, FILE_UUID
|
||||
, EVENT_TYPE
|
||||
, USER_IDX
|
||||
, USER_TOKEN_IDX
|
||||
, CLIENT_IP
|
||||
, USER_AGENT
|
||||
, REFERER
|
||||
, DEL_YN
|
||||
, CREATE_MEMBER
|
||||
) VALUES (
|
||||
#{fileMasterIdx}
|
||||
, #{fileDetailIdx}
|
||||
, #{fileUuid}
|
||||
, #{eventType}
|
||||
, #{userIdx}
|
||||
, #{userTokenIdx}
|
||||
, #{clientIp}
|
||||
, #{userAgent}
|
||||
, #{referer}
|
||||
, 'N'
|
||||
, #{userIdx}
|
||||
)
|
||||
</insert>
|
||||
|
||||
<update id="updateTusFileHookDetailStatus">
|
||||
/*TusFileMapper.updateTusFileHookDetailStatus*/
|
||||
UPDATE ALISTLMS.FILE_DETAIL
|
||||
<set>
|
||||
<if test="uploadId != null and uploadId != ''">
|
||||
TUS_UPLOAD_ID = #{uploadId},
|
||||
</if>
|
||||
<if test="uploadedBytes != null">
|
||||
UPLOADED_BYTES = #{uploadedBytes},
|
||||
</if>
|
||||
<if test="status != null">
|
||||
STATUS = #{status},
|
||||
</if>
|
||||
UPDATE_DATE = NOW()
|
||||
</set>
|
||||
WHERE FILE_UUID = #{fileUuid}
|
||||
AND DEL_YN = 'N'
|
||||
</update>
|
||||
|
||||
<update id="updateFileMasterAggregateByFileUuid">
|
||||
/*TusFileMapper.updateFileMasterAggregateByFileUuid*/
|
||||
UPDATE ALISTLMS.FILE_MASTER LFM
|
||||
JOIN (
|
||||
SELECT LLFD.FILE_MASTER_IDX
|
||||
, COUNT(*) AS total_count
|
||||
, SUM(CASE WHEN LLFD.STATUS = 3 THEN 1 ELSE 0 END) AS done_count
|
||||
, SUM(CASE WHEN LLFD.STATUS IN (4,5) THEN 1 ELSE 0 END) AS fail_count
|
||||
FROM ALISTLMS.FILE_DETAIL LLFD
|
||||
WHERE LLFD.FILE_MASTER_IDX = (
|
||||
SELECT FILE_MASTER_IDX
|
||||
FROM ALISTLMS.FILE_DETAIL
|
||||
WHERE FILE_UUID = #{fileUuid}
|
||||
LIMIT 1
|
||||
)
|
||||
AND LLFD.DEL_YN = 'N'
|
||||
) A ON A.FILE_MASTER_IDX = LFM.FILE_MASTER_IDX
|
||||
SET LFM.TOTAL_COUNT = A.total_count
|
||||
, LFM.DONE_COUNT = A.done_count
|
||||
, LFM.FAIL_COUNT = A.fail_count
|
||||
, LFM.STATUS = CASE
|
||||
WHEN A.done_count = A.total_count THEN 3
|
||||
WHEN A.done_count = 0 AND A.fail_count = A.total_count THEN 4
|
||||
WHEN A.done_count > 0 AND A.fail_count > 0 THEN 5
|
||||
ELSE 1
|
||||
END
|
||||
, LFM.UPDATE_DATE = NOW()
|
||||
</update>
|
||||
|
||||
<update id="updateTusFileUploadIdIfNull" parameterType="com.alist.api.modules.tusFile.dto.TusFileUploadMetaDto">
|
||||
/*TusFileMapper.updateTusFileUploadIdIfNull*/
|
||||
UPDATE ALISTLMS.FILE_DETAIL
|
||||
SET TUS_UPLOAD_ID = #{tusUploadId}
|
||||
, UPDATE_DATE = NOW()
|
||||
WHERE FILE_UUID = #{fileUuid}
|
||||
AND DEL_YN = 'N'
|
||||
AND TUS_UPLOAD_ID IS NULL
|
||||
</update>
|
||||
|
||||
<update id="updateFileDetailCanceledByFileUuid">
|
||||
/*TusFileMapper.updateFileDetailCanceledByFileUuid*/
|
||||
UPDATE ALISTLMS.FILE_DETAIL
|
||||
SET STATUS = 5
|
||||
, UPDATE_DATE = NOW()
|
||||
WHERE FILE_UUID = #{fileUuid}
|
||||
AND DEL_YN = 'N'
|
||||
AND STATUS IN (0,1,2)
|
||||
</update>
|
||||
|
||||
<update id="updateTusFileMoveSuccess" parameterType="com.alist.api.modules.tusFile.dto.TusFileMoveTaskDto">
|
||||
/*TusFileMapper.updateTusFileMoveSuccess*/
|
||||
UPDATE ALISTLMS.FILE_DETAIL
|
||||
SET SAVE_NAME = #{saveName}
|
||||
, SAVE_PATH = #{savePath}
|
||||
, `EXT` = #{ext}
|
||||
, MOVE_YN = 'Y'
|
||||
, MOVE_DATE = NOW()
|
||||
, MOVE_LAST_ERROR = NULL
|
||||
, MOVE_LOCK_AT = NULL
|
||||
, MOVE_LOCK_OWNER = NULL
|
||||
, UPDATE_DATE = NOW()
|
||||
WHERE FILE_DETAIL_IDX = #{fileDetailIdx}
|
||||
AND DEL_YN = 'N'
|
||||
</update>
|
||||
|
||||
<update id="updateTusFileMovePending" parameterType="com.alist.api.modules.tusFile.dto.TusFileMoveTaskDto">
|
||||
/*TusFileMapper.updateTusFileMovePending*/
|
||||
UPDATE ALISTLMS.FILE_DETAIL
|
||||
SET MOVE_YN = 'N'
|
||||
, MOVE_TRY_COUNT = COALESCE(MOVE_TRY_COUNT, 0) + 1
|
||||
, MOVE_LAST_ERROR = #{moveLastError}
|
||||
, UPDATE_DATE = NOW()
|
||||
WHERE FILE_UUID = #{fileUuid}
|
||||
AND DEL_YN = 'N'
|
||||
AND STATUS = 3
|
||||
</update>
|
||||
|
||||
<update id="updateTusFileDetailDelete">
|
||||
/*TusFileMapper.updateTusFileDetailDelete*/
|
||||
UPDATE ALISTLMS.FILE_DETAIL LFD
|
||||
INNER JOIN ALISTLMS.FILE_MASTER LFM ON LFM.FILE_MASTER_IDX = LFD.FILE_MASTER_IDX
|
||||
AND LFM.DEL_YN = 'N'
|
||||
INNER JOIN ALISTLMS.test_user_token LTUT ON LTUT.user_idx = LFM.USER_IDX
|
||||
SET LFD.DEL_YN = 'Y'
|
||||
, LFD.UPDATE_DATE = NOW()
|
||||
WHERE LFD.FILE_UUID = #{fileUuid}
|
||||
AND LTUT.user_token_idx = #{userTokenIdx}
|
||||
AND LFD.DEL_YN = 'N'
|
||||
AND LFD.STATUS = 3
|
||||
AND LFM.STATUS = 3
|
||||
</update>
|
||||
|
||||
<update id="updateTusFileMasterDelete">
|
||||
/*TusFileMapper.updateTusFileMasterDelete*/
|
||||
UPDATE ALISTLMS.FILE_MASTER LFM
|
||||
INNER JOIN (
|
||||
SELECT LFD.FILE_MASTER_IDX
|
||||
FROM ALISTLMS.FILE_DETAIL LFD
|
||||
WHERE LFD.FILE_UUID = #{fileUuid}
|
||||
AND LFD.DEL_YN = 'Y'
|
||||
LIMIT 1
|
||||
) TARGET ON TARGET.FILE_MASTER_IDX = LFM.FILE_MASTER_IDX
|
||||
INNER JOIN ALISTLMS.test_user_token LTUT
|
||||
ON LTUT.user_idx = LFM.USER_IDX
|
||||
SET LFM.DEL_YN = 'Y'
|
||||
, LFM.UPDATE_DATE = NOW()
|
||||
WHERE LTUT.user_token_idx = #{userTokenIdx}
|
||||
AND LFM.DEL_YN = 'N'
|
||||
AND LFM.STATUS = 3
|
||||
AND NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM ALISTLMS.FILE_DETAIL CHK
|
||||
WHERE CHK.FILE_MASTER_IDX = LFM.FILE_MASTER_IDX
|
||||
AND CHK.DEL_YN = 'N'
|
||||
)
|
||||
</update>
|
||||
|
||||
<update id="updateTusFileUploadCancel">
|
||||
/*TusFileMapper.updateTusFileUploadCancel*/
|
||||
UPDATE ALISTLMS.FILE_DETAIL LFD
|
||||
INNER JOIN ALISTLMS.test_user_token LTUT ON LTUT.user_idx = LFD.CREATE_MEMBER
|
||||
SET LFD.STATUS = 5
|
||||
, LFD.UPDATE_DATE = NOW()
|
||||
WHERE LFD.DEL_YN = 'N'
|
||||
AND LFD.FILE_UUID = #{fileUuid}
|
||||
AND LTUT.user_token_idx = #{userTokenIdx}
|
||||
AND LFD.STATUS IN (0,1,2)
|
||||
</update>
|
||||
|
||||
</mapper>
|
||||
@@ -1,2 +0,0 @@
|
||||
User-agent: *
|
||||
Disallow: /
|
||||
Reference in New Issue
Block a user