示例#1
0
        /// <summary>
        /// 报警
        /// </summary>
        internal void InsertAlarmData(string tenantId, string machineCode, AlarmArray item)
        {
            var collection = this.GetCollection("Alarm");

            if (item.Code == "0")
            {
                //如果报警编号为0,则视为所有报警结束,更新所有的报警记录
                var document = new BsonDocument {
                    { "AlarmEndTime", item.CreationTime },
                };
                var filter = Builders <BsonDocument> .Filter.Eq("TenantId", tenantId)
                             & Builders <BsonDocument> .Filter.Eq("MachineCode", machineCode)
                             & Builders <BsonDocument> .Filter.Eq("AlarmEndTime", "");

                var update = Builders <BsonDocument> .Update.Set("AlarmEndTime", DateTime.Now.ToString("yyyyMMddHHmmss"));

                collection.UpdateMany(filter, update);
            }
            else
            {
                var document = new BsonDocument
                {
                    { "TenantId", tenantId },
                    { "MachineCode", machineCode },
                    { "Code", item.Code ?? string.Empty },
                    { "Message", item.Message ?? string.Empty },
                    { "CreationTime", item.CreationTime ?? string.Empty },
                    { "AlarmEndTime", string.Empty }
                };
                collection.InsertOne(document);
            }
        }
示例#2
0
 protected BridgeBase(ApplicationConfiguration configuration, IIDTCommunicator communicator, IServiceFactory serviceFactory)
 {
     Alarms          = new AlarmArray(128);
     Configuration   = configuration;
     _communicator   = communicator;
     _serviceFactory = serviceFactory;
 }