コード例 #1
0
        public DtoApiStringResponse GetCheckinCounts()
        {
            var uow         = new UnitOfWork();
            var currentTime = DateTime.Now;
            var hourMinus1  = currentTime - TimeSpan.FromHours(1);
            var hourMinus2  = currentTime - TimeSpan.FromHours(2);
            var hourMinus3  = currentTime - TimeSpan.FromHours(3);
            var hourMinus4  = currentTime - TimeSpan.FromHours(4);
            var hourMinus5  = currentTime - TimeSpan.FromHours(5);
            var hourMinus6  = currentTime - TimeSpan.FromHours(6);
            var hourMinus7  = currentTime - TimeSpan.FromHours(7);
            var hourMinus8  = currentTime - TimeSpan.FromHours(8);
            var hourMinus9  = currentTime - TimeSpan.FromHours(9);
            var hourMinus10 = currentTime - TimeSpan.FromHours(10);
            var hourMinus11 = currentTime - TimeSpan.FromHours(11);
            var hourMinus12 = currentTime - TimeSpan.FromHours(12);

            var sb = new StringBuilder();

            sb.Append(uow.ComputerRepository.Count(x => x.LastCheckinTime >= hourMinus1));
            sb.Append(",");
            sb.Append(uow.ComputerRepository.Count(x => (x.LastCheckinTime >= hourMinus2) && x.LastCheckinTime <= hourMinus1));
            sb.Append(",");
            sb.Append(uow.ComputerRepository.Count(x => (x.LastCheckinTime >= hourMinus3) && x.LastCheckinTime <= hourMinus2));
            sb.Append(",");
            sb.Append(uow.ComputerRepository.Count(x => (x.LastCheckinTime >= hourMinus4) && x.LastCheckinTime <= hourMinus3));
            sb.Append(",");
            sb.Append(uow.ComputerRepository.Count(x => (x.LastCheckinTime >= hourMinus5) && x.LastCheckinTime <= hourMinus4));
            sb.Append(",");
            sb.Append(uow.ComputerRepository.Count(x => (x.LastCheckinTime >= hourMinus6) && x.LastCheckinTime <= hourMinus5));
            sb.Append(",");
            sb.Append(uow.ComputerRepository.Count(x => (x.LastCheckinTime >= hourMinus7) && x.LastCheckinTime <= hourMinus6));
            sb.Append(",");
            sb.Append(uow.ComputerRepository.Count(x => (x.LastCheckinTime >= hourMinus8) && x.LastCheckinTime <= hourMinus7));
            sb.Append(",");
            sb.Append(uow.ComputerRepository.Count(x => (x.LastCheckinTime >= hourMinus9) && x.LastCheckinTime <= hourMinus8));
            sb.Append(",");
            sb.Append(uow.ComputerRepository.Count(x => (x.LastCheckinTime >= hourMinus10) && x.LastCheckinTime <= hourMinus9));
            sb.Append(",");
            sb.Append(uow.ComputerRepository.Count(x => (x.LastCheckinTime >= hourMinus11) && x.LastCheckinTime <= hourMinus10));
            sb.Append(",");
            sb.Append(uow.ComputerRepository.Count(x => (x.LastCheckinTime >= hourMinus12) && x.LastCheckinTime <= hourMinus11));

            var response = new DtoApiStringResponse();

            response.Value = sb.ToString();
            return(response);
        }
コード例 #2
0
 public StringContent ResponseHandler(Task <HttpResponseMessage> task, byte[] key, EntityComputer computer)
 {
     //encrypt the response back to the client
     //var headers = task.Result.ToString();
     if (task.Result.Content != null)
     {
         Logger.Debug($"ID: {logId} - Encrypting response body");
         var body = task.Result.Content.ReadAsStringAsync().Result;
         Logger.Debug($"ID: {logId} - {body}");
         var encryptedContent = new ServiceSymmetricEncryption().EncryptData(key, body);
         var signature        = new ServiceCertificate().SignMessage(Convert.ToBase64String(encryptedContent),
                                                                     computer);
         var jsonResp = new DtoApiStringResponse();
         jsonResp.Value = Convert.ToBase64String(encryptedContent);
         task.Result.Headers.Add("client_signature", Convert.ToBase64String(signature));
         return(new StringContent(JsonConvert.SerializeObject(jsonResp), Encoding.UTF8, "application/json"));
     }
     else
     {
         return(null);
     }
 }
コード例 #3
0
ファイル: PolicyController.cs プロジェクト: theopenem/Toems
        public DtoActionResult UpdateLastSocketResult(DtoApiStringResponse result)
        {
            var clientGuid = RequestContext.Principal.Identity.Name;

            return(new ServiceComputer().UpdateSocketResult(result.Value, clientGuid));
        }