/// <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); }
/// <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); }