Esempio n. 1
0
        /// <summary>
        /// get list of FormFields and FormConfig
        /// </summary>
        /// <param name="formGroupId">as string</param>
        /// <param name="periodId">as integer</param>
        /// <returns>field mapping model</returns>
        public FieldMappingModel GetFieldMappingData(string formGroupId, int periodId)
        {
            FieldMappingModel fieldMappingModel = new FieldMappingModel();
            /// Initialize DTO list object
            List <EntityModel.FormConfig> formConfigListDto = new List <EntityModel.FormConfig>();
            List <EntityModel.FormField>  formFieldListDto  = new List <EntityModel.FormField>();

            /// get period name
            string periodName = Entities.Periods.Where(x => x.PeriodId == periodId).Select(x => x.PeriodName).FirstOrDefault();

            /// get formconfig data
            formConfigListDto = Entities
                                .FormConfigs.Where(x => x.PeriodId == periodId && x.FormGroupId == formGroupId && -100 == x.StudyId)
                                .OrderBy(x => x.Order).ToList();

            ///// initialize mapping source and destination model
            //Mapper.Initialize(cfg =>
            //{
            //    cfg.CreateMap<EntityModel.FormConfig, FieldMappingFormConfig>();
            //    cfg.CreateMap<EntityModel.FormField, FieldMappingFormField>();
            //});

            fieldMappingModel.PeriodName = periodName;
            fieldMappingModel.PeriodId   = periodId;
            fieldMappingModel.PageId     = formGroupId;
            /// data copying from source to destination model
            List <FieldMappingFormConfig> formConfigList = mapper.Map <List <FieldMappingFormConfig> >(formConfigListDto);

            fieldMappingModel.FormConfig = formConfigList;

            /// initialize FieldMappingFormField list object
            List <FieldMappingFormField> formFieldList = new List <FieldMappingFormField>();

            /// add formfield list item into FormFields list
            foreach (FieldMappingFormConfig formConfig in fieldMappingModel.FormConfig)
            {
                formFieldListDto = Entities.FormFields.Where(x => x.FormId == formConfig.FormId).OrderBy(x => x.Order).ToList();
                foreach (var formField in formFieldListDto)
                {
                    FieldMappingFormField formFieldData = mapper.Map <FieldMappingFormField>(formField);
                    formFieldList.Add(formFieldData);
                }
            }
            fieldMappingModel.FormFields = formFieldList;

            /// add data type
            List <EntityModel.ListOfValue> listOfValueList = new List <EntityModel.ListOfValue>();

            listOfValueList            = Entities.ListOfValues.Where(x => x.LOVId == "datatype").ToList();
            fieldMappingModel.DataType = mapper.Map <List <ListOfValuesModel> >(listOfValueList);
            return(fieldMappingModel);
        }
