示例#1
0
        public IActionResult Create(int project)
        {
            SerpModuleConfig config = new SerpModuleConfig()
            {
                ProjectModule = new ProjectModule()
                {
                    ProjectId = project
                }
            };

            try
            {
                var targetProject = _reposiotry.GetProject(project);
                if (targetProject == null)
                {
                    throw new UserException($"Project {project} isn't find");
                }

                //config.Project = _reposiotry.GetProject(project);
            }
            catch (UserException exc)
            {
                _logger.LogError(exc.Message);
                TempData["message"] = exc.Message;
            }

            return(View(new SerpAnalysisModuleViewModel(config)
            {
                DataProviders = ProjectModuleRegistry.GetModules <string, List <SerpWebPage> >(_context, _modulRegistry, project),
                AvailableLinkedModules = ProjectModuleRegistry.GetModules <ModuleTaskResult <SerpModuleData> >(_context, _modulRegistry, project)
            }));
        }
示例#2
0
        public bool UpdateSerpModuleConfig(SerpModuleConfig config)
        {
            var target = _context.SerpModuleConfigs.SingleOrDefault(serpConfig => serpConfig.Id == config.Id);

            if (target != null)
            {
                target.Url              = config.Url;
                target.RequestAttempt   = config.RequestAttempt;
                target.DataProviderId   = config.DataProviderId;
                target.Requests         = config.Requests;
                target.OneTimeSchedules = config.OneTimeSchedules;
                target.DailySchedules   = config.DailySchedules;
                return(_context.SaveChanges() == 0);
            }

            return(false);
        }
示例#3
0
 public bool AddSerpModuleConfig(SerpModuleConfig config)
 {
     _context.SerpModuleConfigs.Add(config);
     return(_context.SaveChanges() == 0);
 }