public async Task <ActionResult <BoolResult> > Submit([FromBody] SubmitRequest request)
        {
            if (!await _authManager.HasSitePermissionsAsync(request.SiteId, BlockManager.PermissionsSettings))
            {
                return(Unauthorized());
            }

            if (request.Rule.Id == 0)
            {
                if (await _ruleRepository.IsExistsAsync(request.SiteId, request.Rule.RuleName))
                {
                    return(this.Error("保存失败,已存在相同名称的拦截规则!"));
                }
            }

            var rule = request.Rule;

            rule.BlockAreas    = request.BlockAreas.Select(x => x.Id).ToList();
            rule.BlockChannels = request.BlockChannels.Select(x => x.Id).ToList();

            if (rule.Id > 0)
            {
                await _ruleRepository.UpdateAsync(rule);
            }
            else
            {
                await _ruleRepository.InsertAsync(rule);
            }

            return(new BoolResult
            {
                Value = true
            });
        }
        public void SubmitPrint(GoogleCloudPrintClient client)
        {
            // Create a cloud job ticket first, it contains the printer setting of the document
            var cjt = new CloudJobTicket
            {
                Print = new PrintTicketSection
                {
                    Color = new ColorTicketItem {
                        Type = Color.Type.STANDARD_MONOCHROME
                    },
                    Duplex = new DuplexTicketItem {
                        Type = Duplex.Type.LONG_EDGE
                    },
                    PageOrientation = new PageOrientationTicketItem {
                        Type = PageOrientation.Type.LANDSCAPE
                    },
                    Copies = new CopiesTicketItem {
                        Copies = 1
                    }
                }
            };

            // Create a request for file submission, you can either submit a url with SubmitFileLink class, or a local file with SubmitFileStream class
            var request = new SubmitRequest
            {
                PrinterId = "d08832da-03e4-a068-885b-46ea9750f3eb",
                Title     = "teste",
                Ticket    = cjt,
                Content   = new SubmitFileLink("https://image.slidesharecdn.com/teste-140108070830-phpapp02/95/folha-de-teste-1-638.jpg?cb=1389164960") // or new SubmitFileStream(contentType, fileName, fileStream)
            };

            // Submit request
            var response = client.SubmitJobAsync(request).Result;
        }
        public async Task <ActionResult <BoolResult> > Submit([FromBody] SubmitRequest request)
        {
            if (!await _authManager.HasSitePermissionsAsync(request.SiteId, Types.SitePermissions.SettingsCreate))
            {
                return(Unauthorized());
            }

            var site = await _siteRepository.GetAsync(request.SiteId);

            site.IsCreateDoubleClick             = request.IsCreateDoubleClick;
            site.IsCreateContentIfContentChanged = request.IsCreateContentIfContentChanged;
            site.IsCreateChannelIfChannelChanged = request.IsCreateChannelIfChannelChanged;
            site.IsCreateShowPageInfo            = request.IsCreateShowPageInfo;
            site.IsCreateIe8Compatible           = request.IsCreateIe8Compatible;
            site.IsCreateBrowserNoCache          = request.IsCreateBrowserNoCache;
            site.IsCreateJsIgnoreError           = request.IsCreateJsIgnoreError;
            site.IsCreateWithJQuery             = request.IsCreateWithJQuery;
            site.CreateStaticMaxPage            = request.CreateStaticMaxPage;
            site.IsCreateUseDefaultFileName     = request.IsCreateUseDefaultFileName;
            site.CreateDefaultFileName          = request.CreateDefaultFileName;
            site.IsCreateStaticContentByAddDate = request.IsCreateStaticContentByAddDate;
            site.CreateStaticContentAddDate     = request.CreateStaticContentAddDate;

            await _siteRepository.UpdateAsync(site);

            await _authManager.AddSiteLogAsync(request.SiteId, "修改页面生成设置");

            return(new BoolResult
            {
                Value = true
            });
        }
        public async Task <ActionResult <BoolResult> > Submit([FromBody] SubmitRequest request)
        {
            if (!await _authManager.HasChannelPermissionsAsync(request.SiteId, request.ChannelId, Types.ChannelPermissions.Edit))
            {
                return(Unauthorized());
            }

            var site = await _siteRepository.GetAsync(request.SiteId);

            if (site == null)
            {
                return(NotFound());
            }

            var channelInfo = await _channelRepository.GetAsync(request.ChannelId);

            if (channelInfo == null)
            {
                return(NotFound());
            }

            channelInfo.ListColumns = request.AttributeNames;

            await _channelRepository.UpdateAsync(channelInfo);

            await _authManager.AddSiteLogAsync(request.SiteId, "设置内容显示项", $"显示项:{request.AttributeNames}");

            return(new BoolResult
            {
                Value = true
            });
        }
