public void LoadClient(Guid clientId, Action <LoadClientResponse> callback)
 {
     Task.Factory.StartNew(() => {
         Guid messageId = Guid.NewGuid();
         try {
             LoadClientRequest request = new LoadClientRequest {
                 MessageId = messageId,
                 LoginName = LoginName,
                 ClientId  = clientId,
                 Timestamp = DateTime.Now
             };
             request.SignIt(Password);
             using (var service = CreateService()) {
                 LoadClientResponse response = service.LoadClient(request);
                 callback?.Invoke(response);
             }
         }
         catch (CommunicationException e) {
             Global.DebugLine(e.Message, ConsoleColor.Red);
             callback?.Invoke(LoadClientResponse.ClientError(messageId, e.Message));
         }
         catch (Exception e) {
             Global.Logger.Error(e.Message, e);
             callback?.Invoke(LoadClientResponse.ClientError(messageId, e.Message));
         }
     });
 }
Beispiel #2
0
        public int PostClient(LoadClientRequest request)
        {
            int idClientResponse;

            try
            {
                var clientEntity = new ClientsEntity()
                {
                    Name    = request.Name,
                    Surname = request.Surname,
                    IdentificationNumber = request.IdentificationNumber,
                    IdTypeIdentification = request.IdTypeIdentification,
                    HomeStreet           = request.HomeStreet,
                    HomeHeigth           = request.HomeHeigth,
                    HomeDetails          = request.HomeDetails,
                    Departament          = request.Departament,
                    Region        = request.Region,
                    IdPostalCode  = request.IdPostalCode,
                    Email         = request.Email,
                    Phone         = request.Phone,
                    AdicionalInfo = request.AdicionalInfo
                };
                context.ClientsEntity.Add(clientEntity);
                context.SaveChanges();
                idClientResponse = clientEntity.IdClient;
            }
            catch (Exception ex)
            {
                Console.WriteLine("ClientDataAccess.PostClient : ERROR : " + ex.Message);
                throw;
            }
            return(idClientResponse);
        }
 public void Insert(LoadClientRequest request)
 {
     try
     {
         MASFARMACIADEVContext context      = new MASFARMACIADEVContext();
         ClientsEntity         clientEntity = new ClientsEntity()
         {
             Name    = request.Name,
             Surname = request.Surname,
             IdentificationNumber = request.IdentificationNumber,
             IdTypeIdentification = request.IdTypeIdentification,
             HomeStreet           = request.HomeStreet,
             HomeHeigth           = request.HomeHeigth,
             IdPostalCode         = request.IdPostalCode,
             Email = request.Email,
             Phone = request.Phone
         };
         context.ClientsEntity.Add(clientEntity);
         context.SaveChanges();
     }
     catch (Exception ex)
     {
         Console.WriteLine("ClientDataAccess.Insert : ERROR : " + ex.Message);
         throw;
     }
 }
Beispiel #4
0
 public int Post(LoadClientRequest request)
 {
     try
     {
         _clientDataAccess.PostClient(request);
         //Retorna 204: La peticion ha sido manejada con exito y la respuesta no tiene contenido
         return(204);
     }
     catch (Exception ex)
     {
         Console.WriteLine("ClientModel.Post : ERROR : " + ex.Message);
         //Error interno del servidor
         return(500);
     }
 }
 public LoadClientResponse LoadClient(LoadClientRequest request)
 {
     if (request == null)
     {
         return(LoadClientResponse.InvalidInput(Guid.Empty, "参数错误"));
     }
     try {
         if (string.IsNullOrEmpty(request.LoginName))
         {
             return(LoadClientResponse.InvalidInput(request.MessageId, "登录名不能为空"));
         }
         if (!HostRoot.Current.UserSet.TryGetKey(request.LoginName, out IUser key))
         {
             return(LoadClientResponse.Forbidden(request.MessageId));
         }
         if (!request.Timestamp.IsInTime())
         {
             return(LoadClientResponse.Expired(request.MessageId));
         }
         if (request.ClientId == Guid.Empty)
         {
             return(LoadClientResponse.InvalidInput(request.MessageId, "clientId为空"));
         }
         if (request.Sign != request.GetSign(key.Password))
         {
             return(LoadClientResponse.Forbidden(request.MessageId, "签名验证未通过"));
         }
         var data = HostRoot.Current.ClientSet.LoadClient(request.MessageId);
         return(new LoadClientResponse {
             Data = data
         });
     }
     catch (Exception e) {
         Global.Logger.ErrorDebugLine(e.Message, e);
         return(LoadClientResponse.ServerError(request.MessageId, e.Message));
     }
 }