public IssueItem GetIssueItemByResidentID(int residentID) { var resident = db.Residents.Find(residentID); if (resident == null) { throw new NullReferenceException(String.Format("There is no record in the 'Resident' table with given {0} ID", residentID)); } IssueItem item = new IssueItem { IssueID = 0, ResidentID = resident.ResidentID, FirstName = resident.FirstName, LastName = resident.LastName, MiddleName = resident.MiddleName, IdentificatorNumber = resident.IdentificatorNumber, BirthDate = resident.BirthDate, IssueName = String.Empty, IssueDescription = String.Empty, IssueDate = null, IssueTypeID = null, IssueCategoryID = 1, CompanyID = null, CompanyName = null }; item.InitializationType = InitializationTypes.Insert; return(item); }
public IssueItem GetIssueItemByCompanyID(int companyID) { var company = db.Companys.Find(companyID); if (company == null) { throw new NullReferenceException(String.Format("There is no record in the 'Company' table with given {0} ID", companyID)); } IssueItem item = new IssueItem { IssueID = 0, ResidentID = null, IssueName = String.Empty, IssueDescription = String.Empty, IssueDate = null, IssueTypeID = null, IssueCategoryID = 2, CompanyID = company.CompanyID, CompanyName = company.CompanyName }; item.InitializationType = InitializationTypes.Insert; return(item); }
public IssueItem SaveIssue(IssueItem issueItem) { Issue issue = null; switch (issueItem.InitializationType) { case InitializationTypes.Insert: issue = new Issue { IssueID = 0, ResidentID = issueItem.ResidentID, IssueName = issueItem.IssueName, IssueDescription = issueItem.IssueDescription, IssueDate = issueItem.IssueDate, IssueTypeID = issueItem.IssueTypeID, IssueCategoryID = issueItem.IssueCategoryID, CompanyID = issueItem.CompanyID }; db.Issues.Add(issue); break; case InitializationTypes.Update: issue = new Issue { IssueID = issueItem.IssueID, ResidentID = issueItem.ResidentID, IssueName = issueItem.IssueName, IssueDescription = issueItem.IssueDescription, IssueDate = issueItem.IssueDate, IssueTypeID = issueItem.IssueTypeID, IssueCategoryID = issueItem.IssueCategoryID, CompanyID = issueItem.CompanyID }; db.Issues.Attach(issue); db.Entry(issue).State = EntityState.Modified; break; } db.SaveChanges(); issueItem.IssueID = issue.IssueID; return(issueItem); }
public IssueItem GetIssueItemByID(int issueID) { var issue = db.Issues.Find(issueID); Resident resident = null; if (issue.ResidentID != null) { resident = db.Residents.Find(issue.ResidentID); } Company company = null; if (issue.CompanyID != null) { company = db.Companys.Find(issue.CompanyID); } if (issue == null) { throw new NullReferenceException(String.Format("There is no record in the 'Issue' table with given {0} ID", issueID)); } IssueItem item = new IssueItem(); if (issue.IssueCategoryID == 1) { item.IssueID = issue.IssueID; item.IssueName = issue.IssueName; item.IssueDescription = issue.IssueDescription; item.IssueDate = issue.IssueDate; item.IssueCategoryID = issue.IssueCategoryID; item.IssueTypeID = issue.IssueTypeID; item.ResidentID = issue.ResidentID; if (resident != null) { item.FirstName = resident.FirstName; item.LastName = resident.LastName; item.MiddleName = resident.MiddleName; item.IdentificatorNumber = resident.IdentificatorNumber; item.BirthDate = resident.BirthDate; } } else if (issue.IssueCategoryID == 2) { item.IssueID = issue.IssueID; item.IssueName = issue.IssueName; item.IssueDescription = issue.IssueDescription; item.IssueDate = issue.IssueDate; item.IssueCategoryID = issue.IssueCategoryID; item.IssueTypeID = issue.IssueTypeID; item.CompanyID = issue.CompanyID; if (company != null) { item.CompanyName = company.CompanyName; } } else { throw new NullReferenceException(String.Format("The issue have not a category")); } return(item); }