拆分多库模式
This commit is contained in:
@ -75,6 +75,11 @@ namespace HT.Cloud.Code.Model
|
||||
/// </summary>
|
||||
public string MainDbNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据仓库数据库编号
|
||||
/// </summary>
|
||||
public string DataDBNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否开启定时任务
|
||||
/// </summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.ChartsManage
|
||||
/// 描 述: 趋势变量表实体类
|
||||
/// </summary>
|
||||
[SugarTable("HT_HISTORY_CHART")]
|
||||
[TenantAttribute("1")]
|
||||
public class HT_HISTORY_CHARTEntity
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.ChartsManage
|
||||
/// 描 述:历史趋势实体类
|
||||
/// </summary>
|
||||
[SugarTable("htb_historycharts")]
|
||||
[TenantAttribute("1")]
|
||||
public class HistoryChartsEntity
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.ChartsManage
|
||||
/// 描 述:历史趋势实体类
|
||||
/// </summary>
|
||||
[SugarTable("htb_historytechcharts")]
|
||||
[TenantAttribute("1")]
|
||||
public class HistoryTechChartsEntity
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.ChartsManage
|
||||
/// 描 述:历史趋势实体类
|
||||
/// </summary>
|
||||
[SugarTable("htb_rttechcharts")]
|
||||
[TenantAttribute("1")]
|
||||
public class RtTechChartsEntity
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.ChartsManage
|
||||
/// 描 述:实时趋势实体类
|
||||
/// </summary>
|
||||
[SugarTable("htb_rtcharts")]
|
||||
[TenantAttribute("1")]
|
||||
public class RtchartsEntity
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.ContentManage
|
||||
/// 描 述:新闻类别实体类
|
||||
/// </summary>
|
||||
[SugarTable("cms_articlecategory")]
|
||||
[TenantAttribute("0")]
|
||||
public class ArticleCategoryEntity : IEntity<ArticleCategoryEntity>, ICreationAudited, IModificationAudited, IDeleteAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.ContentManage
|
||||
/// 描 述:新闻管理实体类
|
||||
/// </summary>
|
||||
[SugarTable("cms_articlenews")]
|
||||
[TenantAttribute("0")]
|
||||
public class ArticleNewsEntity : IEntity<ArticleNewsEntity>, ICreationAudited, IModificationAudited, IDeleteAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.DevicesManage
|
||||
/// 描 述:设备硬件连接参数表实体类
|
||||
/// </summary>
|
||||
[SugarTable("Argument")]
|
||||
[TenantAttribute("1")]
|
||||
public class ArgumentEntity
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.DevicesManage
|
||||
/// 描 述:设备信息列表实体类
|
||||
/// </summary>
|
||||
[SugarTable("Meta_Driver")]
|
||||
[TenantAttribute("1")]
|
||||
public class MetaDriverEntity
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.DevicesManage
|
||||
/// 描 述:变量组信息表实体类
|
||||
/// </summary>
|
||||
[SugarTable("Meta_Group")]
|
||||
[TenantAttribute("1")]
|
||||
public class MetaGroupEntity
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.DevicesManage
|
||||
/// 描 述:变量信息表实体类
|
||||
/// </summary>
|
||||
[SugarTable("Meta_Tag")]
|
||||
[TenantAttribute("1")]
|
||||
public class MetaTagEntity
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.DevicesManage
|
||||
/// 描 述:设备报警信息实体类
|
||||
/// </summary>
|
||||
[SugarTable("Meta_Tag_Scope")]
|
||||
[TenantAttribute("1")]
|
||||
public class MetaTagScopeEntity
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -9,6 +9,7 @@ namespace HT.Cloud.Domain.FileManage
|
||||
/// 描 述:文件管理实体类
|
||||
/// </summary>
|
||||
[SugarTable("oms_uploadfile")]
|
||||
[TenantAttribute("0")]
|
||||
public class UploadfileEntity : IEntity<UploadfileEntity>, ICreationAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -16,6 +16,7 @@ namespace HT.Cloud.Domain.FlowManage
|
||||
/// 工作流实例操作记录
|
||||
/// </summary>
|
||||
[SugarTable("oms_flowinstanceinfo")]
|
||||
[TenantAttribute("0")]
|
||||
public class FlowInstanceOperationHistory
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -16,6 +16,7 @@ namespace HT.Cloud.Domain.FlowManage
|
||||
/// 工作流实例流转历史记录
|
||||
/// </summary>
|
||||
[SugarTable("oms_flowinstancehis")]
|
||||
[TenantAttribute("0")]
|
||||
public class FlowInstanceTransitionHistory
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.FlowManage
|
||||
/// 描 述:我的流程实体类
|
||||
/// </summary>
|
||||
[SugarTable("oms_flowinstance")]
|
||||
[TenantAttribute("0")]
|
||||
public class FlowinstanceEntity : IEntity<FlowinstanceEntity>, ICreationAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -11,6 +11,7 @@ using System;
|
||||
namespace HT.Cloud.Domain.FlowManage
|
||||
{
|
||||
[SugarTable("oms_formtest")]
|
||||
[TenantAttribute("0")]
|
||||
public class FormTestEntity : IEntity<FormTestEntity>, ICreationAudited
|
||||
{
|
||||
[SugarColumn(ColumnName = "F_Id", IsPrimaryKey = true, ColumnDescription = "主键Id")]
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.InfoManage
|
||||
/// 描 述:通知管理实体类
|
||||
/// </summary>
|
||||
[SugarTable("oms_message")]
|
||||
[TenantAttribute("0")]
|
||||
public class MessageEntity : IEntity<MessageEntity>, ICreationAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -9,6 +9,7 @@ namespace HT.Cloud.Domain.InfoManage
|
||||
/// 描 述:信息历史实体类
|
||||
/// </summary>
|
||||
[SugarTable("oms_messagehis")]
|
||||
[TenantAttribute("0")]
|
||||
public class MessageHistoryEntity : IEntity<MessageHistoryEntity>, ICreationAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -9,6 +9,7 @@ namespace HT.Cloud.Domain.OrderManagement
|
||||
/// 描 述:订单明细实体类
|
||||
/// </summary>
|
||||
[SugarTable("crm_orderdetail")]
|
||||
[TenantAttribute("0")]
|
||||
public class OrderDetailEntity : IEntity<OrderDetailEntity>, ICreationAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.OrderManagement
|
||||
/// 描 述:订单管理实体类
|
||||
/// </summary>
|
||||
[SugarTable("crm_order")]
|
||||
[TenantAttribute("0")]
|
||||
public class OrderEntity : IEntity<OrderEntity>, ICreationAudited, IModificationAudited, IDeleteAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.ReportManage
|
||||
/// 描 述:报警信息变量表实体类
|
||||
/// </summary>
|
||||
[SugarTable("HT_HISTORY_ALARM")]
|
||||
[TenantAttribute("1")]
|
||||
public class HistoryAlarmEntity
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.ReportManage
|
||||
/// 描 述:历史报表实体类
|
||||
/// </summary>
|
||||
[SugarTable("htb_historyreport")]
|
||||
[TenantAttribute("1")]
|
||||
public class HistoryReportEntity
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.ReportManage
|
||||
/// 描 述:历史信息表实体类
|
||||
/// </summary>
|
||||
[SugarTable("HT_HISTORY_REPORT")]
|
||||
[TenantAttribute("1")]
|
||||
public class Ht_History_ReportEntity
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.ReportManage
|
||||
/// 描 述:报警变量表实体类
|
||||
/// </summary>
|
||||
[SugarTable("Meta_Tag_Alarm")]
|
||||
[TenantAttribute("1")]
|
||||
public class MetaTagAlarmEntity
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.ReportManage
|
||||
/// 描 述:实时报表SQL转换实体类
|
||||
/// </summary>
|
||||
[SugarTable("HT_RT_REPORT")]
|
||||
[TenantAttribute("1")]
|
||||
public class RtReportEntity
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -12,6 +12,7 @@ using System.ComponentModel.DataAnnotations;
|
||||
namespace HT.Cloud.Domain.SystemManage
|
||||
{
|
||||
[SugarTable("sys_area")]
|
||||
[TenantAttribute("0")]
|
||||
public class AreaEntity : IEntity<AreaEntity>, ICreationAudited, IDeleteAudited, IModificationAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -9,6 +9,7 @@ namespace HT.Cloud.Domain.SystemManage
|
||||
/// 描 述:条码生成记录实体类
|
||||
/// </summary>
|
||||
[SugarTable("sys_codegeneratelog")]
|
||||
[TenantAttribute("0")]
|
||||
public class CodegeneratelogEntity : IEntity<CodegeneratelogEntity>,ICreationAudited,IModificationAudited,IDeleteAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -9,6 +9,7 @@ namespace HT.Cloud.Domain.SystemManage
|
||||
/// 描 述:条码规则实体类
|
||||
/// </summary>
|
||||
[SugarTable("sys_coderule")]
|
||||
[TenantAttribute("0")]
|
||||
public class CoderuleEntity : IEntity<CoderuleEntity>,ICreationAudited,IModificationAudited,IDeleteAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.SystemManage
|
||||
/// 描 述:条码规则计数实体类
|
||||
/// </summary>
|
||||
[SugarTable("sys_coderulelog")]
|
||||
[TenantAttribute("0")]
|
||||
public class CoderulelogEntity
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.SystemManage
|
||||
/// 描 述:流程设计实体类
|
||||
/// </summary>
|
||||
[SugarTable("sys_flowscheme")]
|
||||
[TenantAttribute("0")]
|
||||
public class FlowschemeEntity : IEntity<FlowschemeEntity>, ICreationAudited, IModificationAudited, IDeleteAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.SystemManage
|
||||
/// 描 述:表单设计实体类
|
||||
/// </summary>
|
||||
[SugarTable("sys_form")]
|
||||
[TenantAttribute("0")]
|
||||
public class FormEntity : IEntity<FormEntity>, ICreationAudited, IModificationAudited, IDeleteAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -12,6 +12,7 @@ using System.ComponentModel.DataAnnotations;
|
||||
namespace HT.Cloud.Domain.SystemManage
|
||||
{
|
||||
[SugarTable("sys_itemsdetail")]
|
||||
[TenantAttribute("0")]
|
||||
public class ItemsDetailEntity : IEntity<ItemsDetailEntity>, ICreationAudited, IDeleteAudited, IModificationAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -12,6 +12,7 @@ using System.ComponentModel.DataAnnotations;
|
||||
namespace HT.Cloud.Domain.SystemManage
|
||||
{
|
||||
[SugarTable("sys_items")]
|
||||
[TenantAttribute("0")]
|
||||
public class ItemsEntity : IEntity<ItemsEntity>, ICreationAudited, IDeleteAudited, IModificationAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -12,6 +12,7 @@ using System.ComponentModel.DataAnnotations;
|
||||
namespace HT.Cloud.Domain.SystemManage
|
||||
{
|
||||
[SugarTable("sys_modulebutton")]
|
||||
[TenantAttribute("0")]
|
||||
public class ModuleButtonEntity : IEntity<ModuleButtonEntity>, ICreationAudited, IDeleteAudited, IModificationAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -12,6 +12,7 @@ using System.ComponentModel.DataAnnotations;
|
||||
namespace HT.Cloud.Domain.SystemManage
|
||||
{
|
||||
[SugarTable("sys_module")]
|
||||
[TenantAttribute("0")]
|
||||
public class ModuleEntity : IEntity<ModuleEntity>, ICreationAudited, IModificationAudited, IDeleteAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.SystemManage
|
||||
/// 描 述:字段管理实体类
|
||||
/// </summary>
|
||||
[SugarTable("sys_modulefields")]
|
||||
[TenantAttribute("0")]
|
||||
public class ModuleFieldsEntity : IEntity<ModuleFieldsEntity>, ICreationAudited, IModificationAudited, IDeleteAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -16,6 +16,7 @@ namespace HT.Cloud.Domain.SystemManage
|
||||
/// QuickModule Entity Model
|
||||
/// </summary>
|
||||
[SugarTable("sys_quickmodule")]
|
||||
[TenantAttribute("0")]
|
||||
public class QuickModuleEntity : IEntity<QuickModuleEntity>, ICreationAudited, IDeleteAudited, IModificationAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -9,6 +9,7 @@ namespace HT.Cloud.Domain.SystemManage
|
||||
/// 描 述:打印模板实体类
|
||||
/// </summary>
|
||||
[SugarTable("sys_template")]
|
||||
[TenantAttribute("0")]
|
||||
public class TemplateEntity : IEntity<TemplateEntity>,ICreationAudited,IModificationAudited,IDeleteAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.SystemOrganize
|
||||
/// 描 述:数据权限实体类
|
||||
/// </summary>
|
||||
[SugarTable("sys_dataprivilegerule")]
|
||||
[TenantAttribute("0")]
|
||||
public class DataPrivilegeRuleEntity : IEntity<DataPrivilegeRuleEntity>, ICreationAudited, IModificationAudited, IDeleteAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -8,6 +8,7 @@ namespace HT.Cloud.Domain.SystemOrganize
|
||||
/// 描 述:角色类别实体扩展类
|
||||
/// </summary>
|
||||
[SugarTable("sys_role")]
|
||||
[TenantAttribute("0")]
|
||||
public class RoleExtend : RoleEntity
|
||||
{
|
||||
//使用导入错误信息
|
||||
|
@ -8,6 +8,7 @@ namespace HT.Cloud.Domain.SystemOrganize
|
||||
/// 描 述:用户实体扩展类
|
||||
/// </summary>
|
||||
[SugarTable("sys_user")]
|
||||
[TenantAttribute("0")]
|
||||
public class UserExtend : UserEntity
|
||||
{
|
||||
//使用导入错误信息
|
||||
|
@ -17,6 +17,7 @@ namespace HT.Cloud.Domain.SystemOrganize
|
||||
/// Notice Entity Model
|
||||
/// </summary>
|
||||
[SugarTable("sys_notice")]
|
||||
[TenantAttribute("0")]
|
||||
public class NoticeEntity : IEntity<NoticeEntity>, ICreationAudited, IDeleteAudited, IModificationAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -15,6 +15,7 @@ namespace HT.Cloud.Domain.SystemOrganize
|
||||
/// 机构实体
|
||||
/// </summary>
|
||||
[SugarTable("sys_organize")]
|
||||
[TenantAttribute("0")]
|
||||
public class OrganizeEntity : IEntity<OrganizeEntity>, ICreationAudited, IDeleteAudited, IModificationAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -14,6 +14,7 @@ namespace HT.Cloud.Domain.SystemOrganize
|
||||
/// 角色权限实体
|
||||
/// </summary>
|
||||
[SugarTable("sys_roleauthorize")]
|
||||
[TenantAttribute("0")]
|
||||
public class RoleAuthorizeEntity : IEntity<RoleAuthorizeEntity>, ICreationAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -16,6 +16,7 @@ namespace HT.Cloud.Domain.SystemOrganize
|
||||
/// 角色实体
|
||||
/// </summary>
|
||||
[SugarTable("sys_role")]
|
||||
[TenantAttribute("0")]
|
||||
public class RoleEntity : IEntity<RoleEntity>, ICreationAudited, IDeleteAudited, IModificationAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,7 @@ namespace HT.Cloud.Domain.SystemOrganize
|
||||
/// 描 述:系统设置实体类
|
||||
/// </summary>
|
||||
[SugarTable("sys_systemset")]
|
||||
[TenantAttribute("0")]
|
||||
public class SystemSetEntity : IEntity<SystemSetEntity>, ICreationAudited, IModificationAudited, IDeleteAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -15,6 +15,7 @@ namespace HT.Cloud.Domain.SystemOrganize
|
||||
/// 用户实体
|
||||
/// </summary>
|
||||
[SugarTable("sys_user")]
|
||||
[TenantAttribute("0")]
|
||||
public class UserEntity : IEntity<UserEntity>, ICreationAudited, IDeleteAudited, IModificationAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -12,6 +12,7 @@ using System.ComponentModel.DataAnnotations;
|
||||
namespace HT.Cloud.Domain.SystemOrganize
|
||||
{
|
||||
[SugarTable("sys_userlogon")]
|
||||
[TenantAttribute("0")]
|
||||
public class UserLogOnEntity
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -15,6 +15,7 @@ namespace HT.Cloud.Domain.SystemSecurity
|
||||
/// IP过滤实体
|
||||
/// </summary>
|
||||
[SugarTable("sys_filterip")]
|
||||
[TenantAttribute("0")]
|
||||
public class FilterIPEntity : IEntity<FilterIPEntity>, ICreationAudited, IDeleteAudited, IModificationAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -14,6 +14,7 @@ namespace HT.Cloud.Domain.SystemSecurity
|
||||
/// 日志实体
|
||||
/// </summary>
|
||||
[SugarTable("sys_log")]
|
||||
[TenantAttribute("0")]
|
||||
public class LogEntity : IEntity<LogEntity>, ICreationAudited
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -19,6 +19,7 @@ namespace HT.Cloud.Domain.SystemSecurity
|
||||
/// </summary>
|
||||
[SugarTable("sys_openjob")]
|
||||
[Tenant("0")]
|
||||
//[TenantAttribute("0")]
|
||||
public partial class OpenJobEntity : IEntity<OpenJobEntity>, ICreationAudited, IDeleteAudited, IModificationAudited
|
||||
{
|
||||
[SugarColumn(ColumnName = "F_Id", IsPrimaryKey = true, ColumnDescription = "主键Id")]
|
||||
|
@ -17,6 +17,7 @@ namespace HT.Cloud.Domain.SystemSecurity
|
||||
/// </summary>
|
||||
[SugarTable("sys_openjoblog")]
|
||||
[Tenant("0")]
|
||||
//[TenantAttribute("0")]
|
||||
public partial class OpenJobLogEntity : IEntity<OpenJobEntity>
|
||||
{
|
||||
[SugarColumn(ColumnName = "F_Id", IsPrimaryKey = true, ColumnDescription = "主键Id")]
|
||||
|
@ -16,6 +16,7 @@ namespace HT.Cloud.Domain.SystemSecurity
|
||||
/// ServerState Entity Model
|
||||
/// </summary>
|
||||
[SugarTable("sys_serverstate")]
|
||||
[TenantAttribute("0")]
|
||||
public class ServerStateEntity : IEntity<ServerStateEntity>
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -20,6 +20,11 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
/// </summary>
|
||||
public class HistoryChartsService : BaseService<HistoryChartsEntity>, IDenpendency
|
||||
{
|
||||
/// <summary>
|
||||
/// 绑定数据仓库的数据库ID
|
||||
/// </summary>
|
||||
private string dataDBNumber = GlobalContext.SystemConfig.DataDBNumber;
|
||||
|
||||
public HistoryChartsService(ISqlSugarClient context) : base(context)
|
||||
{
|
||||
}
|
||||
@ -27,7 +32,7 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
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)
|
||||
{
|
||||
@ -40,8 +45,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)
|
||||
@ -55,8 +60,8 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
public async Task<string> GetAllSubsystemTag(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)
|
||||
@ -71,8 +76,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)
|
||||
{
|
||||
@ -97,7 +102,7 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
new SugarParameter("@startdt",startdt),
|
||||
new SugarParameter("@timeinterval",timeinterval)
|
||||
};
|
||||
var dt = _context.Ado.UseStoredProcedure().GetDataTable("Query_Group_Tag", sqlParameters);
|
||||
var dt = _context.AsTenant().GetConnection(dataDBNumber).Ado.UseStoredProcedure().GetDataTable("Query_Group_Tag", sqlParameters);
|
||||
//*
|
||||
//var ds = db.SqlQuery("Query_Report_Period", sqlParameters);///
|
||||
|
||||
|
@ -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,6 +23,11 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
/// </summary>
|
||||
public class HistoryTechChartsService : BaseService<HistoryTechChartsEntity>, IDenpendency
|
||||
{
|
||||
/// <summary>
|
||||
/// 绑定数据仓库的数据库ID
|
||||
/// </summary>
|
||||
private string dataDBNumber = GlobalContext.SystemConfig.DataDBNumber;
|
||||
|
||||
public HistoryTechChartsService(ISqlSugarClient context) : base(context)
|
||||
{
|
||||
}
|
||||
@ -29,18 +35,17 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
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);///
|
||||
|
||||
|
@ -24,6 +24,11 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
/// </summary>
|
||||
public class RtTechChartsService : BaseService<RtTechChartsEntity>, IDenpendency
|
||||
{
|
||||
/// <summary>
|
||||
/// 绑定数据仓库的数据库ID
|
||||
/// </summary>
|
||||
private string dataDBNumber = GlobalContext.SystemConfig.DataDBNumber;
|
||||
|
||||
public RtTechChartsService(ISqlSugarClient context) : base(context)
|
||||
{
|
||||
}
|
||||
@ -32,17 +37,17 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
{
|
||||
|
||||
|
||||
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)
|
||||
{
|
||||
@ -55,8 +60,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)
|
||||
@ -70,7 +75,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)
|
||||
@ -85,8 +90,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)
|
||||
{
|
||||
@ -108,14 +113,14 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
|
||||
var result_list = new List<List<ChartData>>();
|
||||
|
||||
var groupName = _context.Queryable<MetaGroupEntity>().Where(x => x.GroupDescription == systemName).First().GroupName;
|
||||
var groupName = _context.AsTenant().QueryableWithAttr<MetaGroupEntity>().Where(x => x.GroupDescription == systemName).First().GroupName;
|
||||
|
||||
foreach (string tagNameTxt in charts_TagNames)
|
||||
{
|
||||
tagName_list.Add(tagNameTxt);
|
||||
result_list.Add(new List<ChartData>());
|
||||
}
|
||||
var remoteRtDataServer = repository.IQueryable().First().remotertdataserver + $"?groupName={groupName}";
|
||||
var remoteRtDataServer = _context.AsTenant().QueryableWithAttr<RtchartsEntity>().First().remotertdataserver + $"?groupName={groupName}";
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
var responseStr = RemoteHttpRequest.HttpGet(remoteRtDataServer);
|
||||
@ -154,7 +159,7 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
|
||||
var result_list = new List<List<ChartData>>();
|
||||
|
||||
var groupName = _context.Queryable<MetaGroupEntity>().Where(x => x.GroupDescription == systemName).First().GroupName;
|
||||
var groupName = _context.AsTenant().QueryableWithAttr<MetaGroupEntity>().Where(x => x.GroupDescription == systemName).First().GroupName;
|
||||
|
||||
|
||||
foreach (string tagNameTxt in charts_TagNames)
|
||||
@ -163,7 +168,7 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
result_list.Add(new List<ChartData>());
|
||||
}
|
||||
|
||||
var remoteRtDataServer = repository.IQueryable().First().remotertdataserver + $"?groupName={groupName}"; ;
|
||||
var remoteRtDataServer = _context.AsTenant().QueryableWithAttr<RtTechChartsEntity>().First().remotertdataserver + $"?groupName={groupName}"; ;
|
||||
var responseStr = RemoteHttpRequest.HttpGet(remoteRtDataServer);
|
||||
|
||||
JObject valueJson = JObject.Parse(responseStr);
|
||||
|
@ -19,18 +19,23 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
/// </summary>
|
||||
public class RtchartsService : BaseService<RtchartsEntity>, IDenpendency
|
||||
{
|
||||
/// <summary>
|
||||
/// 绑定数据仓库的数据库ID
|
||||
/// </summary>
|
||||
private string dataDBNumber = GlobalContext.SystemConfig.DataDBNumber;
|
||||
|
||||
public RtchartsService(ISqlSugarClient context) : base(context)
|
||||
{
|
||||
}
|
||||
public async Task<string> GetDriverGroupList()
|
||||
{
|
||||
var list_group = _context.Queryable<MetaGroupEntity>().ToList();
|
||||
var list_group = _context.AsTenant().QueryableWithAttr<MetaGroupEntity>().ToList();
|
||||
return list_group.ToJson();
|
||||
}
|
||||
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)
|
||||
@ -45,7 +50,7 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
{
|
||||
|
||||
var subsysname = subsysytemName;
|
||||
var response = _context.Queryable<MetaTagEntity>().Where(x => x.Subsystem == subsysname).Select(x => new { x.TagID, x.Description, x.Units }).ToList();
|
||||
var response = _context.AsTenant().QueryableWithAttr<MetaTagEntity>().Where(x => x.Subsystem == subsysname).Select(x => new { x.TagID, x.Description, x.Units }).ToList();
|
||||
var reList = new List<SubAllTagReturn>();
|
||||
foreach (var subsystem in response)
|
||||
{
|
||||
@ -71,11 +76,11 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
foreach (string tagIDTxt in charts_TagIDs)
|
||||
{
|
||||
var tagID = ushort.Parse(tagIDTxt);
|
||||
var TagName = _context.Queryable<MetaTagEntity>().Where(x => x.TagID == tagID).First().TagName;
|
||||
var TagName = _context.AsTenant().QueryableWithAttr<MetaTagEntity>().Where(x => x.TagID == tagID).First().TagName;
|
||||
tagName_list.Add(TagName);
|
||||
result_list.Add(new List<ChartData>());
|
||||
}
|
||||
var remoteRtDataServer = repository.IQueryable().First().remotertdataserver;
|
||||
var remoteRtDataServer = _context.AsTenant().QueryableWithAttr<RtchartsEntity>().First().remotertdataserver;
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
var responseStr = RemoteHttpRequest.HttpGet(remoteRtDataServer);
|
||||
@ -118,12 +123,12 @@ namespace HT.Cloud.Service.ChartsManage
|
||||
foreach (string tagIDTxt in charts_TagIDs)
|
||||
{
|
||||
var tagID = ushort.Parse(tagIDTxt);
|
||||
var TagName = _context.Queryable<MetaTagEntity>().Where(x => x.TagID == tagID).First().TagName;
|
||||
var TagName = _context.AsTenant().QueryableWithAttr<MetaTagEntity>().Where(x => x.TagID == tagID).First().TagName;
|
||||
tagName_list.Add(TagName);
|
||||
result_list.Add(new List<ChartData>());
|
||||
}
|
||||
|
||||
var remoteRtDataServer = repository.IQueryable().First().remotertdataserver;
|
||||
var remoteRtDataServer = _context.AsTenant().QueryableWithAttr<RtchartsEntity>().First().remotertdataserver;
|
||||
var responseStr = RemoteHttpRequest.HttpGet(remoteRtDataServer);
|
||||
|
||||
JObject valueJson = JObject.Parse(responseStr);
|
||||
|
@ -16,6 +16,11 @@ namespace HT.Cloud.Service.DevicesManage
|
||||
/// </summary>
|
||||
public class MetaTagScopeService : BaseService<MetaTagScopeEntity>, IDenpendency
|
||||
{
|
||||
/// <summary>
|
||||
/// 绑定数据仓库的数据库ID
|
||||
/// </summary>
|
||||
private string dataDBNumber = GlobalContext.SystemConfig.DataDBNumber;
|
||||
|
||||
public MetaTagScopeService(ISqlSugarClient context) : base(context)
|
||||
{
|
||||
}
|
||||
|
@ -19,6 +19,11 @@ namespace HT.Cloud.Service.DevicesManage
|
||||
/// </summary>
|
||||
public class MetaTagService : BaseService<MetaTagEntity>, IDenpendency
|
||||
{
|
||||
/// <summary>
|
||||
/// 绑定数据仓库的数据库ID
|
||||
/// </summary>
|
||||
private string dataDBNumber = GlobalContext.SystemConfig.DataDBNumber;
|
||||
|
||||
public MetaTagService(ISqlSugarClient context) : base(context)
|
||||
{
|
||||
}
|
||||
|
@ -15,19 +15,24 @@ namespace HT.Cloud.Service.ReportManage
|
||||
{
|
||||
public class HistoryAlarmService : BaseService<HistoryAlarmEntity>, IDenpendency
|
||||
{
|
||||
/// <summary>
|
||||
/// 绑定数据仓库的数据库ID
|
||||
/// </summary>
|
||||
private string dataDBNumber = GlobalContext.SystemConfig.DataDBNumber;
|
||||
|
||||
public HistoryAlarmService(ISqlSugarClient context) : base(context)
|
||||
{
|
||||
}
|
||||
public async Task<string> GetDriverGroupList()
|
||||
{
|
||||
|
||||
//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_ReportEntity>($"SELECT * FROM HT_{driverName}_{groupName}_ALARM");
|
||||
//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_ReportEntity>($"SELECT * FROM HT_{driverName}_{groupName}_ALARM");
|
||||
|
||||
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)
|
||||
{
|
||||
@ -38,12 +43,12 @@ namespace HT.Cloud.Service.ReportManage
|
||||
}
|
||||
public async Task<string> GetAllSubsystemTag(string systemName)
|
||||
{
|
||||
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<HistoryAlarmEntity>($"SELECT * FROM HT_{driverName}_{groupName}_ALARM");
|
||||
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<HistoryAlarmEntity>($"SELECT * FROM HT_{driverName}_{groupName}_ALARM");
|
||||
List<SubsysytemNameList> subsystems = new List<SubsysytemNameList>();
|
||||
//var grouped = repository.IQueryable().ToList();
|
||||
//var grouped = _context.AsTenant().QueryableWithAttr<HistoryAlarmEntity>().ToList();
|
||||
List<string> list_name_two = list.Select(t => t.Subsystem).GroupBy(c => c).Select(c => c.First()).ToList();
|
||||
int i = 0;
|
||||
foreach (var Meta_Tag in list_name_two)
|
||||
@ -55,10 +60,10 @@ namespace HT.Cloud.Service.ReportManage
|
||||
}
|
||||
public async Task<string> GetSubsystemAllTag(string subsysytemName, string systemName)
|
||||
{
|
||||
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<HistoryAlarmEntity>($"SELECT * FROM HT_{driverName}_{groupName}_ALARM");
|
||||
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<HistoryAlarmEntity>($"SELECT * FROM HT_{driverName}_{groupName}_ALARM");
|
||||
|
||||
var subsysname = subsysytemName;
|
||||
var response = list.Where(x => x.Subsystem == subsysname).Select(x => new { x.TagID, x.Description, x.Units }).ToList();
|
||||
@ -87,7 +92,7 @@ namespace HT.Cloud.Service.ReportManage
|
||||
new SugarParameter("@Htagid",tagid)
|
||||
|
||||
};
|
||||
var dt = _context.Ado.UseStoredProcedure().GetDataTable("Query_Tag_Alarm", sqlParameters);
|
||||
var dt = _context.AsTenant().GetConnection(dataDBNumber).Ado.UseStoredProcedure().GetDataTable("Query_Tag_Alarm", sqlParameters);
|
||||
var valuelist = DataTableConvertModel<AlarmValue>.ConvertDataTableToList(dt);
|
||||
return valuelist.ToJson();
|
||||
|
||||
@ -142,7 +147,7 @@ namespace HT.Cloud.Service.ReportManage
|
||||
|
||||
|
||||
};
|
||||
var dt = _context.Ado.UseStoredProcedure().GetDataTable("Query_Tag_Alarm_Count", sqlParameters);
|
||||
var dt = _context.AsTenant().GetConnection(dataDBNumber).Ado.UseStoredProcedure().GetDataTable("Query_Tag_Alarm_Count", sqlParameters);
|
||||
var valuelist = DataTableConvertModel<AlarmValueCount>.ConvertDataTableToList(dt);
|
||||
return valuelist.ToJson();
|
||||
|
||||
@ -155,17 +160,17 @@ namespace HT.Cloud.Service.ReportManage
|
||||
{
|
||||
new SugarParameter("@Hhour",Hhour)
|
||||
};
|
||||
var dt = _context.Ado.UseStoredProcedure().GetDataTable("Query_Tag_Alarm_History", sqlParameters);
|
||||
var dt = _context.AsTenant().GetConnection(dataDBNumber).Ado.UseStoredProcedure().GetDataTable("Query_Tag_Alarm_History", sqlParameters);
|
||||
var valuelist = DataTableConvertModel<AlarmValueCountDesc>.ConvertDataTableToList(dt);
|
||||
return valuelist.ToJson();
|
||||
|
||||
}
|
||||
public async Task<string> GetAlarmSubSystem(string alarmName, string systemName)
|
||||
{
|
||||
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<HistoryAlarmEntity>($"SELECT * FROM HT_{driverName}_{groupName}_ALARM");
|
||||
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<HistoryAlarmEntity>($"SELECT * FROM HT_{driverName}_{groupName}_ALARM");
|
||||
|
||||
var subSystem = list.Where(x => x.Description == alarmName).First().Subsystem;
|
||||
return subSystem.ToJson();
|
||||
|
@ -26,16 +26,18 @@ namespace HT.Cloud.Service.ReportManage
|
||||
{
|
||||
public class HistoryReportService : BaseService<HistoryReportEntity>, IDenpendency
|
||||
{
|
||||
//private string Startdt = "";
|
||||
//private string Enddt = "";
|
||||
//private int Timeinterval = 0;
|
||||
/// <summary>
|
||||
/// 绑定数据仓库的数据库ID
|
||||
/// </summary>
|
||||
private string dataDBNumber = GlobalContext.SystemConfig.DataDBNumber;
|
||||
|
||||
public HistoryReportService(ISqlSugarClient context) : base(context)
|
||||
{
|
||||
}
|
||||
|
||||
public async Task<string> GetDriverGroupList()
|
||||
{
|
||||
var list_group = _context.Queryable<MetaGroupEntity>().ToList();
|
||||
var list_group = _context.AsTenant().QueryableWithAttr<MetaGroupEntity>().ToList();
|
||||
return list_group.ToJson();
|
||||
}
|
||||
|
||||
@ -66,7 +68,7 @@ namespace HT.Cloud.Service.ReportManage
|
||||
|
||||
|
||||
|
||||
var Report = _context.Ado.UseStoredProcedure().GetDataTable("Query_Report_YL", sqlParameters);
|
||||
var Report = _context.AsTenant().GetConnection(dataDBNumber).Ado.UseStoredProcedure().GetDataTable("Query_Report_YL", sqlParameters);
|
||||
Report.TableName = "Report";
|
||||
|
||||
|
||||
@ -112,7 +114,7 @@ namespace HT.Cloud.Service.ReportManage
|
||||
new SugarParameter("@enddt",enddt),
|
||||
new SugarParameter("@timeinterval",timeinterval)
|
||||
};
|
||||
var dt_Counts = _context.Ado.UseStoredProcedure().GetDataTable("Query_Report_YL_COUNT", sqlParameters);
|
||||
var dt_Counts = _context.AsTenant().GetConnection(dataDBNumber).Ado.UseStoredProcedure().GetDataTable("Query_Report_YL_COUNT", sqlParameters);
|
||||
int counts = dt_Counts.Rows[0][0].ToInt();
|
||||
return counts;
|
||||
}
|
||||
@ -133,13 +135,13 @@ namespace HT.Cloud.Service.ReportManage
|
||||
}
|
||||
public async Task<string> GetReportNewAsync(string page, string limit, string Startdt, string Enddt, string Timeinterval, string systemName)
|
||||
{
|
||||
var groupName = _context.Queryable<MetaGroupEntity>().Where(x => x.GroupDescription == systemName).First().GroupName;
|
||||
var groupName = _context.AsTenant().QueryableWithAttr<MetaGroupEntity>().Where(x => x.GroupDescription == systemName).First().GroupName;
|
||||
//SugarParameter[] sqlParameters ={
|
||||
// new SugarParameter("@startdt",Startdt),
|
||||
// new SugarParameter("@enddt",Enddt),
|
||||
// new SugarParameter("@timeinterval",Timeinterval)
|
||||
//};
|
||||
//var dt_Counts = _context.Ado.UseStoredProcedure().GetDataTable("Query_Report_YL_COUNT", sqlParameters);
|
||||
//var dt_Counts = _context.AsTenant().GetConnection(dataDBNumber).Ado.UseStoredProcedure().GetDataTable("Query_Report_YL_COUNT", sqlParameters);
|
||||
//int counts = dt_Counts.Rows[0][0].ToInt();
|
||||
string msg = "";
|
||||
int code = 0;
|
||||
@ -151,7 +153,7 @@ namespace HT.Cloud.Service.ReportManage
|
||||
new SugarParameter("@hpage",page.ToInt()),
|
||||
new SugarParameter("@hlimit",limit.ToInt())
|
||||
};
|
||||
var Report = _context.Ado.UseStoredProcedure().GetDataTable("Query_Report_PAGE", sqlReportParameters);
|
||||
var Report = _context.AsTenant().GetConnection(dataDBNumber).Ado.UseStoredProcedure().GetDataTable("Query_Report_PAGE", sqlReportParameters);
|
||||
|
||||
var jsonResult = JsonConvert.SerializeObject(Report);
|
||||
|
||||
@ -176,7 +178,7 @@ namespace HT.Cloud.Service.ReportManage
|
||||
new SugarParameter("@enddt",enddt),
|
||||
new SugarParameter("@timeinterval",timeinterval)
|
||||
};
|
||||
var Report = _context.Ado.UseStoredProcedure().GetDataTable("Query_Report_YL", sqlParameters);
|
||||
var Report = _context.AsTenant().GetConnection(dataDBNumber).Ado.UseStoredProcedure().GetDataTable("Query_Report_YL", sqlParameters);
|
||||
Report.TableName = "Report";
|
||||
|
||||
//return JsonConvert.SerializeObject(Report);
|
||||
@ -185,21 +187,21 @@ namespace HT.Cloud.Service.ReportManage
|
||||
}
|
||||
public async Task<string> GetReportFirstHead(string systemName)
|
||||
{
|
||||
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_ReportEntity>($"SELECT * FROM HT_{driverName}_{groupName}_REPORT");
|
||||
//var list = _context.Queryable<Ht_History_ReportEntity>().ToList();
|
||||
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_ReportEntity>($"SELECT * FROM HT_{driverName}_{groupName}_REPORT");
|
||||
//var list = _context.AsTenant().QueryableWithAttr<Ht_History_ReportEntity>().ToList();
|
||||
List<string> list_name_two = list.Select(t => t.HSYS).GroupBy(c => c).Select(c => c.First()).ToList();
|
||||
return list_name_two.ToJson();
|
||||
}
|
||||
|
||||
public async Task<string> GetReportSecondHead(string systemName)
|
||||
{
|
||||
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_ReportEntity>($"SELECT * FROM HT_{driverName}_{groupName}_REPORT");
|
||||
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_ReportEntity>($"SELECT * FROM HT_{driverName}_{groupName}_REPORT");
|
||||
List<string> list_name_two = list.Select(t => t.HSYS).GroupBy(c => c).Select(c => c.First()).ToList();
|
||||
var relist = new List<SecondHead>();
|
||||
foreach(var t in list_name_two)
|
||||
|
@ -14,13 +14,18 @@ namespace HT.Cloud.Service.ReportManage
|
||||
{
|
||||
public class MetaTagAlarmService : BaseService<MetaTagAlarmEntity>, IDenpendency
|
||||
{
|
||||
/// <summary>
|
||||
/// 绑定数据仓库的数据库ID
|
||||
/// </summary>
|
||||
private string dataDBNumber = GlobalContext.SystemConfig.DataDBNumber;
|
||||
|
||||
public MetaTagAlarmService(ISqlSugarClient context) : base(context)
|
||||
{
|
||||
}
|
||||
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)
|
||||
{
|
||||
@ -32,7 +37,7 @@ namespace HT.Cloud.Service.ReportManage
|
||||
public async Task<string> GetAllSubsystemTag()
|
||||
{
|
||||
List<SubsysytemNameList> subsystems = new List<SubsysytemNameList>();
|
||||
var grouped = repository.IQueryable().ToList();
|
||||
var grouped = _context.AsTenant().QueryableWithAttr<MetaTagAlarmEntity>().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)
|
||||
@ -46,7 +51,7 @@ namespace HT.Cloud.Service.ReportManage
|
||||
{
|
||||
|
||||
var subsysname = subsysytemName;
|
||||
var response = repository.IQueryable().Where(x => x.Subsystem == subsysname).Select(x => new { x.TagID, x.Description, x.Units }).ToList();
|
||||
var response = _context.AsTenant().QueryableWithAttr<MetaTagAlarmEntity>().Where(x => x.Subsystem == subsysname).Select(x => new { x.TagID, x.Description, x.Units }).ToList();
|
||||
var reList = new List<SubAllTagReturn>();
|
||||
foreach (var subsystem in response)
|
||||
{
|
||||
@ -72,7 +77,7 @@ namespace HT.Cloud.Service.ReportManage
|
||||
new SugarParameter("@Htagid",tagid)
|
||||
|
||||
};
|
||||
var dt = _context.Ado.UseStoredProcedure().GetDataTable("Query_Tag_Alarm", sqlParameters);
|
||||
var dt = _context.AsTenant().GetConnection(dataDBNumber).Ado.UseStoredProcedure().GetDataTable("Query_Tag_Alarm", sqlParameters);
|
||||
var valuelist = DataTableConvertModel<AlarmValue>.ConvertDataTableToList(dt);
|
||||
return valuelist.ToJson();
|
||||
|
||||
@ -127,7 +132,7 @@ namespace HT.Cloud.Service.ReportManage
|
||||
|
||||
|
||||
};
|
||||
var dt = _context.Ado.UseStoredProcedure().GetDataTable("Query_Tag_Alarm_Count", sqlParameters);
|
||||
var dt = _context.AsTenant().GetConnection(dataDBNumber).Ado.UseStoredProcedure().GetDataTable("Query_Tag_Alarm_Count", sqlParameters);
|
||||
var valuelist = DataTableConvertModel<AlarmValueCount>.ConvertDataTableToList(dt);
|
||||
return valuelist.ToJson();
|
||||
|
||||
@ -140,14 +145,14 @@ namespace HT.Cloud.Service.ReportManage
|
||||
{
|
||||
new SugarParameter("@Hhour",Hhour)
|
||||
};
|
||||
var dt = _context.Ado.UseStoredProcedure().GetDataTable("Query_Tag_Alarm_History", sqlParameters);
|
||||
var dt = _context.AsTenant().GetConnection(dataDBNumber).Ado.UseStoredProcedure().GetDataTable("Query_Tag_Alarm_History", sqlParameters);
|
||||
var valuelist = DataTableConvertModel<AlarmValueCountDesc>.ConvertDataTableToList(dt);
|
||||
return valuelist.ToJson();
|
||||
|
||||
}
|
||||
public async Task<string> GetAlarmSubSystem(string alarmName)
|
||||
{
|
||||
var subSystem = repository.IQueryable().Where(x => x.Description == alarmName).First().Subsystem;
|
||||
var subSystem = _context.AsTenant().QueryableWithAttr<MetaTagAlarmEntity>().Where(x => x.Description == alarmName).First().Subsystem;
|
||||
return subSystem.ToJson();
|
||||
}
|
||||
private class AlarmValueCount
|
||||
|
@ -13,21 +13,27 @@ using Newtonsoft.Json.Linq;
|
||||
using System.Data;
|
||||
using HT.Cloud.Code;
|
||||
using HT.Cloud.Domain.ChartsManage;
|
||||
using HT.Cloud.Domain.DevicesManage;
|
||||
|
||||
namespace HT.Cloud.Service.ReportManage
|
||||
{
|
||||
public class RtReportService : BaseService<RtReportEntity>, IDenpendency
|
||||
{
|
||||
/// <summary>
|
||||
/// 绑定数据仓库的数据库ID
|
||||
/// </summary>
|
||||
private string dataDBNumber = GlobalContext.SystemConfig.DataDBNumber;
|
||||
|
||||
public RtReportService(ISqlSugarClient context) : base(context)
|
||||
{
|
||||
}
|
||||
|
||||
public async Task<string> GetRtSubsysTagValue()
|
||||
{
|
||||
var srcList = repository.IQueryable().ToList();
|
||||
var srcList = _context.AsTenant().QueryableWithAttr<RtReportEntity>().ToList();
|
||||
|
||||
|
||||
var remoteRtDataServer = _context.Queryable<RtchartsEntity>().First().remotertdataserver;
|
||||
var remoteRtDataServer = _context.AsTenant().QueryableWithAttr<RtchartsEntity>().First().remotertdataserver;
|
||||
|
||||
var responseStr = RemoteHttpRequest.HttpGet(remoteRtDataServer);
|
||||
|
||||
|
@ -312,9 +312,9 @@
|
||||
} else { }
|
||||
});
|
||||
|
||||
GetDriverGroupList();
|
||||
//GetDriverGroupList();
|
||||
|
||||
//GetAllSubsystemTag();
|
||||
GetAllSubsystemTag();
|
||||
|
||||
var starttime = new Date(new Date().setHours(0, 0, 0, 0));
|
||||
var starttimeString = starttime.getFullYear() + "-" + parseInt(starttime.getMonth() + 1) + "-" + starttime.getDate() + " " + (starttime.getHours()) + ":" + starttime.getMinutes() + ":" + starttime.getSeconds();
|
||||
@ -388,60 +388,60 @@
|
||||
|
||||
var StaticSelectTagList = new Array();
|
||||
//获取所有变量组
|
||||
async function GetDriverGroupList() {
|
||||
debugger;
|
||||
$.ajax({
|
||||
url: "/ChartsManage/HistoryCharts/GetDriverGroupList",
|
||||
type: "Get",
|
||||
success: function (redata) {
|
||||
debugger;
|
||||
var listsubsysname = JSON.parse(redata);
|
||||
$('#groupselect').combobox({
|
||||
data: listsubsysname,
|
||||
valueField: 'Lable',
|
||||
textField: 'Value',
|
||||
value :'请选择系统',
|
||||
checkOnSelect: true,
|
||||
selectOnCheck: true
|
||||
});
|
||||
$('#subsystemselect').combobox({
|
||||
//async function GetDriverGroupList() {
|
||||
// debugger;
|
||||
// $.ajax({
|
||||
// url: "/ChartsManage/HistoryCharts/GetDriverGroupList",
|
||||
// type: "Get",
|
||||
// success: function (redata) {
|
||||
// debugger;
|
||||
// var listsubsysname = JSON.parse(redata);
|
||||
// $('#groupselect').combobox({
|
||||
// data: listsubsysname,
|
||||
// valueField: 'Lable',
|
||||
// textField: 'Value',
|
||||
// value :'请选择系统',
|
||||
// checkOnSelect: true,
|
||||
// selectOnCheck: true
|
||||
// });
|
||||
// $('#subsystemselect').combobox({
|
||||
|
||||
value: '请先选择系统',
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
var StaticGroupDescription = "";
|
||||
updateGroupSelect = async function (data) {
|
||||
StaticGroupDescription = data.Value;
|
||||
var para = { "GroupDescription": data.Value }
|
||||
//var subsystemAllTag = await Call(api.DataHistoryCharts.GetSubsystemAllTag, para);
|
||||
debugger;
|
||||
$.ajax({
|
||||
url: "/ChartsManage/HistoryCharts/GetGroupSubsystemTag",
|
||||
type: "Post",
|
||||
//dataType: "json",
|
||||
data: para,
|
||||
success: function (redata) {
|
||||
var listsubsysname = JSON.parse(redata);
|
||||
$('#subsystemselect').combobox({
|
||||
data: listsubsysname,
|
||||
valueField: 'Lable',
|
||||
textField: 'Value',
|
||||
value: '请选择子系统',
|
||||
checkOnSelect: true,
|
||||
selectOnCheck: true
|
||||
});
|
||||
}
|
||||
});
|
||||
// value: '请先选择系统',
|
||||
// });
|
||||
// }
|
||||
// });
|
||||
//}
|
||||
//var StaticGroupDescription = "";
|
||||
//updateGroupSelect = async function (data) {
|
||||
// StaticGroupDescription = data.Value;
|
||||
// var para = { "GroupDescription": data.Value }
|
||||
// //var subsystemAllTag = await Call(api.DataHistoryCharts.GetSubsystemAllTag, para);
|
||||
// debugger;
|
||||
// $.ajax({
|
||||
// url: "/ChartsManage/HistoryCharts/GetGroupSubsystemTag",
|
||||
// type: "Post",
|
||||
// //dataType: "json",
|
||||
// data: para,
|
||||
// success: function (redata) {
|
||||
// var listsubsysname = JSON.parse(redata);
|
||||
// $('#subsystemselect').combobox({
|
||||
// data: listsubsysname,
|
||||
// valueField: 'Lable',
|
||||
// textField: 'Value',
|
||||
// value: '请选择子系统',
|
||||
// checkOnSelect: true,
|
||||
// selectOnCheck: true
|
||||
// });
|
||||
// }
|
||||
// });
|
||||
|
||||
|
||||
}
|
||||
//}
|
||||
//获取所有子系统列表ok 废弃
|
||||
async function GetAllSubsystemTag() {
|
||||
debugger;
|
||||
$.ajax({
|
||||
url: "/ChartsManage/HistoryCharts/GetAllSubsystemTag",
|
||||
url: "/PenMeiChartsManage/PenMeiHistoryCharts/GetAllSubsystemTag",
|
||||
type: "Get",
|
||||
//dataType: "json",
|
||||
//async: false,
|
||||
@ -463,11 +463,11 @@
|
||||
//获取选中子系统tag
|
||||
updateSelect = async function (data) {
|
||||
//var groupDescription = ('#groupselect').combobox().getValue();
|
||||
var para = { "GroupDescription": StaticGroupDescription, "SubsysytemName": data.Value }
|
||||
var para = { /*"GroupDescription": StaticGroupDescription,*/ "SubsysytemName": data.Value }
|
||||
//var subsystemAllTag = await Call(api.DataHistoryCharts.GetSubsystemAllTag, para);
|
||||
debugger;
|
||||
myajax = $.ajax({
|
||||
url: "/ChartsManage/HistoryCharts/GetSubsystemAllTag",
|
||||
url: "/PenMeiChartsManage/PenMeiHistoryCharts/GetSubsystemAllTag",
|
||||
type: "Post",
|
||||
//dataType: "json",
|
||||
data: para,
|
||||
@ -559,7 +559,7 @@
|
||||
let datapa = { "TagID": StaticSelectTagList[si].TagID, "StartTime": Date.parse(new Date(datetimestart)), "EndTime": Date.parse(new Date(datetimeend)), "Interval": timeInterval };
|
||||
let result;
|
||||
myajax = await $.ajax({
|
||||
url: "/ChartsManage/HistoryCharts/GetChartsTagValue",
|
||||
url: "/PenMeiChartsManage/PenMeiHistoryCharts/GetChartsTagValue",
|
||||
type: "Post",
|
||||
//dataType: "json",
|
||||
data: datapa,
|
||||
@ -625,10 +625,10 @@
|
||||
// min: 0,
|
||||
// 让表格的刻度向靠里侧显示
|
||||
axisTick: {
|
||||
inside: false
|
||||
inside: true
|
||||
},
|
||||
axisLabel: {
|
||||
inside: false,
|
||||
inside: true,
|
||||
align: 'left',
|
||||
verticalAlign: 'bottom',
|
||||
},
|
||||
@ -825,8 +825,8 @@
|
||||
@*<ul id="dataTree" class="dtree" data-id="0"></ul>*@
|
||||
<div id="aleft" style="float:left;width:100%;height:100%">
|
||||
<div class="easyui-panel" title="选择设备信息" style="width:100%;height:100%">
|
||||
<div class="easyui-combobox" id="groupselect" name="group" data-options="onSelect:function(rec){updateGroupSelect(rec)}" style="width:100%;height:40px">
|
||||
</div>
|
||||
@*<div class="easyui-combobox" id="groupselect" name="group" data-options="onSelect:function(rec){updateGroupSelect(rec)}" style="width:100%;height:40px">
|
||||
</div>*@
|
||||
<div class="easyui-combobox" id="subsystemselect" name="state" data-options="onSelect:function(rec){updateSelect(rec)}" style="width:100%;height:40px">
|
||||
</div>
|
||||
<div class="easyui-datalist" id="subsystemTagList" title="变量列表" style="position: relative;width:100%;height:auto;overflow:auto;" data-options="
|
||||
|
@ -0,0 +1,968 @@
|
||||
@{
|
||||
ViewBag.Title = "Index";
|
||||
Layout = "~/Views/Shared/_Index.cshtml";
|
||||
}
|
||||
<style>
|
||||
|
||||
.layui-table-tool > .layui-table-tool-temp {
|
||||
padding-right: 0px;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
|
||||
layui.use(['jquery', 'form', 'table', 'common', 'dtree', 'commonTable', 'optimizeSelectOption'], function () {
|
||||
var $ = layui.jquery,
|
||||
form = layui.form,
|
||||
commonTable = layui.commonTable,
|
||||
table = layui.table,
|
||||
dtree = layui.dtree,
|
||||
//echarts = layui.echarts,
|
||||
common = layui.common;
|
||||
//加载数据
|
||||
wcLoading.close();
|
||||
//权限控制(js是值传递)
|
||||
//toolbarDemo.innerHTML = common.authorizeButtonNew(toolbarDemo.innerHTML);
|
||||
|
||||
form.on('select(quickTime)', function (data) {
|
||||
var selectValue = data.value;
|
||||
|
||||
function getFormatDate(date) {
|
||||
let year = date.getFullYear();
|
||||
let month = date.getMonth() + 1;
|
||||
let day = date.getDate();
|
||||
let hour = date.getHours();
|
||||
let minutes = date.getMinutes();
|
||||
let seconds = date.getSeconds();
|
||||
month = (month < 10) ? '0' + month : month;
|
||||
day = (day < 10) ? '0' + day : day;
|
||||
hour = (hour < 10) ? '0' + hour : hour;
|
||||
minutes = (minutes < 10) ? '0' + minutes : minutes;
|
||||
seconds = (seconds < 10) ? '0' + seconds : seconds;
|
||||
let currentDate = year + "-" + month + "-" + day
|
||||
+ " " + hour + ":" + minutes + ":" + seconds;
|
||||
return currentDate;
|
||||
}
|
||||
/**
|
||||
* 获取今日零点时间戳
|
||||
* returns {number}
|
||||
*/
|
||||
function todayStartTimestamp() {
|
||||
const timestamp = Math.floor(new Date(new Date().setHours(0, 0, 0, 0)).getTime() / 1000)
|
||||
return timestamp
|
||||
}
|
||||
/**
|
||||
* 获取昨日开始、结束时间戳
|
||||
* param num
|
||||
* returns {number[昨日开始时间戳, 昨日结束时间戳]}
|
||||
*/
|
||||
function yesterdayTimestamp(num = 1) {
|
||||
const MillisecondsADay = 24 * 60 * 60 * num
|
||||
// 今日零点时间戳
|
||||
const timestamp = Math.floor(new Date(new Date().setHours(0, 0, 0, 0)).getTime() / 1000)
|
||||
// 昨日开始时间戳
|
||||
const yesterdayStartTime = timestamp - MillisecondsADay
|
||||
// 昨日结束时间戳
|
||||
const yesterdayEndTime = timestamp - 1
|
||||
return [yesterdayStartTime, yesterdayEndTime]
|
||||
}
|
||||
/**
|
||||
* 本周开始时间戳
|
||||
* returns {number}
|
||||
*/
|
||||
function weekStartTimestamp() {
|
||||
// 一天的秒数
|
||||
const MillisecondsADay = 24 * 60 * 60
|
||||
// 今日零点时间戳
|
||||
const timestamp = Math.floor(new Date(new Date().setHours(0, 0, 0, 0)).getTime() / 1000)
|
||||
const weekDay = new Date().getDay() === 0 ? (7 - 1) : (new Date().getDay() - 1)
|
||||
const weekTimeStamp = timestamp - MillisecondsADay * weekDay
|
||||
return weekTimeStamp
|
||||
}
|
||||
/**
|
||||
* 上周开始、结束时间戳
|
||||
* returns {number[上周开始时间戳, 上周结束时间戳]}
|
||||
*/
|
||||
function lastWeekTimetamp() {
|
||||
// 一天的秒数
|
||||
const MillisecondsADay = 24 * 60 * 60
|
||||
// 今日零点时间戳
|
||||
const timestamp = Math.floor(new Date(new Date().setHours(0, 0, 0, 0)).getTime() / 1000)
|
||||
const weekDay = new Date().getDay() === 0 ? (7 - 1) : (new Date().getDay() - 1)
|
||||
// 本周开始时间戳
|
||||
const weekTimeStamp = timestamp - MillisecondsADay * weekDay
|
||||
// 上周开始时间戳
|
||||
const lastWeekStart = weekTimeStamp - MillisecondsADay * 7
|
||||
// 上周结束时间戳
|
||||
const lastWeekEnd = weekTimeStamp - 1
|
||||
return [lastWeekStart, lastWeekEnd]
|
||||
}
|
||||
|
||||
/**
|
||||
* 当月开始时间戳
|
||||
* returns {number}
|
||||
*/
|
||||
function monthStartTimestamp() {
|
||||
const date = new Date()
|
||||
date.setDate(1)
|
||||
date.setHours(0, 0, 0, 0)
|
||||
const timeStamp = date.getTime() / 1000
|
||||
return timeStamp
|
||||
}
|
||||
/**
|
||||
* 获取上月开始、结束时间戳
|
||||
* returns {number[上月开始时间戳,上月结束时间戳]}
|
||||
*/
|
||||
function lastMonthTimetamp() {
|
||||
// 一天的秒数
|
||||
const MillisecondsADay = 24 * 60 * 60
|
||||
|
||||
const date = new Date()
|
||||
date.setDate(1)
|
||||
date.setHours(0, 0, 0, 0)
|
||||
// 当月开始时间戳
|
||||
const timeStamp = date.getTime() / 1000
|
||||
// 上个月的天数
|
||||
const days = lastMonthDats()
|
||||
// 上月开始时间戳
|
||||
const lastMonthStart = timeStamp - (MillisecondsADay * days)
|
||||
// 上月结束时间戳
|
||||
const lastMonthEnd = timeStamp - 1
|
||||
return [lastMonthStart, lastMonthEnd]
|
||||
}
|
||||
/**
|
||||
* 上月天数
|
||||
* returns {number}
|
||||
*/
|
||||
function lastMonthDats() {
|
||||
const date = new Date()
|
||||
const year = date.getFullYear()
|
||||
// 上个月月份
|
||||
let month = (date.getMonth() + 1) - 1 // 0-11 表示 1月-12月
|
||||
// 0 表示12月
|
||||
month = month || 12
|
||||
// 30天的月份
|
||||
const arr30 = [4, 6, 9, 11]
|
||||
// 31天的月份
|
||||
const arr31 = [1, 3, 5, 7, 8, 10, 12]
|
||||
if (arr30.indexOf(month) !== -1) {
|
||||
// 上个月是 30 天
|
||||
return 30
|
||||
} else if (arr31.indexOf(month) !== -1) {
|
||||
// 上个月是 31 天
|
||||
return 31
|
||||
} else {
|
||||
// 2月
|
||||
if (isRunYear(year)) {
|
||||
return 29
|
||||
} else {
|
||||
return 28
|
||||
}
|
||||
}
|
||||
}
|
||||
/**
|
||||
* 是否为闰年
|
||||
* param year
|
||||
* returns {boolean}
|
||||
*/
|
||||
function isRunYear(year) {
|
||||
// 条件:能被4整除并且不能被100整除,或者被400整除的
|
||||
let flag = false
|
||||
if (year % 4 === 0 && year % 100 !== 0 || year % 400 === 0) {
|
||||
flag = true
|
||||
}
|
||||
return flag
|
||||
}
|
||||
|
||||
var laydate = layui.laydate;
|
||||
if (selectValue == "toDay") {
|
||||
var toDayStartDate = todayStartTimestamp();
|
||||
var timef1 = getFormatDate(new Date(toDayStartDate * 1000));
|
||||
lay('#dateReStartTime').each(function () {
|
||||
laydate.render({
|
||||
elem: this,
|
||||
trigger: 'click',
|
||||
format: "yyyy-MM-dd HH:mm:ss",
|
||||
//value: "2023-02-23 13:56:25",
|
||||
value: timef1,
|
||||
});
|
||||
});
|
||||
var timef2 = getFormatDate(new Date(Date.now()));
|
||||
lay('#dateReEndTime').each(function () {
|
||||
laydate.render({
|
||||
elem: this,
|
||||
trigger: 'click',
|
||||
format: "yyyy-MM-dd HH:mm:ss",
|
||||
//value: "2023-02-23 13:56:25",
|
||||
value: timef2,
|
||||
});
|
||||
});
|
||||
} else if (selectValue == "yesterDay") {
|
||||
var yesterDayDate = yesterdayTimestamp(1);
|
||||
var timef1 = getFormatDate(new Date(yesterDayDate[0] * 1000));
|
||||
lay('#dateReStartTime').each(function () {
|
||||
laydate.render({
|
||||
elem: this,
|
||||
trigger: 'click',
|
||||
format: "yyyy-MM-dd HH:mm:ss",
|
||||
//value: "2023-02-23 13:56:25",
|
||||
value: timef1,
|
||||
});
|
||||
});
|
||||
var timef2 = getFormatDate(new Date(yesterDayDate[1] * 1000));
|
||||
lay('#dateReEndTime').each(function () {
|
||||
laydate.render({
|
||||
elem: this,
|
||||
trigger: 'click',
|
||||
format: "yyyy-MM-dd HH:mm:ss",
|
||||
//value: "2023-02-23 13:56:25",
|
||||
value: timef2,
|
||||
});
|
||||
});
|
||||
} else if (selectValue == "thisWeek") {
|
||||
var weekStartDate = weekStartTimestamp();
|
||||
var timef1 = getFormatDate(new Date(weekStartDate * 1000));
|
||||
lay('#dateReStartTime').each(function () {
|
||||
laydate.render({
|
||||
elem: this,
|
||||
trigger: 'click',
|
||||
format: "yyyy-MM-dd HH:mm:ss",
|
||||
//value: "2023-02-23 13:56:25",
|
||||
value: timef1,
|
||||
});
|
||||
});
|
||||
var timef2 = getFormatDate(new Date(Date.now()));
|
||||
lay('#dateReEndTime').each(function () {
|
||||
laydate.render({
|
||||
elem: this,
|
||||
trigger: 'click',
|
||||
format: "yyyy-MM-dd HH:mm:ss",
|
||||
//value: "2023-02-23 13:56:25",
|
||||
value: timef2,
|
||||
});
|
||||
});
|
||||
|
||||
} else if (selectValue == "lastWeek") {
|
||||
var lastWeekDate = lastWeekTimetamp();
|
||||
var timef1 = getFormatDate(new Date(lastWeekDate[0] * 1000));
|
||||
lay('#dateReStartTime').each(function () {
|
||||
laydate.render({
|
||||
elem: this,
|
||||
trigger: 'click',
|
||||
format: "yyyy-MM-dd HH:mm:ss",
|
||||
//value: "2023-02-23 13:56:25",
|
||||
value: timef1,
|
||||
});
|
||||
});
|
||||
var timef2 = getFormatDate(new Date(lastWeekDate[1] * 1000));
|
||||
lay('#dateReEndTime').each(function () {
|
||||
laydate.render({
|
||||
elem: this,
|
||||
trigger: 'click',
|
||||
format: "yyyy-MM-dd HH:mm:ss",
|
||||
//value: "2023-02-23 13:56:25",
|
||||
value: timef2,
|
||||
});
|
||||
});
|
||||
} else if (selectValue == "thisMonth") {
|
||||
var monthStartDate = monthStartTimestamp();
|
||||
var timef = getFormatDate(new Date(monthStartDate * 1000));
|
||||
lay('#dateReStartTime').each(function () {
|
||||
laydate.render({
|
||||
elem: this,
|
||||
trigger: 'click',
|
||||
format: "yyyy-MM-dd HH:mm:ss",
|
||||
//value: "2023-02-23 13:56:25",
|
||||
value: timef,
|
||||
});
|
||||
});
|
||||
var timef2 = getFormatDate(new Date(Date.now()));
|
||||
lay('#dateReEndTime').each(function () {
|
||||
laydate.render({
|
||||
elem: this,
|
||||
trigger: 'click',
|
||||
format: "yyyy-MM-dd HH:mm:ss",
|
||||
//value: "2023-02-23 13:56:25",
|
||||
value: timef2,
|
||||
});
|
||||
});
|
||||
|
||||
} else if (selectValue == "lastMonth") {
|
||||
//lastMonthTimetamp()
|
||||
var lastMonthDate = lastMonthTimetamp();
|
||||
var timef1 = getFormatDate(new Date(lastMonthDate[0] * 1000));
|
||||
lay('#dateReStartTime').each(function () {
|
||||
laydate.render({
|
||||
elem: this,
|
||||
trigger: 'click',
|
||||
format: "yyyy-MM-dd HH:mm:ss",
|
||||
//value: "2023-02-23 13:56:25",
|
||||
value: timef1,
|
||||
});
|
||||
});
|
||||
var timef2 = getFormatDate(new Date(lastMonthDate[1] * 1000));
|
||||
lay('#dateReEndTime').each(function () {
|
||||
laydate.render({
|
||||
elem: this,
|
||||
trigger: 'click',
|
||||
format: "yyyy-MM-dd HH:mm:ss",
|
||||
//value: "2023-02-23 13:56:25",
|
||||
value: timef2,
|
||||
});
|
||||
});
|
||||
} else { }
|
||||
});
|
||||
|
||||
GetDriverGroupList();
|
||||
|
||||
//GetAllSubsystemTag();
|
||||
|
||||
var starttime = new Date(new Date().setHours(0, 0, 0, 0));
|
||||
var starttimeString = starttime.getFullYear() + "-" + parseInt(starttime.getMonth() + 1) + "-" + starttime.getDate() + " " + (starttime.getHours()) + ":" + starttime.getMinutes() + ":" + starttime.getSeconds();
|
||||
var endtime = new Date();
|
||||
endtime.setDate(endtime.getDate())
|
||||
var endtimeString = endtime.getFullYear() + "-" + parseInt(endtime.getMonth() + 1) + "-" + endtime.getDate() + " " + (endtime.getHours()) + ":" + endtime.getMinutes() + ":" + endtime.getSeconds();
|
||||
function getFormatDateone(date) {
|
||||
let year = date.getFullYear();
|
||||
let month = date.getMonth() + 1;
|
||||
let day = date.getDate();
|
||||
let hour = date.getHours();
|
||||
let minutes = date.getMinutes();
|
||||
let seconds = date.getSeconds();
|
||||
month = (month < 10) ? '0' + month : month;
|
||||
day = (day < 10) ? '0' + day : day;
|
||||
hour = (hour < 10) ? '0' + hour : hour;
|
||||
minutes = (minutes < 10) ? '0' + minutes : minutes;
|
||||
seconds = (seconds < 10) ? '0' + seconds : seconds;
|
||||
let currentDate = year + "-" + month + "-" + day
|
||||
+ " " + hour + ":" + minutes + ":" + seconds;
|
||||
return currentDate;
|
||||
}
|
||||
layui.use('laydate', function () {
|
||||
var laydate = layui.laydate;
|
||||
lay('#dateReStartTime').each(function () {
|
||||
laydate.render({
|
||||
elem: this,
|
||||
trigger: 'click',
|
||||
format: "yyyy-MM-dd HH:mm:ss",
|
||||
//value: "2023-02-23 13:56:25",
|
||||
value: getFormatDateone(starttime),
|
||||
});
|
||||
});
|
||||
lay('#dateReEndTime').each(function () {
|
||||
laydate.render({
|
||||
elem: this,
|
||||
trigger: 'click',
|
||||
format: "yyyy-MM-dd HH:mm:ss",
|
||||
//value: "2023-02-23 13:56:25",
|
||||
value: getFormatDateone(endtime),
|
||||
});
|
||||
});
|
||||
});
|
||||
function getFormatDate(date) {
|
||||
let year = date.getFullYear();
|
||||
let month = date.getMonth() + 1;
|
||||
let day = date.getDate();
|
||||
let hour = date.getHours();
|
||||
let minutes = date.getMinutes();
|
||||
let seconds = date.getSeconds();
|
||||
month = (month < 10) ? '0' + month : month;
|
||||
day = (day < 10) ? '0' + day : day;
|
||||
hour = (hour < 10) ? '0' + hour : hour;
|
||||
minutes = (minutes < 10) ? '0' + minutes : minutes;
|
||||
seconds = (seconds < 10) ? '0' + seconds : seconds;
|
||||
let currentDate = year + "-" + month + "-" + day
|
||||
+ " " + hour + ":" + minutes + ":" + seconds;
|
||||
return currentDate;
|
||||
}
|
||||
|
||||
function json_array(data) {
|
||||
var len = eval(data).length;
|
||||
var arr = [];
|
||||
for (var i = 0; i < len; i++) {
|
||||
arr[i] = []; //js中二维数组必须进行重复的声明,否则会undefind
|
||||
arr[i]['url'] = data[i].url;
|
||||
arr[i]['oldname'] = data[i].oldname;
|
||||
}
|
||||
return arr;
|
||||
}
|
||||
|
||||
var StaticSelectTagList = new Array();
|
||||
//获取所有变量组
|
||||
async function GetDriverGroupList() {
|
||||
debugger;
|
||||
$.ajax({
|
||||
url: "/ChartsManage/HistoryCharts/GetDriverGroupList",
|
||||
type: "Get",
|
||||
success: function (redata) {
|
||||
debugger;
|
||||
var listsubsysname = JSON.parse(redata);
|
||||
$('#groupselect').combobox({
|
||||
data: listsubsysname,
|
||||
valueField: 'Lable',
|
||||
textField: 'Value',
|
||||
value :'请选择系统',
|
||||
checkOnSelect: true,
|
||||
selectOnCheck: true
|
||||
});
|
||||
$('#subsystemselect').combobox({
|
||||
|
||||
value: '请先选择系统',
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
var StaticGroupDescription = "";
|
||||
updateGroupSelect = async function (data) {
|
||||
StaticGroupDescription = data.Value;
|
||||
var para = { "GroupDescription": data.Value }
|
||||
//var subsystemAllTag = await Call(api.DataHistoryCharts.GetSubsystemAllTag, para);
|
||||
debugger;
|
||||
$.ajax({
|
||||
url: "/ChartsManage/HistoryCharts/GetGroupSubsystemTag",
|
||||
type: "Post",
|
||||
//dataType: "json",
|
||||
data: para,
|
||||
success: function (redata) {
|
||||
var listsubsysname = JSON.parse(redata);
|
||||
$('#subsystemselect').combobox({
|
||||
data: listsubsysname,
|
||||
valueField: 'Lable',
|
||||
textField: 'Value',
|
||||
value: '请选择子系统',
|
||||
checkOnSelect: true,
|
||||
selectOnCheck: true
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
//获取所有子系统列表ok 废弃
|
||||
async function GetAllSubsystemTag() {
|
||||
debugger;
|
||||
$.ajax({
|
||||
url: "/ChartsManage/HistoryCharts/GetAllSubsystemTag",
|
||||
type: "Get",
|
||||
//dataType: "json",
|
||||
//async: false,
|
||||
//data: datapa,
|
||||
success: function (redata) {
|
||||
debugger;
|
||||
var listsubsysname = JSON.parse(redata);
|
||||
$('#subsystemselect').combobox({
|
||||
data: listsubsysname,
|
||||
valueField: 'Lable',
|
||||
textField: 'Value',
|
||||
|
||||
checkOnSelect: true,
|
||||
selectOnCheck: true
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
//获取选中子系统tag
|
||||
updateSelect = async function (data) {
|
||||
//var groupDescription = ('#groupselect').combobox().getValue();
|
||||
var para = { "GroupDescription": StaticGroupDescription, "SubsysytemName": data.Value }
|
||||
//var subsystemAllTag = await Call(api.DataHistoryCharts.GetSubsystemAllTag, para);
|
||||
debugger;
|
||||
myajax = $.ajax({
|
||||
url: "/ChartsManage/HistoryCharts/GetSubsystemAllTag",
|
||||
type: "Post",
|
||||
//dataType: "json",
|
||||
data: para,
|
||||
success: function (redata){}
|
||||
});
|
||||
debugger;
|
||||
$.when(myajax).done(function (redata){
|
||||
var subsystemAllTag = JSON.parse(redata);
|
||||
$('#subsystemTagList').datalist({
|
||||
data: subsystemAllTag,
|
||||
valueField: 'TagID',
|
||||
textField: 'Description',
|
||||
idField: 'TagID',
|
||||
});
|
||||
var datalistArr = $('#subsystemTagList').datalist("getData").rows;
|
||||
if (datalistArr.length > 0 && StaticSelectTagList.length > 0) {
|
||||
for (var ni = 0; ni < datalistArr.length; ni++) {
|
||||
if (StaticSelectTagList.indexOf(datalistArr[i]) != -1) {
|
||||
$('#subsystemTagList').datalist("selectRecord", datalistArr[i].TagID);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$('#subsystemTagList').datalist('resize', {
|
||||
height: ($('#aright').height() - 75)
|
||||
});
|
||||
});
|
||||
|
||||
}
|
||||
checkTagAdd = function (rowIndex, rowData) {
|
||||
checkAddTaglist(rowData);
|
||||
}
|
||||
|
||||
function checkAddTaglist(rowData) {
|
||||
if (StaticSelectTagList.indexOf(rowData) == -1) {
|
||||
StaticSelectTagList.push(rowData);
|
||||
}
|
||||
}
|
||||
|
||||
checkTagDec = function (rowIndex, rowData) {
|
||||
checkDecTaglist(rowData);
|
||||
|
||||
}
|
||||
|
||||
function checkDecTaglist(rowData) {
|
||||
if (StaticSelectTagList.indexOf(rowData) != -1) {
|
||||
StaticSelectTagList.splice(StaticSelectTagList.indexOf(rowData), 1);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//获取tagvalue
|
||||
async function GetChartsTagValue() {
|
||||
var chardatalist = new Array();
|
||||
for (var si = 0; si < StaticSelectTagList.length; si++) {
|
||||
let datetimestart = $('#dateReStartTime')[0].value;
|
||||
let datetimeend = $('#dateReEndTime')[0].value;
|
||||
let timeInterval = 0;
|
||||
switch ($('[name="selectint"]')[0].value) {
|
||||
case "tensec":
|
||||
timeInterval = 10
|
||||
break
|
||||
case "twentysec":
|
||||
timeInterval = 20
|
||||
break
|
||||
case "thirtysec":
|
||||
timeInterval = 30
|
||||
break
|
||||
case "onemin":
|
||||
timeInterval = 60
|
||||
break
|
||||
case "fivemin":
|
||||
timeInterval = 300
|
||||
break
|
||||
case "tenmin":
|
||||
timeInterval = 600
|
||||
break
|
||||
case "thirtymin":
|
||||
timeInterval = 1800
|
||||
break
|
||||
case "onehour":
|
||||
timeInterval = 3600
|
||||
break
|
||||
default:
|
||||
timeInterval = 3600
|
||||
};
|
||||
let datapa = { "TagID": StaticSelectTagList[si].TagID, "StartTime": Date.parse(new Date(datetimestart)), "EndTime": Date.parse(new Date(datetimeend)), "Interval": timeInterval };
|
||||
let result;
|
||||
myajax = await $.ajax({
|
||||
url: "/ChartsManage/HistoryCharts/GetChartsTagValue",
|
||||
type: "Post",
|
||||
//dataType: "json",
|
||||
data: datapa,
|
||||
success: function (redata) { }
|
||||
});
|
||||
debugger;
|
||||
$.when(myajax).done(function (redata){
|
||||
result = JSON.parse(redata);
|
||||
});
|
||||
//let result = await Call(api.DataHistoryCharts.GetChartsTagValue, datapa);
|
||||
chardatalist.push(result)
|
||||
}
|
||||
//var myChart = echarts.init(document.getElementById('chart'));
|
||||
//myChart = echarts.init(document.getElementById('chart'));
|
||||
return chardatalist;
|
||||
}
|
||||
|
||||
|
||||
|
||||
showchart = async function () {
|
||||
//(document.getElementById('echarts-records'), 'walden');
|
||||
var myChart = echarts.init(document.getElementById('result'),'walden');
|
||||
|
||||
myChart.hideLoading();
|
||||
myChart.showLoading();
|
||||
|
||||
var chardatalist = await GetChartsTagValue();
|
||||
|
||||
|
||||
debugger;
|
||||
myChart.dispose();
|
||||
|
||||
var xDataArr = new Array();
|
||||
var yDataArr = new Array();
|
||||
for (var listindex = 0; listindex < chardatalist.length; listindex++) {
|
||||
let ydata = chardatalist[listindex].map(x => { return x.value });
|
||||
let xdata = chardatalist[listindex].map(x => { return x.name });
|
||||
xDataArr.push(xdata);
|
||||
yDataArr.push(ydata);
|
||||
}
|
||||
var lightwhite = 0;
|
||||
if (chardatalist.length > 1) {
|
||||
lightwhite = (chardatalist.length - 1) * 100;
|
||||
}
|
||||
|
||||
//var lightwhite = (chardatalist.length) * 100;
|
||||
var color = new Array();
|
||||
for (var colori = 0; colori < StaticSelectTagList.length; colori++) {
|
||||
color.push(roundrgb())
|
||||
}
|
||||
|
||||
|
||||
var yAxis = new Array();
|
||||
for (var ci = 0; ci < StaticSelectTagList.length; ci++) {
|
||||
if (ci == 0) {
|
||||
let yAxisdata = {
|
||||
name: JSON.parse(JSON.stringify(StaticSelectTagList[ci].Description)),
|
||||
nameLocation: 'center',
|
||||
type: 'value',
|
||||
//坐标轴两边留白策略,设置max、min后失效
|
||||
boundaryGap: ['5%', '2%'],
|
||||
// max: 700,
|
||||
// min: 0,
|
||||
// 让表格的刻度向靠里侧显示
|
||||
axisTick: {
|
||||
inside: false
|
||||
},
|
||||
axisLabel: {
|
||||
inside: false,
|
||||
align: 'left',
|
||||
verticalAlign: 'bottom',
|
||||
},
|
||||
// 设置刻度线的颜色等样式
|
||||
axisLine: {
|
||||
show: true,
|
||||
lineStyle: {
|
||||
color: color[ci],
|
||||
width: 3
|
||||
}
|
||||
},
|
||||
splitLine: {
|
||||
show: true, //想要不显示网格线,改为false
|
||||
lineStyle: {
|
||||
// 设置网格为虚线
|
||||
type: 'dashed'
|
||||
}
|
||||
}
|
||||
}
|
||||
yAxis.push(yAxisdata);
|
||||
}
|
||||
else {
|
||||
let yAxisdata = {
|
||||
name: JSON.parse(JSON.stringify(StaticSelectTagList[ci].Description)),
|
||||
nameLocation: 'center',
|
||||
// max: 800,
|
||||
// min: 0,
|
||||
type: 'value',
|
||||
//坐标轴两边留白策略,设置max、min后失效
|
||||
boundaryGap: ['5%', '2%'],
|
||||
axisLabel: {
|
||||
inside: true,
|
||||
align: 'right',
|
||||
verticalAlign: 'bottom',
|
||||
},
|
||||
axisLine: {
|
||||
show: true,
|
||||
lineStyle: {
|
||||
color: color[ci],
|
||||
width: 3
|
||||
}
|
||||
},
|
||||
splitLine: {
|
||||
show: false //想要不显示网格线,改为false
|
||||
},
|
||||
// 设置坐标轴偏移位置
|
||||
offset: (ci - 1) * 100
|
||||
//offset: (ci) * 100
|
||||
}
|
||||
yAxis.push(yAxisdata);
|
||||
}
|
||||
}
|
||||
|
||||
var series = new Array();
|
||||
for (var si = 0; si < StaticSelectTagList.length; si++) {
|
||||
debugger;
|
||||
//bool变量取消平滑采取折线
|
||||
let issmooth = !(StaticSelectTagList[si].Units ==='Y/N')
|
||||
let seriesdata = {
|
||||
data: yDataArr[si],
|
||||
// 曲线名
|
||||
name: JSON.parse(JSON.stringify(StaticSelectTagList[si].Description)),
|
||||
// 设置参数对应的y坐标轴的索引
|
||||
yAxisIndex: si,
|
||||
type: 'line',
|
||||
// 曲线平滑设置
|
||||
smooth: issmooth
|
||||
}
|
||||
series.push(seriesdata);
|
||||
}
|
||||
|
||||
// 设置鼠标hover时的提示信息
|
||||
var tooltip = {
|
||||
trigger: 'axis', // 有3个属性值 axis item none
|
||||
axisPointer: {
|
||||
type: 'cross',
|
||||
label: {
|
||||
backgroundColor: '#6a7985' //配置展示方块的背景颜色
|
||||
}
|
||||
}
|
||||
}
|
||||
// 调整表格两边的空白的区
|
||||
var grid = {
|
||||
//left:'20px'
|
||||
// 左侧
|
||||
x: '50px',
|
||||
// 上部
|
||||
// y: 25,
|
||||
// 右侧
|
||||
x2: lightwhite + 'px',
|
||||
// 下部
|
||||
// y2: 35
|
||||
}
|
||||
var letest = ['tg', 'fe', 'wdf'];
|
||||
// 调整图样的名称 // 定义图样和每条曲线的颜色
|
||||
var legend = new Array();
|
||||
for (var li = 0; li < StaticSelectTagList.length; li++) {
|
||||
let legenddata = StaticSelectTagList[li].Description;
|
||||
legend.push(JSON.parse(JSON.stringify(legenddata)));
|
||||
}
|
||||
var dataZoom = {
|
||||
//type: 'slider'
|
||||
type: 'inside'
|
||||
}
|
||||
|
||||
var option = {
|
||||
xAxis: {
|
||||
name: '时间',
|
||||
type: 'category',
|
||||
position: 'bottom',
|
||||
data: xDataArr[0],
|
||||
// boundaryGap: false, //x下标在刻度处显示
|
||||
splitLine: {
|
||||
show: true, //想要不显示网格线,改为false
|
||||
lineStyle: {
|
||||
// 设置网格为虚线
|
||||
type: 'dashed'
|
||||
}
|
||||
},
|
||||
// splitArea: { show: true }, //保留网格区域
|
||||
// 设置刻度线的颜色等样式
|
||||
axisLine: {
|
||||
onZero: false,
|
||||
lineStyle: {
|
||||
color: 'black',
|
||||
width: 3
|
||||
}
|
||||
}
|
||||
},
|
||||
yAxis: yAxis,
|
||||
series: series,
|
||||
tooltip: tooltip,
|
||||
grid: grid,
|
||||
//legend: legend,
|
||||
dataZoom: dataZoom,
|
||||
color: color
|
||||
};
|
||||
setTimeout(bulidchart(option), 500);
|
||||
|
||||
|
||||
}
|
||||
|
||||
function bulidchart(option) {
|
||||
if (option) {
|
||||
|
||||
var myChart = echarts.init(document.getElementById('result'));
|
||||
myChart.hideLoading();
|
||||
myChart.setOption(JSON.parse(JSON.stringify(option)));
|
||||
|
||||
//myChart = echarts.init(document.getElementById('result'));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
function roundrgb() {//rgb颜色随机
|
||||
const r = Math.floor(Math.random() * 256);
|
||||
const g = Math.floor(Math.random() * 256);
|
||||
const b = Math.floor(Math.random() * 256);
|
||||
return `rgb(${r},${g},${b})`;
|
||||
}
|
||||
//$(function () {
|
||||
//赋值combox所有subsystem
|
||||
//GetAllSubsystemTag();
|
||||
|
||||
|
||||
|
||||
//$('#btn_sbshowchart').click(function () {
|
||||
// showchart();
|
||||
// return false;
|
||||
//});
|
||||
//$('#subsystemTagList').datalist('resize', {
|
||||
// height: ($('#aright').height() - 75)
|
||||
//});
|
||||
//window.onresize = function () {
|
||||
// $('#subsystemTagList').datalist('resize', {
|
||||
// height: ($('#aright').height() - 75)
|
||||
// });
|
||||
//};
|
||||
//});
|
||||
|
||||
});
|
||||
|
||||
|
||||
</script>
|
||||
<html style="height:100%">
|
||||
<body style="height:100%">
|
||||
|
||||
<script type="text/javascript" src="~/lib/echarts-5.3.0/dist/echarts.js"></script>
|
||||
<div class="layui-fluid" style="padding:0 0px;height:100%">
|
||||
<div class="layui-row layui-col-space5" style="height:100%">
|
||||
<div class="layui-col-md2 layui-col-xs3" style="height:100%;padding-right:12px;">
|
||||
<div class="layui-card" style="text-align:left;overflow: auto;height:100%" id="toolbarDiv">
|
||||
@*<ul id="dataTree" class="dtree" data-id="0"></ul>*@
|
||||
<div id="aleft" style="float:left;width:100%;height:100%">
|
||||
<div class="easyui-panel" title="选择设备信息" style="width:100%;height:100%">
|
||||
<div class="easyui-combobox" id="groupselect" name="group" data-options="onSelect:function(rec){updateGroupSelect(rec)}" style="width:100%;height:40px">
|
||||
</div>
|
||||
<div class="easyui-combobox" id="subsystemselect" name="state" data-options="onSelect:function(rec){updateSelect(rec)}" style="width:100%;height:40px">
|
||||
</div>
|
||||
<div class="easyui-datalist" id="subsystemTagList" title="变量列表" style="position: relative;width:100%;height:auto;overflow:auto;" data-options="
|
||||
checkbox: true,
|
||||
selectOnCheck: false,
|
||||
sigleselect:false,
|
||||
onCheck:function(rowIndex,rowData){checkTagAdd(rowIndex,rowData)},
|
||||
onUncheck:function(rowIndex,rowData){checkTagDec(rowIndex,rowData)}
|
||||
">
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-md10 layui-col-xs9" style="height:100%">
|
||||
@*<div class="layui-card" style="padding: 5px;">
|
||||
<div id="echartdiv" style="width:100%;height: 100%;margin-bottom: 10px;">
|
||||
<div id="result" class="echart" style="width: 100%; height: 100% "></div>
|
||||
</div>
|
||||
</div>*@
|
||||
|
||||
<form class="layui-form" style="height:auto;" id="formPreviewForm">
|
||||
<div id="grid_2" class="layui-form-item layui-row grid active" data-id="grid_2"
|
||||
data-tag="grid" data-index="0">
|
||||
<div class="layui-col-md3 widget-col-list column0" data-index="0" data-parentindex="0">
|
||||
<div id="ReStartTime" class="layui-form-item active" data-id="ReStartTime"
|
||||
data-tag="date" data-index="0">
|
||||
<label class="layui-form-label layui-form-required" style="width: 80px;">
|
||||
开始时间:
|
||||
</label>
|
||||
<div class="layui-input-block" style="width:calc(100% - 110px);margin-left: 110px;">
|
||||
<input id="dateReStartTime" name="ndateReStartTime" lay-verify="required"
|
||||
class="layui-input icon-date widget-date " style="line-height: 40px;">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-md3 widget-col-list column1" data-index="1" data-parentindex="0">
|
||||
<div id="ReEndTime" class="layui-form-item active" data-id="ReEndTime"
|
||||
data-tag="date" data-index="0">
|
||||
<label class="layui-form-label layui-form-required" style="width: 80px;">
|
||||
结束世间:
|
||||
</label>
|
||||
<div class="layui-input-block" style="width:calc(100% - 110px);margin-left: 110px;">
|
||||
<input id="dateReEndTime" name="ndateReEndTime" lay-verify="required" class="layui-input icon-date widget-date "
|
||||
style="line-height: 40px;">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-md3 widget-col-list column2" data-index="2" data-parentindex="0">
|
||||
<div id="select_10" class="layui-form-item active" data-id="select_4" data-tag="select"
|
||||
data-index="0">
|
||||
<label class="layui-form-label layui-form-required" style="width: 110px;">
|
||||
快捷节点:
|
||||
</label>
|
||||
<div class="layui-input-block layui-form" lay-filter="select_4" style="margin-left: 140px;width:160px">
|
||||
|
||||
<select name="selectquick" lay-filter="quickTime" lay-verify="required" id="selectQuick" style="width:150px">
|
||||
<option value="def" selected="">
|
||||
快速选择周期
|
||||
</option>
|
||||
<option value="toDay">
|
||||
今日
|
||||
</option>
|
||||
<option value="yesterDay">
|
||||
昨日
|
||||
</option>
|
||||
<option value="thisWeek">
|
||||
本周
|
||||
</option>
|
||||
<option value="lastWeek">
|
||||
上周
|
||||
</option>
|
||||
<option value="thisMonth">
|
||||
本月
|
||||
</option>
|
||||
<option value="lastMonth">
|
||||
上月
|
||||
</option>
|
||||
</select>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-md2 widget-col-list column2" data-index="3" data-parentindex="0">
|
||||
<div id="select_4" class="layui-form-item active" data-id="select_4" data-tag="select"
|
||||
data-index="0">
|
||||
<label class="layui-form-label layui-form-required" style="width: 80px;">
|
||||
时间间隔:
|
||||
</label>
|
||||
<div class="layui-input-block layui-form" lay-filter="select_4" style="margin-left: 110px">
|
||||
<select name="selectint" lay-verify="required" id="selectIntervalt">
|
||||
<option value="onemin" selected="">
|
||||
1分钟
|
||||
</option>
|
||||
<option value="fivemin">
|
||||
5分钟
|
||||
</option>
|
||||
<option value="tenmin">
|
||||
10分钟
|
||||
</option>
|
||||
<option value="thirtymin">
|
||||
30分钟
|
||||
</option>
|
||||
<option value="onehour">
|
||||
1小时
|
||||
</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-md1 widget-col-list column3" data-index="4" data-parentindex="0">
|
||||
<div id="bottom_5" class="layui-form-item active" data-id="bottom_5" data-tag="bottom"
|
||||
data-index="0">
|
||||
<div class="layui-input-block" style="margin-left: 30px;">
|
||||
<button id="btn_search" type="button" class="layui-btn custom-zc" ; onclick="showchart()">
|
||||
<i class="layui-icon ">
|
||||
</i>
|
||||
确定
|
||||
</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
<form class="layui-form" style="height:calc(100vh - 55px);width:100%" id="tablepanel">
|
||||
<div class="layui-panel" id="gridpanel" style="width:100%;height: 100%;margin-bottom: 10px; ">
|
||||
<div id="result" class="echart" style="width: 100%; height: 100% "></div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -946,7 +946,14 @@
|
||||
<body style="height:100%">
|
||||
|
||||
<script type="text/javascript" src="~/lib/echarts-5.3.0/dist/echarts.js"></script>
|
||||
|
||||
<ul class="layui-tab-title">
|
||||
<li class="layui-this" lay-id="TechCharts">重要数据趋势</li>
|
||||
<li lay-id="MoreCharts">其他数据趋势</li>
|
||||
</ul>
|
||||
<div class="layui-tab-content" style="height:90%">
|
||||
<div class="layui-tab-item layui-show" style="height:100%"></div>
|
||||
<div class="layui-tab-item" style="height:100%"></div>
|
||||
</div>
|
||||
<div class="layui-fluid" style="padding:0 0px;height:100%">
|
||||
<div class="layui-row layui-col-space5" style="height:100%">
|
||||
<div class="layui-col-md2 layui-col-xs3" style="height:100%;padding-right:12px;">
|
||||
|
@ -12,7 +12,7 @@
|
||||
"LoginMultiple": false, // 是否允许一个账户在多处登录
|
||||
"AllowCorsSite": "http://localhost:8058", // 允许的其他站点访问Api
|
||||
"DBProvider": "SqlServer", //SqlServer //Oracle
|
||||
"DBConnectionString": "Data Source=192.168.110.32;Initial Catalog=HTSCADA;User Id= sa;Password= Sa1qaz;Integrated Security=False;Encrypt=True;TrustServerCertificate=True;",
|
||||
"DBConnectionString": "Data Source=192.168.110.32;Initial Catalog=HTCLOUD_PM01;User Id= sa;Password= Sa1qaz;Integrated Security=False;Encrypt=True;TrustServerCertificate=True;",
|
||||
"DBCommandTimeout": 180, // 数据库超时时间,单位秒
|
||||
"CacheProvider": "Memory", // 缓存使用方式 Redis/Memory
|
||||
"RedisConnectionString": "127.0.0.1:6379", //docker部署 172.17.0.1
|
||||
@ -20,20 +20,21 @@
|
||||
"LoginExpire": 12, //登录缓存过期时间(小时)
|
||||
"HomePage": "../Home/Default", //登录主页地址
|
||||
"MainDbNumber": "0", //主程序数据库
|
||||
"DataDBNumber": "1", //数据仓库数据库
|
||||
"LocalLAN": false, //是否局域网
|
||||
"OpenQuartz": true, //定时任务开启
|
||||
"SqlMode": "TenantSql", //数据库模式多租户或者多库 "MoreSql"
|
||||
"SqlMode": "MoreSql", //数据库模式多租户或者多库 "MoreSql"
|
||||
"ProjectPrefix": "watercloud", //项目中的前缀
|
||||
"ReviseSystem": false, //是否重置密码
|
||||
"LoginErrorCount": 18, //登录错误次数
|
||||
"IsCluster": false, //集群参数 开启时需要去quartz下载响应数据库
|
||||
"NeedClear": false, //是否删除定时调度任务
|
||||
"SqlConfig": [
|
||||
//{
|
||||
// "DBNumber": "1",
|
||||
// "DBProvider": "SqlServer", //MySql //Oracle
|
||||
// "DBConnectionString": "Data Source = .;Initial Catalog = WaterCloudNetDb;User ID=sa;Password=12345678;MultipleActiveResultSets=true;" //Data Source = 192.168.1.252;Initial Catalog = WaterCloudNetDb;User ID=sa;Password=admin@12345;MultipleActiveResultSets=true;
|
||||
//}
|
||||
{
|
||||
"DBNumber": "1",
|
||||
"DBProvider": "SqlServer", //MySql //Oracle
|
||||
"DBConnectionString": "Data Source=192.168.110.32;Initial Catalog=HTSCADA;User Id= sa;Password= Sa1qaz;Integrated Security=False;Encrypt=True;TrustServerCertificate=True;"
|
||||
}
|
||||
],
|
||||
"RabbitMq": {
|
||||
"Enabled": false,
|
||||
|
Reference in New Issue
Block a user