private void btnCheckIn_Click(object sender, EventArgs e) { string cardNumber = this.tbxCheckInCardNumber.Text; if (!this.tbxCnicNumber.MaskCompleted) { MessageBox.Show(this, "Please Enter correct CNIC NUMBER."); this.tbxCnicNumber.ReadOnly = false; this.tbxCnicNumber.BackColor = System.Drawing.Color.White; return; } bool validtated = EFERTDbUtility.ValidateInputs(new List <TextBox>() { this.tbxFirstName, this.tbxCheckInCardNumber }); if (validtated && this.cbxVFCategory.SelectedItem == null || string.IsNullOrEmpty(this.cbxVFCategory.SelectedItem.ToString().Trim())) { validtated = false; } if (!validtated) { MessageBox.Show(this, "Please fill mandatory fields first."); return; } bool isCardNotReturned = this.mCheckIns.Any(checkInInfo => checkInInfo.CheckedIn && checkInInfo.CardNumber == cardNumber); CCFTCentralDb.CCFTCentral ccftCentralDb = new CCFTCentralDb.CCFTCentral(); bool cardExist = ccftCentralDb.Cardholders.Any(card => card.LastName == cardNumber); if (cardExist && !isCardNotReturned) { var cardAlreadyIssued = (from checkin in EFERTDbUtility.mEFERTDb.CheckedInInfos where checkin != null && checkin.CheckedIn && checkin.CardNumber == cardNumber select new { checkin.CheckedIn, checkin.CNICNumber }).FirstOrDefault(); if (cardAlreadyIssued != null && cardAlreadyIssued.CheckedIn) { MessageBox.Show(this, "This card is already issue to the person with CNIC number: " + cardAlreadyIssued.CNICNumber); return; } if (this.mVisitor == null) { VisitorCardHolder visitor = new VisitorCardHolder(); visitor.CNICNumber = this.tbxCnicNumber.Text; visitor.Gender = this.cbxGender.SelectedItem == null ? string.Empty : this.cbxGender.SelectedItem as String; visitor.FirstName = this.tbxFirstName.Text; visitor.LastName = this.tbxLastName.Text; visitor.Address = this.tbxAddress.Text; visitor.PostCode = this.tbxPostCode.Text; visitor.City = this.tbxCity.Text; visitor.State = this.tbxState.Text; visitor.CompanyName = this.tbxCompanyName.Text; visitor.ContactNo = this.tbxPhoneNumber.Text; visitor.EmergencyContantPerson = this.tbxEmergencyContact.Text; visitor.EmergencyContantPersonNumber = this.tbxEmergencyContactNumber.Text; visitor.VisitorType = this.cbxVisitorType.SelectedItem == null ? string.Empty : this.cbxVisitorType.SelectedItem as String; visitor.IsOnPlant = SearchForm.mIsPlant; if (this.pbxSnapShot.Image != null) { visitor.Picture = EFERTDbUtility.ImageToByteArray(this.pbxSnapShot.Image); } if (this.mSchoolingStaff) { visitor.SchoolName = this.cbxSchoolCollege.SelectedItem == null ? string.Empty : this.cbxSchoolCollege.SelectedItem as String; } visitor.VisitorInfo = this.mVisitorInfo; EFERTDbUtility.mEFERTDb.Visitors.Add(visitor); //EFERTDbUtility.mEFERTDb.SaveChanges(); this.mVisitor = visitor; } CheckInAndOutInfo checkedInInfo = new CheckInAndOutInfo(); checkedInInfo.CheckInToPlant = SearchForm.mIsPlant; checkedInInfo.CheckInToPlant = !SearchForm.mIsPlant; checkedInInfo.FirstName = this.mVisitor.FirstName; checkedInInfo.Visitors = this.mVisitor; checkedInInfo.CNICNumber = this.mCNICNumber; checkedInInfo.CardNumber = this.tbxCheckInCardNumber.Text; checkedInInfo.VehicleNmuber = this.tbxCheckInVehicleNumber.Text; checkedInInfo.NoOfMaleGuest = this.nuNoOfMaleGuest.Value; checkedInInfo.NoOfFemaleGuest = this.nuNoOfFemaleGuest.Value; checkedInInfo.DurationOfStay = this.numCheckInDurationOfStay.Value; checkedInInfo.NoOfChildren = this.nuCheckInNoOfChildren.Value; checkedInInfo.AreaOfVisit = this.cbxAreaOfVisit.SelectedItem == null ? string.Empty : this.cbxAreaOfVisit.SelectedItem as String; checkedInInfo.HostName = this.tbxCheckInHostName.Text; checkedInInfo.DateTimeIn = Convert.ToDateTime(this.tbxCheckInDateTimeIn.Text); checkedInInfo.DateTimeOut = DateTime.MaxValue; checkedInInfo.CheckedIn = true; checkedInInfo.Category = this.mVisitorInfo; try { EFERTDbUtility.mEFERTDb.CheckedInInfos.Add(checkedInInfo); EFERTDbUtility.mEFERTDb.SaveChanges(); } catch (Exception ex) { EFERTDbUtility.RollBack(); MessageBox.Show(this, "Some error occurred in issuing card.\n\n" + EFERTDbUtility.GetInnerExceptionMessage(ex)); return; } this.btnCheckIn.Enabled = false; this.btnCheckOut.Enabled = true; this.Close(); } else { if (!cardExist) { MessageBox.Show(this, "Please enter valid card number."); } else if (isCardNotReturned) { MessageBox.Show(this, "Card is already issued to some one else."); } } }
public VisitorForm(VisitorCardHolder visitorCardHolder) { InitializeComponent(); this.cbxAreaOfVisit.Items.AddRange(EFERTDbUtility.mVisitingLocations.FindAll(location => location.IsOnPlant == SearchForm.mIsPlant).Select(l => l.Location).ToArray()); populateCategoryDropDown(); if (visitorCardHolder != null) { this.mVisitor = visitorCardHolder; this.mVisitorInfo = this.mVisitor.VisitorInfo; this.mCNICNumber = this.mVisitor.CNICNumber; this.cbxVFCategory.SelectedItem = this.mVisitorInfo; if (!string.IsNullOrEmpty(this.cbxVFCategory.SelectedItem.ToString().Trim())) { this.cbxVFCategory.BackColor = System.Drawing.Color.White; } else { this.cbxVFCategory.BackColor = System.Drawing.Color.Yellow; } this.tbxCnicNumber.Text = this.mVisitor.CNICNumber; this.cbxGender.SelectedItem = this.mVisitor.Gender; this.tbxFirstName.Text = this.mVisitor.FirstName; this.tbxLastName.Text = this.mVisitor.LastName; this.tbxAddress.Text = this.mVisitor.Address; this.tbxPostCode.Text = this.mVisitor.PostCode; this.tbxCity.Text = this.mVisitor.City; this.tbxState.Text = this.mVisitor.State; this.tbxCompanyName.Text = this.mVisitor.CompanyName; this.tbxPhoneNumber.Text = this.mVisitor.ContactNo; this.tbxEmergencyContact.Text = this.mVisitor.EmergencyContantPerson; this.tbxEmergencyContactNumber.Text = this.mVisitor.EmergencyContantPersonNumber; this.cbxVisitorType.SelectedItem = this.mVisitor.VisitorType; this.lblSchoolCollege.Visible = false; this.cbxSchoolCollege.Visible = false; if (this.mVisitor.VisitorInfo == "Education") { this.cbxSchoolCollege.SelectedItem = this.mVisitor.SchoolName; this.cbxSchoolCollege.Enabled = false; this.lblSchoolCollege.Visible = true; this.cbxSchoolCollege.Visible = true; this.Text = "Education Staff Form"; this.groupBox1.Text = "Education Staff Details"; this.mSchoolingStaff = true; } else if (this.mVisitor.VisitorInfo == "House Servant") { this.Text = "House Servant Form"; this.groupBox1.Text = "House Servant Details"; } this.mCheckIns = this.mVisitor.CheckInInfos ?? new List <CheckInAndOutInfo>(); this.mBlocks = this.mVisitor.BlockingInfos ?? new List <BlockedPersonInfo>(); this.pbxSnapShot.Image = EFERTDbUtility.ByteArrayToImage(this.mVisitor.Picture); this.btnWebCam.Enabled = false; this.btnBrowse.Enabled = false; this.tbxCnicNumber.ReadOnly = true; this.cbxVisitorType.Enabled = false; this.cbxGender.Enabled = false; this.tbxFirstName.ReadOnly = true; this.tbxLastName.ReadOnly = true; this.tbxAddress.ReadOnly = true; this.tbxPostCode.ReadOnly = true; this.tbxCity.ReadOnly = true; this.tbxState.ReadOnly = true; this.tbxCompanyName.ReadOnly = true; this.tbxPhoneNumber.ReadOnly = true; this.tbxEmergencyContact.ReadOnly = true; this.tbxEmergencyContactNumber.ReadOnly = true; this.tbxCnicNumber.BackColor = System.Drawing.SystemColors.ButtonFace; this.tbxFirstName.BackColor = System.Drawing.SystemColors.ButtonFace; this.tbxLastName.BackColor = System.Drawing.SystemColors.ButtonFace; this.tbxAddress.BackColor = System.Drawing.SystemColors.ButtonFace; this.tbxPostCode.BackColor = System.Drawing.SystemColors.ButtonFace; this.tbxCity.BackColor = System.Drawing.SystemColors.ButtonFace; this.tbxState.BackColor = System.Drawing.SystemColors.ButtonFace; this.tbxCompanyName.BackColor = System.Drawing.SystemColors.ButtonFace; this.tbxPhoneNumber.BackColor = System.Drawing.SystemColors.ButtonFace; this.tbxEmergencyContact.BackColor = System.Drawing.SystemColors.ButtonFace; this.tbxEmergencyContactNumber.BackColor = System.Drawing.SystemColors.ButtonFace; this.btnWebCam.Enabled = false; this.btnBrowse.Enabled = false; } this.UpdateStatus(this.mCNICNumber, false);//false passed to check is new or existing visitor }
private void btnBlock_Click(object sender, EventArgs e) { if (!this.tbxCnicNumber.MaskCompleted) { MessageBox.Show(this, "Please Enter correct CNIC NUMBER."); this.tbxCnicNumber.ReadOnly = false; this.tbxCnicNumber.BackColor = System.Drawing.Color.White; return; } bool validtated = EFERTDbUtility.ValidateInputs(new List <TextBox>() { this.tbxFirstName, this.tbxBlockedBy, this.tbxBlockedReason }); if (!validtated) { MessageBox.Show(this, "Please fill mandatory fields first."); return; } DialogResult result = MessageBox.Show(this, "Are you sure you want to block this person?", "Confirmation Dialog", MessageBoxButtons.YesNo); if (result == DialogResult.No) { return; } if (this.tbxBlockedBy.Text == EFERTDbUtility.CONST_SYSTEM_BLOCKED_BY) { MessageBox.Show(this, "Block by \"System\" can not be used."); return; } if (this.mVisitor == null) { VisitorCardHolder visitor = new VisitorCardHolder(); visitor.CNICNumber = this.tbxCnicNumber.Text; visitor.Gender = this.cbxGender.SelectedItem == null ? string.Empty : this.cbxGender.SelectedItem as String; visitor.FirstName = this.tbxFirstName.Text; visitor.LastName = this.tbxLastName.Text; visitor.Address = this.tbxAddress.Text; visitor.PostCode = this.tbxPostCode.Text; visitor.City = this.tbxCity.Text; visitor.State = this.tbxState.Text; visitor.CompanyName = this.tbxCompanyName.Text; visitor.ContactNo = this.tbxPhoneNumber.Text; visitor.EmergencyContantPerson = this.tbxEmergencyContact.Text; visitor.EmergencyContantPersonNumber = this.tbxEmergencyContactNumber.Text; visitor.VisitorType = this.cbxVisitorType.SelectedItem == null ? string.Empty : this.cbxVisitorType.SelectedItem as String; visitor.IsOnPlant = SearchForm.mIsPlant; if (this.mSchoolingStaff) { visitor.SchoolName = this.cbxSchoolCollege.SelectedItem == null ? string.Empty : this.cbxSchoolCollege.SelectedItem as String; } visitor.VisitorInfo = this.mVisitorInfo; if (this.pbxSnapShot.Image != null) { visitor.Picture = EFERTDbUtility.ImageToByteArray(this.pbxSnapShot.Image); } EFERTDbUtility.mEFERTDb.Visitors.Add(visitor); //EFERTDbUtility.mEFERTDb.SaveChanges(); this.mVisitor = visitor; } BlockedPersonInfo blockedPerson = this.BlockPerson(this.tbxBlockedBy.Text, this.tbxBlockedReason.Text); if (blockedPerson != null) { this.UpdateLayoutForBlockedPerson(blockedPerson); } }
private void SearchCardHolderCore(string searchString, bool isNicNumber, bool isTempCard = false, bool isVisitorCard = false) { EFERTDbUtility.InitializeDatabases(false); CCFTCentral ccftCentral = EFERTDbUtility.mCCFTCentral; Cardholder cardHolder = null; CardHolderInfo cardHolderInfo = null; VisitorCardHolder visitor = null; DailyCardHolder dailyCardHolder = null; bool updatedCardExist = true; if (isNicNumber) { Task <Cardholder> cardHolderByNicTask = new Task <Cardholder>(() => { Cardholder cardHolderByNic = (from pds in ccftCentral.PersonalDataStrings where pds != null && pds.PersonalDataFieldID == 5051 && pds.Value != null && pds.Value == searchString select pds.Cardholder).FirstOrDefault(); return(cardHolderByNic); }); cardHolderByNicTask.Start(); cardHolderInfo = (from card in EFERTDbUtility.mEFERTDb.CardHolders where card != null && card.CNICNumber == searchString select card).FirstOrDefault(); if (cardHolderInfo == null) { cardHolder = cardHolderByNicTask.Result; if (cardHolder == null) { dailyCardHolder = (from daily in EFERTDbUtility.mEFERTDb.DailyCardHolders where daily != null && daily.CNICNumber == searchString select daily).FirstOrDefault(); if (dailyCardHolder == null) { visitor = (from visit in EFERTDbUtility.mEFERTDb.Visitors where visit != null && visit.CNICNumber == searchString select visit).FirstOrDefault(); } } } else { if (cardHolderInfo.IsTemp) { cardHolder = cardHolderByNicTask.Result; if (cardHolder == null) { updatedCardExist = false; } } } } else { Task <Cardholder> cardHolderByCardNumberTask = new Task <Cardholder>(() => { Cardholder cardHolderByCardNumber = (from c in ccftCentral.Cardholders where c != null && c.LastName == searchString select c).FirstOrDefault(); return(cardHolderByCardNumber); }); cardHolderByCardNumberTask.Start(); cardHolderInfo = (from card in EFERTDbUtility.mEFERTDb.CardHolders where card != null && card.CardNumber == searchString select card).FirstOrDefault(); if (cardHolderInfo == null) { CheckInAndOutInfo cardIssued = (from checkIn in EFERTDbUtility.mEFERTDb.CheckedInInfos where checkIn != null && checkIn.CheckedIn && checkIn.CardNumber == searchString select checkIn).FirstOrDefault(); if (cardIssued != null) { dailyCardHolder = cardIssued.DailyCardHolders; if (dailyCardHolder == null) { visitor = cardIssued.Visitors; if (visitor == null) { cardHolderInfo = cardIssued.CardHolderInfos; if (cardHolderInfo != null && cardHolderInfo.IsTemp) { cardHolder = (from pds in ccftCentral.PersonalDataStrings where pds != null && pds.PersonalDataFieldID == 5051 && pds.Value != null && pds.Value == cardIssued.CNICNumber select pds.Cardholder).FirstOrDefault(); if (cardHolder != null) { updatedCardExist = true; } else { updatedCardExist = false; } } } } } if (visitor == null && dailyCardHolder == null && cardHolderInfo == null) { if (!isTempCard && !isVisitorCard) { cardHolder = cardHolderByCardNumberTask.Result; } } if (visitor == null && dailyCardHolder == null && cardHolder == null && cardHolderInfo == null) { if (Form.ActiveForm != null) { bool found = false; if (Form.ActiveForm is VisitorForm) { found = true; (Form.ActiveForm as VisitorForm).SetCardNumber(searchString); } else if (Form.ActiveForm is PermanentChForm) { found = true; (Form.ActiveForm as PermanentChForm).SetCardNumber(searchString); } else if (Form.ActiveForm is ContractorChForm) { found = true; (Form.ActiveForm as ContractorChForm).SetCardNumber(searchString); } if (found) { return; } } if (isTempCard) { MessageBox.Show(this, "This temporary card is not issued to any person."); } else if (isVisitorCard) { MessageBox.Show(this, "This visitor card is not issued to any visitor."); } else { MessageBox.Show(this, "Cardholder with " + searchString + " card number is not found."); } return; } } //else //{ // if (!cardHolderInfo.GallagherCardHolder) // { // cardHolder = cardHolderByNicTask.Result; // if (cardHolder == null) // { // updatedCardExist = false; // } // } //} //bool isDigitOnly = this.IsDigitsOnly(searchString); //if (isDigitOnly) //{ //cardHolder = (from c in ccftCentral.Cardholders // where c != null && c.LastName == searchString // select c).FirstOrDefault(); //} //else //{ // cardHolder = (from c in ccftCentral.Cardholders // where c != null && c.FirstName == searchString // select c).FirstOrDefault(); //} } if (cardHolder == null && cardHolderInfo == null && visitor == null && dailyCardHolder == null) { ContractorChForm npchf = new ContractorChForm(searchString); npchf.ShowDialog(this); } else { if (cardHolderInfo != null && !cardHolderInfo.IsTemp) { string cadre = cardHolderInfo.Cadre == null ? "" : cardHolderInfo.Cadre.CadreName; bool isPermanent = cadre.ToLower() == "nmpt" || cadre.ToLower() == "mpt"; if (isPermanent) { PermanentChForm permanentForm = new PermanentChForm(cardHolderInfo); permanentForm.Show(); } else { ContractorChForm contractorForm = new ContractorChForm(cardHolderInfo); contractorForm.Show(); } } else if (cardHolder != null) { Dictionary <int, string> chPds = new Dictionary <int, string>(); foreach (PersonalDataString pds in cardHolder.PersonalDataStrings) { if (pds != null) { chPds.Add(pds.PersonalDataFieldID, pds.Value); } } string cadre = (from c in chPds where c.Key == 12952 && c.Value != null select c.Value).FirstOrDefault(); if (string.IsNullOrEmpty(cadre)) { MessageBox.Show(this, "No Cadre found."); } else { bool isPermanent = cadre.ToLower() == "nmpt" || cadre.ToLower() == "mpt"; if (isPermanent) { int? pNumber = cardHolder.PersonalDataIntegers == null || cardHolder.PersonalDataIntegers.Count == 0 ? null : cardHolder.PersonalDataIntegers.ElementAt(0).Value; string strPNumber = pNumber == null ? "P-Number not found." : pNumber.ToString(); DateTime?dateOfBirth = cardHolder.PersonalDataDates == null || cardHolder.PersonalDataDates.Count == 0 ? null : cardHolder.PersonalDataDates.ElementAt(0).Value; string strDOB = dateOfBirth == null ? "Date of birth not found." : dateOfBirth.ToString(); string bloodGroup = chPds.ContainsKey(5047) && chPds[5047] != null ? chPds[5047] : string.Empty; string CNICNumber = chPds.ContainsKey(5051) && chPds[5051] != null ? chPds[5051] : string.Empty; string crew = chPds.ContainsKey(12869) && chPds[12869] != null ? chPds[12869] : string.Empty; string department = chPds.ContainsKey(5043) && chPds[5043] != null ? chPds[5043] : string.Empty; string designation = chPds.ContainsKey(5042) && chPds[5042] != null ? chPds[5042] : string.Empty; string contactNumber = chPds.ContainsKey(5053) && chPds[5053] != null ? chPds[5053] : string.Empty; string section = chPds.ContainsKey(12951) && chPds[12951] != null ? chPds[12951] : string.Empty; int cardHolderId = cardHolder.FTItemID; string companyName = chPds.ContainsKey(5059) && chPds[5059] != null ? chPds[5059] : string.Empty; CadreInfo cadreInfo = (from c in EFERTDbUtility.mEFERTDb.Cadres where c != null && c.CadreName == cadre select c).FirstOrDefault() ?? new CadreInfo() { CadreName = cadre }; CrewInfo crewInfo = string.IsNullOrEmpty(crew) ? null : ((from c in EFERTDbUtility.mEFERTDb.Crews where c != null && c.CrewName == crew select c).FirstOrDefault() ?? new CrewInfo() { CrewName = crew }); DepartmentInfo departmentInfo = string.IsNullOrEmpty(department) ? null : ((from c in EFERTDbUtility.mEFERTDb.Departments where c != null && c.DepartmentName == department select c).FirstOrDefault() ?? new DepartmentInfo() { DepartmentName = department }); DesignationInfo designationInfo = string.IsNullOrEmpty(designation) ? null : ((from c in EFERTDbUtility.mEFERTDb.Designations where c != null && c.Designation == designation select c).FirstOrDefault() ?? new DesignationInfo() { Designation = designation }); SectionInfo sectionInfo = string.IsNullOrEmpty(section) ? null : ((from c in EFERTDbUtility.mEFERTDb.Sections where c != null && c.SectionName == section select c).FirstOrDefault() ?? new SectionInfo() { SectionName = section }); CompanyInfo companyInfo = string.IsNullOrEmpty(companyName) ? null : ((from c in EFERTDbUtility.mEFERTDb.Companies where c != null && c.CompanyName == companyName select c).FirstOrDefault() ?? new CompanyInfo() { CompanyName = companyName }); if (cardHolderInfo != null && cardHolderInfo.IsTemp) { cardHolderInfo.FTItemId = cardHolderId; cardHolderInfo.FirstName = cardHolder.FirstName; cardHolderInfo.LastName = cardHolder.LastName; cardHolderInfo.BloodGroup = string.IsNullOrEmpty(bloodGroup) ? null : bloodGroup; cardHolderInfo.CardNumber = cardHolder.LastName; cardHolderInfo.CNICNumber = string.IsNullOrEmpty(CNICNumber) ? null : CNICNumber; cardHolderInfo.EmergancyContactNumber = string.IsNullOrEmpty(contactNumber) ? null : contactNumber; cardHolderInfo.PNumber = pNumber == null ? null : pNumber.ToString(); cardHolderInfo.DateOfBirth = dateOfBirth == null ? null : dateOfBirth.ToString(); cardHolderInfo.IsTemp = false; setCarholderInfo(cardHolderInfo, departmentInfo, cadreInfo, crewInfo, designationInfo, sectionInfo, companyInfo); EFERTDbUtility.mEFERTDb.Entry(cardHolderInfo).State = System.Data.Entity.EntityState.Modified; } else { cardHolderInfo = new CardHolderInfo() { FTItemId = cardHolderId, FirstName = cardHolder.FirstName, LastName = cardHolder.LastName, BloodGroup = string.IsNullOrEmpty(bloodGroup) ? null : bloodGroup, CardNumber = cardHolder.LastName, CNICNumber = string.IsNullOrEmpty(CNICNumber) ? null : CNICNumber, EmergancyContactNumber = string.IsNullOrEmpty(contactNumber) ? null : contactNumber, PNumber = pNumber == null ? null : pNumber.ToString(), DateOfBirth = dateOfBirth == null ? null : dateOfBirth.ToString(), IsTemp = false }; setCarholderInfo(cardHolderInfo, departmentInfo, cadreInfo, crewInfo, designationInfo, sectionInfo, companyInfo); EFERTDbUtility.mEFERTDb.CardHolders.Add(cardHolderInfo); } EFERTDbUtility.mEFERTDb.SaveChanges(); PermanentChForm permanentForm = new PermanentChForm(cardHolderInfo); permanentForm.Show(); } else { string companyName = chPds.ContainsKey(5059) && chPds[5059] != null ? chPds[5059] : string.Empty; string CNICNumber = chPds.ContainsKey(5051) && chPds[5051] != null ? chPds[5051] : string.Empty; string department = chPds.ContainsKey(5043) && chPds[5043] != null ? chPds[5043] : string.Empty; string designation = chPds.ContainsKey(5042) && chPds[5042] != null ? chPds[5042] : string.Empty; string emergancyContactNumber = chPds.ContainsKey(5053) && chPds[5053] != null ? chPds[5053] : string.Empty; string section = chPds.ContainsKey(12951) && chPds[12951] != null ? chPds[12951] : string.Empty; string wONumber = chPds.ContainsKey(5344) && chPds[5344] != null ? chPds[5344] : string.Empty; int cardHolderId = cardHolder.FTItemID; CadreInfo cadreInfo = (from c in EFERTDbUtility.mEFERTDb.Cadres where c != null && c.CadreName == cadre select c).FirstOrDefault() ?? new CadreInfo() { CadreName = cadre }; CrewInfo crewInfo = null; DepartmentInfo departmentInfo = string.IsNullOrEmpty(department) ? null : ((from c in EFERTDbUtility.mEFERTDb.Departments where c != null && c.DepartmentName == department select c).FirstOrDefault() ?? new DepartmentInfo() { DepartmentName = department }); DesignationInfo designationInfo = string.IsNullOrEmpty(designation) ? null : ((from c in EFERTDbUtility.mEFERTDb.Designations where c != null && c.Designation == designation select c).FirstOrDefault() ?? new DesignationInfo() { Designation = designation }); SectionInfo sectionInfo = string.IsNullOrEmpty(section) ? null : ((from c in EFERTDbUtility.mEFERTDb.Sections where c != null && c.SectionName == section select c).FirstOrDefault() ?? new SectionInfo() { SectionName = section }); CompanyInfo companyInfo = string.IsNullOrEmpty(companyName) ? null : ((from c in EFERTDbUtility.mEFERTDb.Companies where c != null && c.CompanyName == companyName select c).FirstOrDefault() ?? new CompanyInfo() { CompanyName = companyName }); if (cardHolderInfo != null && cardHolderInfo.IsTemp) { cardHolderInfo.FTItemId = cardHolderId; cardHolderInfo.FirstName = cardHolder.FirstName; cardHolderInfo.LastName = cardHolder.LastName; cardHolderInfo.CardNumber = cardHolder.LastName; cardHolderInfo.CNICNumber = string.IsNullOrEmpty(CNICNumber) ? null : CNICNumber; cardHolderInfo.EmergancyContactNumber = string.IsNullOrEmpty(emergancyContactNumber) ? null : emergancyContactNumber; cardHolderInfo.WONumber = string.IsNullOrEmpty(wONumber) ? null : wONumber; cardHolderInfo.IsTemp = false; setCarholderInfo(cardHolderInfo, departmentInfo, cadreInfo, crewInfo, designationInfo, sectionInfo, companyInfo); EFERTDbUtility.mEFERTDb.Entry(cardHolderInfo).State = System.Data.Entity.EntityState.Modified; } else { cardHolderInfo = new CardHolderInfo() { FTItemId = cardHolderId, FirstName = cardHolder.FirstName, LastName = cardHolder.LastName, CardNumber = cardHolder.LastName, CNICNumber = string.IsNullOrEmpty(CNICNumber) ? null : CNICNumber, EmergancyContactNumber = string.IsNullOrEmpty(emergancyContactNumber) ? null : emergancyContactNumber, WONumber = string.IsNullOrEmpty(wONumber) ? null : wONumber, IsTemp = false }; setCarholderInfo(cardHolderInfo, departmentInfo, cadreInfo, crewInfo, designationInfo, sectionInfo, companyInfo); EFERTDbUtility.mEFERTDb.CardHolders.Add(cardHolderInfo); } EFERTDbUtility.mEFERTDb.SaveChanges(); ContractorChForm contractorForm = new ContractorChForm(cardHolderInfo); contractorForm.Show(); } } } else if (!updatedCardExist) { ContractorChForm contractorForm = new ContractorChForm(cardHolderInfo, true); contractorForm.Show(); } else if (visitor != null) { VisitorForm vistorForm = new VisitorForm(visitor); vistorForm.Show(); } else if (dailyCardHolder != null) { ContractorChForm contractorForm = new ContractorChForm(dailyCardHolder); contractorForm.Show(); } } }