/// <summary> /// 同名相册是否已存在 /// </summary> /// <param name="_AlbumName">相册名称</param> /// <returns></returns> public bool AlbumBolIsExt(string _AlbumName) { bool bolIsExt = false; IObjectContainer db = DataHelper.Instance.GetDbObj(typeof(RootAlbum)); try { IObjectSet _result = db.Query(typeof(RootAlbum)); RootAlbum root = (RootAlbum)_result.Next(); if (root.SubAlbums != null && root.SubAlbums.Count > 0) { foreach (Album _albuminfo in root.SubAlbums) { if (_albuminfo.AlbumName.Trim().ToLower() == _AlbumName.Trim().ToLower()) { bolIsExt = true; break; } } } } catch (Exception ex) { } finally { db.Close(); } return(bolIsExt); }
/// <summary> /// 加载数据库信息 /// </summary> private static void LoadingDbInfo() { DbSavePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "luowanliPhoto.yap"); bool IsFirsInit = false; if (!File.Exists(DbSavePath)) { IsFirsInit = true; } IObjectContainer db = Db4oFactory.OpenFile(DbSavePath); try { if (IsFirsInit) { RootAlbum rootalbum = new RootAlbum(); rootalbum.LastUpDateTime = DateTime.Now; db.Store(rootalbum);//初始化数据 } } finally { db.Close(); //关闭 } }
/// <summary> /// 编辑照片信息 /// </summary> /// <param name="_AlbumNo"></param> /// <param name="_photoinfo"></param> /// <returns></returns> public Model.ManagerStateMsg EditPhoto(string _AlbumNo, Model.PhotoInfo _photoinfo) { Model.ManagerStateMsg msg = new Model.ManagerStateMsg(false, "方法 EditPhoto 执行出现错误!"); IObjectContainer db = DataHelper.Instance.GetDbObj(typeof(RootAlbum)); try { IObjectSet _result = db.Query(typeof(RootAlbum)); RootAlbum root = (RootAlbum)_result.Next(); if (root.SubAlbums != null && root.SubAlbums.Count > 0) { foreach (Album _abm in root.SubAlbums) { if (_abm.AlbumNO == _AlbumNo) { int Imgindex = GetPhotoIndex(_abm.SubPhotos, _photoinfo.PhotoName);//返回照片索引 if (Imgindex > -1) { _abm.SubPhotos[Imgindex].PhotoName = _photoinfo.PhotoName; _abm.SubPhotos[Imgindex].PhotoRemark = _photoinfo.PhotoRemark; _abm.UpdateDate = DateTime.Now; msg.Statevalue = true; msg.MsgInfo = "编辑信息保存 成功!"; } else { msg.Statevalue = false; msg.MsgInfo = "未找到符合条件的照片!"; } break; } } if (msg.Statevalue) { db.Store(root);//保存 db.Commit(); } } else { msg.Statevalue = false; msg.MsgInfo = "不存在任何相册!"; } } catch (Exception ex) { msg.Statevalue = false; msg.MsgInfo = ex.Message; } finally { db.Close(); } return(msg); }
/// <summary> /// 添加照片 /// </summary> /// <param name="_AlbumNo">照片编号</param> /// <param name="_photoinfo">照片信息</param> /// <returns></returns> public Model.ManagerStateMsg AddPhoto(string _AlbumNo, Model.PhotoInfo _photoinfo) { Model.ManagerStateMsg msg = new Model.ManagerStateMsg(false, "方法 AddPhoto 执行出现错误!"); IObjectContainer db = DataHelper.Instance.GetDbObj(typeof(RootAlbum)); try { IObjectSet _result = db.Query(typeof(RootAlbum)); RootAlbum root = (RootAlbum)_result.Next(); if (root.SubAlbums != null && root.SubAlbums.Count > 0) { foreach (Album _abm in root.SubAlbums) { if (_abm.AlbumNO == _AlbumNo) { if (_abm.SubPhotos == null) { _abm.SubPhotos = new List <PhotoInfo>(); } if (_abm.SubPhotos.Count == 0) { _abm.AlbumTitleImg = _photoinfo.PhotoMiniData; _photoinfo.IsTitleImg = true; } _abm.SubPhotos.Add(_photoinfo); break; } } db.Store(root); db.Commit(); msg.ReturnValue = _photoinfo; msg.Statevalue = true; msg.MsgInfo = "保存成功"; } else { msg.Statevalue = false; msg.MsgInfo = "不存在任何相册!"; } } catch (Exception ex) { msg.Statevalue = false; msg.MsgInfo = ex.Message; } finally { db.Close(); } return(msg); }
/// <summary> /// 编辑相册信息 /// </summary> /// <param name="_albuminfo">相册信息</param> /// <returns></returns> public ManagerStateMsg EditAlbum(Album _albuminfo) { ManagerStateMsg msg = new ManagerStateMsg(false, "方法 EditAlbum 执行出现错误!"); IObjectContainer db = DataHelper.Instance.GetDbObj(typeof(RootAlbum)); try { IObjectSet _result = db.Query(typeof(RootAlbum)); RootAlbum root = (RootAlbum)_result.Next(); if (root.SubAlbums != null && root.SubAlbums.Count > 0) { foreach (Album _album in root.SubAlbums) { if (_album.AlbumNO == _albuminfo.AlbumNO) { _album.AlbumName = _albuminfo.AlbumName; _album.AlbumRemark = _albuminfo.AlbumRemark; _album.UpdateDate = DateTime.Now; db.Store(root); db.Commit(); msg.MsgInfo = "相册信息更新成功!"; msg.Statevalue = true; break; } } } if (msg.Statevalue) { } else { msg.MsgInfo = "未找到符合条件的相册!"; } } catch (Exception ex) { msg.MsgInfo = ex.Message; } finally { db.Close(); } return(msg); }
/// <summary> /// 更改相册封面 /// </summary> /// <param name="_albumNo">相册编号</param> /// <param name="_photoNo">封面照片编号</param> /// <returns></returns> public ManagerStateMsg ChangeTitleImg(string _albumNo, string _photoNo) { ManagerStateMsg msg = new ManagerStateMsg(false, "方法 ChangeTitleImg 执行出现错误!"); IObjectContainer db = DataHelper.Instance.GetDbObj(typeof(RootAlbum)); try { IObjectSet _result = db.Query(typeof(RootAlbum)); RootAlbum root = (RootAlbum)_result.Next(); if (root.SubAlbums != null && root.SubAlbums.Count > 0) { foreach (Album _album in root.SubAlbums) { if (_album.AlbumNO == _albumNo) { ChangeAlbumTitleImg(_album, _photoNo);//更新相册封面 db.Store(root); db.Commit(); msg.MsgInfo = "相册首页更新成功!"; msg.Statevalue = true; break; } } } if (msg.Statevalue) { } else { msg.MsgInfo = "未找到符合条件的相册!"; } } catch (Exception ex) { msg.MsgInfo = ex.Message; } finally { db.Close(); } return(msg); }
/// <summary> /// 创建相册 /// </summary> /// <param name="_albuminfo"></param> /// <returns></returns> public ManagerStateMsg SaveAlbum(Album _albuminfo) { bool albumIsExtbol = AlbumBolIsExt(_albuminfo.AlbumName);//相册是否已存在 ManagerStateMsg msg = new ManagerStateMsg(false, ""); if (!albumIsExtbol) { IObjectContainer db = DataHelper.Instance.GetDbObj(typeof(RootAlbum)); try { IObjectSet _result = db.Query(typeof(RootAlbum)); RootAlbum root = (RootAlbum)_result.Next(); if (root.SubAlbums != null && root.SubAlbums.Count > 0) { root.SubAlbums.Add(_albuminfo); } else { root.SubAlbums = new List <Album>(); root.SubAlbums.Add(_albuminfo); } db.Store(root); db.Commit(); msg.ReturnValue = _albuminfo; msg.Statevalue = true; msg.MsgInfo = "保存成功"; } catch (Exception ex) { } finally { db.Close(); } } else { msg.MsgInfo = "同名相册已存在!"; } return(msg); }
/// <summary> /// 获取相册列表 /// </summary> /// <returns></returns> public List <Album> GetAlbumList() { List <Album> Albums = new List <Album>(); IObjectContainer db = DataHelper.Instance.GetDbObj(typeof(RootAlbum)); try { IObjectSet _result = db.Query(typeof(RootAlbum)); RootAlbum root = (RootAlbum)_result.Next(); if (root.SubAlbums != null && root.SubAlbums.Count > 0) { Albums = root.SubAlbums; } } catch (Exception ex) { } finally { db.Close(); } return(Albums); }
/// <summary> /// 删除照片 /// </summary> /// <param name="_AlbumNo"></param> /// <param name="_photoNo"></param> /// <returns></returns> public Model.ManagerStateMsg DeletePhoto(string _AlbumNo, string _photoNo) { Model.ManagerStateMsg msg = new Model.ManagerStateMsg(false, "方法 EditPhoto 执行出现错误!"); IObjectContainer db = DataHelper.Instance.GetDbObj(typeof(RootAlbum)); try { IObjectSet _result = db.Query(typeof(RootAlbum)); RootAlbum root = (RootAlbum)_result.Next(); if (root.SubAlbums != null && root.SubAlbums.Count > 0) { foreach (Album _abm in root.SubAlbums) { if (_abm.AlbumNO == _AlbumNo) { int Imgindex = GetPhotoIndex(_abm.SubPhotos, _photoNo);//返回照片索引 if (Imgindex > -1) { bool bolistitleimg = false; if (_abm.SubPhotos[Imgindex].IsTitleImg) { bolistitleimg = true; } _abm.SubPhotos.RemoveAt(Imgindex);//删除照片 if (_abm.SubPhotos.Count > 0) { if (bolistitleimg) { _abm.AlbumTitleImg = _abm.SubPhotos[0].PhotoMiniData; } } else { _abm.AlbumTitleImg = ""; } msg.Statevalue = true; msg.MsgInfo = "删除成功!"; } else { msg.Statevalue = false; msg.MsgInfo = "未找到符合条件的照片!"; } break; } } if (msg.Statevalue) { db.Store(root);//保存 db.Commit(); } } else { msg.Statevalue = false; msg.MsgInfo = "不存在任何相册!"; } } catch (Exception ex) { msg.Statevalue = false; msg.MsgInfo = ex.Message; } finally { db.Close(); } return(msg); }