Esempio n. 1
0
        public DispositivoModel GetDeviceData()
        {
            string serial         = string.Empty;
            uint   platformExpert = IOServiceGetMatchingService(0, IOServiceMatching("IOPlatformExpertDevice"));

            if (platformExpert != 0)
            {
                NSString key          = (NSString)"IOPlatformSerialNumber";
                IntPtr   serialNumber = IORegistryEntryCreateCFProperty(platformExpert, key.Handle, IntPtr.Zero, 0);
                if (serialNumber != IntPtr.Zero)
                {
                    serial = NSString.FromHandle(serialNumber);
                }

                IOObjectRelease(platformExpert);
            }

            DispositivoModel _dispositivo = new DispositivoModel
            {
                Fabricante         = DeviceInfo.Manufacturer,
                Id                 = 0,
                IdUnicoDispositivo = serial,
                Modelo             = DeviceInfo.Model,
                Nombre             = DeviceInfo.Name,
                Plataforma         = DeviceInfo.Platform.ToString(),
                Tipo               = DeviceInfo.DeviceType.ToString(),
                Version            = DeviceInfo.VersionString,
            };

            return(_dispositivo);
        }
Esempio n. 2
0
        public async Task <IHttpActionResult> PostDispositivo(DispositivoModel reg)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            tblDispositivo tblDispositivo = new tblDispositivo
            {
                Fabricante        = reg.fabricante,
                FechaRegistro     = DateTime.Now,
                IdDispositivo     = reg.Id,
                IMEI_Dispositivo  = reg.IdUnicoDispositivo,
                Modelo            = reg.modelo,
                NombreDispositivo = reg.nombre,
                Plataforma        = reg.plataforma,
                TipoDispositivo   = reg.tipo,
                Version           = reg.version,
            };

            try
            {
                db.tblDispositivo.Add(tblDispositivo);
                await db.SaveChangesAsync();

                reg.Id = tblDispositivo.IdDispositivo;
            }
            catch (Exception ex)
            {
                string msg = ex.Message;
                return(BadRequest(msg));
            }
            return(Ok(reg));
        }
Esempio n. 3
0
        private async void DataService_OnGetSuccessfull(object sender, DataServiceEventArgs e)
        {
            try
            {
                HttpResponseMessage result = e.Result;
                string json   = result.Content.ReadAsStringAsync().Result;
                long   dispId = JsonConvert.DeserializeObject <long>(json);

                DispositivoModel dispositivo = DependencyService.Get <IDeviceManager>().GetDeviceData();

                if (dispId != 0)
                {
                    dispositivo.Id = dispId;
                    OnGetDeviceSuccesfull?.Invoke(this, dispositivo);
                }
                else
                {
                    dispositivo.FechaRegistro = DateTime.Now;
                    dispositivo.UserId        = App.UserInfo.Id;
                    string serDataDisp      = JsonConvert.SerializeObject(dispositivo);
                    string addDispositvoURL = $"{App.ApiUrl}api/device/addDevice";

                    await dataService.PostDataAsync(addDispositvoURL, serDataDisp, e.ParentMethodName);
                }
            }
            catch (Exception ex)
            {
                OnGetDeviceFailed?.Invoke(this, new FailEventArgs(e.ParentMethodName, ex.Message));
            }
        }
 public void Adicionar([FromBody] DispositivoModel dispositivo)
 {
     Servico.Salvar(new Dispositivo
     {
         Usuario = new Usuario {
             Id = dispositivo.UsuarioId
         },
         Identificador = dispositivo.Identificador
     });
 }
Esempio n. 5
0
 private void DataService_OnPostSuccessfull(object sender, DataServiceEventArgs e)
 {
     try
     {
         string           json        = e.Result.Content.ReadAsStringAsync().Result;
         DispositivoModel dispositivo = JsonConvert.DeserializeObject <DispositivoModel>(json);
         OnGetDeviceSuccesfull?.Invoke(this, dispositivo);
     }
     catch (Exception ex)
     {
         OnGetDeviceFailed?.Invoke(this, new FailEventArgs(e.ParentMethodName, ex.Message));
     }
 }
