private SKColor MatchStateStatusToColor(KioskState state, KioskStatus status)
 {
     if (state == CHBackOffice.ApiServices.ChsProxy.KioskState.InService ||
         state == CHBackOffice.ApiServices.ChsProxy.KioskState.ONLINE)
     {
         if (status == CHBackOffice.ApiServices.ChsProxy.KioskStatus.Normal)
         {
             return(Color.FromHex("#63EEB0").ToSKColor());
         }
         else if (status == CHBackOffice.ApiServices.ChsProxy.KioskStatus.Warning)
         {
             return(Color.FromHex("#FEDE76").ToSKColor());
         }
         else
         {
             return(Color.FromHex("#FCA35A").ToSKColor());
         }
     }
     else if (state == CHBackOffice.ApiServices.ChsProxy.KioskState.Offline)
     {
         return(Color.FromHex("#CDCDCD").ToSKColor());
     }
     else if (state == CHBackOffice.ApiServices.ChsProxy.KioskState.OutOfServiceSOP)
     {
         return(Color.FromHex("#62C8F5").ToSKColor());
     }
     else
     {
         return(Color.FromHex("#FD6F82").ToSKColor());
     }
 }
Beispiel #2
0
        WhenICallTheAddKioskStatusPostApiEndpointToAddAKioskStatusItChecksIfExistsPullsItemEditsItAndDeletesIt()
        {
            HttpResponseMessage response;

            _addItem = Add(_addItem, out response);

            Assert.IsNotNull(response);
            ScenarioContext.Current[AddItemKey] = response;
        }
Beispiel #3
0
        public async Task <KioskDto> UpdateStatusByMachineIdAsync(string machineId, KioskStatus kioskStatus)
        {
            var entity = await FindAll(k => k.MachineId.Equals(machineId)).FirstOrDefaultAsync();

            if (entity == null)
            {
                throw new Exception("Not found entity object with machineId: " + machineId);
            }

            entity.Status = kioskStatus;

            _repository.Update(entity);

            await _unitOfWork.CommitAsync();

            return(EntityToDto(entity));
        }
Beispiel #4
0
        public void ThenTheAddResultShouldBeAKioskStatusIdCheckExistsGetByIdEditAndDeleteWithHttpResponseReturns()
        {
            //did we get a good result
            Assert.IsTrue(_addItem != null && _addItem.Id > 0);

            //set the returned AddID to current Get
            _addedIdValue  = _addItem.Id;
            _getIdValue    = _addedIdValue;
            _existsIdValue = _getIdValue;

            //check that the item exists
            var itemReturned = Exists(_existsIdValue);

            Assert.IsTrue(itemReturned);

            //use the value used in exists check
            _getIdValue = _addItem.Id;
            Assert.IsTrue(_getIdValue == _addedIdValue);

            //pull the item by Id
            var resultGet = GetById <KioskStatus>(_getIdValue);

            Assert.IsNotNull(resultGet);
            _getIdValue = resultGet.Id;
            Assert.IsTrue(_getIdValue == _addedIdValue);

            //Now, let's Edit the newly added item
            _editIdValue = _getIdValue;
            _editItem    = resultGet;
            Assert.IsTrue(_editIdValue == _addedIdValue);

            //do an update
            var updateResponse = Update(_editIdValue, _editItem);

            Assert.IsNotNull(updateResponse);

            //pass the item just updated
            _deletedIdValue = _editIdValue;
            Assert.IsTrue(_deletedIdValue == _addedIdValue);

            //delete this same item
            var deleteResponse = Delete(_deletedIdValue);

            Assert.IsNotNull(deleteResponse);
        }
Beispiel #5
0
        public void GivenTheFollowingKioskStatusAddInput(Table table)
        {
            Assert.IsNotNull(table);
            foreach (var row in table.Rows)
            {
                _code  = row["Code"];
                _label = row["Label"];

                break;
            }

            _addItem = new KioskStatus
            {
                Code      = _code,
                Label     = _label,
                CreatedOn = DateTime.UtcNow
            };
        }
Beispiel #6
0
        public virtual async Task <KioskDto> UpdateStatusByMachineIdAsync(string machineId, KioskStatus kioskStatus)
        {
            HttpResponseMessage response = await _proxyService.PutJsonAsync(string.Format("/api/kiosks/{0}/updatestatus", machineId), new
            {
                status = kioskStatus,
            });

            response.EnsureSuccessStatusCode();

            return(await response.Content.ReadAsAsync <KioskDto>());
        }
        private NotifyKioskDto AddNotification(string machineId, ProcessType processType, KioskStatus kioskStatus, string systemName, string groupName)
        {
            if (SettingsConfigurationSignalR.IS_PULSE_SERVER)
            {
                var events = new SignalREventHandlers(Context.QueryString["access_token"]);

                AsyncHelper.RunSync(() => events.TriggerUpdateStatusAsync(new KioskArgs
                {
                    MachineId   = machineId,
                    kioskStatus = kioskStatus
                }));

                var document = AsyncHelper.RunSync(() => events.TriggerNofityAsync(new NotifyKioskArgs
                {
                    MachineId = machineId,
                    Name      = systemName,
                    GroupName = groupName,
                    Status    = Enum.GetName(typeof(KioskStatus), kioskStatus),
                    Content   = string.Format("Kiosk {0} {1} to Pulse Server.", systemName, Enum.GetName(typeof(ProcessType), processType)),
                    CreateAt  = DateTime.UtcNow
                }));

                return(document);
            }

            return(null);
        }
        private void ProcessNotification(HubCallerContext context, ProcessType processType, KioskStatus kioskStatus, string machineId, string systemName, string groupName)
        {
            if (!ProcessParameter(context) && !string.IsNullOrEmpty(machineId))
            {
                var kiosk = AddNotification(machineId, processType, kioskStatus, systemName, groupName);

                var output = $"{{ \"machineId\" : \"{machineId}\" , \"name\" : \"{systemName}\", \"content\" : \"{kiosk.Content}\", "
                             + $" \"status\" : \"{kiosk.Status}\" , \"countDate\" : \"{ kiosk.CreateAt.ToLocalTime().CountDay() }\", \"isRead\" : \"false\" }}";

                SendNotifyToPulseServer(Context.ConnectionId, output);
            }
        }