Commit 8e663c26 authored by yutao's avatar yutao

init

parent 712271ea
package com.ediagnosis.cdr.dashBoard;
package com.ediagnosis.cdr.dashBoard.hostMonitor;
import com.ediagnosis.cdr.context.value.Response;
import org.springframework.web.bind.annotation.GetMapping;
......
package com.ediagnosis.cdr.dashBoard;
package com.ediagnosis.cdr.dashBoard.hostMonitor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
......
package com.ediagnosis.cdr.dashBoard;
package com.ediagnosis.cdr.dashBoard.hostMonitor;
public record HostMonitorValue(
HostValue host,
......
package com.ediagnosis.cdr.dashBoard;
package com.ediagnosis.cdr.dashBoard.hostMonitor;
import org.springframework.stereotype.Component;
......@@ -80,7 +80,7 @@ public class HostMonitorValueRepository {
diskValue = new HostMonitorValue.DiskValue("", "", "", "");
}
HostMonitorValue hostMonitorValue = new HostMonitorValue(hostValue, cpuValue, memoryValue, diskValue);
return hostMonitorValue;
return new HostMonitorValue(hostValue, cpuValue, memoryValue, diskValue);
}
}
package com.ediagnosis.cdr.dashBoard.statistics;
public interface StatisticsService {
long getRowCount();
int getDataSourceCount();
int getSourceBizTableCount();
}
package com.ediagnosis.cdr.dashBoard.statistics.impl;
import com.ediagnosis.cdr.dashBoard.statistics.StatisticsService;
public abstract class AbstractDataSourceCountService implements StatisticsService {
@Override
public int getDataSourceCount() {
return 0;
}
}
package com.ediagnosis.cdr.dashBoard.statistics.impl;
import com.ediagnosis.cdr.dashBoard.statistics.StatisticsService;
public abstract class AbstractRowCountService implements StatisticsService {
@Override
public long getRowCount() {
return 0;
}
}
package com.ediagnosis.cdr.dashBoard.statistics.impl;
import com.ediagnosis.cdr.dashBoard.statistics.StatisticsService;
public abstract class AbstractSourceBizTableCountService implements StatisticsService {
public int getSourceBizTableCount(){
return 0;
}
}
package com.ediagnosis.cdr.dashBoard.statistics.impl;
import com.ediagnosis.cdr.dashBoard.statistics.StatisticsService;
import org.springframework.stereotype.Service;
@Service
public class CacheableStatisticsService implements StatisticsService {
private final AbstractRowCountService rowCountService;
private final AbstractDataSourceCountService dataSourceCountService;
private final AbstractSourceBizTableCountService sourceBizTableCountService;
public CacheableStatisticsService() {
this.rowCountService = new AbstractRowCountService(){
@Override
public int getDataSourceCount() {
return 0;
}
@Override
public int getSourceBizTableCount() {
return 0;
}
};
this.dataSourceCountService =new AbstractDataSourceCountService(){
@Override
public long getRowCount() {
return 0;
}
@Override
public int getSourceBizTableCount() {
return 0;
}
} ;
this.sourceBizTableCountService = new AbstractSourceBizTableCountService() {
@Override
public long getRowCount() {
return 0;
}
@Override
public int getDataSourceCount() {
return 0;
}
};
}
@Override
public long getRowCount() {
return rowCountService.getRowCount();
}
@Override
public int getDataSourceCount() {
return dataSourceCountService.getDataSourceCount();
}
@Override
public int getSourceBizTableCount() {
return sourceBizTableCountService.getSourceBizTableCount();
}
}
package com.ediagnosis.cdr.dao;
package com.ediagnosis.cdr.dataGovernance.indicator;
import com.ediagnosis.cdr.dao.entity.IndicatorEntity;
import com.ediagnosis.cdr.dao.mapper.IndicatorMapper;
import com.ediagnosis.cdr.dataGovernance.indicator.dao.entity.IndicatorEntity;
import com.ediagnosis.cdr.dataGovernance.indicator.dao.mapper.IndicatorMapper;
import com.ediagnosis.cdr.context.TimeUtil;
import com.ediagnosis.cdr.dataGovernance.value.Indicator;
import com.ediagnosis.cdr.dataGovernance.indicator.value.Indicator;
import org.springframework.stereotype.Repository;
import java.time.LocalDateTime;
......
package com.ediagnosis.cdr.dataGovernance.indicator.dao;
import com.ediagnosis.cdr.context.TimeUtil;
import com.ediagnosis.cdr.dataGovernance.indicator.dao.entity.IndicatorEntity;
import com.ediagnosis.cdr.dataGovernance.indicator.dao.mapper.IndicatorMapper;
import com.ediagnosis.cdr.dataGovernance.indicator.value.Indicator;
import com.mybatisflex.core.query.QueryChain;
import com.mybatisflex.core.query.QueryWrapper;
import com.mybatisflex.core.update.UpdateChain;
import org.springframework.stereotype.Component;
import java.time.LocalDateTime;
import java.util.Optional;
@Component
public class IndicatorDao {
private final IndicatorMapper indicatorMapper;
public IndicatorDao(IndicatorMapper indicatorMapper) {
this.indicatorMapper = indicatorMapper;
}
public Optional<Indicator> getIndicator(String code) {
IndicatorEntity indicatorEntity = QueryChain.of(indicatorMapper)
.eq(IndicatorEntity::getCode, code)
.one();
if (indicatorEntity != null) {
return Optional.of(toIndicator(indicatorEntity));
}
return Optional.empty();
}
public void upsertIndicator(Indicator indicator) {
boolean existed = QueryChain.of(indicatorMapper)
.eq(IndicatorEntity::getCode, indicator.code())
.exists();
if (existed) {
UpdateChain.of(indicatorMapper)
.set(IndicatorEntity::getValue, indicator.value())
.set(IndicatorEntity::getUpdateTime,
TimeUtil.toString(indicator.updateTime()).orElse(""))
.where(IndicatorEntity::getCode)
.eq(indicator.code())
.update();
}else {
indicatorMapper.insert(toEntity(indicator));
}
}
public void deleteIndicator(String code) {
QueryWrapper queryWrapper = QueryWrapper.create();
queryWrapper
.where(IndicatorEntity::getCode)
.eq(code);
indicatorMapper.deleteByQuery(queryWrapper);
}
private Indicator toIndicator(IndicatorEntity entity) {
String name = entity.getName();
String code = entity.getCode();
String value = entity.getValue();
String description = entity.getDescription();
LocalDateTime updateTime = TimeUtil.toLocalDateTime(entity.getUpdateTime()).orElse(null);
return new Indicator(name, code, value, description, updateTime);
}
private IndicatorEntity toEntity(Indicator indicator) {
IndicatorEntity entity = new IndicatorEntity();
entity.setName(indicator.name());
entity.setCode(indicator.code());
entity.setValue(indicator.value());
entity.setDescription(indicator.description());
entity.setUpdateTime(TimeUtil.toString(indicator.updateTime()).orElse(""));
return entity;
}
}
package com.ediagnosis.cdr.dao.entity;
package com.ediagnosis.cdr.dataGovernance.indicator.dao.entity;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
/**
* 记录数据总量概览
* @TableName dim_data_summary
*/
@Table(value ="indicator")
@Table(value ="indicator",dataSource = "ds-mysql")
public class IndicatorEntity {
/**
*
......
package com.ediagnosis.cdr.dao.mapper;
package com.ediagnosis.cdr.dataGovernance.indicator.dao.mapper;
import com.ediagnosis.cdr.dao.entity.IndicatorEntity;
import com.ediagnosis.cdr.dataGovernance.indicator.dao.entity.IndicatorEntity;
import com.mybatisflex.core.BaseMapper;
import org.mybatis.spring.annotation.MapperScan;
......
package com.ediagnosis.cdr.dataGovernance.value;
package com.ediagnosis.cdr.dataGovernance.indicator.value;
import java.time.LocalDateTime;
......@@ -7,6 +7,7 @@ public record Indicator(
String name,
String code,
String value,
String description,
LocalDateTime updateTime
) {
......
package com.ediagnosis.cdr.dataGovernance;
package com.ediagnosis.cdr.dataIntegration;
import com.ediagnosis.cdr.cache.CacheFacade;
import com.ediagnosis.cdr.dataGovernance.value.TableDefinitionItem;
import com.ediagnosis.cdr.dataGovernance.value.TableTree;
import com.ediagnosis.cdr.dataIntegration.value.TableDefinitionItem;
import com.ediagnosis.cdr.dataIntegration.value.TableTree;
import org.springframework.stereotype.Component;
import java.util.List;
......
package com.ediagnosis.cdr.dataGovernance;
package com.ediagnosis.cdr.dataIntegration;
import org.springframework.web.bind.annotation.RestController;
......
package com.ediagnosis.cdr.dataGovernance;
package com.ediagnosis.cdr.dataIntegration;
import com.ediagnosis.cdr.dataGovernance.value.TableDefinitionItem;
import com.ediagnosis.cdr.dataGovernance.value.TableTree;
import com.ediagnosis.cdr.dataIntegration.value.TableDefinitionItem;
import com.ediagnosis.cdr.dataIntegration.value.TableTree;
import org.springframework.stereotype.Component;
import java.util.List;
......
package com.ediagnosis.cdr.dataGovernance;
package com.ediagnosis.cdr.dataIntegration;
import com.ediagnosis.cdr.dataGovernance.value.TableDefinitionItem;
import com.ediagnosis.cdr.dataGovernance.value.TableTree;
import com.ediagnosis.cdr.dataIntegration.value.TableDefinitionItem;
import com.ediagnosis.cdr.dataIntegration.value.TableTree;
import java.util.List;
......
package com.ediagnosis.cdr.dataGovernance.request;
package com.ediagnosis.cdr.dataIntegration.request;
public record SourceTableRequest(
......
package com.ediagnosis.cdr.dataGovernance.request;
package com.ediagnosis.cdr.dataIntegration.request;
public record TableFieldRequest(
Integer pageNo,
......
package com.ediagnosis.cdr.dataGovernance.value;
package com.ediagnosis.cdr.dataIntegration.value;
public record TableDefinitionItem(
String column,
......
package com.ediagnosis.cdr.dataGovernance.value;
package com.ediagnosis.cdr.dataIntegration.value;
import java.util.LinkedList;
import java.util.List;
......
package com.ediagnosis.cdr.dao;
package com.ediagnosis.cdr.dataService;
import com.ediagnosis.cdr.context.value.Page;
......
package com.ediagnosis.cdr.dao;
package com.ediagnosis.cdr.dataService;
import com.ediagnosis.cdr.dao.sqlutil.SqlParser;
import com.mybatisflex.core.datasource.DataSourceKey;
import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.row.Db;
......
package com.ediagnosis.cdr.dao.sqlutil;
package com.ediagnosis.cdr.dataService;
import net.sf.jsqlparser.JSQLParserException;
......
package com.ediagnosis.cdr.dao;
import com.ediagnosis.cdr.dataService.HiveQueryExecutor;
import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.row.Row;
import org.junit.jupiter.api.Test;
......
package com.ediagnosis.cdr.dataGovernance;
import com.ediagnosis.cdr.context.JsonProcessor;
import com.ediagnosis.cdr.dataGovernance.value.TableTree;
import com.ediagnosis.cdr.dataIntegration.value.TableTree;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment