public async void MyListView_ItemTapped(object sender, ItemTappedEventArgs e) { var media = CrossMedia.Current; // 権限チェック if (await CheckPermisson()) { if (!media.IsTakePhotoSupported) { await DisplayAlert("", "ファイルは読み込みできない。", "OK"); return; } string _ImageSrc = (MyListView.SelectedItem as NewsListItemModel).ImageSrc; int _CateLogId = (MyListView.SelectedItem as NewsListItemModel).CateLogId; List <IamgeSaveInfo> IamgeSaveInfoList = await SqliteUtil.Current.QueryIamgeSaveInfoByCateLogId(_CateLogId); var imageIdGroupList = IamgeSaveInfoList .Where(x => x.CateLogId == _CateLogId) .GroupBy(x => new { x.ImageID, x.CateLogId, x.Imagebuffer }) .Select(group => new { Keys = group.Key }).ToList(); List <ImageColorInfo> ImageColorInfoList = await SqliteUtil.Current.QueryImageColorInfoByImageID(imageIdGroupList[0].Keys.ImageID); CataLogInfo cataLogInfo = await SqliteUtil.Current.QueryCataLog(_CateLogId); //FileStream _infoStream = new FileStream(_ImageSrc, FileMode.Open, FileAccess.Read); //await Navigation.PushModalAsync(new ImageDetail(Convert.FromBase64String(IamgeSaveInfoList[0].Imagebuffer), ImageColorInfoList, _ImageSrc)); EventArgsEx eventargs = new EventArgsEx(); eventargs.ByteArray = Convert.FromBase64String(IamgeSaveInfoList[0].Imagebuffer); eventargs.InputList = ImageColorInfoList; eventargs.Filepath = _ImageSrc; if (cataLogInfo != null) { eventargs.TitleName = cataLogInfo.Title; } await Navigation.PopModalAsync(); OperationCompeleted?.Invoke(this, eventargs); } }
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); } }