cloud-web-corejs 1.0.54-dev.2 → 1.0.54-dev.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/package.json +1 -1
  2. package/src/components/VabUpload/mixins.js +1 -1
  3. package/src/components/excelExport/exportFieldDialog.vue +201 -0
  4. package/src/components/excelExport/index.js +5 -5
  5. package/src/components/excelExport/index.vue +1 -0
  6. package/src/components/excelExport/mixins.js +4 -1
  7. package/src/components/excelImport/index.js +13 -13
  8. package/src/components/excelImport/index.vue +9 -6
  9. package/src/components/excelImport/mixins.js +1 -1
  10. package/src/components/fileLibrary/fileObjAuthDialog.vue +125 -103
  11. package/src/components/fileLibrary/fileObjAuthEditDialog.vue +6 -1
  12. package/src/components/fileLibrary/fileObjNotifyEdit.vue +170 -0
  13. package/src/components/fileLibrary/index.vue +2 -2
  14. package/src/components/fileLibrary/mixins/fileObjAuthDialogMixin.js +21 -6
  15. package/src/components/fileLibrary/mixins/indexMixins.js +11 -0
  16. package/src/components/table/index.js +1 -1
  17. package/src/components/tempStorage/tempStorageDialog.vue +2 -2
  18. package/src/components/xform/form-designer/form-widget/dialog/formDialog.vue +1 -0
  19. package/src/components/xform/form-designer/form-widget/dialog/formDrawer.vue +1 -0
  20. package/src/components/xform/form-designer/form-widget/dialog/formFieldDialog.vue +2 -2
  21. package/src/components/xform/form-designer/form-widget/dialog/preformDialog.vue +2 -2
  22. package/src/components/xform/form-designer/form-widget/dialog/searchFormDialog.vue +5 -4
  23. package/src/components/xform/form-designer/form-widget/dialog/vabSearchDialog.vue +2 -2
  24. package/src/components/xform/form-render/indexMixin.js +59 -36
  25. package/src/layout/components/Sidebar/default.vue +1222 -1222
  26. package/src/layout/components/notify_message/unreadDialog.vue +11 -5
  27. package/src/utils/vab.js +1 -1
  28. package/src/views/bd/setting/bd_attach_setting/edit.vue +1 -1
  29. package/src/views/bd/setting/bd_attach_setting/mixins/edit.js +1 -1
  30. package/src/views/bd/setting/form_template/edit.vue +4 -0
  31. package/src/views/bd/setting/form_template/list.vue +4 -2
  32. package/src/views/bd/setting/form_template/mixins/edit.js +1 -1
  33. package/src/views/bd/setting/form_template/mixins/list.js +1 -1
  34. package/src/views/bd/setting/menu_kind/authDialog.vue +1 -1
  35. package/src/views/bd/setting/menu_kind/mixins/authDialog.js +1 -1
  36. package/src/views/bd/setting/table_model/list.vue +4 -2
  37. package/src/views/user/company_info/edit.vue +9 -1
  38. package/src/views/user/home/index.vue +4 -2
  39. package/src/views/user/system_notice/infoDialog.vue +25 -1
  40. package/src/views/user/user/form_edit.vue +56 -49
  41. package/src/views/user/user/list.vue +570 -563
  42. package/src/views/user/wf/wf_obj_config/list.vue +30 -2
  43. package/src/views/user/wf/wf_obj_config/wfBizDataSettingDialog.vue +292 -0
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <div>
3
3
  <el-dialog
4
- title="设置文件权限"
4
+ title="设置权限"
5
5
  :append-to-body="true"
6
6
  :modal-append-to-body="true"
7
7
  :close-on-click-modal="false"
@@ -14,115 +14,137 @@
14
14
  v-el-dialog-center
15
15
  >
16
16
  <div class="cont">
