Browse Source

Merge remote-tracking branch 'origin/master'

李进 2 years ago
parent
commit
efcb1d5485

+ 5 - 0
authorize-api-service/src/main/java/com/xy/entity/SysWorkUser.java

@@ -27,6 +27,11 @@ public class SysWorkUser extends BaseEntity2<SysWorkUser> {
      */
      */
     private Long sysUserId;
     private Long sysUserId;
 
 
+    /**
+     * 系统ID
+     */
+    private Long sysId;
+
     /**
     /**
      * 账号
      * 账号
      */
      */

+ 5 - 0
authorize-api-service/src/main/java/com/xy/entity/SysWorkUserThird.java

@@ -45,5 +45,10 @@ public class SysWorkUserThird extends BaseEntity<SysWorkUserThird> {
      */
      */
     private String name;
     private String name;
 
 
+    /**
+     * 系统ID
+     */
+    private Long sysId;
+
 
 
 }
 }

+ 4 - 3
authorize-api-service/src/main/java/com/xy/service/SysUserDeptService.java

@@ -1,6 +1,7 @@
 package com.xy.service;
 package com.xy.service;
 
 
-import com.xy.annotate.RestMappingController;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.xy.entity.SysUserDept;
 
 
 /**
 /**
  * <p>
  * <p>
@@ -10,7 +11,7 @@ import com.xy.annotate.RestMappingController;
  * @author lijin
  * @author lijin
  * @since 2022-12-09
  * @since 2022-12-09
  */
  */
-@RestMappingController("sys-user-dept")
-public interface SysUserDeptService {
+
+public interface SysUserDeptService extends IService<SysUserDept> {
 
 
 }
 }

+ 3 - 3
authorize-api-service/src/main/java/com/xy/service/SysUserRoleService.java

@@ -1,6 +1,7 @@
 package com.xy.service;
 package com.xy.service;
 
 
-import com.xy.annotate.RestMappingController;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.xy.entity.SysUserRole;
 
 
 /**
 /**
  * <p>
  * <p>
@@ -10,7 +11,6 @@ import com.xy.annotate.RestMappingController;
  * @author lijin
  * @author lijin
  * @since 2022-12-09
  * @since 2022-12-09
  */
  */
-@RestMappingController("sys-user-role")
-public interface SysUserRoleService {
+public interface SysUserRoleService extends IService<SysUserRole> {
 
 
 }
 }

+ 0 - 16
authorize-api-service/src/main/java/com/xy/service/SysWorkUserService.java

@@ -1,16 +0,0 @@
-package com.xy.service;
-
-import com.xy.annotate.RestMappingController;
-
-/**
- * <p>
- * 业务用户信息表 服务类
- * </p>
- *
- * @author lijin
- * @since 2022-12-09
- */
-@RestMappingController("sys-work-user")
-public interface SysWorkUserService {
-
-}

+ 0 - 3
authorize-api-service/src/main/java/com/xy/service/impl/SysRoleServiceImpl.java

