예제 #1
0
        public ActionResult AddNewRuleForEmails(AddNewRuleForEmailModel model)
        {
            if (ModelState.IsValid)
            {
                var user = UserHelper.GetUserByEmail(User.Identity.Name);

                bool isUpdatingRule = model.IsUpdatingRule.Equals("C");

                long spreadsheetId = ParseHelper.GetSpreadsheetIdByName(user.Id, model.TableId);

                int worksheet = Int32.Parse(model.Worksheet);

                int column = (int)Enum.Parse(typeof(ColumnEnums), model.Column);

                int saveProp = 0;

                if (model.SaveEmailProp.Equals("Email with attachments"))
                    saveProp = 1;

                var emailParsingRule = new Model.EmailParsingRulesModels
                {
                    Name = HttpUtility.HtmlEncode(model.RuleName),
                    AuthorId_Id = user.Id,
                    Email = HttpUtility.HtmlEncode(model.Email),
                    Subject = HttpUtility.HtmlEncode(model.Subject),
                    PlainContains = HttpUtility.HtmlEncode(model.PlainContains),
                    IsUpdatingRule = isUpdatingRule,
                    Status = Model.Enums.RuleStatusEnums.Active.ToString(),
                    TableId = spreadsheetId,
                    WorksheetId = worksheet,
                    ColumnId = column,
                    SaveEmailPropId = saveProp
                };

                emailParsingRulesRepository.Add(emailParsingRule);
                emailParsingRulesRepository.Commit();

                var brandNewRuleId = emailParsingRulesRepository.GetBrandNew(w => w.AuthorId_Id.Equals(user.Id)).Id;

                return RedirectToAction("AddNewDataRuleForEmails", new { ruleId = brandNewRuleId });
            }

            return View();
        }
예제 #2
0
        public long AddNewRule(AddNewRuleModel model)
        {
            if (ModelState.IsValid)
            {
                var user = UserHelper.GetUserByEmail(User.Identity.Name);

                var emailParsingRule = new Model.EmailParsingRulesModels
                {
                    Name = HttpUtility.HtmlEncode(model.RuleName),
                    AuthorId_Id = user.Id,
                    Status = Model.Enums.RuleStatusEnums.Active.ToString(),
                    IsUpdatingRule = model.ForIsUpdating
                };
                emailParsingRulesRepository.Add(emailParsingRule);
                emailParsingRulesRepository.Commit();
                emailDataParsingRulesRepository.Add(new Model.EmailDataParsingRulesModels()
                {
                    EmailParsingRulesModelsId_Id = emailParsingRule.Id,
                    IsUpdatindIndex = true
                });
                emailDataParsingRulesRepository.Commit();
                return emailParsingRule.Id;
            }
            return 0;
        }