Merge pull request #6649 from jumpserver/dev

Dev
pull/6697/head
老广 2021-08-17 10:17:49 +08:00 committed by GitHub
commit 4425efd3c2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 229 additions and 160 deletions

View File

@ -202,7 +202,7 @@ class FeiShuQRLoginCallbackView(AuthMixin, FeiShuQRMixin, View):
user = get_object_or_none(User, feishu_id=user_id)
if user is None:
title = _('FeiShu is not bound')
msg = _('Please login with a password and then bind the WeCom')
msg = _('Please login with a password and then bind the FeiShu')
response = self.get_failed_reponse(login_url, title=title, msg=msg)
return response

Binary file not shown.

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: JumpServer 0.3.3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-08-12 10:27+0800\n"
"POT-Creation-Date: 2021-08-16 19:17+0800\n"
"PO-Revision-Date: 2021-05-20 10:54+0800\n"
"Last-Translator: ibuler <ibuler@qq.com>\n"
"Language-Team: JumpServer team<ibuler@qq.com>\n"
@ -61,8 +61,8 @@ msgstr "激活中"
#: orgs/models.py:27 perms/models/base.py:57 settings/models.py:34
#: terminal/models/storage.py:26 terminal/models/terminal.py:114
#: tickets/models/ticket.py:73 users/models/group.py:16
#: users/models/user.py:589 xpack/plugins/change_auth_plan/models.py:77
#: xpack/plugins/cloud/models.py:35 xpack/plugins/cloud/models.py:108
#: users/models/user.py:589 xpack/plugins/change_auth_plan/models.py:88
#: xpack/plugins/cloud/models.py:35 xpack/plugins/cloud/models.py:113
#: xpack/plugins/gathered_user/models.py:26
msgid "Comment"
msgstr "备注"
@ -126,8 +126,8 @@ msgstr "系统用户"
#: terminal/backends/command/serializers.py:13 terminal/models/session.py:40
#: users/templates/users/user_asset_permission.html:40
#: users/templates/users/user_asset_permission.html:70
#: xpack/plugins/change_auth_plan/models.py:282
#: xpack/plugins/cloud/models.py:212
#: xpack/plugins/change_auth_plan/models.py:315
#: xpack/plugins/cloud/models.py:217
msgid "Asset"
msgstr "资产"
@ -172,7 +172,7 @@ msgstr "格式为逗号分隔的字符串, * 表示匹配所有. "
#: acls/serializers/login_asset_acl.py:17
#: acls/serializers/login_asset_acl.py:51
#: applications/serializers/application.py:71
#: applications/serializers/application.py:72
#: applications/serializers/attrs/application_type/chrome.py:20
#: applications/serializers/attrs/application_type/custom.py:21
#: applications/serializers/attrs/application_type/mysql_workbench.py:30
@ -181,8 +181,8 @@ msgstr "格式为逗号分隔的字符串, * 表示匹配所有. "
#: audits/models.py:105 authentication/forms.py:15 authentication/forms.py:17
#: ops/models/adhoc.py:148 users/forms/profile.py:31 users/models/user.py:554
#: users/templates/users/_select_user_modal.html:14
#: xpack/plugins/change_auth_plan/models.py:47
#: xpack/plugins/change_auth_plan/models.py:278
#: xpack/plugins/change_auth_plan/models.py:51
#: xpack/plugins/change_auth_plan/models.py:311
#: xpack/plugins/cloud/serializers.py:67
msgid "Username"
msgstr "用户名"
@ -252,7 +252,7 @@ msgid "Applications"
msgstr "应用管理"
#: applications/models/application.py:168
#: applications/serializers/application.py:78 assets/models/label.py:21
#: applications/serializers/application.py:79 assets/models/label.py:21
#: perms/models/application_permission.py:20
#: perms/serializers/application/user_permission.py:33
#: tickets/serializers/ticket/meta/ticket_type/apply_application.py:20
@ -260,7 +260,7 @@ msgid "Category"
msgstr "类别"
#: applications/models/application.py:171
#: applications/serializers/application.py:80 assets/models/cmd_filter.py:53
#: applications/serializers/application.py:81 assets/models/cmd_filter.py:53
#: assets/models/user.py:202 perms/models/application_permission.py:23
#: perms/serializers/application/user_permission.py:34
#: terminal/models/storage.py:55 terminal/models/storage.py:116
@ -279,14 +279,14 @@ msgid "Attrs"
msgstr ""
#: applications/serializers/application.py:48
#: applications/serializers/application.py:79 assets/serializers/label.py:13
#: applications/serializers/application.py:80 assets/serializers/label.py:13
#: perms/serializers/application/permission.py:16
#: tickets/serializers/ticket/meta/ticket_type/apply_application.py:24
msgid "Category display"
msgstr "类别名称"
#: applications/serializers/application.py:49
#: applications/serializers/application.py:81
#: applications/serializers/application.py:82
#: assets/serializers/system_user.py:26 audits/serializers.py:29
#: perms/serializers/application/permission.py:17
#: tickets/serializers/ticket/meta/ticket_type/apply_application.py:31
@ -294,8 +294,12 @@ msgstr "类别名称"
msgid "Type display"
msgstr "类型名称"
#: applications/serializers/application.py:72
#: applications/serializers/application.py:100
#: applications/serializers/application.py:71
msgid "Id"
msgstr ""
#: applications/serializers/application.py:73
#: applications/serializers/application.py:101
#: applications/serializers/attrs/application_type/chrome.py:23
#: applications/serializers/attrs/application_type/custom.py:25
#: applications/serializers/attrs/application_type/mysql_workbench.py:34
@ -307,14 +311,14 @@ msgstr "类型名称"
#: users/templates/users/user_otp_check_password.html:13
#: users/templates/users/user_password_update.html:43
#: users/templates/users/user_password_verify.html:18
#: xpack/plugins/change_auth_plan/models.py:68
#: xpack/plugins/change_auth_plan/models.py:190
#: xpack/plugins/change_auth_plan/models.py:285
#: xpack/plugins/change_auth_plan/models.py:72
#: xpack/plugins/change_auth_plan/models.py:207
#: xpack/plugins/change_auth_plan/models.py:318
#: xpack/plugins/cloud/serializers.py:69
msgid "Password"
msgstr "密码"
#: applications/serializers/application.py:73 assets/models/authbook.py:16
#: applications/serializers/application.py:74 assets/models/authbook.py:16
#: assets/models/user.py:277 audits/models.py:39
#: perms/models/application_permission.py:31
#: perms/models/asset_permission.py:101 templates/_nav.html:45
@ -329,19 +333,19 @@ msgstr "密码"
msgid "System user"
msgstr "系统用户"
#: applications/serializers/application.py:74 assets/serializers/account.py:31
#: applications/serializers/application.py:75 assets/serializers/account.py:31
msgid "System user display"
msgstr "系统用户名称"
#: applications/serializers/application.py:75
#: applications/serializers/application.py:76
msgid "App"
msgstr "应用"
#: applications/serializers/application.py:76
#: applications/serializers/application.py:77
msgid "Union id"
msgstr "联合ID"
#: applications/serializers/application.py:77
#: applications/serializers/application.py:78
msgid "Application name"
msgstr "应用名称"
@ -425,13 +429,13 @@ msgstr "系统平台"
#: assets/models/asset.py:186 assets/serializers/asset.py:65
#: perms/serializers/asset/user_permission.py:41
#: xpack/plugins/cloud/models.py:99 xpack/plugins/cloud/serializers.py:183
#: xpack/plugins/cloud/models.py:104 xpack/plugins/cloud/serializers.py:184
msgid "Protocols"
msgstr "协议组"
#: assets/models/asset.py:189 assets/models/user.py:194
#: perms/models/asset_permission.py:100
#: xpack/plugins/change_auth_plan/models.py:56
#: xpack/plugins/change_auth_plan/models.py:60
#: xpack/plugins/gathered_user/models.py:24
msgid "Nodes"
msgstr "节点"
@ -444,7 +448,6 @@ msgstr "激活"
#: assets/models/asset.py:193 assets/models/cluster.py:19
#: assets/models/user.py:191 assets/models/user.py:326 templates/_nav.html:44
#: xpack/plugins/cloud/models.py:96 xpack/plugins/cloud/serializers.py:205
msgid "Admin user"
msgstr "特权用户"
@ -521,8 +524,8 @@ msgstr "标签管理"
#: assets/models/cmd_filter.py:67 assets/models/group.py:21
#: common/db/models.py:70 common/mixins/models.py:49 orgs/models.py:25
#: orgs/models.py:437 perms/models/base.py:55 users/models/user.py:597
#: users/serializers/group.py:33 xpack/plugins/change_auth_plan/models.py:81
#: xpack/plugins/cloud/models.py:114 xpack/plugins/gathered_user/models.py:30
#: users/serializers/group.py:33 xpack/plugins/change_auth_plan/models.py:92
#: xpack/plugins/cloud/models.py:119 xpack/plugins/gathered_user/models.py:30
msgid "Created by"
msgstr "创建者"
@ -534,7 +537,7 @@ msgstr "创建者"
#: assets/models/label.py:25 common/db/models.py:72 common/mixins/models.py:50
#: ops/models/adhoc.py:38 ops/models/command.py:29 orgs/models.py:26
#: orgs/models.py:435 perms/models/base.py:56 users/models/group.py:18
#: users/models/user.py:784 xpack/plugins/cloud/models.py:117
#: users/models/user.py:784 xpack/plugins/cloud/models.py:122
msgid "Date created"
msgstr "创建日期"
@ -567,15 +570,15 @@ msgstr "可连接性"
msgid "Date verified"
msgstr "校验日期"
#: assets/models/base.py:178 xpack/plugins/change_auth_plan/models.py:72
#: xpack/plugins/change_auth_plan/models.py:197
#: xpack/plugins/change_auth_plan/models.py:292
#: assets/models/base.py:178 xpack/plugins/change_auth_plan/models.py:82
#: xpack/plugins/change_auth_plan/models.py:214
#: xpack/plugins/change_auth_plan/models.py:325
msgid "SSH private key"
msgstr "SSH密钥"
#: assets/models/base.py:179 xpack/plugins/change_auth_plan/models.py:75
#: xpack/plugins/change_auth_plan/models.py:193
#: xpack/plugins/change_auth_plan/models.py:288
#: assets/models/base.py:179 xpack/plugins/change_auth_plan/models.py:85
#: xpack/plugins/change_auth_plan/models.py:210
#: xpack/plugins/change_auth_plan/models.py:321
msgid "SSH public key"
msgstr "SSH公钥"
@ -733,7 +736,7 @@ msgstr "ssh私钥"
#: users/templates/users/user_asset_permission.html:41
#: users/templates/users/user_asset_permission.html:73
#: users/templates/users/user_asset_permission.html:158
#: xpack/plugins/cloud/models.py:93 xpack/plugins/cloud/serializers.py:206
#: xpack/plugins/cloud/models.py:93 xpack/plugins/cloud/serializers.py:210
msgid "Node"
msgstr "节点"
@ -754,7 +757,7 @@ msgid "Username same with user"
msgstr "用户名与用户相同"
#: assets/models/user.py:196 assets/serializers/domain.py:28
#: templates/_nav.html:39 xpack/plugins/change_auth_plan/models.py:52
#: templates/_nav.html:39 xpack/plugins/change_auth_plan/models.py:56
msgid "Assets"
msgstr "资产"
@ -1077,8 +1080,8 @@ msgstr "成功"
#: tickets/serializers/ticket/meta/ticket_type/apply_application.py:74
#: tickets/serializers/ticket/meta/ticket_type/apply_asset.py:40
#: tickets/serializers/ticket/meta/ticket_type/apply_asset.py:78
#: xpack/plugins/change_auth_plan/models.py:177
#: xpack/plugins/change_auth_plan/models.py:307
#: xpack/plugins/change_auth_plan/models.py:194
#: xpack/plugins/change_auth_plan/models.py:340
#: xpack/plugins/gathered_user/models.py:76
msgid "Date start"
msgstr "开始日期"
@ -1149,13 +1152,13 @@ msgstr "用户代理"
msgid "MFA"
msgstr "多因子认证"
#: audits/models.py:111 xpack/plugins/change_auth_plan/models.py:303
#: xpack/plugins/cloud/models.py:171
#: audits/models.py:111 xpack/plugins/change_auth_plan/models.py:336
#: xpack/plugins/cloud/models.py:176
msgid "Reason"
msgstr "原因"
#: audits/models.py:112 tickets/models/ticket.py:47
#: xpack/plugins/cloud/models.py:167 xpack/plugins/cloud/models.py:216
#: xpack/plugins/cloud/models.py:172 xpack/plugins/cloud/models.py:221
msgid "Status"
msgstr "状态"
@ -1189,7 +1192,7 @@ msgid "Hosts display"
msgstr "主机名称"
#: audits/serializers.py:89 ops/models/command.py:26
#: xpack/plugins/cloud/models.py:165
#: xpack/plugins/cloud/models.py:170
msgid "Result"
msgstr "结果"
@ -1711,7 +1714,7 @@ msgstr "CAS"
#: authentication/templates/authentication/login.html:220
#: notifications/backends/__init__.py:16
msgid "FeiShu"
msgstr ""
msgstr "飞书"
#: authentication/templates/authentication/login_otp.html:17
msgid "One-time password"
@ -1758,7 +1761,7 @@ msgstr "钉钉错误,请联系系统管理员"
msgid "DingTalk Error"
msgstr "钉钉错误"
#: authentication/views/dingtalk.py:56 authentication/views/feishu.py:55
#: authentication/views/dingtalk.py:56 authentication/views/feishu.py:52
#: authentication/views/wecom.py:56
msgid "You've been hacked"
msgstr "你被攻击了"
@ -1767,7 +1770,7 @@ msgstr "你被攻击了"
msgid "DingTalk is already bound"
msgstr "钉钉已经绑定"
#: authentication/views/dingtalk.py:105 authentication/views/feishu.py:102
#: authentication/views/dingtalk.py:105 authentication/views/feishu.py:99
#: authentication/views/wecom.py:104
msgid "Please verify your password first"
msgstr "请检查密码"
@ -1797,8 +1800,7 @@ msgstr "从钉钉获取用户失败"
msgid "DingTalk is not bound"
msgstr "钉钉没有绑定"
#: authentication/views/dingtalk.py:218 authentication/views/feishu.py:208
#: authentication/views/wecom.py:216
#: authentication/views/dingtalk.py:218 authentication/views/wecom.py:216
msgid "Please login with a password and then bind the WeCom"
msgstr "请使用密码登录,然后绑定企业微信"
@ -1807,39 +1809,39 @@ msgid "Binding DingTalk failed"
msgstr "绑定钉钉失败"
#: authentication/views/feishu.py:40
msgid "FeiShu Error, Please contact your system administrator"
msgstr "飞书错误,请联系系统管理员"
#: authentication/views/feishu.py:43
msgid "FeiShu Error"
msgstr "飞书错误"
#: authentication/views/feishu.py:89
#: authentication/views/feishu.py:86
msgid "FeiShu is already bound"
msgstr "飞书已经绑定"
#: authentication/views/feishu.py:136
#: authentication/views/feishu.py:133
msgid "FeiShu query user failed"
msgstr "飞书查询用户失败"
#: authentication/views/feishu.py:145
#: authentication/views/feishu.py:142
msgid "The FeiShu is already bound to another user"
msgstr "该飞书已经绑定其他用户"
#: authentication/views/feishu.py:150 authentication/views/feishu.py:232
#: authentication/views/feishu.py:233
#: authentication/views/feishu.py:147 authentication/views/feishu.py:229
#: authentication/views/feishu.py:230
msgid "Binding FeiShu successfully"
msgstr "绑定 飞书 成功"
#: authentication/views/feishu.py:201
#: authentication/views/feishu.py:198
msgid "Failed to get user from FeiShu"
msgstr "从飞书获取用户失败"
#: authentication/views/feishu.py:207
#: authentication/views/feishu.py:204
msgid "FeiShu is not bound"
msgstr "没有绑定飞书"
#: authentication/views/feishu.py:250 authentication/views/feishu.py:251
#: authentication/views/feishu.py:205
msgid "Please login with a password and then bind the FeiShu"
msgstr "请使用密码登录,然后绑定飞书"
#: authentication/views/feishu.py:247 authentication/views/feishu.py:248
msgid "Binding FeiShu failed"
msgstr "绑定飞书失败"
@ -2088,7 +2090,7 @@ msgid "Regularly perform"
msgstr "定期执行"
#: ops/mixin.py:106 ops/mixin.py:147
#: xpack/plugins/change_auth_plan/serializers.py:55
#: xpack/plugins/change_auth_plan/serializers.py:60
msgid "Periodic perform"
msgstr "定时执行"
@ -2167,8 +2169,8 @@ msgstr "开始时间"
msgid "End time"
msgstr "完成时间"
#: ops/models/adhoc.py:246 xpack/plugins/change_auth_plan/models.py:180
#: xpack/plugins/change_auth_plan/models.py:310
#: ops/models/adhoc.py:246 xpack/plugins/change_auth_plan/models.py:197
#: xpack/plugins/change_auth_plan/models.py:343
#: xpack/plugins/gathered_user/models.py:79
msgid "Time"
msgstr "时间"
@ -2212,14 +2214,17 @@ msgid "[Alive] The terminal is offline: {name}"
msgstr ""
#: ops/notifications.py:42
#, python-brace-format
msgid "[Disk] Disk used more than {max_threshold}%: => {value} ({name})"
msgstr "[Disk] 硬盘使用率超过 {max_threshold}%: => {value} ({name})"
#: ops/notifications.py:49
#, python-brace-format
msgid "[Memory] Memory used more than {max_threshold}%: => {value} ({name})"
msgstr "[Memory] 内存使用率超过 {max_threshold}%: => {value} ({name})"
#: ops/notifications.py:56
#, python-brace-format
msgid "[CPU] CPU load more than {max_threshold}: => {value} ({name})"
msgstr "[CPU] CPU 使用率超过 {max_threshold}: => {value} ({name})"
@ -3644,7 +3649,7 @@ msgstr "Secret key"
msgid "Endpoint"
msgstr "端点"
#: terminal/serializers/storage.py:66 xpack/plugins/cloud/models.py:209
#: terminal/serializers/storage.py:66 xpack/plugins/cloud/models.py:214
msgid "Region"
msgstr "地域"
@ -3692,6 +3697,10 @@ msgstr "忽略证书认证"
msgid "Not found"
msgstr "没有发现"
#: tickets/api/ticket.py:61 tickets/api/ticket.py:70
msgid "Ticket already closed"
msgstr "工单已经关闭"
#: tickets/const.py:8
msgid "General"
msgstr "一般"
@ -4209,7 +4218,7 @@ msgstr "Administrator是初始的超级管理员"
msgid "The old password is incorrect"
msgstr "旧密码错误"
#: users/serializers/profile.py:36 users/serializers/user.py:126
#: users/serializers/profile.py:36 users/serializers/user.py:129
msgid "Password does not match security rules"
msgstr "密码不满足安全规则"
@ -4233,8 +4242,8 @@ msgstr "生成重置密码链接,通过邮件发送给用户"
msgid "Set password"
msgstr "设置密码"
#: users/serializers/user.py:27 xpack/plugins/change_auth_plan/models.py:61
#: xpack/plugins/change_auth_plan/serializers.py:30
#: users/serializers/user.py:27 xpack/plugins/change_auth_plan/models.py:65
#: xpack/plugins/change_auth_plan/serializers.py:33
msgid "Password strategy"
msgstr "密码策略"
@ -4286,11 +4295,23 @@ msgstr "超级角色名称"
msgid "Total role name"
msgstr "汇总角色名称"
#: users/serializers/user.py:112
#: users/serializers/user.py:90
msgid "Is wecom bound"
msgstr "是否绑定了企业微信"
#: users/serializers/user.py:91
msgid "Is dingtalk bound"
msgstr "是否绑定了钉钉"
#: users/serializers/user.py:92
msgid "Is feishu bound"
msgstr "是否绑定了飞书"
#: users/serializers/user.py:115
msgid "Role limit to {}"
msgstr "角色只能为 {}"
#: users/serializers/user.py:211
#: users/serializers/user.py:214
msgid "name not unique"
msgstr "名称重复"
@ -4861,93 +4882,154 @@ msgid "Reset password success, return to login page"
msgstr "重置密码成功,返回到登录页面"
#: xpack/plugins/change_auth_plan/meta.py:9
#: xpack/plugins/change_auth_plan/models.py:89
#: xpack/plugins/change_auth_plan/models.py:184
#: xpack/plugins/change_auth_plan/models.py:100
#: xpack/plugins/change_auth_plan/models.py:201
msgid "Change auth plan"
msgstr "改密计划"
#: xpack/plugins/change_auth_plan/models.py:41
#: xpack/plugins/change_auth_plan/models.py:40
msgid "Custom password"
msgstr "自定义密码"
#: xpack/plugins/change_auth_plan/models.py:42
#: xpack/plugins/change_auth_plan/models.py:41
msgid "All assets use the same random password"
msgstr "所有资产使用相同的随机密码"
#: xpack/plugins/change_auth_plan/models.py:43
#: xpack/plugins/change_auth_plan/models.py:42
msgid "All assets use different random password"
msgstr "所有资产使用不同的随机密码"
#: xpack/plugins/change_auth_plan/models.py:65
#: xpack/plugins/change_auth_plan/models.py:46
msgid "Append SSH KEY"
msgstr "追加新密钥"
#: xpack/plugins/change_auth_plan/models.py:47
msgid "Empty and append SSH KEY"
msgstr "清空所有密钥再追加新密钥"
#: xpack/plugins/change_auth_plan/models.py:48
msgid "Empty current user and append SSH KEY"
msgstr "清空当前账号密钥再追加新密钥"
#: xpack/plugins/change_auth_plan/models.py:69
msgid "Password rules"
msgstr "密码规则"
#: xpack/plugins/change_auth_plan/models.py:187
#: xpack/plugins/change_auth_plan/models.py:78
#, fuzzy
#| msgid "Hostname strategy"
msgid "SSH key strategy"
msgstr "主机名策略"
#: xpack/plugins/change_auth_plan/models.py:189
msgid "Manual trigger"
msgstr "手动触发"
#: xpack/plugins/change_auth_plan/models.py:190
msgid "Timing trigger"
msgstr "定时触发"
#: xpack/plugins/change_auth_plan/models.py:204
msgid "Change auth plan snapshot"
msgstr "改密计划快照"
#: xpack/plugins/change_auth_plan/models.py:202
#: xpack/plugins/change_auth_plan/models.py:296
#: xpack/plugins/change_auth_plan/models.py:218
#: xpack/plugins/change_auth_plan/serializers.py:166
msgid "Trigger mode"
msgstr "触发模式"
#: xpack/plugins/change_auth_plan/models.py:223
#: xpack/plugins/change_auth_plan/models.py:329
msgid "Change auth plan execution"
msgstr "改密计划执行"
#: xpack/plugins/change_auth_plan/models.py:269
#: xpack/plugins/change_auth_plan/models.py:302
msgid "Ready"
msgstr ""
#: xpack/plugins/change_auth_plan/models.py:270
#: xpack/plugins/change_auth_plan/models.py:303
msgid "Preflight check"
msgstr ""
#: xpack/plugins/change_auth_plan/models.py:271
#: xpack/plugins/change_auth_plan/models.py:304
#, fuzzy
#| msgid "Change auth plan"
msgid "Change auth"
msgstr ""
msgstr "改密计划"
#: xpack/plugins/change_auth_plan/models.py:272
#: xpack/plugins/change_auth_plan/models.py:305
#, fuzzy
#| msgid "Verify password"
msgid "Verify auth"
msgstr ""
msgstr "校验密码"
#: xpack/plugins/change_auth_plan/models.py:273
#: xpack/plugins/change_auth_plan/models.py:306
msgid "Keep auth"
msgstr ""
#: xpack/plugins/change_auth_plan/models.py:274
#: xpack/plugins/change_auth_plan/models.py:307
msgid "Finished"
msgstr "结束"
#: xpack/plugins/change_auth_plan/models.py:300
#: xpack/plugins/change_auth_plan/models.py:333
msgid "Step"
msgstr "步骤"
#: xpack/plugins/change_auth_plan/models.py:317
#: xpack/plugins/change_auth_plan/models.py:350
msgid "Change auth plan task"
msgstr "改密计划任务"
#: xpack/plugins/change_auth_plan/serializers.py:56
#: xpack/plugins/change_auth_plan/serializers.py:29
msgid "Change Password"
msgstr "修改密码"
#: xpack/plugins/change_auth_plan/serializers.py:30
msgid "Change SSH Key"
msgstr "修改密钥"
#: xpack/plugins/change_auth_plan/serializers.py:35
#, fuzzy
#| msgid "SSH Key Reset"
msgid "SSH Key strategy"
msgstr "重置SSH密钥"
#: xpack/plugins/change_auth_plan/serializers.py:61
msgid "Run times"
msgstr "执行次数"
#: xpack/plugins/change_auth_plan/serializers.py:72
msgid "* Please enter custom password"
msgstr "* 请输入自定义密码"
#: xpack/plugins/change_auth_plan/serializers.py:79
msgid "Require password strategy perform setting"
msgstr "需要密码策略执行设置"
#: xpack/plugins/change_auth_plan/serializers.py:82
msgid "Require password perform setting"
msgstr "需要密码执行设置"
#: xpack/plugins/change_auth_plan/serializers.py:85
msgid "Require password rule perform setting"
msgstr "需要密码规则执行设置"
#: xpack/plugins/change_auth_plan/serializers.py:97
msgid "* Please enter the correct password length"
msgstr "* 请输入正确的密码长度"
#: xpack/plugins/change_auth_plan/serializers.py:85
#: xpack/plugins/change_auth_plan/serializers.py:100
msgid "* Password length range 6-30 bits"
msgstr "* 密码长度范围 6-30 位"
#: xpack/plugins/change_auth_plan/utils.py:442
#: xpack/plugins/change_auth_plan/serializers.py:118
msgid "Require ssh key strategy or ssh key perform setting"
msgstr "需要ssh密钥策略或ssh密钥执行设置"
#: xpack/plugins/change_auth_plan/utils.py:485
msgid "Invalid/incorrect password"
msgstr "无效/错误 密码"
#: xpack/plugins/change_auth_plan/utils.py:444
#: xpack/plugins/change_auth_plan/utils.py:487
msgid "Failed to connect to the host"
msgstr "连接主机失败"
#: xpack/plugins/change_auth_plan/utils.py:446
#: xpack/plugins/change_auth_plan/utils.py:489
msgid "Data could not be sent to remote"
msgstr "无法将数据发送到远程"
@ -5043,7 +5125,7 @@ msgstr "云服务商"
msgid "Cloud account"
msgstr "云账号"
#: xpack/plugins/cloud/models.py:82 xpack/plugins/cloud/serializers.py:204
#: xpack/plugins/cloud/models.py:82 xpack/plugins/cloud/serializers.py:207
msgid "Account"
msgstr "账户"
@ -5055,35 +5137,47 @@ msgstr "地域"
msgid "Hostname strategy"
msgstr "主机名策略"
#: xpack/plugins/cloud/models.py:102 xpack/plugins/cloud/serializers.py:186
#: xpack/plugins/cloud/models.py:97 xpack/plugins/cloud/serializers.py:208
#, fuzzy
#| msgid "Only admin users"
msgid "Unix admin user"
msgstr "仅管理员"
#: xpack/plugins/cloud/models.py:101 xpack/plugins/cloud/serializers.py:209
#, fuzzy
#| msgid "Only admin users"
msgid "Windows admin user"
msgstr "仅管理员"
#: xpack/plugins/cloud/models.py:107 xpack/plugins/cloud/serializers.py:187
msgid "IP network segment group"
msgstr "IP网段组"
#: xpack/plugins/cloud/models.py:105 xpack/plugins/cloud/serializers.py:208
#: xpack/plugins/cloud/models.py:110 xpack/plugins/cloud/serializers.py:212
msgid "Always update"
msgstr "总是更新"
#: xpack/plugins/cloud/models.py:111
#: xpack/plugins/cloud/models.py:116
msgid "Date last sync"
msgstr "最后同步日期"
#: xpack/plugins/cloud/models.py:122 xpack/plugins/cloud/models.py:163
#: xpack/plugins/cloud/models.py:127 xpack/plugins/cloud/models.py:168
msgid "Sync instance task"
msgstr "同步实例任务"
#: xpack/plugins/cloud/models.py:174 xpack/plugins/cloud/models.py:219
#: xpack/plugins/cloud/models.py:179 xpack/plugins/cloud/models.py:224
msgid "Date sync"
msgstr "同步日期"
#: xpack/plugins/cloud/models.py:199
#: xpack/plugins/cloud/models.py:204
msgid "Sync task"
msgstr "同步任务"
#: xpack/plugins/cloud/models.py:203
#: xpack/plugins/cloud/models.py:208
msgid "Sync instance task history"
msgstr "同步实例任务历史"
#: xpack/plugins/cloud/models.py:206
#: xpack/plugins/cloud/models.py:211
msgid "Instance"
msgstr "实例"
@ -5228,28 +5322,36 @@ msgid "EU-Paris"
msgstr "欧洲-巴黎"
#: xpack/plugins/cloud/serializers.py:21
#, fuzzy
#| msgid "Access key"
msgid "AccessKey ID"
msgstr ""
msgstr "Access key"
#: xpack/plugins/cloud/serializers.py:24
#, fuzzy
#| msgid "Access key"
msgid "AccessKey Secret"
msgstr ""
msgstr "Access key"
#: xpack/plugins/cloud/serializers.py:30
msgid "Client ID"
msgstr ""
#: xpack/plugins/cloud/serializers.py:33
#, fuzzy
#| msgid "Secret"
msgid "Client Secret"
msgstr ""
msgstr "秘钥"
#: xpack/plugins/cloud/serializers.py:36
msgid "Tenant ID"
msgstr ""
#: xpack/plugins/cloud/serializers.py:39
#, fuzzy
#| msgid "Session ID"
msgid "Subscription ID"
msgstr ""
msgstr "会话ID"
#: xpack/plugins/cloud/serializers.py:51
msgid "This field is required"
@ -5276,7 +5378,7 @@ msgstr "执行次数"
msgid "Instance count"
msgstr "实例个数"
#: xpack/plugins/cloud/serializers.py:207
#: xpack/plugins/cloud/serializers.py:211
#: xpack/plugins/gathered_user/serializers.py:20
msgid "Periodic display"
msgstr "定时执行"
@ -5369,51 +5471,11 @@ msgstr "旗舰版"
msgid "Community edition"
msgstr "社区版"
#~ msgid "Append SSH KEY"
#~ msgstr "追加新密钥"
#~ msgid "* Please enter custom password"
#~ msgstr "* 请输入自定义密码"
#~ msgid "Empty and append SSH KEY"
#~ msgstr "清空所有密钥再追加新密钥"
#~ msgid "Empty current user and append SSH KEY"
#~ msgstr "清空当前账号密钥再追加新密钥"
#, fuzzy
#~| msgid "Hostname strategy"
#~ msgid "SSH key strategy"
#~ msgstr "主机名策略"
#~ msgid "Manual trigger"
#~ msgstr "手动触发"
#~ msgid "Timing trigger"
#~ msgstr "定时触发"
#~ msgid "Trigger mode"
#~ msgstr "触发模式"
#~ msgid "Change Password"
#~ msgstr "修改密码"
#~ msgid "Change SSH Key"
#~ msgstr "修改密钥"
#, fuzzy
#~| msgid "SSH Key Reset"
#~ msgid "SSH Key strategy"
#~ msgstr "重置SSH密钥"
#~ msgid "Require password strategy perform setting"
#~ msgstr "需要密码策略执行设置"
#~ msgid "Require password perform setting"
#~ msgstr "需要密码执行设置"
#~ msgid "Require password rule perform setting"
#~ msgstr "需要密码规则执行设置"
#~ msgid "Require ssh key strategy or ssh key perform setting"
#~ msgstr "需要ssh密钥策略或ssh密钥执行设置"
#~ msgid "FeiShu Error, Please contact your system administrator"
#~ msgstr "飞书错误,请联系系统管理员"
#~ msgid "Category(Display)"
#~ msgstr "类别 (显示名称)"

