Esempio n. 1
0
        public JsonResult Manage(string mode, TModel[] models)
        {
            try {
                NgResult result;
                switch (mode)
                {
                case "cr":
                case "create":
                    result = _create(models);
                    break;

                case "up":
                case "update":
                    result = _update(models);
                    break;

                case "dl":
                case "delete":
                    result = _delete(models);
                    break;

                default:
                    result = NgResult.Fail(DEBS.Translate("MessageMdl.Undefined Manage mode: {0}", mode));
                    break;
                }
                return(NgResultToJsonResult(result));
            }
            catch {
#if EAT_EXCEPTIONS
                return(NgResultToJsonResult(NgResult.Fail("Internal Server Error")));
#else
                throw;
#endif
            }
        }
 protected override NgResult _delete(EmailSenderDataProviderVM[] models)
 {
     using (var l = new MessagesModuleLogic()) {
         foreach (var model in models)
         {
             l.Delete <tblEmailSenderDataProvider>(model.Id);
         }
     }
     return(NgResult.Succes(DEBS.Translate("MessageMdl.{0} email providers was removed", models.Count())));
 }
Esempio n. 3
0
 protected override NgResult _delete(MessageScheduleVM[] models)
 {
     using (var l = new MessagesModuleLogic()) {
         foreach (var model in models)
         {
             l.Delete <tblMessageSchedule>(model.Id);
         }
     }
     return(NgResult.Succes(DEBS.Translate("MessageMdl.{0} schedules was removed", models.Count())));
 }
 protected override NgResult _update(EmailSenderDataProviderVM[] models)
 {
     using (var l = new MessagesModuleLogic()) {
         foreach (var model in models)
         {
             var item = l.Get <tblEmailSenderDataProvider>(model.Id);
             EmailSenderDataProviderVM.ReflectToTblEmailSenderDataProvider.Run(model, item);
             l.SaveChanges(item);
         }
     }
     return(NgResult.Succes(DEBS.Translate("MessageMdl.{0} email providers was modified", models.Count())));
 }
 protected override NgResult _create(EmailSenderDataProviderVM[] models)
 {
     using (var l = new MessagesModuleLogic()) {
         foreach (var model in models)
         {
             var item = l.Create <tblEmailSenderDataProvider>();
             EmailSenderDataProviderVM.ReflectToTblEmailSenderDataProvider.Run(model, item);
             l.Add(item);
         }
     }
     return(NgResult.Succes(DEBS.Translate("MessageMdl.{0} email sms providers was added", models.Count())));;
 }
Esempio n. 6
0
 protected override NgResult _update(MessageScheduleVM[] models)
 {
     using (var l = new MessagesModuleLogic()) {
         foreach (var model in models)
         {
             var item = l.Get <tblMessageSchedule>(model.Id);
             MessageScheduleVM.ReflectToTblMessageSchedule.Run(model, item);
             l.SaveChanges(item);
         }
     }
     return(NgResult.Succes(DEBS.Translate("MessageMdl.{0} schedules was modified", models.Count())));
 }
Esempio n. 7
0
 protected override NgResult _create(MessageScheduleVM[] models)
 {
     using (var l = new MessagesModuleLogic()) {
         foreach (var model in models)
         {
             var item = l.Create <tblMessageSchedule>();
             MessageScheduleVM.ReflectToTblMessageSchedule.Run(model, item);
             l.Add(item);
         }
     }
     return(NgResult.Succes(DEBS.Translate("MessageMdl.{0} new schedules was added", models.Count())));
 }
Esempio n. 8
0
 public JsonResult ClearPendingMessagesQueue()
 {
     using (var l = new MessagesModuleLogic())
     {
         var messages = l.GetAll <tblPendingMessagesQueue>();
         l.DeleteRange(messages);
         var msgBuilder = new StringBuilder();
         msgBuilder.AppendLine(DEBS.Translate("MessageMdl.Pending messages queue was cleaned"));
         var msg = msgBuilder.ToString();
         return(NgResultToJsonResult(NgResult.Succes(msg)));
     }
 }
