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 com.ediagnosis.cdr.context.value.Response;
import org.springframework.web.bind.annotation.GetMapping; 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.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
......
package com.ediagnosis.cdr.dashBoard; package com.ediagnosis.cdr.dashBoard.hostMonitor;
public record HostMonitorValue( public record HostMonitorValue(
HostValue host, HostValue host,
......
package com.ediagnosis.cdr.dashBoard; package com.ediagnosis.cdr.dashBoard.hostMonitor;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
...@@ -80,7 +80,7 @@ public class HostMonitorValueRepository { ...@@ -80,7 +80,7 @@ public class HostMonitorValueRepository {
diskValue = new HostMonitorValue.DiskValue("", "", "", ""); diskValue = new HostMonitorValue.DiskValue("", "", "", "");
} }
HostMonitorValue hostMonitorValue = new HostMonitorValue(hostValue, cpuValue, memoryValue, diskValue); return new HostMonitorValue(hostValue, cpuValue, memoryValue, diskValue);
return hostMonitorValue;
} }
} }
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.dataGovernance.indicator.dao.entity.IndicatorEntity;
import com.ediagnosis.cdr.dao.mapper.IndicatorMapper; import com.ediagnosis.cdr.dataGovernance.indicator.dao.mapper.IndicatorMapper;
import com.ediagnosis.cdr.context.TimeUtil; 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 org.springframework.stereotype.Repository;
import java.time.LocalDateTime; 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.Id;
import com.mybatisflex.annotation.KeyType; import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table; import com.mybatisflex.annotation.Table;
/**
* 记录数据总量概览 @Table(value ="indicator",dataSource = "ds-mysql")
* @TableName dim_data_summary
*/
@Table(value ="indicator")
public class IndicatorEntity { 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 com.mybatisflex.core.BaseMapper;
import org.mybatis.spring.annotation.MapperScan; import org.mybatis.spring.annotation.MapperScan;
......
package com.ediagnosis.cdr.dataGovernance.value; package com.ediagnosis.cdr.dataGovernance.indicator.value;
import java.time.LocalDateTime; import java.time.LocalDateTime;
...@@ -7,6 +7,7 @@ public record Indicator( ...@@ -7,6 +7,7 @@ public record Indicator(
String name, String name,
String code, String code,
String value, String value,
String description,
LocalDateTime updateTime LocalDateTime updateTime
) { ) {
......
package com.ediagnosis.cdr.dataGovernance; package com.ediagnosis.cdr.dataIntegration;
import com.ediagnosis.cdr.cache.CacheFacade; import com.ediagnosis.cdr.cache.CacheFacade;
import com.ediagnosis.cdr.dataGovernance.value.TableDefinitionItem; import com.ediagnosis.cdr.dataIntegration.value.TableDefinitionItem;
import com.ediagnosis.cdr.dataGovernance.value.TableTree; import com.ediagnosis.cdr.dataIntegration.value.TableTree;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.List; import java.util.List;
......
package com.ediagnosis.cdr.dataGovernance; package com.ediagnosis.cdr.dataIntegration;
import org.springframework.web.bind.annotation.RestController; 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.dataIntegration.value.TableDefinitionItem;
import com.ediagnosis.cdr.dataGovernance.value.TableTree; import com.ediagnosis.cdr.dataIntegration.value.TableTree;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.List; 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.dataIntegration.value.TableDefinitionItem;
import com.ediagnosis.cdr.dataGovernance.value.TableTree; import com.ediagnosis.cdr.dataIntegration.value.TableTree;
import java.util.List; import java.util.List;
......
package com.ediagnosis.cdr.dataGovernance.request; package com.ediagnosis.cdr.dataIntegration.request;
public record SourceTableRequest( public record SourceTableRequest(
......
package com.ediagnosis.cdr.dataGovernance.request; package com.ediagnosis.cdr.dataIntegration.request;
public record TableFieldRequest( public record TableFieldRequest(
Integer pageNo, Integer pageNo,
......
package com.ediagnosis.cdr.dataGovernance.value; package com.ediagnosis.cdr.dataIntegration.value;
public record TableDefinitionItem( public record TableDefinitionItem(
String column, String column,
......
package com.ediagnosis.cdr.dataGovernance.value; package com.ediagnosis.cdr.dataIntegration.value;
import java.util.LinkedList; import java.util.LinkedList;
import java.util.List; import java.util.List;
......
package com.ediagnosis.cdr.dao; package com.ediagnosis.cdr.dataService;
import com.ediagnosis.cdr.context.value.Page; 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.datasource.DataSourceKey;
import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.row.Db; import com.mybatisflex.core.row.Db;
......
package com.ediagnosis.cdr.dao.sqlutil; package com.ediagnosis.cdr.dataService;
import net.sf.jsqlparser.JSQLParserException; import net.sf.jsqlparser.JSQLParserException;
......
package com.ediagnosis.cdr.dao; package com.ediagnosis.cdr.dao;
import com.ediagnosis.cdr.dataService.HiveQueryExecutor;
import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.row.Row; import com.mybatisflex.core.row.Row;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
......
package com.ediagnosis.cdr.dataGovernance; package com.ediagnosis.cdr.dataGovernance;
import com.ediagnosis.cdr.context.JsonProcessor; 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.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest; 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