17
- <div class="grid-height" style="height: 500px">
18
- <vxe-grid
19
- class="is-pointer"
20
- ref="table-m1"
21
- :data="tableData"
22
- v-bind="vxeOption"
23
- @resizable-change="$vxeTableUtil.onColumnWitchChange"
24
- @custom="$vxeTableUtil.customHandle"
25
- >
26
- <template #form>
27
- <div class="clearfix screen-btns">
28
- <div class="fl">
29
- <vxe-button status="primary" class="button-sty" icon="el-icon-plus" @click="openSaleOrgAddDialog">新增机构
30
- </vxe-button>
31
- <vxe-button status="primary" class="button-sty" icon="el-icon-plus" @click="openPositionAddDialog">
32
- 新增岗位
33
- </vxe-button>
34
- <vxe-button status="primary" class="button-sty" icon="el-icon-plus" @click="openUserAddDialog">新增用户
35
- </vxe-button>
36
- <vxe-button status="primary" class="button-sty" icon="el-icon-plus" @click="openRoleAddDialog">新增角色
37
- </vxe-button>
38
- <!-- <vxe-button type="text" status="primary" plain class="button-sty" icon="el-icon-delete"
39
- @click="deleteRows()">{{ $t2('删除', 'components.fileLibrary.delete') }}
40
- </vxe-button>-->
41
- </div>
42
- <div class="fl screen-breadcrumb" style="margin-left: 30px;">
43
- <span style="font-size: 12px;">{{ $t2('文件路径', 'components.fileLibrary.filePath') }}:</span>
44
- <el-breadcrumb separator-class="el-icon-arrow-right">
45
- <el-breadcrumb-item v-for="(treeNode,index) in treeNodeArr" :key="index">{{
46
- treeNode.label
47
- }}
48
- </el-breadcrumb-item>
49
- </el-breadcrumb>
50
- </div>
51
- </div>
52
- </template>
53
- <template #saleOrg="{row,rowIndex}">
54
- <el-input
55
- class="search-input"
56
- v-model="row.saleOrgName"
57
- clearable
58
- @clear="
17
+ <div id="containt">
18
+ <el-tabs v-model="activeName" class="tab-box">
19
+ <el-tab-pane :label="$t1('用户权限设置')" name="first">
20
+ <div class="grid-height" style="height: 500px">
21
+ <vxe-grid
22
+ class="is-pointer"
23
+ ref="table-m1"
24
+ :data="tableData"
25
+ v-bind="vxeOption"
26
+ @resizable-change="$vxeTableUtil.onColumnWitchChange"
27
+ @custom="$vxeTableUtil.customHandle"
28
+ >
29
+ <template #form>
30
+ <div class="clearfix screen-btns">
31
+ <div class="fl">
32
+ <vxe-button status="primary" class="button-sty" icon="el-icon-plus"
33
+ @click="openSaleOrgAddDialog">
34
+ 新增机构
35
+ </vxe-button>
36
+ <vxe-button status="primary" class="button-sty" icon="el-icon-plus"
37
+ @click="openPositionAddDialog">
38
+ 新增岗位
39
+ </vxe-button>
40
+ <vxe-button status="primary" class="button-sty" icon="el-icon-plus" @click="openUserAddDialog">
41
+ 新增用户
42
+ </vxe-button>
43
+ <vxe-button status="primary" class="button-sty" icon="el-icon-plus" @click="openRoleAddDialog">
44
+ 新增角色
45
+ </vxe-button>
46
+ <!-- <vxe-button type="text" status="primary" plain class="button-sty" icon="el-icon-delete"
47
+ @click="deleteRows()">{{ $t2('删除', 'components.fileLibrary.delete') }}
48
+ </vxe-button>-->
49
+ </div>
50
+ <div class="fl screen-breadcrumb" style="margin-left: 30px;">
51
+ <span style="font-size: 12px;">{{ $t2('文件路径', 'components.fileLibrary.filePath') }}:</span>
52
+ <el-breadcrumb separator-class="el-icon-arrow-right">
53
+ <el-breadcrumb-item v-for="(treeNode,index) in treeNodeArr" :key="index">{{
54
+ treeNode.label
55
+ }}
56
+ </el-breadcrumb-item>
57
+ </el-breadcrumb>
58
+ </div>
59
+ </div>
60
+ </template>
61
+ <template #saleOrg="{row,rowIndex}">
62
+ <el-input
63
+ class="search-input"
64
+ v-model="row.saleOrgName"
65
+ clearable
66
+ @clear="
59
67
  row.saleOrgId = null;
60
68
  "
61
- v-if="!row._isParent"
62
- v-el-readonly
63
- >
64
- <i slot="suffix" class="el-input__icon el-icon-search" @click="openSaleOrgRowDialog(row,rowIndex)"></i>
65
- </el-input>
66
- <template v-else>{{ row.saleOrgName }}</template>
67
- </template>
68
- <template #position="{row,rowIndex}">
69
- <el-input
70
- class="search-input"
71
- v-model="row.positionName"
72
- clearable
73
- @clear="
69
+ v-if="!row._isParent"
70
+ v-el-readonly
71
+ >
72
+ <i slot="suffix" class="el-input__icon el-icon-search"
73
+ @click="openSaleOrgRowDialog(row,rowIndex)"></i>
74
+ </el-input>
75
+ <template v-else>{{ row.saleOrgName }}</template>
76
+ </template>
77
+ <template #position="{row,rowIndex}">
78
+ <el-input
79
+ class="search-input"
80
+ v-model="row.positionName"
81
+ clearable
82
+ @clear="
74
83
  row.positionId = null;
