Esempio n. 1
0
        public override int?Save(string action)
        {
            var data = new FieldConfigurationDataModel();

            data.FieldConfigurationId          = FieldConfigurationId;
            data.SystemEntityTypeId            = SystemEntityTypeId;
            data.ApplicationId                 = ApplicationId;
            data.FieldConfigurationDisplayName = DisplayName;
            data.Name                     = Name;
            data.Value                    = Value;
            data.Width                    = Width;
            data.Formatting               = Formatting;
            data.ControlType              = ControlType;
            data.HorizontalAlignment      = HorizontalAlignment;
            data.GridViewPriority         = GridViewPriority;
            data.DetailsViewPriority      = DetailsViewPriority;
            data.FieldConfigurationModeId = FieldConfigurationModeId;
            data.DisplayColumn            = DisplayColumn;
            data.CellCount                = CellCount;

            if (action == "Insert")
            {
                var dtFieldConfiguration = FieldConfigurationDataManager.DoesExist(data, SessionVariables.RequestProfile);

                if (dtFieldConfiguration.Rows.Count == 0)
                {
                    data.FieldConfigurationId = FieldConfigurationDataManager.Create(data, SessionVariables.RequestProfile);

                    var dataDisplayName = new FieldConfigurationDisplayNameDataModel();
                    dataDisplayName.FieldConfigurationId = data.FieldConfigurationId;
                    dataDisplayName.Value      = DisplayName;
                    dataDisplayName.LanguageId = ApplicationCommon.LanguageId;
                    dataDisplayName.IsDefault  = 1;

                    FieldConfigurationDisplayNameDataManager.Create(dataDisplayName, SessionVariables.RequestProfile);
                }
                else
                {
                    throw new Exception("Unique Combination already exists.");
                }
            }
            else
            {
                FieldConfigurationDataManager.Update(data, SessionVariables.RequestProfile);
            }

            FieldConfigurationUtility.SetFieldConfigurations();

            // not correct ... when doing insert, we didn't get/change the value of FieldConfigurationId ?
            return(data.FieldConfigurationId);
        }