wangliang před 9 měsíci
rodič
revize
f46c7ed1d6

+ 19 - 15
sop-api/src/main/java/com/qmth/sop/server/api/SysUserController.java

@@ -23,6 +23,7 @@ import javax.validation.Valid;
 import javax.validation.constraints.Max;
 import javax.validation.constraints.Min;
 import java.security.NoSuchAlgorithmException;
+import java.util.List;
 import java.util.Objects;
 import java.util.Optional;
 
@@ -47,21 +48,22 @@ public class SysUserController {
 
     @ApiOperation(value = "查询")
     @RequestMapping(value = "/list", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = UserDto.class)})
+    @ApiResponses({ @ApiResponse(code = 200, message = "返回信息", response = UserDto.class) })
     public Result list(@ApiParam(value = "登录名或真实姓名或手机号") @RequestParam(required = false) String userInfo,
-                       @ApiParam(value = "机构id") @RequestParam(required = false) Long orgId,
-                       @ApiParam(value = "角色id") @RequestParam(required = false) Long roleId,
-                       @ApiParam(value = "是否启用") @RequestParam(required = false) Boolean enable,
-                       @ApiParam(value = "页码", required = true) @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
-                       @ApiParam(value = "页数", required = true) @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
-        return ResultUtil.ok(sysUserService.query(new Page<>(pageNumber, pageSize), userInfo, orgId, roleId, enable));
+            @ApiParam(value = "机构id") @RequestParam(required = false) Long orgId,
+            @ApiParam(value = "角色id") @RequestParam(required = false) List<Long> roleIds,
+            @ApiParam(value = "是否启用") @RequestParam(required = false) Boolean enable,
+            @ApiParam(value = "页码", required = true) @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
+            @ApiParam(value = "页数", required = true) @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
+        return ResultUtil.ok(sysUserService.query(new Page<>(pageNumber, pageSize), userInfo, orgId, roleIds, enable));
     }
 
     @ApiOperation(value = "新增/修改")
     @RequestMapping(value = "/save", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = Object.class)})
+    @ApiResponses({ @ApiResponse(code = 200, message = "返回信息", response = Object.class) })
     @OperationLog(logType = LogTypeEnum.EDIT)
-    public Result save(@Valid @ApiParam(value = "用户保存信息", required = true) @RequestBody SysUser sysUser, BindingResult bindingResult) {
+    public Result save(@Valid @ApiParam(value = "用户保存信息", required = true) @RequestBody SysUser sysUser,
+            BindingResult bindingResult) {
         if (bindingResult.hasErrors()) {
             return ResultUtil.error(bindingResult.getAllErrors().get(0).getDefaultMessage());
         }
@@ -70,7 +72,7 @@ public class SysUserController {
 
     @ApiOperation(value = "启用/禁用")
     @RequestMapping(value = "/enable", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = Object.class)})
+    @ApiResponses({ @ApiResponse(code = 200, message = "返回信息", response = Object.class) })
     @OperationLog(logType = LogTypeEnum.UPDATE)
     public Result enable(@RequestBody SysUser sysUser) throws NoSuchAlgorithmException {
         return ResultUtil.ok(sysUserService.enable(sysUser));
@@ -78,7 +80,7 @@ public class SysUserController {
 
     @ApiOperation(value = "初始化密码")
     @RequestMapping(value = "/init_password", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = Object.class)})
+    @ApiResponses({ @ApiResponse(code = 200, message = "返回信息", response = Object.class) })
     @OperationLog(logType = LogTypeEnum.UPDATE)
     public Result initPassword(@RequestBody SysUser sysUser) throws NoSuchAlgorithmException {
         return ResultUtil.ok(sysUserService.initPassword(sysUser));
@@ -86,20 +88,22 @@ public class SysUserController {
 
     @ApiOperation(value = "查询绑定供应商")
     @RequestMapping(value = "/query/supplier", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = SysSupplier.class)})
+    @ApiResponses({ @ApiResponse(code = 200, message = "返回信息", response = SysSupplier.class) })
     public Result querySupplier(@ApiParam(value = "用户id", required = true) @RequestParam Long id) {
         SysUser sysUser = sysUserService.getById(id);
         Optional.ofNullable(sysUser).orElseThrow(() -> ExceptionResultEnum.USER_NO_EXISTS.exception());
-        SysSupplier sysSupplier = Objects.nonNull(sysUser.getSupplierId()) ? supplierService.getById(sysUser.getSupplierId()) : null;
+        SysSupplier sysSupplier = Objects.nonNull(sysUser.getSupplierId()) ?
+                supplierService.getById(sysUser.getSupplierId()) :
+                null;
         return ResultUtil.ok(sysSupplier);
     }
 
     @ApiOperation(value = "绑定供应商")
     @RequestMapping(value = "/band/supplier", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = Object.class)})
