private static bool?ConvertToBool(this ClientFieldData field)
        {
            if (field == null || field.Value == null || field.Value == string.Empty)
            {
                return(null);
            }

            return(field.Value.Equals("True"));
        }
        private static int?ConvertToNullableInt(this ClientFieldData field, bool returnNullInFail = false)
        {
            if (field == null)
            {
                return(null);
            }

            return(field.Value.ConvertToNullableInt(returnNullInFail));
        }
        private static string ConvertToString(this ClientFieldData field)
        {
            if (field == null)
            {
                return(null);
            }

            return(field.Value);
        }
        private static List <int> ConvertToListInt(this ClientFieldData field, bool returnCeroInFail = false)
        {
            if (field == null || field.Value == null || field.Value.ToString() == string.Empty)
            {
                return(new List <int>());
            }

            return(field.Value.Split(',').Select(x => x.ToString().ConvertToInt(returnCeroInFail)).ToList());
        }
        private static List <int> GetValues(ClientFieldData fieldValue)
        {
            var values = new List <int>();

            if (fieldValue != null && !string.IsNullOrWhiteSpace(fieldValue.Value))
            {
                values.AddRange(fieldValue.Value.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries).Select(item => Convert.ToInt32(item)));
            }

            return(values);
        }
        private static ClientFieldData GetDate(ClientFieldData date)
        {
            if (date != null)
            {
                if (date.Value != string.Empty && !date.Value.Contains("/"))
                {
                    date.Value = Convert.ToDateTime(date.Value).ToString("dd/MM/yyyy");
                }
            }

            return(date);
        }
        private static int ConvertToInt(this ClientFieldData field, bool returnCeroInFail = false)
        {
            if (field == null)
            {
                if (returnCeroInFail)
                {
                    return(0);
                }
                else
                {
                    throw new ArgumentException();
                }
            }

            return(field.Value.ConvertToInt(returnCeroInFail));
        }
        private static void DetermineType(MissionViewModel viewModel, ClientFieldData[] clientFieldData)
        {
            //Verify if Type is ESG
            var ESGtype = clientFieldData.FirstOrDefault(o => o.Name.Equals("organizationalUnitText"));

            if (ESGtype != null)
            {
                if (ESGtype.Value.ToString() == "VPS/ESG")
                {
                    // if ESG get id from hidden
                    var typeESGIdHidden = clientFieldData.FirstOrDefault(o => o.Name.Equals("typeESGIdHidden"));
                    if (typeESGIdHidden != null)
                    {
                        viewModel.OrganizationalUnitId = Convert.ToInt32(typeESGIdHidden.Value.ToString());
                        return;
                    }
                }
            }

            //determine from where Type is is getted
            var             hasOnlyOneOrgUnit  = clientFieldData.FirstOrDefault(o => o.Name.Equals("hasOnlyOneOrgUnit"));
            ClientFieldData organizationalUnit = null;

            if (hasOnlyOneOrgUnit != null)
            {
                if (Convert.ToBoolean(hasOnlyOneOrgUnit.Value))
                {
                    //if type is in texbox, get id from hidden
                    organizationalUnit = clientFieldData.FirstOrDefault(o => o.Name.Equals("organizationalUnitIdHidden"));
                }
                else
                {
                    // get the value from combobox
                    organizationalUnit = clientFieldData.FirstOrDefault(o => o.Name.Equals("organizationalUnit"));
                }

                if (organizationalUnit != null)
                {
                    viewModel.OrganizationalUnitId = Convert.ToInt32(organizationalUnit.Value.ToString());
                }
            }
        }
Exemple #9
0
        public static List <VerUserViewModel> ParseClientFieldDataToViewModel(ClientFieldData dataClient)
        {
            var participantNames = new List <VerUserViewModel>();

            string[] idParticipants = dataClient.Value == null ? new[] { string.Empty } : dataClient.Value.Split(',');

            foreach (var participant in idParticipants)
            {
                int participantId;
                var isNumber         = int.TryParse(participant, out participantId);
                var verUserViewModel = new VerUserViewModel
                {
                    IdUserName = isNumber ? participantId.ToString() : null,
                    Username   = isNumber ? null : participant
                };
                participantNames.Add(verUserViewModel);
            }

            return(participantNames);
        }
Exemple #10
0
        private static void UpdateTemplateCommon(this EditTemplatePageViewModel model, ClientFieldData[] formData)
        {
            ClientFieldData field = null;

            field = formData.FirstOrDefault(x => x.Name == "version");
            if (field != null)
            {
                model.Template.Common.Version = field.Value;
            }

            field = formData.FirstOrDefault(x => x.Name == "description");
            if (field != null)
            {
                model.Template.Common.Description = field.Value;
            }

            // Technical Field Data
            // Remove default technical field
            model.Template.Common.TechnicalFields.RemoveAll(x => x.TechnicalFieldTemplateId == 0);
            var techincals = formData.Where(x => x.Name == "technicalFieldName" ||
                                            x.Name.Contains("typeTF-new-") ||
                                            x.Name.Contains("typeTFValue-") ||
                                            x.Name.Contains("IsActive"));

            var oldTechnical = techincals.Where(x => x.ExtraData.ContainsKey("data-persist-old-id"));
            var newTechnical = techincals.Where(x => x.ExtraData.ContainsKey("data-persist-new-id"));

            var oldGrouped = oldTechnical.GroupBy(x => x.ExtraData.FirstOrDefault(y => y.Key == "data-persist-old-id"));
            var newGrouped = newTechnical.GroupBy(x => x.ExtraData.FirstOrDefault(y => y.Key == "data-persist-new-id"));

            List <TechnicalFieldViewModel> newTechnicalFields = new List <TechnicalFieldViewModel>();

            foreach (var oldItem in oldGrouped)
            {
                var technicalModel = model.Template.Common.TechnicalFields.First(x => x.TechnicalFieldTemplateId.ToString() == oldItem.Key.Value);

                field = oldItem.FirstOrDefault(x => x.Name == "technicalFieldName");
                if (field != null)
                {
                    technicalModel.Name = field.Value;
                }

                field = oldItem.FirstOrDefault(x => x.Name.Contains("IsActive"));
                if (field != null)
                {
                    technicalModel.IsActive = !GetBoolValue(field.Value);
                }

                field = oldItem.FirstOrDefault(x => x.Name.Contains("typeTFValue-"));
                if (field != null)
                {
                    technicalModel.Type = field.Value == "text" ? TechnicalFieldTypeEnum.Text : TechnicalFieldTypeEnum.Bool;
                }

                newTechnicalFields.Add(technicalModel);
            }

            foreach (var newItem in newGrouped)
            {
                var technicalModel = new TechnicalFieldViewModel();

                field = newItem.FirstOrDefault(x => x.Name == "technicalFieldName");
                if (field != null)
                {
                    technicalModel.Name = field.Value;
                }

                field = newItem.FirstOrDefault(x => x.Name.Contains("typeTF-new-"));
                if (field != null)
                {
                    technicalModel.Type = field.Value == "text" ? TechnicalFieldTypeEnum.Text : TechnicalFieldTypeEnum.Bool;
                }

                field = newItem.FirstOrDefault(x => x.Name == "IsActive");
                if (field != null)
                {
                    technicalModel.IsActive = !GetBoolValue(field.Value);
                }

                newTechnicalFields.Add(technicalModel);
            }

            model.Template.Common.TechnicalFields = newTechnicalFields;
        }
 private static bool GetBoolValue(ClientFieldData field, bool valueIfNull = false)
 {
     return(field == null ? valueIfNull : GetBoolValue(field.Value));
 }