use of vip.mate.system.entity.SysApi in project matecloud by matevip.
the class SysApiController method sync.
/**
* 从redis同步api至数据库
*
* @return Boolean
*/
@PreAuth
@PostMapping("/sync")
@ApiOperation(value = "API同步")
@Log(value = "API同步")
public Result<?> sync() {
Set<Object> serviceIds = redisService.sGet(MateConstant.MATE_SERVICE_RESOURCE);
for (Object service : serviceIds) {
if (redisService.hHasKey(MateConstant.MATE_API_RESOURCE, service.toString())) {
Map<String, Object> apiMap = (Map<String, Object>) redisService.hget(MateConstant.MATE_API_RESOURCE, service.toString());
List<Map<String, String>> list = (List<Map<String, String>>) apiMap.get("list");
list.forEach(item -> {
SysApi sysApi = new SysApi();
sysApi.setAuth(item.get("auth"));
sysApi.setClassName(item.get("className"));
sysApi.setCode(item.get("code"));
sysApi.setContentType(item.get("contentType"));
sysApi.setMethod(item.get("method"));
sysApi.setMethodName(item.get("methodName"));
sysApi.setName(item.get("name"));
sysApi.setNotes(item.get("notes"));
sysApi.setPath(item.get("path"));
sysApi.setServiceId(item.get("serviceId"));
SysApi exist = sysApiService.getByCode(sysApi.getCode());
if (ObjectUtils.isEmpty(exist)) {
sysApiService.save(sysApi);
} else {
LambdaQueryWrapper<SysApi> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(SysApi::getCode, sysApi.getCode());
sysApiService.update(sysApi, queryWrapper);
}
});
}
redisService.hdel(MateConstant.MATE_API_RESOURCE, service.toString());
}
redisService.del(MateConstant.MATE_SERVICE_RESOURCE);
return Result.condition(true);
}
use of vip.mate.system.entity.SysApi in project matecloud by matevip.
the class SysApiServiceImpl method status.
@Override
public boolean status(String ids, String status) {
Collection<? extends Serializable> collection = CollectionUtil.stringToCollection(ids);
for (Object id : collection) {
SysApi sysApi = this.baseMapper.selectById(CollectionUtil.objectToLong(id, 0L));
sysApi.setStatus(status);
this.baseMapper.updateById(sysApi);
}
return true;
}
Aggregations