拆分多库模式
This commit is contained in:
@ -12,6 +12,7 @@ using HT.Cloud.Domain.DevicesManage;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using HT.Cloud.Domain.ReportManage;
|
||||
using Quartz;
|
||||
using Serenity.Data;
|
||||
|
||||
namespace HT.Cloud.Service.ChartsManage
|
||||
{
|
||||
@ -22,25 +23,29 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
/// </summary>
|
||||
public class HistoryTechChartsService : BaseService<HistoryTechChartsEntity>, IDenpendency
|
||||
{
|
||||
public HistoryTechChartsService(ISqlSugarClient context) : base(context)
|
||||
/// <summary>
|
||||
/// 绑定数据仓库的数据库ID
|
||||
/// </summary>
|
||||
private string dataDBNumber = GlobalContext.SystemConfig.DataDBNumber;
|
||||
|
||||
public HistoryTechChartsService(ISqlSugarClient context) : base(context)
|
||||
{
|
||||
}
|
||||
|
||||
public async Task<string> GetAllTagList(string systemName, string chartTagType)
|
||||
{
|
||||
|
||||
|
||||
var groupName = _context.Queryable<MetaGroupEntity>().Where(x => x.GroupDescription == systemName).First().GroupName;
|
||||
var driverId = _context.Queryable<MetaGroupEntity>().Where(x => x.GroupDescription == systemName).First().DriverID;
|
||||
var driverName = _context.Queryable<MetaDriverEntity>().Where(x => x.DriverID == driverId).First().DriverName;
|
||||
var list = _context.Ado.SqlQuery<HT_HISTORY_CHARTEntity>($"SELECT * FROM HT_{driverName}_{groupName}_CHART WHERE ChartTagType = '{chartTagType}'");
|
||||
|
||||
var groupName = _context.AsTenant().QueryableWithAttr<MetaGroupEntity>().Where(x => x.GroupDescription == systemName).First().GroupName;
|
||||
var driverId = _context.AsTenant().QueryableWithAttr<MetaGroupEntity>().Where(x => x.GroupDescription == systemName).First().DriverID;
|
||||
var driverName = _context.AsTenant().QueryableWithAttr<MetaDriverEntity>().Where(x => x.DriverID == driverId).First().DriverName;
|
||||
var list = _context.AsTenant().GetConnection(dataDBNumber).Ado.SqlQuery<HT_HISTORY_CHARTEntity>($"SELECT * FROM HT_{driverName}_{groupName}_CHART WHERE ChartTagType = '{chartTagType}'");
|
||||
return list.ToJson();
|
||||
}
|
||||
|
||||
public async Task<string> GetDriverGroupList()
|
||||
{
|
||||
List<GroupNameList> subsystems = new List<GroupNameList>();
|
||||
var list_group = _context.Queryable<MetaGroupEntity>().ToList();
|
||||
var list_group = _context.AsTenant().QueryableWithAttr<MetaGroupEntity>().ToList();
|
||||
int i = 0;
|
||||
foreach (var group in list_group)
|
||||
{
|
||||
@ -53,8 +58,8 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
public async Task<string> GetGroupSubsystemTag(string groupDescription)
|
||||
{
|
||||
List<SubsysytemNameList> subsystems = new List<SubsysytemNameList>();
|
||||
var groupId = _context.Queryable<MetaGroupEntity>().Where(x => x.GroupDescription == groupDescription).First().GroupID;
|
||||
var grouped = _context.Queryable<MetaTagEntity>().ToList().Where(x=>x.GroupID==groupId);
|
||||
var groupId = _context.AsTenant().QueryableWithAttr<MetaGroupEntity>().Where(x => x.GroupDescription == groupDescription).First().GroupID;
|
||||
var grouped = _context.AsTenant().QueryableWithAttr<MetaTagEntity>().ToList().Where(x=>x.GroupID==groupId);
|
||||
List<string> list_name_two = grouped.Select(t => t.Subsystem).GroupBy(c => c).Select(c => c.First()).ToList();
|
||||
int i = 0;
|
||||
foreach (var Meta_Tag in list_name_two)
|
||||
@ -68,7 +73,7 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
public async Task<string> GetAllSubsystemTag()
|
||||
{
|
||||
List<SubsysytemNameList> subsystems = new List<SubsysytemNameList>();
|
||||
var grouped = _context.Queryable<MetaTagEntity>().ToList();
|
||||
var grouped = _context.AsTenant().QueryableWithAttr<MetaTagEntity>().ToList();
|
||||
List<string> list_name_two = grouped.Select(t => t.Subsystem).GroupBy(c => c).Select(c => c.First()).ToList();
|
||||
int i = 0;
|
||||
foreach (var Meta_Tag in list_name_two)
|
||||
@ -83,8 +88,8 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
{
|
||||
|
||||
var subsysname = subsysytemName;
|
||||
var groupId = _context.Queryable<MetaGroupEntity>().Where(x => x.GroupDescription == groupDescription).First().GroupID;
|
||||
var response = _context.Queryable<MetaTagEntity>().Where(x => x.Subsystem == subsysname&&x.GroupID == groupId).Select(x => new { x.TagID, x.Description, x.Units }).ToList();
|
||||
var groupId = _context.AsTenant().QueryableWithAttr<MetaGroupEntity>().Where(x => x.GroupDescription == groupDescription).First().GroupID;
|
||||
var response = _context.AsTenant().QueryableWithAttr<MetaTagEntity>().Where(x => x.Subsystem == subsysname&&x.GroupID == groupId).Select(x => new { x.TagID, x.Description, x.Units }).ToList();
|
||||
var reList = new List<SubAllTagReturn>();
|
||||
foreach (var subsystem in response)
|
||||
{
|
||||
@ -110,7 +115,7 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
new SugarParameter("@enddt",enddt),
|
||||
new SugarParameter("@timeinterval",timeinterval)
|
||||
};
|
||||
var dt = _context.Ado.UseStoredProcedure().GetDataTable("Query_Chart_Tag", sqlParameters);
|
||||
var dt = _context.AsTenant().GetConnection(dataDBNumber).Ado.UseStoredProcedure().GetDataTable("Query_Chart_Tag", sqlParameters);
|
||||
//*
|
||||
//var ds = db.SqlQuery("Query_Report_Period", sqlParameters);///
|
||||
|
||||
|
Reference in New Issue
Block a user