75
84
  "
76
- v-if="!row._isParent"
77
- v-el-readonly
78
- >
79
- <i slot="suffix" class="el-input__icon el-icon-search" @click="openPositionRowDialog(row,rowIndex)"></i>
80
- </el-input>
81
- <template v-else>{{ row.positionName }}</template>
82
- </template>
83
- <template #role="{row,rowIndex}">
84
- <el-input
85
- class="search-input"
86
- v-model="row.roleName"
87
- clearable
88
- @clear="
85
+ v-if="!row._isParent"
86
+ v-el-readonly
87
+ >
88
+ <i slot="suffix" class="el-input__icon el-icon-search"
89
+ @click="openPositionRowDialog(row,rowIndex)"></i>
90
+ </el-input>
91
+ <template v-else>{{ row.positionName }}</template>
92
+ </template>
93
+ <template #role="{row,rowIndex}">
94
+ <el-input
95
+ class="search-input"
96
+ v-model="row.roleName"
97
+ clearable
98
+ @clear="
89
99
  row.roleId = null;
90
100
  "
91
- v-if="!row._isParent"
92
- v-el-readonly
93
- >
94
- <i slot="suffix" class="el-input__icon el-icon-search" @click="openRoleRowDialog(row,rowIndex)"></i>
95
- </el-input>
96
- <template v-else>{{ row.roleName }}</template>
97
- </template>
98
- <template #user="{row,rowIndex}">
99
- <el-input
100
- class="search-input"
101
- v-model="row.nickName"
102
- clearable
103
- @clear="
101
+ v-if="!row._isParent"
102
+ v-el-readonly
103
+ >
104
+ <i slot="suffix" class="el-input__icon el-icon-search"
105
+ @click="openRoleRowDialog(row,rowIndex)"></i>
106
+ </el-input>
107
+ <template v-else>{{ row.roleName }}</template>
108
+ </template>
109
+ <template #user="{row,rowIndex}">
110
+ <el-input
111
+ class="search-input"
112
+ v-model="row.nickName"
113
+ clearable
114
+ @clear="
104
115
  row.userId = null;
105
116
  "
106
- v-if="!row._isParent"
107
- v-el-readonly
108
- >
109
- <i slot="suffix" class="el-input__icon el-icon-search" @click="openUserRowDialog(row,rowIndex)"></i>
110
- </el-input>
111
- <template v-else>{{ row.nickName }}</template>
112
- </template>
113
- <template #operate="{row}">
114
- <a
115
- href="javascript:void(0);"
116
- class="a-link"
117
- @click="openEditDialog(row.id)"
118
- >
119
- <el-tooltip :enterable="false" effect="dark" :content="$t2('查看','common.view')" placement="top"
120
- popper-class="tooltip-skin">
121
- <i class="el-icon-edit"/>
122
- </el-tooltip>
123
- </a>
124
- </template>
125
- </vxe-grid>
117
+ v-if="!row._isParent"
118
+ v-el-readonly
119
+ >
120
+ <i slot="suffix" class="el-input__icon el-icon-search"
121
+ @click="openUserRowDialog(row,rowIndex)"></i>
122
+ </el-input>
123
+ <template v-else>{{ row.nickName }}</template>
124
+ </template>
125
+ <template #operate="{row}">
126
+ <a
127
+ href="javascript:void(0);"
128
+ class="a-link"
129
+ @click="openEditDialog(row.id)"
130
+ >
131
+ <el-tooltip :enterable="false" effect="dark" :content="$t2('查看','common.view')" placement="top"
132
+ popper-class="tooltip-skin">
133
+ <i class="el-icon-edit"/>
134
+ </el-tooltip>
135
+ </a>
136
+ </template>
137
+ </vxe-grid>
138
+ </div>
139
+ </el-tab-pane>
140
+ <el-tab-pane :label="$t1('文件操作,发系统通知')" name="second">
141
+ <div class="grid-height" style="height: 500px">
142
+ <fileObjNotifyEdit v-if="showFileObjNotifyEdit" visible-key="showFileObjNotifyEdit"
143
+ :current_prefix="current_prefix" :_dataId="fileObjId" :parent-target="_self"
144
+ @reload="$reloadHandle"></fileObjNotifyEdit>
145
+ </div>
146
+ </el-tab-pane>
147
+ </el-tabs>
126
148
  </div>