+    @ApiResponses({ @ApiResponse(code = 200, message = "返回信息", response = Object.class) })
     @OperationLog(logType = LogTypeEnum.EDIT)
     public Result bandSupplier(@ApiParam(value = "用户id", required = true) @RequestParam Long id,
-                               @ApiParam(value = "供应商id", required = true) @RequestParam Long supplierId) {
+            @ApiParam(value = "供应商id", required = true) @RequestParam Long supplierId) {
         SysUser sysUser = sysUserService.getById(id);
         Optional.ofNullable(sysUser).orElseThrow(() -> ExceptionResultEnum.USER_NO_EXISTS.exception());
         SysUser requestSysUser = (SysUser) ServletUtil.getRequestUser();

+ 4 - 0
sop-business/src/main/java/com/qmth/sop/business/activiti/service/impl/ActivitiServiceImpl.java

@@ -879,6 +879,10 @@ public class ActivitiServiceImpl implements ActivitiService {
             if (count == 0) {
                 tbCrmService.updateCrmStatus(tfCustomFlowEntity.getCrmNo(), CrmStatusEnum.UN_PUBLISH);
             }
+
+            sysMessageService.remove(new QueryWrapper<SysMessage>().lambda()
+                    .in(SysMessage::getType, Arrays.asList(MessageTypeEnum.OFFICE_SOP, MessageTypeEnum.CLOUD_MARK_SOP))
+                    .eq(SysMessage::getCode, tfCustomFlowEntity.getCode()));
             runtimeService.deleteProcessInstance(String.valueOf(flowId), "结束");
         } catch (Exception e) {
             log.error(SystemConstant.LOG_ERROR, e);

+ 2 - 2
sop-business/src/main/java/com/qmth/sop/business/mapper/SysUserMapper.java

@@ -94,11 +94,11 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
      * @param iPage
      * @param userInfo
      * @param orgId
-     * @param roleId
+     * @param roleIds
      * @param enable
      * @return
      */
-    IPage<UserDto> query(IPage<Map> iPage, @Param("userInfo") String userInfo, @Param("orgId") Long orgId, @Param("roleId") Long roleId, @Param("enable") Boolean enable);
+    IPage<UserDto> query(IPage<Map> iPage, @Param("userInfo") String userInfo, @Param("orgId") Long orgId, @Param("roleIds") List<Long> roleIds, @Param("enable") Boolean enable);
 
     /**
      * 根据用户来源查找用户并返回动态表单数据

+ 2 - 2
sop-business/src/main/java/com/qmth/sop/business/service/SysUserService.java

@@ -83,11 +83,11 @@ public interface SysUserService extends IService<SysUser> {
      * @param iPage
      * @param userInfo
      * @param orgId
-     * @param roleId
+     * @param roleIds
      * @param enable
      * @return
      */
-    IPage<UserDto> query(IPage<Map> iPage, String userInfo, Long orgId, Long roleId, Boolean enable);
+    IPage<UserDto> query(IPage<Map> iPage, String userInfo, Long orgId, List<Long> roleIds, Boolean enable);
 
     /**
      * 根据用户来源查找用户并返回动态表单数据

+ 3 - 3
sop-business/src/main/java/com/qmth/sop/business/service/impl/SysUserServiceImpl.java

@@ -289,13 +289,13 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
      * @param iPage
      * @param userInfo
      * @param orgId
-     * @param roleId
+     * @param roleIds
      * @param enable
      * @return
      */
     @Override
-    public IPage<UserDto> query(IPage<Map> iPage, String userInfo, Long orgId, Long roleId, Boolean enable) {
-        IPage<UserDto> userDtoIPage = this.baseMapper.query(iPage, userInfo, orgId, roleId, enable);
+    public IPage<UserDto> query(IPage<Map> iPage, String userInfo, Long orgId, List<Long> roleIds, Boolean enable) {
+        IPage<UserDto> userDtoIPage = this.baseMapper.query(iPage, userInfo, orgId, roleIds, enable);
         if (Objects.nonNull(userDtoIPage) && !CollectionUtils.isEmpty(userDtoIPage.getRecords())) {
             userDtoIPage.getRecords().forEach(m -> {
                 //角色

+ 5 - 2
sop-business/src/main/resources/mapper/SysUserMapper.xml

@@ -247,8 +247,11 @@
             <if test="orgId != null and orgId != ''">
                 and a.org_id = #{orgId}
             </if>
-            <if test="roleId != null and roleId != ''">
-                and a.id in (select user_id from sys_user_role b where b.role_id = #{roleId})
+            <if test="roleIds != null and roleIds != '' and roleIds.size() > 0">
+                and a.id in (select user_id from sys_user_role b where b.role_id in
+                <foreach collection="roleIds" item="roleId" open="(" separator="," close=")">
+                    #{roleId}
+                </foreach>)
             </if>
             <if test="enable != null and enable != '' or enable == 0">
                 and a.enable = #{enable}