ci: 删除企标权限部分相关代码
This commit is contained in:
+11
-24
@@ -1,57 +1,44 @@
|
|||||||
package com.jero.modules.system.controller;
|
package com.jero.modules.system.controller;
|
||||||
|
|
||||||
|
|
||||||
import java.util.*;
|
|
||||||
import java.util.stream.Collectors;
|
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
|
||||||
|
|
||||||
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import cn.hutool.core.collection.CollStreamUtil;
|
|
||||||
import cn.hutool.core.collection.CollectionUtil;
|
|
||||||
import cn.hutool.core.collection.ListUtil;
|
|
||||||
import cn.hutool.core.lang.tree.Tree;
|
import cn.hutool.core.lang.tree.Tree;
|
||||||
import cn.hutool.core.lang.tree.TreeNodeConfig;
|
import cn.hutool.core.lang.tree.TreeNodeConfig;
|
||||||
import cn.hutool.core.lang.tree.TreeUtil;
|
import cn.hutool.core.lang.tree.TreeUtil;
|
||||||
import cn.hutool.core.map.MapUtil;
|
|
||||||
import cn.hutool.core.util.ObjectUtil;
|
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.alibaba.fastjson.JSONArray;
|
import com.alibaba.fastjson.JSONArray;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
|
||||||
import com.alibaba.fastjson.parser.ParserConfig;
|
|
||||||
import com.alibaba.fastjson.serializer.SerializerFeature;
|
import com.alibaba.fastjson.serializer.SerializerFeature;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
|
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
|
||||||
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
|
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
|
||||||
import com.jero.common.api.vo.Result;
|
import com.jero.common.api.vo.Result;
|
||||||
import com.jero.common.api.vo.ResultCommon;
|
import com.jero.common.api.vo.ResultCommon;
|
||||||
import com.jero.common.constant.enums.LanguageEnum;
|
import com.jero.common.constant.CacheConstant;
|
||||||
import com.jero.common.util.MessageUtils;
|
import com.jero.common.system.query.QueryGenerator;
|
||||||
import com.jero.modules.enums.FixedFieldEnum;
|
import com.jero.modules.enums.FixedFieldEnum;
|
||||||
import com.jero.modules.system.entity.SysDict;
|
import com.jero.modules.system.entity.SysDict;
|
||||||
|
import com.jero.modules.system.entity.SysDictItem;
|
||||||
|
import com.jero.modules.system.service.ISysDictItemService;
|
||||||
import com.jero.modules.system.service.ISysDictService;
|
import com.jero.modules.system.service.ISysDictService;
|
||||||
import com.jero.modules.system.util.TreeUtils;
|
|
||||||
import com.jero.modules.system.vo.IdMapBody;
|
import com.jero.modules.system.vo.IdMapBody;
|
||||||
import com.jero.modules.system.vo.IdsMapBody;
|
import com.jero.modules.system.vo.IdsMapBody;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.collections4.CollectionUtils;
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.poi.ss.formula.functions.T;
|
import org.apache.poi.ss.formula.functions.T;
|
||||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||||
import com.jero.common.constant.CacheConstant;
|
|
||||||
import com.jero.common.system.query.QueryGenerator;
|
|
||||||
import com.jero.modules.system.entity.SysDictItem;
|
|
||||||
import com.jero.modules.system.service.ISysDictItemService;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.cache.annotation.CacheEvict;
|
import org.springframework.cache.annotation.CacheEvict;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import java.util.*;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
|
|||||||
-17
@@ -36,8 +36,6 @@ import com.jero.modules.laws.common.vo.ManyStandardSelectionBoxVO;
|
|||||||
import com.jero.modules.laws.documenttool.entity.LawsDocumentSplit;
|
import com.jero.modules.laws.documenttool.entity.LawsDocumentSplit;
|
||||||
import com.jero.modules.laws.documenttool.mapper.DocumentSplitMapper;
|
import com.jero.modules.laws.documenttool.mapper.DocumentSplitMapper;
|
||||||
import com.jero.modules.laws.enterprise.entity.EnterpriseStandardInspectContent;
|
import com.jero.modules.laws.enterprise.entity.EnterpriseStandardInspectContent;
|
||||||
import com.jero.modules.laws.enterprise.service.EnterpriseStandardAuthDeptService;
|
|
||||||
import com.jero.modules.laws.enterprise.service.EnterpriseStandardAuthUserService;
|
|
||||||
import com.jero.modules.laws.enterprise.service.EnterpriseStandardInspectContentService;
|
import com.jero.modules.laws.enterprise.service.EnterpriseStandardInspectContentService;
|
||||||
import com.jero.modules.laws.enterprise.util.EnterpriseStandardUtil;
|
import com.jero.modules.laws.enterprise.util.EnterpriseStandardUtil;
|
||||||
import com.jero.modules.laws.home.common.LawsHomeSearchCommon;
|
import com.jero.modules.laws.home.common.LawsHomeSearchCommon;
|
||||||
@@ -139,8 +137,6 @@ public class LawsCommonServiceImpl implements ILawsCommonService {
|
|||||||
@Resource
|
@Resource
|
||||||
private ILawsCommonService commonService;
|
private ILawsCommonService commonService;
|
||||||
@Resource
|
@Resource
|
||||||
private EnterpriseStandardAuthUserService esAuthUserService;
|
|
||||||
@Resource
|
|
||||||
private SysWaterMarkUtil sysWaterMarkUtil;
|
private SysWaterMarkUtil sysWaterMarkUtil;
|
||||||
@Resource
|
@Resource
|
||||||
private ISarFileSplitInfoService sarFileSplitInfoService;
|
private ISarFileSplitInfoService sarFileSplitInfoService;
|
||||||
@@ -149,8 +145,6 @@ public class LawsCommonServiceImpl implements ILawsCommonService {
|
|||||||
@Resource
|
@Resource
|
||||||
private ILawsEnterpriseStandardService lawsEnterpriseStandardService;
|
private ILawsEnterpriseStandardService lawsEnterpriseStandardService;
|
||||||
@Resource
|
@Resource
|
||||||
private EnterpriseStandardAuthDeptService enterpriseAuthDeptService;
|
|
||||||
@Resource
|
|
||||||
private ILawsHomeSearchService lawsHomeSearchService;
|
private ILawsHomeSearchService lawsHomeSearchService;
|
||||||
@Resource
|
@Resource
|
||||||
private DocumentSplitMapper documentSplitMapper;
|
private DocumentSplitMapper documentSplitMapper;
|
||||||
@@ -254,19 +248,8 @@ public class LawsCommonServiceImpl implements ILawsCommonService {
|
|||||||
// 对返回的数据做处理
|
// 对返回的数据做处理
|
||||||
// 做字段翻译和拼接
|
// 做字段翻译和拼接
|
||||||
infoPage.setRecords(processResultMapPageList(infoPage.getRecords(), fieldListSelect));
|
infoPage.setRecords(processResultMapPageList(infoPage.getRecords(), fieldListSelect));
|
||||||
// 企标独有权限
|
|
||||||
if (module.equals(TableNameEnum.ENTERPRISE_STANDARDS.getValue())) {
|
|
||||||
// 是否能查看详情
|
|
||||||
esAuthUserService.detailFlagSet(infoPage.getRecords());
|
|
||||||
// 是否能编辑
|
|
||||||
esAuthUserService.editFlagSet(infoPage.getRecords());
|
|
||||||
// 是否能删除
|
|
||||||
esAuthUserService.delFlagSet(infoPage.getRecords());
|
|
||||||
}
|
|
||||||
// 是否收藏判断标识
|
// 是否收藏判断标识
|
||||||
collectionFlag(infoPage.getRecords());
|
collectionFlag(infoPage.getRecords());
|
||||||
|
|
||||||
// 待处理
|
|
||||||
return infoPage;
|
return infoPage;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
-6
@@ -75,12 +75,6 @@ public interface IDocumentSplitService {
|
|||||||
*/
|
*/
|
||||||
void saveDocumentSplitInfo(SarFileSplitInfoEO sarFileSplitInfoEO);
|
void saveDocumentSplitInfo(SarFileSplitInfoEO sarFileSplitInfoEO);
|
||||||
|
|
||||||
/**
|
|
||||||
* 企标权限校验
|
|
||||||
* @param sarFileSplitInfoEO
|
|
||||||
*/
|
|
||||||
void enterpriseCheck(SarFileSplitInfoEO sarFileSplitInfoEO);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 唯一性校验
|
* 唯一性校验
|
||||||
*/
|
*/
|
||||||
|
|||||||
-98
@@ -1,7 +1,5 @@
|
|||||||
package com.jero.modules.laws.documenttool.service.impl;
|
package com.jero.modules.laws.documenttool.service.impl;
|
||||||
|
|
||||||
import cn.hutool.core.collection.CollUtil;
|
|
||||||
import cn.hutool.core.text.CharSequenceUtil;
|
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
@@ -29,13 +27,8 @@ import com.jero.modules.laws.documenttool.handler.impl.UniversalImpl;
|
|||||||
import com.jero.modules.laws.documenttool.mapper.DocumentSplitMapper;
|
import com.jero.modules.laws.documenttool.mapper.DocumentSplitMapper;
|
||||||
import com.jero.modules.laws.documenttool.mapper.LawsDocumentSplitMapper;
|
import com.jero.modules.laws.documenttool.mapper.LawsDocumentSplitMapper;
|
||||||
import com.jero.modules.laws.documenttool.service.IDocumentSplitService;
|
import com.jero.modules.laws.documenttool.service.IDocumentSplitService;
|
||||||
import com.jero.modules.laws.enterprise.entity.EnterpriseStandardAuthDept;
|
|
||||||
import com.jero.modules.laws.enterprise.entity.EnterpriseStandardAuthUser;
|
|
||||||
import com.jero.modules.laws.enterprise.service.EnterpriseStandardAuthDeptService;
|
|
||||||
import com.jero.modules.laws.enterprise.service.EnterpriseStandardAuthUserService;
|
|
||||||
import com.jero.modules.laws.labeldatabase.entity.LawsLabelDatabase;
|
import com.jero.modules.laws.labeldatabase.entity.LawsLabelDatabase;
|
||||||
import com.jero.modules.laws.labeldatabase.service.ILawsLabelDatabaseService;
|
import com.jero.modules.laws.labeldatabase.service.ILawsLabelDatabaseService;
|
||||||
import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard;
|
|
||||||
import com.jero.modules.laws.standard.entity.LawsNodeRelation;
|
import com.jero.modules.laws.standard.entity.LawsNodeRelation;
|
||||||
import com.jero.modules.laws.standard.entity.LawsTreeNode;
|
import com.jero.modules.laws.standard.entity.LawsTreeNode;
|
||||||
import com.jero.modules.laws.standard.entity.PartName;
|
import com.jero.modules.laws.standard.entity.PartName;
|
||||||
@@ -54,15 +47,12 @@ import com.jero.modules.split.service.ISarFileSplitInfoService;
|
|||||||
import com.jero.modules.split.service.ISarFileSplitItemsValEOService;
|
import com.jero.modules.split.service.ISarFileSplitItemsValEOService;
|
||||||
import com.jero.modules.split.service.ISarFileSplitMenuEOService;
|
import com.jero.modules.split.service.ISarFileSplitMenuEOService;
|
||||||
import com.jero.modules.split.service.impl.FileSpiltService;
|
import com.jero.modules.split.service.impl.FileSpiltService;
|
||||||
import com.jero.modules.sys.entity.LawsEnterpriseStandardLevel;
|
|
||||||
import com.jero.modules.sys.entity.LawsGrade;
|
|
||||||
import com.jero.modules.sys.service.ILawsEnterpriseStandardLevelService;
|
import com.jero.modules.sys.service.ILawsEnterpriseStandardLevelService;
|
||||||
import com.jero.modules.sys.service.ILawsGradeService;
|
import com.jero.modules.sys.service.ILawsGradeService;
|
||||||
import com.jero.modules.system.entity.SysDepart;
|
import com.jero.modules.system.entity.SysDepart;
|
||||||
import com.jero.modules.system.entity.SysDict;
|
import com.jero.modules.system.entity.SysDict;
|
||||||
import com.jero.modules.system.entity.SysDictItem;
|
import com.jero.modules.system.entity.SysDictItem;
|
||||||
import com.jero.modules.system.entity.SysUser;
|
import com.jero.modules.system.entity.SysUser;
|
||||||
import com.jero.modules.system.model.DepartIdModel;
|
|
||||||
import com.jero.modules.system.service.*;
|
import com.jero.modules.system.service.*;
|
||||||
import com.jero.modules.tag.entity.LawsTag;
|
import com.jero.modules.tag.entity.LawsTag;
|
||||||
import com.jero.modules.tag.enums.LawsFieldTypeEnum;
|
import com.jero.modules.tag.enums.LawsFieldTypeEnum;
|
||||||
@@ -134,12 +124,8 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private ILawsEnterpriseStandardLevelService lawsEnterpriseStandardLevelService;
|
private ILawsEnterpriseStandardLevelService lawsEnterpriseStandardLevelService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private EnterpriseStandardAuthUserService enterpriseStandardAuthUserService;
|
|
||||||
@Autowired
|
|
||||||
private ISysUserService sysUserService;
|
private ISysUserService sysUserService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private EnterpriseStandardAuthDeptService enterpriseStandardAuthDeptService;
|
|
||||||
@Autowired
|
|
||||||
private ISysUserDepartService sysUserDepartService;
|
private ISysUserDepartService sysUserDepartService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private ILawsGradeService lawsGradeService;
|
private ILawsGradeService lawsGradeService;
|
||||||
@@ -423,8 +409,6 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void add(SarFileSplitInfoEO sarFileSplitInfoEO) {
|
public void add(SarFileSplitInfoEO sarFileSplitInfoEO) {
|
||||||
// 企标权限校验
|
|
||||||
enterpriseCheck(sarFileSplitInfoEO);
|
|
||||||
// 唯一校验
|
// 唯一校验
|
||||||
uniqueCheck(sarFileSplitInfoEO);
|
uniqueCheck(sarFileSplitInfoEO);
|
||||||
// 保存文本拆分数据
|
// 保存文本拆分数据
|
||||||
@@ -447,88 +431,6 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void enterpriseCheck(SarFileSplitInfoEO sarFileSplitInfoEO) {
|
|
||||||
// 登陆人信息
|
|
||||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
|
||||||
// 管理员有所有企标的权限
|
|
||||||
List<String> roleIdList = Arrays.asList(sysUser.getRoleIds().split(","));
|
|
||||||
Collection<String> intersection = CollectionUtils.intersection(adminRoleCodeList, roleIdList);
|
|
||||||
if (!intersection.isEmpty()){
|
|
||||||
// 有权限
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 企标
|
|
||||||
LawsEnterpriseStandard lawsEnterpriseStandard = lawsEnterpriseStandardService.getOne(
|
|
||||||
new LambdaQueryWrapper<LawsEnterpriseStandard>()
|
|
||||||
.eq(LawsEnterpriseStandard::getStandardNumber, sarFileSplitInfoEO.getSerialNumber()));
|
|
||||||
if (!Objects.isNull(lawsEnterpriseStandard)){
|
|
||||||
String id = lawsEnterpriseStandard.getId();
|
|
||||||
if (StringUtils.isBlank(sarFileSplitInfoEO.getStandardId())){
|
|
||||||
sarFileSplitInfoEO.setStandardId(id);
|
|
||||||
}
|
|
||||||
// 登陆人所在部门
|
|
||||||
List<DepartIdModel> departIdModels = sysUserDepartService.queryDepartIdsOfUser(sysUser.getId());
|
|
||||||
List<String> departIds = departIdModels.stream().map(DepartIdModel::getKey).collect(Collectors.toList());
|
|
||||||
List<String> departNames = departIdModels.stream().map(DepartIdModel::getTitle).collect(Collectors.toList());
|
|
||||||
|
|
||||||
// 查询临时授权人员
|
|
||||||
Date date = new Date();
|
|
||||||
LambdaQueryWrapper<EnterpriseStandardAuthUser> authUserWrapper = new LambdaQueryWrapper<>();
|
|
||||||
authUserWrapper.eq(EnterpriseStandardAuthUser::getStandardId, id);
|
|
||||||
authUserWrapper.eq(EnterpriseStandardAuthUser::getAuthUser, sysUser.getId());
|
|
||||||
authUserWrapper.ge(EnterpriseStandardAuthUser::getAuthExpireDate, date);
|
|
||||||
List<EnterpriseStandardAuthUser> authUserList = enterpriseStandardAuthUserService.list(authUserWrapper);
|
|
||||||
|
|
||||||
// 查询授权部门-和临时授权部门
|
|
||||||
LambdaQueryWrapper<EnterpriseStandardAuthDept> tempAuthDeptWrapper = new LambdaQueryWrapper<>();
|
|
||||||
tempAuthDeptWrapper.eq(EnterpriseStandardAuthDept::getStandardId, id);
|
|
||||||
tempAuthDeptWrapper.in(CollUtil.isNotEmpty(departIds), EnterpriseStandardAuthDept::getAuthDept, departIds);
|
|
||||||
tempAuthDeptWrapper.isNotNull(EnterpriseStandardAuthDept::getAuthExpireDate);
|
|
||||||
tempAuthDeptWrapper.isNotNull(EnterpriseStandardAuthDept::getAuthDept);
|
|
||||||
List<EnterpriseStandardAuthDept> tempAuthDeptList = enterpriseStandardAuthDeptService.list(tempAuthDeptWrapper);
|
|
||||||
if (!tempAuthDeptList.isEmpty()){
|
|
||||||
// 有权限
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
tempAuthDeptWrapper.ge(EnterpriseStandardAuthDept::getAuthExpireDate, date);
|
|
||||||
List<EnterpriseStandardAuthDept> authDeptExpireDateList = enterpriseStandardAuthDeptService.list(tempAuthDeptWrapper);
|
|
||||||
if (!authDeptExpireDateList.isEmpty()){
|
|
||||||
// 有权限
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 查询授权部门
|
|
||||||
LambdaQueryWrapper<EnterpriseStandardAuthDept> authDeptWrapper = new LambdaQueryWrapper<>();
|
|
||||||
authDeptWrapper.eq(EnterpriseStandardAuthDept::getStandardId, id);
|
|
||||||
authDeptWrapper.isNull(EnterpriseStandardAuthDept::getAuthExpireDate);
|
|
||||||
List<EnterpriseStandardAuthDept> authDeptList = enterpriseStandardAuthDeptService.list(authDeptWrapper);
|
|
||||||
|
|
||||||
// 企标级别授权的部门
|
|
||||||
List<LawsEnterpriseStandardLevel> standardLevelList = lawsEnterpriseStandardLevelService.list();
|
|
||||||
LawsGrade one = lawsGradeService.getOne(new LambdaQueryWrapper<LawsGrade>().eq(LawsGrade::getLevel, 1), false);
|
|
||||||
LawsGrade two = lawsGradeService.getOne(new LambdaQueryWrapper<LawsGrade>().eq(LawsGrade::getLevel, 2), false);
|
|
||||||
List<String> levelOneDeptIds = standardLevelList.stream().filter(l -> l.getGradeId().equals(one.getId()))
|
|
||||||
.map(LawsEnterpriseStandardLevel::getDeptId).collect(Collectors.toList());
|
|
||||||
List<String> levelTwoDeptIds = standardLevelList.stream().filter(l -> l.getGradeId().equals(two.getId()))
|
|
||||||
.map(LawsEnterpriseStandardLevel::getDeptId).collect(Collectors.toList());
|
|
||||||
|
|
||||||
Set<EnterpriseStandardAuthDept> curAuthSet = authDeptList.stream()
|
|
||||||
.filter(e -> e.getAuthDept() != null)
|
|
||||||
.filter(e -> CharSequenceUtil.isNotEmpty(e.getAuthDept()))
|
|
||||||
.filter(e -> e.getStandardId().equals(id))
|
|
||||||
.filter(e -> !e.getAuthDept().equals(lawsEnterpriseStandard.getMainDraftingUnit()))
|
|
||||||
.collect(Collectors.toSet());
|
|
||||||
// 临时权限
|
|
||||||
if (authUserList.stream().map(EnterpriseStandardAuthUser::getStandardId).collect(Collectors.toList()).contains(id)) {
|
|
||||||
// 有权限
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 无权限
|
|
||||||
noAccess();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void noAccess() {
|
private void noAccess() {
|
||||||
if(LanguageEnum.CN.equals(MessageUtils.getLanguage())) {
|
if(LanguageEnum.CN.equals(MessageUtils.getLanguage())) {
|
||||||
throw new JeroBootException("无权限!");
|
throw new JeroBootException("无权限!");
|
||||||
|
|||||||
-69
@@ -1,69 +0,0 @@
|
|||||||
package com.jero.modules.laws.enterprise.entity;
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableField;
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
|
||||||
import java.io.Serializable;
|
|
||||||
import java.util.Date;
|
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
|
||||||
import io.swagger.annotations.ApiModel;
|
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
|
||||||
import lombok.Data;
|
|
||||||
import lombok.EqualsAndHashCode;
|
|
||||||
import lombok.experimental.Accessors;
|
|
||||||
import org.springframework.format.annotation.DateTimeFormat;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @TableName laws_enterprise_standard_auth_dept
|
|
||||||
*/
|
|
||||||
@Data
|
|
||||||
@TableName("laws_enterprise_standard_auth_dept")
|
|
||||||
@Accessors(chain = true)
|
|
||||||
@EqualsAndHashCode(callSuper = false)
|
|
||||||
@ApiModel(value="laws_enterprise_standard_auth_dept对象", description="企业标准部门授权")
|
|
||||||
public class EnterpriseStandardAuthDept implements Serializable {
|
|
||||||
|
|
||||||
/**主键ID*/
|
|
||||||
@TableId
|
|
||||||
@ApiModelProperty(value = "主键ID")
|
|
||||||
private String id;
|
|
||||||
|
|
||||||
/**创建人*/
|
|
||||||
@ApiModelProperty(value = "创建人")
|
|
||||||
private String createBy;
|
|
||||||
|
|
||||||
/**创建时间*/
|
|
||||||
@ApiModelProperty(value = "创建时间")
|
|
||||||
private Date createTime;
|
|
||||||
|
|
||||||
/**更新人*/
|
|
||||||
@ApiModelProperty(value = "更新人")
|
|
||||||
private String updateBy;
|
|
||||||
|
|
||||||
/**更新时间*/
|
|
||||||
@ApiModelProperty(value = "更新时间")
|
|
||||||
private Date updateTime;
|
|
||||||
|
|
||||||
/**所属部门*/
|
|
||||||
@ApiModelProperty(value = "所属部门")
|
|
||||||
private String orgCode;
|
|
||||||
|
|
||||||
/**标准Id*/
|
|
||||||
@ApiModelProperty(value = "标准Id")
|
|
||||||
private String standardId;
|
|
||||||
|
|
||||||
/**部门id*/
|
|
||||||
@ApiModelProperty(value = "部门id")
|
|
||||||
private String authDept;
|
|
||||||
|
|
||||||
/**授权到期日期*/
|
|
||||||
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
|
|
||||||
@DateTimeFormat(pattern="yyyy-MM-dd")
|
|
||||||
@ApiModelProperty(value = "授权到期日期")
|
|
||||||
private Date authExpireDate;
|
|
||||||
|
|
||||||
@TableField(exist = false)
|
|
||||||
private static final long serialVersionUID = 1897685576865785671L;
|
|
||||||
}
|
|
||||||
-73
@@ -1,73 +0,0 @@
|
|||||||
package com.jero.modules.laws.enterprise.entity;
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.IdType;
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
|
||||||
import io.swagger.annotations.ApiModel;
|
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
|
||||||
import lombok.Data;
|
|
||||||
import lombok.EqualsAndHashCode;
|
|
||||||
import lombok.experimental.Accessors;
|
|
||||||
import org.springframework.format.annotation.DateTimeFormat;
|
|
||||||
import java.io.Serializable;
|
|
||||||
import java.util.Date;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @Description: 企业标准用户授权
|
|
||||||
* @Author: jero-boot
|
|
||||||
* @Date: 2023-09-06
|
|
||||||
* @Version: V1.0
|
|
||||||
*/
|
|
||||||
@Data
|
|
||||||
@TableName("laws_enterprise_standard_auth_user")
|
|
||||||
@Accessors(chain = true)
|
|
||||||
@EqualsAndHashCode(callSuper = false)
|
|
||||||
@ApiModel(value="laws_enterprise_standard_auth_user对象", description="企业标准用户授权")
|
|
||||||
public class EnterpriseStandardAuthUser implements Serializable {
|
|
||||||
|
|
||||||
private static final long serialVersionUID = 1677686781283647121L;
|
|
||||||
|
|
||||||
/**主键ID*/
|
|
||||||
@TableId(type = IdType.ASSIGN_ID)
|
|
||||||
@ApiModelProperty(value = "主键ID")
|
|
||||||
private String id;
|
|
||||||
|
|
||||||
/**创建人*/
|
|
||||||
@ApiModelProperty(value = "创建人")
|
|
||||||
private String createBy;
|
|
||||||
|
|
||||||
/**创建时间*/
|
|
||||||
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
|
||||||
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
|
||||||
@ApiModelProperty(value = "创建时间")
|
|
||||||
private Date createTime;
|
|
||||||
|
|
||||||
/**更新人*/
|
|
||||||
@ApiModelProperty(value = "更新人")
|
|
||||||
private String updateBy;
|
|
||||||
|
|
||||||
/**更新时间*/
|
|
||||||
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
|
||||||
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
|
||||||
@ApiModelProperty(value = "更新时间")
|
|
||||||
private Date updateTime;
|
|
||||||
|
|
||||||
/**所属部门*/
|
|
||||||
@ApiModelProperty(value = "所属部门")
|
|
||||||
private String orgCode;
|
|
||||||
|
|
||||||
/**企标Id*/
|
|
||||||
@ApiModelProperty(value = "企标Id")
|
|
||||||
private String standardId;
|
|
||||||
|
|
||||||
/**授权人员*/
|
|
||||||
@ApiModelProperty(value = "授权人员")
|
|
||||||
private String authUser;
|
|
||||||
|
|
||||||
/**授权到期日期*/
|
|
||||||
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
|
|
||||||
@DateTimeFormat(pattern="yyyy-MM-dd")
|
|
||||||
@ApiModelProperty(value = "授权到期日期")
|
|
||||||
private Date authExpireDate;
|
|
||||||
}
|
|
||||||
-28
@@ -1,28 +0,0 @@
|
|||||||
package com.jero.modules.laws.enterprise.mapper;
|
|
||||||
|
|
||||||
import com.jero.modules.laws.enterprise.entity.EnterpriseStandardAuthDept;
|
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|
||||||
import com.jero.modules.laws.standard.controller.TempAuthRecordQueryDto;
|
|
||||||
import org.apache.ibatis.annotations.Param;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author ThinkBook
|
|
||||||
* @description 针对表【laws_enterprise_standard_auth_dept】的数据库操作Mapper
|
|
||||||
* @createDate 2023-09-15 10:39:54
|
|
||||||
* @Entity com.jero.modules.laws.enterprise.entity.EnterpriseStandardAuthDept
|
|
||||||
*/
|
|
||||||
public interface EnterpriseStandardAuthDeptMapper extends BaseMapper<EnterpriseStandardAuthDept> {
|
|
||||||
|
|
||||||
int batchInsert(List<EnterpriseStandardAuthDept> list);
|
|
||||||
|
|
||||||
int countDeptAuths(@Param("param") TempAuthRecordQueryDto tempAuthRecordQueryDto);
|
|
||||||
|
|
||||||
List<TempAuthRecordQueryDto> queryDeptAuths(@Param("param") TempAuthRecordQueryDto tempAuthRecordQueryDto,
|
|
||||||
int pageSize, int offset);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-27
@@ -1,27 +0,0 @@
|
|||||||
package com.jero.modules.laws.enterprise.mapper;
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
||||||
import com.jero.modules.laws.enterprise.entity.EnterpriseStandardAuthUser;
|
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|
||||||
import com.jero.modules.laws.standard.controller.TempAuthRecordQueryDto;
|
|
||||||
import org.apache.ibatis.annotations.Param;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author ThinkBook
|
|
||||||
* @description 针对表【laws_enterprise_standard_temp_permission(企业标准)】的数据库操作Mapper
|
|
||||||
* @createDate 2023-09-07 11:20:30
|
|
||||||
* @Entity generator.entity.EnterpriseStandardTempPermission
|
|
||||||
*/
|
|
||||||
public interface EnterpriseStandardAuthUserMapper extends BaseMapper<EnterpriseStandardAuthUser> {
|
|
||||||
|
|
||||||
int countUserAuths(@Param("param") TempAuthRecordQueryDto tempAuthRecordQueryDto);
|
|
||||||
|
|
||||||
List<TempAuthRecordQueryDto> queryUserAuths(@Param("param") TempAuthRecordQueryDto tempAuthRecordQueryDto,
|
|
||||||
int pageSize, int offset);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-94
@@ -1,94 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE mapper
|
|
||||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
||||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
||||||
<mapper namespace="com.jero.modules.laws.enterprise.mapper.EnterpriseStandardAuthDeptMapper">
|
|
||||||
|
|
||||||
<resultMap id="BaseResultMap" type="com.jero.modules.laws.enterprise.entity.EnterpriseStandardAuthDept">
|
|
||||||
<id property="id" column="id" jdbcType="VARCHAR"/>
|
|
||||||
<result property="createBy" column="create_by" jdbcType="VARCHAR"/>
|
|
||||||
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
|
|
||||||
<result property="updateBy" column="update_by" jdbcType="VARCHAR"/>
|
|
||||||
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
|
|
||||||
<result property="orgCode" column="org_code" jdbcType="VARCHAR"/>
|
|
||||||
<result property="standardId" column="standard_id" jdbcType="VARCHAR"/>
|
|
||||||
<result property="authDept" column="auth_dept" jdbcType="VARCHAR"/>
|
|
||||||
<result property="authExpireDate" column="auth_expire_date" jdbcType="TIMESTAMP"/>
|
|
||||||
</resultMap>
|
|
||||||
|
|
||||||
<sql id="Base_Column_List">
|
|
||||||
id,create_by,create_time,
|
|
||||||
update_by,update_time,org_code,
|
|
||||||
standard_id,authDept
|
|
||||||
</sql>
|
|
||||||
|
|
||||||
<insert id="batchInsert">
|
|
||||||
INSERT INTO laws_enterprise_standard_auth_dept (id, standard_id, auth_dept)
|
|
||||||
VALUES
|
|
||||||
<foreach collection="list" item="item" separator=",">
|
|
||||||
(#{item.id}, #{item.standardId}, #{item.authDept})
|
|
||||||
</foreach>
|
|
||||||
</insert>
|
|
||||||
|
|
||||||
<select id="queryDeptAuths" resultType="com.jero.modules.laws.standard.controller.TempAuthRecordQueryDto">
|
|
||||||
SELECT
|
|
||||||
auth.id AS Id,
|
|
||||||
auth.auth_dept AS authDept,
|
|
||||||
auth.create_time AS createTime,
|
|
||||||
auth.standard_id AS standardId,
|
|
||||||
auth.auth_expire_date AS authExpireDate
|
|
||||||
FROM (select * from laws_enterprise_standard_auth_dept WHERE auth_expire_date IS NOT NULL) auth
|
|
||||||
<if test="param.standardNumber != null and param.standardNumber != ''">
|
|
||||||
LEFT JOIN laws_enterprise_standard AS es ON auth.standard_id = es.id
|
|
||||||
</if>
|
|
||||||
WHERE auth.auth_expire_date IS NOT NULL
|
|
||||||
<!--企标编号-->
|
|
||||||
<if test="param.standardNumber != null and param.standardNumber != ''">
|
|
||||||
AND es.standard_number LIKE CONCAT('%',#{param.standardNumber},'%')
|
|
||||||
</if>
|
|
||||||
<!--授权到期日期-->
|
|
||||||
<if test="param.startAuthExpireDate != null and param.endAuthExpireDate != ''">
|
|
||||||
AND auth.auth_expire_date >= #{param.startAuthExpireDate}
|
|
||||||
AND auth.auth_expire_date <= #{param.endAuthExpireDate}
|
|
||||||
</if>
|
|
||||||
<!--授权部门-->
|
|
||||||
<if test="param.authDeptList != null and param.authDeptList.size() > 0">
|
|
||||||
AND auth.auth_dept IN
|
|
||||||
<foreach item="item" index="index" collection="param.authDeptList" open="(" separator="," close=")">
|
|
||||||
#{item}
|
|
||||||
</foreach>
|
|
||||||
</if>
|
|
||||||
ORDER BY
|
|
||||||
auth.create_time DESC,
|
|
||||||
auth.auth_expire_date DESC
|
|
||||||
LIMIT #{pageSize} OFFSET #{offset}
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<!-- 统计部门授权总数 -->
|
|
||||||
<select id="countDeptAuths" resultType="int">
|
|
||||||
SELECT COUNT(*)
|
|
||||||
FROM (select * from laws_enterprise_standard_auth_dept WHERE auth_expire_date IS NOT NULL) auth
|
|
||||||
<if test="param.standardNumber != null and param.standardNumber != ''">
|
|
||||||
LEFT JOIN laws_enterprise_standard AS es ON auth.standard_id = es.id
|
|
||||||
</if>
|
|
||||||
<where>
|
|
||||||
<!--企标编号-->
|
|
||||||
<if test="param.standardNumber != null and param.standardNumber != ''">
|
|
||||||
AND es.standard_number LIKE CONCAT('%',#{param.standardNumber},'%')
|
|
||||||
</if>
|
|
||||||
<!--授权到期日期-->
|
|
||||||
<if test="param.startAuthExpireDate != null and param.endAuthExpireDate != ''">
|
|
||||||
AND auth.auth_expire_date >= #{param.startAuthExpireDate}
|
|
||||||
AND auth.auth_expire_date <= #{param.endAuthExpireDate}
|
|
||||||
</if>
|
|
||||||
<!--授权部门-->
|
|
||||||
<if test="param.authDeptList != null and param.authDeptList.size() > 0">
|
|
||||||
AND auth.auth_dept IN
|
|
||||||
<foreach item="item" index="index" collection="param.authDeptList" open="(" separator="," close=")">
|
|
||||||
#{item}
|
|
||||||
</foreach>
|
|
||||||
</if>
|
|
||||||
</where>
|
|
||||||
</select>
|
|
||||||
|
|
||||||
</mapper>
|
|
||||||
-89
@@ -1,89 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE mapper
|
|
||||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
||||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
||||||
<mapper namespace="com.jero.modules.laws.enterprise.mapper.EnterpriseStandardAuthUserMapper">
|
|
||||||
|
|
||||||
<resultMap id="BaseResultMap" type="com.jero.modules.laws.enterprise.entity.EnterpriseStandardAuthUser">
|
|
||||||
<id property="id" column="id" jdbcType="VARCHAR"/>
|
|
||||||
<result property="createBy" column="create_by" jdbcType="VARCHAR"/>
|
|
||||||
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
|
|
||||||
<result property="updateBy" column="update_by" jdbcType="VARCHAR"/>
|
|
||||||
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
|
|
||||||
<result property="orgCode" column="org_code" jdbcType="VARCHAR"/>
|
|
||||||
<result property="standardId" column="standard_id" jdbcType="VARCHAR"/>
|
|
||||||
<result property="authUser" column="auth_user" jdbcType="VARCHAR"/>
|
|
||||||
<result property="authExpireDate" column="auth_expire_date" jdbcType="TIMESTAMP"/>
|
|
||||||
</resultMap>
|
|
||||||
|
|
||||||
<sql id="Base_Column_List">
|
|
||||||
id,create_by,create_time,
|
|
||||||
update_by,update_time,org_code,
|
|
||||||
standard_id,auth_user,auth_expire_date
|
|
||||||
</sql>
|
|
||||||
|
|
||||||
<select id="queryUserAuths" resultType="com.jero.modules.laws.standard.controller.TempAuthRecordQueryDto">
|
|
||||||
SELECT
|
|
||||||
auth.id AS Id,
|
|
||||||
auth.auth_user AS authUser,
|
|
||||||
auth.create_time AS createTime,
|
|
||||||
auth.standard_id AS standardId,
|
|
||||||
auth.auth_expire_date AS authExpireDate
|
|
||||||
FROM (select * from laws_enterprise_standard_auth_user WHERE auth_expire_date IS NOT NULL) auth
|
|
||||||
<if test="param.standardNumber != null and param.standardNumber != ''">
|
|
||||||
LEFT JOIN laws_enterprise_standard AS es ON auth.standard_id = es.id
|
|
||||||
</if>
|
|
||||||
<!--授权人员-->
|
|
||||||
<if test="param.authUser != null and param.authUser != ''">
|
|
||||||
LEFT JOIN sys_user AS u ON u.id = auth.auth_user
|
|
||||||
</if>
|
|
||||||
WHERE
|
|
||||||
auth.auth_expire_date IS NOT NULL
|
|
||||||
<!--企标编号-->
|
|
||||||
<if test="param.standardNumber != null and param.standardNumber != ''">
|
|
||||||
AND es.standard_number LIKE CONCAT('%',#{param.standardNumber},'%')
|
|
||||||
</if>
|
|
||||||
<!--授权人员-->
|
|
||||||
<if test="param.authUser != null and param.authUser != ''">
|
|
||||||
AND CONCAT(u.realname, '(', u.username, ')') LIKE CONCAT('%',#{param.authUser},'%')
|
|
||||||
</if>
|
|
||||||
<!--授权到期日期-->
|
|
||||||
<if test="param.startAuthExpireDate != null and param.endAuthExpireDate != ''">
|
|
||||||
AND auth.auth_expire_date >= #{param.startAuthExpireDate}
|
|
||||||
AND auth.auth_expire_date <= #{param.endAuthExpireDate}
|
|
||||||
</if>
|
|
||||||
ORDER BY
|
|
||||||
auth.create_time DESC,
|
|
||||||
auth.auth_expire_date DESC
|
|
||||||
LIMIT #{pageSize} OFFSET #{offset}
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<!-- 统计用户授权总数 -->
|
|
||||||
<select id="countUserAuths" resultType="int">
|
|
||||||
SELECT COUNT(*)
|
|
||||||
FROM (select * from laws_enterprise_standard_auth_user WHERE auth_expire_date IS NOT NULL) auth
|
|
||||||
<if test="param.standardNumber != null and param.standardNumber != ''">
|
|
||||||
LEFT JOIN laws_enterprise_standard AS es ON auth.standard_id = es.id
|
|
||||||
</if>
|
|
||||||
<if test="param.authUser != null and param.authUser != ''">
|
|
||||||
LEFT JOIN sys_user AS u ON u.id = auth.auth_user
|
|
||||||
</if>
|
|
||||||
<where>
|
|
||||||
<!--企标编号-->
|
|
||||||
<if test="param.standardNumber != null and param.standardNumber != ''">
|
|
||||||
AND es.standard_number LIKE CONCAT('%',#{param.standardNumber},'%')
|
|
||||||
</if>
|
|
||||||
<!--授权到期日期-->
|
|
||||||
<if test="param.startAuthExpireDate != null and param.endAuthExpireDate != ''">
|
|
||||||
AND auth.auth_expire_date >= #{param.startAuthExpireDate}
|
|
||||||
AND auth.auth_expire_date <= #{param.endAuthExpireDate}
|
|
||||||
</if>
|
|
||||||
<!--授权人员-->
|
|
||||||
<if test="param.authUser != null and param.authUser != ''">
|
|
||||||
AND CONCAT(u.realname, '(', u.username, ')') LIKE CONCAT('%',#{param.authUser},'%')
|
|
||||||
</if>
|
|
||||||
</where>
|
|
||||||
</select>
|
|
||||||
|
|
||||||
|
|
||||||
</mapper>
|
|
||||||
-16
@@ -1,16 +0,0 @@
|
|||||||
package com.jero.modules.laws.enterprise.service;
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
|
||||||
import com.jero.modules.laws.enterprise.entity.EnterpriseStandardAuthDept;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author ThinkBook
|
|
||||||
* @description 针对表【laws_enterprise_standard_auth_dept】的数据库操作Service
|
|
||||||
* @createDate 2023-09-15 10:39:54
|
|
||||||
*/
|
|
||||||
public interface EnterpriseStandardAuthDeptService extends IService<EnterpriseStandardAuthDept> {
|
|
||||||
|
|
||||||
void batchInsertWithTransaction(List<EnterpriseStandardAuthDept> list, int batchSize);
|
|
||||||
}
|
|
||||||
-71
@@ -1,71 +0,0 @@
|
|||||||
package com.jero.modules.laws.enterprise.service;
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
|
||||||
import com.jero.modules.laws.enterprise.entity.EnterpriseStandardAuthUser;
|
|
||||||
import com.jero.modules.laws.standard.controller.TempAuthRecordQueryDto;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author ThinkBook
|
|
||||||
* @description 针对表【laws_enterprise_standard_temp_permission(企业标准)】的数据库操作Service
|
|
||||||
* @createDate 2023-09-07 11:20:30
|
|
||||||
*/
|
|
||||||
public interface EnterpriseStandardAuthUserService extends IService<EnterpriseStandardAuthUser> {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 查看详情权限设置
|
|
||||||
*
|
|
||||||
* @param records
|
|
||||||
*/
|
|
||||||
void detailFlagSet(List<Map<String, Object>> records);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 编辑权限设置
|
|
||||||
*
|
|
||||||
* @param records
|
|
||||||
*/
|
|
||||||
void editFlagSet(List<Map<String, Object>> records);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 删除权限设置
|
|
||||||
*
|
|
||||||
* @param records
|
|
||||||
*/
|
|
||||||
void delFlagSet(List<Map<String, Object>> records);
|
|
||||||
|
|
||||||
boolean detailPermissionByUser(String standardId, String standardNumber, String userId);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 临时授权记录分页列表接口
|
|
||||||
*
|
|
||||||
* @param tempAuthRecordQueryDto
|
|
||||||
* @param pageNo
|
|
||||||
* @param pageSize
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
IPage<TempAuthRecordQueryDto> tempAuthRecord(TempAuthRecordQueryDto tempAuthRecordQueryDto, Integer pageNo, Integer pageSize);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 解除授权
|
|
||||||
*
|
|
||||||
* @param authId
|
|
||||||
*/
|
|
||||||
void revokeAuth(String authId);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 指定用户Id是否有指定企标的删除权限
|
|
||||||
* @param standardId 企标Id
|
|
||||||
* @param userId 用户Id
|
|
||||||
*/
|
|
||||||
boolean hasEditAuth(String standardId, String userId);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 编辑水平越权校验
|
|
||||||
* @param standardId 企标Id
|
|
||||||
*/
|
|
||||||
void isEditHorizontalOverstep(String standardId);
|
|
||||||
|
|
||||||
}
|
|
||||||
-61
@@ -1,61 +0,0 @@
|
|||||||
package com.jero.modules.laws.enterprise.service.impl;
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
||||||
import com.jero.common.exception.JeroBootException;
|
|
||||||
import com.jero.common.util.MessageUtils;
|
|
||||||
import com.jero.common.api.vo.ResultCommon;
|
|
||||||
import com.jero.modules.laws.enterprise.entity.EnterpriseStandardAuthDept;
|
|
||||||
import com.jero.modules.laws.enterprise.service.EnterpriseStandardAuthDeptService;
|
|
||||||
import com.jero.modules.laws.enterprise.mapper.EnterpriseStandardAuthDeptMapper;
|
|
||||||
import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard;
|
|
||||||
import com.jero.modules.laws.standard.entity.LawsStandardTempPermission;
|
|
||||||
import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService;
|
|
||||||
import com.jero.modules.sys.utils.UserUtils;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
|
||||||
import org.apache.ibatis.session.ExecutorType;
|
|
||||||
import org.apache.ibatis.session.SqlSession;
|
|
||||||
import org.apache.ibatis.session.SqlSessionFactory;
|
|
||||||
import org.springframework.stereotype.Service;
|
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.Collections;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author ThinkBook
|
|
||||||
* @description 针对表【laws_enterprise_standard_auth_dept】的数据库操作Service实现
|
|
||||||
* @createDate 2023-09-15 10:39:54
|
|
||||||
*/
|
|
||||||
@Service
|
|
||||||
@Transactional(rollbackFor = JeroBootException.class)
|
|
||||||
@Slf4j
|
|
||||||
public class EnterpriseStandardAuthDeptServiceImpl extends ServiceImpl<EnterpriseStandardAuthDeptMapper, EnterpriseStandardAuthDept>
|
|
||||||
implements EnterpriseStandardAuthDeptService{
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
private SqlSessionFactory sqlSessionFactory;
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void batchInsertWithTransaction(List<EnterpriseStandardAuthDept> list, int batchSize) {
|
|
||||||
try (SqlSession sqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH)) {
|
|
||||||
EnterpriseStandardAuthDeptMapper batchMapper = sqlSession.getMapper(EnterpriseStandardAuthDeptMapper.class);
|
|
||||||
|
|
||||||
for (int i = 0; i < list.size(); i += batchSize) {
|
|
||||||
int end = Math.min(i + batchSize, list.size());
|
|
||||||
List<EnterpriseStandardAuthDept> batchList = list.subList(i, end);
|
|
||||||
batchMapper.batchInsert(batchList);
|
|
||||||
sqlSession.commit(); // 提交每个批次
|
|
||||||
}
|
|
||||||
} catch (Exception e) {
|
|
||||||
// 处理异常,根据需要记录日志或抛出
|
|
||||||
log.error("批量插入失败", e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-447
@@ -1,447 +0,0 @@
|
|||||||
package com.jero.modules.laws.enterprise.service.impl;
|
|
||||||
|
|
||||||
import cn.hutool.core.collection.CollUtil;
|
|
||||||
import cn.hutool.core.util.StrUtil;
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
||||||
import com.jero.common.api.vo.ResultCommon;
|
|
||||||
import com.jero.common.constant.enums.YesOrNoEnum;
|
|
||||||
import com.jero.common.exception.JeroBootException;
|
|
||||||
import com.jero.common.util.MessageUtils;
|
|
||||||
import com.jero.modules.laws.common.constant.FieldCommon;
|
|
||||||
import com.jero.modules.laws.enterprise.entity.EnterpriseStandardAuthDept;
|
|
||||||
import com.jero.modules.laws.enterprise.entity.EnterpriseStandardAuthUser;
|
|
||||||
import com.jero.modules.laws.enterprise.mapper.EnterpriseStandardAuthDeptMapper;
|
|
||||||
import com.jero.modules.laws.enterprise.mapper.EnterpriseStandardAuthUserMapper;
|
|
||||||
import com.jero.modules.laws.enterprise.service.EnterpriseStandardAuthDeptService;
|
|
||||||
import com.jero.modules.laws.enterprise.service.EnterpriseStandardAuthUserService;
|
|
||||||
import com.jero.modules.laws.standard.controller.TempAuthRecordQueryDto;
|
|
||||||
import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard;
|
|
||||||
import com.jero.modules.laws.standard.entity.LawsStandardTempPermission;
|
|
||||||
import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService;
|
|
||||||
import com.jero.modules.sys.entity.LawsEnterpriseStandardLevel;
|
|
||||||
import com.jero.modules.sys.entity.LawsGrade;
|
|
||||||
import com.jero.modules.sys.service.ILawsEnterpriseStandardLevelService;
|
|
||||||
import com.jero.modules.sys.service.ILawsGradeService;
|
|
||||||
import com.jero.modules.sys.utils.UserUtils;
|
|
||||||
import com.jero.modules.system.entity.SysUser;
|
|
||||||
import com.jero.modules.system.model.DepartIdModel;
|
|
||||||
import com.jero.modules.system.service.ISysDepartService;
|
|
||||||
import com.jero.modules.system.service.ISysUserDepartService;
|
|
||||||
import com.jero.modules.system.service.ISysUserService;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
|
||||||
import org.apache.commons.lang3.StringUtils;
|
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
|
||||||
import org.springframework.cache.annotation.Cacheable;
|
|
||||||
import org.springframework.stereotype.Service;
|
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
import java.text.SimpleDateFormat;
|
|
||||||
import java.util.*;
|
|
||||||
import java.util.stream.Collectors;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author ThinkBook
|
|
||||||
* @description 针对表【laws_enterprise_standard_temp_permission(企业标准)】的数据库操作Service实现
|
|
||||||
* <p>
|
|
||||||
* 权限这里分为三种权限
|
|
||||||
* 1. 企标的查看权限 (管理员、创建人、这条企标主起草部门的其他员工、临时授权、授权部门)
|
|
||||||
* 2. 企标的编辑权限 (管理员、创建人)
|
|
||||||
* 3. 企标的删除权限 (管理员可以删除所有试用期的企标、创建人只可以删除自己创建的试用期内的企标)
|
|
||||||
* @createDate 2023-09-07 11:20:30
|
|
||||||
*/
|
|
||||||
@Service
|
|
||||||
@Transactional(rollbackFor = JeroBootException.class)
|
|
||||||
@Slf4j
|
|
||||||
public class EnterpriseStandardAuthUserServiceImpl extends ServiceImpl<EnterpriseStandardAuthUserMapper, EnterpriseStandardAuthUser> implements EnterpriseStandardAuthUserService {
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
private EnterpriseStandardAuthDeptService authDeptService;
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
private ISysUserService sysUserService;
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
private ILawsEnterpriseStandardService enterpriseStandardService;
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
private ILawsEnterpriseStandardLevelService standardLevelService;
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
private ISysUserService sysUserRoleService;
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
private ISysUserDepartService sysUserDepartService;
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
private ILawsGradeService gradeService;
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
private EnterpriseStandardAuthUserMapper authUserMapper;
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
private EnterpriseStandardAuthDeptMapper authDeptMapper;
|
|
||||||
|
|
||||||
@Value("#{'${adminRoleCode}'.split(',')}")
|
|
||||||
private List<String> adminRoleCodeList;
|
|
||||||
|
|
||||||
@Value("#{'${enterpriseDetailRoleCode}'.split(',')}")
|
|
||||||
private List<String> enterpriseDetailRoleCodeList;
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
private ILawsEnterpriseStandardService esService;
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
private ISysDepartService departService;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void detailFlagSet(List<Map<String, Object>> records) {
|
|
||||||
if (true) {
|
|
||||||
records.forEach(kv -> kv.put(FieldCommon.DETAIL_FLAG, true));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
SysUser currentUser = sysUserService.getById(UserUtils.getUserId());
|
|
||||||
String userId = currentUser.getId();
|
|
||||||
String userName = currentUser.getUsername();
|
|
||||||
// 管理员有所有企标的权限
|
|
||||||
List<String> roleList = sysUserRoleService.getRole(currentUser.getUsername());
|
|
||||||
if (roleList != null && roleList.stream().anyMatch(adminRoleCodeList::contains)) {
|
|
||||||
records.forEach(kv -> kv.put(FieldCommon.DETAIL_FLAG, true));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 能够查看所有企标详情的权限
|
|
||||||
if (roleList != null && roleList.stream().anyMatch(enterpriseDetailRoleCodeList::contains)) {
|
|
||||||
records.forEach(kv -> kv.put(FieldCommon.DETAIL_FLAG, true));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
List<DepartIdModel> departIdModels = sysUserDepartService.queryDepartIdsOfUser(userId);
|
|
||||||
List<String> departIds = departIdModels.stream().map(DepartIdModel::getKey).collect(Collectors.toList());
|
|
||||||
List<String> departNames = departIdModels.stream().map(DepartIdModel::getTitle).collect(Collectors.toList());
|
|
||||||
List<String> standardIds = new ArrayList<>();
|
|
||||||
records.forEach(kv -> standardIds.add(String.valueOf(kv.get(FieldCommon.ID))));
|
|
||||||
List<LawsEnterpriseStandard> esList = enterpriseStandardService.list(new LambdaQueryWrapper<LawsEnterpriseStandard>()
|
|
||||||
.in(CollUtil.isNotEmpty(standardIds), LawsEnterpriseStandard::getId, standardIds)
|
|
||||||
.eq(LawsEnterpriseStandard::getDelFlag, YesOrNoEnum.NO.getValue()));
|
|
||||||
Map<String, LawsEnterpriseStandard> esMap = esList.stream().collect(Collectors.toMap(LawsEnterpriseStandard::getId, e -> e));
|
|
||||||
|
|
||||||
// 查询临时授权人员
|
|
||||||
Date date = new Date();
|
|
||||||
LambdaQueryWrapper<EnterpriseStandardAuthUser> authUserWrapper = new LambdaQueryWrapper<>();
|
|
||||||
authUserWrapper.in(CollUtil.isNotEmpty(standardIds), EnterpriseStandardAuthUser::getStandardId, standardIds);
|
|
||||||
authUserWrapper.eq(EnterpriseStandardAuthUser::getAuthUser, userId);
|
|
||||||
authUserWrapper.ge(EnterpriseStandardAuthUser::getAuthExpireDate, date);
|
|
||||||
List<EnterpriseStandardAuthUser> authUserList = list(authUserWrapper);
|
|
||||||
Set<String> tempAuthStandardIds = authUserList.stream().map(EnterpriseStandardAuthUser::getStandardId).collect(Collectors.toSet());
|
|
||||||
// 查询临时授权部门
|
|
||||||
LambdaQueryWrapper<EnterpriseStandardAuthDept> tempAuthDeptWrapper = new LambdaQueryWrapper<>();
|
|
||||||
tempAuthDeptWrapper.in(CollUtil.isNotEmpty(standardIds), EnterpriseStandardAuthDept::getStandardId, standardIds);
|
|
||||||
tempAuthDeptWrapper.in(CollUtil.isNotEmpty(departIds), EnterpriseStandardAuthDept::getAuthDept, departIds);
|
|
||||||
tempAuthDeptWrapper.isNotNull(EnterpriseStandardAuthDept::getAuthExpireDate);
|
|
||||||
tempAuthDeptWrapper.isNotNull(EnterpriseStandardAuthDept::getAuthDept);
|
|
||||||
List<EnterpriseStandardAuthDept> tempAuthDeptList = authDeptService.list(tempAuthDeptWrapper);
|
|
||||||
tempAuthDeptWrapper.ge(EnterpriseStandardAuthDept::getAuthExpireDate, date);
|
|
||||||
tempAuthDeptList.addAll(authDeptService.list(tempAuthDeptWrapper));
|
|
||||||
// 找出授权部门 和 临时授权部门
|
|
||||||
tempAuthStandardIds.addAll(tempAuthDeptList.stream().map(EnterpriseStandardAuthDept::getStandardId).collect(Collectors.toSet()));
|
|
||||||
|
|
||||||
// 查询授权部门
|
|
||||||
LambdaQueryWrapper<EnterpriseStandardAuthDept> authDeptWrapper = new LambdaQueryWrapper<>();
|
|
||||||
authDeptWrapper.in(CollUtil.isNotEmpty(standardIds), EnterpriseStandardAuthDept::getStandardId, standardIds);
|
|
||||||
authDeptWrapper.isNull(EnterpriseStandardAuthDept::getAuthExpireDate);
|
|
||||||
List<EnterpriseStandardAuthDept> authDeptList = authDeptService.list(authDeptWrapper);
|
|
||||||
authDeptList.addAll(authDeptService.list(authDeptWrapper));
|
|
||||||
|
|
||||||
// 企标级别授权的部门
|
|
||||||
List<LawsEnterpriseStandardLevel> standardLevelList = standardLevelService.list();
|
|
||||||
List<LawsGrade> gradeList = gradeService.list();
|
|
||||||
Map<Integer, LawsGrade> gradeMap = gradeList.stream().collect(Collectors.toMap(LawsGrade::getLevel, e -> e));
|
|
||||||
|
|
||||||
List<String> levelOneDeptIds = standardLevelList.stream().filter(l -> l.getGradeId().equals(gradeMap.get(1).getId()))
|
|
||||||
.map(LawsEnterpriseStandardLevel::getDeptId).collect(Collectors.toList());
|
|
||||||
List<String> levelTwoDeptIds = standardLevelList.stream().filter(l -> l.getGradeId().equals(gradeMap.get(2).getId()))
|
|
||||||
.map(LawsEnterpriseStandardLevel::getDeptId).collect(Collectors.toList());
|
|
||||||
|
|
||||||
for (Map<String, Object> map : records) {
|
|
||||||
String standardId = (String) map.get(FieldCommon.ID);
|
|
||||||
String creatUser = (String) map.get(FieldCommon.CREATE_BY);
|
|
||||||
LawsEnterpriseStandard es = esMap.get(standardId);
|
|
||||||
String mainDraftUnit = es.getMainDraftingUnit();
|
|
||||||
Set<EnterpriseStandardAuthDept> curAuthSet = authDeptList.stream()
|
|
||||||
.filter(e -> e.getAuthDept() != null)
|
|
||||||
.filter(e -> StrUtil.isNotEmpty(e.getAuthDept()))
|
|
||||||
.filter(e -> e.getStandardId().equals(standardId))
|
|
||||||
.filter(e -> !e.getAuthDept().equals(mainDraftUnit))
|
|
||||||
.collect(Collectors.toSet());
|
|
||||||
// 临时权限
|
|
||||||
if (tempAuthStandardIds.contains(standardId)) {
|
|
||||||
map.put(FieldCommon.DETAIL_FLAG, true);
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
// 创建人可以看
|
|
||||||
if (userName.equals(creatUser)) {
|
|
||||||
map.put(FieldCommon.DETAIL_FLAG, true);
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
map.put(FieldCommon.DETAIL_FLAG, false);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void editFlagSet(List<Map<String, Object>> records) {
|
|
||||||
if (true) {
|
|
||||||
records.forEach(kv -> kv.put(FieldCommon.EDIT_FLAG, true));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// 只有创建人和管理员才有维护的权限
|
|
||||||
String userId = UserUtils.getUserId();
|
|
||||||
SysUser currentUser = sysUserService.getById(userId);
|
|
||||||
String username = currentUser.getUsername();
|
|
||||||
// 获取当前用户的角色roleCode
|
|
||||||
List<String> roleList = sysUserRoleService.getRole(username);
|
|
||||||
if (roleList != null && roleList.stream().anyMatch(adminRoleCodeList::contains)) {
|
|
||||||
records.forEach(kv -> kv.put(FieldCommon.EDIT_FLAG, true));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
for (Map<String, Object> map : records) {
|
|
||||||
String createBy = (String) map.get(FieldCommon.CREATE_BY);
|
|
||||||
if (username.equals(createBy)) {
|
|
||||||
map.put(FieldCommon.EDIT_FLAG, true);
|
|
||||||
} else {
|
|
||||||
map.put(FieldCommon.EDIT_FLAG, false);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean hasEditAuth(String standardId, String userId) {
|
|
||||||
SysUser user = sysUserService.getById(userId);
|
|
||||||
String username = user.getUsername();
|
|
||||||
// 获取当前用户的角色roleCode
|
|
||||||
List<String> roleList = sysUserRoleService.getRole(username);
|
|
||||||
if (roleList != null && roleList.stream().anyMatch(adminRoleCodeList::contains)) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
LawsEnterpriseStandard es = esService.getById(standardId);
|
|
||||||
String createBy = es.getCreateBy();
|
|
||||||
return username.equals(createBy);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void isEditHorizontalOverstep(String standardId) {
|
|
||||||
if (hasEditAuth(standardId, UserUtils.getUserId())) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
throw new JeroBootException(MessageUtils.getMessage(ResultCommon.YOU_HAVE_NOT_DATA_AUTH, standardId));
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void delFlagSet(List<Map<String, Object>> records) {
|
|
||||||
if (true) {
|
|
||||||
records.forEach(kv -> kv.put(FieldCommon.DEL_FLAG, true));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
String userId = UserUtils.getUserId();
|
|
||||||
SysUser currentUser = sysUserService.getById(userId);
|
|
||||||
List<String> standardIds = new ArrayList<>();
|
|
||||||
String username = currentUser.getUsername();
|
|
||||||
records.forEach(kv -> standardIds.add(String.valueOf(kv.get(FieldCommon.ID))));
|
|
||||||
List<LawsEnterpriseStandard> esList = enterpriseStandardService.list(new LambdaQueryWrapper<LawsEnterpriseStandard>()
|
|
||||||
.in(CollUtil.isNotEmpty(standardIds), LawsEnterpriseStandard::getId, standardIds)
|
|
||||||
.eq(LawsEnterpriseStandard::getDelFlag, YesOrNoEnum.NO.getValue()));
|
|
||||||
Map<String, LawsEnterpriseStandard> esMap = esList.stream().collect(Collectors.toMap(LawsEnterpriseStandard::getId, e -> e));
|
|
||||||
|
|
||||||
// 设置是否适用
|
|
||||||
records.forEach(kv -> kv.put(FieldCommon.TRY_FLAG, esMap.get(kv.get(FieldCommon.ID)).getTryFlag() == null ? "0" : esMap.get(kv.get(FieldCommon.ID)).getTryFlag()));
|
|
||||||
records.forEach(kv -> kv.put(FieldCommon.TRY_FLAG, Objects.equals(esMap.get(kv.get(FieldCommon.ID)).getTryFlag(), "") ? "0" : esMap.get(kv.get(FieldCommon.ID)).getTryFlag()));
|
|
||||||
records.forEach(kv -> kv.put(FieldCommon.RELEASE_DATE, esMap.get(kv.get(FieldCommon.ID)).getReleaseDate()));
|
|
||||||
records.forEach(kv -> kv.put(FieldCommon.TRIAL_PERIOD, esMap.get(kv.get(FieldCommon.ID)).getTrialPeriod()));
|
|
||||||
// 只有试用期的企标才能删除
|
|
||||||
|
|
||||||
Date currentDate = new Date();
|
|
||||||
// 获取当前用户的角色roleCode
|
|
||||||
List<String> roleList = sysUserRoleService.getRole(currentUser.getUsername());
|
|
||||||
// 管理员能够删除所有试用期的企标
|
|
||||||
if (roleList != null && roleList.stream().anyMatch(adminRoleCodeList::contains)) {
|
|
||||||
for (Map<String, Object> map : records) {
|
|
||||||
String tryFlag = String.valueOf(map.get(FieldCommon.TRY_FLAG));
|
|
||||||
if (tryFlag.equals(YesOrNoEnum.NO.getValue())) {
|
|
||||||
map.put(FieldCommon.DEL_FLAG, false);
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
Date releaseDate = (Date) map.get(FieldCommon.RELEASE_DATE);
|
|
||||||
int trialPeriodMonths = Integer.parseInt(String.valueOf(map.get(FieldCommon.TRIAL_PERIOD))); // 将试用周期转换为天数
|
|
||||||
Calendar calendar = Calendar.getInstance();
|
|
||||||
calendar.setTime(releaseDate);
|
|
||||||
calendar.add(Calendar.MONTH, trialPeriodMonths); // 将试用周期加到发布日期上
|
|
||||||
Date trialEndDate = calendar.getTime(); // 获取试用期结束日期
|
|
||||||
|
|
||||||
// 在适用周期之内的可以删除
|
|
||||||
if (tryFlag.equals(YesOrNoEnum.YES.getValue()) && currentDate.compareTo(trialEndDate) <= 0) {
|
|
||||||
map.put(FieldCommon.DEL_FLAG, true);
|
|
||||||
} else {
|
|
||||||
map.put(FieldCommon.DEL_FLAG, false);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
|
|
||||||
|
|
||||||
records.forEach(kv -> {
|
|
||||||
Date releaseDate = esMap.get(kv.get(FieldCommon.ID)).getReleaseDate();
|
|
||||||
if (releaseDate != null) {
|
|
||||||
String formattedDate = dateFormat.format(releaseDate);
|
|
||||||
kv.put(FieldCommon.RELEASE_DATE, formattedDate);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 创建人只能删除自己的试用期的企标
|
|
||||||
for (Map<String, Object> map : records) {
|
|
||||||
String createBy = (String) map.get(FieldCommon.CREATE_BY);
|
|
||||||
String tryFlag = String.valueOf(map.get(FieldCommon.TRY_FLAG));
|
|
||||||
if (tryFlag.equals(YesOrNoEnum.NO.getValue())) {
|
|
||||||
map.put(FieldCommon.DEL_FLAG, false);
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
Date releaseDate = (Date) map.get(FieldCommon.RELEASE_DATE);
|
|
||||||
int trialPeriodMonths = Integer.parseInt(String.valueOf(map.get(FieldCommon.TRIAL_PERIOD))); // 将试用周期转换为天数
|
|
||||||
Calendar calendar = Calendar.getInstance();
|
|
||||||
calendar.setTime(releaseDate);
|
|
||||||
calendar.add(Calendar.MONTH, trialPeriodMonths); // 将试用周期加到发布日期上
|
|
||||||
Date trialEndDate = calendar.getTime(); // 获取试用期结束日期
|
|
||||||
if (username.equals(createBy) && tryFlag.equals(YesOrNoEnum.YES.getValue())
|
|
||||||
&& currentDate.compareTo(trialEndDate) <= 0) {
|
|
||||||
map.put(FieldCommon.DEL_FLAG, true);
|
|
||||||
} else {
|
|
||||||
map.put(FieldCommon.DEL_FLAG, false);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
|
|
||||||
|
|
||||||
records.forEach(kv -> {
|
|
||||||
Date releaseDate = esMap.get(kv.get(FieldCommon.ID)).getReleaseDate();
|
|
||||||
if (releaseDate != null) {
|
|
||||||
String formattedDate = dateFormat.format(releaseDate);
|
|
||||||
kv.put(FieldCommon.RELEASE_DATE, formattedDate);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean detailPermissionByUser(String standardId, String standardNumber, String userId) {
|
|
||||||
// 管理员有所有企标的权限
|
|
||||||
SysUser currentUser = sysUserService.getById(userId);
|
|
||||||
// 管理员有所有企标的权限
|
|
||||||
List<String> roleList = sysUserRoleService.getRole(currentUser.getUsername());
|
|
||||||
if (roleList != null && roleList.stream().anyMatch(adminRoleCodeList::contains)) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
// 能够查看所有企标详情的权限
|
|
||||||
if (roleList != null && roleList.stream().anyMatch(enterpriseDetailRoleCodeList::contains)) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
List<DepartIdModel> departIdModels = sysUserDepartService.queryDepartIdsOfUser(userId);
|
|
||||||
List<String> departIds = departIdModels.stream().map(DepartIdModel::getKey).collect(Collectors.toList());
|
|
||||||
List<String> departNames = departIdModels.stream().map(DepartIdModel::getTitle).collect(Collectors.toList());
|
|
||||||
|
|
||||||
if (StringUtils.isBlank(standardId) && StringUtils.isBlank(standardNumber)) {
|
|
||||||
throw new JeroBootException(ResultCommon.EMPTY_COMMON, "id和标准号不能同时为空");
|
|
||||||
}
|
|
||||||
if (StringUtils.isBlank(standardId)) {
|
|
||||||
LambdaQueryWrapper<LawsEnterpriseStandard> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
||||||
lambdaQueryWrapper.eq(LawsEnterpriseStandard::getStandardNumber, standardNumber);
|
|
||||||
LawsEnterpriseStandard es = enterpriseStandardService.getOne(lambdaQueryWrapper);
|
|
||||||
standardId = es.getId();
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@Cacheable(value = "tempAuthRecord", key = "{#tempAuthRecordQueryDto, #pageNo, #pageSize}")
|
|
||||||
public IPage<TempAuthRecordQueryDto> tempAuthRecord(TempAuthRecordQueryDto tempAuthRecordQueryDto, Integer pageNo, Integer pageSize) {
|
|
||||||
List<String> authDeptList = tempAuthRecordQueryDto.getAuthDeptList();
|
|
||||||
String authUser = tempAuthRecordQueryDto.getAuthUser();
|
|
||||||
int totalDeptAuths = 0;
|
|
||||||
int totalUserAuths = 0;
|
|
||||||
// 没有授权人员筛选的时候
|
|
||||||
if (StrUtil.isBlank(authUser)) {
|
|
||||||
totalDeptAuths = authDeptMapper.countDeptAuths(tempAuthRecordQueryDto);
|
|
||||||
}
|
|
||||||
// 授权部门和授权人员都没有查询条件的时候
|
|
||||||
if (authDeptList == null || authDeptList.isEmpty()) {
|
|
||||||
totalUserAuths = authUserMapper.countUserAuths(tempAuthRecordQueryDto);
|
|
||||||
}
|
|
||||||
int totalRecords = totalDeptAuths + totalUserAuths;
|
|
||||||
|
|
||||||
// 分页查询
|
|
||||||
List<TempAuthRecordQueryDto> results = new ArrayList<>();
|
|
||||||
if (totalRecords > 0) {
|
|
||||||
// 计算offset和实际pageSize
|
|
||||||
int offset = (pageNo - 1) * pageSize;
|
|
||||||
|
|
||||||
// 首先查询auth_dept数据
|
|
||||||
List<TempAuthRecordQueryDto> deptAuths = new ArrayList<>();
|
|
||||||
if (totalDeptAuths > 0) {
|
|
||||||
deptAuths = authDeptMapper.queryDeptAuths(tempAuthRecordQueryDto, pageSize, offset);
|
|
||||||
}
|
|
||||||
// 如果deptAuths的数量少于pageSize,则查询auth_user填充剩余空间
|
|
||||||
int remainingSize = pageSize - deptAuths.size();
|
|
||||||
List<TempAuthRecordQueryDto> userAuths = new ArrayList<>();
|
|
||||||
if (remainingSize > 0 && deptAuths.size() <= totalDeptAuths && totalUserAuths > 0) {
|
|
||||||
// 计算auth_user的offset
|
|
||||||
int userOffset = Math.max(0, offset - totalDeptAuths);
|
|
||||||
userAuths = authUserMapper.queryUserAuths(tempAuthRecordQueryDto, remainingSize, userOffset);
|
|
||||||
}
|
|
||||||
|
|
||||||
results.addAll(deptAuths);
|
|
||||||
results.addAll(userAuths);
|
|
||||||
}
|
|
||||||
|
|
||||||
// 手动翻译标准编号
|
|
||||||
if (!results.isEmpty()) {
|
|
||||||
Set<String> standardIdSet = results.stream().map(TempAuthRecordQueryDto::getStandardId).collect(Collectors.toSet());
|
|
||||||
LambdaQueryWrapper<LawsEnterpriseStandard> esWrapper = new LambdaQueryWrapper<>();
|
|
||||||
esWrapper.in(LawsEnterpriseStandard::getId, standardIdSet);
|
|
||||||
List<LawsEnterpriseStandard> esList = esService.list(esWrapper);
|
|
||||||
Map<String, String> esStandardMap = esList.stream().collect(
|
|
||||||
Collectors.toMap(LawsEnterpriseStandard::getId, LawsEnterpriseStandard::getStandardNumber));
|
|
||||||
results.forEach(r -> {
|
|
||||||
r.setStandardNumber(esStandardMap.get(r.getStandardId()));
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// 构建分页结果
|
|
||||||
Page<TempAuthRecordQueryDto> page = new Page<>();
|
|
||||||
page.setRecords(results);
|
|
||||||
page.setCurrent(pageNo);
|
|
||||||
page.setSize(pageSize);
|
|
||||||
page.setTotal(totalRecords);
|
|
||||||
|
|
||||||
return page;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void revokeAuth(String authId) {
|
|
||||||
EnterpriseStandardAuthDept authDept = authDeptService.getById(authId);
|
|
||||||
EnterpriseStandardAuthUser authUser = this.getById(authId);
|
|
||||||
// 判断哪个不为null
|
|
||||||
if (authDept != null) {
|
|
||||||
authDeptService.removeById(authId);
|
|
||||||
}
|
|
||||||
if (authUser != null) {
|
|
||||||
this.removeById(authId);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-57
@@ -12,13 +12,10 @@ import com.jero.modules.compare.service.ISarFileCompareInfoService;
|
|||||||
import com.jero.modules.laws.common.constant.FieldCommon;
|
import com.jero.modules.laws.common.constant.FieldCommon;
|
||||||
import com.jero.modules.laws.common.service.ILawsCommonService;
|
import com.jero.modules.laws.common.service.ILawsCommonService;
|
||||||
import com.jero.modules.laws.enterprise.entity.EnterpriseStandardRmrEvaluateDetail;
|
import com.jero.modules.laws.enterprise.entity.EnterpriseStandardRmrEvaluateDetail;
|
||||||
import com.jero.modules.laws.enterprise.service.EnterpriseStandardAuthDeptService;
|
|
||||||
import com.jero.modules.laws.enterprise.service.EnterpriseStandardAuthUserService;
|
|
||||||
import com.jero.modules.laws.enterprise.service.EnterpriseStandardReviewMeetingRecordService;
|
import com.jero.modules.laws.enterprise.service.EnterpriseStandardReviewMeetingRecordService;
|
||||||
import com.jero.modules.laws.standard.service.ILawsNodeRelationService;
|
import com.jero.modules.laws.standard.service.ILawsNodeRelationService;
|
||||||
import com.jero.modules.personal.service.ILawsStandardCollectionService;
|
import com.jero.modules.personal.service.ILawsStandardCollectionService;
|
||||||
import com.jero.modules.split.service.ISarFileSplitInfoService;
|
import com.jero.modules.split.service.ISarFileSplitInfoService;
|
||||||
import com.jero.modules.sys.utils.UserUtils;
|
|
||||||
import com.jero.modules.tag.entity.LawsTag;
|
import com.jero.modules.tag.entity.LawsTag;
|
||||||
import com.jero.modules.tag.enums.TableNameEnum;
|
import com.jero.modules.tag.enums.TableNameEnum;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
@@ -26,7 +23,6 @@ import io.swagger.annotations.ApiOperation;
|
|||||||
import io.swagger.annotations.ApiParam;
|
import io.swagger.annotations.ApiParam;
|
||||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.cache.annotation.CacheEvict;
|
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
@@ -52,11 +48,6 @@ public class LawsEnterpriseController {
|
|||||||
private ILawsNodeRelationService lawsNodeRelationService;
|
private ILawsNodeRelationService lawsNodeRelationService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private ILawsStandardCollectionService lawsStandardCollectionService;
|
private ILawsStandardCollectionService lawsStandardCollectionService;
|
||||||
@Resource
|
|
||||||
private EnterpriseStandardAuthUserService esAuthUserService;
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
private EnterpriseStandardAuthDeptService esAuthDeptService;
|
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private EnterpriseStandardReviewMeetingRecordService esReviewMeetingService;
|
private EnterpriseStandardReviewMeetingRecordService esReviewMeetingService;
|
||||||
@@ -114,8 +105,6 @@ public class LawsEnterpriseController {
|
|||||||
@ApiOperationSupport(order = 4)
|
@ApiOperationSupport(order = 4)
|
||||||
@RequiresPermissions("enterpriseStandard:edit")
|
@RequiresPermissions("enterpriseStandard:edit")
|
||||||
public Result<String> commonEdit(@RequestBody @ApiParam("标签管理") Map<String,Object> parameterMap) {
|
public Result<String> commonEdit(@RequestBody @ApiParam("标签管理") Map<String,Object> parameterMap) {
|
||||||
// 水平越权校验
|
|
||||||
esAuthUserService.isEditHorizontalOverstep((String) parameterMap.get("id"));
|
|
||||||
parameterMap.put(FieldCommon.MODULE, MODULE_VALUE);
|
parameterMap.put(FieldCommon.MODULE, MODULE_VALUE);
|
||||||
return Result.OK(lawsCommonService.commonEdit(parameterMap));
|
return Result.OK(lawsCommonService.commonEdit(parameterMap));
|
||||||
}
|
}
|
||||||
@@ -284,50 +273,4 @@ public class LawsEnterpriseController {
|
|||||||
Map<String, List<EnterpriseStandardRmrEvaluateDetail>> resultMap = esReviewMeetingService.evaluateDetailForESInfo(standardId);
|
Map<String, List<EnterpriseStandardRmrEvaluateDetail>> resultMap = esReviewMeetingService.evaluateDetailForESInfo(standardId);
|
||||||
return Result.OK(resultMap);
|
return Result.OK(resultMap);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 企标详情-获取是否有查看详情权限
|
|
||||||
*
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
@AutoLog(value = "企业法规标准-获取是否有查看详情权限")
|
|
||||||
@ApiOperation(value = "企业法规标准-获取是否有查看详情权限", notes = "企业法规标准-获取是否有查看详情权限")
|
|
||||||
@GetMapping(value = "/detailPermission")
|
|
||||||
@ApiOperationSupport(order = 20)
|
|
||||||
public Result<?> detailPermission(@RequestParam(name="id", required = false) @ApiParam("标准Id") String id,
|
|
||||||
@RequestParam(name="standardNumber", required = false) @ApiParam("标准编号") String standardNumber) {
|
|
||||||
return Result.OK(esAuthUserService.detailPermissionByUser(id, standardNumber, UserUtils.getUserId()));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 企业法规标准-临时授权记录
|
|
||||||
*
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
@AutoLog(value = "企业法规标准-临时授权记录")
|
|
||||||
@ApiOperation(value = "企业法规标准-临时授权记录", notes = "企业法规标准-临时授权记录")
|
|
||||||
@GetMapping(value = "/tempAuthRecord")
|
|
||||||
@ApiOperationSupport(order = 21)
|
|
||||||
@RequiresPermissions("enterpriseStandard:temporaryPermissRecord")
|
|
||||||
public Result<?> tempAuthRecord(TempAuthRecordQueryDto tempAuthRecordQueryDto,
|
|
||||||
@RequestParam(name="pageNo", defaultValue="1") @ApiParam("页码") Integer pageNo,
|
|
||||||
@RequestParam(name="pageSize", defaultValue="10") @ApiParam("页面显示数量") Integer pageSize) {
|
|
||||||
return Result.OK(esAuthUserService.tempAuthRecord(tempAuthRecordQueryDto, pageNo, pageSize));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 企业法规标准-解除授权
|
|
||||||
*
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
@AutoLog(value = "企业法规标准-解除授权")
|
|
||||||
@ApiOperation(value = "企业法规标准-解除授权", notes = "企业法规标准-解除授权")
|
|
||||||
@GetMapping(value = "/revokeAuth")
|
|
||||||
@ApiOperationSupport(order = 22)
|
|
||||||
@RequiresPermissions("enterpriseStandard:temporaryPermissRecord")
|
|
||||||
@CacheEvict(value = "tempAuthRecord", allEntries = true)
|
|
||||||
public Result<?> revokeAuth(@RequestParam(name="id", required = false) @ApiParam("Id") String authId) {
|
|
||||||
esAuthUserService.revokeAuth(authId);
|
|
||||||
return Result.OK();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
-2
@@ -1944,8 +1944,6 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
|
|||||||
@Override
|
@Override
|
||||||
public Result<?> importSplitResult(String splitFileId, String cut, SarFileSplitInfoEO sarFileSplitInfoEO) throws IOException {
|
public Result<?> importSplitResult(String splitFileId, String cut, SarFileSplitInfoEO sarFileSplitInfoEO) throws IOException {
|
||||||
sarFileSplitInfoEO.setSerialNumber(sarFileSplitInfoEO.getSerialNumber().split("\\|")[0]);
|
sarFileSplitInfoEO.setSerialNumber(sarFileSplitInfoEO.getSerialNumber().split("\\|")[0]);
|
||||||
// 企标权限校验
|
|
||||||
documentSplitService.enterpriseCheck(sarFileSplitInfoEO);
|
|
||||||
// 唯一校验
|
// 唯一校验
|
||||||
documentSplitService.uniqueCheck(sarFileSplitInfoEO);
|
documentSplitService.uniqueCheck(sarFileSplitInfoEO);
|
||||||
|
|
||||||
|
|||||||
@@ -7,8 +7,6 @@ import com.jero.common.exception.JeroBootException;
|
|||||||
import com.jero.common.util.IntekeyUtils;
|
import com.jero.common.util.IntekeyUtils;
|
||||||
import com.jero.common.util.MinioUtil;
|
import com.jero.common.util.MinioUtil;
|
||||||
import com.jero.common.util.obs.ObsBootUtil;
|
import com.jero.common.util.obs.ObsBootUtil;
|
||||||
import com.jero.modules.laws.enterprise.service.EnterpriseStandardAuthUserService;
|
|
||||||
import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService;
|
|
||||||
import com.jero.modules.oss.entity.OSSFile;
|
import com.jero.modules.oss.entity.OSSFile;
|
||||||
import com.jero.modules.oss.service.IOSSFileService;
|
import com.jero.modules.oss.service.IOSSFileService;
|
||||||
import com.jero.modules.system.util.SysWaterMarkUtil;
|
import com.jero.modules.system.util.SysWaterMarkUtil;
|
||||||
@@ -45,12 +43,6 @@ public class SysCommonController {
|
|||||||
@Resource
|
@Resource
|
||||||
private IOSSFileService ossFileService;
|
private IOSSFileService ossFileService;
|
||||||
|
|
||||||
@Resource
|
|
||||||
private ILawsEnterpriseStandardService esService;
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
private EnterpriseStandardAuthUserService authUserService;
|
|
||||||
|
|
||||||
@Value(value = "${jero.uploadType}")
|
@Value(value = "${jero.uploadType}")
|
||||||
private String uploadType;
|
private String uploadType;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user