private async void btn_SaveImageInfo(object sender, EventArgs e) { if (seletedimg == null) { return; } string docDir = DirectoryUtil.Current.GetDir(); int ret = -1; if (_imageID == -1) { using (SKImage image = SKImage.FromBitmap(bitmap)) { SKData data = image.Encode(); DateTime dt = DateTime.Now; string filename = String.Format("{0:D4}{1:D2}{2:D2}-{3:D2}{4:D2}{5:D2}{6:D3}.png", dt.Year, dt.Month, dt.Day, dt.Hour, dt.Minute, dt.Second, dt.Millisecond); Model.IamgeSaveInfo imageinfo = new IamgeSaveInfo(); imageinfo.CateLogId = -1; //_ImagePath = Path.Combine(Path.Combine(docDir, "Iroai"), filename); imageinfo.ImagePath = _fullFilePath; imageinfo.Createdatetime = DateTime.Now; imageinfo.Imagebuffer = Convert.ToBase64String(data.ToArray()); ret = await SqliteUtil.Current.InsertImageInfo(imageinfo); if (ret == 1) { Model.IamgeSaveInfo savedInfo = await SqliteUtil.Current.QueryImageByFileName(imageinfo.ImagePath); if (savedInfo == null) { await DisplayAlert("Iroai", "Save Color infomation error. Sorry!", "OK"); } else { _imageID = savedInfo.ImageID; } } else { await DisplayAlert("Iroai", "Save Color infomation error. Sorry!", "OK"); return; } } } // save color info ImageColorInfo colorinfo = new ImageColorInfo(); colorinfo.ImageID = _imageID; colorinfo.HEXValue = this.lblHex.Text; colorinfo.RGBValue = this.lblRgb.Text; colorinfo.HSLValue = this.lblHsl.Text; colorinfo.HSVValue = this.lblHsv.Text; colorinfo.CMYKValue = this.lblCmyk.Text; colorinfo.LABValue = this.lblLab.Text; colorinfo.MUNSELLValue = this.lblMunsell.Text; colorinfo.PCCSValue = this.lblPccs.Text; colorinfo.JISValue = this.lblJis.Text; colorinfo.XValue = (int)_point.X; colorinfo.YValue = (int)_point.Y; ret = await SqliteUtil.Current.InsertImageColorInfo(colorinfo); if (ret != 1) { await DisplayAlert("Iroai", "Save Color infomation error. Sorry!", "OK"); return; } else { //await Navigation.PushModalAsync(new MainStoreList(_imageID)); } }
public async void OnSaveTitle(string title, SKData data) { try { int maxmaxImageId = -1; //search the max imageId from table [ImageColorInfo] List <ImageColorInfo> ImageIdList = await SqliteUtil.Current.QueryImageColorInfo(); if (ImageIdList == null) { return; } if (ImageIdList.Count > 0) { maxmaxImageId = ImageIdList[ImageIdList.Count - 1].ImageID; } maxmaxImageId++; foreach (var imageColorItem in _listinfo) { ImageColorInfo imageColorInfo = new ImageColorInfo(); imageColorInfo.ImageID = maxmaxImageId; imageColorInfo.HEXValue = imageColorItem.HEXValue; imageColorInfo.RGBValue = imageColorItem.RGBValue; imageColorInfo.HSLValue = imageColorItem.HSLValue; imageColorInfo.HSVValue = imageColorItem.HSVValue; imageColorInfo.CMYKValue = imageColorItem.CMYKValue; imageColorInfo.LABValue = imageColorItem.LABValue; imageColorInfo.MUNSELLValue = imageColorItem.MUNSELLValue; imageColorInfo.PCCSValue = imageColorItem.PCCSValue; imageColorInfo.XValue = imageColorItem.XValue; imageColorInfo.YValue = imageColorItem.YValue; imageColorInfo.ScaledRatio = imageColorItem.ScaledRatio; imageColorInfo.XPis = imageColorItem.XPis; imageColorInfo.YPis = imageColorItem.YPis; imageColorInfo.DefX = imageColorItem.DefX; imageColorInfo.DefY = imageColorItem.DefY; int retImageColorInfo = await SqliteUtil.Current.InsertImageColorInfo(imageColorInfo); } //insert into table [IamgeSaveInfo] IamgeSaveInfo imageinfo = new IamgeSaveInfo(); imageinfo.ImageID = maxmaxImageId; imageinfo.ImagePath = _fullFilePath; imageinfo.Imagebuffer = Convert.ToBase64String(data.ToArray()); imageinfo.Createdatetime = DateTime.Now; int retIamgeSaveInfo = await SqliteUtil.Current.InsertImageInfo(imageinfo); List <IamgeSaveInfo> IamgeSaveInfoList = await SqliteUtil.Current.QueryIamgeSaveInfoByImageID(maxmaxImageId); var CateLogIdGroupList = IamgeSaveInfoList .GroupBy(x => new { x.CateLogId }) .Select(group => new { Keys = group.Key }).ToList(); List <CataLogInfo> cataList = await SqliteUtil.Current.QueryCataLogInfoByCateLogId(CateLogIdGroupList[CateLogIdGroupList.Count - 1].Keys.CateLogId); var CateLogIdTitleGroupList = cataList .GroupBy(x => new { x.Title }) .Select(group => new { Keys = group.Key }).ToList(); CataLogInfo catalog = new CataLogInfo(); catalog.CateLogId = CateLogIdGroupList[CateLogIdGroupList.Count - 1].Keys.CateLogId; catalog.Folder = ""; catalog.Title = title; catalog.CreateDatetime = DateTime.Now; catalog.Description = "風景"; int ret = await SqliteUtil.Current.InsertCataLog(catalog); if (ret == 1) { TitleName = title; await DisplayAlert("", "保存しました。", "OK"); //DependencyService.Get<IAdmobView>().Show(); } } catch (Exception ex) { Crashes.TrackError(ex); } }
public async void OnSaveTitle(string title) { try { int maxmaxImageId = -1; //search the max imageId from table [ImageColorInfo] List <ImageColorInfo> ImageIdList = await SqliteUtil.Current.QueryImageColorInfo(); if (ImageIdList == null) { return; } if (ImageIdList.Count > 0) { maxmaxImageId = ImageIdList[ImageIdList.Count - 1].ImageID; } maxmaxImageId++; foreach (var imageColorItem in _listinfo) { ImageColorInfo imageColorInfo = new ImageColorInfo(); imageColorInfo.ImageID = maxmaxImageId; imageColorInfo.HEXValue = imageColorItem.HEXValue; imageColorInfo.RGBValue = imageColorItem.RGBValue; imageColorInfo.HSLValue = imageColorItem.HSLValue; imageColorInfo.HSVValue = imageColorItem.HSVValue; imageColorInfo.CMYKValue = imageColorItem.CMYKValue; imageColorInfo.LABValue = imageColorItem.LABValue; imageColorInfo.MUNSELLValue = imageColorItem.MUNSELLValue; imageColorInfo.PCCSValue = imageColorItem.PCCSValue; imageColorInfo.XValue = imageColorItem.XValue; imageColorInfo.YValue = imageColorItem.YValue; int retImageColorInfo = await SqliteUtil.Current.InsertImageColorInfo(imageColorInfo); } //insert into table [IamgeSaveInfo] IamgeSaveInfo imageinfo = new IamgeSaveInfo(); //int _imageId = _listinfo[0].ImageID; imageinfo.ImageID = maxmaxImageId; imageinfo.ImagePath = _ImagePath; imageinfo.Createdatetime = DateTime.Now; int retIamgeSaveInfo = await SqliteUtil.Current.InsertImageInfo(imageinfo); List <IamgeSaveInfo> IamgeSaveInfoList = await SqliteUtil.Current.QueryIamgeSaveInfoByImageID(maxmaxImageId); var CateLogIdGroupList = IamgeSaveInfoList .GroupBy(x => new { x.CateLogId }) .Select(group => new { Keys = group.Key }).ToList(); List <CataLogInfo> cataList = await SqliteUtil.Current.QueryCataLogsByFolder(strFolderName); var CateLogIdTitleGroupList = cataList .GroupBy(x => new { x.Title }) .Select(group => new { Keys = group.Key }).ToList(); //foreach (var title in CateLogIdTitleGroupList) //{ // if (strTitleName == title.Keys.Title) // { // await DisplayAlert("提示", "同じ保存タイトル名、もう一度選択してください。", "確定"); // await Navigation.PushModalAsync(new MainStoreList(List < ImageColorInfo > listinfo, int flag, string imagePath)); // return; // } //} CataLogInfo catalog = new CataLogInfo(); catalog.CateLogId = CateLogIdGroupList[CateLogIdGroupList.Count - 1].Keys.CateLogId; catalog.Folder = strFolderName; catalog.Title = title; catalog.CreateDatetime = DateTime.Now; catalog.Description = "風景"; int ret = await SqliteUtil.Current.InsertCataLog(catalog); if (ret == 1) { await DisplayAlert("", "保存しました。", "確定"); } } catch (Exception ex) { Crashes.TrackError(ex); } }