From d573ff1f39420c7e0dab50037724fb9a3a0e202f Mon Sep 17 00:00:00 2001
From: liuleilei <234@qq.com>
Date: 星期一, 14 八月 2023 15:25:18 +0800
Subject: [PATCH] 数据权限列表
---
server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordExtServiceImpl.java | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 51 insertions(+), 0 deletions(-)
diff --git a/server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordExtServiceImpl.java b/server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordExtServiceImpl.java
index 0cdce35..e121285 100644
--- a/server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordExtServiceImpl.java
+++ b/server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordExtServiceImpl.java
@@ -141,6 +141,42 @@
}
return PageData.from(new PageInfo<>(result));
}
+ @Override
+ public PageData<SalaryStatisticsListVO> salaryStatistic(PageWrap<QuerySalaryStatisticDTO> pageWrap) {
+ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ if(!Constants.equalsInteger(user.getType(),Constants.USERTYPE.COM)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "瀵逛笉璧凤紝鎮ㄦ棤鏉冮檺杩涜璇ユ搷浣滐紒");
+ }
+ //鍙兘鏌ョ湅褰撳墠鏍圭粍缁囩殑鏁版嵁
+ pageWrap.getModel().setRootDepartId(user.getRootDepartment().getId());
+ pageWrap.getModel().setRootDepartId(user.getRootDepartment().getId());
+ PageHelper.startPage(pageWrap.getPage(), pageWrap.getCapacity());
+
+ //鏁版嵁鏉冮檺
+ List<Integer> dataPermission = user.getDepartPermissionList();
+ if(dataPermission!=null){
+// pageWrap.getModel().setUserId(user.getId());
+// pageWrap.getModel().setDepartIds(dataPermission);
+ /*if(dataPermission.size() == 0){
+ //鍙兘鐪嬭嚜宸辩殑(鐢熶骇浜哄憳淇℃伅锛�
+ // pageWrap.getModel().setProUserId(user.getId());
+ //闇�姹傚彉鏇� 鏌ョ湅鏁版嵁鏉冮檺鑼冨洿鍐呯殑鏁版嵁锛堣蛋鍒涘缓浜烘垨鑰呯敓浜т汉鍛樹负鎴戞暟鎹潈闄愯寖鍥村唴锛夛紱
+ pageWrap.getModel().setCreateUser(user.getId());
+ }else{
+ //鍚﹀垯璧版暟鎹潈闄�
+ pageWrap.getModel().setDepartIds(dataPermission);
+ }*/
+ }
+ List<SalaryStatisticsListVO> result = workorderRecordExtMapper.salaryStatistic(pageWrap.getModel());
+ if(result!=null){
+ List<DepartmentExtListVO> allDepartList = RedisUtil.getObject(redisTemplate,Constants.RedisKeys.COM_DEPART_LIST_KEY+user.getCompany().getId(),ArrayList.class);
+ for(SalaryStatisticsListVO model : result){
+ //鏌ヨ鐢熶骇浜哄憳濮撳悕
+ initProUser(user,model,allDepartList);
+ }
+ }
+ return PageData.from(new PageInfo<>(result));
+ }
private void initProUser(LoginUserInfo user, WorkorderRecordExtListVO data, List<DepartmentExtListVO> allDepartList) {
if(data.getCreateUser() ==null){
@@ -157,6 +193,21 @@
data.setProcedureName(comp.getName()+"-"+dName);
}
}
+ private void initProUser(LoginUserInfo user, SalaryStatisticsListVO data, List<DepartmentExtListVO> allDepartList) {
+ if(data.getUserId() ==null){
+ return;
+ }
+ CompanyUser query=new CompanyUser();
+ query.setUserId(data.getUserId());
+ query.setRootDepartId(user.getRootDepartment().getId());
+ query.setDeleted(Constants.ZERO);
+ CompanyUser comp= companyUserExtMapper.selectOne(new QueryWrapper<>(query).last(" limit 1"));
+ if(comp!=null){
+ DepartmentExtListVO d = departmentExtService.getModelById(user.getCompany().getId(),comp.getDepartmentId(),allDepartList);
+ String dName =d==null?"":StringUtils.defaultString(d.getName(),"");
+ data.setUserName(comp.getName()+"-"+dName);
+ }
+ }
@Override
public List<WorkorderRecordExtListVO> findAll(QueryWorkorderRecordExtDTO pageWrap) {
LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
--
Gitblit v1.9.3