private void ReceiveLetter(SendLetter message) { if (message.Letter.Equals(CurrentLetter)) { SelectLetter(); } }
public FileResult Download(Guid id) { SendLetterManager sendLetterManager = new SendLetterManager(); SendLetter sendLetter = new SendLetter(); sendLetter = sendLetterManager.Read(id); byte[] file = sendLetter?.LetterFileContent; if (file != null && file.Length > 0) { string fileName = id + ".pdf"; return(File(file, System.Net.Mime.MediaTypeNames.Application.Octet, fileName)); } else { return(null); } }
private void btn_Send_Click(object sender, EventArgs e) { if (Refrencetype == 1) { using (TransactionScope ts = new TransactionScope()) { List <DataGridView> chek_User = new List <DataGridView>(); foreach (DataGridViewRow row in dgvShowUser.Rows) { //Insertsenddate(); Refrences rf = new Refrences(); if (Convert.ToBoolean(row.Cells["Select"].Value) == true) { rf.LetterID = this.GetLetterID; rf.UserID = this.refrencekonande; rf.RefrenceUserID = this.refrenceshode; rf.ReciveRefrenceUserID = Convert.ToInt32(row.Cells["UserID"].Value); rf.CreateDate = PublicVariebale.ToDayDate; DBCommon.Context.Refrences.Add(rf); DBCommon.Context.SaveChanges(); } } DBCommon.Context.SaveChanges(); ts.Complete(); MessageBox.Show("ارجاع نامه با موفقیت انجام شد", "موفقیت", MessageBoxButtons.OK, MessageBoxIcon.Information); this.Close(); } } else { using (TransactionScope ts = new TransactionScope()) { ///Exit to Draft /// var query_Update = (from u in DBCommon.Context.Letters where u.LetterID == this.GetLetterID select u).SingleOrDefault(); query_Update.DraftyType = 2; query_Update.SendLetterDate = PublicVariebale.ToDayDate; DBCommon.Context.SaveChanges(); ///// /// List <DataGridView> chek_User = new List <DataGridView>(); foreach (DataGridViewRow row in dgvShowUser.Rows) { //Insertsenddate(); SendLetter sl = new SendLetter(); if (Convert.ToBoolean(row.Cells["Select"].Value) == true) { sl.UserID = Convert.ToInt32(row.Cells["UserID"].Value); sl.LetterID = this.GetLetterID; sl.ReadType = 1; sl.Status = 1; DBCommon.Context.SendLetter.Add(sl); } } DBCommon.Context.SaveChanges(); ts.Complete(); MessageBox.Show("ارسال نامه با موفقیت انجام شد", "موفقیت", MessageBoxButtons.OK, MessageBoxIcon.Information); this.Close(); } } }
public ActionResult Edit(EditOutgoingLettersViewModel editOutgoingLettersViewModel) { SendLetterManager sendLetterManager = new SendLetterManager(); SendLetter oldLetter = sendLetterManager.Read(editOutgoingLettersViewModel.sendLetter.Id); #region temp TempSendLetterManager tempSendLetterManager = new TempSendLetterManager(); //Get Letter before Edit SendLetter sendletter = tempSendLetterManager.ReturnReceivedLetter(editOutgoingLettersViewModel.sendLetter.Id); if (sendletter == null) { throw new Exception("نامه مورد نظر یافت نگردید."); } TempSendLetter tempSendLetter = new TempSendLetter { User = sendletter.User, Recievers = sendletter?.Recievers ?? null, ParentType = sendletter.ParentType, AppendageContent = sendletter.AppendageContent, LetterFileContent = sendletter.LetterFileContent, ArchiveDateTime = sendletter.ArchiveDateTime, LetterDateTime = sendletter.LetterDateTime, ModifyDateTime = sendletter.LastModifyDateTime, Assortment = sendletter.Assortment, Cases = sendletter.Cases, RowNumber = sendletter.RowNumber, Description = sendletter.Description, SendLetter = sendletter, ParentReceivedLetterOutTemp = sendletter.ParentReceivedLetterOut, ParentSendLetter = sendletter.ParentSendLetter, TempSendLetterFiles = new List <TempSendLetterFile>(), Appendages = new List <TempSendAppendage>(), LetterFileAppendageContent = sendletter.LetterFileAppendageContent, Active = true, SenderEmployee = sendletter.SenderEmployee }; //Temp Collection of Cases //foreach (var item in sendletter.Cases) //{ // tempSendLetter.Cases.Add(item); //} //Copy files to temp foreach (var item in sendletter.sendLetterFiles) { TempSendLetterFile tempSendLetterFile = new TempSendLetterFile { File = item.File }; tempSendLetter.TempSendLetterFiles.Add(tempSendLetterFile); } //Copy Appendages to temp foreach (var item in sendletter.Appendages) { TempSendAppendage tempSendAppendage = new TempSendAppendage { File = item.File }; tempSendLetter.Appendages.Add(tempSendAppendage); } //Copy Recievers //foreach (var item in sendletter.Recievers) //{ // Reciever r = new Reciever(); // r.Id = item.Id; // r.Organization = item.Organization; // r.Person = item.Person; // r.Post = item.Post; //} tempSendLetterManager.Add(tempSendLetter); tempSendLetterManager.saveChanges(); #endregion //Set assortments oldLetter.Assortment = editOutgoingLettersViewModel.sendLetter.Assortment; //Set Description oldLetter.Description = editOutgoingLettersViewModel.sendLetter.Description; //Set letter content oldLetter.Body = editOutgoingLettersViewModel.sendLetter.Body; //Set Letter DateTime if (!string.IsNullOrEmpty(editOutgoingLettersViewModel.LetterDateTime)) { oldLetter.LetterDateTime = editOutgoingLettersViewModel.LetterDateTime.toEnglishNumber().ToGeorgianDateTime(); } oldLetter.LastModifyDateTime = DateTime.Now; if (oldLetter.User.Id != new Guid(User.Identity.Name)) { sendLetterManager.AddUser(oldLetter, new Guid(User.Identity.Name)); } //upload files sendLetterManager.UpdateSendLetterFiles(oldLetter, editOutgoingLettersViewModel.fileUploadLetters, editOutgoingLettersViewModel.FilesID); sendLetterManager.UpdateSendLetterAppendages(oldLetter, editOutgoingLettersViewModel.fileUploadAppendages, editOutgoingLettersViewModel.AppendagesID); oldLetter.ParentType = editOutgoingLettersViewModel.sendLetter.ParentType; //Set Parent Letter sendLetterManager.AddParent(oldLetter, editOutgoingLettersViewModel.ParentletterId); //update organization , post and person if (editOutgoingLettersViewModel.PersonGuid != Guid.Empty || editOutgoingLettersViewModel.OrganizationGuid != Guid.Empty) { sendLetterManager.EditReciever(oldLetter, editOutgoingLettersViewModel.OrganizationGuid, editOutgoingLettersViewModel.PersonGuid, editOutgoingLettersViewModel.PostGuid); } //update department , post and employee if (editOutgoingLettersViewModel.EmployeeGuid != Guid.Empty || editOutgoingLettersViewModel.DepartmentGuid != Guid.Empty) { sendLetterManager.EditSenderEmployee(oldLetter, editOutgoingLettersViewModel.DepartmentGuid, editOutgoingLettersViewModel.EmployeeGuid, editOutgoingLettersViewModel.DepartmentPostGuid); } //set rowNumber Logic oldLetter.RowNumber = editOutgoingLettersViewModel.autoRowNumber ? sendLetterManager.AutoRowNumber(oldLetter.SenderEmployee?.Department) : editOutgoingLettersViewModel.RowNumber; //Add cases sendLetterManager.EditCases(oldLetter, editOutgoingLettersViewModel.SelectedCasesGuid); //Start Processing Files and Appendages to Save them as pdf sendLetterManager.GeneratePDF(oldLetter, editOutgoingLettersViewModel.LetterTemplate); sendLetterManager.Update(oldLetter); sendLetterManager.saveChanges(); return(RedirectToAction("Index")); }