Esempio n. 6
0
        public DispositivoModel GetDeviceData()
        {
            IDeviceInfo _device = CrossDeviceInfo.Current;

            DispositivoModel _dispositivo = new DispositivoModel
            {
                Fabricante         = _device.Manufacturer,
                Id                 = 0,
                IdUnicoDispositivo = _device.Id,
                Modelo             = _device.Model,
                Nombre             = _device.DeviceName,
                Plataforma         = _device.Platform.ToString(),
                Tipo               = _device.Idiom.ToString(),
                Version            = _device.Version,
            };

            return(_dispositivo);
        }
Esempio n. 7
0
        public static async Task <UsuarioModel> GetdataUsuario(string queryString, string _token)
        {
            UsuarioModel _usuario = new UsuarioModel();

            try
            {
                using (HttpClient httpClient = new HttpClient())
                {
                    httpClient.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", _token);
                    httpClient.Timeout = TimeSpan.FromSeconds(60);
                    var _cancelTokenSource = new CancellationTokenSource();
                    var _cancelToken       = _cancelTokenSource.Token;
                    var request            = new HttpRequestMessage(new HttpMethod("GET"), queryString);
                    var result             = await httpClient.SendAsync(request, _cancelToken).ConfigureAwait(true);

                    if (result.IsSuccessStatusCode)
                    {
                        string json = result.Content.ReadAsStringAsync().Result;
                        _usuario = JsonConvert.DeserializeObject <UsuarioModel>(json);
                        _usuario.ErrorMessage = string.Empty;

                        long   IdUsuario  = _usuario.Id;
                        string _IpAddress = DependencyService.Get <IIPAddressManager>().GetIpAddress();

                        AuditoriaModel _auditModel = new AuditoriaModel();
                        _auditModel.GenerarRegistro(httpClient, _usuario.Nombre, string.Empty, IdUsuario, _IpAddress, string.Empty, true);

                        /* *******************************
                        * Obtener datos del dispositivo *
                        * *******************************/

                        DispositivoModel Dispositivo = DependencyService.Get <IIDeviceManager>().GetDeviceData();
                        Dispositivo.FechaRegistro = DateTime.Now;
                        Dispositivo.IdUsuario     = _usuario.Id;

                        string _verifyDispUrl = string.Format("https://www.bcmweb.net/api/device/ExistDevice/{0}", Dispositivo.IdUnicoDispositivo);
                        request = new HttpRequestMessage(new HttpMethod("GET"), _verifyDispUrl);
                        result  = await httpClient.SendAsync(request, _cancelToken).ConfigureAwait(true);

                        if (result.IsSuccessStatusCode)
                        {
                            json = result.Content.ReadAsStringAsync().Result;
                            long dispId = JsonConvert.DeserializeObject <long>(json);

                            if (dispId == 0)
                            {
                                string serDataDisp = JsonConvert.SerializeObject(Dispositivo);
                                httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                                string addDispositvoURL = "https://www.bcmweb.net/api/device/addDevice";

                                request = new HttpRequestMessage(new HttpMethod("POST"), addDispositvoURL)
                                {
                                    Content = new StringContent(serDataDisp, Encoding.UTF8, "application/json")
                                };
                                result = await httpClient.SendAsync(request, _cancelToken).ConfigureAwait(true);

                                if (result.IsSuccessStatusCode)
                                {
                                    json                   = result.Content.ReadAsStringAsync().Result;
                                    Dispositivo            = JsonConvert.DeserializeObject <DispositivoModel>(json);
                                    _usuario.IdDispositivo = Dispositivo.Id;
                                }
                            }
                            else
                            {
                                _usuario.IdDispositivo = dispId;
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                _usuario.ErrorMessage = ex.Message;
            }

            return(_usuario);
        }