protected void UpdateStudentRegistar() { if (Request["id"] != null) { int HomestayStudentId = Id; var cHomestayStudentRequest = new CHomestayStudentRequest(); if (ScheduleChange == 0) { if (HomestayStudentId == 0) //New Registrar { int AddResult = 0; HomestayStudentBasic Student = new HomestayStudentBasic(); //Retrive Data from Form Student = GetFormData(Student); //Homestay Status Student.HomestayStudentStatus = 0; //Pending=0, Requested=1, Placed by School=2, Placed by Agency =3, Canceled =4 Student.CreatedDate = DateTime.Now; Student.CreatedUserId = CurrentUserId; AddResult = cHomestayStudentRequest.Add(Student); if (AddResult > 0) { file_upload.SaveFile(AddResult); // GenerateInvoice(AddResult, (int)CConstValue.InvoiceType.Homestay); RunClientScript("Close();"); ShowMessage("Added a new homestay registar and Generated an invoice successfully."); } else //Failed { ShowMessage("Failed to add a new homestay registar, Please try it again."); } } else //Update Registrar { bool UpdateResult = false; HomestayStudentBasic UpdateStudent = cHomestayStudentRequest.GetHomestayStudentRequest(HomestayStudentId); // Retrive Data from From UpdateStudent = GetFormData(UpdateStudent); UpdateStudent.HomestayStudentStatus = 1; //Requested UpdateStudent.UpdateUserId = CurrentUserId; UpdateStudent.UpdatedDate = DateTime.Now; UpdateResult = cHomestayStudentRequest.Update(UpdateStudent); int InvoiceId = 0; var cInvoice = new CInvoice(); InvoiceId = cInvoice.GetInvoiceIdbyHomestayStudentId(HomestayStudentId); if (InvoiceId == 0) { GenerateInvoice(HomestayStudentId, (int)CConstValue.InvoiceType.Homestay); //Generate Invoice } file_upload.SaveFile(UpdateStudent.HomestayStudentId); if (UpdateResult) { RunClientScript("Close();"); ShowMessage("Requested Homestay Registar successfully."); } else //Failed { ShowMessage("Failed to update Homestay Registrar, please try it again."); } } } else //Schedule Change: New Homestay Replacement Request { //int SCResult = 0; //HomestayStudentBasic StudentBasic = new HomestayStudentBasic(); ////Retrive Data from Form //StudentBasic = GetFormData(StudentBasic); ////Homestay Status //StudentBasic.HomestayStudentStatus = 1; //Requested=1, Placed by School=2, Placed by Agency =3, Canceled =4, Schedule Change=5 //StudentBasic.CreatedDate = DateTime.Now; //StudentBasic.CreatedUserId = CurrentUserId; //SCResult = cHomestayStudentRequest.Add(StudentBasic); //if (SCResult > 0) //{ // file_upload.SaveFile(SCResult); // GenerateInvoice(SCResult, 16); // var cHomestayCancleSheduleChange = new CHomestayCancelSheduleChange(); // HomestayCancelScheduleChange Cancel = new HomestayCancelScheduleChange(); // Cancel.CancellationDate = DateTime.MaxValue; // Cancel.Comment = txtScheduleComment.Text; // Cancel.ChangeType = 2; // 1=Cancel, 2=Schedule Change // Cancel.OriginalStudentBasicId = Convert.ToInt32(Request["Id"]); // Cancel.NewStudentBasicId = SCResult; // Cancel.RequestStatus = 0; //0=Pending, 1=Rejected, 2=Approved // Cancel.CreatedDate = DateTime.Now; // Cancel.CreatedId = CurrentUserId; // Cancel.UpdatedDate = DateTime.Now; // Cancel.UpdatedId = CurrentUserId; // int result = 0; // result = cHomestayCancleSheduleChange.Add(Cancel); // Grid_ChangeList.Rebind(); // ShowMessage("Homestay Schedule Change are added and Generated an invoice successfully."); //} //else //Failed //{ // ShowMessage("Failed to Add Schedule Change, Please try it again."); //} //Wait for Jun's Schedule Change Invoice Function //Update Student Request Status: Schedule Change //Release Homestay Placement (Host Bed) } } }