View File

@ -42,7 +42,7 @@ class ApplicationPermissionViewSet(BasePermissionViewSet):
return queryset
if not applications:
return queryset.none()
queryset = queryset.filter(applications=applications)
queryset = queryset.filter(applications__in=applications)
return queryset
def filter_queryset(self, queryset):

View File

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
from django.utils.translation import ugettext_lazy as _
from rest_framework import viewsets
from rest_framework.decorators import action
from rest_framework.exceptions import MethodNotAllowed
@ -54,16 +54,20 @@ class TicketViewSet(CommonApiMixin, viewsets.ModelViewSet):
def open(self, request, *args, **kwargs):
return super().create(request, *args, **kwargs)
@action(detail=True, methods=[PUT], permission_classes=[IsAssignee, NotClosed])
@action(detail=True, methods=[PUT], permission_classes=[IsAssignee, ])
def approve(self, request, *args, **kwargs):
response = super().update(request, *args, **kwargs)
instance = self.get_object()
instance.approve(processor=self.request.user)
if instance.status_closed:
return Response(data={"error": _("Ticket already closed")}, status=400)
response = super().update(request, *args, **kwargs)
self.get_object().approve(processor=self.request.user)
return response
@action(detail=True, methods=[PUT], permission_classes=[IsAssignee, NotClosed])
@action(detail=True, methods=[PUT], permission_classes=[IsAssignee, ])
def reject(self, request, *args, **kwargs):
instance = self.get_object()
if instance.status_closed:
return Response(data={"error": _("Ticket already closed")}, status=400)
serializer = self.get_serializer(instance)
instance.reject(processor=request.user)
return Response(serializer.data)

View File

@ -87,6 +87,9 @@ class UserSerializer(CommonBulkSerializerMixin, serializers.ModelSerializer):
'role_display': {'label': _('Super role name')},
'total_role_display': {'label': _('Total role name')},
'role': {'default': "User"},
'is_wecom_bound': {'label': _('Is wecom bound')},
'is_dingtalk_bound': {'label': _('Is dingtalk bound')},
'is_feishu_bound': {'label': _('Is feishu bound')},
}
def __init__(self, *args, **kwargs):