Exemplo n.º 5
0
        public async Task <ActionResult <BoolResult> > Submit([FromBody] SubmitRequest request)
        {
            if (!await _authManager.HasSitePermissionsAsync(request.SiteId,
                                                            MenuUtils.SitePermissions.Contents) ||
                !await _authManager.HasContentPermissionsAsync(request.SiteId, request.ChannelId, MenuUtils.ContentPermissions.Translate))
            {
                return(Unauthorized());
            }

            var site = await _siteRepository.GetAsync(request.SiteId);

            if (site == null)
            {
                return(NotFound());
            }

            var summaries = ContentUtility.ParseSummaries(request.ChannelContentIds);

            summaries.Reverse();

            foreach (var summary in summaries)
            {
                await ContentUtility.TranslateAsync(_pathManager, _databaseManager, _pluginManager, site, summary.ChannelId, summary.Id, request.TransSiteId, request.TransChannelId, request.CopyType, _createManager, _authManager.AdminId);
            }

            await _authManager.AddSiteLogAsync(request.SiteId, request.ChannelId, "复制内容", string.Empty);

            await _createManager.TriggerContentChangedEventAsync(request.SiteId, request.ChannelId);

            return(new BoolResult
            {
                Value = true
            });
        }
        public async Task <ActionResult <BoolResult> > Submit([FromBody] SubmitRequest request)
        {
            if (!await _authManager.HasSitePermissionsAsync(request.SiteId, MenuUtils.SitePermissions.Templates))
            {
                return(Unauthorized());
            }

            var site = await _siteRepository.GetAsync(request.SiteId);

            if (site == null)
            {
                return(NotFound());
            }

            var template = await _templateRepository.GetAsync(request.TemplateId);

            await _pathManager.WriteContentToTemplateFileAsync(site, template, request.Content, _authManager.AdminId);

            await CreatePagesAsync(template);

            await _authManager.AddSiteLogAsync(site.Id,
                                               $"修改{template.TemplateType.GetDisplayName()}",
                                               $"模板名称:{template.TemplateName}");

            return(new BoolResult
            {
                Value = true
            });
        }
        public async Task <ActionResult <BoolResult> > Submit([FromBody] SubmitRequest request)
        {
            if (!await _authManager.HasSitePermissionsAsync(request.SiteId, MenuUtils.SitePermissions.SettingsUploadFile))
            {
                return(Unauthorized());
            }

            var site = await _siteRepository.GetAsync(request.SiteId);

            site.FileUploadDirectoryName    = request.FileUploadDirectoryName;
            site.FileUploadDateFormatString = request.FileUploadDateFormatString;
            site.IsFileUploadChangeFileName = request.IsFileUploadChangeFileName;
            site.FileUploadExtensions       = request.FileUploadExtensions.Replace("|", ",");
            site.FileUploadTypeMaxSize      = request.FileUploadTypeMaxSize;

            if (_settingsManager.IsSafeMode)
            {
                site.FileUploadExtensions = Constants.DefaultFileUploadExtensions;
            }

            await _siteRepository.UpdateAsync(site);

            await _authManager.AddSiteLogAsync(request.SiteId, "修改视频上传设置");

            return(new BoolResult
            {
                Value = true
            });
        }
        public async Task <ActionResult <BoolResult> > Submit([FromBody] SubmitRequest request)
        {
            if (!await _authManager.HasAppPermissionsAsync(MenuUtils.AppPermissions.SettingsUsersConfig))
            {
                return(Unauthorized());
            }

            var config = await _configRepository.GetAsync();

            config.IsUserRegistrationAllowed   = request.IsUserRegistrationAllowed;
            config.IsUserRegistrationChecked   = request.IsUserRegistrationChecked;
            config.IsUserUnRegistrationAllowed = request.IsUserUnRegistrationAllowed;
            config.IsUserForceVerifyMobile     = request.IsUserForceVerifyMobile;
            config.UserPasswordMinLength       = request.UserPasswordMinLength;
            config.UserPasswordRestriction     = request.UserPasswordRestriction;
            config.UserRegistrationMinMinutes  = request.UserRegistrationMinMinutes;
            config.IsUserLockLogin             = request.IsUserLockLogin;
            config.UserLockLoginCount          = request.UserLockLoginCount;
            config.UserLockLoginType           = request.UserLockLoginType;
            config.UserLockLoginHours          = request.UserLockLoginHours;

            await _configRepository.UpdateAsync(config);

            await _authManager.AddAdminLogAsync("修改用户设置");

            return(new BoolResult
            {
                Value = true
            });
        }
