public static async Task <RepositoryResponse <AdditionalViewModel> > GetAdditionalData( MixDatabaseParentType parentType, string parentId, HttpRequest request, string culture = null, MixCmsContext _context = null, IDbContextTransaction _transaction = null) { UnitOfWorkHelper <MixCmsContext> .InitTransaction(_context, _transaction, out MixCmsContext context, out IDbContextTransaction transaction, out bool isRoot); try { // Additional Data is sub data of page / post / module only culture = culture ?? MixService.GetConfig <string>(MixAppSettingKeywords.DefaultCulture); var databaseName = request.Query["databaseName"].ToString(); return(await LoadAdditionalDataAsync(parentType, parentId, databaseName, culture, context, transaction)); } catch (Exception ex) { return(UnitOfWorkHelper <MixCmsContext> .HandleException <AdditionalViewModel>(ex, isRoot, transaction)); } finally { if (isRoot) { //if current Context is Root UnitOfWorkHelper <MixCmsContext> .CloseDbContext(ref context, ref transaction); } } }
private void GetAdditionalData(string id, MixDatabaseParentType type, MixCmsContext context, IDbContextTransaction transaction) { var getRelatedData = MixRelatedAttributeDatas.ImportViewModel.Repository.GetFirstModel( m => m.Specificulture == Specificulture && m.ParentType == type && m.ParentId == id, context, transaction); if (getRelatedData.IsSucceed) { RelatedData = (getRelatedData.Data); } }
public static async Task <RepositoryResponse <List <MixDatabaseDataAssociation> > > RemoveRelatedDataAsync( string parentId, MixDatabaseParentType parentType, string specificulture , MixCmsContext context, IDbContextTransaction transaction) { var result = await MixDatabaseDataAssociations.DeleteViewModel.Repository.RemoveListModelAsync( true , a => a.ParentId == parentId && a.ParentType == parentType && a.Specificulture == specificulture , context, transaction); return(result); }
public void LoadData(string parentId, MixDatabaseParentType parentType, string specificulture, int?pageSize = null, int?pageIndex = 0 , MixCmsContext _context = null, IDbContextTransaction _transaction = null) { var getData = MixDatabaseDataAssociations.ReadMvcViewModel.Repository .GetModelListBy( m => m.ParentId == parentId && m.ParentType == parentType && m.Specificulture == specificulture , MixService.GetConfig <string>(MixAppSettingKeywords.OrderBy), 0 , pageSize, pageIndex , _context: _context, _transaction: _transaction); Data = getData.Data; }
public static async Task <RepositoryResponse <PaginationModel <TView> > > GetAttributeDataByParent <TView>( string culture, string attributeSetName, string parentId, MixDatabaseParentType parentType, string orderBy = "CreatedDateTime", Heart.Enums.MixHeartEnums.DisplayDirection direction = MixHeartEnums.DisplayDirection.Desc, int?pageSize = null, int?pageIndex = 0, MixCmsContext _context = null, IDbContextTransaction _transaction = null) where TView : ViewModelBase <MixCmsContext, MixAttributeSetData, TView> { return(await ViewModels.MixAttributeSetDatas.Helper.GetAttributeDataByParent <TView>( culture, attributeSetName, parentId, parentType, orderBy, direction, pageSize, pageIndex, _context, _transaction)); }
private void ExportAdditionalData(string id, MixDatabaseParentType type, MixCmsContext context, IDbContextTransaction transaction) { if (!RelatedData.Any(m => m.ParentId == id && m.ParentType == type)) { var getRelatedData = MixDatabaseDataAssociations.ImportViewModel.Repository.GetSingleModel( m => m.Specificulture == Specificulture && m.ParentType == type && m.ParentId == id, context, transaction); if (getRelatedData.IsSucceed) { RelatedData.Add(getRelatedData.Data); } } }
public static async Task <RepositoryResponse <PaginationModel <ReadMvcViewModel> > > GetMixDataByParent( string mixDatabaseName, string parentId, MixDatabaseParentType parentType, string culture = null, string orderBy = "CreatedDateTime", DisplayDirection direction = DisplayDirection.Desc, int?pageSize = null, int?pageIndex = 0, MixCmsContext _context = null, IDbContextTransaction _transaction = null) { culture ??= MixService.GetAppSetting <string>(MixAppSettingKeywords.DefaultCulture); return(await Helper.GetMixDataByParent <ReadMvcViewModel>( culture, mixDatabaseName, parentId, parentType, orderBy, direction, pageSize, pageIndex, _context, _transaction)); }
public static async Task <RepositoryResponse <AdditionalViewModel> > GetAdditionalData( MixDatabaseParentType parentType, int parentId, HttpRequest request, string culture = null, MixCmsContext _context = null, IDbContextTransaction _transaction = null) { UnitOfWorkHelper <MixCmsContext> .InitTransaction(_context, _transaction, out MixCmsContext context, out IDbContextTransaction transaction, out bool isRoot); try { // Additional Data is sub data of page / post / module only culture = culture ?? MixService.GetConfig <string>("DefaultCulture"); var databaseName = request.Query["databaseName"].ToString(); var dataId = (await context.MixRelatedAttributeData.FirstOrDefaultAsync( m => m.AttributeSetName == databaseName && m.ParentType == parentType && m.ParentId == parentId.ToString() && m.Specificulture == culture))?.DataId; if (!string.IsNullOrEmpty(dataId)) { return(await AdditionalViewModel.Repository.GetSingleModelAsync( m => m.Id == dataId && m.Specificulture == culture , context, transaction)); } else { // Init default data var getAttrSet = await Lib.ViewModels.MixAttributeSets.UpdateViewModel.Repository.GetSingleModelAsync( m => m.Name == request.Query["databaseName"].ToString() , context, transaction); if (getAttrSet.IsSucceed) { AdditionalViewModel result = new AdditionalViewModel() { Specificulture = culture, AttributeSetId = getAttrSet.Data.Id, AttributeSetName = getAttrSet.Data.Name, Status = MixContentStatus.Published, Fields = getAttrSet.Data.Fields, ParentType = parentType }; result.ExpandView(context, transaction); return(new RepositoryResponse <AdditionalViewModel>() { IsSucceed = true, Data = result }); } } return(new RepositoryResponse <AdditionalViewModel>()); } catch (Exception ex) { return(UnitOfWorkHelper <MixCmsContext> .HandleException <AdditionalViewModel>(ex, isRoot, transaction)); } finally { if (isRoot) { //if current Context is Root UnitOfWorkHelper <MixCmsContext> .CloseDbContext(ref context, ref transaction); } } }
public static RepositoryResponse <AdditionalViewModel> LoadAdditionalData( MixDatabaseParentType parentType, string parentId, string databaseName, string culture = null, MixCmsContext _context = null, IDbContextTransaction _transaction = null) { culture = culture ?? MixService.GetConfig <string>("DefaultCulture"); UnitOfWorkHelper <MixCmsContext> .InitTransaction(_context, _transaction, out MixCmsContext context, out IDbContextTransaction transaction, out bool isRoot); try { var dataId = context.MixRelatedAttributeData.FirstOrDefault( m => m.AttributeSetName == databaseName && m.ParentType == parentType && m.ParentId == parentId && m.Specificulture == culture)?.DataId; if (!string.IsNullOrEmpty(dataId)) { return(AdditionalViewModel.Repository.GetSingleModel( m => m.Id == dataId && m.Specificulture == culture , context, transaction)); } else { // Init default data var getAttrSet = MixAttributeSets.UpdateViewModel.Repository.GetSingleModel( m => m.Name == databaseName , context, transaction); if (getAttrSet.IsSucceed) { AdditionalViewModel result = new AdditionalViewModel() { Specificulture = culture, AttributeSetId = getAttrSet.Data.Id, AttributeSetName = getAttrSet.Data.Name, Status = MixContentStatus.Published, Fields = getAttrSet.Data.Fields, ParentType = parentType, ParentId = parentId }; result.ExpandView(context, transaction); return(new RepositoryResponse <AdditionalViewModel>() { IsSucceed = true, Data = result }); } return(new RepositoryResponse <AdditionalViewModel>()); } } catch (Exception ex) { return(UnitOfWorkHelper <MixCmsContext> .HandleException <AdditionalViewModel>(ex, isRoot, transaction)); } finally { if (isRoot) { //if current Context is Root UnitOfWorkHelper <MixCmsContext> .CloseDbContext(ref context, ref transaction); } } }