fix(backoffice): restore Smilegate user mapper

This commit is contained in:
devmrko
2026-07-22 14:11:23 +09:00
parent 0eb68664f1
commit ea4fc1de8b

View File

@@ -3,27 +3,16 @@
"https://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cloudhandson.vpdbackoffice.mapper.UserMapper">
<select id="findAll" resultType="com.cloudhandson.vpdbackoffice.domain.user.AppUser">
SELECT e.employee_id AS user_id,
e.full_name AS username,
e.employee_code AS emp_no,
t.team_code AS dept_code,
'N' AS can_read_contents,
CASE WHEN e.employment_status = 'ACTIVE' THEN 'Y' ELSE 'N' END AS active_yn
FROM hmm_hr_employees e
JOIN hmm_org_teams t ON t.team_id = e.team_id
SELECT user_id, user_name AS username, employee_no AS emp_no, dept_code,
can_read_contents, active AS active_yn
FROM sg_app_user
ORDER BY username
</select>
<select id="findById" resultType="com.cloudhandson.vpdbackoffice.domain.user.AppUser">
SELECT e.employee_id AS user_id,
e.full_name AS username,
e.employee_code AS emp_no,
t.team_code AS dept_code,
'N' AS can_read_contents,
CASE WHEN e.employment_status = 'ACTIVE' THEN 'Y' ELSE 'N' END AS active_yn
FROM hmm_hr_employees e
JOIN hmm_org_teams t ON t.team_id = e.team_id
WHERE e.employee_id = #{userId}
SELECT user_id, user_name AS username, employee_no AS emp_no, dept_code,
can_read_contents, active AS active_yn
FROM sg_app_user WHERE user_id = #{userId}
</select>
<select id="findUserRoles" resultType="com.cloudhandson.vpdbackoffice.domain.user.UserRoleView">
@@ -31,46 +20,32 @@
u.user_name AS username,
r.role_id,
r.role_name
FROM hmm_employee_access_roles ur
JOIN hmm_hr_employees u ON u.employee_id = ur.employee_id
JOIN hmm_access_roles r ON r.role_id = ur.role_id
ORDER BY u.full_name, r.role_name
FROM sg_user_role ur
JOIN sg_app_user u ON u.user_id = ur.user_id
JOIN sg_app_role r ON r.role_id = ur.role_id
ORDER BY u.user_name, r.role_name
</select>
<select id="nextUserId" resultType="long">
SELECT NVL(MAX(employee_id), 0) + 1 FROM hmm_hr_employees
SELECT NVL(MAX(user_id), 0) + 1 FROM sg_app_user
</select>
<insert id="insertUser">
INSERT INTO hmm_hr_employees (
employee_id, employee_code, full_name, email, job_title, team_id, hire_date, employment_status
)
SELECT #{userId},
#{command.empNo},
#{command.username},
LOWER(#{command.empNo}) || '@example.test',
'HMM Demo Employee',
t.team_id,
TRUNC(SYSDATE),
'ACTIVE'
FROM hmm_org_teams t
WHERE t.team_code = #{command.deptCode}
INSERT INTO sg_app_user (user_id, login_id, user_name, employee_no, dept_code, can_read_contents, active)
VALUES (#{userId}, LOWER(#{command.empNo}), #{command.username}, #{command.empNo},
#{command.deptCode}, 'N', 'Y')
</insert>
<update id="updateActive">
UPDATE hmm_hr_employees
SET employment_status = CASE WHEN #{activeYn} = 'Y' THEN 'ACTIVE' ELSE 'INACTIVE' END
WHERE employee_id = #{userId}
UPDATE sg_app_user SET active = #{activeYn} WHERE user_id = #{userId}
</update>
<insert id="insertUserRole">
INSERT INTO hmm_employee_access_roles (employee_id, role_id)
VALUES (#{userId}, #{roleId})
INSERT INTO sg_user_role (user_id, role_id) VALUES (#{userId}, #{roleId})
</insert>
<delete id="deleteUserRole">
DELETE FROM hmm_employee_access_roles
WHERE employee_id = #{userId}
DELETE FROM sg_user_role WHERE user_id = #{userId}
AND role_id = #{roleId}
</delete>
</mapper>