Exemplo n.º 9
0
        public async Task <ActionResult <BoolResult> > Submit([FromBody] SubmitRequest request)
        {
            if (!await _authManager.HasSitePermissionsAsync(request.SiteId, Types.SitePermissions.SettingsUploadImage))
            {
                return(Unauthorized());
            }

            var site = await _siteRepository.GetAsync(request.SiteId);

            site.ImageUploadDirectoryName    = request.ImageUploadDirectoryName;
            site.ImageUploadDateFormatString = request.ImageUploadDateFormatString;
            site.IsImageUploadChangeFileName = request.IsImageUploadChangeFileName;
            site.ImageUploadExtensions       = request.ImageUploadExtensions.Replace("|", ",");
            site.ImageUploadTypeMaxSize      = request.ImageUploadTypeMaxSize;
            site.PhotoSmallWidth             = request.PhotoSmallWidth;
            site.PhotoMiddleWidth            = request.PhotoMiddleWidth;

            await _siteRepository.UpdateAsync(site);

            await _authManager.AddSiteLogAsync(request.SiteId, "修改图片上传设置");

            return(new BoolResult
            {
                Value = true
            });
        }
Exemplo n.º 10
0
        /// <summary>
        /// Processes a transaction and sends the resulting commands to the Command Submission Service
        /// </summary>
        /// <param name="tx">the Transaction to process</param>
        private void ProcessTransaction(Transaction tx)
        {
            var request = new SubmitRequest {
                Commands = new Commands {
                    CommandId     = Guid.NewGuid().ToString(),
                    WorkflowId    = tx.WorkflowId,
                    LedgerId      = _ledgerId,
                    Party         = _party,
                    ApplicationId = PingPongGrpcMain.APP_ID
                }
            };

            foreach (var e in from e in tx.Events where e.EventCase == Event.EventOneofCase.Created select e.Created)
            {
                Command command = ProcessEvent(tx.WorkflowId, e);
                if (command != null)
                {
                    request.Commands.Commands_.Add(command);
                }
            }

            if (request.Commands.Commands_.Count > 0)
            {
                _submissionService.Submit(request);
            }
        }
        public async Task <ActionResult <BoolResult> > Submit([FromBody] SubmitRequest request)
        {
            if (!await _authManager.HasContentPermissionsAsync(request.SiteId, request.ChannelId, MenuUtils.ContentPermissions.Translate))
            {
                return(Unauthorized());
            }

            var site = await _siteRepository.GetAsync(request.SiteId);

            if (site == null)
            {
                return(NotFound());
            }

            var channelInfo = await _channelRepository.GetAsync(request.ChannelId);

            if (channelInfo == null)
            {
                return(NotFound());
            }

            foreach (var contentId in request.ContentIds)
            {
                await ContentUtility.TranslateAsync(_pathManager, _databaseManager, _pluginManager, site, request.ChannelId, contentId, request.TargetSiteId, request.TargetChannelId, TranslateType.Cut, _createManager, _authManager.AdminId);
            }

            await _authManager.AddSiteLogAsync(request.SiteId, request.ChannelId, "转移内容", string.Empty);

            await _createManager.TriggerContentChangedEventAsync(request.SiteId, request.ChannelId);

            return(new BoolResult
            {
                Value = true
            });
        }
