public static bool SaveLTDSubscriberData(Dictionary<Guid, LTD_Subscriber> ltdSubscriberList) { bool ret = false; if (ltdSubscriberList.Count > 0) { List<LTD_Subscriber> ltdSubscriberValueList = new List<LTD_Subscriber>(); LTD_Subscriber[] ltdSubscriberArray = new LTD_Subscriber[ltdSubscriberList.Values.Count]; ltdSubscriberList.Values.CopyTo(ltdSubscriberArray, 0); ltdSubscriberValueList.AddRange(ltdSubscriberArray); ret = JsonStore<LTD_Subscriber>.SaveData(ltdSubscriberValueList, true); } return ret; }
private static string GetListSingleItemView(LTD_Subscriber ltdSubscriber, long pageNo, long itemsPerPage, long dataIndex, string templateSuffix) { string htmlTextItem = ""; if (ltdSubscriber != null) { string message; List<TemplateSubscriberListDetailItem.EditAction> editActionList = new List<TemplateSubscriberListDetailItem.EditAction>(); if (UtilsSecurity.HaveAdminRole() == true) { editActionList.Add(new TemplateSubscriberListDetailItem.EditAction { Id = ltdSubscriber.SubscriberID.ToString(), DataIndex = dataIndex.ToString(), PageNo = pageNo.ToString(), ItemsPerPage = itemsPerPage.ToString(), TemplateSuffix = templateSuffix }); } var templateItem = new TemplateSubscriberListDetailItem { SubscriberEmail = ltdSubscriber.SubscriberEmail, SubscriberMessage = ltdSubscriber.SubscriberMessage, //IsDeleted = ltdSubscriber.IsDeleted EditActionList = editActionList }; htmlTextItem = templateItem.GetFilled(templateSuffix, UtilsGeneric.Validate, UtilsGeneric.ThrowException, out message); } return htmlTextItem; }
public static long InsertLtdSubscriber(LTD_Subscriber ltdSubscriber) { long id = 0; if (ltdSubscriber.SubscriberGUID != Guid.Empty) throw new Exception("Cannot Set the GUID for a Insert"); ltdSubscriber.SubscriberGUID = Guid.NewGuid(); ltdSubscriber.CreatedDate = DateTime.UtcNow; ltdSubscriber.LastUpdateDate = DateTime.UtcNow; ltdSubscriber.RevisionNo = GetMaxLtdSubscriberRevisionNo() + 1; Database db = HaveDb(); if (db != null) { using (ITransaction scope = db.GetTransaction()) { db.Insert(ltdSubscriber); id = ltdSubscriber.SubscriberID; scope.Complete(); } } else { Dictionary<Guid, LTD_Subscriber> fileLtdSubscriberList = FileSource.LoadLTDSubscriberData(); ltdSubscriber.SubscriberID = GetMaxLtdSubscriberId("") + 1; fileLtdSubscriberList.Add(ltdSubscriber.SubscriberGUID, ltdSubscriber); FileSource.SaveLTDSubscriberData(fileLtdSubscriberList); id = ltdSubscriber.SubscriberID; } return id; }
public static bool UpdateLtdSubscriber(LTD_Subscriber ltdSubscriber) { bool ret = false; ltdSubscriber.LastUpdateDate = DateTime.UtcNow; Database db = HaveDb(); if (db != null) { LTD_Subscriber ltdSubscriberExisting = GetLtdSubscriber(ltdSubscriber.SubscriberID, ""); if (ltdSubscriberExisting != null) { ltdSubscriber.RevisionNo = GetMaxLtdSubscriberRevisionNo() + 1; using (ITransaction scope = db.GetTransaction()) { db.Update(ltdSubscriber); scope.Complete(); ret = true; } } } else { Dictionary<Guid, LTD_Subscriber> fileLtdSubscriberList = FileSource.LoadLTDSubscriberData(); if (fileLtdSubscriberList.ContainsKey(ltdSubscriber.SubscriberGUID) == true) { fileLtdSubscriberList.Remove(ltdSubscriber.SubscriberGUID); fileLtdSubscriberList.Add(ltdSubscriber.SubscriberGUID, ltdSubscriber); FileSource.SaveLTDSubscriberData(fileLtdSubscriberList); } } return ret; }
public static long SaveLtdSubscriber(string subscriberEmail, string subscriberMessage, bool isDeleted, long subscriberId, out string retMessage) { long id = 0; string message = ""; try { bool validationFail = false; if ((subscriberId > 0) && (UtilsSecurity.HaveAuthorRole() == false)) { message = "Please login with User having Author Role to Update Subscriber Data"; validationFail = true; } if (validationFail == false) { if ((subscriberMessage.Trim().Length == 0) || (subscriberEmail.Trim().Length == 0)) { message = "Missing or Empty Subscriber Argument"; validationFail = true; } } if (validationFail == false) { if (isDeleted == true) { if ((UtilsSecurity.HaveAdminRole() == false) && (UtilsSecurity.HaveAuthorRole() == false)) { message = "Is Deleted Can be Updated Only by Users having Admin/Author Role"; validationFail = true; } } } var ltdSubscriber = new LTD_Subscriber(); if (validationFail == false) { if (subscriberId != 0) { ltdSubscriber = GetLtdSubscriber(subscriberId); if (ltdSubscriber == null) { message = "The Subscriber having ID [" + subscriberId + "] cannot be Retrieved"; validationFail = true; } } else { ltdSubscriber = GetLtdSubscriber(subscriberEmail); if (ltdSubscriber != null) { message = "The Subscriber having Email [" + subscriberEmail + "] is already registered"; validationFail = true; } } } if (validationFail == false) { if (ltdSubscriber == null) ltdSubscriber = new LTD_Subscriber(); ltdSubscriber.SubscriberMessage = subscriberMessage; ltdSubscriber.SubscriberEmail = subscriberEmail; ltdSubscriber.IsDeleted = isDeleted; DataSource.BeginTransaction(); if (ltdSubscriber.SubscriberID == 0) { DataSource.InsertLtdSubscriber(ltdSubscriber); id = ltdSubscriber.SubscriberID; } else { DataSource.UpdateLtdSubscriber(ltdSubscriber); id = ltdSubscriber.SubscriberID; } if (id > 0) DataSource.CompleteTransaction(); } } catch (Exception ex) { id = 0; message = "DBError:" + ex.Message; LogManager.Log(LogLevel.Error, "DataInfoList-SaveLtdSubscriber", message); DataSource.AbortTransaction(); } retMessage = message; return id; }