fix 80384 未符合项-没有做数据权限

This commit is contained in:
lijiarao
2024-01-12 10:38:15 +08:00
parent 5378142f8d
commit 76d2815f0e
2 changed files with 25 additions and 1 deletions
@@ -3,8 +3,12 @@ package com.jero.modules.projectLibrary.controller;
import javax.servlet.http.HttpServletRequest;
import com.jero.common.api.vo.Result;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.vo.LoginUser;
import com.jero.common.util.MessageUtils;
import com.jero.common.api.vo.ResultCommon;
import com.jero.modules.laws.common.constant.FieldCommon;
import com.jero.modules.laws.common.util.CurrentUserUtil;
import com.jero.modules.projectLibrary.common.AssessCommon;
import com.jero.modules.projectLibrary.entity.LawsEvaluationNotMet;
import com.jero.modules.projectLibrary.service.ILawsEvaluationNotMetService;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -116,13 +120,20 @@ public class LawsEvaluationNotMetController extends JeroController<LawsEvaluatio
private boolean check(List<String> ids) {
Date date = new Date();
LoginUser loginUser = CurrentUserUtil.getLoginUser();
String roleIds = loginUser.getRoleIds();
String userId = loginUser.getId();
List<LawsEvaluationNotMet> notMets = lawsEvaluationNotMetService.listByIds(ids);
for (LawsEvaluationNotMet notMet : notMets) {
//管理员和设计工程师可以操作未符合项
if (!roleIds.contains(FieldCommon.ROLE_ADMIN) || !userId.equals(notMet.getEngineerId())){
throw new JeroBootException(ResultCommon.HORIZONTAL_TRANSGRESSION);
}
String state = notMet.getState();
Date expectedTime = notMet.getExpectedTime();
// 判断expectedTime是否小于今日
boolean isLessThanToday = expectedTime.before(date);
if (!state.equals("1") || !isLessThanToday){
if (!state.equals(AssessCommon.TO_BE_RECTIFIED) || !isLessThanToday){
return false;
}
}
@@ -5,7 +5,11 @@ import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.jero.common.api.vo.ResultCommon;
import com.jero.common.constant.CommonConstant;
import com.jero.common.system.vo.LoginUser;
import com.jero.modules.laws.common.constant.FieldCommon;
import com.jero.modules.laws.common.util.CurrentUserUtil;
import com.jero.modules.laws.standard.entity.LawsDomesticStandard;
import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard;
import com.jero.modules.laws.standard.entity.LawsOverseasStandard;
@@ -164,6 +168,15 @@ public class LawsEvaluationNotMetServiceImpl extends ServiceImpl<LawsEvaluationN
*/
@Override
public void editById(LawsEvaluationNotMet lawsEvaluationNotMet) {
String id = lawsEvaluationNotMet.getId();
LawsEvaluationNotMet notMet = this.getById(id);
LoginUser loginUser = CurrentUserUtil.getLoginUser();
String roleIds = loginUser.getRoleIds();
String userId = loginUser.getId();
//管理员和设计工程师可以操作未符合项
if (!roleIds.contains(FieldCommon.ROLE_ADMIN) || !userId.equals(notMet.getEngineerId())){
throw new JeroBootException(ResultCommon.HORIZONTAL_TRANSGRESSION);
}
//保存标准id和来源到未符合项
setStandardIdAndSource(lawsEvaluationNotMet);
saveOrUpdate(lawsEvaluationNotMet);