Exemplo n.º 12
0
        public async Task <ActionResult <CustomResponse <SubmitResponse> > > Submit(
            [FromServices] IConnectionMultiplexer redis,
            [FromServices] ILogger <ProblemController> logger,
            [FromBody] SubmitRequest request
            )
        {
            var token = Utils.GenerateToken(32);

            logger.LogDebug(Newtonsoft.Json.JsonConvert.SerializeObject(request));

            var database = redis.GetDatabase();
            var key      = $"problem:standard:submission-temp:{token}";
            await Task.WhenAll(
                database.HashSetAsync(
                    key,
                    new HashEntry[] {
                new HashEntry("lang", request.Language),
                new HashEntry("code", request.Code)
            }
                    ),
                database.KeyExpireAsync(
                    key,
                    TimeSpan.FromMinutes(10)
                    )
                );

            return(new CustomResponse <SubmitResponse>(new SubmitResponse()
            {
                Token = token
            }));
        }
Exemplo n.º 13
0
        public async Task <ActionResult <BoolResult> > Submit([FromBody] SubmitRequest request)
        {
            if (!await _authManager.HasSitePermissionsAsync(request.SiteId,
                                                            MenuUtils.SitePermissions.SettingsCreateTrigger))
            {
                return(Unauthorized());
            }

            var site = await _siteRepository.GetAsync(request.SiteId);

            if (site == null)
            {
                return(this.Error("无法确定内容对应的站点"));
            }

            var channel = await _channelRepository.GetAsync(request.ChannelId);

            channel.IsCreateChannelIfContentChanged  = request.IsCreateChannelIfContentChanged;
            channel.CreateChannelIdsIfContentChanged = ListUtils.ToString(request.CreateChannelIdsIfContentChanged);

            await _channelRepository.UpdateAsync(channel);

            await _authManager.AddSiteLogAsync(request.SiteId, request.ChannelId, 0, "设置栏目变动生成页面", $"栏目:{channel.ChannelName}");

            return(new BoolResult
            {
                Value = true
            });
        }
Exemplo n.º 14
0
 public ActionResult <StringResult> Submit([FromBody] SubmitRequest request)
 {
     return(new StringResult
     {
         Value = _settingsManager.Decrypt(request.RedirectUrl)
     });
 }
Exemplo n.º 15
0
        public async Task <ActionResult <BoolResult> > Submit([FromBody] SubmitRequest request)
        {
            if (!await _authManager.HasAppPermissionsAsync(MenuUtils.AppPermissions.SettingsHomeConfig))
            {
                return(Unauthorized());
            }

            var config = await _configRepository.GetAsync();

            config.IsHomeClosed               = request.IsHomeClosed;
            config.HomeTitle                  = request.HomeTitle;
            config.IsHomeLogo                 = request.IsHomeLogo;
            config.HomeLogoUrl                = request.HomeLogoUrl;
            config.HomeDefaultAvatarUrl       = request.HomeDefaultAvatarUrl;
            config.UserRegistrationAttributes = request.UserRegistrationAttributes;
            config.IsUserRegistrationMobile   = request.IsUserRegistrationMobile;
            config.IsUserRegistrationEmail    = request.IsUserRegistrationEmail;
            config.IsUserRegistrationGroup    = request.IsUserRegistrationGroup;
            config.IsHomeAgreement            = request.IsHomeAgreement;
            config.HomeAgreementHtml          = request.HomeAgreementHtml;
            config.HomeWelcomeHtml            = request.HomeWelcomeHtml;

            await _configRepository.UpdateAsync(config);

            await _authManager.AddAdminLogAsync("修改用户中心设置");

            return(new BoolResult
            {
                Value = true
            });
        }
