有待我审核的项目时的提醒

master
xxssyyyyssxx 2021-11-08 17:32:25 +08:00
parent 2337e464bd
commit 481a870008
3 changed files with 37 additions and 13 deletions

View File

@ -22,7 +22,10 @@ import org.springframework.format.datetime.DateFormatter;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.web.bind.WebDataBinder; import org.springframework.web.bind.WebDataBinder;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import top.jfunc.common.db.bean.Page;
import top.jfunc.common.utils.CollectionUtil;
import javax.persistence.criteria.CriteriaBuilder;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
import java.util.ArrayList; import java.util.ArrayList;
@ -61,6 +64,8 @@ public class ProjectController extends BaseController{
model.put("deptList", deptRepository.findAll()); model.put("deptList", deptRepository.findAll());
ConcurrentHashMap<String, String> searchInfo = getSearchInfo(keywords,model); ConcurrentHashMap<String, String> searchInfo = getSearchInfo(keywords,model);
model.put("pager",projectService.list(searchInfo,pageNumber,pageSize)); model.put("pager",projectService.list(searchInfo,pageNumber,pageSize));
Page<Project> myApproveProjects = projectService.findMyApproveProjects(searchInfo, InterfaceUtil.getAdminId(), 1, Integer.MAX_VALUE);
model.put("hasApproveProjects", CollectionUtil.isNotEmpty(myApproveProjects.getList()) ? "1" : "0");
return "admin/project_list"; return "admin/project_list";
} }
@ -277,12 +282,7 @@ public class ProjectController extends BaseController{
model.put("keywords",keywords); model.put("keywords",keywords);
model.put("deptList", deptRepository.findAll()); model.put("deptList", deptRepository.findAll());
ConcurrentHashMap<String, String> searchInfo = getSearchInfo(keywords,model); ConcurrentHashMap<String, String> searchInfo = getSearchInfo(keywords,model);
model.put("pager",projectService.findMyApproveProjects(searchInfo,InterfaceUtil.getAdminId(),pageNumber,pageSize));
//在列表基础上增加审核人是我和待审核状态的条件
searchInfo.put("approveId", ""+InterfaceUtil.getAdminId());
searchInfo.put("approveStatus", ""+ApproveStatusEnum.APPROVAL_PENDING.getApproveStatus());
model.put("pager",projectService.list(searchInfo,pageNumber,pageSize));
return "admin/project_list_approve"; return "admin/project_list_approve";
} }
@ -292,16 +292,11 @@ public class ProjectController extends BaseController{
@RequestMapping("/exportApprove") @RequestMapping("/exportApprove")
public void exportApprove(@RequestParam(value = "keywords",required = false) String keywords, HttpServletResponse httpServletResponse) throws IOException { public void exportApprove(@RequestParam(value = "keywords",required = false) String keywords, HttpServletResponse httpServletResponse) throws IOException {
Map<String, String> searchInfo = getSearchInfo(keywords); Map<String, String> searchInfo = getSearchInfo(keywords);
//在列表基础上增加审核人是我和待审核状态的条件
searchInfo.put("approveId", ""+InterfaceUtil.getAdminId());
searchInfo.put("approveStatus", ""+ApproveStatusEnum.APPROVAL_PENDING.getApproveStatus());
downloadHeader(httpServletResponse , Utils.generateExcelName("待我审核项目报表"), "application/octet-stream"); downloadHeader(httpServletResponse , Utils.generateExcelName("待我审核项目报表"), "application/octet-stream");
String[] headers = {"项目名称","项目类型","项目状态","审核状态","当前审核人","项目创建者","部门名称","项目开始时间","项目结束时间","最后更新时间"}; String[] headers = {"项目名称","项目类型","项目状态","审核状态","当前审核人","项目创建者","部门名称","项目开始时间","项目结束时间","最后更新时间"};
String[] exportColumns = {"name","typeDesc","statusDesc","approveStatusDesc","approveName","creatorName","deptName","startDate","endDate","lastUpdateTime"}; String[] exportColumns = {"name","typeDesc","statusDesc","approveStatusDesc","approveName","creatorName","deptName","startDate","endDate","lastUpdateTime"};
ExportUtils.exportToExcel(headers, exportColumns, 1, 10000, ExportUtils.exportToExcel(headers, exportColumns, 1, 10000,
httpServletResponse.getOutputStream(), (pN, pS) -> projectService.list(searchInfo, pN, pS).getList()); httpServletResponse.getOutputStream(), (pN, pS) -> projectService.findMyApproveProjects(searchInfo, InterfaceUtil.getAdminId(), pN, pS).getList());
} }

View File

@ -4,6 +4,7 @@ import cn.palmte.work.bean.*;
import cn.palmte.work.model.Admin; import cn.palmte.work.model.Admin;
import cn.palmte.work.model.Project; import cn.palmte.work.model.Project;
import cn.palmte.work.model.ProjectRepository; import cn.palmte.work.model.ProjectRepository;
import cn.palmte.work.utils.InterfaceUtil;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
@ -13,6 +14,7 @@ import top.jfunc.common.db.utils.Pagination;
import top.jfunc.common.utils.StrUtil; import top.jfunc.common.utils.StrUtil;
import java.util.Date; import java.util.Date;
import java.util.List;
import java.util.Map; import java.util.Map;
/** /**
@ -94,6 +96,21 @@ public class ProjectService {
QueryHelper queryHelper = getQueryHelper(searchInfo, pageNumber, pageSize); QueryHelper queryHelper = getQueryHelper(searchInfo, pageNumber, pageSize);
return pagination.paginate(queryHelper.getSql(), Project.class,pageNumber,pageSize); return pagination.paginate(queryHelper.getSql(), Project.class,pageNumber,pageSize);
} }
/**
*
*/
public Page<Project> findMyApproveProjects(Map<String, String> searchInfo, int adminId, int pageNumber, int pageSize){
//在列表基础上增加审核人是我和待审核状态的条件
searchInfo.put("approveId", ""+ adminId);
searchInfo.put("approveStatus", ""+ApproveStatusEnum.APPROVAL_PENDING.getApproveStatus());
return list(searchInfo, pageNumber, pageSize);
}
public Project getProject(int id){ public Project getProject(int id){
return projectRepository.findOne(id); return projectRepository.findOne(id);
} }

View File

@ -157,7 +157,7 @@
<@shiro.hasPermission name="PROJECT_APPROVE"> <@shiro.hasPermission name="PROJECT_APPROVE">
<button type="button" class="am-btn am-btn-default" <button type="button" class="am-btn am-btn-default"
onclick="location.href='${base}/project/listApprove'"> onclick="location.href='${base}/project/listApprove'">
<span class="am-icon-plus"></span> 待我审核的项目 <span class="am-icon-pencil"></span> 待我审核的项目
</button> </button>
</@shiro.hasPermission> </@shiro.hasPermission>
</div> </div>
@ -295,6 +295,18 @@
} }
if("1" == "${hasApproveProjects!'0'}"){
var hasApproveProjectsLayer = layer.open({
type: 1,
title:'待审核项目提醒',
skin: 'layui-layer-rim', //加上边框
area: ['350px', '150px'], //宽高
content: "<div style='margin-top:20px;margin-left:20px;color:red;'>有新的待审核项目,请及时确认。&nbsp;&nbsp;&nbsp;" +
"<span style='color: #0b6fa2;cursor: pointer;text-decoration:underline' onclick='window.location.href=\"${base}/project/listApprove\"'>前往处理</span></div>"
});
}
}); });
</script> </script>