Example #1
0
        public StationColorDevice GetStationClolorDevice()
        {
            var dalDeviceStatus = new DAL_DeviceStatus();
            StationColorDevice _StationColorDevice = new StationColorDevice();

            _StationColorDevice.SSAColor = dalDeviceStatus.CheckStatusDevicesStation(EnumStation.ALK);
            _StationColorDevice.SSKColor = dalDeviceStatus.CheckStatusDevicesStation(EnumStation.ARK);
            _StationColorDevice.ESPColor = dalDeviceStatus.CheckStatusDevicesStation(EnumStation.SSP);
            _StationColorDevice.UHPColor = dalDeviceStatus.CheckStatusDevicesStation(EnumStation.SHP);

            Trinity.Common.Utils.LogManager.Info("GetStationClolorDevice: " + JsonConvert.SerializeObject(_StationColorDevice));
            return(_StationColorDevice);
        }
Example #2
0
        /// <summary>
        /// 设备状态改变回调方法
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="status"></param>
        private static void OnDeviceStatusChanged(object sender, DeviceStatus status)
        {
            T_DeviceStatusLog log = new T_DeviceStatusLog();

            log.EquipId    = status.Device.Id;
            log.StatusDesc = status.StatusDesc;
            log.StatusId   = status.Status.GetHashCode();
            DAL_DeviceStatus.SaveDeviceStatus(log);

            if (DeviceStatusNotifyHandler != null)
            {
                DeviceStatusNotifyHandler.Invoke(sender, status);
            }
        }
Example #3
0
        public void ReportDeviceStatus(EnumDeviceId enumDeviceId, EnumDeviceStatus[] newStatuses)
        {
            try
            {
                if (_lstDevices == null || _lstDevices.Count == 0)
                {
                    return;
                }

                DeviceStatus deviceStatus = _lstDevices.FirstOrDefault(item => item.DeviceID == enumDeviceId);
                // Save new status
                deviceStatus.Status = newStatuses;

                // update summary
                // Error status
                if (newStatuses == null || newStatuses.Length == 0 || newStatuses.Contains(EnumDeviceStatus.Disconnected))
                {
                    deviceStatus.Summary = EnumDeviceStatusSumary.Error;
                }
                // if application have no device disconnected, and have any device status is diffirent connected, update status caution
                // Need to define caution statuses group
                else if (newStatuses.Any(item => item != EnumDeviceStatus.Connected))
                {
                    deviceStatus.Summary = EnumDeviceStatusSumary.Caution;
                }
                // if all devices are connected and have no caution, update status is ready
                else
                {
                    deviceStatus.Summary = EnumDeviceStatusSumary.Ready;
                }

                // If application initialization is not fisnished and this device status is not reported yet
                // update device initialization finished
                if (_isInitializing && !_isInitializing_LayerWeb && !_lstDevices.Any(item => item.Status == null))
                {
                    _isInitializing = false;
                }

                UpdateLEDsLight();

                // update local ApplicationDevice_Status
                DAL_DeviceStatus dAL_DeviceStatus = new DAL_DeviceStatus();
                dAL_DeviceStatus.Update((int)enumDeviceId, newStatuses);
                Trinity.SignalR.Client.Instance.DeviceStatusChanged((int)enumDeviceId, newStatuses);
            }
            catch (Exception ex)
            {
                Debug.WriteLine("ReportDeviceStatus exception: " + ex.ToString());
            }
        }
Example #4
0
        private static void ReportDeviceStatus()
        {
            try
            {
                // get statuses
                var statuses = SmartCardPrinterUtil.Instance.GetDeviceStatus();

                // update local ApplicationDevice_Status
                DAL_DeviceStatus dAL_DeviceStatus = new DAL_DeviceStatus();
                dAL_DeviceStatus.Update((int)EnumDeviceId.SmartCardPrinter, statuses);
                Trinity.SignalR.Client.Instance.DeviceStatusChanged((int)EnumDeviceId.SmartCardPrinter, statuses);
            }
            catch (Exception ex)
            {
                Debug.WriteLine("SmartCardPrinterMonitor.ReportDeviceStatus exception: " + ex.ToString());
            }
        }