package com.qianwen.smartman.modules.system.service.impl;
|
|
import java.util.Collection;
|
import java.util.List;
|
import java.util.Map;
|
|
import org.slf4j.Logger;
|
import org.slf4j.LoggerFactory;
|
import org.springframework.scheduling.annotation.Async;
|
import org.springframework.stereotype.Service;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.qianwen.core.scanner.config.properties.ScannerProperties;
|
import com.qianwen.core.scanner.modular.model.ResourceDefinition;
|
import com.qianwen.core.scanner.modular.service.IApiResourceService;
|
import com.qianwen.smartman.modules.system.mapper.ResourceDefinitionMapper;
|
|
import cn.hutool.core.map.MapUtil;
|
|
@Service
|
|
public class ApiResourceServiceImpl extends ServiceImpl<ResourceDefinitionMapper, ResourceDefinition> implements IApiResourceService {
|
private static final Logger log = LoggerFactory.getLogger(ApiResourceServiceImpl.class);
|
private ScannerProperties scannerProperties;
|
|
public ApiResourceServiceImpl(final ScannerProperties scannerProperties) {
|
this.scannerProperties = scannerProperties;
|
}
|
|
@Async
|
public Boolean reportResources(Map<String, Map<String, ResourceDefinition>> resourceDefinitions) {
|
List<String> updateModules = this.scannerProperties.getUpdateModules();
|
if (MapUtil.isEmpty(resourceDefinitions)) {
|
//FIZMW 都删了??
|
return Boolean.valueOf(remove(Wrappers.<ResourceDefinition>query().lambda()));
|
//return Boolean.valueOf(remove(Wrappers.query().lambda()));
|
}
|
resourceDefinitions.forEach((key, value) -> {
|
|
if (updateModules.contains(key)) {
|
remove(Wrappers.<ResourceDefinition>query().lambda().eq(ResourceDefinition::getModuleCode, key));
|
/*
|
remove(Wrappers.query().lambda().eq((v0) -> {
|
return v0.getModuleCode();
|
}, key));*/
|
}
|
Collection<ResourceDefinition> reportApiResources = value.values();
|
saveOrUpdateBatch(reportApiResources);
|
});
|
return true;
|
}
|
}
|