From 927ae43af28c23544c9ddea2a5734013aa9d193e Mon Sep 17 00:00:00 2001 From: fit2bot <68588906+fit2bot@users.noreply.github.com> Date: Fri, 1 Jul 2022 19:07:55 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E4=BC=98=E5=8C=96=E5=B7=A5=E5=8D=95=20?= =?UTF-8?q?(#8524)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: feng626 <1304903146@qq.com> --- apps/locale/ja/LC_MESSAGES/django.po | 51 +++++++++++----------- apps/locale/zh/LC_MESSAGES/django.mo | 4 +- apps/locale/zh/LC_MESSAGES/django.po | 53 ++++++++++++----------- apps/tickets/serializers/ticket/ticket.py | 13 ++++++ 4 files changed, 68 insertions(+), 53 deletions(-) diff --git a/apps/locale/ja/LC_MESSAGES/django.po b/apps/locale/ja/LC_MESSAGES/django.po index 792b2412e..477e03eff 100644 --- a/apps/locale/ja/LC_MESSAGES/django.po +++ b/apps/locale/ja/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-06-30 15:51+0800\n" +"POT-Creation-Date: 2022-07-01 19:05+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -213,7 +213,7 @@ msgid "Unsupported protocols: {}" msgstr "サポートされていないプロトコル: {}" #: acls/serializers/login_asset_acl.py:98 -#: tickets/serializers/ticket/ticket.py:65 +#: tickets/serializers/ticket/ticket.py:78 msgid "The organization `{}` does not exist" msgstr "組織 '{}'は存在しません" @@ -344,7 +344,7 @@ msgstr "カテゴリ表示" #: applications/serializers/application.py:102 #: assets/serializers/cmd_filter.py:34 assets/serializers/system_user.py:34 #: audits/serializers.py:29 perms/serializers/application/permission.py:19 -#: tickets/serializers/flow.py:48 tickets/serializers/ticket/ticket.py:16 +#: tickets/serializers/flow.py:48 tickets/serializers/ticket/ticket.py:17 msgid "Type display" msgstr "タイプ表示" @@ -585,6 +585,7 @@ msgstr "ノード" #: assets/models/asset.py:219 assets/models/cmd_filter.py:47 #: assets/models/domain.py:65 assets/models/label.py:22 +#: users/serializers/user.py:145 msgid "Is active" msgstr "アクティブです。" @@ -1532,7 +1533,7 @@ msgstr "ユーザーログインログ" msgid "Operate display" msgstr "ディスプレイを操作する" -#: audits/serializers.py:30 tickets/serializers/ticket/ticket.py:17 +#: audits/serializers.py:30 tickets/serializers/ticket/ticket.py:18 msgid "Status display" msgstr "ステータス表示" @@ -2131,7 +2132,7 @@ msgstr "バインディングリマインダー" #: perms/serializers/application/permission.py:20 #: perms/serializers/application/permission.py:41 #: perms/serializers/asset/permission.py:19 -#: perms/serializers/asset/permission.py:45 users/serializers/user.py:145 +#: perms/serializers/asset/permission.py:45 users/serializers/user.py:146 msgid "Is valid" msgstr "有効です" @@ -2565,7 +2566,7 @@ msgstr "オブジェクト" msgid "The file content overflowed (The maximum length `{}` bytes)" msgstr "ファイルの内容がオーバーフローしました (最大長 '{}' バイト)" -#: common/drf/parsers/base.py:153 +#: common/drf/parsers/base.py:159 msgid "Parse file error: {}" msgstr "解析ファイルエラー: {}" @@ -2945,7 +2946,7 @@ msgstr "アプリ組織" #: orgs/mixins/models.py:46 orgs/mixins/serializers.py:25 orgs/models.py:80 #: orgs/models.py:211 rbac/const.py:7 rbac/models/rolebinding.py:48 #: rbac/serializers/rolebinding.py:40 settings/serializers/auth/ldap.py:62 -#: tickets/models/ticket/general.py:290 tickets/serializers/ticket/ticket.py:51 +#: tickets/models/ticket/general.py:290 tickets/serializers/ticket/ticket.py:64 msgid "Organization" msgstr "組織" @@ -3082,7 +3083,7 @@ msgstr "Organization {} のアプリケーション権限" #: perms/serializers/application/permission.py:40 #: perms/serializers/asset/permission.py:20 #: perms/serializers/asset/permission.py:44 users/serializers/user.py:87 -#: users/serializers/user.py:147 +#: users/serializers/user.py:148 msgid "Is expired" msgstr "期限切れです" @@ -5409,7 +5410,7 @@ msgstr "有効期限は開始日より大きくする必要があります" msgid "Permission named `{}` already exists" msgstr "'{}'という名前の権限は既に存在します" -#: tickets/serializers/ticket/ticket.py:76 +#: tickets/serializers/ticket/ticket.py:89 msgid "The ticket flow `{}` does not exist" msgstr "チケットフロー '{}'が存在しない" @@ -5580,7 +5581,7 @@ msgstr "強制有効" msgid "Local" msgstr "ローカル" -#: users/models/user.py:673 users/serializers/user.py:146 +#: users/models/user.py:673 users/serializers/user.py:147 msgid "Is service account" msgstr "サービスアカウントです" @@ -5725,63 +5726,63 @@ msgstr "ログインブロック" msgid "Can public key authentication" msgstr "公開鍵認証が可能" -#: users/serializers/user.py:148 +#: users/serializers/user.py:149 msgid "Avatar url" msgstr "アバターURL" -#: users/serializers/user.py:150 +#: users/serializers/user.py:151 msgid "Groups name" msgstr "グループ名" -#: users/serializers/user.py:151 +#: users/serializers/user.py:152 msgid "Source name" msgstr "ソース名" -#: users/serializers/user.py:152 +#: users/serializers/user.py:153 msgid "Organization role name" msgstr "組織の役割名" -#: users/serializers/user.py:153 +#: users/serializers/user.py:154 msgid "Super role name" msgstr "スーパーロール名" -#: users/serializers/user.py:154 +#: users/serializers/user.py:155 msgid "Total role name" msgstr "合計ロール名" -#: users/serializers/user.py:156 +#: users/serializers/user.py:157 msgid "Is wecom bound" msgstr "企業の微信をバインドしているかどうか" -#: users/serializers/user.py:157 +#: users/serializers/user.py:158 msgid "Is dingtalk bound" msgstr "ピンをバインドしているかどうか" -#: users/serializers/user.py:158 +#: users/serializers/user.py:159 msgid "Is feishu bound" msgstr "飛本を縛ったかどうか" -#: users/serializers/user.py:159 +#: users/serializers/user.py:160 msgid "Is OTP bound" msgstr "仮想MFAがバインドされているか" -#: users/serializers/user.py:161 +#: users/serializers/user.py:162 msgid "System role name" msgstr "システムロール名" -#: users/serializers/user.py:201 +#: users/serializers/user.py:202 msgid "User cannot self-update fields: {}" msgstr "ユーザーは自分のフィールドを更新できません: {}" -#: users/serializers/user.py:258 +#: users/serializers/user.py:259 msgid "Select users" msgstr "ユーザーの選択" -#: users/serializers/user.py:259 +#: users/serializers/user.py:260 msgid "For security, only list several users" msgstr "セキュリティのために、複数のユーザーのみをリストします" -#: users/serializers/user.py:294 +#: users/serializers/user.py:295 msgid "name not unique" msgstr "名前が一意ではない" diff --git a/apps/locale/zh/LC_MESSAGES/django.mo b/apps/locale/zh/LC_MESSAGES/django.mo index f1dae84be..a0958caa0 100644 --- a/apps/locale/zh/LC_MESSAGES/django.mo +++ b/apps/locale/zh/LC_MESSAGES/django.mo @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c5ff75df4d230b21b28e74f94fcbf56801f85cecc2dfba647e69182acf39295f -size 103945 +oid sha256:521d1a529b430f1ac6a519f9c659abe79f25fc9b05a03519f4abe945ae2d1972 +size 103946 diff --git a/apps/locale/zh/LC_MESSAGES/django.po b/apps/locale/zh/LC_MESSAGES/django.po index 055027668..33f0febc8 100644 --- a/apps/locale/zh/LC_MESSAGES/django.po +++ b/apps/locale/zh/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: JumpServer 0.3.3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-06-30 15:51+0800\n" +"POT-Creation-Date: 2022-07-01 19:05+0800\n" "PO-Revision-Date: 2021-05-20 10:54+0800\n" "Last-Translator: ibuler \n" "Language-Team: JumpServer team\n" @@ -209,7 +209,7 @@ msgid "Unsupported protocols: {}" msgstr "不支持的协议: {}" #: acls/serializers/login_asset_acl.py:98 -#: tickets/serializers/ticket/ticket.py:65 +#: tickets/serializers/ticket/ticket.py:78 msgid "The organization `{}` does not exist" msgstr "组织 `{}` 不存在" @@ -339,7 +339,7 @@ msgstr "类别名称" #: applications/serializers/application.py:102 #: assets/serializers/cmd_filter.py:34 assets/serializers/system_user.py:34 #: audits/serializers.py:29 perms/serializers/application/permission.py:19 -#: tickets/serializers/flow.py:48 tickets/serializers/ticket/ticket.py:16 +#: tickets/serializers/flow.py:48 tickets/serializers/ticket/ticket.py:17 msgid "Type display" msgstr "类型名称" @@ -580,6 +580,7 @@ msgstr "节点" #: assets/models/asset.py:219 assets/models/cmd_filter.py:47 #: assets/models/domain.py:65 assets/models/label.py:22 +#: users/serializers/user.py:145 msgid "Is active" msgstr "激活" @@ -1520,7 +1521,7 @@ msgstr "用户登录日志" msgid "Operate display" msgstr "操作名称" -#: audits/serializers.py:30 tickets/serializers/ticket/ticket.py:17 +#: audits/serializers.py:30 tickets/serializers/ticket/ticket.py:18 msgid "Status display" msgstr "状态名称" @@ -1932,7 +1933,7 @@ msgstr "等待登录复核处理" #: authentication/errors/const.py:67 msgid "Login confirm ticket was {}" -msgstr "登录复核 {}" +msgstr "登录复核: {}" #: authentication/errors/failed.py:145 msgid "IP is not allowed" @@ -2110,7 +2111,7 @@ msgstr "绑定提醒" #: perms/serializers/application/permission.py:20 #: perms/serializers/application/permission.py:41 #: perms/serializers/asset/permission.py:19 -#: perms/serializers/asset/permission.py:45 users/serializers/user.py:145 +#: perms/serializers/asset/permission.py:45 users/serializers/user.py:146 msgid "Is valid" msgstr "账号是否有效" @@ -2535,7 +2536,7 @@ msgstr "对象" msgid "The file content overflowed (The maximum length `{}` bytes)" msgstr "文件内容太大 (最大长度 `{}` 字节)" -#: common/drf/parsers/base.py:153 +#: common/drf/parsers/base.py:159 msgid "Parse file error: {}" msgstr "解析文件错误: {}" @@ -2909,7 +2910,7 @@ msgstr "组织管理" #: orgs/mixins/models.py:46 orgs/mixins/serializers.py:25 orgs/models.py:80 #: orgs/models.py:211 rbac/const.py:7 rbac/models/rolebinding.py:48 #: rbac/serializers/rolebinding.py:40 settings/serializers/auth/ldap.py:62 -#: tickets/models/ticket/general.py:290 tickets/serializers/ticket/ticket.py:51 +#: tickets/models/ticket/general.py:290 tickets/serializers/ticket/ticket.py:64 msgid "Organization" msgstr "组织" @@ -3046,7 +3047,7 @@ msgstr "组织 ({}) 的应用授权" #: perms/serializers/application/permission.py:40 #: perms/serializers/asset/permission.py:20 #: perms/serializers/asset/permission.py:44 users/serializers/user.py:87 -#: users/serializers/user.py:147 +#: users/serializers/user.py:148 msgid "Is expired" msgstr "已过期" @@ -5333,7 +5334,7 @@ msgstr "过期时间要大于开始时间" msgid "Permission named `{}` already exists" msgstr "授权名称 `{}` 已存在" -#: tickets/serializers/ticket/ticket.py:76 +#: tickets/serializers/ticket/ticket.py:89 msgid "The ticket flow `{}` does not exist" msgstr "工单流程 `{}` 不存在" @@ -5502,7 +5503,7 @@ msgstr "强制启用" msgid "Local" msgstr "数据库" -#: users/models/user.py:673 users/serializers/user.py:146 +#: users/models/user.py:673 users/serializers/user.py:147 msgid "Is service account" msgstr "服务账号" @@ -5647,63 +5648,63 @@ msgstr "登录被阻塞" msgid "Can public key authentication" msgstr "能否公钥认证" -#: users/serializers/user.py:148 +#: users/serializers/user.py:149 msgid "Avatar url" msgstr "头像路径" -#: users/serializers/user.py:150 +#: users/serializers/user.py:151 msgid "Groups name" msgstr "用户组名" -#: users/serializers/user.py:151 +#: users/serializers/user.py:152 msgid "Source name" msgstr "用户来源名" -#: users/serializers/user.py:152 +#: users/serializers/user.py:153 msgid "Organization role name" msgstr "组织角色名称" -#: users/serializers/user.py:153 +#: users/serializers/user.py:154 msgid "Super role name" msgstr "超级角色名称" -#: users/serializers/user.py:154 +#: users/serializers/user.py:155 msgid "Total role name" msgstr "汇总角色名称" -#: users/serializers/user.py:156 +#: users/serializers/user.py:157 msgid "Is wecom bound" msgstr "是否绑定了企业微信" -#: users/serializers/user.py:157 +#: users/serializers/user.py:158 msgid "Is dingtalk bound" msgstr "是否绑定了钉钉" -#: users/serializers/user.py:158 +#: users/serializers/user.py:159 msgid "Is feishu bound" msgstr "是否绑定了飞书" -#: users/serializers/user.py:159 +#: users/serializers/user.py:160 msgid "Is OTP bound" msgstr "是否绑定了虚拟 MFA" -#: users/serializers/user.py:161 +#: users/serializers/user.py:162 msgid "System role name" msgstr "系统角色名称" -#: users/serializers/user.py:201 +#: users/serializers/user.py:202 msgid "User cannot self-update fields: {}" msgstr "用户不能更新自己的字段: {}" -#: users/serializers/user.py:258 +#: users/serializers/user.py:259 msgid "Select users" msgstr "选择用户" -#: users/serializers/user.py:259 +#: users/serializers/user.py:260 msgid "For security, only list several users" msgstr "为了安全,仅列出几个用户" -#: users/serializers/user.py:294 +#: users/serializers/user.py:295 msgid "name not unique" msgstr "名称重复" diff --git a/apps/tickets/serializers/ticket/ticket.py b/apps/tickets/serializers/ticket/ticket.py index 5b71cb783..2af3811ca 100644 --- a/apps/tickets/serializers/ticket/ticket.py +++ b/apps/tickets/serializers/ticket/ticket.py @@ -6,6 +6,7 @@ from rest_framework import serializers from orgs.models import Organization from orgs.mixins.serializers import OrgResourceModelSerializerMixin from tickets.models import Ticket, TicketFlow +from tickets.const import TicketType __all__ = [ 'TicketDisplaySerializer', 'TicketApplySerializer', 'TicketListSerializer' @@ -28,6 +29,18 @@ class TicketSerializer(OrgResourceModelSerializerMixin): fields_fk = ['applicant', ] fields = fields_small + fields_fk + def __init__(self, *args, **kwargs): + super().__init__(*args, **kwargs) + self.set_type_choices() + + def set_type_choices(self): + tp = self.fields.get('type') + if not tp: + return + choices = tp._choices + choices.pop(TicketType.general, None) + tp._choices = choices + class TicketListSerializer(TicketSerializer): class Meta: