fix: 移除直接select sys_role sql

refs: #
This commit is contained in:
YiLiLin 2023-09-08 14:57:00 +08:00
parent fb173a6b7d
commit 42f600eb7e
2 changed files with 27 additions and 9 deletions

View File

@ -1,5 +1,6 @@
package com.foreverwin.iep.qms.service.impl;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.extra.spring.SpringUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@ -16,7 +17,9 @@ import com.foreverwin.iep.qms.mapper.QmsQcPlanMapper;
import com.foreverwin.iep.qms.service.*;
import com.foreverwin.iep.sys.entity.SystemTransactionLog;
import com.foreverwin.iep.sys.feign.RemoteSystemTransactionLogService;
import com.foreverwin.mom.admin.api.entity.SysRole;
import com.foreverwin.mom.admin.api.feign.RemoteParamService;
import com.foreverwin.mom.admin.api.feign.RemoteRoleService;
import com.foreverwin.mom.common.core.constant.SecurityConstants;
import com.foreverwin.mom.common.core.exception.BusinessException;
import com.foreverwin.mom.common.core.util.I18nUtil;
@ -29,6 +32,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
/**
* 检验计划
@ -46,6 +50,7 @@ public class QmsQcPlanServiceImpl extends ServiceImpl<QmsQcPlanMapper, QmsQcPlan
private QmsQcItemService qmsQcItemService;
private final RemoteParamService remoteParamService;
private final RemoteSystemTransactionLogService remoteSystemTransactionLogService;
private final RemoteRoleService remoteRoleService;
private QmsInspecJobService getQmsInspecJobService() {
return SpringUtil.getBean(QmsInspecJobService.class);
@ -166,7 +171,21 @@ public class QmsQcPlanServiceImpl extends ServiceImpl<QmsQcPlanMapper, QmsQcPlan
@Override
public List<UserGroup> getUserGroup() {
return super.baseMapper.getUserGroup(TenantContextHolder.getTenantId());
List<SysRole> roles = remoteRoleService.listRoles(SecurityConstants.FROM_IN).getData();
return super.baseMapper.getUserGroup(TenantContextHolder.getTenantId())
.stream()
.peek(userGroup -> {
SysRole sysRole = roles.stream()
.filter(filters -> filters.getRoleCode()
.equals(userGroup.getUserGroup()))
.findFirst()
.orElse(null);
if (ObjectUtil.isNotNull(sysRole)) {
userGroup.setRoleName(sysRole.getRoleName());
userGroup.setRoleDesc(sysRole.getRoleDesc());
}
})
.collect(Collectors.toList());
}
@Override
@ -175,10 +194,10 @@ public class QmsQcPlanServiceImpl extends ServiceImpl<QmsQcPlanMapper, QmsQcPlan
}
//type : 1:save, 2:update , 3:delete
private void syncSpc(QmsQcPlan qcPlan, int type){
private void syncSpc(QmsQcPlan qcPlan, int type) {
String site = TenantContextHolder.getTenantId();
String url = remoteParamService.getByKey("SPC_RESTFUL_URL", SecurityConstants.FROM_IN).getData();
if(StrUtil.isNotBlank(url) && "1".equals(qcPlan.getToSpc())){
if (StrUtil.isNotBlank(url) && "1".equals(qcPlan.getToSpc())) {
SystemTransactionLog log = new SystemTransactionLog();
log.setSid(SidUtils.genSid());
log.setFromSystem("IEP");
@ -186,10 +205,10 @@ public class QmsQcPlanServiceImpl extends ServiceImpl<QmsQcPlanMapper, QmsQcPlan
log.setKeyValue(qcPlan.getQcPlan() + "," + qcPlan.getRevision());
log.setDateCreate(LocalDateTime.now());
log.setCreator(SecurityUtils.getUserName());
if(type == 1){
if (type == 1) {
log.setFunctionName("/dc/planData/_sync");
log.setMethodName("QmsQcPlanService.validateAndSave");
} else if(type == 2){
} else if (type == 2) {
log.setFunctionName("/dc/planData/_sync");
log.setMethodName("QmsQcPlanService.validateAndUpdate");
} else {
@ -243,13 +262,13 @@ public class QmsQcPlanServiceImpl extends ServiceImpl<QmsQcPlanMapper, QmsQcPlan
if (response.getStatusCode() == 200) {
log.setResult("Success");
log.setMessage("作业成功");
}else {
} else {
log.setResult("Fail");
log.setMessage(response.getResponse());
}
remoteSystemTransactionLogService.save(log);
if("Fail".equals(log.getResult())){
if ("Fail".equals(log.getResult())) {
throw BusinessException.build(I18nUtil.getI18nText("qms.spc.sync.msg", response.getResponse()));
}
}

View File

@ -28,9 +28,8 @@
</resultMap>
<select id="getUserGroup" resultMap="userGroupMap">
select distinct a.user_group, B.ROLE_NAME, B.ROLE_DESC
select distinct a.user_group
from QMS_QC_PLAN a
join momx.sys_role b on a.user_group = b.role_code and a.site = tenant_id
where a.site = #{site}
</select>