Esempio n. 1
0
        private List <AssQuestionVo> GetAssessmentSectionQuestion(List <SectionVo> list, RequestAssessmentPcsVo objVo)
        {
            var result = new List <AssQuestionVo>();

            foreach (var section in list)
            {
                if (section.Order != 0)
                {
                    foreach (var sectionQuestion in section.SectionQuestions)
                    {
                        var obj = new AssQuestionVo
                        {
                            SectionQuestionId = sectionQuestion.Id,
                            Order             = sectionQuestion.Order,
                            IsSignature       = sectionQuestion.IsSignature,
                            IsMid             = sectionQuestion.IsMid,
                            Name      = sectionQuestion.Name,
                            SectionId = section.Order
                        };
                        result.Add(obj);
                    }
                }
            }
            return(result);
        }
Esempio n. 2
0
 private static void CheckGroupFieldToRequired(SectionTempleteVo parameter, AssQuestionVo item,
                                               List <SectionTempleteVo> parameters, object val, List <MessageErrorVo> listMessageError)
 {
     if (parameter.GroupFieldToRequired != null && parameter.GroupFieldToRequired.Any())
     {
         var index          = 0;
         var countParameter = parameter.GroupFieldToRequired.Count();
         foreach (var field in parameter.GroupFieldToRequired)
         {
             var data = GetPropValue(item, field);
             if (data != null && data.ToString().ToLower().Equals("true"))
             {
                 index++;
             }
         }
         if (index == countParameter)
         {
             if (val == null || val.ToString().ToLower().Equals("false"))
             {
                 item.IsValid = false;
                 AddMessageError(parameter, listMessageError, item);
             }
         }
     }
 }
Esempio n. 3
0
 private static void CheckGroupRequiredBool(SectionTempleteVo parameter, AssQuestionVo item, List <MessageErrorVo> listMessageError)
 {
     if (parameter.GroupRequiredFieldBool != null && parameter.GroupRequiredFieldBool.Any())
     {
         var index     = 0;
         var countList = parameter.GroupRequiredFieldBool.Count();
         foreach (var field in parameter.GroupRequiredFieldBool)
         {
             index++;
             var val = GetPropValue(item, field);
             if (val != null && !string.IsNullOrEmpty(val.ToString()))
             {
                 if (val.ToString().ToLower().Equals("true"))
                 {
                     return;
                 }
             }
         }
         if (index == countList)
         {
             item.IsValid = false;
             AddMessageError(parameter, listMessageError, item);
         }
     }
 }
Esempio n. 4
0
 //At aleast checkbox is checcked
 private static void GroupRequiredALeastField(SectionTempleteVo parameter, AssQuestionVo item, List <MessageErrorVo> listMessageError)
 {
     if (parameter.GroupRequiredALeastFieldRefer != null && !string.IsNullOrEmpty(parameter.GroupRequiredALeastFieldRefer))
     {
         var  dataRefer = GetPropValue(item, parameter.GroupRequiredALeastFieldRefer) as string;
         bool valueOutRefer;
         if (!string.IsNullOrEmpty(dataRefer) && bool.TryParse(dataRefer, out valueOutRefer))
         {
             if (valueOutRefer)
             {
                 if (parameter.GroupRequiredALeastField != null && parameter.GroupRequiredALeastField.Any())
                 {
                     var listFieldGroup = parameter.GroupRequiredALeastField;
                     foreach (var field in listFieldGroup)
                     {
                         var  data = GetPropValue(item, field) as string;
                         bool valueOut;
                         if (!string.IsNullOrEmpty(data) && bool.TryParse(data, out valueOut))
                         {
                             if (valueOut)
                             {
                                 return;
                             }
                         }
                     }
                     item.IsValid = false;
                     AddMessageError(parameter, listMessageError, item);
                 }
             }
         }
     }
 }
Esempio n. 5
0
        private static void AddMessageErrorImformalSupport(SectionTempleteVo parameter, List <MessageErrorVo> listMessageError,
                                                           AssQuestionVo item, int row, string fieldName)
        {
            var order = CaculatorHelper.GetNumberFromString(parameter.Name);

            listMessageError.Add(new MessageErrorVo
            {
                Order        = order,
                Id           = "Order" + item.Order + "-" + parameter.Name,
                MessageError = string.Format("Item " + item.Order + ": Row " + row + " - " + fieldName + " is required.")
            });
        }
