Commit 13006d6c by guojuxing

管理员判断类型:GIC管理员和运营管理员

parent bf44195a
...@@ -20,6 +20,15 @@ public interface UserService { ...@@ -20,6 +20,15 @@ public interface UserService {
* @return * @return
*/ */
int saveUser(UserDTO userDTO); int saveUser(UserDTO userDTO);
/**
* 新增运营实施管理员
* @Title: saveOperationUser

* @Description:

 * @author guojuxing
* @param userDTO

* @return int


 */
int saveOperationUser(UserDTO userDTO);
void editUser(UserDTO userDTO); void editUser(UserDTO userDTO);
......
package com.gic.auth.service.impl; package com.gic.auth.service.impl;
import com.gic.auth.constant.LoginUserTypeEnum;
import com.gic.auth.dao.mapper.TabSysUserMapper; import com.gic.auth.dao.mapper.TabSysUserMapper;
import com.gic.auth.dto.UserDTO; import com.gic.auth.dto.UserDTO;
import com.gic.auth.dto.UserListDTO; import com.gic.auth.dto.UserListDTO;
...@@ -29,11 +30,28 @@ public class UserServiceImpl implements UserService { ...@@ -29,11 +30,28 @@ public class UserServiceImpl implements UserService {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@Override @Override
public int saveUser(UserDTO userDTO) { public int saveUser(UserDTO userDTO) {
userDTO.setLoginType(LoginUserTypeEnum.GIC_USER.getCode());
userDTO.setCreateTime(new Date());
userDTO.setUpdateTime(new Date());
userDTO.setStatus(1);
TabSysUser tabUser = EntityUtil.changeEntityNew(TabSysUser.class, userDTO); TabSysUser tabUser = EntityUtil.changeEntityNew(TabSysUser.class, userDTO);
tabSysUserMapper.insert(tabUser); tabSysUserMapper.insert(tabUser);
return tabUser.getUserId(); return tabUser.getUserId();
} }
@Override
public int saveOperationUser(UserDTO userDTO) {
userDTO.setLoginType(LoginUserTypeEnum.OPERATION_USER.getCode());
userDTO.setCreateTime(new Date());
userDTO.setUpdateTime(new Date());
userDTO.setStatus(1);
//设置超管权限
userDTO.setSuperAdmin(1);
TabSysUser tabUser = EntityUtil.changeEntityNew(TabSysUser.class, userDTO);
tabSysUserMapper.insertSelective(tabUser);
return tabUser.getUserId();
}
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@Override @Override
public void editUser(UserDTO userDTO) { public void editUser(UserDTO userDTO) {
......
...@@ -4,6 +4,7 @@ import java.util.ArrayList; ...@@ -4,6 +4,7 @@ import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import com.gic.auth.constant.LoginUserTypeEnum;
import com.gic.auth.entity.*; import com.gic.auth.entity.*;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
...@@ -95,9 +96,6 @@ public class UserApiServiceImpl implements UserApiService { ...@@ -95,9 +96,6 @@ public class UserApiServiceImpl implements UserApiService {
if (StringUtils.isBlank(userDTO.getPhoneAreaCode())) { if (StringUtils.isBlank(userDTO.getPhoneAreaCode())) {
userDTO.setPhoneAreaCode("86"); userDTO.setPhoneAreaCode("86");
} }
userDTO.setCreateTime(new Date());
userDTO.setUpdateTime(new Date());
userDTO.setStatus(1);
Integer userId = userService.saveUser(userDTO); Integer userId = userService.saveUser(userDTO);
userRoleService.deleteByUserId(userId); userRoleService.deleteByUserId(userId);
...@@ -119,6 +117,23 @@ public class UserApiServiceImpl implements UserApiService { ...@@ -119,6 +117,23 @@ public class UserApiServiceImpl implements UserApiService {
} }
@Override @Override
public ServiceResponse<Integer> saveOperationUser(UserDTO userDTO) {
if (StringUtils.isBlank(userDTO.getPhoneNumber())) {
return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "手机号不能为空");
}
if (StringUtils.isBlank(userDTO.getUserName())) {
ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "用户名称不能为空");
}
if (userDTO.getEnterpriseId() == null) {
ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "商户ID不能为空");
}
if (userService.isPhoneRepeat(null, userDTO.getPhoneNumber(), userDTO.getEnterpriseId())) {
return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "手机号码不能重复");
}
return ServiceResponse.success(userService.saveOperationUser(userDTO));
}
@Override
public ServiceResponse<Integer> saveAdmin(UserDTO userDTO) { public ServiceResponse<Integer> saveAdmin(UserDTO userDTO) {
//valid param //valid param
ServiceResponse paramResult = ValidUtil.allCheckValidate(userDTO, UserDTO.SaveUserValid.class); ServiceResponse paramResult = ValidUtil.allCheckValidate(userDTO, UserDTO.SaveUserValid.class);
...@@ -136,9 +151,6 @@ public class UserApiServiceImpl implements UserApiService { ...@@ -136,9 +151,6 @@ public class UserApiServiceImpl implements UserApiService {
if (StringUtils.isBlank(userDTO.getPhoneAreaCode())) { if (StringUtils.isBlank(userDTO.getPhoneAreaCode())) {
userDTO.setPhoneAreaCode("86"); userDTO.setPhoneAreaCode("86");
} }
userDTO.setCreateTime(new Date());
userDTO.setUpdateTime(new Date());
userDTO.setStatus(1);
Integer userId = userService.saveUser(userDTO); Integer userId = userService.saveUser(userDTO);
return ServiceResponse.success(userId); return ServiceResponse.success(userId);
} }
...@@ -158,8 +170,9 @@ public class UserApiServiceImpl implements UserApiService { ...@@ -158,8 +170,9 @@ public class UserApiServiceImpl implements UserApiService {
if (userService.isPhoneRepeat(userDTO.getUserId(), userDTO.getPhoneNumber(), tabUser.getEnterpriseId())) { if (userService.isPhoneRepeat(userDTO.getUserId(), userDTO.getPhoneNumber(), tabUser.getEnterpriseId())) {
return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "手机号码不能重复"); return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "手机号码不能重复");
} }
//gic管理员只有一个超管
if (userDTO.getSuperAdmin() != null && userDTO.getSuperAdmin().intValue() == 1) { if (userDTO.getSuperAdmin() != null && userDTO.getSuperAdmin().intValue() == 1
&& tabUser.getLoginType().intValue() == LoginUserTypeEnum.GIC_USER.getCode()) {
//超级官员 //超级官员
TabSysUser adminUser = userService.getUserByEnterpriseId(userDTO.getEnterpriseId()); TabSysUser adminUser = userService.getUserByEnterpriseId(userDTO.getEnterpriseId());
if (adminUser != null && adminUser.getUserId().intValue() != tabUser.getUserId().intValue()) { if (adminUser != null && adminUser.getUserId().intValue() != tabUser.getUserId().intValue()) {
...@@ -218,6 +231,9 @@ public class UserApiServiceImpl implements UserApiService { ...@@ -218,6 +231,9 @@ public class UserApiServiceImpl implements UserApiService {
if (tabUser == null) { if (tabUser == null) {
return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "用户ID输入有误"); return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "用户ID输入有误");
} }
if (tabUser.getLoginType().intValue() != LoginUserTypeEnum.GIC_USER.getCode()) {
return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "用户类型错误,不是GIC管理员");
}
UserDTO result = EntityUtil.changeEntityNew(UserDTO.class, tabUser); UserDTO result = EntityUtil.changeEntityNew(UserDTO.class, tabUser);
//角色集 //角色集
List<UserRoleDTO> userRoleDTOList = userRoleService.listUserRoleByUserId(userId); List<UserRoleDTO> userRoleDTOList = userRoleService.listUserRoleByUserId(userId);
...@@ -267,6 +283,10 @@ public class UserApiServiceImpl implements UserApiService { ...@@ -267,6 +283,10 @@ public class UserApiServiceImpl implements UserApiService {
if (tabUser == null) { if (tabUser == null) {
return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "用户ID输入有误,无此数据"); return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "用户ID输入有误,无此数据");
} }
if (tabUser.getLoginType().intValue() != LoginUserTypeEnum.GIC_USER.getCode()) {
return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(),
"用户类型错误,不是" + LoginUserTypeEnum.GIC_USER.getMessage());
}
//删除角色关联 //删除角色关联
userRoleService.deleteByUserId(userId); userRoleService.deleteByUserId(userId);
//删除资源关联 //删除资源关联
...@@ -372,6 +392,10 @@ public class UserApiServiceImpl implements UserApiService { ...@@ -372,6 +392,10 @@ public class UserApiServiceImpl implements UserApiService {
if (tabUser == null) { if (tabUser == null) {
return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "用户ID输入有误,无此数据"); return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "用户ID输入有误,无此数据");
} }
if (tabUser.getLoginType().intValue() != LoginUserTypeEnum.GIC_USER.getCode()) {
return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(),
"用户类型错误,不是" + LoginUserTypeEnum.GIC_USER.getMessage());
}
TabSysAccountGroup tabSysAccountGroup = accountGroupService.getById(accountGroupId); TabSysAccountGroup tabSysAccountGroup = accountGroupService.getById(accountGroupId);
if (tabSysAccountGroup == null) { if (tabSysAccountGroup == null) {
return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "账号分组ID输入有误,无此数据"); return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "账号分组ID输入有误,无此数据");
......
...@@ -43,7 +43,7 @@ ...@@ -43,7 +43,7 @@
#{passwordType,jdbcType=INTEGER} #{passwordType,jdbcType=INTEGER}
) )
</insert> </insert>
<insert id="insertSelective" parameterType="com.gic.auth.entity.TabSysUser"> <insert id="insertSelective" parameterType="com.gic.auth.entity.TabSysUser" useGeneratedKeys="true" keyProperty="userId">
insert into tab_sys_user insert into tab_sys_user
<trim prefix="(" suffix=")" suffixOverrides=","> <trim prefix="(" suffix=")" suffixOverrides=",">
<if test="userId != null"> <if test="userId != null">
...@@ -205,6 +205,7 @@ ...@@ -205,6 +205,7 @@
where enterprise_id = #{enterpriseId,jdbcType=INTEGER} where enterprise_id = #{enterpriseId,jdbcType=INTEGER}
and status = 1 and status = 1
and super_admin = 1 and super_admin = 1
and login_type = 0
</select> </select>
<select id="listAllUserByPhoneNumber" resultMap="BaseResultMap"> <select id="listAllUserByPhoneNumber" resultMap="BaseResultMap">
...@@ -223,6 +224,7 @@ ...@@ -223,6 +224,7 @@
and status = 1 and status = 1
and enterprise_id = #{enterpriseId} and enterprise_id = #{enterpriseId}
and password = #{password} and password = #{password}
and login_type = 0
</select> </select>
...@@ -241,6 +243,7 @@ ...@@ -241,6 +243,7 @@
and a.status = 1 and a.status = 1
and b.status = 1 and b.status = 1
and c.status = 1 and c.status = 1
and a.login_type = 0
<if test="search != null and search != '' "> <if test="search != null and search != '' ">
and ( a.user_name like concat('%', #{search}, '%') or a.phone_number like concat('%', #{search}, '%') ) and ( a.user_name like concat('%', #{search}, '%') or a.phone_number like concat('%', #{search}, '%') )
</if> </if>
...@@ -268,6 +271,7 @@ ...@@ -268,6 +271,7 @@
update tab_sys_user set status = 0 update tab_sys_user set status = 0
where user_id = #{userId} where user_id = #{userId}
and status = 1 and status = 1
and login_type = 0
</update> </update>
<select id="getFirstNotInUserId" resultType="java.lang.Integer"> <select id="getFirstNotInUserId" resultType="java.lang.Integer">
...@@ -275,6 +279,7 @@ ...@@ -275,6 +279,7 @@
1 1
from tab_sys_user from tab_sys_user
where status = 1 where status = 1
and login_type = 0
<if test="enterpriseId != null "> <if test="enterpriseId != null ">
and enterprise_id = #{enterpriseId} and enterprise_id = #{enterpriseId}
</if> </if>
...@@ -288,6 +293,7 @@ ...@@ -288,6 +293,7 @@
</select> </select>
<select id="countUserByUserIds" resultType="java.lang.Integer"> <select id="countUserByUserIds" resultType="java.lang.Integer">
select count(1) from tab_sys_user where status = 1 select count(1) from tab_sys_user where status = 1
and login_type = 0
and user_id in and user_id in
<foreach collection="ids" index="index" item="item" open="(" separator="," close=")"> <foreach collection="ids" index="index" item="item" open="(" separator="," close=")">
#{item} #{item}
...@@ -300,6 +306,7 @@ ...@@ -300,6 +306,7 @@
<include refid="Base_Column_List" /> <include refid="Base_Column_List" />
from tab_sys_user from tab_sys_user
where status = 1 where status = 1
and login_type = 0
<if test="ids != null and ids.size() > 0"> <if test="ids != null and ids.size() > 0">
and user_id in and user_id in
<foreach collection="ids" index="index" item="item" open="(" separator="," close=")"> <foreach collection="ids" index="index" item="item" open="(" separator="," close=")">
...@@ -314,6 +321,7 @@ ...@@ -314,6 +321,7 @@
from tab_sys_user from tab_sys_user
where status = 1 where status = 1
and enterprise_id = #{enterpriseId} and enterprise_id = #{enterpriseId}
and login_type = 0
<if test="search != null and search != '' "> <if test="search != null and search != '' ">
and ( user_name like concat('%', #{search}, '%') or phone_number like concat('%', #{search}, '%') ) and ( user_name like concat('%', #{search}, '%') or phone_number like concat('%', #{search}, '%') )
</if> </if>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment