示例#1
0
        private void LoadJson()
        {
            // ReadData IdCard
            using (System.IO.StreamReader r = new System.IO.StreamReader("mockData\\id_card_mock.json"))
            {
                iDCardModelJson = new IDCardModel();
                var json      = r.ReadToEnd();
                var jsonModel = JsonConvert.DeserializeObject <IDCardModel>(json);
                if (jsonModel != null)
                {
                    jsonModelEncode = encodeData(JsonConvert.SerializeObject(jsonModel));
                    iDCardModelJson = jsonModel;
                    TimerDoing();
                }
            }


            // ReadData IdCard Image
            using (System.IO.StreamReader r = new System.IO.StreamReader("mockData\\id_card_mock_image.json"))
            {
                iDCardModelJson = new IDCardModel();
                var image       = r.ReadToEnd();
                var jsonConvert = JsonConvert.DeserializeObject <IDCardImage>(image);
                jsonIdcardImage = jsonConvert;
            }
        }
示例#2
0
        public async void CameraPicker()
        {
            // Start attaching photo / camera
            #region CAMERA INITILISATION
            await CrossMedia.Current.Initialize();

            var cameraStatus = await CrossPermissions.Current.CheckPermissionStatusAsync(Permission.Camera);

            var storageStatus = await CrossPermissions.Current.CheckPermissionStatusAsync(Permission.Storage);

            if (cameraStatus != PermissionStatus.Granted || storageStatus != PermissionStatus.Granted)
            {
                var results = await CrossPermissions.Current.RequestPermissionsAsync(new[] { Permission.Camera, Permission.Storage });

                cameraStatus  = results[Permission.Camera];
                storageStatus = results[Permission.Storage];
            }
            if (cameraStatus == PermissionStatus.Granted && storageStatus == PermissionStatus.Granted)
            {
                if (!CrossMedia.Current.IsCameraAvailable || !CrossMedia.Current.IsTakePhotoSupported)
                {
                    await UserDialogs.Instance.AlertAsync("Couldn't find a Camera to access!", "No Camera", "OK");

                    return;
                }
            }
            else
            {
                await UserDialogs.Instance.AlertAsync("Unable to take photos", "Permissions Denied", "OK");

                return;
            }
            #endregion
            UserDialogs.Instance.ShowLoading("Loading image");
            var file = await CrossMedia.Current.TakePhotoAsync(
                new Plugin.Media.Abstractions.StoreCameraMediaOptions
            {
                PhotoSize          = PhotoSize.Custom,
                CustomPhotoSize    = 50,
                CompressionQuality = 0,
                SaveToAlbum        = false,
                Directory          = "ProfilePhoto",
                Name = Guid.NewGuid().ToString().Replace('-', '_').Substring(0, 8) + ".jpg"
            });

            try
            {
                if (file != null)
                {
                    var imagebyte = ConvertMediaFileToByteArray(file);
                    if (!CardPicPopUP)
                    {
                        // ProfilePic = ImageSource.FromStream(() => new MemoryStream(imagebyte.ToArray()));
                        ProfilePic = ImageSource.FromStream(() =>
                        {
                            var stream = file.GetStream();
                            return(stream);
                        });
                        MessagingCenter.Send <string, byte[]>("ProfilePicUpdate", "ProfilePicUpdate", imagebyte);
                        registrationModel.Photo = imagebyte;
                        ProfileLabelVisibility  = false;
                        UpdataUser(registrationModel);
                    }
                    else
                    {
                        // CardIdentificationImage = ImageSource.FromStream(() => new MemoryStream(imagebyte.ToArray()));
                        CardIdentificationImage = ImageSource.FromStream(() =>
                        {
                            var stream = file.GetStream();
                            return(stream);
                        });
                        var idCardModel = new IDCardModel()
                        {
                            UserName   = LocalSettings.UserName,
                            CreateDate = DateTimeOffset.Now,
                            Image      = imagebyte
                        };
                        _secureStorage.Save("idCardModel", idCardModel);
                    }
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine("Message[] there is error in capturing photo :- " + ex.Message + " \n\n\n\n\n");
            }
            UserDialogs.Instance.HideLoading();
        }
示例#3
0
        // LoadCard
        private void LoadIDCard()
        {
            thaiIDCard = new ThaiIDCard();
            thaiIDCard.eventPhotoProgress += new handlePhotoProgress(photoProgress);

            try
            {
                Personal personal = thaiIDCard.readAllPhoto();
                if (personal != null)
                {
                    IDCardModel readFormIdcard = new IDCardModel();

                    readFormIdcard.NationalID        = personal.Citizenid;
                    readFormIdcard.CardType          = "01";
                    readFormIdcard.ThaiFirstName     = personal.Th_Firstname;
                    readFormIdcard.ThaiLastName      = personal.Th_Lastname;
                    readFormIdcard.ThaiMiddleName    = personal.Th_Middlename;
                    readFormIdcard.ThaiTitleName     = personal.Th_Prefix;
                    readFormIdcard.EnglishTitleName  = personal.En_Prefix;
                    readFormIdcard.EnglishFirstName  = personal.En_Firstname;
                    readFormIdcard.EnglishLastName   = personal.En_Lastname;
                    readFormIdcard.Address           = personal.addrHouseNo;
                    readFormIdcard.Amphur            = personal.addrAmphur;
                    readFormIdcard.AtrString         = AtrString;
                    readFormIdcard.Birthdate         = personal.Birthday.ToString("dd/MM/yyyy");
                    readFormIdcard.ChipID            = "";
                    readFormIdcard.EnglishMiddleName = personal.En_Middlename;
                    readFormIdcard.ExpireDate        = personal.Expire.ToString("dd/MM/yyyy");;
                    readFormIdcard.FormatVersion     = "0003";
                    readFormIdcard.IssueDate         = personal.Issue.ToString("dd/MM/yyyy");
                    readFormIdcard.IssuePlace        = personal.Expire.ToString("dd/MM/yyyy");
                    readFormIdcard.IssuerCode        = "";
                    readFormIdcard.LaserID           = personal.En_Middlename;
                    readFormIdcard.Moo        = personal.addrVillageNo;
                    readFormIdcard.PhotoRefNo = "";
                    readFormIdcard.Province   = personal.addrProvince;
                    readFormIdcard.RequestNo  = personal.En_Middlename;
                    readFormIdcard.Sex        = personal.Sex;
                    readFormIdcard.Soi        = personal.addrLane;
                    readFormIdcard.Thanon     = personal.addrRoad;
                    readFormIdcard.Trok       = personal.En_Middlename;
                    readFormIdcard.Tumbol     = personal.addrTambol;

                    // readFormIdcard
                    lbIdcard.Text   = personal.Citizenid;
                    lbFullname.Text = personal.En_Firstname + " " + personal.En_Lastname;

                    bitmapCard.Image = personal.PhotoBitmap;
                    var jsonConverter = JsonConvert.SerializeObject(readFormIdcard);
                    btnLoadCard.Text = "Save to Mock";
                    isHaveData       = true;

                    jsonIdCardReader = jsonConverter.ToString();

                    Debug.WriteLine(JsonConvert.DeserializeObject(personal.ToString()));
                }
                else if (thaiIDCard.ErrorCode() > 0)
                {
                    MessageBox.Show("Error :" + thaiIDCard.Error());
                    MessageBox.Show("Error :" + thaiIDCard.ErrorCode());
                    Console.WriteLine(thaiIDCard.Error());
                }
            } catch (Exception ex)
            {
                MessageBox.Show("Error" + ex.Message);
            }
        }