public void AddRACAPCorrespondence(int id, string commentCap, string corId, string outputFileName, int loggedInUser, int iD) { var currentHoursAndMinutes = DateTime.Now.Hour.ToString("0#") + DateTime.Now.Minute.ToString("0#") + DateTime.Now.Millisecond.ToString("0#"); RACAPPrintLetter Model = new RACAPPrintLetter(); var parentPersonalinformation = Model.GetparentPersonalinformation(id); var racapCorTable = new RACAP_Correspondence(); racapCorTable.RACAP_Correspondence_Comments = commentCap; racapCorTable.RACAP_Case_Id = id; racapCorTable.RACAP_Correspondence_Type_Id = Convert.ToInt32(corId); racapCorTable.RACAP_Correspondence_FileName = iD + "_" + Convert.ToInt32(corId) + ".pdf"; racapCorTable.RACAP_Correspondence_Date_Created = DateTime.Now; var userModel = new UserModel(); racapCorTable.RACAP_Correspondence_Created_By = loggedInUser; racapCorTable.RACAP_Correspondence_FilePath = "RACAPDocumentPath"; _db.RACAP_Correspondence.Add(racapCorTable); _db.SaveChanges(); }
public void ExportToWord(MainPageModelRACAPVM cases, int userId, int Assid) { string FileName = ""; if (cases.RACAPCaseViewModel != null) { if (cases.RACAPCaseViewModel.RACAP_Correspondence_Type_Id == 1) { FileName = "General_letter_English"; } if (cases.RACAPCaseViewModel.RACAP_Correspondence_Type_Id == 2) { FileName = "Reminder_letter_English"; } if (cases.RACAPCaseViewModel.RACAP_Correspondence_Type_Id == 3) { FileName = "Fault_letter_English"; } if (cases.RACAPCaseViewModel.RACAP_Correspondence_Type_Id == 4) { FileName = "Acknowledgment_letter_English"; } if (cases.RACAPCaseViewModel.RACAP_Correspondence_Type_Id == 5) { FileName = "Cover_letter_English"; } if (cases.RACAPCaseViewModel.RACAP_Correspondence_Type_Id == 6) { FileName = "Home_Affairs_letter_English"; } if (cases.RACAPCaseViewModel.RACAP_Correspondence_Type_Id == 7) { FileName = "Enquiries_letter_English"; } if (cases.RACAPCaseViewModel.RACAP_Correspondence_Type_Id == 8) { FileName = "Regret_letter_English"; } string savePath = ("C:/Users/hermanb.MAIL1/Documents/Visual Studio 2015/Projects/SDIIS (2)/SDIIS_Latest/SDIIS/RACAP_Module/App_Data/" + Assid + FileName + ".doc"); string templatePath = ("C:\\Users\\hermanb.MAIL1\\Documents\\Visual Studio 2015\\Projects\\SDIIS (2)\\SDIIS_Latest\\SDIIS\\RACAP_Module\\App_Data\\" + FileName + ".dot"); Microsoft.Office.Interop.Word.Application app = new Microsoft.Office.Interop.Word.Application(); Microsoft.Office.Interop.Word.Document doc = new Microsoft.Office.Interop.Word.Document(); doc = app.Documents.Open(templatePath); doc.Activate(); int?ChildPersonIDForCHildName = (from c in dbF.RACAP_Prospective_Parent join d in dbF.RACAP_Matches on c.RACAP_Prospective_Parent_Id equals d.RACAP_Prospective_Parent_Id join e in dbF.RACAP_Adoptive_Child on d.RACAP_Adoptive_Child_Id equals e.RACAP_Adoptive_Child_Id join f in dbF.RACAP_Case_Details on e.RACAP_Case_Id equals f.RACAP_Case_Id join g in dbF.Intake_Assessments on f.Intake_Assessment_Id equals g.Intake_Assessment_Id join h in dbF.Clients on g.Client_Id equals h.Client_Id where c.Intake_Assessment_Id == Assid select h.Person_Id).FirstOrDefault(); int?ParentPersonIdForClientName = (from i in dbF.Intake_Assessments join h in dbF.Clients on i.Client_Id equals h.Client_Id where i.Intake_Assessment_Id == Assid select h.Person_Id).FirstOrDefault(); if (doc.Bookmarks.Exists("ClientName") && ParentPersonIdForClientName != 0 && ParentPersonIdForClientName != null) { doc.Bookmarks["ClientName"].Range.Text = dbF.Persons.Find(ParentPersonIdForClientName).First_Name + " " + dbF.Persons.Find(ParentPersonIdForClientName).Last_Name; } if (doc.Bookmarks.Exists("CHildName") && ChildPersonIDForCHildName != 0 && ChildPersonIDForCHildName != null) { doc.Bookmarks["CHildName"].Range.Text = dbF.Persons.Find(ChildPersonIDForCHildName).First_Name + " " + dbF.Persons.Find(ChildPersonIDForCHildName).Last_Name; } if (doc.Bookmarks.Exists("CHildID") && ChildPersonIDForCHildName != 0 && ChildPersonIDForCHildName != null) { doc.Bookmarks["CHildID"].Range.Text = dbF.Persons.Find(ChildPersonIDForCHildName).Identification_Number; } AddressModel GetAdd = new AddressModel(); PersonModel GetPer = new PersonModel(); var Add = dbF.Persons.Find(ParentPersonIdForClientName).Addresses.FirstOrDefault(); int AddressId = Add.Address_Id; int PerSonId = (from a in dbF.Intake_Assessments join b in dbF.Clients on a.Client_Id equals b.Client_Id join c in dbF.Persons on b.Person_Id equals c.Person_Id where a.Intake_Assessment_Id == Assid select c.Person_Id).FirstOrDefault(); bool AddressCheck = false; if (AddressId > 0 && dbF.Addresses.Find(AddressId).Address_Line_1 != null) { AddressCheck = true; } else { AddressCheck = false; } bool CheckEmail = false; if (dbF.Persons.Find(PerSonId).Email_Address != null) { CheckEmail = true; } else { CheckEmail = false; } if (doc.Bookmarks.Exists("StrAdr") && ParentPersonIdForClientName != 0 && ParentPersonIdForClientName != null && AddressCheck == true) { doc.Bookmarks["StrAdr"].Range.Text = GetAdd.GetSpecificAddress(AddressId).Address_Line_1; } if (doc.Bookmarks.Exists("StrAdr") && ParentPersonIdForClientName != 0 && ParentPersonIdForClientName != null && AddressCheck == false) { doc.Bookmarks["StrAdr"].Range.Text = "Not completed"; } if (doc.Bookmarks.Exists("TownAdr") && ParentPersonIdForClientName != 0 && ParentPersonIdForClientName != null && AddressCheck == true) { doc.Bookmarks["TownAdr"].Range.Text = dbF.Towns.Find(GetAdd.GetSpecificAddress(AddressId).Town_Id).Description; } if (doc.Bookmarks.Exists("TownAdr") && ParentPersonIdForClientName != 0 && ParentPersonIdForClientName != null && AddressCheck == false) { doc.Bookmarks["TownAdr"].Range.Text = "Not completed"; } if (doc.Bookmarks.Exists("PCodeAdr") && ParentPersonIdForClientName != 0 && ParentPersonIdForClientName != null && AddressCheck == true) { doc.Bookmarks["PCodeAdr"].Range.Text = GetAdd.GetSpecificAddress(AddressId).Postal_Code; } if (doc.Bookmarks.Exists("PCodeAdr") && ParentPersonIdForClientName != 0 && ParentPersonIdForClientName != null && AddressCheck == false) { doc.Bookmarks["PCodeAdr"].Range.Text = "Not completed"; } if (doc.Bookmarks.Exists("ContactPerson") && ParentPersonIdForClientName != 0 && ParentPersonIdForClientName != null) { doc.Bookmarks["ContactPerson"].Range.Text = dbF.Persons.Find(ParentPersonIdForClientName).First_Name + " " + dbF.Persons.Find(ParentPersonIdForClientName).Last_Name; } if (doc.Bookmarks.Exists("Date")) { doc.Bookmarks["Date"].Range.Text = Convert.ToString(DateTime.Now.ToLongDateString()); } if (doc.Bookmarks.Exists("ClientLetterDate")) { doc.Bookmarks["ClientLetterDate"].Range.Text = Convert.ToString(DateTime.Now.ToLongDateString()); } if (doc.Bookmarks.Exists("DateOfReg")) { doc.Bookmarks["DateOfReg"].Range.Text = Convert.ToDateTime((from d in dbF.RACAP_Case_Details where d.Intake_Assessment_Id == Assid select d.Date_Registered).FirstOrDefault()).ToString("dd MMMM yyyy"); } if (doc.Bookmarks.Exists("ChildDateOfBirth") && ChildPersonIDForCHildName != 0 && ChildPersonIDForCHildName != null) { doc.Bookmarks["ChildDateOfBirth"].Range.Text = Convert.ToString(dbF.Persons.Find(ChildPersonIDForCHildName).Date_Of_Birth); } if (doc.Bookmarks.Exists("BiologicalMother") && ParentPersonIdForClientName != 0 && ParentPersonIdForClientName != null) { doc.Bookmarks["BiologicalMother"].Range.Text = dbF.Persons.Find(ParentPersonIdForClientName).First_Name + " " + dbF.Persons.Find(ParentPersonIdForClientName).Last_Name; } int MotherClientId = (from m in dbF.Client_Biological_Parents where m.Person_Id == ParentPersonIdForClientName select m.Client_Biological_Parent_Id).FirstOrDefault(); if (doc.Bookmarks.Exists("BiologicalMotherCountry") && ParentPersonIdForClientName != 0 && ParentPersonIdForClientName != null) { doc.Bookmarks["BiologicalMotherCountry"].Range.Text = Convert.ToString(dbF.Persons.Find(ParentPersonIdForClientName).Population_Group); } if (doc.Bookmarks.Exists("BiologicalMotherState") && ParentPersonIdForClientName != 0 && ParentPersonIdForClientName != null) { doc.Bookmarks["BiologicalMotherState"].Range.Text = Convert.ToString(dbF.Persons.Find(ParentPersonIdForClientName).Population_Group); } if (doc.Bookmarks.Exists("BiologicalMotherLanguage") && ParentPersonIdForClientName != 0 && ParentPersonIdForClientName != null) { doc.Bookmarks["BiologicalMotherLanguage"].Range.Text = Convert.ToString(dbF.Persons.Find(ParentPersonIdForClientName).Language); } if (doc.Bookmarks.Exists("AdoptionCity") && AddressCheck == true) { doc.Bookmarks["AdoptionCity"].Range.Text = dbF.Towns.Find(GetAdd.GetSpecificAddress(AddressId).Town_Id).Description; } int?RelId = (from r in dbF.RACAP_Prospective_Parent where r.RACAP_Case_Id == Assid select r.Religion_Id).FirstOrDefault(); if (doc.Bookmarks.Exists("BiologicalMotherChurch")) { if (RelId != null) { doc.Bookmarks["BiologicalMotherChurch"].Range.Text = dbF.Religions.Find(RelId).Description; } } if (doc.Bookmarks.Exists("BiologicalFather") && ParentPersonIdForClientName != 0 && ParentPersonIdForClientName != null) { doc.Bookmarks["BiologicalFather"].Range.Text = dbF.Persons.Find(ParentPersonIdForClientName).First_Name + " " + dbF.Persons.Find(ParentPersonIdForClientName).Last_Name; } if (doc.Bookmarks.Exists("ChildBirthPlace") && AddressCheck == true) { doc.Bookmarks["ChildBirthPlace"].Range.Text = dbF.Towns.Find(GetAdd.GetSpecificAddress(AddressId).Town_Id).Description; } if (doc.Bookmarks.Exists("ChildNameAtBirth") && ChildPersonIDForCHildName != 0 && ChildPersonIDForCHildName != null) { doc.Bookmarks["ChildNameAtBirth"].Range.Text = dbF.Persons.Find(ChildPersonIDForCHildName).First_Name + " " + dbF.Persons.Find(ChildPersonIDForCHildName).Last_Name; } if (doc.Bookmarks.Exists("SubmissionDate")) { doc.Bookmarks["SubmissionDate"].Range.Text = Convert.ToDateTime((from d in dbF.RACAP_Case_Details where d.Intake_Assessment_Id == Assid select d.Date_Registered).FirstOrDefault()).ToString("dd MMMM yyyy"); } if (doc.Bookmarks.Exists("PlaceOfExec") && AddressCheck == true) { doc.Bookmarks["PlaceOfExec"].Range.Text = dbF.Towns.Find(GetAdd.GetSpecificAddress(AddressId).Town_Id).Description; } if (doc.Bookmarks.Exists("PlaceOfExec") && AddressCheck == false) { doc.Bookmarks["PlaceOfExec"].Range.Text = "Not Completed"; } if (doc.Bookmarks.Exists("Email") && ParentPersonIdForClientName != 0 && ParentPersonIdForClientName != null && CheckEmail == true) { doc.Bookmarks["Email"].Range.Text = dbF.Persons.Find(ParentPersonIdForClientName).Email_Address; } if (doc.Bookmarks.Exists("Email") && ParentPersonIdForClientName != 0 && ParentPersonIdForClientName != null && CheckEmail == false) { doc.Bookmarks["Email"].Range.Text = "Not completed"; } if (doc.Bookmarks.Exists("Enquiries")) { doc.Bookmarks["Enquiries"].Range.Text = "testc"; } if (doc.Bookmarks.Exists("RefNumber") && ParentPersonIdForClientName != 0 && ParentPersonIdForClientName != null) { doc.Bookmarks["RefNumber"].Range.Text = (from r in dbF.Clients where r.Person_Id == ParentPersonIdForClientName select r.Reference_Number).FirstOrDefault(); } if (doc.Bookmarks.Exists("Telephone") && ParentPersonIdForClientName != 0 && ParentPersonIdForClientName != null) { doc.Bookmarks["Telephone"].Range.Text = dbF.Persons.Find(ParentPersonIdForClientName).Phone_Number; } doc.SaveAs2(savePath); app.Application.Quit(); int Case_Id = (from s in dbF.RACAP_Case_Details where s.Intake_Assessment_Id == Assid select s.RACAP_Case_Id).FirstOrDefault(); RACAP_Correspondence RCorr = (from c in dbF.RACAP_Correspondence where c.RACAP_Case_Id == Case_Id && c.RACAP_Correspondence_Type_Id == cases.RACAPCaseViewModel.RACAP_Correspondence_Type_Id select c).FirstOrDefault(); if (RCorr != null) { RCorr.RACAP_Case_Id = Case_Id; RCorr.RACAP_Correspondence_FileName = Assid + FileName; RCorr.RACAP_Correspondence_FilePath = "~/App_Data/"; RCorr.RACAP_Correspondence_Type_Id = cases.RACAPCaseViewModel.RACAP_Correspondence_Type_Id; RCorr.RACAP_Correspondence_Comments = cases.RACAPCaseViewModel.RACAP_Correspondence_Comments; dbF.SaveChanges(); } } }