private static ResidenceMember GetResidenceMember(string[] fields, int residenceId) { var residenceMember = new ResidenceMember(); residenceMember.Residence_Id = residenceId; residenceMember.MemberName = fields[2].Trim('\"').ToUpper(); residenceMember.DOB = Convert.ToDateTime(fields[3].Trim('\"')); residenceMember.Gender = fields[4].Trim('\"'); residenceMember.Mobile = fields[5].Trim('\"'); residenceMember.Job = fields[6].Trim('\"'); residenceMember.MarriageStatus = fields[7].Trim('\"'); residenceMember.Qualification = fields[8].Trim('\"'); if (!String.IsNullOrEmpty(fields[9].Trim('\"'))) { residenceMember.Abroad = true; residenceMember.Country = fields[9].Trim('\"'); } else { residenceMember.Abroad = false; } residenceMember.IsGuardian = false; return(residenceMember); }
private bool ValidateResidenceMember(UnitOfWork unitOfWork) { if (CurrentResidence == null) { MessageBox.Show("Please select residence first to add a member"); return(false); } if (String.IsNullOrEmpty(MemberName)) { MessageBox.Show("Please enter member name"); return(false); } if (!Male && !Female && !Other) { MessageBox.Show("Please enter gender"); return(false); } //if(String.IsNullOrEmpty(MarriageStatus)) { // MessageBox.Show("Please enter marriage status"); // return false; //} if (CurrentMember == null) { ResidenceMember residenceMember = unitOfWork.ResidenceMembers.Find((x) => x.MemberName == MemberName && x.Residence_Id == CurrentResidence.Id).FirstOrDefault(); if (residenceMember != null) { MessageBox.Show("Member already exists"); return(false); } } return(true); }
private ResidenceMember GetResidenceMember() { var residenceMember = new ResidenceMember(); residenceMember.MemberName = MemberName.Trim().ToUpper(); residenceMember.DOB = DOB; residenceMember.Job = Job?.Trim(); residenceMember.Mobile = Mobile?.Trim(); residenceMember.Abroad = IsAbroad; if (IsAbroad) { residenceMember.Country = Country?.Trim(); } residenceMember.IsGuardian = IsGuardian; String gender = String.Empty; if (Male) { gender = "Male"; } else if (Female) { gender = "Female"; } else { gender = "Other"; } residenceMember.Gender = gender; residenceMember.MarriageStatus = MarriageStatus; residenceMember.Qualification = Qualification; residenceMember.Remarks = Remarks; residenceMember.Residence_Id = CurrentResidence.Id; return(residenceMember); }
private void ExecuteDeleteMember() { MessageBoxResult result = MessageBox.Show("Are you sure to delete " + currentMember.MemberName, "Delete", MessageBoxButton.YesNo, MessageBoxImage.Warning); if (result == MessageBoxResult.Yes) { if (currentMember != null) { using (var unitofWork = new UnitOfWork(new MahalluDBContext())) { ResidenceMember member = unitofWork.ResidenceMembers.Get(CurrentMember.Id); if (member != null) { unitofWork.ResidenceMembers.Remove(member); unitofWork.Complete(); ResidenceMemberType residenceMemberType = new ResidenceMemberType { ResidenceMember = CurrentMember, Operation = MahalluManager.Model.Common.Operation.Delete }; eventAggregator.GetEvent <PubSubEvent <ResidenceMemberType> >().Publish(residenceMemberType); MemberList.Remove(CurrentMember); CurrentMember = null; } } } } }
static void Main(string[] args) { try { LoadArea(); LoadHouseNumbers(); Console.WriteLine("Enter Soure file path"); String path = Console.ReadLine();; while (!File.Exists(path)) { Console.WriteLine("Please enter correct source file path"); path = Console.ReadLine();; Console.Read(); } string[] inputlines = File.ReadAllLines(path); String currentFolder = Path.GetDirectoryName(System.Windows.Forms.Application.ExecutablePath); String skippedMembers = Path.Combine(currentFolder, "skipped.csv"); String skippedContent = inputlines[0]; using (var unitOfWork = new UnitOfWork(new MahalluDBContext())) { List <Residence> residences = unitOfWork.Residences.GetAll().ToList(); for (int i = 1; i < inputlines.Length; i++) { string[] fields = inputlines[i].Split(','); Residence residence = null; bool isFound = false; foreach (var item in residences) { if (item.Number == fields[1].Trim('\"')) { residence = item; isFound = true; break; } } if (isFound) { ResidenceMember residenceMember = GetResidenceMember(fields, residence.Id); unitOfWork.ResidenceMembers.Add(residenceMember); unitOfWork.Complete(); } else { skippedContent += "\n" + inputlines[i]; } } } File.WriteAllText(skippedMembers, skippedContent);; Console.WriteLine("Data loaded successfully"); } catch (Exception ex) { Console.WriteLine(ex.ToString()); } Console.Read(); }
private void ExecuteSaveMember() { using (var unitOfWork = new UnitOfWork(new MahalluDBContext())) { if (ValidateResidenceMember(unitOfWork)) { ResidenceMember residenceMember = GetResidenceMember(); if (CurrentMember != null) { CurrentMember.MemberName = residenceMember.MemberName.ToUpper(); CurrentMember.DOB = residenceMember.DOB; CurrentMember.Job = residenceMember.Job; CurrentMember.Mobile = residenceMember.Mobile; CurrentMember.Abroad = residenceMember.Abroad; CurrentMember.Country = residenceMember.Country; CurrentMember.IsGuardian = residenceMember.IsGuardian; CurrentMember.MarriageStatus = residenceMember.MarriageStatus; CurrentMember.Qualification = residenceMember.Qualification; CurrentMember.Remarks = residenceMember.Remarks; CurrentMember.Gender = residenceMember.Gender; unitOfWork.ResidenceMembers.Update(CurrentMember); MessageBox.Show(CurrentMember.MemberName + " updated successfully !", "New Member", MessageBoxButton.OK, MessageBoxImage.Information); } else { unitOfWork.ResidenceMembers.Add(residenceMember); MemberList.Add(residenceMember); CurrentMember = residenceMember; MessageBox.Show(CurrentMember.MemberName + " added successfully !", "New Member", MessageBoxButton.OK, MessageBoxImage.Information); } unitOfWork.Complete(); ResidenceMemberType residenceMemberType = new ResidenceMemberType { ResidenceMember = CurrentMember, Operation = MahalluManager.Model.Common.Operation.Add }; eventAggregator.GetEvent <PubSubEvent <ResidenceMemberType> >().Publish(residenceMemberType); } } }
public ContributionViewModel() { eventAggregator.GetEvent <PubSubEvent <ObservableCollection <IncomeCategory> > >().Subscribe((e) => { CategoryList = e; }); ClearContributionCommand = new DelegateCommand(ExecuteClearContribution, CanExecuteClearContribution); DeleteContributionCommand = new DelegateCommand(ExecuteDeleteContribution, CanExecuteDeleteContribution); NewContributionCommand = new DelegateCommand(ExecuteNewContribution); SaveContributionCommand = new DelegateCommand(ExecuteSaveContribution, CanExecuteSaveContribution); ClearSearchContributionCommand = new DelegateCommand(ExecuteClearSearchContribution); SearchContributionCommand = new DelegateCommand(ExecuteSearchContribution, CanExecuteSearchContribution); ClearDetailCommand = new DelegateCommand(ExecuteClearDetail, CanExecuteClearDetail); DeleteDetailCommand = new DelegateCommand(ExecueDeleteDetail, CanExecueDeleteDetail); NewDetailCommand = new DelegateCommand(ExecuteNewDetail, CanExecuteNewDetail); SaveDetailCommand = new DelegateCommand(ExecuteSaveDetail, CanExecuteSaveDetail); IsMember = true; RefreshContribution(); SetupSearchableIndexes(); eventAggregator.GetEvent <PubSubEvent <ResidenceType> >().Subscribe((e) => { Residence residence = ((ResidenceType)e).Residence; bool isPresent = false; foreach (var item in SearchableResidenceNumbers) { if (item == residence.Number) { isPresent = true; break; } } if (!isPresent) { SearchableResidenceNumbers.Add(residence.Number); } else if (isPresent && e.Operation == MahalluManager.Model.Common.Operation.Delete) { SearchableResidenceNumbers.Remove(residence.Number); } isPresent = false; foreach (var item in SearchableResidenceNames) { if (item.Equals(residence.Name)) { isPresent = true; } } if (!isPresent) { SearchableResidenceNames.Add(residence.Name); } else if (isPresent && e.Operation == MahalluManager.Model.Common.Operation.Delete) { SearchableResidenceNames.Remove(residence.Name); } }); eventAggregator.GetEvent <PubSubEvent <ResidenceMemberType> >().Subscribe((e) => { ResidenceMember residenceMember = ((ResidenceMemberType)e).ResidenceMember; bool isPresent = false; foreach (var item in SearchableMemberNames) { if (item.Equals(residenceMember.MemberName)) { isPresent = true; } } if (!isPresent) { SearchableMemberNames.Add(residenceMember.MemberName); } else if (isPresent && e.Operation == MahalluManager.Model.Common.Operation.Delete) { SearchableMemberNames.Remove(residenceMember.MemberName); } isPresent = false; foreach (var item in members) { if (item.Id == residenceMember.Id) { isPresent = true; } } Residence residence = GetResidence(residenceMember); if (!isPresent) { members.Add(residenceMember); SearchableMembers.Add(residenceMember.MemberName + " \t@" + residence.Name + "_" + residence.Number + "@"); } else if (isPresent && e.Operation == MahalluManager.Model.Common.Operation.Delete) { members.Remove(residenceMember); SearchableMembers.Remove(residenceMember.MemberName + " \t@" + residence.Name + "_" + residence.Number + "@"); } }); InitializeDatePicker(); InitializeSearchPanel(); eventAggregator.GetEvent <PubSubEvent <SelectedYearType> >().Subscribe((e) => { SelectedYear = ((SelectedYearType)e).SelectedYear; }); }
private static Residence GetResidence(ResidenceMember residenceMember) { using (UnitOfWork unitOfWork = new UnitOfWork(new MahalluDBContext())) { return(unitOfWork.Residences.Get(residenceMember.Residence_Id)); } }
private void ExecuteRestore() { MessageBoxResult messageBoxResult = MessageBox.Show("Are you sure to Restore", "Restore", MessageBoxButton.YesNo, MessageBoxImage.Warning); if (messageBoxResult == MessageBoxResult.Yes) { using (var unitofWork = new UnitOfWork(new MahalluDBContext())) { unitofWork.Residences.RemoveRange(unitofWork.Residences.GetAll()); unitofWork.ResidenceMembers.RemoveRange(unitofWork.ResidenceMembers.GetAll()); unitofWork.Areas.RemoveRange(unitofWork.Areas.GetAll()); unitofWork.ExpenseCategories.RemoveRange(unitofWork.ExpenseCategories.GetAll()); unitofWork.IncomeCategories.RemoveRange(unitofWork.IncomeCategories.GetAll()); unitofWork.CashSources.RemoveRange(unitofWork.CashSources.GetAll()); //unitofWork.Expenses.RemoveRange(unitofWork.Expenses.GetAll()); //unitofWork.ExpenseDetails.RemoveRange(unitofWork.ExpenseDetails.GetAll()); //unitofWork.Contributions.RemoveRange(unitofWork.Contributions.GetAll()); //unitofWork.ContributionDetails.RemoveRange(unitofWork.ContributionDetails.GetAll()); //unitofWork.MarriageCertificates.RemoveRange(unitofWork.MarriageCertificates.GetAll()); unitofWork.Complete(); string[] directories = Directory.GetDirectories(BackupAndRestoreLocation); string directoryPath = backupAndRestoreLocation + @"\MMBackup"; if (Directory.Exists(directoryPath)) { string filePath = directoryPath + @"\Residences.csv"; if (File.Exists(filePath)) { String[] backupData = File.ReadAllLines(filePath); for (int i = 1; i < backupData.Length; i++) { string[] fields = backupData[i].Split(new char[] { ',' }); Residence residence = new Residence(); residence.Number = fields[0]; residence.Name = fields[1]; residence.Area = fields[2]; unitofWork.Residences.Add(residence); } } unitofWork.Complete(); filePath = directoryPath + @"\ResidenceMembers.csv"; if (File.Exists(filePath)) { String[] backupData = File.ReadAllLines(filePath); for (int i = 1; i < backupData.Length; i++) { string[] fields = backupData[i].Split(new char[] { ',' }); Residence residence = unitofWork.Residences.GetAll().Where(x => x.Number == fields[0]).FirstOrDefault(); ResidenceMember residenceMember = new ResidenceMember(); residenceMember.Residence_Id = residence.Id; residenceMember.MemberName = fields[1]; residenceMember.DOB = Convert.ToDateTime(fields[2]); residenceMember.Job = fields[3]; residenceMember.Mobile = fields[4]; residenceMember.Abroad = Convert.ToBoolean(fields[5]); residenceMember.Country = fields[6]; residenceMember.IsGuardian = Convert.ToBoolean(fields[7]); residenceMember.Gender = fields[8]; residenceMember.MarriageStatus = fields[9]; residenceMember.Qualification = fields[10]; residenceMember.Remarks = fields[11]; unitofWork.ResidenceMembers.Add(residenceMember); } } unitofWork.Complete(); filePath = directoryPath + @"\Areas.csv"; if (File.Exists(filePath)) { String[] backupData = File.ReadAllLines(filePath); for (int i = 1; i < backupData.Length; i++) { string[] fields = backupData[i].Split(new char[] { ',' }); Area area = new Area(); area.Name = fields[0]; unitofWork.Areas.Add(area); } } unitofWork.Complete(); filePath = directoryPath + @"\ContributionDetail.csv"; if (File.Exists(filePath)) { String[] backupData = File.ReadAllLines(filePath); for (int i = 1; i < backupData.Length; i++) { string[] fields = backupData[i].Split(new char[] { ',' }); ContributionDetail contributionDetail = new ContributionDetail(); unitofWork.ContributionDetails.Add(contributionDetail); } } unitofWork.Complete(); filePath = directoryPath + @"\CashSources.csv"; if (File.Exists(filePath)) { String[] backupData = File.ReadAllLines(filePath); for (int i = 1; i < backupData.Length; i++) { string[] fields = backupData[i].Split(new char[] { ',' }); CashSource cashSource = new CashSource(); cashSource.SourceName = fields[0]; cashSource.Amount = Convert.ToDecimal(fields[1]); unitofWork.CashSources.Add(cashSource); } } unitofWork.Complete(); filePath = directoryPath + @"\ExpenseCategories.csv"; if (File.Exists(filePath)) { String[] backupData = File.ReadAllLines(filePath); for (int i = 1; i < backupData.Length; i++) { string[] fields = backupData[i].Split(new char[] { ',' }); ExpenseCategory expenseCategory = new ExpenseCategory(); expenseCategory.Name = fields[0]; expenseCategory.DetailsRequired = Convert.ToBoolean(fields[1]); unitofWork.ExpenseCategories.Add(expenseCategory); } } unitofWork.Complete(); filePath = directoryPath + @"\IncomeCategories.csv"; if (File.Exists(filePath)) { String[] backupData = File.ReadAllLines(filePath); for (int i = 1; i < backupData.Length; i++) { string[] fields = backupData[i].Split(new char[] { ',' }); IncomeCategory incomeCategory = new IncomeCategory(); incomeCategory.Name = fields[0]; incomeCategory.DetailsRequired = Convert.ToBoolean(fields[1]); unitofWork.IncomeCategories.Add(incomeCategory); } } unitofWork.Complete(); MessageBox.Show("Restore is completed successfully..!"); } else { MessageBox.Show(backupAndRestoreLocation + " doesn't contain back up directory as MMBackup"); } } } }