示例#1
0
        private void SetHiddenState(FieldPropertyDto dto, bool isHidden)
        {
            var dbSet = _dataService.GetDbSet <FieldPropertyItemVisibility>();

            var forEntity = Enum.Parse <FieldPropertiesForEntityType>(dto.ForEntity, true);

            var roleId = string.IsNullOrEmpty(dto.RoleId)
                ? (Guid?)null
                : Guid.Parse(dto.RoleId);


            var visibilityItem = dbSet.SingleOrDefault(x => x.ForEntity == forEntity &&
                                                       x.RoleId == roleId &&
                                                       x.FieldName == dto.FieldName);

            if (visibilityItem == null && isHidden)
            {
                visibilityItem = new FieldPropertyItemVisibility
                {
                    Id        = Guid.NewGuid(),
                    ForEntity = forEntity,
                    RoleId    = roleId,
                    FieldName = dto.FieldName,
                    IsHidden  = isHidden
                };
                dbSet.Add(visibilityItem);
            }
            else if (visibilityItem != null)
            {
                visibilityItem.IsHidden = isHidden;
            }

            _dataService.SaveChanges();
        }
示例#2
0
        public ValidateResult ToggleHiddenState(ToggleHiddenStateDto dto)
        {
            var dbSet = _dataService.GetDbSet <FieldPropertyItemVisibility>();

            var forEntity = Enum.Parse <FieldPropertiesForEntityType>(dto.ForEntity, true);

            var roleId = string.IsNullOrEmpty(dto.RoleId)
                ? (Guid?)null
                : Guid.Parse(dto.RoleId);


            var visibilityItem = dbSet.SingleOrDefault(x => x.ForEntity == forEntity &&
                                                       x.RoleId == roleId &&
                                                       x.FieldName == dto.FieldName);

            if (visibilityItem == null)
            {
                visibilityItem = new FieldPropertyItemVisibility
                {
                    Id        = Guid.NewGuid(),
                    ForEntity = forEntity,
                    RoleId    = roleId,
                    FieldName = dto.FieldName,
                    IsHidden  = true
                };
                dbSet.Add(visibilityItem);
            }
            else
            {
                visibilityItem.IsHidden = !visibilityItem.IsHidden;
            }

            _dataService.SaveChanges();

            return(new ValidateResult());
        }