protected override bool ValidateData(CodeRuleData data)
 {
     try
     {
         bool isValid = base.ValidateData(data);
         if (isValid)
         {
             string sOut =
                 Encoding.ASCII.GetString(Encoding.ASCII.GetBytes(data.Value.ToString()));
             if (sOut.Equals(data.Value.ToString()))
             {
                 isValid = true;
             }
             else
             {
                 isValid = false;
             }
         }
         return(isValid);
     }
     catch (Exception)
     {
         return(false);
     }
 }
        public override string FormatData(CodeRuleData data)
        {
            string ret = base.FormatData(data);

            if (mixedFormater != null)
            {
                data.Value = ret;
                ret        = mixedFormater.FormatData(data);
            }
            return(ret);
        }
 public override string FormatData(CodeRuleData data)
 {
     if (ValidateData(data))
     {
         return(String.Format(data.FormatString, data.Value));
     }
     else
     {
         throw new Exception("Format is invalid");
     }
 }
        protected override bool ValidateData(CodeRuleData data)
        {
            bool isValid = base.ValidateData(data);;

            if (mixedFormater != null)
            {
                if (isValid)
                {
                    mixedFormater.FormatData(data);
                }
            }
            return(isValid);
        }
        public override string FormatData(CodeRuleData data)
        {
            string formatString = base.FormatData(data);

            return(formatString.ToLower());
        }
 protected override bool ValidateData(CodeRuleData data)
 {
     return(base.ValidateData(data));
 }
Exemple #7
0
 private string FormatData(CodeRuleData data)
 {
     return(Formater.FormatData(data));
 }
Exemple #8
0
 public abstract string FormatData(CodeRuleData data);
Exemple #9
0
 protected abstract bool ValidateData(CodeRuleData data);
Exemple #10
0
 public abstract bool ValidateDataType(CodeRuleData data);
        protected override bool ValidateData(CodeRuleData data)
        {
            CodeRuleDataTypeDateTime dataType = new CodeRuleDataTypeDateTime();

            return(dataType.ValidateDataType(data));
        }
Exemple #12
0
        public override bool ValidateDataType(CodeRuleData data)
        {
            int temp;

            return(int.TryParse(data.Value.ToString(), out temp));
        }