Exemplo n.º 16
0
        public async Task <ActionResult <StringResult> > Submit([FromBody] SubmitRequest request)
        {
            var site = await _siteRepository.GetAsync(request.SiteId);

            if (site == null)
            {
                return(this.Error("无法确定内容对应的站点"));
            }

            var builder = new StringBuilder();

            foreach (var file in request.Files)
            {
                if (string.IsNullOrEmpty(file.FileName) || string.IsNullOrEmpty(file.Title))
                {
                    continue;
                }

                var filePath = _pathManager.GetTemporaryFilesPath(file.FileName);
                var(_, _, wordContent) = await WordManager.GetWordAsync(_pathManager, site, false, request.IsClearFormat, request.IsFirstLineIndent, request.IsClearFontSize, request.IsClearFontFamily, request.IsClearImages, filePath, file.Title);

                wordContent = await _pathManager.DecodeTextEditorAsync(site, wordContent, true);

                builder.Append(wordContent);
                FileUtils.DeleteFileIfExists(filePath);
            }

            return(new StringResult
            {
                Value = builder.ToString()
            });
        }
Exemplo n.º 17
0
        public async Task <ActionResult <GetResult> > Submit([FromBody] SubmitRequest request)
        {
            var user = await _userRepository.GetByMobileAsync(request.Mobile);

            if (user == null)
            {
                return(this.Error("此手机号码未关联用户,请更换手机号码"));
            }

            var codeCacheKey = GetSmsCodeCacheKey(request.Mobile);
            var code         = _cacheManager.Get <int>(codeCacheKey);

            if (code == 0 || TranslateUtils.ToInt(request.Code) != code)
            {
                return(this.Error("输入的验证码有误或验证码已超时,请重试"));
            }

            user.CountOfFailedLogin += 1;
            user.LastActivityDate    = DateTime.Now;
            await _userRepository.UpdateAsync(user);

            await _userRepository.UpdateLastActivityDateAndCountOfLoginAsync(user);

            await _statRepository.AddCountAsync(StatType.UserLogin);

            await _logRepository.AddUserLogAsync(user, PageUtils.GetIpAddress(Request), Constants.ActionsLoginSuccess);

            var token = _authManager.AuthenticateUser(user, true);

            return(new GetResult
            {
                User = user,
                Token = token
            });
        }
Exemplo n.º 18
0
        public async Task <ActionResult <SubmitResult> > Submit([FromBody] SubmitRequest request)
        {
            if (!await _authManager.HasSitePermissionsAsync(request.SiteId, GatherManager.PermissionsList))
            {
                return(Unauthorized());
            }

            var rule = await _ruleRepository.GetAsync(request.RuleId);

            //var regexListArea = GatherUtils.GetRegexArea(rule.ListAreaStart, rule.ListAreaEnd);

            //var regexContentUrl = GatherUtils.GetRegexUrl(rule.ContentUrlStart, rule.ContentUrlEnd);
            //var regexImageUrl = string.Empty;
            //if (rule.ImageSource == ImageSource.List)
            //{
            //    regexImageUrl = GatherUtils.GetRegexUrl(rule.ImageUrlStart, rule.ImageUrlEnd);
            //}

            var items = await GatherUtils.GetItemsAsync(request.GatherUrl, rule);

            return(new SubmitResult
            {
                Items = items
            });

            //var urls = GatherUtils.GetContentAndImageUrls(request.GatherUrl, rule.Charset, rule.CookieString, regexListArea, regexContentUrl, regexImageUrl);

            //return new SubmitResult
            //{
            //    ContentUrls = urls.contentUrls,
            //    ImageUrls = urls.imageUrls
            //};
        }
        public async Task <ActionResult <BoolResult> > Submit([FromBody] SubmitRequest request)
        {
            if (!await _authManager.HasAppPermissionsAsync(MenuUtils.AppPermissions.SettingsAdministratorsConfig))
            {
                return(Unauthorized());
            }

            var config = await _configRepository.GetAsync();

            config.AdminUserNameMinLength   = request.AdminUserNameMinLength;
            config.AdminPasswordMinLength   = request.AdminPasswordMinLength;
            config.AdminPasswordRestriction = request.AdminPasswordRestriction;

            config.IsAdminLockLogin    = request.IsAdminLockLogin;
            config.AdminLockLoginCount = request.AdminLockLoginCount;
            config.AdminLockLoginType  = request.AdminLockLoginType;
            config.AdminLockLoginHours = request.AdminLockLoginHours;

            config.IsAdminEnforcePasswordChange   = request.IsAdminEnforcePasswordChange;
            config.AdminEnforcePasswordChangeDays = request.AdminEnforcePasswordChangeDays;

            config.IsAdminEnforceLogout      = request.IsAdminEnforceLogout;
            config.AdminEnforceLogoutMinutes = request.AdminEnforceLogoutMinutes;

            await _configRepository.UpdateAsync(config);

            await _authManager.AddAdminLogAsync("修改管理员设置");

            return(new BoolResult
            {
                Value = true
            });
        }