127
149
  </div>
128
150
  <span slot="footer" class="dialog-footer">
@@ -130,7 +152,7 @@
130
152
  <i class="el-icon-close el-icon"></i>
131
153
  取 消
132
154
  </el-button>
133
- <el-button type="primary" @click="saveData" class="button-sty">
155
+ <el-button type="primary" @click="saveData" class="button-sty" v-if="activeName=='first'">
134
156
  <i class="el-icon-check el-icon"></i>
135
157
  确 定
136
158
  </el-button>
@@ -13,7 +13,7 @@
13
13
  v-el-dialog-center
14
14
  @close="handleClose"
15
15
  >
16
- <div class="cont">
16
+ <div class="cont" style="height: 550px;">
17
17
  <el-form ref="editForm" :model="fileObjAuth" label-width="110px" class="adSearchForm"
18
18
  style="width: 362px;height: auto;">
19
19
  <el-form-item label="文件路径">
@@ -150,6 +150,11 @@
150
150
  <el-switch v-model="fileObjAuth.shareAuth" :active-value="1" :inactive-value="0"
151
151
  :disabled="fileObjAuth._isParent"/>
152
152
  </el-form-item>
153
+ <el-form-item prop="downWatermarkAuth" :label="$t1('下载打水印')"
154
+ :rules="[{ required: false, trigger: 'blur' }]">
155
+ <el-switch v-model="fileObjAuth.downWatermarkAuth" :active-value="1" :inactive-value="0"
156
+ :disabled="fileObjAuth._isParent"/>
157
+ </el-form-item>
153
158
  </el-form>
154
159
  </div>
155
160
  <span slot="footer" class="dialog-footer">
