private void CheckPhoneCallHistory(SLMDBEntities slmdb, kkslm_tr_lead lead, ExtSystemCurrentStatusData data) { try { if (!string.IsNullOrEmpty(data.StatusDesc)) { if (data.StatusDesc.Trim().Length > 4000) { throw new Exception("Field kkslm_ext_StatusDesc exceeds 4000 character limitation"); } kkslm_phone_call pc = new kkslm_phone_call() { slm_TicketId = lead.slm_ticketId, slm_ContactDetail = data.StatusDesc.Trim(), slm_CreateBy = "SYSTEM", slm_CreatedBy_Position = null, slm_CreateDate = DateTime.Now, slm_Status = lead.slm_Status, slm_Owner = lead.slm_Owner, slm_Owner_Position = lead.slm_Owner_Position, slm_ContactPhone = null, is_Deleted = 0 }; slmdb.kkslm_phone_call.AddObject(pc); } } catch (Exception ex) { throw ex; } }
public void InsertPhoneCallHistory(string ticketId, string cardType, string cardId, string leadStatusCode, string oldstatus, string ownerBranch, string owner, string oldOwner, string delegateLeadBranch, string delegateLead, string oldDelegateLead, string contactPhone, string contactDetail, string createBy) { try { kkslm_tr_lead lead = null; DateTime createDate = DateTime.Now; int? createdByPositionId = null; int? ownerPositionId = null; var cusinfo = slmdb.kkslm_tr_cusinfo.Where(p => p.slm_TicketId == ticketId).FirstOrDefault(); if (cusinfo != null) { if (cardType != "") { cusinfo.slm_CardType = int.Parse(cardType); } else { cusinfo.slm_CardType = null; } string oldCitizenId = string.IsNullOrEmpty(cusinfo.slm_CitizenId) ? null : cusinfo.slm_CitizenId; cusinfo.slm_CitizenId = cardId != "" ? cardId : null; if (oldCitizenId != cusinfo.slm_CitizenId) { KKSlmTrHistoryModel.InsertHistory(slmdb, ticketId, SLMConstant.HistoryTypeCode.UpdateCardId, oldCitizenId, cusinfo.slm_CitizenId, createBy, createDate); } } kkslm_phone_call phone = new kkslm_phone_call(); phone.slm_TicketId = ticketId; phone.slm_ContactPhone = contactPhone; phone.slm_ContactDetail = contactDetail; phone.slm_Status = leadStatusCode; phone.slm_Owner = owner; ownerPositionId = GetPositionId(owner); phone.slm_Owner_Position = ownerPositionId; phone.slm_CreateDate = createDate; phone.slm_CreateBy = createBy; createdByPositionId = GetPositionId(createBy); phone.slm_CreatedBy_Position = createdByPositionId; phone.is_Deleted = 0; slmdb.kkslm_phone_call.AddObject(phone); if (lead == null) { lead = slmdb.kkslm_tr_lead.Where(p => p.slm_ticketId == ticketId).FirstOrDefault(); } if (leadStatusCode != oldstatus) { kkslm_tr_activity activity = new kkslm_tr_activity(); activity.slm_TicketId = ticketId; activity.slm_OldStatus = oldstatus; activity.slm_NewStatus = leadStatusCode; activity.slm_CreatedBy = createBy; activity.slm_CreatedBy_Position = createdByPositionId; activity.slm_CreatedDate = createDate; activity.slm_Type = SLMConstant.ActionType.ChangeStatus; //02 activity.slm_SystemAction = SLMConstant.SystemName; //System ที่เข้ามาทำ action (19/03/2015) activity.slm_SystemActionBy = SLMConstant.SystemName; //action เกิดขึ้นที่ระบบอะไร (19/03/2015) activity.slm_ExternalSystem_Old = lead.slm_ExternalSystem; //add 14/10/2015 activity.slm_ExternalStatus_Old = lead.slm_ExternalStatus; //add 14/10/2015 activity.slm_ExternalSubStatus_Old = lead.slm_ExternalSubStatus; //add 14/10/2015 activity.slm_ExternalSubStatusDesc_Old = lead.slm_ExternalSubStatusDesc; //add 14/10/2015 lead.slm_ExternalSystem = null; //add 14/10/2015 lead.slm_ExternalStatus = null; //add 14/10/2015 lead.slm_ExternalSubStatus = null; //add 14/10/2015 lead.slm_ExternalSubStatusDesc = null; //add 14/10/2015 slmdb.kkslm_tr_activity.AddObject(activity); if (lead == null) { lead = slmdb.kkslm_tr_lead.Where(p => p.slm_ticketId == ticketId).FirstOrDefault(); } if (lead != null) { lead.slm_Status = leadStatusCode; lead.slm_StatusBy = createBy; lead.slm_StatusDate = createDate; lead.slm_Counting = 0; lead.slm_UpdatedBy = createBy; lead.slm_UpdatedDate = createDate; } KKSlmTrHistoryModel.InsertHistory(slmdb, ticketId, SLMConstant.HistoryTypeCode.UpdateStatus, oldstatus, leadStatusCode, createBy, createDate); } if (owner != oldOwner) { kkslm_tr_activity activity = new kkslm_tr_activity(); activity.slm_TicketId = ticketId; if (!string.IsNullOrEmpty(oldOwner)) { activity.slm_OldOwner = oldOwner; activity.slm_OldOwner_Position = GetPositionId(oldOwner); } activity.slm_NewOwner = owner; activity.slm_NewOwner_Position = ownerPositionId; activity.slm_CreatedBy = createBy; activity.slm_CreatedBy_Position = createdByPositionId; activity.slm_CreatedDate = createDate; activity.slm_Type = SLMConstant.ActionType.ChangeOwner; activity.slm_SystemAction = SLMConstant.SystemName; //System ที่เข้ามาทำ action (19/03/2015) activity.slm_SystemActionBy = SLMConstant.SystemName; //action เกิดขึ้นที่ระบบอะไร (19/03/2015) slmdb.kkslm_tr_activity.AddObject(activity); if (lead == null) { lead = slmdb.kkslm_tr_lead.Where(p => p.slm_ticketId == ticketId).FirstOrDefault(); } if (lead != null) { lead.slm_StaffId = slmdb.kkslm_ms_staff.Where(p => p.slm_UserName == owner).Select(p => p.slm_StaffId).FirstOrDefault(); lead.slm_Owner = owner; lead.slm_Owner_Branch = ownerBranch; lead.slm_Owner_Position = ownerPositionId; lead.slm_AssignedFlag = "0"; lead.slm_AssignedDate = null; lead.slm_AssignedBy = null; lead.slm_OldOwner = oldOwner; } KKSlmTrHistoryModel.InsertHistory(slmdb, ticketId, SLMConstant.HistoryTypeCode.UpdateOwner, oldOwner, owner, createBy, createDate); } if (delegateLead != oldDelegateLead) { kkslm_tr_activity activity = new kkslm_tr_activity(); activity.slm_TicketId = ticketId; if (!string.IsNullOrEmpty(oldDelegateLead)) { activity.slm_OldDelegate = oldDelegateLead; activity.slm_OldDelegate_Position = GetPositionId(oldDelegateLead); } activity.slm_NewDelegate = delegateLead; activity.slm_NewDelegate_Position = GetPositionId(delegateLead); activity.slm_CreatedBy = createBy; activity.slm_CreatedBy_Position = createdByPositionId; activity.slm_CreatedDate = createDate; activity.slm_Type = SLMConstant.ActionType.Delegate; activity.slm_SystemAction = SLMConstant.SystemName; //System ที่เข้ามาทำ action (19/03/2015) activity.slm_SystemActionBy = SLMConstant.SystemName; //action เกิดขึ้นที่ระบบอะไร (19/03/2015) slmdb.kkslm_tr_activity.AddObject(activity); if (lead == null) { lead = slmdb.kkslm_tr_lead.Where(p => p.slm_ticketId == ticketId).FirstOrDefault(); } if (lead != null) { lead.slm_Delegate_Flag = string.IsNullOrEmpty(delegateLead) ? 0 : 1; if (!string.IsNullOrEmpty(delegateLead)) { lead.slm_DelegateDate = createDate; } else { lead.slm_DelegateDate = null; } lead.slm_Delegate = string.IsNullOrEmpty(delegateLead) ? null : delegateLead; lead.slm_Delegate_Branch = string.IsNullOrEmpty(delegateLead) ? null : delegateLeadBranch; lead.slm_Delegate_Position = string.IsNullOrEmpty(delegateLead) ? null : GetPositionId(delegateLead); } KKSlmTrHistoryModel.InsertHistory(slmdb, ticketId, SLMConstant.HistoryTypeCode.UpdateDelegate, oldDelegateLead, delegateLead, createBy, createDate); } slmdb.SaveChanges(); } catch (Exception ex) { throw ex; } }
private kkslm_phone_call InsertPhonecallHistory(SLMDBEntities slmdb, string ticketId, DateTime createdDate, LeadDataForCARLogService data) { try { string content = ""; string policyStartCoverDate = ""; string policyEndCoverDate = ""; string actStartCoverDate = ""; string actEndCoverDate = ""; if (data.PolicyStartCoverDate != null) { policyStartCoverDate = data.PolicyStartCoverDate.Value.ToString("dd-MM-") + data.PolicyStartCoverDate.Value.Year.ToString(); } if (data.PolicyEndCoverDate != null) { policyEndCoverDate = data.PolicyEndCoverDate.Value.ToString("dd-MM-") + data.PolicyEndCoverDate.Value.Year.ToString(); } if (data.ActStartCoverDate != null) { actStartCoverDate = data.ActStartCoverDate.Value.ToString("dd-MM-") + data.ActStartCoverDate.Value.Year.ToString(); } if (data.ActEndCoverDate != null) { actEndCoverDate = data.ActEndCoverDate.Value.ToString("dd-MM-") + data.ActEndCoverDate.Value.Year.ToString(); } content = "เลขที่สัญญา:" + (data != null ? data.ContractNo : ""); content += ", บริษัทประกันภัยรถยนต์:" + (data != null ? data.InsuranceCompany : ""); content += ", เลขเล่มกรมธรรม์:" + (data != null ? data.PolicyNo : ""); content += ", เลขลงทะเบียน:"; content += ", วันที่คุ้มครอง:" + policyStartCoverDate; content += ", วันที่สิ้นสุดกรมธรรม์:" + policyEndCoverDate; content += ", เลขที่พรบ.:" + (data != null ? data.ActNo : ""); content += ", วันที่เริ่มต้นพรบ.:" + actStartCoverDate; content += ", วันที่สิ้นสุดพรบ.:" + actEndCoverDate; var lead = slmdb.kkslm_tr_lead.Where(p => p.slm_ticketId == ticketId).FirstOrDefault(); if (lead != null) { kkslm_phone_call phone = new kkslm_phone_call() { slm_TicketId = ticketId, slm_Status = lead.slm_Status, slm_SubStatus = lead.slm_SubStatus, slm_SubStatusName = lead.slm_ExternalSubStatusDesc, slm_Owner = lead.slm_Owner, slm_Owner_Position = lead.slm_Owner_Position, slm_ContactDetail = content, slm_CreateBy = "SYSTEM", slm_CreatedBy_Position = null, slm_CreateDate = createdDate, is_Deleted = 0 }; slmdb.kkslm_phone_call.AddObject(phone); slmdb.SaveChanges(); return(phone); } else { throw new Exception("ไม่พบ TicketId " + ticketId + " ในระบบ"); } } catch (Exception ex) { throw ex; } }