Exemplo n.º 20
0
        public async Task <ActionResult <GetResult> > Submit([FromBody] SubmitRequest request)
        {
            if (!await _authManager.HasAppPermissionsAsync(Types.AppPermissions.SettingsLogsConfig))
            {
                return(Unauthorized());
            }

            var config = await _configRepository.GetAsync();

            config.IsTimeThreshold = request.IsTimeThreshold;
            if (config.IsTimeThreshold)
            {
                config.TimeThreshold = request.TimeThreshold;
            }

            config.IsLogSite  = request.IsLogSite;
            config.IsLogAdmin = request.IsLogAdmin;
            config.IsLogUser  = request.IsLogUser;
            config.IsLogError = request.IsLogError;

            await _configRepository.UpdateAsync(config);

            await _authManager.AddAdminLogAsync("修改日志设置");

            return(new GetResult
            {
                Config = config
            });
        }
Exemplo n.º 21
0
        public async Task <ActionResult <SubmitResult> > Submit([FromBody] SubmitRequest request)
        {
            var user = await _authManager.GetUserAsync();

            var site = await _siteRepository.GetAsync(request.SiteId);

            var stlPageContentsElement = _settingsManager.Decrypt(request.StlPageContentsElement);

            var channel = await _channelRepository.GetAsync(request.PageChannelId);

            var template = await _templateRepository.GetAsync(request.TemplateId);

            await _parseManager.InitAsync(EditMode.Default, site, channel.Id, 0, template);

            _parseManager.PageInfo.User = user;

            var stlPageContents = await StlPageContents.GetAsync(stlPageContentsElement, _parseManager);

            var pageHtml = await stlPageContents.ParseAsync(request.TotalNum, request.CurrentPageIndex, request.PageCount, false);

            return(new SubmitResult
            {
                Html = pageHtml
            });
        }
Exemplo n.º 22
0
        public async Task <ActionResult <BoolResult> > Submit([FromBody] SubmitRequest request)
        {
            var codeCacheKey = GetSmsCodeCacheKey(request.Mobile);
            var code         = _cacheManager.Get <int>(codeCacheKey);

            if (code == 0 || TranslateUtils.ToInt(request.Code) != code)
            {
                return(this.Error("输入的验证码有误或验证码已超时,请重试"));
            }

            var administrator = await _administratorRepository.GetByMobileAsync(request.Mobile);

            if (administrator == null)
            {
                return(this.Error("此手机号码未关联管理员,请更换手机号码"));
            }

            var password = request.Password;

            var(isValid, errorMessage) = await _administratorRepository.ChangePasswordAsync(administrator, password);

            if (!isValid)
            {
                return(this.Error($"更改密码失败:{errorMessage}"));
            }

            await _authManager.AddAdminLogAsync("重设管理员密码", $"管理员:{administrator.UserName}");

            return(new BoolResult
            {
                Value = true
            });
        }
