bding 1 年之前
父节点
当前提交
8930dda65d
共有 51 个文件被更改,包括 832 次插入494 次删除
  1. 1 1
      src/components/todo/roadShowFeedbackDia.vue
  2. 4 0
      src/lang/commonLang.js
  3. 10 0
      src/lang/modules/ReportManagement/AuthorManagement.js
  4. 135 2
      src/lang/modules/ReportManagement/CategoryList.js
  5. 16 0
      src/lang/modules/ReportManagement/ReportList.js
  6. 98 55
      src/lang/modules/ReportManagement/SmartReport.js
  7. 4 0
      src/lang/modules/ReportManagement/indexEn.js
  8. 4 0
      src/lang/modules/ReportManagement/indexZh.js
  9. 6 0
      src/lang/modules/Slides/commonLang.js
  10. 1 1
      src/lang/modules/Slides/indexZh.js
  11. 5 0
      src/lang/modules/Slides/pptMsg.js
  12. 61 9
      src/lang/modules/Slides/pptPresent.js
  13. 1 1
      src/views/classify_manage/classifyEnlist.vue
  14. 173 170
      src/views/classify_manage/classifylist.vue
  15. 1 1
      src/views/dataEntry_manage/dataList.vue
  16. 1 1
      src/views/dataEntry_manage/targetList.vue
  17. 1 1
      src/views/dataEntry_manage/thirdBase/DatabankBase.vue
  18. 34 27
      src/views/ppt_manage/newVersion/components/ContextMenu.vue
  19. 4 4
      src/views/ppt_manage/newVersion/components/IndexItem.vue
  20. 1 1
      src/views/ppt_manage/newVersion/components/catalog/pptContent.vue
  21. 1 1
      src/views/ppt_manage/newVersion/components/catalog/pptContentEn.vue
  22. 1 1
      src/views/ppt_manage/newVersion/components/catalog/pptContentOld.vue
  23. 2 2
      src/views/ppt_manage/newVersion/components/editor/ChooseCoverNew.vue
  24. 9 7
      src/views/ppt_manage/newVersion/components/editor/DeletePageDialog.vue
  25. 3 3
      src/views/ppt_manage/newVersion/components/editor/InsertCharts.vue
  26. 8 8
      src/views/ppt_manage/newVersion/components/editor/InsertPageDialog.vue
  27. 1 1
      src/views/ppt_manage/newVersion/components/editor/InsertSemantics.vue
  28. 4 4
      src/views/ppt_manage/newVersion/components/formatEl/ChartEl.vue
  29. 1 1
      src/views/ppt_manage/newVersion/components/formatEl/ImageEl.vue
  30. 1 1
      src/views/ppt_manage/newVersion/components/formatEl/SheetEl.vue
  31. 7 2
      src/views/ppt_manage/newVersion/components/formatEl/TextEl.vue
  32. 1 1
      src/views/ppt_manage/newVersion/components/formatPage/mixins.js
  33. 10 5
      src/views/ppt_manage/newVersion/components/layer/Element/ShapeContextMenu.vue
  34. 9 5
      src/views/ppt_manage/newVersion/components/layer/Element/shapeMixin.js
  35. 9 9
      src/views/ppt_manage/newVersion/components/layer/layerEditTool.vue
  36. 10 7
      src/views/ppt_manage/newVersion/components/layer/shapePreview.vue
  37. 3 1
      src/views/ppt_manage/newVersion/pptCatalog.vue
  38. 6 4
      src/views/ppt_manage/newVersion/pptEditor.vue
  39. 3 1
      src/views/ppt_manage/newVersion/pptEnCatalog.vue
  40. 6 4
      src/views/ppt_manage/newVersion/pptEnEditor.vue
  41. 23 13
      src/views/ppt_manage/newVersion/pptEnPresent.vue
  42. 26 22
      src/views/ppt_manage/newVersion/pptEnPublish.vue
  43. 23 19
      src/views/ppt_manage/newVersion/pptPresent.vue
  44. 24 22
      src/views/ppt_manage/newVersion/pptPublish.vue
  45. 1 1
      src/views/ppt_manage/pptlist.vue
  46. 8 4
      src/views/report_manage/reportAuthor.vue
  47. 2 2
      src/views/report_manage/reportVariety.vue
  48. 65 65
      src/views/report_manage/reportlist.vue
  49. 2 2
      src/views/smartReport/reportList.vue
  50. 1 1
      src/views/system_manage/departManage.vue
  51. 1 1
      src/views/system_manage/roleManage.vue

+ 1 - 1
src/components/todo/roadShowFeedbackDia.vue

@@ -19,7 +19,7 @@
         :data="feedbackList"
         height="60vh"
         v-loading="tableLoading"
-        element-loading-text="数据加载中..." 
+        :element-loading-text="$t('Table.data_loading')"  
         style="box-shadow: 0px 3px 6px rgba(155, 170, 219, 0.2);margin-top:20px;"
         border
       >

+ 4 - 0
src/lang/commonLang.js

@@ -83,6 +83,10 @@ export default {
       en: "Publish Time",
       zh: "发布时间",
     },