@@ -0,0 +1,170 @@
1
+ <template>
2
+ <div class="detail-wrap">
3
+ <el-form ref="editForm" :model="fileObjNotify">
4
+ <div class="d-header clearfix">
5
+ <div class="fl">
6
+ <i class="el-icon-info"/>
7
+ {{ isEdit ? $t1('查看文件对象通知设置') : $t1('新增文件对象通知设置') }}
8
+ </div>
9
+ <div class="fr">
10
+ <el-button type="primary" plain class="button-sty" @click="$baseReload()" icon="el-icon-refresh-right">
11
+ {{ $t1('重置') }}
12
+ </el-button>
13
+ <el-button type="primary" class="button-sty" icon="el-icon-check" @click="saveData">{{ $t1('保存') }}
14
+ </el-button>
15
+ </div>
16
+ </div>
17
+ <div class="d-cont">
18
+ <div class="d-item">
19
+ <div class="title first"><b>{{ $t1('基本信息') }}</b></div>
20
+ <table class="table-detail">
21
+ <tbody>
22
+ <tr class="noTr">
23
+ <th class="no"></th>
24
+ <td></td>
25
+ <th class="no"></th>
26
+ <td></td>
27
+ <th class="no"></th>
28
+ <td></td>
29
+ <th class="no"></th>
30
+ <td></td>
31
+ </tr>
32
+ <tr>
33
+ <th style="width: 215px;">
34
+ <em class="f-red">*</em>
35
+ {{ $t1('文件夹内文件操作是否通知') }}
36
+ </th>
37
+ <td colspan="7">
38
+ <el-form-item prop="toNotify" :rules="[{ required: true, trigger: 'blur' }]">
39
+ <el-radio-group v-model="fileObjNotify.toNotify">
40
+ <el-radio :label="0">{{ $t1('不通知') }}</el-radio>
41
+ <el-radio :label="1">{{ $t1('针对当前文件夹中的文件操作') }}</el-radio>
42
+ <el-radio :label="2">{{ $t1('针对当前文件夹与下级所有文件夹的文件操作') }}</el-radio>
43
+ </el-radio-group>
44
+ </el-form-item>
45
+ </td>
46
+ </tr>
47
+ <tr>
48
+ <th>
49
+ {{ $t1('新增文件-通知模板编码') }}
50
+ </th>
51
+ <td colspan="3">
52
+ <el-form-item prop="addNtCode" :rules="[{ required: false, trigger: 'blur' }]">
53
+ <el-input type="text" autocomplete="off" v-model="fileObjNotify.addNtCode" clearable/>
54
+ </el-form-item>
55
+ </td>
56
+ </tr>
57
+ <tr>
58
+ <th>
59
+ {{ $t1('删除文件-通知模板编码') }}
60
+ </th>
61
+ <td colspan="3">
62
+ <el-form-item prop="deleteNtCode" :rules="[{ required: false, trigger: 'blur' }]">
63
+ <el-input type="text" autocomplete="off" v-model="fileObjNotify.deleteNtCode" clearable/>
64
+ </el-form-item>
65
+ </td>
66
+ </tr>
67
+ <tr>
68
+ <th>
69
+ {{ $t1('替换文件-通知模板编码') }}
70
+ </th>
71
+ <td colspan="3">
72
+ <el-form-item prop="replaceNtCode" :rules="[{ required: false, trigger: 'blur' }]">
73
+ <el-input type="text" autocomplete="off" v-model="fileObjNotify.replaceNtCode" clearable/>
74
+ </el-form-item>
75
+ </td>
76
+ </tr>
77
+
78
+ </tbody>
79
+ </table>
80
+ </div>
81
+ </div>
82
+ </el-form>
83
+ </div>
84
+ </template>
85
+
86
+ <script>
87
+ export default {
88
+ name: 'fileObjNotifyEdit',
89
+ props: {
90
+ _dataId: [String, Number],
91
+ current_prefix: String
92
+ },
93
+ components: {},
94
+ data() {
95
+ return {
96
+ isEdit: false,
97
+ tabIndex: 'first',
98
+ dataId: '',
99
+ fileObjNotify: {
100
+ toNotify: 0,
101
+ fileObjId: this._dataId
102
+ }
103
+ };
104
+ },
105
+ created() {
106
+ if (this._dataId && !isNaN(this._dataId)) this.dataId = this._dataId;
107
+ },
108
+ mounted() {
109
+ this.getData();
110
+ },
111
+ methods: {
112
+ getData() {
113
+ if (this.dataId && !isNaN(this.dataId)) {
114
+
115
+ this.$commonHttp({
116
+ url: this.current_prefix + `/file_obj_notify/get`,
117
+ method: `post`,
118
+ data: {
119
+ id: this.dataId
120
+ },
121
+ isLoading: true,
122
+ modalStrictly: true,
123
+ success: res => {
124
+ if (res.objx) {
125
+ this.fileObjNotify = res.objx;
126
+ this.isEdit = true;
127
+ }
128
+ }
129
+ });
130
+ }
131
+ },
132
+ saveData() {
133
+ this.$refs.editForm.$baseValidate(valid => {
134
+ if (valid) {
135
+ this.$baseConfirm(this.$t1('您确定要保存吗?')).then(() => {
136
+ var url = this.current_prefix + `/file_obj_notify/save`;
137
+ debugger
138
+ let a = 1;
139
+ this.$http({
140
+ url: url,
141
+ method: `post`,
142
+ data: this.fileObjNotify,
143
+ isLoading: true,
144
+ success: res => {
145
+ this.$message({
146
+ message: res.content,
147
+ type: 'success',
148
+ duration: 500,
149
+ onClose: t => {
150
+ this.$baseReload();
151
+ }
152
+ });
153
+ }
154
+ });
155
+ });
156
+ }
157
+ });
158
+ }
159
+ }
160
+ };
161
+ </script>
162
+ <style scoped>
163
+ .noTr th {
164
+ height: 0px
165
+ }
166
+
167
+ .noTr td {
168
+ height: 0px
169
+ }
170
+ </style>
@@ -192,7 +192,7 @@
192
192
  href="javascript:void(0);"
193
193
  class="a-link ico"
194
194
  v-if="!attachment.dirs && fileObjAuth.downloadAuth"
195
- @click="$commonFileUtil.downloadFile(attachment.domain + attachment.url, attachment.fileName)"
195
+ @click="downloadSingerFile(attachment)"
196
196
  >
197
197
  <el-tooltip effect="dark" content="下载" placement="top"
198
198
  popper-class="tooltip-skin">
@@ -353,7 +353,7 @@
353
353
  href="javascript:void(0);"
354
354
  class="a-link"
355
355
  v-if="fileObjAuth.downloadAuth == 1"
356
- @click="$commonFileUtil.downloadFile(row.domain + row.url,row.fileName)"
356
+ @click="downloadSingerFile(row)"
357
357
  >
358
358
  <el-tooltip :enterable="false" effect="dark" :content="$t2('下载','components.fileLibrary.download')"