Exemplo n.º 23
0
        public async Task <ActionResult <BoolResult> > Submit([FromBody] SubmitRequest request)
        {
            var relatedIdentities = ListUtils.GetIntList(request.RelatedIdentities);
            var styleDatabase     =
                await _tableStyleRepository.GetTableStyleAsync(request.TableName, request.AttributeName, relatedIdentities) ??
                new Models.TableStyle();

            bool   isSuccess;
            string errorMessage;

            //数据库中没有此项及父项的表样式 or 数据库中没有此项的表样式,但是有父项的表样式
            if (styleDatabase.Id == 0 && styleDatabase.RelatedIdentity == 0 || styleDatabase.RelatedIdentity != relatedIdentities[0])
            {
                (isSuccess, errorMessage) = await InsertTableStyleAsync(request);

                await _authManager.AddAdminLogAsync("添加表单显示样式", $"字段名:{request.AttributeName}");
            }
            //数据库中有此项的表样式
            else
            {
                (isSuccess, errorMessage) = await UpdateTableStyleAsync(styleDatabase, request);

                await _authManager.AddAdminLogAsync("修改表单显示样式", $"字段名:{request.AttributeName}");
            }

            if (!isSuccess)
            {
                return(this.Error(errorMessage));
            }

            return(new BoolResult
            {
                Value = true
            });
        }
Exemplo n.º 24
0
        public async Task <ActionResult <BoolResult> > Submit([FromBody] SubmitRequest request)
        {
            if (!await _authManager.HasContentPermissionsAsync(request.SiteId, request.ChannelId, MenuUtils.ContentPermissions.Edit))
            {
                return(Unauthorized());
            }

            var site = await _siteRepository.GetAsync(request.SiteId);

            if (site == null)
            {
                return(NotFound());
            }

            var channel = await _channelRepository.GetAsync(request.ChannelId);

            if (channel == null)
            {
                return(NotFound());
            }

            await _contentRepository.UpdateArrangeTaxisAsync(site, channel, request.AttributeName, request.IsDesc);

            await _authManager.AddSiteLogAsync(request.SiteId, "批量整理", string.Empty);

            return(new BoolResult
            {
                Value = true
            });
        }
Exemplo n.º 25
0
        public async Task <ActionResult <BoolResult> > Submit([FromBody] SubmitRequest request)
        {
            if (!await _authManager.HasAppPermissionsAsync(MenuUtils.AppPermissions.SettingsUsers))
            {
                return(Unauthorized());
            }

            var user = await _userRepository.GetByUserIdAsync(request.UserId);

            if (user == null)
            {
                return(NotFound());
            }

            var(success, errorMessage) = await _userRepository.ChangePasswordAsync(user.Id, request.Password);

            if (!success)
            {
                return(this.Error($"更改密码失败:{errorMessage}"));
            }

            await _authManager.AddAdminLogAsync("重设用户密码", $"用户:{user.UserName}");

            return(new BoolResult
            {
                Value = true
            });
        }
        public async Task <ActionResult <BoolResult> > UpdateRole([FromBody] SubmitRequest request)
        {
            if (!await _authManager.HasAppPermissionsAsync(MenuUtils.AppPermissions.SettingsAdministratorsRole))
            {
                return(Unauthorized());
            }

            var role = await _roleRepository.GetRoleAsync(request.RoleId);

            if (role.RoleName != request.RoleName)
            {
                if (_roleRepository.IsPredefinedRole(request.RoleName))
                {
                    return(this.Error($"角色添加失败,{request.RoleName}为系统角色!"));
                }
                if (await _roleRepository.IsRoleExistsAsync(request.RoleName))
                {
                    return(this.Error("角色名称已存在,请更换角色名称!"));
                }
            }

            await _permissionsInRolesRepository.DeleteAsync(role.RoleName);

            await _sitePermissionsRepository.DeleteAsync(role.RoleName);

            if (request.AppPermissions != null && request.AppPermissions.Count > 0)
            {
                var permissionsInRolesInfo = new PermissionsInRoles
                {
                    Id             = 0,
                    RoleName       = request.RoleName,
                    AppPermissions = request.AppPermissions
                };
                await _permissionsInRolesRepository.InsertAsync(permissionsInRolesInfo);
            }

            if (request.SitePermissions != null && request.SitePermissions.Count > 0)
            {
                foreach (var sitePermissionsInfo in request.SitePermissions)
                {
                    sitePermissionsInfo.RoleName = request.RoleName;
                    await _sitePermissionsRepository.InsertAsync(sitePermissionsInfo);
                }
            }

            role.RoleName    = request.RoleName;
            role.Description = request.Description;

            await _roleRepository.UpdateRoleAsync(role);

            _cacheManager.Clear();

            await _authManager.AddAdminLogAsync("修改管理员角色", $"角色名称:{request.RoleName}");

            return(new BoolResult
            {
                Value = true
            });
        }