+    data_loading: {
+      en: "Data Loading",
+      zh: "数据加载中...",
+    },
   },
   Confirm: {
     prompt: {

+ 10 - 0
src/lang/modules/ReportManagement/AuthorManagement.js

@@ -20,6 +20,12 @@ export const AuthorManagementEn = {
   delete_info_msg: "Deletion is irreversible. Are you sure you want to delete this author's name?",
   delete_error_msg: "This author's name is associated with reports and cannot be deleted.",
   delete_success_msg: "Delete successful",
+  english_report_tab: "English research report",
+  chinese_report_tab: "Chinese research report",
+  research_report_type: "Research report type",
+  research_report_type_select: "Please select the type of research report",
+
+
 };
 
 /* 中文 */
@@ -40,6 +46,10 @@ export const AuthorManagementZh = {
   delete_info_msg: "删除不可恢复,确认删除该作者名称吗?",
   delete_error_msg: "该作者名称有关联报告,不允许删除",
   delete_success_msg: "删除成功",
+  english_report_tab: "英文研报",
+  chinese_report_tab: "中文研报",
+  research_report_type: "研报类型",
+  research_report_type_select: "请选择研报类型",
 };
 
 /*

+ 135 - 2
src/lang/modules/ReportManagement/CategoryList.js

@@ -3,7 +3,140 @@
  */
 
 /* 英文 */
-export const CategoryListZh = {};
+export const CategoryListEn = {
+  chinese_tabs: "Chinese Classification",
+  english_tabs: "English research reports",
+  add_category_btn: "Add category",
+  edit_category_btn: "Edit Category",
+  category_name_ipt: "Category Name",
+  one_category_table: "First-level category",
+  two_category_table: "Second-level category",
+  configuration_btn: "Permission configuration",
+  settings_chapter_btn: "Chapter Settings",
+  please_input: "Please input",
+  parent_category_label: "Parent category ",
+  subdirectory_label: "Subdirectory",
+  click_to_add_btn: "Click to Add",
+  please_select: "Please Select",
+  category_tag_label: "Category Tag",
+  display_form_label: "Display form",
+  form_list_option: "List ",
+  form_column_option: "Column",
+  form_product_option: "Product",
+  backend_sorting_label: "Backend Sorting",
+  please_number_input: "Please enter a number",
+  page_sorting_label: "FICC page sorting",
+  page_icon_label: "FICC Page Icon",
+  up_page_icon_label: "Upload FICC Page Icon",
+  select_img_btn: "Select Image",
+  collection_report_label: "Collection of Report Illustrations",
+  up_collection_report_lable: "Upload Collection of Report Illustrations",
+  share_link_label: "Share Link Illustrations",
+  up_share_link_label: "Upload Share Link Illustrations",
+  pc_bg_label: "PC Background Color",
+  select_bg_label: "Select a background color",
+  mini_hidden_label: "Mini Program Hidden",
+  related_settings_label: "Related Settings",
+  teleconference_label: "Teleconference",
+  relate_videp_label: "Relate Video with Report",
+  share_desctription_label: "Share Desctription",
+  section_author_label: "Section Author",
+  please_author_ipt: "Please input section author name",
+  author_introduction_label: "Author Introduction",
+  please_author_introduction_ipt: "Please input author introduction ",
+  author_title_label: "Author Title",
+  section_introduction_label: "Section Introduction",
+  please_upload_label: "Please upload list background image",
+  homepage_illustrations_label: "Homepage Illustrations",
+  up_homepage_illustrations: "Please Upload Homepage Illustrations",
+  report_illustrations_label: "Report Illustrations",
+  up_report_illustrations: "Please upload report illustrations",
+  column_illustration_label: "Column Illustration",
+  up_scolumn_illustration: "Please upload column illustration",
+  banner_head_label: "Head banner ",
+  up_banner_head: "Please upload head banner",
+  img_author_label: "Image",
+  up_img_author: "Please upload author image",
+  list_background_image_label: "List Background Image",
+  up_list_background_image: "Please upload list background image",
+  please_input_name: "Please input category name",
+  please_select_category: "Please select a parent category",
+  please_input_introduction: "Please enter the category introduction",
+  please_input_description: "Please enter a classification description",
+  please_input_column_introduction: "Please enter the column introduction",
+  please_classification_label: "Please enter a classification label",
+  please_display_format: "Please choose the display format",
+  blue_color: "blue",
+  green_color: "green",
+  red_color: "red",
+};
 
 /* 中文 */
-export const CategoryListEn = {};
+export const CategoryListZh = {
+  chinese_tabs: "中文分类",
+  english_tabs: "英文分类",
+  add_category_btn: "添加分类",
+  edit_category_btn: "编辑分类",
+  category_name_ipt: "分类名称",
+  category_name_ipt: "分类名称",
+  one_category_table: "一级分类",
+  two_category_table: "二级分类",
+  configuration_btn: "权限配置",
+  settings_chapter_btn: "章节设置",
+  please_input: "请输入",
+  parent_category_label: "上级分类",
+  subdirectory_label: "子目录",
+  click_to_add_btn: "点击新增",
+  please_select: "请选择",
+  category_tag_label: "分类标签",
+  display_form_label: "展示形式",
+  form_list_option: "列表 ",
+  form_column_option: "专栏",
+  form_product_option: "品种",
+  backend_sorting_label: "后台排序",
+  please_number_input: "请输入数字",
+  page_sorting_label: "FICC页排序",
+  page_icon_label: "FICC页Icon",
+  up_page_icon_label: "上传FICC页icon",
+  select_img_btn: "选择图片",
+  collection_report_label: "报告合集配图",
+  up_collection_report_lable: "上传报告合集配图",
+  share_link_label: "分享链接配图",
+  up_share_link_label: "上传分享链接配图",
+  pc_bg_label: "PC端背景颜色",
+  select_bg_label: "选择背景颜色",
+  mini_hidden_label: "小程序端隐藏",
+  related_settings_label: "关联设置",
+  teleconference_label: "报告电话会",
+  relate_videp_label: "视频关联报告",
+  share_desctription_label: "分享描述",
+  section_author_label: "栏目作者",
+  please_author_ipt: "请输入栏目作者",
+  author_introduction_label: "作者简介",
+  please_author_introduction_ipt: "请输入作者简介",
+  author_title_label: "作者头衔",
+  section_introduction_label: "栏目简介",
+  please_upload_label: "请上传列表背景图",
+  homepage_illustrations_label: "首页配图",
+  up_homepage_illustrations: "请上传首页配图",
+  report_illustrations_label: "研报配图",
+  up_report_illustrations: "请上传研报配图",
+  column_illustration_label: "专栏配图",
+  up_scolumn_illustration: "请上传专栏配图",
+  banner_head_label: "头部banner",
+  up_banner_head: "请上传头部banner",
+  img_author_label: "头像",
+  up_img_author: "请上传作者头像",
+  list_background_image_label: "列表背景图",
+  up_list_background_image: "请上传列表背景图",
+  please_input_name: "请输入分类名称",
+  please_select_category: "请选择父级分类",
+  please_input_introduction: "请输入分类简介",
+  please_input_description: "请输入分类描述",
+  please_input_column_introduction: "请输入栏目简介",
+  please_classification_label: "请输入分类标签",
+  please_display_format: "请选择展示形式",
+  blue_color: "蓝色",
+  green_color: "绿色",
+  red_color: "红色",
+};

+ 16 - 0
src/lang/modules/ReportManagement/ReportList.js

@@ -0,0 +1,16 @@
+/**
+ * 研报管理--列表
+ */
+
+/* 英文 */
+export const ReportListEn = {
+  add_morning_weekly_btn: "Add morning/weekly reports",
+  download_data_btn: "Download reading data",
+
+};
+
+/* 中文 */
+export const ReportListZh = {
+  add_morning_weekly_btn: "添加晨报/周报",
+  download_data_btn: "下载阅读数据",
+};

+ 98 - 55
src/lang/modules/ReportManagement/SmartReport.js

@@ -4,64 +4,107 @@
 
 /* 英文 */
 export const SmartReportEn = {
-  smart_add_report:'Add report',
-  smart_filter_options:'Filter options',
-  smart_publish_time:'Publish Time',
-  smart_approval_time:'Approval Time',
-  smart_update_time:'Update Time',
-  smart_update_frequency_filter:'Update frequency filter',
-  smart_annually:'Annually',
-  smart_semi_annually:'Semi-annually',
-  smart_quarterly:'Quarterly',
-  smart_monthly:'Monthly',
-  smart_bi_weekly:'Bi-weekly',
-  smart_weekly:'Weekly',
-  smart_daily:'Daily',
-  smart_irregularly:'Irregularly',
-  smart_type_filtering:'Type Filtering',
-  smart_status_filtering:'Status Filtering',
-  smart_unpublished:'Unpublished',
-  smart_published:'Published',
-  smart_pending:'Pending',
-  smart_awaiting_approval:'Awaiting Approval',
-  smart_rejected:'Rejected',
-  smart_approved:'Approved',
-  smart_filtering_criteria:'Filtering criteria',
-  smart_title_creator_updater:'Title/Creator/Updater',
-  smart_report_title:'Report title',
-
+  smart_add_report: "Add report",
+  smart_filter_options: "Filter options",
+  smart_publish_time: "Publish Time",
+  smart_approval_time: "Approval Time",
+  smart_update_time: "Update Time",
+  smart_update_frequency_filter: "Update frequency filter",
+  smart_annually: "Annually",
+  smart_semi_annually: "Semi-annually",
+  smart_quarterly: "Quarterly",
+  smart_monthly: "Monthly",
+  smart_bi_weekly: "Bi-weekly",
+  smart_weekly: "Weekly",
+  smart_daily: "Daily",
+  smart_irregularly: "Irregularly",
+  smart_type_filtering: "Type Filtering",
+  smart_status_filtering: "Status Filtering",
+  smart_unpublished: "Unpublished",
+  smart_published: "Published",
+  smart_pending: "Pending",
+  smart_awaiting_approval: "Awaiting Approval",
+  smart_rejected: "Rejected",
+  smart_approved: "Approved",
+  smart_filtering_criteria: "Filtering criteria",
+  smart_title_creator_updater: "Title/Creator/Updater",
+  smart_report_title: "Report title",
+  smart_select_time_type_btn: "Select time type",
+  smart_notification_status_btn: "Notification Status",
+  smart_notification_pushed: "Notification Yet Pushed",
+  smart_notification_pushed: "Notification Pushed",
+  smart_filtering_criteria_btn: "Filtering criteria",
+  smart_title_creator_btn: "Title/Creator",
+  smart_report_type: "Report type",
+  smart_creator_btn: "Creator",
+  smart_release_approval_time: "Release/Approval Time",
+  smart_report_push_time_btn: "Report push time",
+  smart_issue_number_btn: "Issue number",
+  smart_frequency_btn: "Frequency",
+  smart_withdraw_btn: "Withdraw",
+  smart_push_notification_btn: "Push Notification",
+  smart_audio_upload_btn: "Audio Upload",
+  smart_audio_download_btn: "Audio Download",
+  smart_please_content_ipt: "Please enter the note content",
+  smart_audio_upload_btn: "Audio Upload",
+  smart_upload_recording_btn: "Upload report recording",
+  smart_release_prompt_btn: "Release prompt",
+  smart_template_msg: "The report has been set to be released regularly. Do you want to publish the report immediately and push the template message?",
+  smart_push_template_btn: "Do you want to publish the report immediately and push template messages?",
+  smart_status_table: "status",
 };
 
 /* 中文 */
 export const SmartReportZh = {
-  smart_add_report:'添加研报',
-  smart_filter_options:'筛选项',
-  smart_publish_time:'发布时间',
-  smart_approval_time:'审批时间',
-  smart_update_time:'更新时间',
-  smart_update_frequency_filter:'更新频度筛选',
-  smart_annually:'年度',
-  smart_semi_annually:'半年度',
-  smart_quarterly:'季度',
-  smart_monthly:'月度',
-  smart_bi_weekly:'双周度',
-  smart_weekly:'周度',
-  smart_daily:'日度',
-  smart_irregularly:'不定时',
-  smart_type_filtering:'类型筛选',
-  smart_status_filtering:'状态筛选',
-  smart_unpublished:'未发布',
-  smart_published:'已发布',
-  smart_pending:'待提交',
-  smart_awaiting_approval:'待审批',
-  smart_rejected:'已驳回',
-  smart_approved:'已通过',
-  smart_filtering_criteria:'筛选条件',
-  smart_title_creator_updater:'标题/创建人/更新人',
-  smart_report_title:'报告标题',
-  
+  smart_add_report: "添加研报",
+  smart_filter_options: "筛选项",
+  smart_publish_time: "发布时间",
+  smart_approval_time: "审批时间",
+  smart_update_time: "更新时间",
+  smart_update_frequency_filter: "更新频度筛选",
+  smart_annually: "年度",
+  smart_semi_annually: "半年度",
+  smart_quarterly: "季度",
+  smart_monthly: "月度",
+  smart_bi_weekly: "双周度",
+  smart_weekly: "周度",
+  smart_daily: "日度",
+  smart_irregularly: "不定时",
+  smart_type_filtering: "类型筛选",
+  smart_status_filtering: "状态筛选",
+  smart_unpublished: "未发布",
+  smart_published: "已发布",
+  smart_pending: "待提交",
+  smart_awaiting_approval: "待审批",
+  smart_rejected: "已驳回",
+  smart_approved: "已通过",
+  smart_filtering_criteria: "筛选条件",
+  smart_title_creator_updater: "标题/创建人/更新人",
+  smart_report_title: "报告标题",
+  smart_select_time_type_btn: "选择时间类型",
+  smart_notification_status_btn: "推送消息状态",
+  smart_notification_pushed: "未推送消息",
+  smart_notification_pushed: "已推送消息",
+  smart_filtering_criteria_btn: "筛选条件",
+  smart_title_creator_btn: "标题 / 创建人",
+  smart_report_type: "报告类型",
+  smart_creator_btn: "创建人",
+  smart_release_approval_time: "发布/审批时间",
+  smart_report_push_time_btn: "报告推送时间",
+  smart_issue_number_btn: "期数",
+  smart_frequency_btn: "频度",
+  smart_withdraw_btn: "撤销",
+  smart_push_notification_btn: "推送消息",
+  smart_audio_upload_btn: "音频上传",
+  smart_audio_download_btn: "音频下载",
+  smart_please_content_ipt: "请输入备注内容",
+  smart_audio_upload_btn: "音频上",
+  smart_upload_recording_btn: "上传报告录音",
+  smart_release_prompt_btn: "发布提示",
+  smart_template_msg: "该报告已设置定时发布,是否立即发布报告并推送模板消息?",
+  smart_push_template_btn: "是否立即发布报告,并推送模板消息?",
+  smart_status_table: "状态",
 };
 
-/**
- * $t('ReportManage.smart_add_report')
-*/
+/**t('ReportManage.smart_add_report')
+ */

+ 4 - 0
src/lang/modules/ReportManagement/indexEn.js

@@ -2,6 +2,8 @@ import { CloudPageEn } from "./CloudPage";
 import { CommodityConfigurationEn } from "./CommodityConfiguration";
 import { AuthorManagementEn } from "./AuthorManagement";
 import { SmartReportEn } from "./SmartReport";
+import { CategoryListEn } from "./CategoryList";
+import { ReportListEn } from "./ReportList";
 
 export default {
   ReportManage: {
@@ -16,5 +18,7 @@ export default {
     CommodityConfiguration: CommodityConfigurationEn,
     AuthorManagement: AuthorManagementEn,
     ...SmartReportEn,
+    CategoryList: CategoryListEn,
+    ReportList: ReportListEn,
   },
 };

+ 4 - 0
src/lang/modules/ReportManagement/indexZh.js

@@ -3,6 +3,8 @@ import { CloudPageZh } from "./CloudPage";
 import { CommodityConfigurationZh } from "./CommodityConfiguration";
 import { AuthorManagementZh } from "./AuthorManagement";
 import { SmartReportZh } from "./SmartReport";
+import { CategoryListZh } from "./CategoryList";
+import { ReportListZh } from "./ReportList";
 
 export default {
   ReportManage: {
@@ -17,5 +19,7 @@ export default {
     CommodityConfiguration: CommodityConfigurationZh,
     AuthorManagement: AuthorManagementZh,
     ...SmartReportZh,
+    CategoryList: CategoryListZh,
+    ReportList: ReportListZh,
   },
 };

+ 6 - 0
src/lang/modules/Slides/commonLang.js

@@ -22,6 +22,9 @@ export const operationsEn = {
   operations_switch: "Switch template",
   paste_before_slide: "Paste before this slide",
   paste_after_slide: "Paste after this slide",
+  please_delete_existing_chartsmsg: "There is no place left, please delete existing charts/images",
+  cover_info: "cover",
+  back_cover_info: "Back cover",
 };
 
 /* 中文 */
@@ -44,4 +47,7 @@ export const operationsZh = {
   operations_switch: "切换模板",
   paste_before_slide: "粘贴到此页前",
   paste_after_slide: "粘贴到此页后",
+  please_delete_existing_chartsmsg: "已无位置,请删除现有图表/图片",
+  cover_info: "封面",
+  back_cover_info: "封底",
 };

+ 1 - 1
src/lang/modules/Slides/indexZh.js

@@ -9,7 +9,7 @@ import { messageZh } from "./pptMsg";
 
 /* 中文 */
 export default {
-  SlidesZh: {
+  Slides: {
     ...listZh,
     ...operationsZh,
     ...presentZh,

+ 5 - 0
src/lang/modules/Slides/pptMsg.js

@@ -13,6 +13,9 @@ export const messageEn = {
     `<p>1. Ctrl + Left Mouse Click to select PPT slides, supports multiple selection;</p>` +
     `<p>2. Choose the desired location to copy or cut the PPT slides, click on the more options for the selected PPT slide, and choose "Paste Before This Slide" or "Paste After This Slide."</p>`,
   msg_affirmative: "Affirmative",
+  is_delete_ppt_msg:'Are you sure to delete the ppt on this page',
+  generating_powerPoint_msg:'Generating PowerPoint'
+
 };
 
 /* 中文 */
@@ -26,5 +29,7 @@ export const messageZh = {
     `<p>1、ctrl+鼠标左键,选择PPT页,支持多选;</p>` +
     `<p>2、选择所要复制或剪切的PPT页位置,点击PPT页的更多操作项,选择“粘贴到此页前”或“粘贴到此页后”。</p>`,
   msg_affirmative: "知道了",
+  is_delete_ppt_msg:'确定删除该页ppt吗',
+  generating_powerPoint_msg:'生成ppt中...'
 };
 // Slides

+ 61 - 9
src/lang/modules/Slides/pptPresent.js

@@ -33,7 +33,7 @@ export const presentEn = {
   line_settings: "Line settings",
   outline_element: "Outline settings",
   text_element: "Text settings",
-  batch_deletion_successful: "批量删除成功",
+  batch_deletion_successful: "Batch deletion successfu",
   retrieving_ppt_data: "Retrieving PPT data",
   loading_urgently: "Loading urgently",
   convert_to_report_dlg: "PPT convert to report",
@@ -55,10 +55,36 @@ export const presentEn = {
   specify_members_radio: "Specify members",
   please_select_researcher: "Please select a researcher",
   please_select_directory: "Please select a directory",
-  input_text_cover:'Input text',
-  text_settings_cover:'Text settings',
-  please_select_settings_cover:'Please select the text element.',
-  change_the_template_cover:'Change the template',
+  input_text_cover: "Input text",
+  text_settings_cover: "Text settings",
+  please_select_settings_cover: "Please select the text element.",
+  change_the_template_cover: "Change the template",
+  untitled_title: "Untitled",
+  please_select_slide: "Please select PPT slide",
+  chart_category_name_select: "Chart Category Name",
+  insert_charts_tooltip: "This operation will import all charts under the selected chart category in bulk.",
+  no_data_empty: "No data",
+  unselected_ppt_slides: "Unselected PPT slides",
+  selected_ppt_slides_transfer: "Selected slides",
+  hold_down_drag_tooltip: "Hold down drag",
+  add_to_my_gallery_tooltip: "Add to my gallery",
+  copy_name_tooltip: "Copy Name",
+  source_info: "source",
+  click_input_text_content: "Click to input text content",
+  delete_element_contextmenus: "Delete Element",
+  copy_element_contextmenus: "Copy  Element",
+  border_thickness_tooltip: "Border thickness",
+  border_style_tooltip: "Border style",
+  border_color_tooltip: "Border color",
+  fill_color_tooltip: "Fill color",
+  line_thickness_tooltip: "Line thickness",
+  line_style_tooltip: "Line style",
+  line_srrow_tooltip: "Line arrow",
+  line_color_tooltip: "Line color",
+  line_default: "Line",
+  exit_full_screen_default: "Exit Full Screen",
+  next_sheet_default: "Next sheet",
+  previous_sheet_default: "Previous sheet",
 };
 
 /* 中文 */
@@ -114,10 +140,36 @@ export const presentZh = {
   specify_members_radio: "指定成员",
   please_select_researcher: "请选择研究员",
   please_select_directory_msg: "请选择目录",
-  input_text_cover:'插入文本',
-  text_settings_cover:'文本设置',
-  please_select_settings_cover:'请选择文本元素',
-  change_the_template_cover:'换一个模板',
+  input_text_cover: "插入文本",
+  text_settings_cover: "文本设置",
+  please_select_settings_cover: "请选择文本元素",
+  change_the_template_cover: "换一个模板",
+  untitled_title: "无标题",
+  please_select_slide: "请选择PPT页",
+  chart_category_name_select: "图分类名称",
+  insert_charts_tooltip: "该操作将批量导入所选图分类下所有图表",
+  no_data_empty: "无数据",
+  unselected_ppt_slides: "未选PPT页",
+  selected_ppt_slides_transfer: "已选PPT页",
+  hold_down_drag_tooltip: "按住拖动 Hold down drag",
+  add_to_my_gallery_tooltip: "添加到我的图库 Add to my gallery",
+  copy_name_tooltip: "复制名称 Copy Name",
+  source_info: "来源 source",
+  click_input_text_content: "点击输入文本内容",
+  delete_element_contextmenus: "删除元素",
+  copy_element_contextmenus: "复制元素",
+  border_thickness_tooltip: "边框粗细",
+  border_style_tooltip: "边框样式",
+  border_color_tooltip: "边框颜色",
+  fill_color_tooltip: "填充颜色",
+  line_thickness_tooltip: "线条粗细",
+  line_style_tooltip: "线条样式",
+  line_srrow_tooltip: "线条箭头",
+  line_color_tooltip: "线条颜色",
+  line_default: "直线",
+  exit_full_screen_default: "退出全屏",
+  next_sheet_default: "下一张",
+  previous_sheet_default: "上一张",
 };
 
 /**

+ 1 - 1
src/views/classify_manage/classifyEnlist.vue

@@ -38,7 +38,7 @@
         :data="tableData"
         v-loading="dataLoading"
         row-class-name="tableRowClassName"
-        element-loading-text="数据加载中..."
+        :element-loading-text="$t('Table.data_loading')" 
         :default-expand-all="isexpand"
         row-key="Id"
         style="border: 1px solid #dcdfe6"

+ 173 - 170
src/views/classify_manage/classifylist.vue

@@ -3,16 +3,16 @@
 		<el-card class="box-card">
 			<div slot="header" class="header">
 				<div class="type-box">
-					<span class="act" v-permission="permissionBtn.classifyBtn.classifyList_cnClassify">中文分类</span>
-					<span @click="$emit('typeChange','2')" v-permission="permissionBtn.enClassifyBtn.classifyList_enClassify">英文分类</span>
+					<span class="act" v-permission="permissionBtn.classifyBtn.classifyList_cnClassify">{{this.$t('ReportManage.CategoryList.chinese_tabs')}}</span>
+					<span @click="$emit('typeChange','2')" v-permission="permissionBtn.enClassifyBtn.classifyList_enClassify">{{this.$t('ReportManage.CategoryList.english_tabs')}}</span>
 				</div>
 				<el-form :inline="true" :model="searchform" @submit.native.prevent>
 					<el-form-item label="">
 						<el-button v-permission="permissionBtn.classifyBtn.classifyList_cnClassify_classifyAdd"
-                            type="primary" size="small" @click="aeDialogTrue">添加分类</el-button>
+                            type="primary" size="small" @click="aeDialogTrue">{{$t('ReportManage.CategoryList.add_category_btn')}}</el-button>
 					</el-form-item>
 		  			<el-form-item>
-						<el-input placeholder="分类名称" @change="search" v-model="searchform.key_word" clearable size="small">
+						<el-input :placeholder="$t('ReportManage.CategoryList.category_name_ipt')" @change="search" v-model="searchform.key_word" clearable size="small">
 							<i class="el-icon-search" slot="prefix" @click="search"></i>
 						</el-input>
 					</el-form-item>
@@ -20,39 +20,39 @@
 			</div>
 			<template>
 				<el-table v-if="isTableShow"
-                    style="border:1px solid #eaeaea;" :data="tableData" v-loading="listLoading" :row-class-name="tableRowClassName" element-loading-text="数据加载中..." :default-expand-all='isexpand' row-key="Id" :tree-props="{children:'children',hasChildren:'hasChildren'}">
+                    style="border:1px solid #eaeaea;" :data="tableData" v-loading="listLoading" :row-class-name="tableRowClassName" :element-loading-text="$t('Table.data_loading')" :default-expand-all='isexpand' row-key="Id" :tree-props="{children:'children',hasChildren:'hasChildren'}">
 					<!-- <el-table-column prop="id" label="序号" width="100px" align="left">
 						<template slot-scope="scope">
 							<span>{{scope.row.ischild?'':scope.row.id}}</span>
 						</template>
 					</el-table-column> -->
-					<el-table-column prop="classify_name" label="一级分类">
+					<el-table-column prop="classify_name" :label="$t('ReportManage.CategoryList.one_category_table')">
 						<template slot-scope="scope">
 							<span>{{scope.row.ischild?'':scope.row.ClassifyName}}</span>
 							<img style="width:16px;position: relative;top:3px" src="../../assets/img/icons/ppt-icon.png" alt="" v-if="!scope.row.ischild&&scope.row.HasTeleconference">
 						</template>
 					</el-table-column>
-					<el-table-column prop="classify_name" label="二级分类">
+					<el-table-column prop="classify_name" :label="$t('ReportManage.CategoryList.two_category_table')">
 						<template slot-scope="scope">
 							<span>{{scope.row.ischild?scope.row.ClassifyName:''}}</span>
 							<img style="width:16px;position: relative;top:3px" src="../../assets/img/icons/ppt-icon.png" alt="" v-if="scope.row.ischild&&scope.row.HasTeleconference">
 						</template>
 					</el-table-column>
-					<el-table-column label="操作" align="center">
+					<el-table-column :label="$t('Table.column_operations')" align="center">
 						<template slot-scope="scope">
 							<div style="color:#4099ef; font-size:24px;">
 								<span class="editsty" v-permission="permissionBtn.classifyBtn.classifyList_cnClassify_chapterSetting"
-                                    v-if="scope.row.ClassifyName=='晨报' || scope.row.ClassifyName=='周报'" @click="chapterSetting(scope.row)">章节设置</span>
+                                    v-if="scope.row.ClassifyName=='晨报' || scope.row.ClassifyName=='周报'" @click="chapterSetting(scope.row)">{{$t('ReportManage.CategoryList.settings_chapter_btn')}}</span>
 								<span class="editsty" v-permission="permissionBtn.classifyBtn.classifyList_cnClassify_authSetting"
-                                    :class="{'editedsty' : editedItems.includes(scope.row.Id)}" v-if="scope.row.ischild" @click="configitem(scope.row)">权限配置</span>
+                                    :class="{'editedsty' : editedItems.includes(scope.row.Id)}" v-if="scope.row.ischild" @click="configitem(scope.row)">{{$t('ReportManage.CategoryList.configuration_btn')}}</span>
 								&nbsp;&nbsp;
 								<!-- <i class="el-icon-edit-outline" @click="edititem(scope.row)"></i> -->
 								<span class="editsty" v-permission="permissionBtn.classifyBtn.classifyList_cnClassify_classifyAdd"
-                                    @click="edititem(scope.row)">编辑</span>
+                                    @click="edititem(scope.row)">{{$t('Table.edit_btn')}}</span>
 								&nbsp;&nbsp;
 								<!-- <i class="el-icon-delete" @click="checkdeleteitem(scope.row)"></i> -->
 								<span v-permission="permissionBtn.classifyBtn.classifyList_cnClassify_classifyDel"
-                                    class="deletesty" @click="checkdeleteitem(scope.row)">删除</span>
+                                    class="deletesty" @click="checkdeleteitem(scope.row)">{{$t('Table.delete_btn')}}</span>
 							</div>
 		  	    		</template>
 					</el-table-column>
@@ -63,17 +63,17 @@
 		  	</el-col>
 		</el-card>
 		<!-- 添加分类弹框 -->
-		<el-dialog :modal-append-to-body='false' :title="isadd?'添加分类':'编辑分类'" :visible.sync="aeDialog" :close-on-click-modal="false" :center="true" v-dialogDrag custom-class="dialogclassLog" width="700px">
+		<el-dialog :modal-append-to-body='false' :title="isadd? $t('ReportManage.CategoryList.add_category_btn') : $t('ReportManage.CategoryList.edit_category_btn') " :visible.sync="aeDialog" :close-on-click-modal="false" :center="true" v-dialogDrag custom-class="dialogclassLog" width="700px">
 			<div slot="title" style="display:flex;alignItems:center;">
 				<img :src="isadd?$icons.add:$icons.edit" style="color:#fff;width:16px;height:16px;marginRight:5px;">
-				<span style="fontSize:16px;">{{isadd?'添加分类':'编辑分类'}}</span>
+				<span style="fontSize:16px;">{{isadd? $t('ReportManage.CategoryList.add_category_btn'): $t('ReportManage.CategoryList.edit_category_btn')}}</span>
 			</div>
 			<el-form :model="aeForm" :rules="aerules" ref="aeForm" label-position="right" label-width="140px" class="aeForm"  @submit.native.prevent>
-				<el-form-item prop="classify_name" label="分类名称">
-					<el-input type="text" v-model="aeForm.classify_name" placeholder="请输入" size="small" style="width:400px;"></el-input>
+				<el-form-item prop="classify_name" :label="$t('ReportManage.CategoryList.category_name_ipt')">
+					<el-input type="text" v-model="aeForm.classify_name" :placeholder="$t('ReportManage.CategoryList.please_input')" size="small" style="width:400px;"></el-input>
 				</el-form-item>
-				<el-form-item prop="parent_id" label="上级分类">
-					<el-select v-model="aeForm.parent_id" placeholder="请选择" size="small" style="width:400px;" @change="parentSelectChange(aeForm.parent_id)">
+				<el-form-item prop="parent_id" :label="$t('ReportManage.CategoryList.parent_category_label')">
+					<el-select v-model="aeForm.parent_id" :placeholder="$t('ReportManage.CategoryList.please_input')" size="small" style="width:400px;" @change="parentSelectChange(aeForm.parent_id)">
 						<el-option label="无" :value="0"></el-option>
 						<el-option v-for="(item,index) in classifyparentArr" :key="index" :label="item.ClassifyName" :value="item.Id"></el-option>
 					</el-select>
@@ -81,7 +81,7 @@
 				<!-- 下面的表单项除了后台排序,都合成一个buttoncode判断:classifyList_cnClassify_childMenu -->
 				<template v-if="permissionBtn.checkPermissionBtn(permissionBtn.classifyBtn.classifyList_cnClassify_childMenu)">
 					<!-- 一级目录子目录 -->
-					<el-form-item label="子目录"
+					<el-form-item :label="$t('ReportManage.CategoryList.subdirectory_label')"
 						v-if="aeForm.parent_id==0&&aeForm.showType==1">
 						<draggable v-model="ClassifyMenuList" animation="300">
 							<div style="display:inline-block;margin-right:5px" v-for="(item,index) in ClassifyMenuList" :key="item">
@@ -116,14 +116,14 @@
 								style="width: 90px;"
 							>
 							</el-input>
-							<el-button v-else size="small" @click="showInput(-1)">+ 点击新增</el-button>
+							<el-button v-else size="small" @click="showInput(-1)">+ {{$t('ReportManage.CategoryList.click_to_add_btn')}}</el-button>
 						</div>
 						
 					</el-form-item>
 					<!-- 二级目录子目录 -->
-					<el-form-item label="子目录" 
+					<el-form-item :label="$t('ReportManage.CategoryList.subdirectory_label')" 
 						v-if="aeForm.parent_id!=0">
-						<el-select v-model="aeForm.ClassifyMenuId"  clearable placeholder="请选择" style="width:400px;">
+						<el-select v-model="aeForm.ClassifyMenuId"  clearable :placeholder="$t('ReportManage.CategoryList.please_select')" style="width:400px;">
 							<el-option 
 								:label="item.MenuName" 
 								:value="item.MenuId" 
@@ -134,143 +134,143 @@
 					</el-form-item>
 				</template>
 				<template v-if="permissionBtn.checkPermissionBtn(permissionBtn.classifyBtn.classifyList_cnClassify_childMenu)">
-					<el-form-item prop="label" label="分类标签" v-if="aeForm.parent_id!=0">
-						<el-input type="textarea" autosize v-model="aeForm.label" placeholder="请输入" size="small" style="width:400px;font-size:14px;"></el-input>
+					<el-form-item prop="label" :label="$t('ReportManage.CategoryList.category_tag_label')" v-if="aeForm.parent_id!=0">
+						<el-input type="textarea" autosize v-model="aeForm.label" :placeholder="$t('ReportManage.CategoryList.please_select')" size="small" style="width:400px;font-size:14px;"></el-input>
 					</el-form-item>
-					<el-form-item label="展示形式"
+					<el-form-item :label="$t('ReportManage.CategoryList.display_form_label')"
 						prop="showType" v-if="aeForm.parent_id==0">
-						<el-select v-model="aeForm.showType" placeholder="请选择" style="width:400px;">
-							<el-option label="列表" :value="1"></el-option>
-							<el-option label="专栏" :value="2"></el-option>
-							<el-option label="品种" :value="3"></el-option>
+						<el-select v-model="aeForm.showType" :placeholder="$t('ReportManage.CategoryList.please_select')" style="width:400px;">
+							<el-option :label="$t('ReportManage.CategoryList.form_list_option')" :value="1"></el-option>
+							<el-option :label="$t('ReportManage.CategoryList.form_column_option')" :value="2"></el-option>
+							<el-option :label="$t('ReportManage.CategoryList.form_product_option')" :value="3"></el-option>
 						</el-select>
 					</el-form-item>
 				</template>
-				<el-form-item label="后台排序"
+				<el-form-item :label="$t('ReportManage.CategoryList.backend_sorting_label')"
                     prop="Sort" v-if="aeForm.parent_id==0&&permissionBtn.checkPermissionBtn(permissionBtn.classifyBtn.classifyList_cnClassify_backSort)">
-					<el-input-number v-model="aeForm.Sort" placeholder="请输入数字"></el-input-number>
+					<el-input-number v-model="aeForm.Sort" :placeholder="$t('ReportManage.CategoryList.please_number_input')"></el-input-number>
 				</el-form-item>
 				<template v-if="permissionBtn.checkPermissionBtn(permissionBtn.classifyBtn.classifyList_cnClassify_childMenu)">
-					<el-form-item label="FICC页排序"
+					<el-form-item :label="$t('ReportManage.CategoryList.page_sorting_label')"
                     prop="YbFiccSort" v-if="aeForm.parent_id==0">
-					<el-input-number v-model="aeForm.YbFiccSort" placeholder="请输入数字"></el-input-number>
+					<el-input-number v-model="aeForm.YbFiccSort" :placeholder="$t('ReportManage.CategoryList.please_number_input')"></el-input-number>
 				</el-form-item>
-				<el-form-item label="FICC页icon"
+				<el-form-item :label="$t('ReportManage.CategoryList.page_icon_label')"
                     v-if="aeForm.parent_id==0" prop="YbFiccIcon">
 					<input type="file" size="small" name="file" @change="fileSelected(6)" id="file6" class="true-file" style="display:none;">
 					<el-input readonly type="text" v-model="aeForm.YbFiccIcon" placeholder="上传FICC页icon" size="medium" style="width:400px;">
-						<el-button slot="append" type="primary" size="mini" @click.native="clickinput(6)">选择图片</el-button>
+						<el-button slot="append" type="primary" size="mini" @click.native="clickinput(6)">{{$t('ReportManage.CategoryList.select_img_btn')}}</el-button>
 					</el-input>
 				</el-form-item>
-				<el-form-item label="报告合集配图"
+				<el-form-item :label="$t('ReportManage.CategoryList.collection_report_label')"
 					v-if="aeForm.parent_id==0&&aeForm.showType!==2" prop="YbRightBanner">
 					<input type="file" size="small" name="file" @change="fileSelected(11)" id="file11" class="true-file" style="display:none;">
-					<el-input readonly type="text" v-model="aeForm.YbRightBanner" placeholder="上传报告合集配图" size="medium" style="width:400px;">
-					  <el-button slot="append" type="primary" size="mini" @click.native="clickinput(11)">选择图片</el-button>
+					<el-input readonly type="text" v-model="aeForm.YbRightBanner" :placeholder="$t('ReportManage.CategoryList.up_collection_report_lable')" size="medium" style="width:400px;">
+					  <el-button slot="append" type="primary" size="mini" @click.native="clickinput(11)">{{$t('ReportManage.CategoryList.select_img_btn')}}</el-button>
 				  </el-input>
 				</el-form-item>
-				<el-form-item label="分享链接配图" 
+				<el-form-item :label="$t('ReportManage.CategoryList.share_link_label')" 
 					prop="YbShareBgImg" v-if="aeForm.parent_id==0">
 					<input type="file" size="small" name="file" @change="fileSelected(10)" id="file10" class="true-file" style="display:none;">
-					<el-input readonly type="text" v-model="aeForm.YbShareBgImg" placeholder="上传分享链接配图" size="medium" style="width:400px;">
-						<el-button slot="append" type="primary" size="mini" @click.native="clickinput(10)">选择图片</el-button>
+					<el-input readonly type="text" v-model="aeForm.YbShareBgImg" :placeholder="$t('ReportManage.CategoryList.up_share_link_label')" size="medium" style="width:400px;">
+						<el-button slot="append" type="primary" size="mini" @click.native="clickinput(10)">{{$t('ReportManage.CategoryList.select_img_btn')}}</el-button>
 					</el-input>
 				</el-form-item>
-				<el-form-item label="PC端背景颜色"
+				<el-form-item :label="$t('ReportManage.CategoryList.pc_bg_label')"
 					prop="YbFiccPcIcon" v-if="aeForm.parent_id==0">
-					<el-select v-model="aeForm.YbFiccPcIcon" placeholder="选择背景颜色" style="width:400px;">
+					<el-select v-model="aeForm.YbFiccPcIcon" :placeholder="$t('ReportManage.CategoryList.select_bg_label')" style="width:400px;">
 						<el-option :label="item.label" :value="item.val" v-for="item in YbFiccPcIconList" :key="item.label"></el-option>
 					</el-select>
 				</el-form-item>
-				<el-form-item label="小程序端隐藏"
+				<el-form-item :label="$t('ReportManage.CategoryList.mini_hidden_label')"
 					prop="IsShow" v-if="aeForm.parent_id==0">
 					<el-switch v-model="aeForm.IsShow" inactive-color="#ededed"></el-switch>
 				</el-form-item>
 				<el-form-item label="PPT转报告" prop="hasTel" v-if="aeForm.parent_id!=0">
-					<el-select v-model="aeForm.hasTel" placeholder="请选择" style="width:400px;">
+					<el-select v-model="aeForm.hasTel" :placeholder="$t('ReportManage.CategoryList.please_select')" style="width:400px;">
 						<el-option label="无" :value="0"></el-option>
 						<el-option label="有" :value="1"></el-option>
 					</el-select>
 				</el-form-item>
-				<el-form-item label="关联设置" 
+				<el-form-item :label="$t('ReportManage.CategoryList.related_settings_label')" 
 					prop="relate" v-if="!['晨报','周报'].includes(aeForm.classify_name)">
-					<el-select v-model="aeForm.relate" multiple placeholder="请选择" style="width:400px;">
-						<el-option label="报告电话会" :value="1"></el-option>
-						<el-option label="视频关联报告" :value="2"></el-option>
+					<el-select v-model="aeForm.relate" multiple :placeholder="$t('ReportManage.CategoryList.please_select')" style="width:400px;">
+						<el-option :label="$t('ReportManage.CategoryList.teleconference_label')" :value="1"></el-option>
+						<el-option :label="$t('ReportManage.CategoryList.relate_videp_label')" :value="2"></el-option>
 					</el-select>
 				</el-form-item>
 				</template>
 				<!-- 这里开始是二级目录选项 -->
 				<template v-if="permissionBtn.checkPermissionBtn(permissionBtn.classifyBtn.classifyList_cnClassify_childMenu)">
-					<el-form-item label="分享描述" v-if="aeForm.parent_id!=0">
-					<el-input type="textarea" autosize v-model="aeForm.descript" placeholder="请输入" size="small" style="width:400px;font-size:14px;"></el-input>
+					<el-form-item :label="$t('ReportManage.CategoryList.share_desctription_label')" v-if="aeForm.parent_id!=0">
+					<el-input type="textarea" autosize v-model="aeForm.descript" :placeholder="$t('ReportManage.CategoryList.please_input')" size="small" style="width:400px;font-size:14px;"></el-input>
 				</el-form-item>
-				<el-form-item label="栏目作者" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="author">
-					<el-input type="text" v-model="aeForm.author" placeholder="请输入" size="small" style="width:400px;"></el-input>
+				<el-form-item :label="$t('ReportManage.CategoryList.section_author_label')" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="author">
+					<el-input type="text" v-model="aeForm.author" :placeholder="$t('ReportManage.CategoryList.please_input')" size="small" style="width:400px;"></el-input>
 				</el-form-item>
-				<el-form-item label="作者简介" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="authorDsec">
-					<el-input type="text" v-model="aeForm.authorDsec" placeholder="请输入" size="small" style="width:400px;"></el-input>
+				<el-form-item :label="$t('ReportManage.CategoryList.author_introduction_label')" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="authorDsec">
+					<el-input type="text" v-model="aeForm.authorDsec" :placeholder="$t('ReportManage.CategoryList.please_input')" size="small" style="width:400px;"></el-input>
 				</el-form-item>
-				<el-form-item label="作者头衔" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="authorTag">
-					<el-input type="text" v-model="aeForm.authorTag" placeholder="请输入" size="small" style="width:400px;"></el-input>
+				<el-form-item :label="$t('ReportManage.CategoryList.author_title_label')" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="authorTag">
+					<el-input type="text" v-model="aeForm.authorTag" :placeholder="$t('ReportManage.CategoryList.please_input')" size="small" style="width:400px;"></el-input>
 				</el-form-item>
-				<el-form-item label="栏目简介" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="classifyDsec">
-					<el-input type="textarea" v-model="aeForm.classifyDsec" placeholder="请输入" size="small" style="width:400px;font-size:14px;" autosize></el-input>
+				<el-form-item :label="$t('ReportManage.CategoryList.section_author_label')" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="classifyDsec">
+					<el-input type="textarea" v-model="aeForm.classifyDsec" :placeholder="$t('ReportManage.CategoryList.please_input')" size="small" style="width:400px;font-size:14px;" autosize></el-input>
 				</el-form-item>
-				<el-form-item label="分享链接配图" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="YbShareBgImg">
+				<el-form-item :label="$t('ReportManage.CategoryList.share_link_label')" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="YbShareBgImg">
 					<input type="file" size="small" name="file" @change="fileSelected(10)" id="file10" class="true-file" style="display:none;">
-					<el-input readonly type="text" v-model="aeForm.YbShareBgImg" placeholder="上传分享链接配图" size="medium" style="width:400px;">
-						<el-button slot="append" type="primary" size="mini" @click.native="clickinput(10)">选择图片</el-button>
+					<el-input readonly type="text" v-model="aeForm.YbShareBgImg" :placeholder="$t('ReportManage.CategoryList.up_share_link_label')" size="medium" style="width:400px;">
+						<el-button slot="append" type="primary" size="mini" @click.native="clickinput(10)">{{$t('ReportManage.CategoryList.select_img_btn')}}</el-button>
 					</el-input>
 				</el-form-item>
-				<el-form-item label="首页配图" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="classifyImg">
+				<el-form-item :label="$t('ReportManage.CategoryList.homepage_illustrations_label')" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="classifyImg">
 					<input type="file" size="small" name="file" @change="fileSelected(1)" id="file1" class="true-file" style="display:none;">
-					<el-input type="text" v-model="aeForm.classifyImg" placeholder="上传首页配图" size="medium" style="width:400px;">
-						<el-button slot="append" type="primary" size="mini" @click.native="clickinput(1)">选择图片</el-button>
+					<el-input type="text" v-model="aeForm.classifyImg" :placeholder="$t('ReportManage.CategoryList.up_homepage_illustrations')" size="medium" style="width:400px;">
+						<el-button slot="append" type="primary" size="mini" @click.native="clickinput(1)">{{$t('ReportManage.CategoryList.select_img_btn')}}</el-button>
 					</el-input>
 				</el-form-item>
-				<el-form-item label="研报配图" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="reportImg">
+				<el-form-item :label="$t('ReportManage.CategoryList.report_illustrations_label')" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="reportImg">
 					<input type="file" size="small" name="file" @change="fileSelected(5)" id="file5" class="true-file" style="display:none;">
-					<el-input type="text" v-model="aeForm.reportImg" placeholder="上传研报配图" size="medium" style="width:400px;">
-						<el-button slot="append" type="primary" size="mini" @click.native="clickinput(5)">选择图片</el-button>
+					<el-input type="text" v-model="aeForm.reportImg" :placeholder="$t('ReportManage.CategoryList.up_report_illustrations')" size="medium" style="width:400px;">
+						<el-button slot="append" type="primary" size="mini" @click.native="clickinput(5)">{{$t('ReportManage.CategoryList.select_img_btn')}}</el-button>
 					</el-input>
 				</el-form-item>
-				<el-form-item label="专栏配图" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="columImg">
+				<el-form-item :label="$t('ReportManage.CategoryList.column_illustration_label')" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="columImg">
 					<input type="file" size="small" name="file" @change="fileSelected(4)" id="file4" class="true-file" style="display:none;">
-					<el-input type="text" v-model="aeForm.columImg" placeholder="上传专栏配图" size="medium" style="width:400px;">
-						<el-button slot="append" type="primary" size="mini" @click.native="clickinput(4)">选择图片</el-button>
+					<el-input type="text" v-model="aeForm.columImg" :placeholder="$t('ReportManage.CategoryList.up_scolumn_illustration')" size="medium" style="width:400px;">
+						<el-button slot="append" type="primary" size="mini" @click.native="clickinput(4)">{{$t('ReportManage.CategoryList.select_img_btn')}}</el-button>
 					</el-input>
 				</el-form-item>
-				<el-form-item label="头部banner" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="bannerImg">
+				<el-form-item :label="$t('ReportManage.CategoryList.banner_head_label')" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="bannerImg">
 					<input type="file" size="small" name="file" @change="fileSelected(2)" id="file2" class="true-file" style="display:none;">
-					<el-input type="text" v-model="aeForm.bannerImg" placeholder="上传头部banner" size="medium" style="width:400px;">
-						<el-button slot="append" type="primary" size="mini" @click.native="clickinput(2)">选择图片</el-button>
+					<el-input type="text" v-model="aeForm.bannerImg" :placeholder="$t('ReportManage.CategoryList.up_banner_head')" size="medium" style="width:400px;">
+						<el-button slot="append" type="primary" size="mini" @click.native="clickinput(2)">{{$t('ReportManage.CategoryList.select_img_btn')}}</el-button>
 					</el-input>
 				</el-form-item>
-				<el-form-item label="头像" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="avatar">
+				<el-form-item :label="$t('ReportManage.CategoryList.img_author_label')" v-if="aeForm.parent_id!=0&&!parentIsList&&!parentIsVariety" prop="avatar">
 					<input type="file" size="small" name="file" @change="fileSelected(3)" id="file3" class="true-file" style="display:none;">
-					<el-input type="text" v-model="aeForm.avatar" placeholder="上传头像" size="medium" style="width:400px;">
-						<el-button  slot="append" type="primary" size="mini" @click.native="clickinput(3)">选择图片</el-button>
+					<el-input type="text" v-model="aeForm.avatar" :placeholder="$t('ReportManage.CategoryList.up_img_author')" size="medium" style="width:400px;">
+						<el-button  slot="append" type="primary" size="mini" @click.native="clickinput(3)">{{$t('ReportManage.CategoryList.select_img_btn')}}</el-button>
 					</el-input>
 				</el-form-item>
-				<el-form-item label="列表背景图" v-if="aeForm.parent_id!=0&&(parentIsList||parentIsVariety)" prop="YbListImg">
+				<el-form-item :label="$t('ReportManage.CategoryList.list_background_image_label')" v-if="aeForm.parent_id!=0&&(parentIsList||parentIsVariety)" prop="YbListImg">
 					<input type="file" size="small" name="file" @change="fileSelected(9)" id="file9" class="true-file" style="display:none;">
-					<el-input readonly type="text" v-model="aeForm.YbListImg" placeholder="上传列表背景图" size="medium" style="width:400px;">
-						<el-button slot="append" type="primary" size="mini" @click.native="clickinput(9)">选择图片</el-button>
+					<el-input readonly type="text" v-model="aeForm.YbListImg" :placeholder="$t('ReportManage.CategoryList.up_list_background_image')" size="medium" style="width:400px;">
+						<el-button slot="append" type="primary" size="mini" @click.native="clickinput(9)">{{$t('ReportManage.CategoryList.select_img_btn')}}</el-button>
 					</el-input>
 				</el-form-item>
 				<!-- 列表、品种的二级分类 展示分享链接配图 但是不是必填的 -->
-				<el-form-item label="分享链接配图" prop="YbShareBgImg_" v-if="aeForm.parent_id!=0&&(parentIsList||parentIsVariety)">
+				<el-form-item :label="$t('ReportManage.CategoryList.share_link_label')" prop="YbShareBgImg_" v-if="aeForm.parent_id!=0&&(parentIsList||parentIsVariety)">
 					<input type="file" size="small" name="file" @change="fileSelected(12)" id="file12" class="true-file" style="display:none;">
-					<el-input readonly type="text" v-model="aeForm.YbShareBgImg_" placeholder="上传分享链接配图" size="medium" style="width:400px;">
-						<el-button slot="append" type="primary" size="mini" @click.native="clickinput(12)">选择图片</el-button>
+					<el-input readonly type="text" v-model="aeForm.YbShareBgImg_" :placeholder="$t('ReportManage.CategoryList.xxxxx')" size="medium" style="width:400px;">
+						<el-button slot="append" type="primary" size="mini" @click.native="clickinput(12)">{{$t('ReportManage.CategoryList.up_share_link_label')}}</el-button>
 					</el-input>
 				</el-form-item>
 				</template>
 			</el-form>
 			<div slot="footer" class="dialog-footer" style="text-align:right;">
-				<el-button type="primary" plain size="small" @click.native="aeDialog=false">取 消</el-button>
-				<el-button type="primary" size="small" @click.native="saveDialog">保 存</el-button>
+				<el-button type="primary" plain size="small" @click.native="aeDialog=false">{{$t('Dialog.cancel_btn')}}</el-button>
+				<el-button type="primary" size="small" @click.native="saveDialog">{{$t('Dialog.confirm_save_btn')}}</el-button>
 			</div>
 		</el-dialog>
 		<!-- 权限配置弹窗 -->
@@ -330,187 +330,190 @@ export default{
                 this.permissionBtn.classifyBtn.classifyList_cnClassify
             )
         },
-	},
-	data(){
-		return {
-			PageIndex:0,
-			total:0,
-			pageSize:15,
-			ispage:true,
-			listLoading:false,
-			tableData:[],
-			searchform:{
-				key_word:'',
-			}, 
-			aeDialog:false,
-			aeForm:{
-				classify_name:'',
-				parent_id:0,
-				abstract:'',
-				descript:'',
-				author:'',
-				authorDsec:'',
-				classifyDsec:'',
-				authorTag:'',
-				classifyImg:'',
-				reportImg:'',
-				columImg:'',
-				bannerImg:'',
-				avatar:'',
-				label:"",
-				hasTel:0,//是否有电话会:0-否 1-是
-				showType:1,//展示形式 1-列表 2-专栏 3-品种
-				Sort:'',
-				YbFiccSort:'',
-				YbFiccIcon:'',
-				YbIconUrl:'',
-				YbBgUrl:'',
-				YbFiccPcIcon:'',
-				IsShow:false,//是否在小程序端展示:0-隐藏 1-显示
-				YbListImg:'',//小程序研报列表封面图
-				YbShareBgImg:'',
-				ClassifyMenuId:'',
-        YbRightBanner:'',//报告合集配图
-				relate:[],
-			},
-			aerules:{
+		aerules(){
+			return {
 				classify_name:[{
 					required:true,
-					message:'请输入分类名称',
+					message:this.$t('ReportManage.CategoryList.please_input_name'),
 					trigger:'blur'
 				}],
 				parent_id:[{
 					required:true,
-					message:'请选择父级分类',
+					message:this.$t('ReportManage.CategoryList.please_select_category'),
 					trigger:'change'
 				}],
 				abstract:[{
 					required:true,
-					message:'请输入分类简介',
+					message:this.$t('ReportManage.CategoryList.please_input_introduction'),
 					trigger:'blur'
 				}],
 				descript:[{
 					required:true,
-					message:'请输入分类描述',
+					message:this.$t('ReportManage.CategoryList.please_input_description'),
 					trigger:'blur'
 				}],
 				author:[{
 					required:true,
-					message:'请输入栏目作者',
+					message:this.$t('ReportManage.CategoryList.please_author_ipt'),
 					trigger:'blur'
 				}],
 				authorDsec:[{
 					required:true,
-					message:'请输入作者简介',
+					message:this.$t('ReportManage.CategoryList.please_author_introduction_ipt'),
 					trigger:'blur'
 				}],
 				classifyDsec:[{
 					required:true,
-					message:'请输入栏目简介',
+					message:this.$t('ReportManage.CategoryList.please_input_column_introduction'),
 					trigger:'blur'
 				}],
 				classifyImg:[{
 					required:true,
-					message:'请上传首页配图',
+					message:this.$t('ReportManage.CategoryList.up_homepage_illustrations'),
 					trigger:'blur'
 				}],
 				reportImg:[{
 					required:true,
-					message:'请上传研报配图',
+					message:this.$t('ReportManage.CategoryList.up_report_illustrations'),
 					trigger:'blur'
 				}],
 				bannerImg:[{
 					required:true,
-					message:'请上传头部banner',
+					message:this.$t('ReportManage.CategoryList.up_banner_head'),
 					trigger:'blur'
 				}],
 				avatar:[{
 					required:true,
-					message:'请上传作者头像',
+					message:this.$t('ReportManage.CategoryList.up_img_author'),
 					trigger:'blur'
 				}],
 				columImg:[{
 					required:true,
-					message:'请上传专栏配图',
+					message:this.$t('ReportManage.CategoryList.up_scolumn_illustration'),
 					trigger:'blur'
 				}],
 				label:[{
 					required:true,
-					message:'请输入分类标签',
+					message:this.$t('ReportManage.CategoryList.please_classification_label'),
 					trigger:'blur'
 				}],
 				hasTel:[{
 					required:true,
-					message:'请选择',
+					message:this.$t('ReportManage.CategoryList.please_select'),
 					trigger:'change'
 				}],
 				showType:[{
 					required:true,
-					message:'请选择展示形式',
+					message:this.$t('ReportManage.CategoryList.please_display_format'),
 					trigger:'change'
 				}],
 				Sort:[{
 					required:true,
-					message:'请输入数字',
+					message:this.$t('ReportManage.CategoryList.please_number_input'),
 					trigger:'blur'
 				}],
 				YbFiccSort:[{
 					required:true,
-					message:'请输入数字',
+					message:this.$t('ReportManage.CategoryList.please_number_input'),
 					trigger:'blur'
 				}],
 				YbFiccIcon:[{
 					required:true,
-					message:'上传FICC页icon',
+					message:this.$t('ReportManage.CategoryList.up_page_icon_label'),
 					trigger:'change'
 				}],
-        YbRightBanner:[{
-          required:true,
-					message:'上传报告合集配图',
-					trigger:'change'
-        }],
+        	YbRightBanner:[{
+			required:true,
+						message:this.$t('ReportManage.CategoryList.up_collection_report_lable'),
+						trigger:'change'
+			}],
 				YbFiccPcIcon:[{
 					required:true,
-					message:'选择背景颜色',
+					message:this.$t('ReportManage.CategoryList.select_bg_label'),
 					trigger:'change'
 				}],
 				IsShow:[{
 					required:true,
-					message:'小程序端隐藏',
+					message:this.$t('ReportManage.CategoryList.mini_hidden_label'),
 					trigger:'change'
 				}],
 				YbListImg:[{
 					required:true,
-					message:'上传列表背景图',
+					message:this.$t('ReportManage.CategoryList.please_upload_label'),
 					trigger:'change'
 				}],
 				YbShareBgImg:[{
 					required:true,
-					message:'上传列表背景图',
+					message:this.$t('ReportManage.CategoryList.please_upload_label'),
 					trigger:'change'
 				}],
-			},
-			isadd:true,
-			classifyparentArr:[],
-			isexpand:false,
-			isShowPermissionDia: false,	//是否显示权限管理弹窗
-			classifyPermissionId: 0,	//进行权限管理的分类id
-			editedItems:[],	//修改过权限的分类
-
-			YbFiccPcIconList:[
+			}
+		},
+		YbFiccPcIconList(){
+			return [
 				{
-					label:'蓝色',
+					label:this.$t('ReportManage.CategoryList.blue_color'),
 					val:'https://hzstatic.hzinsights.com/static/yb_wx/ficc_classify_bg_blue.png'
 				},
 				{
-					label:'绿色',
+					label:this.$t('ReportManage.CategoryList.green_color'),
 					val:'https://hzstatic.hzinsights.com/static/yb_wx/ficc_classify_bg_green.png'
 				},
 				{
-					label:'红色',
+					label:this.$t('ReportManage.CategoryList.red_color'),
 					val:'https://hzstatic.hzinsights.com/static/yb_wx/ficc_classify_bg_orange.png'
 				},
-			],
+			]
+		},
+	},
+	data(){
+		return {
+			PageIndex:0,
+			total:0,
+			pageSize:15,
+			ispage:true,
+			listLoading:false,
+			tableData:[],
+			searchform:{
+				key_word:'',
+			}, 
+			aeDialog:false,
+			aeForm:{
+				classify_name:'',
+				parent_id:0,
+				abstract:'',
+				descript:'',
+				author:'',
+				authorDsec:'',
+				classifyDsec:'',
+				authorTag:'',
+				classifyImg:'',
+				reportImg:'',
+				columImg:'',
+				bannerImg:'',
+				avatar:'',
+				label:"",
+				hasTel:0,//是否有电话会:0-否 1-是
+				showType:1,//展示形式 1-列表 2-专栏 3-品种
+				Sort:'',
+				YbFiccSort:'',
+				YbFiccIcon:'',
+				YbIconUrl:'',
+				YbBgUrl:'',
+				YbFiccPcIcon:'',
+				IsShow:false,//是否在小程序端展示:0-隐藏 1-显示
+				YbListImg:'',//小程序研报列表封面图
+				YbShareBgImg:'',
+				ClassifyMenuId:'',
+        		YbRightBanner:'',//报告合集配图
+				relate:[],
+			},
+			isadd:true,
+			classifyparentArr:[],
+			isexpand:false,
+			isShowPermissionDia: false,	//是否显示权限管理弹窗
+			classifyPermissionId: 0,	//进行权限管理的分类id
+			editedItems:[],	//修改过权限的分类
 
 			inputVisible:false,
 			inputValue:'',
@@ -645,7 +648,7 @@ export default{
 			});
 		},
 		deleteitem(item){
-			this.$confirm('确认删除吗?','提示',{type:'warning'}).then(() => {
+			this.$confirm(this.$t('ReportManage.CommodityConfiguration.delete_info_msg'),this.$t('Confirm.prompt_slogan'),{type:'warning'}).then(() => {
 					classifydelete({ClassifyId:parseInt(item.Id)}).then(res =>{
 						if( res.Ret==200 ){
 							this.$message.success( res.Msg );

+ 1 - 1
src/views/dataEntry_manage/dataList.vue

@@ -134,7 +134,7 @@
           height="476"
           v-loading="isShowloadding"
           @cell-dblclick="clickCell"
-          element-loading-text="数据加载中..."
+          :element-loading-text="$t('Table.data_loading')" 
           :default-sort="{ prop: 'date', order: 'descending' }"
           :header-cell-style="{ background: '#fff!important' }"
           border

+ 1 - 1
src/views/dataEntry_manage/targetList.vue

@@ -50,7 +50,7 @@
 			<el-table 
 			:data="tableData" 
 			v-loading="isShowloadding"
-			element-loading-text="数据加载中..."
+			:element-loading-text="$t('Table.data_loading')" 
 			:default-sort = "{prop: 'date', order: 'descending'}"
 			border>
 				<!-- 指标表格 -->

+ 1 - 1
src/views/dataEntry_manage/thirdBase/DatabankBase.vue

@@ -29,7 +29,7 @@
         </div>
         <div class="table-box">
             <el-table :data="tableData" border  @sort-change="sortChange" 
-                v-loading="tableLoading" element-loading-text="数据加载中...">
+                v-loading="tableLoading" :element-loading-text="$t('Table.data_loading')" >
                 <el-table-column v-for="column in tableColumnList" 
                     align="center"
                     :key="column.key"

+ 34 - 27
src/views/ppt_manage/newVersion/components/ContextMenu.vue

@@ -2,7 +2,7 @@
   <div class="menu-wrap" :id="'menu'+menuId">
       <ul>
           <li v-for="item in menu" :key="item.id" @mousedown.stop="handleClick(item)" @mouseup.stop>
-            <span :style="`color:${item.text==='粘贴元素'&&!item.canClick?'#999':'#333'}`"><i class="el-icon-check" v-if="item.id===5&&modelName==='paint'"></i>{{item.text}}</span>
+            <span :style="`color:${item.text===$t('Slides.paste_element_btn')&&!item.canClick?'#999':'#333'}`"><i class="el-icon-check" v-if="item.id===5&&modelName==='paint'"></i>{{item.text}}</span>
             </li>
       </ul>
   </div>
@@ -15,31 +15,7 @@ export default {
             type:Array,
             default:()=>{
                 return [
-                    {
-                        id:1,
-                        text:'上一张',
-                        eventName:'prev'
-                    },
-                    {
-                        id:2,
-                        text:'下一张',
-                        eventName:'next'
-                    },
-                    /* {
-                      id:5,
-                      text:'画笔模式',
-                      eventName:'paint'
-                    }, */
-                    {
-                        id:3,
-                        text:'退出全屏',
-                        eventName:'exit'
-                    },
-                    {
-                        id:4,
-                        text:'取消',
-                        eventName:'cancel'
-                    }
+                   
                 ]
             }
         },
@@ -57,6 +33,37 @@ export default {
 
     };
   },
+  component:{
+    propsDefault(){
+      return [
+              {
+                   id:1,
+                   text:this.$t('Slides.previous_sheet_default'),
+                   eventName:'prev'
+               },
+               {
+                   id:2,
+                   text:this.$t('Slides.next_sheet_default'),
+                   eventName:'next'
+               },
+               /* {
+                 id:5,
+                 text:'画笔模式',
+                 eventName:'paint'
+               }, */
+               {
+                   id:3,
+                   text:this.$t('Slides.exit_full_screen_default'),
+                   eventName:'exit'
+               },
+               {
+                   id:4,
+                   text:this.$t('Slides.operations_cancel'),
+                   eventName:'cancel'
+               }
+      ]
+    }
+  },
   methods: {
       cancel(){
           //console.log('cancel')
@@ -78,7 +85,7 @@ export default {
         this.$emit('paste')
       },
       handleClick(item){
-          if((!item.canClick&&item.text==='粘贴元素')) return
+          if((!item.canClick&&item.text===this.$t('Slides.paste_element_btn'))) return
           this[`${item.eventName}`]()
       }
   },

+ 4 - 4
src/views/ppt_manage/newVersion/components/IndexItem.vue

@@ -31,16 +31,16 @@
               &nbsp;页
             </div>
             
-            <p class="page-index" v-else @dblclick.stop="editPage">第{{pageIndex+1}}页</p>  
+            <p class="page-index" v-else @dblclick.stop="editPage"> {{$i18n.locale == 'zh' ?`第${index+1}页`:` Slide${index+1}`}}</p>  
         </div>
         <el-popconfirm
             @onConfirm="deletePage"
-            confirmButtonText='删除'
-            cancelButtonText='取消'
+            :confirmButtonText="$t('Slides.operations_delete')"
+            :cancelButtonText="$t('Slides.operations_cancel')"
             confirmButtonType="text"
             icon="el-icon-info"
             iconColor="red"
-            title="确定删除该页ppt吗">
+            :title="$t('Slides.is_delete_ppt_msg')">
         <!-- <span class="close-btn el-icon-close" @click.stop="deletePage" ></span>  -->
             <span class="close-btn el-icon-close" slot="reference"  v-if="showCloseBtn" v-show="!ctrlKeyActive"></span>
         </el-popconfirm>

+ 1 - 1
src/views/ppt_manage/newVersion/components/catalog/pptContent.vue

@@ -30,7 +30,7 @@
                           type="show"
                           @addChart="handleAddChartToGallery"
               ></component>
-              <span class="page-num">第{{index}}</span>
+              <span class="page-num"> {{$i18n.locale == 'zh' ?`${index}页`:` Slide${index+1}`}}</span>
           </div>
       </template> 
     </div>

+ 1 - 1
src/views/ppt_manage/newVersion/components/catalog/pptContentEn.vue

@@ -28,7 +28,7 @@
                           type="show"
                           @addChart="handleAddChartToGallery"
               ></component>
-              <span class="page-num">第{{index}}</span>
+              <span class="page-num"> {{$i18n.locale == 'zh' ?`${index}页`:` Slide${index+1}`}}</span>
           </div>
       </template> 
     </div>

+ 1 - 1
src/views/ppt_manage/newVersion/components/catalog/pptContentOld.vue

@@ -22,7 +22,7 @@
 				<div v-for="(item,i) in pageitem" :key="i+1" style="position:relative; margin:20px auto;" :id="'wrapper'+i">
 					<p style="position:absolute; top:6.5%; left:11.5%;fontSize:24px;color:#666">{{item.title}}</p>
 					<!-- <img v-if="item.img_url" :src="item.img_url" style="width:70%; position:absolute; top:20%; left:15%;" /> -->
-					<p style="position:absolute; bottom:3%; right:20px; color:#666;">第{{i+1}}</p>
+					<p style="position:absolute; bottom:3%; right:20px; color:#666;"> {{$i18n.locale == 'zh' ?`${i+1}页`:` Slide${i+1}`}}</p>
 					<div class="container" :id="'container'+item.resource_id" v-if="item.resource_id"></div>
 					<div class="container" v-if="item.noSource">
 						<img src="https://hzstatic.hzinsights.com/static/ppt_default.png" alt="" style="width:400px;height:300px;">

+ 2 - 2
src/views/ppt_manage/newVersion/components/editor/ChooseCoverNew.vue

@@ -40,7 +40,7 @@
                     </div>
                     <div class="dialog-btn">
                         <el-button @click="changeBg">{{$t('Slides.change_the_template_cover')}}</el-button>
-                        <el-button @click="saveCover">保存</el-button>
+                        <el-button @click="saveCover">{{$t('Dialog.confirm_save_btn')}}</el-button>
                     </div>
                 </div>
             </div>
@@ -117,7 +117,7 @@ export default {
         //保存封面配置
         async saveCover() {
             if(!this.pageData.Title.length){
-                return this.$message.warning("请输入PPT标题")
+                return this.$message.warning(this.$t('Slides.input_ppt_title'))
             }
             const coverContent = JSON.stringify(this.coverElList);
             //this.coverLoading=true

+ 9 - 7
src/views/ppt_manage/newVersion/components/editor/DeletePageDialog.vue

@@ -11,7 +11,7 @@
     >
       <div slot="title" style="display: flex; alignitems: center">
         <span style="fontsize: 16px"
-          >批量删除</span
+          >{{$t('Slides.operations_batch_delete')}}</span
         >
       </div>
       <div class="dialog-container" 
@@ -32,7 +32,7 @@
                 }:{}"
               >
                 <div class="title-wrap">
-                  {{item.title||'无标题'}}
+                  {{item.title||$t('Slides.untitled_title')}}
                 </div>
                 <component  :is="getComponentName(item.modelId)"
                             :ref="`preview_${index}`"
@@ -43,13 +43,15 @@
                             :isPreview="true"         
                 ></component>
               </div>
-            <p class="preview-page">第{{index+1}}页</p>
+            <p class="preview-page">
+              {{$i18n.locale == 'zh' ?`第${index+1}页`:` Slide${index+1}`}}
+            </p>
           </div>
           </div>
           
         </div>
         <div class="select-box">
-          <h3>请选择PPT页</h3>
+          <h3>{{$t('Slides.please_select_slide')}}</h3>
           <div class="input-box">
             第&nbsp;
               <input type="text"
@@ -69,13 +71,13 @@
           <div class="choose-box">
             <el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange">全选</el-checkbox>
             <el-checkbox-group v-model="checkedPages" @change="handleCheckedPagesChange">
-              <el-checkbox v-for="(page,index) in pageList" :label="index" :key="page.id">第{{index+1}}&nbsp;&nbsp;{{page.title||'无标题'}}</el-checkbox>
+              <el-checkbox v-for="(page,index) in pageList" :label="index" :key="page.id">{{$i18n.locale == 'zh' ?`${index+1}页`:` Slide${index+1}`}}&nbsp;&nbsp;{{page.title||'无标题'}}</el-checkbox>
             </el-checkbox-group>
           </div>
           <p style="margin-top:15px;height:20px;">{{checkedPages.length?`已选择${checkedPages.length}页,确认删除吗?`:``}}</p>
           <div class="btn-box">
-            <el-button type="primary" @click="saveHandle" >确 定</el-button>
-            <el-button @click="cancelHandle">取 消</el-button>
+            <el-button type="primary" @click="saveHandle" >{{$t('Dialog.confirm_btn')}}</el-button>
+            <el-button @click="cancelHandle">{{$t('Dialog.cancel_btn')}}</el-button>
           </div>
         </div>
       </div>

+ 3 - 3
src/views/ppt_manage/newVersion/components/editor/InsertCharts.vue

@@ -4,7 +4,7 @@
       <el-select
         v-model="selectMyChartClassify"
         filterable
-        placeholder="图分类名称"
+        :placeholder="$t('Slides.chart_category_name_select')"
         @change="handleChange"
       >
         <el-option
@@ -43,7 +43,7 @@
         <img :src="item.ChartImage" alt="" style="-webkit-user-drag:none;"/>
       </div>
     </div>
-    <div v-if="list.length == 0" class="empty-box">无数据</div>
+    <div v-if="list.length == 0" class="empty-box"> {{$t('Slides.no_data_empty')}}</div>
   </div>
 </template>
 
@@ -112,7 +112,7 @@ export default {
 
     handleImport: _.throttle(function () {
       if (!this.selectMyChartClassify) {
-        this.$message.warning("请选择分类");
+        this.$message.warning(this.$t('MsgPrompt.select_category'));
         return;
       }
       if (this.list.length == 0) {

+ 8 - 8
src/views/ppt_manage/newVersion/components/editor/InsertPageDialog.vue

@@ -10,14 +10,14 @@
       center
     >
     <div slot="title" style="display: flex; alignitems: center">
-      <span style="fontsize: 16px">插入PPT</span>
+      <span style="fontsize: 16px">{{$t('Slides.operations_insert')}}</span>
     </div>
     <div class="dialog-container">
       <div class="catalog-list" v-loading="listloading">
         <div class="select-wrap">
           <el-select
             filterable remote
-            placeholder="请输入PPT标题"
+            :placeholder="$t('Slides.operations_insert')"
             v-model="searchTitle"
             :remote-method="searchHandle"
             :loading="searchLoading"
@@ -53,10 +53,10 @@
       <div class="select-box" v-loading="dataloading">
         <p class="title">{{choosedItem.Title}}</p>
         <div class="trans-box">
-          <p class="hint">请选择PPT页</p>
+          <p class="hint">{{$t('Slides.please_select_slide')}}</p>
           <div class="trans-wrap">
               <el-transfer v-model="value" :data="transList" target-order="push"
-                :titles="['未选PPT页', '已选PPT页']"
+                :titles="[$t('Slides.unselected_ppt_slides'),$t('Slides.selected_ppt_slides_transfer')]"
               />
           </div>
         </div>
@@ -65,8 +65,8 @@
     <div slot="footer" class="foot-container">
         <div class="block"></div>
         <div class="btn-box">
-          <el-button type="primary" @click="saveHandle">确 定</el-button>
-          <el-button @click="cancelHandle">取 消</el-button>
+          <el-button type="primary" @click="saveHandle">{{$t('Dialog.confirm_btn')}}</el-button>
+          <el-button @click="cancelHandle">{{$t('Dialog.cancel_btn')}}</el-button>
         </div>
         
       </div>
@@ -139,7 +139,7 @@ export default {
     cancelHandle(){this.$emit('cancel')},
     saveHandle(){
       if(this.value.length===0){
-        this.$message.warning("请选择PPT页")
+        this.$message.warning(this.$t('Slides.please_select_slide'))
         return
       }
       //value里存的是pageList的index
@@ -185,7 +185,7 @@ export default {
       data.forEach((item,index)=>{
         let temp = {}
         temp.key = index
-        temp.label = `第${index+1}页 ${item.title||'无标题'}`
+        temp.label = `第${index+1}页 ${item.title||this.$t('Slides.untitled_title')}`
         temp.disabled = false
         list.push(temp)
       })

+ 1 - 1
src/views/ppt_manage/newVersion/components/editor/InsertSemantics.vue

@@ -16,7 +16,7 @@
             </div>
 		</div>
         <div v-if="list.length==0" class="empty-box">
-            无数据
+            {{$t('Slides.no_data_empty')}}
         </div>
     </div>
 </template>

+ 4 - 4
src/views/ppt_manage/newVersion/components/formatEl/ChartEl.vue

@@ -10,14 +10,14 @@
     <img :id="`${$parent.isPreview?'preview_':''}img_${index}_${position}`" />
   </div>
   <div class="tool-list">
-    <el-tooltip content="按住拖动" placement="bottom" v-if="isBtnShow">
+    <el-tooltip :content="$t('Slides.hold_down_drag_tooltip')" placement="bottom" v-if="isBtnShow">
       <div 
           class="dragBtn"
           style="left:5%;top:5%;"
           v-if="isBtnShow&&![1,6].includes($parent.modelId)"
       ></div>
     </el-tooltip>
-    <el-tooltip content="添加到我的图库" placement="bottom"  v-if="$parent.isAdd&&chartTitle.length&&item">
+    <el-tooltip :content="$t('Slides.add_to_my_gallery_tooltip')" placement="bottom"  v-if="$parent.isAdd&&chartTitle.length&&item">
       <div class="addBtn"
         style="margin-right:2%;"
         @click.stop="addChart(position)"
@@ -25,7 +25,7 @@
        <!--  <i class="el-icon-circle-plus-outline"></i> -->
       </div>
     </el-tooltip>
-    <el-tooltip content="复制名称" placement="bottom"  v-if="$parent.isCopy&&chartTitle.length&&item">
+    <el-tooltip :content="$t('Slides.copy_name_tooltip')" placement="bottom"  v-if="$parent.isCopy&&chartTitle.length&&item">
       <div class="copyBtn"
         style="margin-right:2%;"
         @click.stop="copyChartName(position)"
@@ -51,7 +51,7 @@
           color: ${ chartSourcesFrom.color };
           fontSize: ${ chartSourcesFrom.fontSize }px;
         `"
-        >来源:{{ chartSourcesFrom.text}}</span>
+        >{{$t('Slides.source_info')}}:{{ chartSourcesFrom.text}}</span>
     </div>
     <!-- 图表说明 -->
     <div 

+ 1 - 1
src/views/ppt_manage/newVersion/components/formatEl/ImageEl.vue

@@ -6,7 +6,7 @@
   >
     <img :id="`${$parent.isPreview?'preview_':''}image_${index}_${position}`" />
   </div>
-  <el-tooltip content="按住拖动" placement="bottom" v-if="isBtnShow">
+  <el-tooltip :content="$t('Slides.hold_down_drag_tooltip')" placement="bottom" v-if="isBtnShow">
     <div 
         class="dragBtn"
         style="left:5%;top:5%;"

+ 1 - 1
src/views/ppt_manage/newVersion/components/formatEl/SheetEl.vue

@@ -19,7 +19,7 @@
       </tbody>
     </table>
   </div>
-  <el-tooltip content="按住拖动" placement="bottom" v-if="isBtnShow">
+  <el-tooltip :content="$t('Slides.hold_down_drag_tooltip')" placement="bottom" v-if="isBtnShow">
     <div 
         class="dragBtn"
         style="left:5%;top:5%;"

+ 7 - 2
src/views/ppt_manage/newVersion/components/formatEl/TextEl.vue

@@ -25,7 +25,7 @@
     <template v-if="this.$parent.type === 'edit' && this.$parent.choosedId !== this.$parent.pageItem.id ">
       <div class="cover-box" @click="initEditor"></div>
     </template>
-    <el-tooltip content="按住拖动" placement="bottom" v-if="this.$parent.type === 'edit' 
+    <el-tooltip :content="$t('Slides.hold_down_drag_tooltip')" placement="bottom" v-if="this.$parent.type === 'edit' 
             && this.$parent.choosedId === this.$parent.pageItem.id &&![1,6].includes($parent.modelId)">
     <div 
         class="dragBtn"
@@ -84,7 +84,7 @@ export default {
         fixed_toolbar_container: ".richtext-tool",//将toolbar放到指定div上
         skin_url: "/static/css",
         content_url: "/static/css",
-        placeholder:"点击输入文本内容"
+       
       },
       content:'',
       initFlag: false,
@@ -132,6 +132,11 @@ export default {
       tinymce.editors[elementId].focus()
     },
   },
+  computed:{
+     placeholder(){
+      return this.$t('Slides.click_input_text_content')
+     }
+  }
 };
 </script>
 

+ 1 - 1
src/views/ppt_manage/newVersion/components/formatPage/mixins.js

@@ -177,7 +177,7 @@ export default {
                 };
 
             }else{
-                this.$message("已无位置,请删除现有图表/图片")
+                this.$message(this.$t("Slides.please_delete_existing_chartsmsg"))
             }
         },
         getText({val,richContent}, position) {

+ 10 - 5
src/views/ppt_manage/newVersion/components/layer/Element/ShapeContextMenu.vue

@@ -16,11 +16,7 @@ export default {
       type: Array,
       default: () => {
         return [
-          {
-            id: 1,
-            text: "删除元素",
-            eventName: 'deleteshape',
-          },
+         this.propsDefault
         ];
       },
     },
@@ -31,6 +27,15 @@ export default {
   data() {
     return {};
   },
+  computed:{
+    propsDefault(){
+      return {
+            id: 1,
+            text: this.$t('Slides.delete_element_contextmenus'),
+            eventName: 'deleteshape',
+      }
+    }
+  },
   methods: {
     deleteShape(){
       this.$emit('deleteShape')

+ 9 - 5
src/views/ppt_manage/newVersion/components/layer/Element/shapeMixin.js

@@ -32,14 +32,18 @@ export default {
       },
       isMouseDown:false,//鼠标是否按下
       eventType:'move',//当前进行的事件:move:移动元素,resize:缩放元素
-      contextmenus:[
-        {id:1,text:'删除元素',eventName:'deleteShape'},
-        {id:2,text:'复制元素',eventName:'copyShape'}
-      ],//右键菜单的菜单项
+     
       isContextMenusShow:false,//右键菜单是否显示
     }
   },
-  computed:{},
+  computed:{
+    contextmenus(){
+    return  [
+        {id:1,text:this.$t('Slides.delete_element_contextmenus'),eventName:'deleteShape'},
+        {id:2,text:this.$t('Slides.copy_element_contextmenus'),eventName:'copyShape'}
+      ]//右键菜单的菜单项
+    }
+  },
   methods:{
     //开始移动
     handleMoveStart(event){

+ 9 - 9
src/views/ppt_manage/newVersion/components/layer/layerEditTool.vue

@@ -4,7 +4,7 @@
     <template v-if="baseType==='shape'">
       <li class="disabled" v-show="!isActiveEl"></li>
       <li class="tool-item" style="border: 1px solid #DBDCDD;padding: 0 6px;border-radius: 4px;">
-        <el-tooltip class="item" effect="dark" content="边框粗细" placement="top">
+        <el-tooltip class="item" effect="dark" :content="$t('Slides.border_thickness_tooltip')" placement="top">
           <el-select v-model="elInfo.outline.width">
             <el-option
               v-for="item in layerEditOptions.stokeSize"
@@ -19,7 +19,7 @@
         </el-tooltip>
       </li>
       <li class="tool-item">
-        <el-tooltip class="item" effect="dark" content="边框样式" placement="top">
+        <el-tooltip class="item" effect="dark" :content="$t('Slides.border_style_tooltip')" placement="top">
           <el-dropdown trigger="click" @command="setShapeStyle">
             <div class="el-dropdown-link">
               <img src="~@/assets/icons/line.svg" width="20" height="20" style="vertical-align: middle;">
@@ -43,7 +43,7 @@
         </el-tooltip>
       </li>
       <li class="tool-item">
-        <el-tooltip class="item" effect="dark" content="边框颜色" placement="top">
+        <el-tooltip class="item" effect="dark" :content="$t('Slides.border_color_tooltip')" placement="top">
           <el-color-picker
             v-model="elInfo.outline.color"
             size="mini"
@@ -53,7 +53,7 @@
         </el-tooltip>	
       </li>
       <li class="tool-item">
-        <el-tooltip class="item" effect="dark" content="填充颜色" placement="top">
+        <el-tooltip class="item" effect="dark" :content="$t('Slides.fill_color_tooltip')" placement="top">
           <el-color-picker
           v-model="elInfo.fill"
           size="mini"
@@ -67,7 +67,7 @@
     <template v-if="baseType==='line'">
       <li class="disabled" v-show="!isActiveEl"></li>
       <li class="tool-item" style="border: 1px solid #DBDCDD;padding: 0 6px;border-radius: 4px;">
-        <el-tooltip class="item" effect="dark" content="线条粗细" placement="top">
+        <el-tooltip class="item" effect="dark" :content="$t('Slides.line_thickness_tooltip')" placement="top">
           <el-select v-model="elInfo.strokeWidth">
             <el-option
               v-for="item in layerEditOptions.stokeSize"
@@ -82,7 +82,7 @@
         </el-tooltip>
       </li>
       <li class="tool-item">
-        <el-tooltip class="item" effect="dark" content="线条样式" placement="top">
+        <el-tooltip class="item" effect="dark" :content="$t('Slides.line_style_tooltip')" placement="top">
           <el-dropdown trigger="click" @command="setLineStyle">
             <div class="el-dropdown-link">
               <img src="~@/assets/icons/line.svg" width="20" height="20" style="vertical-align: middle;">
@@ -106,7 +106,7 @@
         </el-tooltip>
       </li>
       <li class="tool-item">
-        <el-tooltip class="item" effect="dark" content="线条箭头" placement="top">
+        <el-tooltip class="item" effect="dark" :content="$t('Slides.line_srrow_tooltip')" placement="top">
           <el-dropdown trigger="click" @command="setLinePointsStyle">
             <div class="el-dropdown-link">
               <img src="~@/assets/icons/arrow.svg" width="20" height="20" style="vertical-align: middle;">
@@ -142,7 +142,7 @@
         </el-tooltip>
       </li>
       <li class="tool-item">
-        <el-tooltip class="item" effect="dark" content="线条颜色" placement="top">
+        <el-tooltip class="item" effect="dark" :content="$t('Slides.line_color_tooltip')" placement="top">
           <el-color-picker
             v-model="elInfo.color"
             size="mini"
@@ -156,7 +156,7 @@
     <template v-if="baseType==='text'">
       <li class="tool-item editor">
         <div class="layer-text-toolbar"></div>
-        <p v-if="!isActiveEl">请选择文本元素</p>
+        <p v-if="!isActiveEl">{{$t('Slides.please_select_settings_cover')}}</p>
       </li>
     </template>
   </ul>

+ 10 - 7
src/views/ppt_manage/newVersion/components/layer/shapePreview.vue

@@ -42,13 +42,7 @@ export default {
     shape:{//图像信息
       type:Object,
       default:()=>{
-        return {
-          type:'line',
-          name:"直线",
-          path:'M 0 0 L 200 200 z',
-          viewBox:[200,200],
-          /* points:'arrow' */
-        }
+        return 
       }
     }
   },
@@ -58,6 +52,15 @@ export default {
       },
       BaseTrans(){
           return this.shape.shapeType==='Circle'?10:0
+      },
+      propsDefault(){
+          return {
+            type:'line',
+            name:this.$t('Slides.line_default'),
+            path:'M 0 0 L 200 200 z',
+            viewBox:[200,200],
+            /* points:'arrow' */
+          }
       }
   },
   data() {

+ 3 - 1
src/views/ppt_manage/newVersion/pptCatalog.vue

@@ -197,7 +197,9 @@
     </div>
     <div class="detail-wrap ppt-page-wrap" id="right">
       <div class="detail-list" v-if="model==='list'">
-        <div class="total">共{{catalogPPTList.length}}个PPT</div>
+        <div class="total">
+          {{$i18n.locale == 'zh' ? `共${catalogPPTList.length}个PPT`:`Numbers of PPTs:${catalogPPTList.length} `}}
+        </div>
         <div class="ppt-list">
           <draggable
             class="drag-cont"

+ 6 - 4
src/views/ppt_manage/newVersion/pptEditor.vue

@@ -9,7 +9,9 @@
         </div>
         <div class="hint-box"><div class="hint"  @click="showHint"><span class="el-icon-info" style="margin-right:5px;"></span>{{$t('Slides.operating_instructions')}}</div></div>
         <div style="display:flex;justify-content: space-between;">
-          <p style="text-align:start;color:#999999;">已添加{{pageList.length}}页</p>
+          <p style="text-align:start;color:#999999;">
+            {{$i18n.locale == 'zh' ? `已添加${pageList.length}页`:`${pageList.length}slides added successfully`}}
+          </p>
           <!-- <p class="hint-text" style="cursor: pointer;margin-left:auto;" @click="insertPageShow=true">插入PPT</p> -->
           <p class="hint-text" style="cursor: pointer;" @click="saveCopyPages('cut')">{{$t('Slides.operations_cut')}}</p>
           <p class="hint-text" style="cursor: pointer;" @click="saveCopyPages('copy')">{{$t('Slides.operations_copy')}}</p>
@@ -86,11 +88,11 @@
                             confirmButtonType="text"
                             icon="el-icon-info"
                             iconColor="red"
-                            title="确定删除该页ppt吗">
+                           :title="$t('Slides.is_delete_ppt_msg')">
                             <span class="close-btn" @click.stop slot="reference"></span>
                         </el-popconfirm>
                         <!-- 页码 -->
-                        <span class="page-num">第{{index+1}}</span>
+                        <span class="page-num"> {{this.$i18n.locale == 'zh' ?`${index+1}页`:` Slide${index+1}`}}</span>
                         <!-- 更新图表 -->
                         <span class="update-btn" v-show="item.modelId!==6&&item.elements.find((i)=>i.type==='chart')" @click.stop="updatePage(item)"><span class="update-ico"></span> {{$t('Slides.update_chart_btn')}}</span>
                     </div>
@@ -596,7 +598,7 @@ export default {
       //算出currentItem还有哪些位置可以插入图表
       const {isAdd,addPositions}=this.checkElements(this.currentItem.modelId,this.currentItem.elements,'chart')
       if(!isAdd){
-        this.$message("已无位置,请删除现有图表/图片")
+        this.$message(this.$t("Slides.please_delete_existing_chartsmsg"))
         return
       }
       

+ 3 - 1
src/views/ppt_manage/newVersion/pptEnCatalog.vue

@@ -192,7 +192,9 @@
     </div>
     <div class="detail-wrap ppt-page-wrap" id="right">
       <div class="detail-list" v-if="model==='list'">
-        <div class="total">共{{catalogPPTList.length}}个PPT</div>
+        <div class="total">
+           {{$i18n.locale == 'zh' ? `共${catalogPPTList.length}个PPT`:`Numbers of PPTs:${catalogPPTList.length} `}}
+        </div>
         <div class="ppt-list">
           <draggable
             class="drag-cont"

+ 6 - 4
src/views/ppt_manage/newVersion/pptEnEditor.vue

@@ -9,7 +9,9 @@
         </div>
         <div class="hint-box"><div class="hint"  @click="showHint"><span class="el-icon-info" style="margin-right:5px;"></span>{{$t('Slides.operating_instructions')}}</div></div>
         <div style="display:flex;justify-content: space-between;">
-          <p style="text-align:start;color:#999999;">已添加{{pageList.length}}页</p>
+          <p style="text-align:start;color:#999999;">
+              {{$i18n.locale == 'zh' ? `已添加${pageList.length}页`:`${pageList.length}slides added successfully`}}
+          </p>
           <p class="hint-text" style="cursor: pointer;" @click="saveCopyPages('cut')">{{$t('Slides.operations_cut')}}</p>
           <p class="hint-text" style="cursor: pointer;" @click="saveCopyPages('copy')">{{$t('Slides.operations_copy')}}</p>
           <p style="color:#B72E18;cursor: pointer;" @click="openDeletePageDialog">{{$t('Slides.operations_batch_delete')}}</p>
@@ -84,11 +86,11 @@
                         confirmButtonType="text"
                         icon="el-icon-info"
                         iconColor="red"
-                        title="确定删除该页ppt吗">
+                        :title="$t('Slides.is_delete_ppt_msg')">
                         <span class="close-btn" @click.stop slot="reference"></span>
                     </el-popconfirm>
                     <!-- 页码 -->
-                    <span class="page-num">第{{index+1}}</span>
+                    <span class="page-num"> {{this.$i18n.locale == 'zh' ?`${index+1}页`:` Slide${index+1}`}}</span>
                     <!-- 更新图表 -->
                     <span class="update-btn" v-show="item.modelId!==6&&item.elements.find((i)=>i.type==='chart')" @click.stop="updatePage(item)"><span class="update-ico"></span>{{$t('Slides.update_chart_btn')}}</span>
                 </div>
@@ -607,7 +609,7 @@ export default {
       //算出currentItem还有哪些位置可以插入图表
       const {isAdd,addPositions}=this.checkElements(this.currentItem.modelId,this.currentItem.elements,'chart')
       if(!isAdd){
-        this.$message("已无位置,请删除现有图表/图片")
+        this.$message(this.$t("Slides.please_delete_existing_chartsmsg"))
         return
       }
       //从clipboardData中获取图片

+ 23 - 13
src/views/ppt_manage/newVersion/pptEnPresent.vue

@@ -71,7 +71,7 @@
         </div>
         <div class="other">
           <div class="page-info">
-            <span>第{{currentIndex+1}}页PPT,共{{`${isShowBack?(pageList.length+2):(pageList.length+1)}`}}页</span>
+            <span>{{pptSlidePages}}</span>
           </div>
           <div class="btn-list">
             <el-button @click="(e)=>{FullScreen(e,'live')}" type="primary" class="btn">{{$t('Slides.portrait_mode_playback')}}</el-button>
@@ -188,18 +188,6 @@ export default {
   mixins:[pptmixin,mixins],
   data() {
     return {
-      coverInfo:{
-        index:{
-          id:0,
-          title:'封面',
-        },
-        /* page:{
-          Title:'ppt标题阿巴阿巴',
-          ReportType:'ppt副标题阿巴阿巴',
-          BackgroundImg:'https://hzstatic.hzinsights.com/ppt/bg3.jpg',
-          PptDate:'2022年7月'
-        } */
-      },//封面信息
       backInfo:{
         index:{
           id:-1,
@@ -243,6 +231,28 @@ export default {
     },
     isShowBack(){
         return Boolean(this.pptBackImage)
+    },
+    pptSlidePages(){
+      let str = this.$i18n.locale == 'zh'? 
+      `第${currentIndex+1}页PPT,共${isShowBack?(pageList.length+2):(pageList.length+1)}页` 
+      : `Slide${currentIndex+1} of ${isShowBack?(pageList.length+2):(pageList.length+1)}`
+      return str
+    },
+    //封面信息
+    coverInfo(){
+       return {
+         id:0,
+         title:this.$t('Slides.cover_info'),
+       }
+    },
+    //封底信息
+    backInfo(){
+     return {
+      index:{
+          id:-1,
+           title:this.$t('Slides.back_cover_info'),
+        }
+     }
     }
   },
   methods: {

+ 26 - 22
src/views/ppt_manage/newVersion/pptEnPublish.vue

@@ -72,26 +72,6 @@ export default {
   data() {
     return {
       isPublish:false,//是否在发布中
-      coverInfo:{
-        id:0,
-        title:'封面',
-        index:{
-          id:0,
-          title:'封面',
-          idName:'cover'
-        },
-        /* page:{
-          Title:'ppt标题阿巴阿巴',
-          ReportType:'ppt副标题阿巴阿巴',
-          BackgroundImg:'https://hzstatic.hzinsights.com/ppt/bg3.jpg',
-          PptDate:'2022年7月'
-        } */
-      },//封面信息
-      backInfo:{
-        id:-1,
-        title:'封底',
-        idName:'back'
-      },//封底信息
       pageList:[],//ppt数组(页面信息)
       pptFile:null,//
       base64Url:null,
@@ -99,7 +79,6 @@ export default {
       loadingAll:true,//是否加载全部,false代表使用虚拟列表加载
       LayoutType:1,//ppt比例,1:默认比例10:7,2:16:9,3:4:3
       coefficient:0.7,//宽高系数
-      layoutStr:`10:7${this.$t('Slides.default_publish')}`,
       ReportId:0,//ppt对应的双周报id,如果没转过,则为0
       transReportShow:false,//转双周报的弹窗是否显示
       transChartType:2,//生成PPT时,转换动态图表的方式:1.将svg传至服务端转换;2.调用changeUrl转换
@@ -112,6 +91,31 @@ export default {
       this.coefficient = coefficient
     }
   },
+  computed:{
+      layoutStr(){
+        return `10:7${this.$t('Slides.default_publish')}`
+      },
+    //封面信息
+      coverInfo(){
+        return {
+          id:0,
+            title:this.$t('Slides.cover_info'),
+            index:{
+              id:0,
+              title:this.$t('Slides.cover_info'),
+              idName:'cover'
+            },
+        }
+      },
+      //封底信息
+      backInfo(){
+      return {
+            id:-1,
+            title:this.$t('Slides.back_cover_info'),
+            idName:'back'
+      }
+      }
+  },
   methods: {
     async transHandle(){
       //需要校验PPT
@@ -123,7 +127,7 @@ export default {
       this.loadingInstance = this.$loading({
         lock:true,
         fullscreen: true,
-        text: "生成ppt中...",
+        text: this.$t('Slides.generating_powerPoint_msg'),
       });
       this.isPublish = true
       if(this.loadingAll){

+ 23 - 19
src/views/ppt_manage/newVersion/pptPresent.vue

@@ -71,7 +71,7 @@
         </div>
         <div class="other">
           <div class="page-info">
-            <span>第{{currentIndex+1}}页PPT,共{{`${isShowBack?(pageList.length+2):(pageList.length+1)}`}}页</span>
+            <span>{{pptSlidePages}}</span>
           </div>
           <div class="btn-list">
             <el-button @click="(e)=>{FullScreen(e,'live')}" type="primary" class="btn"> {{$t('Slides.portrait_mode_playback')}} </el-button>
@@ -187,24 +187,6 @@ export default {
   mixins:[pptmixin,mixins],
   data() {
     return {
-      coverInfo:{
-        index:{
-          id:0,
-          title:'封面',
-        },
-        /* page:{
-          Title:'ppt标题阿巴阿巴',
-          ReportType:'ppt副标题阿巴阿巴',
-          BackgroundImg:'https://hzstatic.hzinsights.com/ppt/bg3.jpg',
-          PptDate:'2022年7月'
-        } */
-      },//封面信息
-      backInfo:{
-        index:{
-          id:-1,
-          title:'尾页'
-        }
-      },//封底信息
       pageList:[],//ppt数组
       currentItem:null,//当前活跃的page
       currentIndex:0,//当前活跃的pageIndex
@@ -241,6 +223,28 @@ export default {
     },
     isShowBack(){
         return Boolean(this.pptBackImage)
+    },
+    pptSlidePages(){
+      let str = this.$i18n.locale == 'zh'? 
+      `第${currentIndex+1}页PPT,共${isShowBack?(pageList.length+2):(pageList.length+1)}页` 
+      : `Slide${currentIndex+1} of ${isShowBack?(pageList.length+2):(pageList.length+1)}`
+      return str
+    },
+    //封面信息
+    coverInfo(){
+        return {
+          id:0,
+          title:this.$t('Slides.cover_info'),
+        }
+    },
+    //封底信息
+    backInfo(){
+      return {
+      index:{
+          id:-1,
+           title:this.$t('Slides.back_cover_info'),
+        }
+      }
     }
   },
   methods: {

+ 24 - 22
src/views/ppt_manage/newVersion/pptPublish.vue

@@ -86,26 +86,6 @@ export default {
   data() {
     return {
       isPublish:false,//是否在发布中
-      coverInfo:{
-        id:0,
-        title:'封面',
-        index:{
-          id:0,
-          title:'封面',
-          idName:'cover'
-        },
-        /* page:{
-          Title:'ppt标题阿巴阿巴',
-          ReportType:'ppt副标题阿巴阿巴',
-          BackgroundImg:'https://hzstatic.hzinsights.com/ppt/bg3.jpg',
-          PptDate:'2022年7月'
-        } */
-      },//封面信息
-      backInfo:{
-        id:-1,
-        title:'封底',
-        idName:'back'
-      },//封底信息
       pageList:[],//ppt数组(页面信息)
       pptFile:null,//
       base64Url:null,
@@ -113,7 +93,6 @@ export default {
       loadingAll:true,//是否加载全部,false代表使用虚拟列表加载
       LayoutType:1,//ppt比例,1:默认比例10:7,2:16:9,3:4:3
       coefficient:0.7,//宽高系数
-      layoutStr:`10:7${this.$t('Slides.default_publish')}`,
       ReportId:0,//ppt对应的双周报id,如果没转过,则为0
       transReportShow:false,//转双周报的弹窗是否显示
       transChartType:2,//生成PPT时,转换动态图表的方式:1.将svg传至服务端转换;2.调用changeUrl转换
@@ -129,6 +108,29 @@ export default {
     lineClamp(){
         return this.LayoutType===2?2:3
     },
+    layoutStr(){
+        return `10:7${this.$t('Slides.default_publish')}`
+    },
+    //封面信息
+    coverInfo(){
+       return {
+         id:0,
+          title:this.$t('Slides.cover_info'),
+          index:{
+            id:0,
+            title:this.$t('Slides.cover_info'),
+            idName:'cover'
+          },
+       }
+    },
+    //封底信息
+    backInfo(){
+     return {
+          id:-1,
+          title:'封底',
+          idName:'back'
+     }
+    }
   },
   methods: {
     //计算title的字节数
@@ -145,7 +147,7 @@ export default {
       this.loadingInstance = this.$loading({
         lock:true,
         fullscreen: true,
-        text: "生成ppt中...",
+        text: this.$t('Slides.generating_powerPoint_msg'),
       });
       this.isPublish = true
       if(this.loadingAll){

+ 1 - 1
src/views/ppt_manage/pptlist.vue

@@ -28,7 +28,7 @@
         <el-table
           :data="tableData"
           v-loading="listLoading"
-          element-loading-text="数据加载中..."
+          :element-loading-text="$t('Table.data_loading')" 
           row-key="id"
           border
           default-expand-all

+ 8 - 4
src/views/report_manage/reportAuthor.vue

@@ -15,7 +15,7 @@
     </div>
     <div class="main-bottom" v-if="authTabsOpt.length">
       <ul class="tab-ul">
-        <li :class="['tab-li',default_tab===tab.key && 'act']" v-for="tab in authTabsOpt" :key="tab.key" @click="default_tab=tab.key">{{tab.label}}研报</li>
+        <li :class="['tab-li',default_tab===tab.key && 'act']" v-for="tab in authTabsOpt" :key="tab.key" @click="default_tab=tab.key">{{getContentMenuOptText(tab.label)}}</li>
       </ul>
       <el-table
         :data="tableData"
@@ -82,7 +82,7 @@
           ref="formRef" 
           label-position="left"
           hide-required-asterisk
-          label-width="80px">
+          label-width="95px">
           <el-form-item :label="ChineseEcnglish.author_input_name" prop="name" :rules="[{ required: true, message: ChineseEcnglish.add_author_rules, trigger: 'blur' }]">
             <el-input 
               type="text" 
@@ -91,10 +91,10 @@
               style="width:400px;"
             />
           </el-form-item>
-          <el-form-item label="研报类型" v-if="!authorForm.id">
+          <el-form-item :label="$t('ReportManage.AuthorManagement.research_report_type')" v-if="!authorForm.id">
             <el-select 
               v-model="authorForm.report_type"
-              placeholder="请选择研报类型"
+              :placeholder="$t('ReportManage.AuthorManagement.research_report_type_select')"
               style="width:400px;"
             >
               <el-option v-for="item in authTabsOpt" :key="item.key" :label="item.label" :value="item.key"/>
@@ -239,6 +239,10 @@ export default {
     } 
   },
   methods: {
+    getContentMenuOptText(val){
+      if(val =='中文' ) return this.$t('ReportManage.AuthorManagement.chinese_report_tab')
+      if(val =='英文' ) return this.$t('ReportManage.AuthorManagement.english_report_tab')
+    },
     /* 获取表格数据 */
     getTableData() {
       this.tableLoading = true;

+ 2 - 2
src/views/report_manage/reportVariety.vue

@@ -12,7 +12,7 @@
                 style="border:1px solid #eaeaea;" 
                 :data="tableData" 
                 v-loading="listLoading"
-                element-loading-text="数据加载中..."
+                :element-loading-text="$t('Table.data_loading')" 
                 row-key="EnPermissionId" 
                 :tree-props="{children:'Child',hasChildren:'hasChildren'}"
             >
@@ -48,7 +48,7 @@
             width="600px"
         >
             <div class="edit-variety-wrap" style="padding-bottom:30px">
-                <el-form>
+                <el-form label-width="113px">
                     <el-form-item :label="ChineseEcnglish.product_type">
                         <el-input :placeholder="ChineseEcnglish.add_product_input" v-model="editBreedData.name" style="width:400px"></el-input>
                     </el-form-item>

+ 65 - 65
src/views/report_manage/reportlist.vue

@@ -9,14 +9,14 @@
               type="primary"
               size="medium"
               @click="$router.push({ path: '/addreportNew' })"
-              >添加研报</el-button
+              >{{$t('ReportManage.smart_add_report')}}</el-button
             >
             <el-button
               v-permission="permissionBtn.reportManageBtn.reportManage_dayWeekReportAdd"
               type="primary"
               size="medium"
               @click="$router.push({ path: '/dayorweek' })"
-              >添加晨报/周报</el-button
+              >{{$t('ReportManage.ReportList.add_morning_weekly_btn')}}</el-button
             >
             <template v-if="Role === 'rai_researcher'">
               <el-button
@@ -24,10 +24,10 @@
                 size="medium"
                 @click="downLoadReport"
                 v-if="!batches.length"
-                >下载阅读数据</el-button
+                >{{$t('ReportManage.ReportList.download_data_btn')}}</el-button
               >
               <a style="margin-left: 10px" :href="exportUrlDl" v-else download>
-                <el-button type="primary" size="medium">下载阅读数据</el-button>
+                <el-button type="primary" size="medium">{{$t('ReportManage.ReportList.download_data_btn')}}</el-button>
               </a>
             </template>
           </el-form-item>
@@ -40,7 +40,7 @@
                 popper-class="report-select-popover"
                 width="320" style="display: inline-block;">
                 <div class="select-wrap">
-                    <p>筛选项</p>
+                    <p>{{$t('ReportManage.smart_filter_options')}}</p>
                     <div class="select-item">
                         <el-select
                             v-model="searchform.timeType"
@@ -49,29 +49,29 @@
                             style="width:100%;"
                             @change="search"
                         >
-                            <el-option label="发布时间" value="publish_time"></el-option>
-                            <el-option label="审批时间" value="approve_time"></el-option>
-                            <el-option label="更新时间" value="modify_time"></el-option>
+                            <el-option :label="$t('ReportManage.smart_publish_time')" value="publish_time"></el-option>
+                            <el-option :label="$t('ReportManage.smart_approval_time')" value="approve_time"></el-option>
+                            <el-option :label="$t('ReportManage.smart_update_time')" value="modify_time"></el-option>
                         </el-select>
                     </div>
                     <div class="select-item">
                         <el-select
                             @change="search"
                             v-model="searchform.frequency"
-                            placeholder="更新频度筛选"
+                            :placeholder="$t('ReportManage.smart_update_frequency_filter')"
                             size="medium"
                             clearable
                             style="width:100%;"
                         >
-                            <el-option label="年度" value="年度"></el-option>
-                            <el-option label="半年度" value="半年度"></el-option>
-                            <el-option label="季度" value="季度"></el-option>
-                            <el-option label="月度" value="月度"></el-option>
-                            <el-option label="双周度" value="双周度"></el-option>
-                            <el-option label="周度" value="周度"></el-option>
-                            <el-option label="日度" value="日度"></el-option>
-                            <el-option label="不定时" value="不定时"></el-option>
-                        </el-select>
+                            <el-option :label="$t('ReportManage.smart_annually')" :value="$t('ReportManage.smart_annually')"></el-option>
+                               <el-option :label="$t('ReportManage.smart_semi_annually')" :value="$t('ReportManage.smart_semi_annually')"></el-option>
+                               <el-option :label="$t('ReportManage.smart_quarterly')" :value="$t('ReportManage.smart_quarterly')"></el-option>
+                               <el-option :label="$t('ReportManage.smart_monthly')" :value="$t('ReportManage.smart_monthly')"></el-option>
+                               <el-option :label="$t('ReportManage.smart_bi_weekly')" :value="$t('ReportManage.smart_bi_weekly')"></el-option>
+                               <el-option :label="$t('ReportManage.smart_weekly')" :value="$t('ReportManage.smart_weekly')"></el-option>
+                               <el-option :label="$t('ReportManage.smart_daily')" :value="$t('ReportManage.smart_daily')"></el-option>
+                               <el-option :label="$t('ReportManage.smart_irregularly')" :value="$t('ReportManage.smart_irregularly')"></el-option>
+                            </el-select>
                     </div>
                     <div class="select-item">
                         <el-cascader
@@ -79,26 +79,26 @@
                             :options="optionsArr"
                             v-model="searchform.classifynameArr"
                             clearable
-                            placeholder="类型筛选"
+                            :placeholder="$t('ReportManage.smart_type_filtering')"
                             style="width:100%;"
                         ></el-cascader>
                     </div>
                     <div class="select-item">
                         <el-select
                             v-model.number="searchform.publishState"
-                            placeholder="状态筛选"
+                            :placeholder="$t('ReportManage.smart_status_filtering')"
                             size="medium"
                             clearable
                             style="width:100%;"
                             @change="search"
                         >
-                            <el-option label="未发布" :value="1" v-if="!isOtherApprove"></el-option>
-                            <el-option label="已发布" :value="2"></el-option>
-                            <el-option label="待提交" :value="3" v-if="isApprove"></el-option>
-                            <el-option label="待审批" :value="4" v-if="isApprove"></el-option>
-                            <el-option label="已驳回" :value="5"></el-option>
-                            <el-option label="已通过" :value="6"></el-option>
-                        </el-select>
+                          <el-option :label="$t('ReportManage.smart_unpublished')" :value="1" v-if="!isOtherApprove"></el-option>
+                            <el-option :label="$t('ReportManage.smart_published')" :value="2"></el-option>
+                            <el-option :label="$t('ReportManage.smart_pending')" :value="3" v-if="isApprove"></el-option>
+                            <el-option :label="$t('ReportManage.smart_awaiting_approval')" :value="4" v-if="isApprove"></el-option>
+                            <el-option :label="$t('ReportManage.smart_rejected')" :value="5"></el-option>
+                            <el-option :label="$t('ReportManage.smart_approved')" :value="6"></el-option>
+                          </el-select>
                     </div>
                     <div class="select-item">
                         <el-select
@@ -150,20 +150,20 @@
         </el-form>
       </div>
       <template>
-        <!-- <el-table :data="tableData" v-loading="listLoading" @sort-change='sortChange' @selection-change="selectchange" :default-sort="{prop:'publish_time',order:'descending'}" element-loading-text="数据加载中..." border style="width:100%;"> -->
+        <!-- <el-table :data="tableData" v-loading="listLoading" @sort-change='sortChange' @selection-change="selectchange" :default-sort="{prop:'publish_time',order:'descending'}" :element-loading-text="$t('Table.data_loading')"  border style="width:100%;"> -->
         <el-table
           ref="table"
           :key="tableKey"
           :data="tableData"
           v-loading="listLoading"
           @sort-change="sortChange"
-          element-loading-text="数据加载中..."
+          :element-loading-text="$t('Table.data_loading')" 
           border
           style="width: 100%"
         >
           <el-table-column
             prop="Title"
-            label="报告标题"
+           :label="$t('ReportManage.smart_report_title')"
             align="center"
             min-width="140"
             fixed="left"
@@ -203,7 +203,7 @@
             min-width="140"
             fixed="left"
           ></el-table-column>
-          <el-table-column label="报告类型" align="center" min-width="140">
+          <el-table-column :label="$t('ReportManage.smart_report_type')" align="center" min-width="140">
             <template slot-scope="scope"
               >{{ scope.row.ClassifyNameFirst }}
               <span v-if="scope.row.ClassifyNameSecond"
@@ -213,18 +213,18 @@
           </el-table-column>
           <el-table-column
             prop="AdminRealName"
-            label="创建人"
+            :label="$t('ReportManage.smart_creator_btn')"
             align="center"
             min-width="100"
           ></el-table-column>
-          <el-table-column label="状态" align="center" v-if="isApprove">
+          <el-table-column :label="$t('ReportManage.smart_status_table')" align="center" v-if="isApprove">
             <template slot-scope="scope">
-                <span v-if="scope.row.State == '1'">未发布</span>
-                <span v-if="scope.row.State == '2'">已发布</span>
-                <span v-if="scope.row.State == '3'">待提交</span>
-                <span v-if="scope.row.State == '4'">待审批</span>
-                <span v-if="scope.row.State == '5'">已驳回</span>
-                <span v-if="scope.row.State == '6'">已通过</span>
+                <span v-if="scope.row.State == '1'">{{$t('ReportManage.smart_unpublished')}}</span>
+                <span v-if="scope.row.State == '2'">{{$t('ReportManage.smart_published')}}</span>
+                <span v-if="scope.row.State == '3'">{{$t('ReportManage.smart_pending')}}</span>
+                <span v-if="scope.row.State == '4'">{{$t('ReportManage.smart_awaiting_approval')}}</span>
+                <span v-if="scope.row.State == '5'">{{$t('ReportManage.smart_rejected')}}</span>
+                <span v-if="scope.row.State == '6'">{{$t('ReportManage.smart_approved')}}</span>
             </template>
           </el-table-column>
 
@@ -255,7 +255,7 @@
                 <span>{{scope.row.ApproveTime|formatTime}}</span>
             </template>
           </el-table-column> -->
-          <el-table-column prop="PublishTime" label="发布/审批时间" min-width="124" align="center">
+          <el-table-column prop="PublishTime" :label="$t('ReportManage.smart_release_approval_time')" min-width="124" align="center">
             <template slot-scope="scope">
                 <template v-if="[1,2].includes(scope.row.State)">
                     <span>{{scope.row.PrePublishTime?scope.row.PrePublishTime:scope.row.PublishTime|formatTime}}</span>
@@ -271,7 +271,7 @@
 
           <el-table-column v-if="permissionBtn.checkPermissionBtn(permissionBtn.reportManageBtn.reportManage_reportList_sendTime)"
             prop="MsgSendTime"
-            label="报告推送时间"
+            :label="$t('ReportManage.smart_report_push_time_btn')"
             min-width="124"
             align="center"
           >
@@ -281,15 +281,15 @@
           </el-table-column>
           <el-table-column
             prop="ModifyTime"
-            label="更新时间"
+            :label="$t('ReportManage.smart_update_time')"
             min-width="124"
             align="center"
             :formatter="formatterColumn"
           ></el-table-column>
-          <el-table-column label="期数" align="center">
+          <el-table-column :label="$t('ReportManage.smart_issue_number_btn')" align="center">
             <template slot-scope="scope">第{{ scope.row.Stage }}期</template>
           </el-table-column>
-          <el-table-column label="频度" align="center">
+          <el-table-column :label="$t('ReportManage.smart_frequency_btn')" align="center">
             <template slot-scope="scope">{{ scope.row.Frequency }}</template>
           </el-table-column>
           <!-- <el-table-column label="音频" align="center">
@@ -308,7 +308,7 @@
               >{{ hasUV? scope.row.Pv+'/'+scope.row.Uv:scope.row.Pv }}</template
             >
           </el-table-column>
-          <el-table-column label="操作" align="center" min-width="130" fixed="right">
+          <el-table-column :label="$t('Table.column_operations')" align="center" min-width="130" fixed="right">
             <template slot-scope="scope">
               <div class="opt-btns">
                 <!-- 操作:未发布——发布、编辑、删除
@@ -329,11 +329,11 @@
                             &&permissionBtn.isShowBtn('reportManageBtn','reportManage_publish')"
                     >提交</span>
                     <span v-permission="permissionBtn.reportManageBtn.reportManage_reportEdit" class="editsty"
-                        @click="editreport(scope.row, 'edit')" v-if="scope.row.CanEdit">编辑</span>
+                        @click="editreport(scope.row, 'edit')" v-if="scope.row.CanEdit">{{$t('Table.edit_btn')}}</span>
                     <span v-permission="permissionBtn.reportManageBtn.reportManage_reportEdit" class="editsty"
                         @click="editreport(scope.row, 'editing')" v-else>{{ scope.row.Editor || "" }}编辑中...</span>
                     <span v-permission="permissionBtn.reportManageBtn.reportManage_reportDel" class="deletesty"
-                        @click="deleteitem(scope.row)" v-if="scope.row.CanEdit">删除</span>
+                        @click="deleteitem(scope.row)" v-if="scope.row.CanEdit">{{$t('Table.delete_btn')}}</span>
                 </template>
                 <!-- 已发布,已通过 -->
                 <template v-if="[2,6].includes(scope.row.State)">
@@ -356,17 +356,17 @@
                 <!-- 音频上传和下载,跟State无关 -->
                 <span style="color: #46c371; cursor: pointer"
                     v-if="!['晨报', '周报'].includes(scope.row.ClassifyNameFirst)&&permissionBtn.checkPermissionBtn(permissionBtn.reportManageBtn.reportManage_audioUpload)"
-                    @click="openupload(scope.row.Id)">音频上传</span>
+                    @click="openupload(scope.row.Id)">{{$t('ReportManage.smart_audio_upload_btn')}}</span>
                 <a v-permission="permissionBtn.reportManageBtn.reportManage_audioDownload"
                     :href="hostapi + '?ReportId=' + parseInt(scope.row.Id)" v-if="
                     scope.row.VideoUrl &&
                     !['晨报', '周报'].includes(scope.row.ClassifyNameFirst)
-                " :download="scope.row.VideoName" style="cursor: pointer; color: #4099ef">音频下载</a>
+                " :download="scope.row.VideoName" style="cursor: pointer; color: #4099ef">{{$t('ReportManage.smart_audio_download_btn')}}</a>
                 <span v-permission="permissionBtn.reportManageBtn.reportManage_audioDownload"
                     style="cursor: pointer; color: #4099ef" v-if="
                     ['晨报', '周报'].includes(scope.row.ClassifyNameFirst) &&
                     scope.row.ChapterVideoList.length > 0
-                " @click="handleShowDownloadAudio(scope.row)">音频下载</span>
+                " @click="handleShowDownloadAudio(scope.row)">{{$t('ReportManage.smart_audio_download_btn')}}</span>
               </div>
             </template>
           </el-table-column>
@@ -387,7 +387,7 @@
     </el-card>
     <!-- 添加账号弹框 -->
     <el-dialog
-      title="提 示"
+      :title="$t('Confirm.prompt')"
       :modal-append-to-body="false"
       :visible.sync="remarkDialog"
       :close-on-click-modal="false"
@@ -401,32 +401,32 @@
           :src="$icons.warn"
           style="color: #fff; width: 16px; height: 16px; margin-right: 5px"
         />
-        <span style="font-size: 16px">提 示</span>
+        <span style="font-size: 16px">{{$t('Confirm.prompt')}}</span>
       </div>
       <div>
         <el-input
           type="textarea"
           v-model="remarkForm.Remark"
           rows="4"
-          placeholder="请输入备注内容"
+          :placeholder="$t('ReportManage.smart_please_content_ipt')"
         ></el-input>
       </div>
       <div slot="footer" class="dialog-footer">
         <el-button type="primary" size="medium" @click.native="setremarkcontent"
-          >确 定</el-button
+          >{{$t('Dialog.confirm_btn')}}</el-button
         >
         <el-button
           type="primary"
           plain
           size="medium"
           @click.native="remarkDialog = false"
-          >取 消</el-button
+          >{{$t('Dialog.cancel_btn')}}</el-button
         >
       </div>
     </el-dialog>
     <!-- 上传音频弹框 -->
     <el-dialog
-      title="上传音频"
+      :title="$t('ReportManage.smart_audio_upload_btn')"
       :visible.sync="uploadDialog"
       :modal-append-to-body="false"
       :close-on-click-modal="false"
@@ -440,7 +440,7 @@
           :src="$icons.up"
           style="color: #fff; width: 16px; height: 16px; margin-right: 5px"
         />
-        <span style="font-size: 16px">上传音频</span>
+        <span style="font-size: 16px">{{$t('ReportManage.smart_audio_upload_btn')}}</span>
       </div>
       <el-form
         :model="uploadForm"
@@ -462,7 +462,7 @@
             type="text"
             v-model="uploadForm.audioname"
             readonly
-            placeholder="上传报告录音"
+            :placeholder="$t('ReportManage.smart_upload_recording_btn')"
             size="medium"
             style="width: 350px"
           ></el-input>
@@ -477,7 +477,7 @@
           plain
           size="medium"
           @click.native="uploadDialog = false"
-          >取 消</el-button
+          >{{$t('Dialog.cancel_btn')}}</el-button
         >
         <el-button
           type="primary"
@@ -491,7 +491,7 @@
 
     <!-- 音频下载弹窗(晨报周报多个音频情况) -->
     <el-dialog
-      title="音频下载"
+      :title="$t('ReportManage.smart_audio_download_btn')"
       :visible.sync="downloadAudio.show"
       :modal-append-to-body="false"
       :close-on-click-modal="false"
@@ -531,10 +531,10 @@
         </div>
         <div style="text-align: center; margin: 30px 0">
           <el-button type="primary" plain @click="downloadAudio.show = false"
-            >取消</el-button
+            >{{$t('Dialog.confirm_btn')}}</el-button
           >
           <el-button type="primary" @click="handelConfirmDownloadAudio"
-            >确定</el-button
+            >{{$t('Dialog.confirm_btn')}}</el-button
           >
         </div>
       </div>
@@ -542,7 +542,7 @@
 
     <!-- 批量发布弹窗 -->
     <el-dialog
-      title="发布提示"
+      :title="$t('ReportManage.smart_release_prompt_btn')"
       :visible.sync="showPublish"
       :modal-append-to-body="false"
       :close-on-click-modal="false"
@@ -558,7 +558,7 @@
             class="el-icon-warning"
             style="font-size: 24px; color: #e6a23c; vertical-align: middle"
           ></i>
-          {{isDSFB?'该报告已设置定时发布,是否立即发布报告并推送模板消息?':'是否立即发布报告,并推送模板消息?'}}
+          {{isDSFB?$t('ReportManage.smart_template_msg'):$t('ReportManage.smart_push_template_btn')}}
         </div>
         <div style="margin-bottom: 20px; text-align: center">
           <el-button
@@ -566,7 +566,7 @@
             plain
             style="width: 100px"
             @click="handleClosePublish"
-            >取消</el-button
+            >{{$t('ReportManage.cancel_btn')}}</el-button
           >
           <el-button
             type="primary"

+ 2 - 2
src/views/smartReport/reportList.vue

@@ -38,7 +38,7 @@
                                 <el-select
                                     @change="search"
                                     v-model="searchform.frequency"
-                                    :placeholder=" $t('ReportManage.smart_update_frequency_filter')"
+                                    :placeholder="$t('ReportManage.smart_update_frequency_filter')"
                                     size="medium"
                                     clearable
                                     style="width:100%"
@@ -122,7 +122,7 @@
                     :data="tableData"
                     v-loading="listLoading"
                     @sort-change="sortChange"
-                    element-loading-text="数据加载中..."
+                    :element-loading-text="$t('Table.data_loading')" 
                     border
                     style="width: 100%"
                 >

+ 1 - 1
src/views/system_manage/departManage.vue

@@ -71,7 +71,7 @@
 				:data="tableData"
 				@row-click="getUserDetail"
 				v-loading="isShowloadding"
-				element-loading-text="数据加载中..."
+				:element-loading-text="$t('Table.data_loading')" 
 				highlight-current-row
 				border>
 					<el-table-column

+ 1 - 1
src/views/system_manage/roleManage.vue

@@ -21,7 +21,7 @@
 			ref="roleTable"
 			:data="tableData"
 			v-loading="isShowloadding"
-			element-loading-text="数据加载中..."
+			:element-loading-text="$t('Table.data_loading')" 
 			border>
 				<el-table-column
 				prop="no"