359
359
  placement="top"
@@ -4,6 +4,7 @@ import positionDialog from "../../../views/user/position/dialog";
4
4
  import saleOrgDialog from "../../../views/user/sale_org/dialog";
5
5
  import roleDialog from "../../../views/user/role/dialog";
6
6
  import fileObjAuthEditDialog from "../../../components/fileLibrary/fileObjAuthEditDialog.vue";
7
+ import fileObjNotifyEdit from "@base/components/fileLibrary/fileObjNotifyEdit.vue";
7
8
 
8
9
 
9
10
  let modules = {};
@@ -14,7 +15,7 @@ modules = {
14
15
  treeNodeArr: Array
15
16
  },
16
17
  components: {
17
- editView, userDialog, positionDialog, saleOrgDialog, roleDialog,fileObjAuthEditDialog
18
+ editView, userDialog, positionDialog, saleOrgDialog, roleDialog, fileObjAuthEditDialog, fileObjNotifyEdit
18
19
  },
19
20
  inject: ['current_prefix'],
20
21
  mounted() {
@@ -24,7 +25,7 @@ modules = {
24
25
  let that = this;
25
26
  return {
26
27
  showDialog: true,
27
- activeName: 'second',
28
+ activeName: 'first',
28
29
  value10: '',
29
30
  dataId: '',
30
31
  showEdit: false,
@@ -50,9 +51,9 @@ modules = {
50
51
  showSaleOrgAddDialog: false,
51
52
  showPositionAddDialog: false,
52
53
  showRoleAddDialog: false,
53
- showDetailDialog:false,
54
- currentRow:null,
55
-
54
+ showDetailDialog: false,
55
+ currentRow: null,
56
+ showFileObjNotifyEdit: true
56
57
  };
57
58
  },
58
59
  methods: {
@@ -284,6 +285,19 @@ modules = {
284
285
  }
285
286
  }
286
287
  },
288
+ {
289
+ title: this.$t1('下载打水印 '),
290
+ field: 'downWatermarkAuth',
291
+ width: 150,
292
+ slots: {
293
+ default: ({row}) => {
294
+ return [
295
+ <el-switch v-model={row.downWatermarkAuth} active-value={1} inactive-value={0}
296
+ disabled={row._isParent}></el-switch>
297
+ ];
298
+ }
299
+ }
300
+ },
287
301
  {title: this.$t2('创建人', 'system.label.createBy'), field: 'createBy', width: 150},
288
302
  {title: this.$t2('创建时间', 'system.label.createDate'), field: 'createDate', width: 150},
289
303
  {title: this.$t2('更新人', 'system.label.modifyBy'), field: 'modifyBy', width: 150},
@@ -603,6 +617,7 @@ modules = {
603
617
  deleteDirAuth: 1,
604
618
  historyAuth: 1,
605
619
  shareAuth: 1,
620
+ downWatermarkAuth: 0,
606
621
  fileObjId: this.fileObjId
607
622
  }
608
623
  return row;
@@ -613,7 +628,7 @@ modules = {
613
628
  this.showDetailDialog = true;
614
629
  },
615
630
  confirmDetailDialog(row) {
616
- this.tableData.splice(this.operateIndex,1,row)
631
+ this.tableData.splice(this.operateIndex, 1, row)
617
632
  this.showDetailDialog = false;
618
633
  }
619
634
  }
@@ -7,6 +7,7 @@ import shareDialog from "../shareDialog";
7
7
  import recycleBinDialog from "../recycleBinDialog";
8
8
  import videoDialog from "../../../components/video/dialog";
9
9
  import userDialog from "../../../views/user/user/dialog";
10
+ import {encode} from "js-base64";
10
11
 
11
12
  let modules;
12
13
  modules = {
@@ -1746,6 +1747,16 @@ modules = {
1746
1747
  } else {
1747
1748
  return customFileButton.visable;
1748
1749
  }
1750
+ },
1751
+ downloadSingerFile(attachment) {
1752
+ let fileObjAuth = this.fileObjAuth;
1753
+ if (attachment.dirs || !fileObjAuth.downloadAuth) return
1754
+ let url = attachment.domain + attachment.url;
1755
+ let loginAccount = this.$store.getters.loginAccount;
1756
+ if (fileObjAuth.downWatermarkAuth) {
1757
+ url += '?_w=' + encode(loginAccount)
1758
+ }
1759
+ this.$commonFileUtil.downloadFile(url, attachment.fileName)
1749
1760
  }
1750
1761
  },
1751
1762
  };