public long CreateContact(long fid, string augid) { CCItems objcontact = new CCItems(); objcontact.FolderID = fid; objcontact.LastUpdated = DateTime.Now.ToUniversalTime(); objcontact.Created = DateTime.Now.ToUniversalTime(); objcontact.isDistGroup = false; objcontact.isRecurring = false; objcontact.AccountGUID = augid; var cont = this.SaveContact(objcontact); return cont.ItemID; }
public ActionResult SelectedContactsFields(LayoutsViewModel objViewlayouts) { Account accountObj = (Account)Session["account"]; User userObj = (User)Session["user"]; CCFolder folderObj = (CCFolder)Session["folderDetail"]; var objvalues = Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(objViewlayouts.FieldValues); var objfield = Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(objViewlayouts.FieldNames); var allfolderfields = CCFieldRepository.CCFolderFields.Where(aid => aid.FolderID == objViewlayouts.FolderID & aid.AccountGUID == accountObj.AccountGUID); var fieldvalues = CCFieldValueRepository.CCFieldValues.Where(cid => cid.ItemID == objViewlayouts.ContactID & cid.AccountGUID == accountObj.AccountGUID); var notes = ""; int i = 0; foreach (var item in objvalues) { string itemValue = item; if (allfolderfields.Count() > 0 && fieldvalues.Count() > 0) { string fieldname = ""; fieldname = objfield[i]; if (fieldname == "Start" || fieldname == "End") { string format = "yyyy-MM-dd HH:mm"; DateTime startEndTime = DateTimeOffset.Parse(item).UtcDateTime; itemValue = startEndTime.ToString(format); } if(fieldname == "Notes") { notes = itemValue; } if (fieldname != "") { var fieldid = allfolderfields.FirstOrDefault(fname => fname.FieldName == fieldname).FieldID; CCFieldValue objFieldValue = new CCFieldValue(); if (fieldvalues.FirstOrDefault(fid => fid.FieldID == fieldid) != null) { var valueid = fieldvalues.FirstOrDefault(fid => fid.FieldID == fieldid).ValueID; objFieldValue.ValueID = valueid; } else { objFieldValue.LastUpdated = DateTime.UtcNow; objFieldValue.ValueID = 0; objFieldValue.FieldID = fieldid; objFieldValue.ItemID = objViewlayouts.ContactID; } objFieldValue.Value = itemValue; objFieldValue.AccountGUID = accountObj.AccountGUID; CCFieldValueRepository.SaveFieldValues(objFieldValue); } } i++; } long contactid = objViewlayouts.ContactID; if (contactid != 0) { AddDedupeViewModel dedupe = new AddDedupeViewModel(); foreach (var field in allfolderfields.ToList()) { if (folderObj != null) { if (folderObj.Type == 1) { if (field.FieldCaption == "First Name") { dedupe.FirstName = fieldvalues.ToList().Find(fid => fid.FieldID == field.FieldID).Value; } if (field.FieldCaption == "Middle Name") { dedupe.MiddleName = fieldvalues.ToList().Find(fid => fid.FieldID == field.FieldID).Value; } if (field.FieldCaption == "Last Name") { dedupe.LastName = fieldvalues.ToList().Find(fid => fid.FieldID == field.FieldID).Value; } if (field.FieldCaption == "Company") { dedupe.CompanyName = fieldvalues.ToList().Find(fid => fid.FieldID == field.FieldID).Value; } if (field.FieldCaption == "Email Address") { dedupe.Email = fieldvalues.ToList().Find(fid => fid.FieldID == field.FieldID).Value; } } else if (folderObj.Type == 2) { if (field.FieldCaption == "Subject") { dedupe.Subject = fieldvalues.ToList().Find(fid => fid.FieldID == field.FieldID).Value; } if (field.FieldCaption == "Start Time") { dedupe.StartDateTime = fieldvalues.ToList().Find(fid => fid.FieldID == field.FieldID).Value; } if (field.FieldCaption == "End Time") { dedupe.EndDateTime = fieldvalues.ToList().Find(fid => fid.FieldID == field.FieldID).Value; } } } } CCItems contact = new CCItems(); contact.ItemID = contactid; if (folderObj.Type == 1) { contact.DeDupeValue = dedupe.FirstName + "|" + dedupe.MiddleName + "|" + dedupe.LastName + "|" + dedupe.CompanyName + "|" + dedupe.Email; } else if (folderObj.Type == 2) { contact.DeDupeValue = dedupe.Subject + "|" + dedupe.StartDateTime + "|" + dedupe.EndDateTime; contact.Notes = notes; contact.TextBody = notes; } bool res = CCItemRepository.UpdateContact(contact); } return RedirectToAction("ViewLayout", "Folder", new { id = objViewlayouts.ContactID, fid = objViewlayouts.FolderID, pid = objViewlayouts.PageID }); }
public ActionResult RevertChanges(long HistLogID, int type, string actionType) { if (actionType == "update") { CCHistoryLog HistLogObj = CCHistoryLogRepository.CCHistoryLogs.Where(hist => hist.ID == HistLogID).FirstOrDefault(); CCFieldValue FieldValObj = CCFieldValueRepository.CCFieldValues.Where(field => field.FieldID == HistLogObj.FieldID && field.ItemID == HistLogObj.ItemID).FirstOrDefault(); FieldValObj.Value = HistLogObj.OldValue; FieldValObj.LastUpdated = DateTime.Now; CCFieldValueRepository.RevertChangeToFieldValues(FieldValObj, HistLogObj); CCItems ItemObj = CCItemRepository.CCContacts.Where(item => item.ItemID == HistLogObj.ItemID).FirstOrDefault(); if (type == 1) return RedirectToAction("Items", "Folder", new { id = ItemObj.FolderID }); else return RedirectToAction("Items", "Folder", new { id = ItemObj.FolderID }); //have to cahnge for Item view.. Need 3 parameterd.. pid? } else if (actionType == "delete") { //Need to complete for DELETE CCHistoryLog HistLogObj = CCHistoryLogRepository.CCHistoryLogs.Where(hist => hist.ID == HistLogID).FirstOrDefault(); CCItems ItemObj = CCItemRepository.CCContacts.Where(item => item.ItemID == HistLogObj.ItemID).FirstOrDefault(); CCItems ItemTempObj = new CCItems(); ItemTempObj.ItemID = ItemObj.ItemID; ItemTempObj.DeDupeValue = ItemObj.DeDupeValue; if (ItemObj.isDeleted == true) ItemTempObj.isDeleted = false; CCItemRepository.UpdateContact(ItemTempObj); return RedirectToAction("Items", "Folder", new { id = ItemObj.FolderID }); } else { CCHistoryLog HistLogObj = CCHistoryLogRepository.CCHistoryLogs.Where(hist => hist.ID == HistLogID).FirstOrDefault(); CCItems ItemObj = CCItemRepository.CCContacts.Where(item => item.ItemID == HistLogObj.ItemID).FirstOrDefault(); return RedirectToAction("Items", "Folder", new { id = ItemObj.FolderID }); } }
public string getTitleForItem(CCItems item) { string[] seperatedValues = seperateDeDupeValue(item.DeDupeValue); if (seperatedValues.Count() == 4) { if (seperatedValues[0] != "" && seperatedValues[2] != "") { return seperatedValues[0] + " " + seperatedValues[2] + " - " + seperatedValues[3]; } else { return item.ItemID.ToString(); } } else if (seperatedValues.Count() == 3) { if (seperatedValues[0] != "") { return seperatedValues[0]; } else { return item.ItemID.ToString(); } } return ""; }
public bool UpdateContact(CCItems contactObj) { CCItems dbEntry = context.CCContacts.Find(contactObj.ItemID); if (dbEntry != null) { dbEntry.LastUpdated = DateTime.Now.ToUniversalTime(); dbEntry.DeDupeValue = contactObj.DeDupeValue; if (dbEntry.TextBody != contactObj.TextBody) dbEntry.TextBody = contactObj.TextBody; if (dbEntry.Notes != contactObj.Notes) dbEntry.Notes = contactObj.Notes; if (dbEntry.isDeleted != contactObj.isDeleted) { CCHistoryLog HistoryLog = new CCHistoryLog(); HistoryLog.AccountGUID = dbEntry.AccountGUID; HistoryLog.Date = DateTime.Now; HistoryLog.FieldID = 0; HistoryLog.ItemID = dbEntry.ItemID; HistoryLog.NewValue = ""; HistoryLog.OldValue = ""; HistoryLog.Source = "Web"; HistoryLog.Action = "Delete-Revert"; HistoryLog.ConnectionID = 0; context.CCHistoryLog.Add(HistoryLog); context.SaveChanges(); dbEntry.isDeleted = contactObj.isDeleted; } context.SaveChanges(); return true; } return false; }
public CCItems SaveContact(CCItems contactObj) { if (contactObj.ItemID == 0) { context.CCContacts.Add(contactObj); context.SaveChanges(); } else { CCItems dbEntry = context.CCContacts.Find(contactObj.ItemID); if (dbEntry != null) { dbEntry.LastUpdated = DateTime.Now.ToUniversalTime(); context.SaveChanges(); } } return contactObj; }
private bool UpdateContact(AddDedupeViewModel dedupe, long contectID, int type, string notes) { CCItems contact = new CCItems(); contact.ItemID = contectID; contact.Notes = notes; contact.TextBody = notes; if (type == 1) { contact.DeDupeValue = dedupe.FirstName + "|" + dedupe.MiddleName + "|" + dedupe.LastName + "|" + dedupe.CompanyName + "|" + dedupe.Email; } else { contact.DeDupeValue = dedupe.Subject + "|" + dedupe.StartDateTime + "|" + dedupe.EndDateTime; } bool res = CCItemRepository.UpdateContact(contact); return res; }