كود :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace MySchool
{
class ClassFuctions
{
public static string GetMohafza(string RakamKomy)
{
String MOhfza = "unknown";
String cod = RakamKomy.Substring(7, 2);
switch (cod)
{
case "01":
MOhfza = "القاهرة";
break;
case "02":
MOhfza = "الاسكندرية";
break;
case "03":
MOhfza = "بورسعيد";
break;
case "04":
MOhfza = "السويس";
break;
case "11":
MOhfza = "دمياط";
break;
case "12":
MOhfza = "الدقهلية";
break;
case "13":
MOhfza = "الشرقية";
break;
case "14":
MOhfza = "القليوبية";
break;
case "15":
MOhfza = "كفر الشيخ";
break;
case "16":
MOhfza = "الغربية";
break;
case "17":
MOhfza = "المنوفية";
break;
case "18":
MOhfza = "البحيرة";
break;
case "19":
MOhfza = "الاسماعيلية";
break;
case "21":
MOhfza = "الجيزة";
break;
case "22":
MOhfza = "بنى سويف";
break;
case "23":
MOhfza = "الفيوم";
break;
case "24":
MOhfza = "المنيا";
break;
case "25":
MOhfza = "أسيوط";
break;
case "26":
MOhfza = "سوهاج";
break;
case "27":
MOhfza = "قنا";
break;
case "28":
MOhfza = "أسوان";
break;
case "29":
MOhfza = "الاقصر";
break;
case "31":
MOhfza = "البحر الأحمر";
break;
case "32":
MOhfza = "الوادى الجديد";
break;
case "33":
MOhfza = "مطروح";
break;
case "34":
MOhfza = "شمال سيناء";
break;
case "35":
MOhfza = "جنوب سيناء";
break;
case "88":
MOhfza = "خارج الجمهورية";
break;
default:
MOhfza = "unknown";
break;
}
return MOhfza;
}
public static string GetGender(string RakamKomy)
{
int cod = Convert.ToInt32(RakamKomy.Substring(12, 1));
if (cod % 2 == 0)
return "0";
else
return "1";
}
public static DateTime GetBirthDate(string RakamKomy)
{
int centry = 17 + Convert.ToInt32(RakamKomy.Substring(0, 1));
int BYear = Convert.ToInt32(centry.ToString() + RakamKomy.Substring(1, 2));
int BMonth = Convert.ToInt32(RakamKomy.Substring(3, 2));
int BDay = Convert.ToInt32(RakamKomy.Substring(5, 2));
return new DateTime(BYear, BMonth, BDay);
}
public static int GetAgeDays(DateTime bDate)
{
return GetAgePartValue("d", bDate);
}
public static int GetAgeMonths(DateTime bDate)
{
return GetAgePartValue("m", bDate);
}
public static int GetAgeYears(DateTime bDate)
{
return GetAgePartValue("y", bDate);
}
private static int GetAgePartValue(string part, DateTime bDate)
{
int vYears = 0, vMonths = 0, vDays = 0;
vYears = DateTime.Today.Year - bDate.Year;
vMonths = DateTime.Today.Month - bDate.Month;
vDays = DateTime.Today.Day - bDate.Day;
if (vDays < 0) { vDays = vDays + 30; vMonths--; }
if (vMonths < 0) { vMonths = vMonths + 12; vYears--; }
if (part == "d") return vDays;
if (part == "m") return vMonths;
if (part == "y") return vYears;
return -1;
}
public static bool CheckNum(string RakamKomy)
{
if (GetMohafza(RakamKomy) == "unknown")
{
return false;
}
int centry = 17 + Convert.ToInt32(RakamKomy.Substring(0, 1));
int BYear = Convert.ToInt32(centry.ToString() + RakamKomy.Substring(1, 2));
int BMonth = Convert.ToInt32(RakamKomy.Substring(3, 2));
int BDay = Convert.ToInt32(RakamKomy.Substring(5, 2));
if (BMonth > 12 || BDay > 31)
{
return false;
}
if (GetAgeMonths(GetBirthDate(RakamKomy)) > 12)
{
return false;
}
return true;
}
}
}
كود :
void National_Number()
{
// ------[كود استخرج بيانات الرقم القومى للموظف]------
if (this.Text_Numb.Text.Trim().Length == 14)
{
if (ClassFuctions.CheckNum(Text_Numb.Text))
{
this.Text_Govern.Text = ClassFuctions.GetMohafza(this.Text_Numb.Text); //المحافظه//
this.Com_Typ.SelectedIndex = Convert.ToInt32(ClassFuctions.GetGender(this.Text_Numb.Text).ToString()); //النوع//
this.Text_DatBirth.Text = ClassFuctions.GetBirthDate(this.Text_Numb.Text).ToString("yyyy/MM/dd"); //تاريخ الميلاد//
this.Text_Day.Text = ClassFuctions.GetAgeDays(Convert.ToDateTime(this.Text_DatBirth.Text)).ToString(); //حساب السن يوم//
this.Text_Mon.Text = ClassFuctions.GetAgeMonths(Convert.ToDateTime(this.Text_DatBirth.Text)).ToString(); //حساب السن شهر//
this.Text_Year.Text = ClassFuctions.GetAgeYears(Convert.ToDateTime(this.Text_DatBirth.Text)).ToString(); //حساب السن سنه//
//this.Text_Pension.Text = Convert.ToDateTime(this.Text_DatBirth.Text).AddYears(60).AddDays(-1).ToString("yy/MM/dd"); //سن المعاش//
}
else
{
MessageBox.Show("الرقم القومى الذي ادخلته غير صحيح");
}
}
else
{
MessageBox.Show("الرجاء التحقق من الرقم القومي");
}