Exemple #13
0
        public string GetCodeDefinition(Session session, CodeRuleDefinition codeRuleDefinition, bool isUpdateLastestWhenIsNumber)
        {
            string codeDefinition = String.Empty;

            ArtifactCodeFormater.CodeRuleData         data     = null;
            ArtifactCodeFormater.CodeRuleDataFormater formater = null;
            int beginNum   = 0;
            int step       = 0;
            int endNum     = 0;
            int lastestNum = 0;
            int currentNum = 0;

            //2.1. Get data type

            //2.2. Get format type
            CodeRuleData codeRuleData =
                codeRuleDefinition.CodeRuleData.FirstOrDefault(r => r.RowStatus == Utility.Constant.ROWSTATUS_ACTIVE);

            //Get format code
            string dataFormat = codeRuleData.CodeRuleDataFormatId.Code;

            //2.3. Determine the data type
            //2.3.1. When is STRING
            #region STRING
            if (codeRuleDefinition.CodeRuleDataTypeId.Code.Equals("STRING"))
            {
                CodeRuleStringData _codeRuleStringData = (CodeRuleStringData)codeRuleData;
                data = new ArtifactCodeFormater.CodeRuleData();
                switch (dataFormat)
                {
                case "NORMAL":
                    formater = new ArtifactCodeFormater.CodeRuleDataFormaterString();
                    break;

                case "LOWERCASE":
                    formater = new ArtifactCodeFormater.CodeRuleDataFormaterStringLowerCase();
                    break;

                case "UPPERCASE":
                    formater = new ArtifactCodeFormater.CodeRuleDataFormaterStringUpperCase();
                    break;

                case "ACSII":
                    formater = new ArtifactCodeFormater.CodeRuleDataFormaterStringACSI();
                    break;

                case "UPPERCASE_ACSII":
                    formater = new ArtifactCodeFormater.CodeRuleDataFormaterStringACSI(
                        new ArtifactCodeFormater.CodeRuleDataFormaterStringUpperCase()
                        );
                    break;

                case "LOWERCASE_ACSII":
                    formater = new ArtifactCodeFormater.CodeRuleDataFormaterStringACSI(
                        new ArtifactCodeFormater.CodeRuleDataFormaterStringLowerCase()
                        );
                    break;

                default:
                    break;
                }

                data.Value        = _codeRuleStringData.StringValue;
                data.FormatString = _codeRuleStringData.CodeRuleDataFormatId.FormatString;
            }
            #endregion
            //2.3.2. When is NUMBER
            #region NUMBER
            else if (codeRuleDefinition.CodeRuleDataTypeId.Code.Equals("NUMBER"))
            {
                CodeRuleNumberData _codeRuleNumberData = (CodeRuleNumberData)codeRuleData;
                //2.3.2.1. Get begin number
                beginNum = _codeRuleNumberData.BeginNumberValue;
                //2.3.2.2. Get step
                step = _codeRuleNumberData.Step;
                //2.3.2.3. Get end number
                endNum = _codeRuleNumberData.EndNumberValue;
                //2.3.2.4. Get lastest number
                lastestNum = _codeRuleNumberData.LastNumber;
                //check can get more code
                if (isUpdateLastestWhenIsNumber)
                {
                    if (step > 0)
                    {
                        if ((step + lastestNum) > endNum)
                        {
                            throw new Exception("Definition is invalid");
                        }
                    }
                    else if (step < 0)
                    {
                        if ((step + lastestNum) < endNum)
                        {
                            throw new Exception("Definition is invalid");
                        }
                    }
                    currentNum = lastestNum + step;
                }
                else
                {
                    currentNum = beginNum;
                }
                formater          = new ArtifactCodeFormater.CodeRuleDataFormaterNumber();
                data              = new ArtifactCodeFormater.CodeRuleData();
                data.Value        = currentNum;
                data.FormatString = _codeRuleNumberData.CodeRuleDataFormatId.FormatString;

                if (isUpdateLastestWhenIsNumber)
                {
                    _codeRuleNumberData.LastNumber = currentNum;
                    _codeRuleNumberData.Save();
                }
            }
            #endregion
            //2.3.3. When is DATETIME
            #region DATETIME
            //Get system datetime
            else if (codeRuleDefinition.CodeRuleDataTypeId.Code.Equals("DATETIME"))
            {
                formater          = new ArtifactCodeFormater.CodeRuleDataFormaterDateTime();
                data              = new ArtifactCodeFormater.CodeRuleData();
                data.Value        = DateTime.Now;
                data.FormatString = codeRuleData.CodeRuleDataFormatId.FormatString;
            }
            #endregion

            data.UseFormater(formater);
            codeDefinition = data.GetFormatedValue();

            int countChild = codeRuleDefinition.CodeRuleDefinitions.Where(r => r.RowStatus == Utility.Constant.ROWSTATUS_ACTIVE).Count();
            if (countChild == 0)
            {
                return(codeDefinition);
            }
            else
            {
                CodeRuleDefinition childCodeRuleDefinition =
                    codeRuleDefinition.CodeRuleDefinitions
                    .Where(r => r.RowStatus == Utility.Constant.ROWSTATUS_ACTIVE)
                    .First();
                return(codeDefinition += GetCodeDefinition(session, childCodeRuleDefinition, isUpdateLastestWhenIsNumber));
            }
        }
Exemple #14
0
 public override bool ValidateDataType(CodeRuleData data)
 {
     return(true);
 }
        protected override bool ValidateData(CodeRuleData data)
        {
            CodeRuleDataTypeString dataType = new CodeRuleDataTypeString();

            return(dataType.ValidateDataType(data));
        }
 public override string FormatData(CodeRuleData data)
 {
     return(base.FormatData(data));
 }
        protected override bool ValidateData(CodeRuleData data)
        {
            CodeRuleDataTypeNumber dataType = new CodeRuleDataTypeNumber();

            return(dataType.ValidateDataType(data));
        }