Example #1
0
        /// <summary>
        /// Reads required rule config fields.
        /// </summary>
        /// <param name="process">The process.</param>
        /// <param name="sr">The reader.</param>
        /// ProcessCommandSecurityConfigurations
        private static void ReadRequiredRuleConfigFields(ProcessEditDto process, SafeDataReader sr)
        {
            sr.NextResult();

            int? requiredConfigId = null;
            RequiredRuleConfigEditDto config = null;

            while (sr.Read())
            {
                var configFieldDto = new RequiredRuleConfigFieldEditDto
                {
                    Id = sr.GetInt32(0),
                    RequiredConfigId = sr.GetInt32(1),
                    Guid = sr.GetGuid(2),
                    FieldGuid = sr.GetGuid(3),
                    IsRequired = sr.GetBoolean(4)
                };

                if (configFieldDto.RequiredConfigId != requiredConfigId)
                {
                    config = process.RequiredRuleConfigs.First(rrc => rrc.Id == configFieldDto.RequiredConfigId);
                    requiredConfigId = configFieldDto.RequiredConfigId;
                }

                config.FieldList.Add(configFieldDto);
            }
        }
Example #2
0
        /// <summary>
        /// Updates required rule config field.
        /// </summary>
        /// <param name="dto">The DTO object.</param>
        /// <exception cref="System.ArgumentException">The input DTO is null.</exception>
        /// <exception cref="System.Data.DBConcurrencyException">Indicates stale data.</exception>
        public void UpdateRequiredRuleConfigField(RequiredRuleConfigFieldEditDto dto)
        {
            if (dto == null) throw new ArgumentException(string.Format(CultureInfo.InvariantCulture, Resources.NullArguementException, "dto"));

            const string CommandText = @"
UPDATE  [dbo].[RequiredRuleConfigFields]
SET     [RequiredConfigId] = @requiredConfigId ,
        [Guid] = @guid ,
        [LastModifiedOn] = GETDATE() ,
        [FieldGuid] = @fieldGuid ,
        [IsRequired] = @isRequired
WHERE   [Id] = @id";

            using (var cmd = new SqlCommand(CommandText))
            {
                cmd.Parameters.AddWithValue("@id", dto.Id);
                cmd.Parameters.AddWithValue("@requiredConfigId", dto.RequiredConfigId);
                cmd.Parameters.AddWithValue("@guid", dto.Guid);
                cmd.Parameters.AddWithValue("@fieldGuid", dto.FieldGuid);
                cmd.Parameters.AddWithValue("@isRequired", dto.IsRequired);

                var rowsAffected = Database.Execute(cmd);
                if (rowsAffected == 0)
                {
                    throw new DBConcurrencyException(Resources.StaleDataException);
                }
            }
        }
Example #3
0
        /// <summary>
        /// Inserts required rule config field.
        /// </summary>
        /// <param name="dto">The DTO object.</param>
        /// <exception cref="System.ArgumentException">The input DTO is null.</exception>
        /// <exception cref="System.Data.DBConcurrencyException">Indicates stale data.</exception>
        public void InsertRequiredRuleConfigField(RequiredRuleConfigFieldEditDto dto)
        {
            if (dto == null) throw new ArgumentException(string.Format(CultureInfo.InvariantCulture, Resources.NullArguementException, "dto"));

            const string CommandText = @"
INSERT  INTO [dbo].[RequiredRuleConfigFields]
        ( [RequiredConfigId] ,
          [Guid] ,
          [LastModifiedOn] ,
          [FieldGuid] ,
          [IsRequired]
        )
VALUES  ( @requiredConfigId ,
          @guid ,
          GETDATE() ,
          @fieldGuid ,
          @isRequired
        );
SELECT  @id = SCOPE_IDENTITY();";

            using (var cmd = new SqlCommand(CommandText))
            {
                var idParam = cmd.Parameters.AddWithValue("@id", SqlDbType.Int);
                idParam.Direction = ParameterDirection.Output;
                cmd.Parameters.AddWithValue("@requiredConfigId", dto.RequiredConfigId);
                cmd.Parameters.AddWithValue("@guid", dto.Guid);
                cmd.Parameters.AddWithValue("@fieldGuid", dto.FieldGuid);
                cmd.Parameters.AddWithValue("@isRequired", dto.IsRequired);

                var rowsAffected = Database.Execute(cmd);
                if (rowsAffected == 0)
                {
                    throw new DBConcurrencyException(Resources.StaleDataException);
                }

                dto.Id = (int)idParam.Value;
            }
        }