Esempio n. 9
0
 protected override FetchResult <RFilterTableVM> _fetch(int?Skip, int?Count, NgControllerInstruct[] filters)
 {
     using (var l = new MessagesModuleLogic()) {
         var items = l.GetAll <tblRecepientFilterTableName>().Select(x =>
                                                                     PocoConstructor.MakeFromObj(x, RFilterTableVM.tblRecepientFilterTableNamePR)
                                                                     );
         if (items.Count() == 0)
         {
             return(FetchResult <RFilterTableVM> .Fail(DEBS.Translate("MessageMdl.There is no base tables in database")));
         }
         return(FetchResult <RFilterTableVM> .Succes(items, items.Count()));
     }
 }
Esempio n. 10
0
        public JsonResult MockMessage(int templateId, int?MaxCount)
        {
            using (var l = new MessagesModuleLogic()) {
                var tmpl = l.Get <tblTemplate>(templateId);
                if (tmpl == null)
                {
                    return(NgResultToJsonResult(NgResult.Fail(DEBS.Translate("MessageMdl.Server Error: cannot find template, try save it and re-open."))));
                }

                var items = TASK_PROTOTYPE.GetDemoMessages(l, tmpl, sqllogic, tmpl.IsSms, MaxCount ?? 0);
                return(NgResultToJsonResult(FetchResult <Message> .Succes(items, items.Count)));
            }
        }
Esempio n. 11
0
 public JsonResult SendImmediately(int ScheduleId)
 {
     using (var l = new MessagesModuleLogic()) {
         var sched = l.Get <tblMessageSchedule>(ScheduleId);
         if (sched == null)
         {
             return(NgResultToJsonResult(NgResult.Fail(DEBS.Translate("MessageMdl.Server Error: cannot find template, try save it and re-open."))));
         }
         var result     = TASK_PROTOTYPE.RunImmediateBatchCreation(sched, 1, sqllogic, l);
         var msgBuilder = new StringBuilder();
         msgBuilder.AppendLine(DEBS.Translate("MessageMdl.Message Batch was created and will be sended as soon as possible."));
         msgBuilder.AppendLine(DEBS.Translate("MessageMdl.It contains: {0} messages.", result.Messages.Count()));
         var msg = msgBuilder.ToString();
         return(NgResultToJsonResult(NgResult.Succes(msg)));
     }
 }
Esempio n. 12
0
        public JsonResult GetColumns(int id)
        {
            string tablename;

            using (var l = new MessagesModuleLogic()) {
                var item = l.Get <tblRecepientFilterTableName>(id);
                if (item == null)
                {
                    return(NgResultToJsonResult(NgResult.Fail(DEBS.Translate("MessageMdl.There is no binded table in database with id: {0}", id))));
                }
                tablename = item.ReferncedTableName;
            }
            var data = sqlLogic.GetColomnsInfos(tablename);

            return(NgResultToJsonResult(FetchResult <IDictionary <string, string> > .Succes(data, data.Count)));
        }
        public JsonResult GetReservedCodes()
        {
            var items = new List <WildcardVM>()
            {
                new WildcardVM {
                    Code = tblRecepientCard.NameCode, Name = DEBS.Translate("MessageMdl.Recepient Name"), Id = -10
                },
                new WildcardVM {
                    Code = tblRecepientCard.EmailCode, Name = DEBS.Translate("MessageMdl.Recepient Email"), Id = -11
                },
                new WildcardVM {
                    Code = tblRecepientCard.PhoneCode, Name = DEBS.Translate("MessageMdl.Recepient Phone"), Id = -12
                }
            };

            return(NgResultToJsonResult(FetchResult <WildcardVM> .Succes(items, items.Count)));
        }