package com.qianwen.smartman.modules.system.service.impl;
|
|
import java.util.ArrayList;
|
import java.util.Arrays;
|
import java.util.List;
|
import java.util.stream.Collectors;
|
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.qianwen.core.mp.base.BaseServiceImpl;
|
import com.qianwen.core.secure.utils.AuthUtil;
|
import com.qianwen.core.tool.utils.CollectionUtil;
|
import com.qianwen.core.tool.utils.Func;
|
import com.qianwen.smartman.common.enums.MenuCategoryEnum;
|
import com.qianwen.smartman.modules.system.convert.WorkbenchCardConvert;
|
import com.qianwen.smartman.modules.system.entity.WorkbenchCard;
|
import com.qianwen.smartman.modules.system.mapper.MenuMapper;
|
import com.qianwen.smartman.modules.system.mapper.WorkbenchCardMapper;
|
import com.qianwen.smartman.modules.system.service.IWorkbenchCardService;
|
import com.qianwen.smartman.modules.system.service.IWorkbenchService;
|
import com.qianwen.smartman.modules.system.vo.MenuVO;
|
import com.qianwen.smartman.modules.system.vo.WorkbenchCardListAddVO;
|
import com.qianwen.smartman.modules.system.vo.WorkbenchCardVO;
|
|
@Service
|
/* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/system/service/impl/WorkbenchCardServiceImpl.class */
|
public class WorkbenchCardServiceImpl extends BaseServiceImpl<WorkbenchCardMapper, WorkbenchCard> implements IWorkbenchCardService {
|
private final IWorkbenchService workbenchService;
|
private final MenuMapper menuMapper;
|
|
|
public WorkbenchCardServiceImpl(final IWorkbenchService workbenchService, final MenuMapper menuMapper) {
|
this.workbenchService = workbenchService;
|
this.menuMapper = menuMapper;
|
}
|
|
@Override // org.springblade.modules.system.service.IWorkbenchCardService
|
@Transactional(rollbackFor = {Exception.class})
|
public Boolean createWorkbenchCard(WorkbenchCardListAddVO workbenchCardListAddVO) {
|
remove(new QueryWrapper<WorkbenchCard>().lambda().eq(WorkbenchCard::getWorkbenchId, workbenchCardListAddVO.getWorkbenchId()));
|
|
/*
|
remove((Wrapper) new QueryWrapper().lambda().eq((v0) -> {
|
return v0.getWorkbenchId();
|
}, workbenchCardListAddVO.getWorkbenchId()));*/
|
List<WorkbenchCard> list = WorkbenchCardConvert.INSTANCE.convert1(workbenchCardListAddVO.getWorkbenchCardAddVOList());
|
if (CollectionUtil.isNotEmpty(list)) {
|
saveBatch(list);
|
}
|
return true;
|
}
|
|
@Override // org.springblade.modules.system.service.IWorkbenchCardService
|
public WorkbenchCardVO detail(String id) {
|
return WorkbenchCardConvert.INSTANCE.convert((WorkbenchCard) getById(id));
|
}
|
|
@Override // org.springblade.modules.system.service.IWorkbenchCardService
|
public List<WorkbenchCardVO> getWorkbenchCardList(String workbenchId) {
|
List<MenuVO> menuVOList = new ArrayList<>();
|
if (AuthUtil.isAdministrator()) {
|
menuVOList = this.menuMapper.grantTreeByCategoryForWorkBench(Arrays.asList(Integer.valueOf(MenuCategoryEnum.CARD.getStatus())));
|
} else {
|
menuVOList = this.menuMapper.getRoleMenuCardByConditionForWorkBench(Func.toStrList(AuthUtil.getUser().getRoleId()), Arrays.asList(Integer.valueOf(MenuCategoryEnum.CARD.getStatus())));
|
}
|
List<String> cardKeyList = menuVOList.stream().map((v0) -> {
|
return v0.getCode();
|
}).distinct().collect(Collectors.toList());
|
if (CollectionUtil.isEmpty(cardKeyList)) {
|
return new ArrayList<>();
|
}
|
List<WorkbenchCard> list = list(Wrappers.<WorkbenchCard>query().lambda().eq(WorkbenchCard::getWorkbenchId, workbenchId).in(WorkbenchCard::getCardKey, cardKeyList));
|
/*
|
List<WorkbenchCard> list = list((Wrapper) ((LambdaQueryWrapper) Wrappers.query().lambda().eq((v0) -> {
|
return v0.getWorkbenchId();
|
}, workbenchId)).in((v0) -> {
|
return v0.getCardKey();
|
}, cardKeyList));*/
|
return WorkbenchCardConvert.INSTANCE.convert(list);
|
}
|
}
|