Пример #1
0
        internal bool IsValidate()
        {
            bool isValid = true;

            this.ClearAllErrors();
            if (string.IsNullOrEmpty(FamilyCode))
            {
                isValid = false;
                this.SetError("FamilyCode", "يجب إدخال رمز للعائلة");
            }
            else
            {
                if (BaseDataBase._StoredProcedureReturnableBool("sp_IsFamilyCodeExists", new SqlParameter("@R", System.Data.SqlDbType.Bit), new SqlParameter("@FamilyID", FamilyID), new SqlParameter("@FamilyCode", FamilyCode)))
                {
                    isValid = false;
                    this.SetError("FamilyCode", "رمز العائلة موجود في قاعدة البيانات");
                }
            }
            if (string.IsNullOrEmpty(FamilyIdentityID))
            {
                isValid = false;
                this.SetError("FamilyIdentityID", "يجب إدخال رقم دفتر العائلة");
            }
            else if (FamilyIdentityID != "لايوجد دفتر عائلة")
            {
                var num = FamilyIdentityID.Split(' ');
                if (!BaseDataBase.IsStringNumber(num[0]))
                {
                    isValid = false;
                    this.SetError("FamilyIdentityID", "رقم دفتر العائلة يجب أن يحوي أرقاما");
                }
                if (num.Length > 3)
                {
                    isValid = false;
                    this.SetError("FamilyIdentityID", "رقم دفتر العائلة يحوي أكثر من فراغين");
                }
                else if (num.Length > 1)
                {
                    if (num[1].Length != 1)
                    {
                        isValid = false;
                        this.SetError("FamilyIdentityID", "حرف دفتر العائلة يجب أن يكون خانة واحدة");
                    }
                    else if (!char.IsLetter(char.Parse(num[1])))
                    {
                        isValid = false;
                        this.SetError("FamilyIdentityID", "حرف دفتر العائلة يجب أن يحوي حرف واحد فقط (أ، ب، ت، ث، ج)");
                    }
                    if (num.Length == 3 && !BaseDataBase.IsStringNumber(num[2]))
                    {
                        isValid = false;
                        this.SetError("FamilyIdentityID", "الرقم الأسري يجب أن يحوي أرقاما");
                    }
                }
                if (isValid)
                {
                    string ExistedFamilyCode = BaseDataBase._Scalar_StoredProcedure("sp_GetFamilyCodeByFamilyIDentityID", new SqlParameter("@FamilyID", FamilyID), new SqlParameter("@FamilyIdentityID", FamilyIdentityID));
                    if (!string.IsNullOrEmpty(ExistedFamilyCode))
                    {
                        isValid = false;
                        this.SetError("FamilyIdentityID", "رقم دفتر العائلة موجود في قاعدة البيانات برقم " + ExistedFamilyCode);
                    }
                }
            }
            if (string.IsNullOrEmpty(FamilyName))
            {
                isValid = false;
                this.SetError("FamilyName", "يجب إدخال اسم العائلة");
            }
            if (ApplyDate == null)
            {
                isValid = false;
                this.SetError("ApplyDate", "يجب إدخال تاريخ التسجيل");
            }
            if (string.IsNullOrEmpty(FamilyType))
            {
                isValid = false;
                this.SetError("FamilyType", "يجب إدخال نوع العائلة");
            }

            if (!isValid)
            {
                string s = "";
                foreach (var item in errors)
                {
                    s += item.Value + "\n";
                }
                MyMessageBox.Show(s);
            }
            return(isValid);
        }