Browse Source

fix bug

master
刘力 3 years ago
parent
commit
2c186f0dcf
  1. 22
      system/src/main/java/com/canvas/web/modules/system/controller/UserController.java
  2. 4
      system/src/main/java/com/canvas/web/modules/system/domain/Menu.java
  3. 2
      system/src/main/java/com/canvas/web/modules/system/repository/MenuRepository.java
  4. 4
      system/src/main/java/com/canvas/web/modules/system/repository/RoleRepository.java
  5. 30
      system/src/main/java/com/canvas/web/modules/system/service/OrgService.java
  6. 7
      system/src/main/java/com/canvas/web/modules/system/service/dto/UserQueryCriteria.java
  7. 58
      system/src/main/java/com/canvas/web/modules/system/service/impl/OrgServiceImpl.java

22
system/src/main/java/com/canvas/web/modules/system/controller/UserController.java

@ -1,20 +1,27 @@
package com.canvas.web.modules.system.controller;
import cn.hutool.core.collection.CollectionUtil;
import com.canvas.web.annotation.rest.AnonymousPostMapping;
import com.canvas.web.enums.ResponseEnum;
import com.canvas.web.exception.BaseException;
import com.canvas.web.modules.system.domain.User;
import com.canvas.web.modules.system.service.OrgService;
import com.canvas.web.modules.system.service.RoleService;
import com.canvas.web.modules.system.service.UserService;
import com.canvas.web.modules.system.service.dto.RoleSmallDto;
import com.canvas.web.modules.system.service.dto.UserDto;
import com.canvas.web.modules.system.service.dto.UserQueryCriteria;
import com.canvas.web.utils.PageUtil;
import com.canvas.web.utils.Response;
import com.canvas.web.utils.SecurityUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.data.domain.Pageable;
import org.springframework.http.ResponseEntity;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.util.ObjectUtils;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@ -32,16 +39,27 @@ public class UserController {
private final UserService userService;
private final RoleService roleService;
private final OrgService orgService;
private final PasswordEncoder passwordEncoder;
@ApiOperation("新增用户")
@PostMapping
public ResponseEntity<Object> create(@Validated @RequestBody User resources) {
public Response<Object> create(@Validated @RequestBody User resources) {
checkLevel(resources);
// 默认密码 123456
resources.setPassword(passwordEncoder.encode("123456"));
userService.create(resources);
return null;
return Response.success(ResponseEnum.CREATED);
}
public Response<Object> query(UserQueryCriteria criteria, Pageable pageable){
//判断查询条件是否为空
if (!ObjectUtils.isEmpty(criteria.getBlurry())){
return Response.success(userService.queryAll(criteria,pageable));
}
return Response.success(PageUtil.toPage(null,0));
}
@ApiOperation("测试异常接口")

4
system/src/main/java/com/canvas/web/modules/system/domain/Menu.java

@ -72,6 +72,10 @@ public class Menu extends BaseEntity implements Serializable {
@ApiModelProperty(value = "外链菜单")
private Boolean iFrame;
@Column(name = "show_position")
@ApiModelProperty(value = "显示地方 1.侧面 2.头部")
private Integer showPosition;
@Override
public boolean equals(Object o) {

2
system/src/main/java/com/canvas/web/modules/system/repository/MenuRepository.java

@ -33,7 +33,7 @@ public interface MenuRepository extends JpaRepository<Menu, Long>, JpaSpecificat
//查询顶级菜单
List<Menu> findByPidIsNull();
@Query(value = "SELECT m.* FROM sys_menu m INNER JOIN sys_roles_menus r ON m.menu_id = r.menu_id WHERE " +
@Query(value = "SELECT m.* FROM sys_menu m INNER JOIN sys_roles_menus r ON m.id = r.menu_id WHERE " +
" r.role_id IN ?1 AND type != ?2 AND m.show_position = ?3 order by m.menu_sort asc",nativeQuery = true)
LinkedHashSet<Menu> findByRoleIdsAndTypeNotAndShowPosition(Set<Long> roleIds, int type,int showPosition);

4
system/src/main/java/com/canvas/web/modules/system/repository/RoleRepository.java

@ -21,7 +21,7 @@ public interface RoleRepository extends JpaRepository<Role, Long>, JpaSpecificat
//根据角色id查询
@Query(value = "SELECT r.* FROM sys_role r, sys_users_roles u WHERE " +
"r.role_id = u.role_id AND u.user_id = ?1",nativeQuery = true)
"r.id = u.role_id AND u.user_id = ?1",nativeQuery = true)
Set<Role> findByUserId(Long id);
@ -32,6 +32,6 @@ public interface RoleRepository extends JpaRepository<Role, Long>, JpaSpecificat
//根据菜单id查询
@Query(value = "SELECT r.* FROM sys_role r, sys_roles_menus m WHERE " +
"r.role_id = m.role_id AND m.menu_id in ?1",nativeQuery = true)
"r.id = m.role_id AND m.menu_id in ?1",nativeQuery = true)
List<Role> findInMenuId(List<Long> menuIds);
}

30
system/src/main/java/com/canvas/web/modules/system/service/OrgService.java

@ -0,0 +1,30 @@
package com.canvas.web.modules.system.service;
import com.canvas.web.modules.system.service.dto.OrgDto;
import java.util.Set;
public interface OrgService {
//根据id查询机构
OrgDto findById(Long id);
//创建机构
void create(OrgDto orgDto);
//修改机构
void update(OrgDto orgDto);
//删除机构
void delete(Set<OrgDto> orgDtos);
//根据角色id查询
Set<OrgDto> findByRoleId(Long id);
//验证是否被角色或用户关联
void verification(Set<OrgDto> orgDtos);
}

7
system/src/main/java/com/canvas/web/modules/system/service/dto/UserQueryCriteria.java

@ -16,16 +16,13 @@ public class UserQueryCriteria implements Serializable {
@Query
private Long id;
@Query(propName = "id", type = Query.Type.IN, joinName = "dept")
private Set<Long> deptIds = new HashSet<>();
@Query(blurry = "email,username,nickName")
@Query(blurry = "username,nickName")
private String blurry;
@Query
private Boolean enabled;
private Long deptId;
private Long OrgId;
@Query(type = Query.Type.BETWEEN)
private List<Timestamp> createTime;

58
system/src/main/java/com/canvas/web/modules/system/service/impl/OrgServiceImpl.java

@ -0,0 +1,58 @@
package com.canvas.web.modules.system.service.impl;
import com.canvas.web.modules.system.repository.OrgRepository;
import com.canvas.web.modules.system.repository.RoleRepository;
import com.canvas.web.modules.system.repository.UserRepository;
import com.canvas.web.modules.system.service.OrgService;
import com.canvas.web.modules.system.service.dto.OrgDto;
import com.canvas.web.modules.system.service.mapstruct.OrgMapper;
import com.canvas.web.utils.RedisUtils;
import lombok.RequiredArgsConstructor;
import org.springframework.cache.annotation.CacheConfig;
import org.springframework.stereotype.Service;
import java.util.Set;
@Service
@RequiredArgsConstructor
@CacheConfig(cacheNames = "Org")
public class OrgServiceImpl implements OrgService {
private final OrgRepository orgRepository;
private final OrgMapper orgMapper;
private final UserRepository userRepository;
private final RedisUtils redisUtils;
private final RoleRepository roleRepository;
@Override
public OrgDto findById(Long id) {
return null;
}
@Override
public void create(OrgDto orgDto) {
}
@Override
public void update(OrgDto orgDto) {
}
@Override
public void delete(Set<OrgDto> orgDtos) {
}
@Override
public Set<OrgDto> findByRoleId(Long id) {
return null;
}
@Override
public void verification(Set<OrgDto> orgDtos) {
}
}
Loading…
Cancel
Save