项目查询优化标签查询
Some checks failed
JslGroup/JslDeveloper/JSL_OrganizeInternalOA/pipeline/head There was a failure building this commit
Some checks failed
JslGroup/JslDeveloper/JSL_OrganizeInternalOA/pipeline/head There was a failure building this commit
This commit is contained in:
parent
2494fb38b6
commit
0062854702
@ -44,9 +44,11 @@ public class ProjectController {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@GetMapping("/project/get")
|
@GetMapping("/project/get")
|
||||||
public BaseResponse projectGet(@RequestParam(required = false) Integer listAll,HttpServletRequest request) {
|
public BaseResponse projectGet(@RequestParam(required = false) Integer listAll,
|
||||||
|
@RequestParam(required = false) String tags,
|
||||||
|
HttpServletRequest request) {
|
||||||
log.info("请求接口[GET]: /project/get");
|
log.info("请求接口[GET]: /project/get");
|
||||||
return projectService.get(listAll,request);
|
return projectService.get(listAll,request,tags);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -105,9 +105,12 @@ public class ProjectDAO {
|
|||||||
return projectMapper.setProjectShow(setProjectShow);
|
return projectMapper.setProjectShow(setProjectShow);
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<ProjectDO> get(Long userId,Integer listAll) {
|
public List<ProjectDO> get(Long userId,Integer listAll,String tags) {
|
||||||
log.info("\t> 执行 DAO 层 ProjectDAO.get 方法");
|
log.info("\t> 执行 DAO 层 ProjectDAO.get 方法");
|
||||||
log.info("\t\t> 从 MySQL 获取数据");
|
log.info("\t\t> 从 MySQL 获取数据");
|
||||||
|
if(tags != null){
|
||||||
|
return projectMapper.getByTags(tags);
|
||||||
|
}
|
||||||
if(listAll == 0) {
|
if(listAll == 0) {
|
||||||
return projectMapper.get(userId);
|
return projectMapper.get(userId);
|
||||||
}else {
|
}else {
|
||||||
|
@ -40,6 +40,10 @@ public interface ProjectMapper {
|
|||||||
@Update("UPDATE organize_oa.oa_config SET data = #{setProjectShow}, updated_at = CURRENT_TIMESTAMP WHERE value = 'project_show'")
|
@Update("UPDATE organize_oa.oa_config SET data = #{setProjectShow}, updated_at = CURRENT_TIMESTAMP WHERE value = 'project_show'")
|
||||||
boolean setProjectShow(String setProjectShow);
|
boolean setProjectShow(String setProjectShow);
|
||||||
|
|
||||||
|
@Select("select * from organize_oa.oa_project where json_extract(tags,'$.tags')" +
|
||||||
|
"like concat('%',#{tags},'%')")
|
||||||
|
List<ProjectDO>getByTags(String tags);
|
||||||
|
|
||||||
@Select("select * from organize_oa.oa_project where is_delete=false and status =1")
|
@Select("select * from organize_oa.oa_project where is_delete=false and status =1")
|
||||||
List<ProjectDO> get(Long userId);
|
List<ProjectDO> get(Long userId);
|
||||||
|
|
||||||
|
@ -12,17 +12,12 @@ public class ProjectInfoVO {
|
|||||||
private Long id;
|
private Long id;
|
||||||
@NotNull(message = "负责人id不能为空")
|
@NotNull(message = "负责人id不能为空")
|
||||||
private Long principalId;
|
private Long principalId;
|
||||||
|
|
||||||
@NotBlank(message = "项目名不能为空")
|
@NotBlank(message = "项目名不能为空")
|
||||||
private String name;
|
private String name;
|
||||||
|
|
||||||
private String description;
|
private String description;
|
||||||
|
|
||||||
@NotNull(message = "周期不能为空")
|
@NotNull(message = "周期不能为空")
|
||||||
private Long cycle;
|
private Long cycle;
|
||||||
|
|
||||||
private String file;
|
private String file;
|
||||||
|
|
||||||
private Timestamp completeTime;
|
private Timestamp completeTime;
|
||||||
private Timestamp deadline;
|
private Timestamp deadline;
|
||||||
private Integer status;
|
private Integer status;
|
||||||
|
@ -25,7 +25,7 @@ public interface ProjectService {
|
|||||||
|
|
||||||
BaseResponse editHeader(HttpServletRequest request, ProjectShowVO projectShowVO, Integer id);
|
BaseResponse editHeader(HttpServletRequest request, ProjectShowVO projectShowVO, Integer id);
|
||||||
|
|
||||||
BaseResponse get(Integer listAll,HttpServletRequest request);
|
BaseResponse get(Integer listAll,HttpServletRequest request,String tags);
|
||||||
|
|
||||||
BaseResponse getByName(String name);
|
BaseResponse getByName(String name);
|
||||||
|
|
||||||
|
@ -4,6 +4,7 @@ import com.jsl.oa.annotations.CheckUserHasPermission;
|
|||||||
import com.jsl.oa.dao.ProjectDAO;
|
import com.jsl.oa.dao.ProjectDAO;
|
||||||
import com.jsl.oa.dao.RoleDAO;
|
import com.jsl.oa.dao.RoleDAO;
|
||||||
import com.jsl.oa.dao.UserDAO;
|
import com.jsl.oa.dao.UserDAO;
|
||||||
|
import com.jsl.oa.mapper.RoleMapper;
|
||||||
import com.jsl.oa.model.doData.ProjectCuttingDO;
|
import com.jsl.oa.model.doData.ProjectCuttingDO;
|
||||||
import com.jsl.oa.model.doData.ProjectDO;
|
import com.jsl.oa.model.doData.ProjectDO;
|
||||||
import com.jsl.oa.model.doData.UserDO;
|
import com.jsl.oa.model.doData.UserDO;
|
||||||
@ -42,7 +43,7 @@ import java.util.List;
|
|||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
public class ProjectServiceImpl implements ProjectService {
|
public class ProjectServiceImpl implements ProjectService {
|
||||||
|
|
||||||
private final RoleDAO roleDAO;
|
private final RoleMapper roleMapper;
|
||||||
private final ProjectDAO projectDAO;
|
private final ProjectDAO projectDAO;
|
||||||
private final UserDAO userDAO;
|
private final UserDAO userDAO;
|
||||||
|
|
||||||
@ -183,16 +184,22 @@ public class ProjectServiceImpl implements ProjectService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BaseResponse get(Integer listAll,HttpServletRequest request) {
|
public BaseResponse get(Integer listAll,HttpServletRequest request,String tags) {
|
||||||
log.info("\t> 执行 Service 层 ProjectService.get 方法");
|
log.info("\t> 执行 Service 层 ProjectService.get 方法");
|
||||||
//获取用户
|
//获取用户
|
||||||
Long userId= Processing.getAuthHeaderToUserId(request);
|
Long userId= Processing.getAuthHeaderToUserId(request);
|
||||||
|
//根据标签查询
|
||||||
|
if(tags != null){
|
||||||
|
List<ProjectDO> projectDOList = projectDAO.get(userId,listAll,tags);
|
||||||
|
return ResultUtil.success(projectDOList);
|
||||||
|
}
|
||||||
|
|
||||||
//判断是否是老师(项目负责人)
|
//判断是否是老师(项目负责人)
|
||||||
if(Processing.checkUserIsTeacher(request,roleDAO.roleMapper)){
|
if(listAll != null && Processing.checkUserIsAdmin(request,roleMapper)){
|
||||||
List<ProjectDO> projectDOList = projectDAO.get(userId,listAll);
|
List<ProjectDO> projectDOList = projectDAO.get(userId,listAll,tags);
|
||||||
return ResultUtil.success(projectDOList);
|
return ResultUtil.success(projectDOList);
|
||||||
}else {
|
}else {
|
||||||
List<ProjectDO> projectDOList = projectDAO.get(userId,0);
|
List<ProjectDO> projectDOList = projectDAO.get(userId,0,tags);
|
||||||
return ResultUtil.success(projectDOList);
|
return ResultUtil.success(projectDOList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user