public void InsertNoteHistory(string ticketId, bool sendEmail, string emailSubject, string noteDetail, List <string> emailList, string createBy) { try { kkslm_prepare_email email = null; string emailTemplate = ""; DateTime createDate = DateTime.Now; kkslm_note note = new kkslm_note(); note.slm_TicketId = ticketId; note.slm_NoteDetail = noteDetail; note.slm_CreateBy = createBy; note.slm_CreatedBy_Position = GetPositionId(createBy); note.slm_CreateDate = createDate; note.slm_SendEmailFlag = sendEmail; if (sendEmail) { note.slm_EmailSubject = emailSubject; OwnerDelegateEmailData data = GetOwnerOrDelegateEmail(ticketId); if (data != null) { if (data.Owner != null && !string.IsNullOrEmpty(data.OwnerEmail)) { emailTemplate = GetEmailTemplate(ticketId, noteDetail); email = new kkslm_prepare_email(); email.slm_EmailAddress = data.OwnerEmail; email.slm_EmailContent = emailTemplate; email.slm_EmailSubject = emailSubject; email.slm_EmailSender = createBy; email.slm_ticketId = ticketId; email.slm_ExportStatus = "0"; email.is_Deleted = 0; email.slm_CreatedBy = createBy; email.slm_CreatedDate = createDate; slmdb.kkslm_prepare_email.AddObject(email); } if (data.Delegate != null && !string.IsNullOrEmpty(data.DelegateEmail)) { email = new kkslm_prepare_email(); email.slm_EmailAddress = data.DelegateEmail; if (emailTemplate == "") { emailTemplate = GetEmailTemplate(ticketId, noteDetail); } email.slm_EmailContent = emailTemplate; email.slm_EmailSubject = emailSubject; email.slm_EmailSender = createBy; email.slm_ticketId = ticketId; email.slm_ExportStatus = "0"; email.is_Deleted = 0; email.slm_CreatedBy = createBy; email.slm_CreatedDate = createDate; slmdb.kkslm_prepare_email.AddObject(email); } } foreach (string email_address in emailList) { kkslm_prepare_email prepare_eamil = new kkslm_prepare_email(); prepare_eamil.slm_EmailAddress = email_address; if (emailTemplate == "") { emailTemplate = GetEmailTemplate(ticketId, noteDetail); } prepare_eamil.slm_EmailContent = emailTemplate; prepare_eamil.slm_EmailSubject = emailSubject; prepare_eamil.slm_EmailSender = createBy; prepare_eamil.slm_ticketId = ticketId; prepare_eamil.slm_ExportStatus = "0"; prepare_eamil.is_Deleted = 0; prepare_eamil.slm_CreatedBy = createBy; prepare_eamil.slm_CreatedDate = createDate; slmdb.kkslm_prepare_email.AddObject(prepare_eamil); } } slmdb.kkslm_note.AddObject(note); var lead = slmdb.kkslm_tr_lead.Where(p => p.slm_ticketId == ticketId).FirstOrDefault(); if (lead != null) { lead.slm_NoteFlag = "1"; lead.slm_UpdatedBy = createBy; lead.slm_UpdatedDate = createDate; } KKSlmTrHistoryModel.InsertHistory(slmdb, ticketId, SLMConstant.HistoryTypeCode.InsertNote, "", "", createBy, createDate); slmdb.SaveChanges(); } catch (Exception ex) { throw ex; } }
public static void InsertNoteHistory(string ticketId, bool sendEmail, string emailSubject, string noteDetail, List <string> emailList, string createBy) { try { SLMDBEntities slmdb = new SLMDBEntities(); kkcoc_prepare_email email = null; string emailTemplate = ""; DateTime createDate = DateTime.Now; kkslm_note note = new kkslm_note(); note.slm_TicketId = ticketId; note.slm_NoteDetail = noteDetail; note.slm_CreateBy = createBy; note.slm_CreatedBy_Position = KKSlmMsStaffDal.GetPositionId(createBy); note.slm_CreateDate = createDate; note.slm_SendEmailFlag = sendEmail; if (sendEmail) { note.slm_EmailSubject = emailSubject; OwnerDelegateEmailData data = GetOwnerOrDelegateEmail(slmdb, ticketId); if (data != null) { if (data.Owner != null && !string.IsNullOrEmpty(data.OwnerEmail)) { emailTemplate = GetEmailTemplate(slmdb, ticketId, noteDetail); email = new kkcoc_prepare_email(); email.coc_EmailAddress = data.OwnerEmail; email.coc_EmailContent = emailTemplate; email.coc_EmailSubject = emailSubject; email.coc_EmailSender = createBy; email.coc_ticketId = ticketId; email.coc_ExportStatus = "0"; email.is_Deleted = 0; email.coc_CreatedBy = createBy; email.coc_CreatedDate = createDate; slmdb.kkcoc_prepare_email.AddObject(email); } if (data.Delegate != null && !string.IsNullOrEmpty(data.DelegateEmail)) { email = new kkcoc_prepare_email(); email.coc_EmailAddress = data.DelegateEmail; if (emailTemplate == "") { emailTemplate = GetEmailTemplate(slmdb, ticketId, noteDetail); } email.coc_EmailContent = emailTemplate; email.coc_EmailSubject = emailSubject; email.coc_EmailSender = createBy; email.coc_ticketId = ticketId; email.coc_ExportStatus = "0"; email.is_Deleted = 0; email.coc_CreatedBy = createBy; email.coc_CreatedDate = createDate; slmdb.kkcoc_prepare_email.AddObject(email); } if (data.MarketingOwner != null && !string.IsNullOrEmpty(data.MarketingOwnerEmail)) { email = new kkcoc_prepare_email(); email.coc_EmailAddress = data.MarketingOwnerEmail; if (emailTemplate == "") { emailTemplate = GetEmailTemplate(slmdb, ticketId, noteDetail); } email.coc_EmailContent = emailTemplate; email.coc_EmailSubject = emailSubject; email.coc_EmailSender = createBy; email.coc_ticketId = ticketId; email.coc_ExportStatus = "0"; email.is_Deleted = 0; email.coc_CreatedBy = createBy; email.coc_CreatedDate = createDate; slmdb.kkcoc_prepare_email.AddObject(email); } if (data.LastOwner != null && !string.IsNullOrEmpty(data.LastOwnerEmail)) { string flag = ConfigurationManager.AppSettings["SendEmailLastOwner"]; if (flag == null || flag.Trim().ToUpper() == "Y") { email = new kkcoc_prepare_email(); email.coc_EmailAddress = data.LastOwnerEmail; if (emailTemplate == "") { emailTemplate = GetEmailTemplate(slmdb, ticketId, noteDetail); } email.coc_EmailContent = emailTemplate; email.coc_EmailSubject = emailSubject; email.coc_EmailSender = createBy; email.coc_ticketId = ticketId; email.coc_ExportStatus = "0"; email.is_Deleted = 0; email.coc_CreatedBy = createBy; email.coc_CreatedDate = createDate; slmdb.kkcoc_prepare_email.AddObject(email); } } } if (emailList != null) { foreach (string email_address in emailList) { kkcoc_prepare_email prepare_eamil = new kkcoc_prepare_email(); prepare_eamil.coc_EmailAddress = email_address; if (emailTemplate == "") { emailTemplate = GetEmailTemplate(slmdb, ticketId, noteDetail); } prepare_eamil.coc_EmailContent = emailTemplate; prepare_eamil.coc_EmailSubject = emailSubject; prepare_eamil.coc_EmailSender = createBy; prepare_eamil.coc_ticketId = ticketId; prepare_eamil.coc_ExportStatus = "0"; prepare_eamil.is_Deleted = 0; prepare_eamil.coc_CreatedBy = createBy; prepare_eamil.coc_CreatedDate = createDate; slmdb.kkcoc_prepare_email.AddObject(prepare_eamil); } } } slmdb.kkslm_note.AddObject(note); var lead = slmdb.kkslm_tr_lead.Where(p => p.slm_ticketId == ticketId).FirstOrDefault(); if (lead != null) { lead.slm_NoteFlag = "1"; lead.slm_UpdatedBy = createBy; lead.slm_UpdatedDate = createDate; } slmdb.SaveChanges(); } catch (Exception ex) { throw ex; } }