@@ -39,9 +39,6 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
     @Override
     @Override
     public R<Boolean> saveOrUpdate(SysRoleDto sysRoleDto) {
     public R<Boolean> saveOrUpdate(SysRoleDto sysRoleDto) {
         Long id = sysRoleDto.getId();
         Long id = sysRoleDto.getId();
-        if (SaTokenUtils.getId() == null) {
-            return R.fail("获取用户信息失败");
-        }
         long currentUser = Long.parseLong(SaTokenUtils.getId().toString());
         long currentUser = Long.parseLong(SaTokenUtils.getId().toString());
         LambdaQueryWrapper<SysRole> lqw = new LambdaQueryWrapper<SysRole>()
         LambdaQueryWrapper<SysRole> lqw = new LambdaQueryWrapper<SysRole>()
                 .eq(SysRole::getCode, sysRoleDto.getCode())
                 .eq(SysRole::getCode, sysRoleDto.getCode())

+ 105 - 1
authorize-api-service/src/main/java/com/xy/service/impl/SysWorkUserServiceImpl.java

@@ -1,10 +1,37 @@
 package com.xy.service.impl;
 package com.xy.service.impl;
 
 
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.xy.dto.SysWorkUser.AddDto;
+import com.xy.dto.SysWorkUser.PageDto;
+import com.xy.dto.SysWorkUser.UpdateDto;
+import com.xy.entity.SysUserDept;
+import com.xy.entity.SysUserRole;
 import com.xy.entity.SysWorkUser;
 import com.xy.entity.SysWorkUser;
 import com.xy.mapper.SysWorkUserMapper;
 import com.xy.mapper.SysWorkUserMapper;
+import com.xy.service.SysUserDeptService;
+import com.xy.service.SysUserRoleService;
 import com.xy.service.SysWorkUserService;
 import com.xy.service.SysWorkUserService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.xy.utils.Beans;
+import com.xy.utils.PageBean;
+import com.xy.utils.R;
+import com.xy.utils.SaTokenUtils;
+import com.xy.vo.SysWorkUserVo;
+import io.swagger.annotations.Api;
+import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
+import java.util.stream.Collectors;
+
+import static com.xy.utils.PlusBeans.toIPage;
+import static com.xy.utils.PlusBeans.toPageBean;
+
 
 
 /**
 /**
  * <p>
  * <p>
@@ -14,7 +41,84 @@ import org.springframework.stereotype.Service;
  * @author lijin
  * @author lijin
  * @since 2022-12-09
  * @since 2022-12-09
  */
  */
+@Api(tags = "业务用户管理")
+@RequiredArgsConstructor
 @Service
 @Service
 public class SysWorkUserServiceImpl extends ServiceImpl<SysWorkUserMapper, SysWorkUser> implements SysWorkUserService {
 public class SysWorkUserServiceImpl extends ServiceImpl<SysWorkUserMapper, SysWorkUser> implements SysWorkUserService {
 
 
+    private final SysUserRoleService sysUserRoleService;
+    private final SysUserDeptService sysUserDeptService;
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public R<Boolean> add(AddDto addDto) {
+        SysWorkUser sysWorkUser = Beans.copy(SysWorkUser.class, addDto).create(Long.parseLong(SaTokenUtils.getId().toString()));
+        //新增业务用户
+        save(sysWorkUser);
+        List<Long> roleIds = addDto.getRoleIds();
+        if (CollUtil.isNotEmpty(roleIds)) {
+            List<SysUserRole> sysUserRoleList = roleIds.stream().map(roleId -> new SysUserRole()
+                    .setRoleId(roleId).setWorkUserId(sysWorkUser.getId()).setSysId(sysWorkUser.getSysId())).collect(Collectors.toList());
+            //保存用户角色绑定信息
+            sysUserRoleService.saveBatch(sysUserRoleList);
+        }
+
+        List<Long> deptIds = addDto.getDeptIds();
+        if (CollUtil.isNotEmpty(deptIds)) {
+            //关联部门
+            List<SysUserDept> sysUserDeptList = deptIds.stream().map(deptId -> new SysUserDept()
+                    .setDeptId(deptId).setWorkUserId(sysWorkUser.getId()).setSysId(sysWorkUser.getSysId())).collect(Collectors.toList());
+            //保存用户部门 绑定信息
+            sysUserDeptService.saveBatch(sysUserDeptList);
+        }
+        return R.ok(Boolean.TRUE);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public R<Boolean> update(UpdateDto updateDto) {
+        SysWorkUser sysWorkUser = Beans.copy(SysWorkUser.class, updateDto).update(Long.parseLong(SaTokenUtils.getId().toString()));
+        List<Long> roleIds = updateDto.getRoleIds();
+        if (CollUtil.isNotEmpty(roleIds)) {
+            List<SysUserRole> surList = sysUserRoleService.list(Wrappers.<SysUserRole>lambdaQuery()
+                    .eq(SysUserRole::getWorkUserId, sysWorkUser.getId())
+                    .eq(SysUserRole::getSysId, sysWorkUser.getSysId()));
+
+            if (CollUtil.isNotEmpty(surList)) {
+                removeBatchByIds(surList);
+                List<SysUserRole> sysUserRoleList = roleIds.stream().map(roleId -> new SysUserRole()
+                        .setRoleId(roleId).setWorkUserId(sysWorkUser.getId()).setSysId(sysWorkUser.getSysId())).collect(Collectors.toList());
+                //保存用户角色绑定信息
+                sysUserRoleService.saveBatch(sysUserRoleList);
+            }
+
+        }
+
+        //更新用户信息
+        updateById(sysWorkUser);
+        List<Long> deptIds = updateDto.getDeptIds();
+        if (CollUtil.isNotEmpty(deptIds)) {
+            List<SysUserDept> sysUserDeptList = sysUserDeptService.list(Wrappers.<SysUserDept>lambdaQuery()
+                    .eq(SysUserDept::getWorkUserId, sysWorkUser.getId())
+                    .eq(SysUserDept::getSysId, sysWorkUser.getSysId()));
+            if (CollUtil.isNotEmpty(sysUserDeptList)) {
+                removeBatchByIds(sysUserDeptList);
+                List<SysUserDept> newSysUserDeptList = deptIds.stream().map(deptId -> new SysUserDept()
+                        .setDeptId(deptId).setWorkUserId(sysWorkUser.getId()).setSysId(sysWorkUser.getSysId())).collect(Collectors.toList());
+                sysUserDeptService.saveBatch(newSysUserDeptList);
+            }
+        }
+        return R.ok(Boolean.TRUE);
+    }
+
+    @Override
+    public R<PageBean<SysWorkUserVo>> page(PageDto dto) {
+        IPage<SysWorkUser> page = page(toIPage(dto.getPage()), Wrappers.<SysWorkUser>lambdaQuery()
+                .eq(SysWorkUser::getSysId, dto.getSysId())
+                .eq(StrUtil.isNotBlank(dto.getAccount()), SysWorkUser::getAccount, dto.getAccount())
+                .eq(StrUtil.isNotBlank(dto.getEmail()), SysWorkUser::getEmail, dto.getEmail())
+                .eq(ObjectUtil.isNotEmpty(dto.getStatus()), SysWorkUser::getStatus, dto.getStatus())
+        );
+        return R.ok(toPageBean(SysWorkUserVo.class, page));
+    }
 }
 }

+ 50 - 0
authorize-api/src/main/java/com/xy/dto/SysWorkUser/AddDto.java

@@ -0,0 +1,50 @@
+package com.xy.dto.SysWorkUser;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+import javax.validation.constraints.NotBlank;
+import java.util.List;
+
+@Data
+@ApiModel("业务用户新增请求")
+@Accessors(chain = true)
+public class AddDto {
+
+
+    @ApiModelProperty(value = "系统ID", required = true)
+    @NotBlank(message = "未选择系统")
+    private Long sysId;
+
+    @ApiModelProperty(value = "账号", required = true)
+    @NotBlank(message = "账号不可为空")
+    private String account;
+
+
+    @ApiModelProperty(value = "邮箱", required = false)
+    private String email;
+
+
+    @ApiModelProperty(value = "手机", required = true)
+    @NotBlank(message = "手机号不可为空")
+    private String phone;
+
+
+    @ApiModelProperty(value = "密码", required = true)
+    @NotBlank(message = "密码不可为空")
+    private String password;
+
+
+    @ApiModelProperty(value = "状态", required = false)
+    private Boolean status;
+
+    @ApiModelProperty(value = "角色ID(数组)", required = false)
+    private List<Long> roleIds;
+
+    @ApiModelProperty(value = "部门ID(数组)", required = false)
+    private List<Long> deptIds;
+
+
+}

+ 43 - 0
authorize-api/src/main/java/com/xy/dto/SysWorkUser/PageDto.java

@@ -0,0 +1,43 @@
+package com.xy.dto.SysWorkUser;
+
+import com.xy.utils.PageBean;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+import javax.validation.constraints.NotBlank;
+
+@Data
+@ApiModel("业务用户分页请求")
+@Accessors(chain = true)
+public class PageDto {
+
+
+    @ApiModelProperty("分页对象")
+    private PageBean page;
+
+    @ApiModelProperty(value = "系统ID", required = true)
+    @NotBlank(message = "未选择系统")
+    private Long sysId;
+
+    @ApiModelProperty(value = "账号", required = false)
+    private String account;
+
+
+    @ApiModelProperty(value = "邮箱", required = false)
+    private String email;
+
+
+    @ApiModelProperty(value = "手机", required = false)
+    private String phone;
+
+
+    @ApiModelProperty(value = "状态", required = false)
+    private Boolean status;
+
+    @ApiModelProperty(value = "角色(多个(,)逗号隔开)", required = true)
+    private String roleIds;
+
+
+}

+ 47 - 0
authorize-api/src/main/java/com/xy/dto/SysWorkUser/UpdateDto.java

@@ -0,0 +1,47 @@
+package com.xy.dto.SysWorkUser;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.util.List;
+
+@Data
+@ApiModel("业务用户更新请求")
+@Accessors(chain = true)
+public class UpdateDto {
+
+    @ApiModelProperty(value = "业务用户ID", required = true)
+    @NotNull(message = "未选中用户")
+    private Long id;
+
+    @ApiModelProperty(value = "系统ID", required = true)
+    @NotBlank(message = "未选择系统")
+    private Long sysId;
+
+    @ApiModelProperty(value = "邮箱", required = false)
+    private String email;
+
+
+    @ApiModelProperty(value = "手机", required = false)
+    private String phone;
+
+
+    @ApiModelProperty(value = "密码", required = false)
+    private String password;
+
+
+    @ApiModelProperty(value = "状态", required = false)
+    private Boolean status;
+
+    @ApiModelProperty(value = "角色ID(数组)", required = true)
+    private List<Long> roleIds;
+
+    @ApiModelProperty(value = "部门ID(数组)", required = false)
+    private List<Long> deptIds;
+
+
+}

+ 37 - 0
authorize-api/src/main/java/com/xy/service/SysWorkUserService.java

@@ -0,0 +1,37 @@
+package com.xy.service;
+
+import com.xy.annotate.RestMappingController;
+import com.xy.dto.SysWorkUser.AddDto;
+import com.xy.dto.SysWorkUser.PageDto;
+import com.xy.dto.SysWorkUser.UpdateDto;
+import com.xy.utils.PageBean;
+import com.xy.utils.R;
+import com.xy.vo.SysWorkUserVo;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+
+import javax.validation.Valid;
+
+/***
+ * 业务用户服务类
+ * @author 谭斌
+ * @date 2022/12/13 19:06
+ */
+@RestMappingController("sysWorkUser")
+public interface SysWorkUserService {
+
+
+    @ApiOperation(value = "新增业务用户信息", notes = "新增业务用户信息")
+    @PostMapping("add")
+    R<Boolean> add(@Valid @RequestBody AddDto addDto);
+
+    @ApiOperation(value = "更新业务用户信息", notes = "更新业务用户信息")
+    @PostMapping("update")
+    R<Boolean> update(@Valid @RequestBody UpdateDto updateDto);
+
+    @ApiOperation(value = "分页获取业务用户信息", notes = "分页获取角色信息")
+    @PostMapping("page")
+    R<PageBean<SysWorkUserVo>> page(PageDto dto);
+
+}

+ 57 - 0
authorize-api/src/main/java/com/xy/vo/SysWorkUserVo.java

@@ -0,0 +1,57 @@
+package com.xy.vo;
+
+import io.swagger.annotations.ApiModel;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+/***
+ * 业务用户信息
+ * @author 谭斌
+ * @date 2022/12/13 14:18
+ */
+@Data
+@ApiModel("业务用户信息")
+@Accessors(chain = true)
+public class SysWorkUserVo extends BaseVo {
+
+    /**
+     * id
+     */
+    private Long id;
+
+    /**
+     * 父id
+     */
+    private Long parentId;
+
+
+    /**
+     * 系统id
+     */
+    private Long sysId;
+
+    /**
+     * 角色id;多个,号分隔
+     */
+    private String roleId;
+
+    /**
+     * 名称
+     */
+    private String name;
+
+    /**
+     * 标识
+     */
+    private String code;
+
+    /**
+     * 状态(true启用,false)
+     */
+    private Boolean status;
+    /**
+     * 排序
+     */
+    private Integer sortNum;
+
+}