Esempio n. 6
0
 private static void CheckReferRequiredField(SectionTempleteVo parameter, AssQuestionVo item, List <SectionTempleteVo> parameters, object val, List <MessageErrorVo> listMessageError)
 {
     if (parameter.ReferRequiredValueField != null && parameter.ReferRequiredValueField.Any())
     {
         var valRefer = GetPropValue(item, parameter.ReferRequiredField);
         if (valRefer != null && !string.IsNullOrEmpty(valRefer.ToString()))
         {
             if (parameter.ReferRequiredValueField.Contains(valRefer))
             {
                 item.IsValid = false;
                 AddMessageError(parameter, listMessageError, item);
             }
         }
     }
 }
Esempio n. 7
0
        public string GetFormula(int valConfigTime, int valConfigDay, int valConfigWeek, int valConfigDataTime, int valConfigDataDay, AssQuestionVo refer, List <AssQuestionVo> listRefer = null)
        {
            var result      = Formula;
            var configTime  = 0;
            var configTime2 = 0;

            #region calculator ConfigTime
            if (ConfigTime != null && ConfigTime.ValInOuts != null && ConfigTime.ValInOuts.Count > 0)
            {
                var valInOut = ConfigTime.ValInOuts.FirstOrDefault(o => o.ValIn == valConfigTime);
                if (valInOut != null)
                {
                    if (valInOut.ValOut != null)
                    {
                        result     = result.Replace("ConfigTime", valInOut.ValOut.ToString());
                        configTime = valInOut.ValOut.GetValueOrDefault();
                    }
                    else if (valInOut.ValOuts != null && valInOut.ValOuts.Count > 0 && ConfigRefers != null &&
                             ConfigRefers.Count > 0)
                    {
                        var res = "";
                        foreach (var configRefer in ConfigRefers.OrderByDescending(o => o.Order))
                        {
                            var obj = GetPropValue(refer, configRefer.Field);
                            if (obj != null && obj.ToString().ToLower().Equals(configRefer.Value))
                            {
                                if (string.IsNullOrEmpty(configRefer.ReferValue))
                                {
                                    var objRes   = GetPropValue(refer, configRefer.ReferField);
                                    var orderObj =
                                        valInOut.ValOuts.FirstOrDefault(o => o.ValIn == configRefer.Order);
                                    if (objRes != null && orderObj != null)
                                    {
                                        if (!string.IsNullOrEmpty(res))
                                        {
                                            res += configRefer.Operator;
                                        }

                                        res += "(" + objRes + "*" + orderObj.ValOut + ")";
                                    }
                                }
                                else
                                {
                                    res = "";
                                    break;
                                }
                            }
                        }
                        if (string.IsNullOrEmpty(res))
                        {
                            result = result.Replace("ConfigTime", "0");
                        }
                        else
                        {
                            result = result.Replace("ConfigTime", "(" + res + ")");
                        }
                    }
                    else
                    {
                        result = result.Replace("ConfigTime", "0");
                    }
                }
                else
                {
                    result = result.Replace("ConfigTime", "0");
                }
            }
            #endregion
            #region calculator ConfigDay
            if (ConfigDay != null && ConfigDay.ValInOuts != null && ConfigDay.ValInOuts.Count > 0)
            {
                var valOfAnyReferField = ConfigDay.ValInOuts.FirstOrDefault(o => o.ValIn == 0);
                if (valOfAnyReferField != null && !string.IsNullOrEmpty(valOfAnyReferField.ReferTo))
                {
                    var objRes = GetPropValue(refer, valOfAnyReferField.ReferTo);
                    if (objRes != null)
                    {
                        result = result.Replace("ConfigDay", objRes.ToString());
                    }
                    else
                    {
                        result = result.Replace("ConfigDay", "0");
                    }
                }
                else
                {
                    var valInOut = ConfigDay.ValInOuts.FirstOrDefault(o => o.ValIn == valConfigDay);
                    if (valInOut != null)
                    {
                        if (valInOut.ValOut != null)
                        {
                            result = result.Replace("ConfigDay", valInOut.ValOut.ToString());
                        }
                        else if (!string.IsNullOrEmpty(valInOut.ReferTo))
                        {
                            var objRes = GetPropValue(refer, valInOut.ReferTo);
                            if (objRes != null)
                            {
                                if (valInOut.MaxValue != null)
                                {
                                    var configDay = int.Parse(objRes.ToString());
                                    if (configTime * configDay > valInOut.MaxValue)
                                    {
                                        result = result.Replace(" ", "");
                                        result = result.Replace(configTime + "*ConfigDay", valInOut.MaxValue.ToString());
                                    }
                                    else
                                    {
                                        //result = result.Replace("ConfigDay", "0");
                                        result = result.Replace("ConfigDay", objRes.ToString());
                                    }
                                }
                                else
                                {
                                    if (valInOut.ValOuts != null && valInOut.ValOuts.Count > 0)
                                    {
                                        var valInOnList =
                                            valInOut.ValOuts.FirstOrDefault(o => o.ValIn == int.Parse(objRes.ToString()));
                                        result = result.Replace("ConfigDay",
                                                                valInOnList != null ? valInOnList.ValOut.ToString() : "0");
                                    }
                                    else
                                    {
                                        result = result.Replace("ConfigDay", objRes.ToString());
                                    }
                                }
                            }
                            else
                            {
                                result = result.Replace("ConfigDay", "0");
                            }
                        }
                    }
                    else
                    {
                        result = result.Replace("ConfigDay", "0");
                    }
                }
            }
            #endregion
            #region calculator ConfigWeek
            if (ConfigWeek != null && ConfigWeek.ValInOuts != null && ConfigWeek.ValInOuts.Count > 0)
            {
                var valOfAnyReferField = ConfigWeek.ValInOuts.FirstOrDefault(o => o.ValIn == 0);
                if (valOfAnyReferField != null && !string.IsNullOrEmpty(valOfAnyReferField.ReferTo))
                {
                    var objRes = GetPropValue(refer, valOfAnyReferField.ReferTo);
                    result = result.Replace("ConfigWeek", objRes.ToString());
                }
                else
                {
                    var valInOut = ConfigWeek.ValInOuts.FirstOrDefault(o => o.ValIn == valConfigWeek);
                    if (valInOut != null)
                    {
                        if (valInOut.ValOut != null)
                        {
                            result = result.Replace("ConfigWeek", valInOut.ValOut.ToString());
                        }
                        else if (!string.IsNullOrEmpty(valInOut.ReferTo))
                        {
                            var objRes = GetPropValue(refer, valInOut.ReferTo);
                            if (objRes != null)
                            {
                                if (valInOut.ValOuts != null && valInOut.ValOuts.Count > 0)
                                {
                                    var valInOnList =
                                        valInOut.ValOuts.FirstOrDefault(o => o.ValIn == int.Parse(objRes.ToString()));
                                    result = result.Replace("ConfigWeek",
                                                            valInOnList != null ? valInOnList.ValOut.ToString() : "0");
                                }
                                else
                                {
                                    result = result.Replace("ConfigWeek", objRes.ToString());
                                }
                            }
                            else
                            {
                                result = result.Replace("ConfigWeek", "0");
                            }
                        }
                    }
                    else
                    {
                        result = result.Replace("ConfigWeek", "0");
                    }
                }
            }
            #endregion

            #region calculator ConfigTime2
            if (ConfigDataTime != null && ConfigDataTime.ValInOuts != null && ConfigDataTime.ValInOuts.Count > 0)
            {
                var valInOut = ConfigDataTime.ValInOuts.FirstOrDefault(o => o.ValIn == valConfigDataTime);
                if (valInOut != null)
                {
                    if (valInOut.ValOut != null)
                    {
                        result = result.Replace("ConfigDataTime", valInOut.ValOut.ToString());
                    }
                    else
                    {
                        result = result.Replace("ConfigDataTime", "0");
                    }
                }
                else
                {
                    result = result.Replace("ConfigDataTime", "0");
                }
            }
            #endregion
            #region calculator ConfigDay2
            if (ConfigDataDay != null && ConfigDataDay.ValInOuts != null && ConfigDataDay.ValInOuts.Count > 0)
            {
                var valInOut = ConfigDay.ValInOuts.FirstOrDefault(o => o.ValIn == valConfigDataDay);
                if (valInOut != null)
                {
                    result = result.Replace("ConfigDataDay", valInOut.ValOut.ToString());
                }
                else
                {
                    result = result.Replace("ConfigDataDay", "0");
                }
            }
            #endregion
            #region calculator ConfigReferSums
            if (ConfigReferSums != null && ConfigReferSums.Count > 0)
            {
                var res   = string.Empty;
                var total = ConfigReferSums.Count;
                for (int i = 0; i < total; i++)
                {
                    var isCalculated = true;
                    if (ConfigReferSums[i].CheckReferFieldIsTrue != null)
                    {
                        var fieldCheck = GetPropValue(refer, ConfigReferSums[i].CheckReferFieldIsTrue) as string;
                        if (fieldCheck == null)
                        {
                            isCalculated = false;
                        }
                        else
                        {
                            bool valueOut;
                            if (!string.IsNullOrEmpty(fieldCheck) && bool.TryParse(fieldCheck, out valueOut))
                            {
                                if (!valueOut)
                                {
                                    isCalculated = false;
                                }
                            }
                        }
                    }

                    var obj = GetPropValue(refer, ConfigReferSums[i].Field);
                    if (obj != null && obj.ToString().ToLower().Equals(ConfigReferSums[i].Value) && isCalculated)
                    {
                        if (!string.IsNullOrEmpty(ConfigReferSums[i].ReferPerDayField) && !string.IsNullOrEmpty(ConfigReferSums[i].ReferPerWeekField))
                        {
                            var referPerDayFieldObj  = GetPropValue(refer, ConfigReferSums[i].ReferPerDayField);
                            var referPerWeekFieldObj = GetPropValue(refer, ConfigReferSums[i].ReferPerWeekField);
                            if (referPerDayFieldObj != null && referPerWeekFieldObj != null)
                            {
                                if (string.IsNullOrEmpty(res))
                                {
                                    res += "(" + ConfigReferSums[i].TimeAllow + "*" + referPerDayFieldObj + "*" +
                                           referPerWeekFieldObj + ") ";
                                }
                                else
                                {
                                    res += ConfigReferSums[i].Operator + "(" + ConfigReferSums[i].TimeAllow + "*" +
                                           referPerDayFieldObj + "*" + referPerWeekFieldObj + ") ";
                                }
                            }
                        }
                        else
                        {
                            if (!string.IsNullOrEmpty(ConfigReferSums[i].ReferFieldListType))
                            {
                                var jsonList = GetPropValue(refer, ConfigReferSums[i].ReferFieldListType);
                                var list     = JsonConvert.DeserializeObject <List <ReferListType> >(jsonList.ToString());
                                var sum      = 0;
                                foreach (var item in list)
                                {
                                    var valField02 = CaculatorHelper.TryParseIntFromStr(item.Field02);
                                    var valField03 = CaculatorHelper.TryParseIntFromStr(item.Field03);

                                    sum = sum + ConfigReferSums[i].TimeAllow * valField02 * valField03;
                                }
                                if (!string.IsNullOrEmpty(res))
                                {
                                    res += ConfigReferSums[i].Operator + sum;
                                }
                                else
                                {
                                    res += sum;
                                }
                            }
                        }
                    }
                }
                result = result.Replace("ConfigReferSums", string.IsNullOrEmpty(res) ? "0" : res);
            }
            #endregion
            #region calculator CalADLs
            if (CalADLs != null && listRefer != null)
            {
                var res = string.Empty;
                var obj = GetPropValue(refer, CalADLs.Field);
                if (obj != null && obj.ToString().ToLower().Equals(CalADLs.Value) && !string.IsNullOrEmpty(CalADLs.ForFieldCal) && CalADLs.OrderCals != null && CalADLs.OrderCals.Count > 0)
                {
                    foreach (var orderCal in CalADLs.OrderCals)
                    {
                        var calOrderObj = listRefer.FirstOrDefault(o => o.Order == orderCal);
                        if (calOrderObj != null)
                        {
                            var objCal = GetPropValue(calOrderObj, CalADLs.ForFieldCal);
                            if (string.IsNullOrEmpty(res))
                            {
                                res += objCal;
                            }
                            else
                            {
                                res += "+" + objCal;
                            }
                        }
                    }
                    if (CalADLs.ReferOrders != null && CalADLs.ReferOrders.Count > 0)
                    {
                        var flagNotDefault = false;
                        foreach (var source in CalADLs.ReferOrders.Where(o => o.Order != 0))
                        {
                            //With case 1.
                            var objRefer = listRefer.FirstOrDefault(o => o.Order == source.Order);
                            if (objRefer != null)
                            {
                                var objValue = GetPropValue(objRefer, source.Field);
                                if (objValue != null && objValue.ToString().ToLower().Equals(source.Value))
                                {
                                    result         = result.Replace("CalADLs", "(" + res + ")" + source.Operator + source.OperatorValue);
                                    flagNotDefault = true;
                                }
                            }
                        }
                        if (!flagNotDefault)
                        {
                            var objSource = CalADLs.ReferOrders.FirstOrDefault(o => o.Order == 0);
                            if (objSource != null)
                            {
                                result = result.Replace("CalADLs", "(" + res + ")" + objSource.Operator + objSource.OperatorValue);
                            }
                        }
                    }
                    else
                    {
                        result = result.Replace("CalADLs", "0");
                    }
                }
                else
                {
                    result = result.Replace("CalADLs", "0");
                }
            }
            #endregion
            #region calculator ConditionBinds

            if (ConditionBinds != null && ConditionBinds.Count > 0)
            {
                bool res = true;
                foreach (var conditionBind in ConditionBinds)
                {
                    var objCondition = GetPropValue(refer, conditionBind.Field);
                    switch (conditionBind.Operator)
                    {
                    case "=":
                        res &= objCondition != null && String.Compare(objCondition.ToString().ToLower(), conditionBind.Value, StringComparison.Ordinal) == 0;
                        break;

                    case ">":
                        res &= objCondition != null && String.Compare(objCondition.ToString().ToLower(), conditionBind.Value, StringComparison.Ordinal) > 0;
                        break;

                    case "<":
                        res &= objCondition != null && String.Compare(objCondition.ToString().ToLower(), conditionBind.Value, StringComparison.Ordinal) < 0;
                        break;
                    }
                }
                result = result.Replace("ConditionBinds", res ? "1" : "0");
            }

            #endregion

            #region calculator CalHourToileting
            if (CalToiletings != null && CalToiletings.Count > 0)
            {
                //Get max Day per week
                var maxPerWeek = 0;
                if (CalToiletingFieldGetMaxPerWeek != null && CalToiletingFieldGetMaxPerWeek.Any())
                {
                    foreach (var field in CalToiletingFieldGetMaxPerWeek)
                    {
                        var valueOfField = GetPropValue(refer, field);
                        if (valueOfField != null && !string.IsNullOrEmpty(valueOfField.ToString()))
                        {
                            if (valueOfField.ToString().ToLower().Equals("true"))
                            {
                                //Get day per with of Field was selected
                                foreach (var dayPerWeekField in CalToiletings)
                                {
                                    if (dayPerWeekField.Field == field)
                                    {
                                        var valueOfDayPerWeekField = GetPropValue(refer, dayPerWeekField.PerWeekField);
                                        if (valueOfDayPerWeekField != null && !string.IsNullOrEmpty(valueOfDayPerWeekField.ToString()))
                                        {
                                            int flagIntDayPerWeek;

                                            if (valueOfDayPerWeekField != null && int.TryParse(valueOfDayPerWeekField.ToString(), out flagIntDayPerWeek))
                                            {
                                                if (flagIntDayPerWeek > 0)
                                                {
                                                    dayPerWeekField.NumberDayPerWeek = flagIntDayPerWeek;
                                                }
                                                if (flagIntDayPerWeek > maxPerWeek)
                                                {
                                                    maxPerWeek = flagIntDayPerWeek;
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }

                //Get Max minutes config
                var maxMinutes = CalToiletingMaxMinutes;

                //Loop to calculate for each day
                var sumPerDay = 0;

                if (maxPerWeek > 0)
                {
                    for (int i = 1; i <= maxPerWeek; i++)
                    {
                        var total = 0;
                        foreach (var itemCal in CalToiletings)
                        {
                            if (itemCal.NumberDayPerWeek >= i)
                            {
                                var valueOfPerDay = GetPropValue(refer, itemCal.PerDayField);
                                int flagIntPerDay;
                                if (valueOfPerDay != null && int.TryParse(valueOfPerDay.ToString(), out flagIntPerDay))
                                {
                                    total = total + itemCal.Minutes * flagIntPerDay;
                                }
                            }
                        }
                        sumPerDay = sumPerDay + (total <= maxMinutes ? total : maxMinutes);
                    }
                }

                result = result.Replace("CalToiletings", sumPerDay.ToString());
            }
            #endregion
            return(result);
        }
Esempio n. 8
0
        private static void CheckReferRequiredFieldDemonstratedAbility(SectionTempleteVo parameter, AssQuestionVo item, List <SectionTempleteVo> parameters, object val, List <MessageErrorVo> listMessageError)
        {
            if (parameter.AbilityField != null && parameter.AbilityFieldToRequred.Any())
            {
                var valRefer = GetPropValue(item, parameter.AbilityField);
                if (valRefer != null && !string.IsNullOrEmpty(valRefer.ToString()))
                {
                    if (parameter.AbilityFieldToRequred.Contains(valRefer))
                    {
                        //TH : select option parameter.IsNullIfValue
                        if (parameter.IsNullIfValue != null)
                        {
                            if (val != null && !string.IsNullOrEmpty(val.ToString()))
                            {
                                int valInt;
                                if (int.TryParse(val.ToString(), out valInt))
                                {
                                    if (parameter.IsNullIfValue != null && valInt == parameter.IsNullIfValue)
                                    {
                                        item.IsValid = false;
                                        AddMessageError(parameter, listMessageError, item);
                                    }
                                }
                            }
                            else
                            {
                                item.IsValid = false;
                                AddMessageError(parameter, listMessageError, item);
                            }
                        }

                        //TH: select multicheckbox Item 50
                        if (parameter.AbilityGroupRequiredFieldBool != null)
                        {
                            if (parameter.AbilityGroupRequiredFieldBool != null && parameter.AbilityGroupRequiredFieldBool.Any())
                            {
                                var index     = 0;
                                var countList = parameter.AbilityGroupRequiredFieldBool.Count();
                                foreach (var field in parameter.AbilityGroupRequiredFieldBool)
                                {
                                    index++;
                                    val = GetPropValue(item, field);
                                    if (val != null && !string.IsNullOrEmpty(val.ToString()))
                                    {
                                        if (val.ToString().ToLower().Equals("true"))
                                        {
                                            return;
                                        }
                                    }
                                }
                                if (index == countList)
                                {
                                    item.IsValid = false;
                                    AddMessageError(parameter, listMessageError, item);
                                }
                            }
                        }
                    }
                }
            }
        }
Esempio n. 9
0
        private static void CheckReferRequiredFieldWasCheckAleast(SectionTempleteVo parameter, AssQuestionVo item, List <MessageErrorVo> listMessageError)
        {
            if (parameter.RefFieldToCheck != null)
            {
                var valRefer = GetPropValue(item, parameter.RefFieldToCheck);
                if (valRefer != null && !string.IsNullOrEmpty(valRefer.ToString()))
                {
                    if (parameter.ListValRefFieldToCheck != null)
                    {
                        var listValue = parameter.ListValRefFieldToCheck;
                        if (listValue.Length > 0)
                        {
                            if (listValue.Contains(valRefer))
                            {
                                if (parameter.ListSameField != null)
                                {
                                    var listSameField = parameter.ListSameField;
                                    if (listSameField.Length > 0)
                                    {
                                        foreach (var field in listSameField)
                                        {
                                            var value = GetPropValue(item, field.ToString());
                                            if (value != null && value.ToString().ToLower().Equals("true"))
                                            {
                                                return;
                                            }
                                        }

                                        item.IsValid = false;
                                        AddMessageError(parameter, listMessageError, item);
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
Esempio n. 10
0
        private static void CheckListStaffingScheduleServices(SectionTempleteVo parameter, AssQuestionVo item, object val, List <MessageErrorVo> listMessageError)
        {
            var valField02 = GetPropValue(item, "Field02");

            {
                if (valField02 != null && valField02.ToString().ToLower().Equals("true"))
                {
                    return;
                }
            }
            if (val == null)
            {
                item.IsValid = false;
                AddMessageError(parameter, listMessageError, item);
                return;
            }
            var listObj = JsonConvert.DeserializeObject <List <OrderItemReport> >(val.ToString());

            foreach (var obj in listObj)
            {
                for (int i = 1; i <= 28; i++)
                {
                    var strField = i >= 10 ? "Field" + i : "Field0" + i;
                    var objVal   = GetPropValue(obj, strField);
                    if (objVal != null && !string.IsNullOrEmpty(objVal.ToString()))
                    {
                        if (objVal.ToString().ToLower().Equals("true"))
                        {
                            item.IsValid = true;
                            return;
                        }
                    }
                }
            }

            item.IsValid = false;
            AddMessageError(parameter, listMessageError, item);
        }
Esempio n. 11
0
        private static void CheckListInformalSupports(SectionTempleteVo parameter, AssQuestionVo item, object val, List <MessageErrorVo> listMessageError)
        {
            var valField02 = GetPropValue(item, "Field02");

            {
                if (valField02 != null && valField02.ToString().ToLower().Equals("true"))
                {
                    return;
                }
            }

            if (val == null)
            {
                item.IsValid = false;
                AddMessageError(parameter, listMessageError, item);
                return;
            }

            var listObj = JsonConvert.DeserializeObject <List <OrderItemReport> >(val.ToString());
            var flag    = false;
            var index   = 0;

            foreach (var obj in listObj)
            {
                index++;
                //Check fir last mid
                if (string.IsNullOrEmpty(obj.Field01))
                {
                    item.IsValid = false;
                    //AddMessageError(parameter, listMessageError, item);
                    AddMessageErrorImformalSupport(parameter, listMessageError, item, index, "Full Name");
                    //return;
                }


                //check Relationship to Member
                if (string.IsNullOrEmpty(obj.Field02))
                {
                    item.IsValid = false;
                    //AddMessageError(parameter, listMessageError, item);
                    AddMessageErrorImformalSupport(parameter, listMessageError, item, index, "Relationship to Member");
                    //return;
                }

                //check Other Relative dc chon phai dien text
                if (!string.IsNullOrEmpty(obj.Field02) && Convert.ToInt32(obj.Field02) == 8)
                {
                    if (string.IsNullOrEmpty(obj.Field03))
                    {
                        item.IsValid = false;
                        //AddMessageError(parameter, listMessageError, item);
                        AddMessageErrorImformalSupport(parameter, listMessageError, item, index, "Other Relative");
                        //return;
                    }
                }

                //check Lives with Member
                if (string.IsNullOrEmpty(obj.Field04))
                {
                    item.IsValid = false;
                    //AddMessageError(parameter, listMessageError, item);
                    AddMessageErrorImformalSupport(parameter, listMessageError, item, index, "Lives with Member");
                    //return;
                }

                //check list Monday,Tuesday,... phai co 1 checkbox dc chon
                var flagFieldCbWeek = false;
                for (int i = 5; i <= 32; i++)
                {
                    var strField = i >= 10 ? "Field" + i : "Field0" + i;
                    var objVal   = GetPropValue(obj, strField);
                    if (objVal != null && !string.IsNullOrEmpty(objVal.ToString()))
                    {
                        if (objVal.ToString().ToLower().Equals("true"))
                        {
                            flagFieldCbWeek = true;
                        }
                    }
                }
                if (!flagFieldCbWeek)
                {
                    item.IsValid = false;
                    //AddMessageError(parameter, listMessageError, item);
                    AddMessageErrorImformalSupport(parameter, listMessageError, item, index, "Monday to Sunday");
                    //return;
                }
            }
        }
Esempio n. 12
0
        private static void CheckTypeListDiagnosesConditions(SectionTempleteVo parameter, AssQuestionVo item, object val, List <MessageErrorVo> listMessageError)
        {
            var listObj = JsonConvert.DeserializeObject <List <OrderItemReport> >(val.ToString());

            if (listObj.Count == 0)
            {
                item.IsValid = false;
                AddMessageError(parameter, listMessageError, item);
                return;
            }
            foreach (var obj in listObj)
            {
                var flag = false;
                for (int i = 1; i <= 4; i++)
                {
                    var strField = i >= 10 ? "Field" + i : "Field0" + i;
                    var objVal   = GetPropValue(obj, strField);
                    if (objVal != null && !string.IsNullOrEmpty(objVal.ToString()))
                    {
                        flag = true;
                    }
                }
                if (!flag)
                {
                    item.IsValid = false;
                    AddMessageError(parameter, listMessageError, item);
                    return;
                }
            }
        }
Esempio n. 13
0
        private static void CheckTypeListOtherMiscellaneous(SectionTempleteVo parameter, AssQuestionVo item, object val, List <MessageErrorVo> listMessageError)
        {
            var listObj = JsonConvert.DeserializeObject <List <OrderItemReport> >(val.ToString());

            foreach (var obj in listObj)
            {
                var flag = false;
                for (int i = 1; i <= 3; i++)
                {
                    var strField = i >= 10 ? "Field" + i : "Field0" + i;
                    var objVal   = GetPropValue(obj, strField);
                    if (objVal != null && !string.IsNullOrEmpty(objVal.ToString()))
                    {
                        flag = true;
                    }
                }
                if (!flag)
                {
                    AddMessageError(parameter, listMessageError, item);
                    item.IsValid = false;
                    return;
                }
            }

            var row = 0;

            foreach (var obj1 in listObj)
            {
                row++;
                for (int i = 1; i <= 3; i++)
                {
                    var strField = i >= 10 ? "Field" + i : "Field0" + i;
                    var objVal   = GetPropValue(obj1, strField);
                    if (strField.Equals("Field01"))
                    {
                        if (objVal == null || string.IsNullOrEmpty(objVal.ToString()))
                        {
                            item.IsValid = false;
                            AddMessageErrorMiscellaneousRequired(parameter, listMessageError, item, row, 1);
                        }
                    }
                    if (strField.Equals("Field02"))
                    {
                        if (objVal == null || string.IsNullOrEmpty(objVal.ToString()))
                        {
                            item.IsValid = false;
                            AddMessageErrorMiscellaneousRequired(parameter, listMessageError, item, row, 2);
                        }
                    }
                    if (strField.Equals("Field03"))
                    {
                        if (objVal == null || string.IsNullOrEmpty(objVal.ToString()))
                        {
                            item.IsValid = false;
                            AddMessageErrorMiscellaneousRequired(parameter, listMessageError, item, row, 3);
                        }
                    }
                }
            }
        }
Esempio n. 14
0
        private static void AddMessageErrorMiscellaneousRequired(SectionTempleteVo parameter, List <MessageErrorVo> listMessageError, AssQuestionVo item, int row, int typeMess)
        {
            if (!string.IsNullOrEmpty(parameter.MessageErrorMiscellaneousName) ||
                !string.IsNullOrEmpty(parameter.MessageErrorMiscellaneousPerDay) ||
                !string.IsNullOrEmpty(parameter.MessageErrorMiscellaneousPerWeek))
            {
                var mess = string.Empty;
                if (!string.IsNullOrEmpty(parameter.MessageErrorMiscellaneousName) && typeMess == 1)
                {
                    mess = parameter.MessageErrorMiscellaneousName;
                }

                if (!string.IsNullOrEmpty(parameter.MessageErrorMiscellaneousPerDay) && typeMess == 2)
                {
                    mess = parameter.MessageErrorMiscellaneousPerDay;
                }

                if (!string.IsNullOrEmpty(parameter.MessageErrorMiscellaneousPerWeek) && typeMess == 3)
                {
                    mess = parameter.MessageErrorMiscellaneousPerWeek;
                }

                if (!string.IsNullOrEmpty(mess))
                {
                    var order = CaculatorHelper.GetNumberFromString(parameter.Name);
                    listMessageError.Add(new MessageErrorVo
                    {
                        Order        = order,
                        Id           = "Order" + item.Order + "-" + parameter.Name,
                        MessageError = string.Format(mess, item.Order, row)
                    });
                }
            }
        }
Esempio n. 15
0
        private static void AddMessageErrorMaxValueMiscellaneous(SectionTempleteVo parameter, List <MessageErrorVo> listMessageError, AssQuestionVo item, int maxValue, int row, int typeMess)
        {
            //var message = "Item {0}: Value input is greater than Max Value Allow";
            if (!string.IsNullOrEmpty(parameter.MessageErrorMaxValueMiscellaneousPerDay) ||
                !string.IsNullOrEmpty(parameter.MessageErrorMaxValueMiscellaneousPerWeek))
            {
                var mess = string.Empty;
                if (!string.IsNullOrEmpty(parameter.MessageErrorMaxValueMiscellaneousPerDay) && typeMess == 1)
                {
                    mess = parameter.MessageErrorMaxValueMiscellaneousPerDay;
                }

                if (!string.IsNullOrEmpty(parameter.MessageErrorMaxValueMiscellaneousPerWeek) && typeMess == 2)
                {
                    mess = parameter.MessageErrorMaxValueMiscellaneousPerWeek;
                }
                if (!string.IsNullOrEmpty(mess))
                {
                    var order = CaculatorHelper.GetNumberFromString(parameter.Name);
                    //if (listMessageError.Any())
                    //{
                    //    var checkOrderExist = listMessageError.FirstOrDefault(o => o.Order == order);
                    //    if (checkOrderExist == null)
                    //    {
                    //        listMessageError.Add(new MessageErrorVo
                    //        {
                    //            Order = order,
                    //            Id = "Order" + item.Order + "-" + parameter.Name,
                    //            MessageError = string.Format(mess, item.Order, row, maxValue)
                    //        });
                    //    }
                    //}
                    //else
                    //{
                    //    listMessageError.Add(new MessageErrorVo
                    //    {
                    //        Order = order,
                    //        Id = "Order" + item.Order + "-" + parameter.Name,
                    //        MessageError = string.Format(mess, item.Order, row, maxValue)
                    //    });
                    //}
                    listMessageError.Add(new MessageErrorVo
                    {
                        Order        = order,
                        Id           = "Order" + item.Order + "-" + parameter.Name,
                        MessageError = string.Format(mess, item.Order, row, maxValue)
                    });
                }
            }
        }
Esempio n. 16
0
 private static void AddMessageErrorMaxValue(SectionTempleteVo parameter, List <MessageErrorVo> listMessageError, AssQuestionVo item, int maxValue)
 {
     if (!string.IsNullOrEmpty(parameter.MessageErrorMaxValue))
     {
         var order = CaculatorHelper.GetNumberFromString(parameter.Name);
         if (listMessageError.Any())
         {
             var checkOrderExist = listMessageError.FirstOrDefault(o => o.Order == order);
             if (checkOrderExist == null)
             {
                 listMessageError.Add(new MessageErrorVo
                 {
                     Order        = order,
                     Id           = "Order" + item.Order + "-" + parameter.Name,
                     MessageError = string.Format(parameter.MessageErrorMaxValue, item.Order, maxValue)
                 });
             }
         }
         else
         {
             listMessageError.Add(new MessageErrorVo
             {
                 Order        = order,
                 Id           = "Order" + item.Order + "-" + parameter.Name,
                 MessageError = string.Format(parameter.MessageErrorMaxValue, item.Order, maxValue)
             });
         }
     }
 }