Esempio n. 2
0
        /// <summary>
        /// Add or Update formfields
        /// </summary>
        /// <param name="fieldMappingModel">as complex object</param>
        /// <returns>field mapping model</returns>
        public FieldMappingModel SaveFormFields(FieldMappingModel fieldMappingModel)
        {
            //List<StepCinemaDataLayer.EntityModel.FormField> data;
            string formGroupId = fieldMappingModel.FormFields.Select(x => x.FormGroupId).FirstOrDefault();
            int    periodId    = fieldMappingModel.FormFields.Select(x => x.PeriodId).FirstOrDefault();
            var    formFields  = fieldMappingModel.FormFields.ToList();

            ///update FormFields
            StepCinemaDataLayer.EntityModel.FormField data;
            foreach (FieldMappingFormField fieldMappingFormField in formFields)
            {
                data = Entities.FormFields
                       .Where(x => x.FormId == fieldMappingFormField.FormId &&
                              x.FieldId == fieldMappingFormField.FieldId &&
                              x.PeriodId == fieldMappingFormField.PeriodId &&
                              x.FormGroupId == fieldMappingFormField.FormGroupId &&
                              x.StudyId == fieldMappingModel.StudyId
                              )
                       .FirstOrDefault();
                if (data == null)
                {
                    /// add new foemfield
                    StepCinemaDataLayer.EntityModel.FormField formField = new EntityModel.FormField();
                    formField.FormId                = fieldMappingFormField.FormId;
                    formField.FormGroupId           = fieldMappingFormField.FormGroupId;
                    formField.FieldId               = fieldMappingFormField.FieldId;
                    formField.FieldLiteral          = fieldMappingFormField.FieldLiteral;
                    formField.FieldExportName       = fieldMappingFormField.FieldExportName;
                    formField.FieldDataType         = fieldMappingFormField.FieldDataType;
                    formField.PeriodId              = fieldMappingModel.PeriodId;
                    formField.StudyId               = fieldMappingModel.StudyId;
                    formField.Disabled              = fieldMappingFormField.Disabled;
                    formField.Display               = fieldMappingFormField.Display;
                    Entities.Entry(formField).State = System.Data.Entity.EntityState.Added;
                    Entities.SaveChanges();
                }
                else
                {
                    /// update formfield
                    data.FieldLiteral          = fieldMappingFormField.FieldLiteral;
                    data.FieldExportName       = fieldMappingFormField.FieldExportName;
                    data.FieldDataType         = fieldMappingFormField.FieldDataType;
                    data.Disabled              = fieldMappingFormField.Disabled;
                    data.Display               = fieldMappingFormField.Display;
                    Entities.Entry(data).State = System.Data.Entity.EntityState.Modified;
                    Entities.SaveChanges();
                }
            }

            return(GetFieldMappingData(formGroupId, periodId));
        }
        /// <summary>
        /// Convert a record item to mapped value
        /// </summary>
        /// <param name="record"></param>
        /// <param name="map"></param>
        /// <returns></returns>
        private static string GetFieldValue(Record record, FieldMappingModel map)
        {
            if (map == null)
            {
                return(string.Empty);
            }
            var  value = map.staticValue;
            Guid fieldGuid;

            if (Guid.TryParse(map.formField, out fieldGuid)) // get the id of the umbraco form field
            {
                var field = record.GetRecordField(fieldGuid);
                value = field.ValuesAsString();
            }
            return(value);
        }
        public string GetFieldValue(Record record, FieldMappingModel map)
        {
            if (map == null)
            {
                return(string.Empty);
            }
            var  value = map.StaticValue;
            Guid fieldGuid;

            if (Guid.TryParse(map.Field, out fieldGuid))
            {
                var field = record.GetRecordField(fieldGuid);
                value = field.ValuesAsString();
            }
            return(value);
        }
        public ActionResult FieldMapping(FormCollection formCollection, string pageId)
        {
            List <FieldMappingFormConfig> formConfigList = JsonConvert.DeserializeObject <List <FieldMappingFormConfig> >(formCollection["FormConfig"]);
            List <FieldMappingFormField>  formFieldList  = JsonConvert.DeserializeObject <List <FieldMappingFormField> >(formCollection["FormFields"]);
            var dal = GetDAL <StepCinemaDataLayer.DataAccess.StudiesLayer>();
            FieldMappingModel fieldMappingModel = new FieldMappingModel();

            fieldMappingModel.FormConfig = formConfigList;
            fieldMappingModel.FormFields = formFieldList;
            fieldMappingModel.StudyId    = Convert.ToInt32(formCollection["StudyNumber"]);
            fieldMappingModel.PeriodId   = Convert.ToInt32(formCollection["PeriodId"]);
            var model = dal.SaveFormFields(fieldMappingModel);

            model.PageName    = formCollection["PageName"];
            model.PageId      = formCollection["PageId"];
            model.StudyNumber = formCollection["StudyNumber"];
            model.StudyName   = formCollection["StudyName"];
            model.PeriodId    = Convert.ToInt32(formCollection["PeriodId"]);
            return(View(model));
        }
        private static List <FieldMappingModel> GetFieldMappings(IEnumerable <TemplateTab> tabs)
        {
            var fieldMappings = new List <FieldMappingModel>();

            foreach (var tab in tabs)
            {
                foreach (var field in tab.Fields)
                {
                    if (field.SelectedScField != "0")
                    {
                        var fieldMapping = new FieldMappingModel
                        {
                            CmsTemplateId = field.SelectedScField,
                            GcFieldId     = field.FieldId,
                            GcFieldName   = field.FieldName
                        };
                        fieldMappings.Add(fieldMapping);
                    }
                }
            }
            return(fieldMappings);
        }