Exemplo n.º 27
0
        public async Task <string> Submit([FromBody] SubmitRequest request)
        {
            var jsonString = await GetRelatedFieldAsync(request.SiteId, request.RelatedFieldId, request.ParentId);

            var call = request.Callback + "(" + jsonString + ")";

            return(call);
        }
Exemplo n.º 28
0
        public async Task <SubmitResponse> SubmitOrder(SubmitRequest request)
        {
            request.ServiceConsumer = _settings.Consumer;

            object response = await _proxy.SubmitOrder.POSTAsync(request);

            return(JsonConvert.DeserializeObject <SubmitResponse>(JsonConvert.SerializeObject(response)));
        }
Exemplo n.º 29
0
        public async Task <ActionResult <BoolResult> > Submit([FromBody] SubmitRequest request)
        {
            if (!await _authManager.HasSitePermissionsAsync(request.SiteId, AdvertisementUtils.PermissionsAdd))
            {
                return(Unauthorized());
            }

            Models.Advertisement advertisement;
            if (request.AdvertisementId > 0)
            {
                advertisement = await _advertisementRepository.GetAsync(request.SiteId, request.AdvertisementId);
            }
            else
            {
                if (await _advertisementRepository.IsExistsAsync(request.AdvertisementName, request.SiteId))
                {
                    return(this.Error("保存失败,已存在相同名称的广告!"));
                }

                advertisement = new Models.Advertisement();
            }

            advertisement.SiteId            = request.SiteId;
            advertisement.AdvertisementName = request.AdvertisementName;
            advertisement.AdvertisementType = request.AdvertisementType;
            advertisement.ScopeType         = request.ScopeType;
            advertisement.ChannelIds        = request.ChannelIds;
            advertisement.IsChannels        = request.IsChannels;
            advertisement.IsContents        = request.IsContents;
            advertisement.TemplateIds       = request.TemplateIds;
            advertisement.IsDateLimited     = request.IsDateLimited;
            advertisement.StartDate         = request.StartDate;
            advertisement.EndDate           = request.EndDate;
            advertisement.NavigationUrl     = request.NavigationUrl;
            advertisement.ImageUrl          = request.ImageUrl;
            advertisement.Width             = request.Width;
            advertisement.Height            = request.Height;
            advertisement.RollingType       = request.RollingType;
            advertisement.PositionType      = request.PositionType;
            advertisement.PositionX         = request.PositionX;
            advertisement.PositionY         = request.PositionY;
            advertisement.IsCloseable       = request.IsCloseable;
            advertisement.Delay             = request.Delay;

            if (advertisement.Id > 0)
            {
                await _advertisementRepository.UpdateAsync(advertisement);
            }
            else
            {
                await _advertisementRepository.InsertAsync(advertisement);
            }

            return(new BoolResult
            {
                Value = true
            });
        }
Exemplo n.º 30
0
    public void TurnOff()
    {
        var req = new SubmitRequest
        {
            Type = "turnOffAll"
        };

        SubmitRequest(req);
    }