doctor-admin-components 1.0.4 → 1.0.6-beta.0

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 (218) hide show
  1. package/lib/index.common.js +399 -321
  2. package/lib/index.css +1 -1
  3. package/lib/index.umd.js +399 -321
  4. package/lib/index.umd.min.js +43 -43
  5. package/package.json +4 -3
  6. package/packages/Button/index.js +16 -0
  7. package/packages/Button/src/index.vue +33 -0
  8. package/packages/index.js +122 -0
  9. package/packages/src/api/biz/bizCompanyBillGoods.js +61 -0
  10. package/packages/src/api/biz/bizContainer.js +86 -0
  11. package/packages/src/api/biz/bizContainerDetail.js +61 -0
  12. package/packages/src/api/biz/bizContract.js +112 -0
  13. package/packages/src/api/biz/bizContractCompany.js +53 -0
  14. package/packages/src/api/biz/bizContractDetail.js +62 -0
  15. package/packages/src/api/biz/bizContractDispute.js +53 -0
  16. package/packages/src/api/biz/bizDealRecord.js +87 -0
  17. package/packages/src/api/biz/bizFileInfo.js +53 -0
  18. package/packages/src/api/biz/bizInvoice.js +161 -0
  19. package/packages/src/api/biz/bizInvoiceExtraCosts.js +53 -0
  20. package/packages/src/api/biz/bizShipment.js +113 -0
  21. package/packages/src/api/biz/companyInfo.js +61 -0
  22. package/packages/src/api/biz/dictData.js +77 -0
  23. package/packages/src/api/biz/track.js +21 -0
  24. package/packages/src/api/system/dict/data.js +60 -0
  25. package/packages/src/api/system/dict/type.js +68 -0
  26. package/packages/src/assets/icons/index.js +17 -0
  27. package/packages/src/assets/icons/svg/404.svg +1 -0
  28. package/packages/src/assets/icons/svg/bug.svg +1 -0
  29. package/packages/src/assets/icons/svg/build.svg +1 -0
  30. package/packages/src/assets/icons/svg/button.svg +1 -0
  31. package/packages/src/assets/icons/svg/cascader.svg +1 -0
  32. package/packages/src/assets/icons/svg/chart.svg +1 -0
  33. package/packages/src/assets/icons/svg/checkbox.svg +1 -0
  34. package/packages/src/assets/icons/svg/clipboard.svg +1 -0
  35. package/packages/src/assets/icons/svg/code.svg +1 -0
  36. package/packages/src/assets/icons/svg/color.svg +1 -0
  37. package/packages/src/assets/icons/svg/component.svg +1 -0
  38. package/packages/src/assets/icons/svg/dashboard.svg +1 -0
  39. package/packages/src/assets/icons/svg/date-range.svg +1 -0
  40. package/packages/src/assets/icons/svg/date.svg +1 -0
  41. package/packages/src/assets/icons/svg/dict.svg +1 -0
  42. package/packages/src/assets/icons/svg/documentation.svg +1 -0
  43. package/packages/src/assets/icons/svg/download.svg +1 -0
  44. package/packages/src/assets/icons/svg/drag.svg +1 -0
  45. package/packages/src/assets/icons/svg/druid.svg +1 -0
  46. package/packages/src/assets/icons/svg/edit.svg +1 -0
  47. package/packages/src/assets/icons/svg/education.svg +1 -0
  48. package/packages/src/assets/icons/svg/email.svg +1 -0
  49. package/packages/src/assets/icons/svg/example.svg +1 -0
  50. package/packages/src/assets/icons/svg/excel.svg +1 -0
  51. package/packages/src/assets/icons/svg/exit-fullscreen.svg +1 -0
  52. package/packages/src/assets/icons/svg/eye-open.svg +1 -0
  53. package/packages/src/assets/icons/svg/eye.svg +1 -0
  54. package/packages/src/assets/icons/svg/form.svg +1 -0
  55. package/packages/src/assets/icons/svg/fullscreen.svg +1 -0
  56. package/packages/src/assets/icons/svg/github.svg +1 -0
  57. package/packages/src/assets/icons/svg/guide.svg +1 -0
  58. package/packages/src/assets/icons/svg/icon.svg +1 -0
  59. package/packages/src/assets/icons/svg/input.svg +1 -0
  60. package/packages/src/assets/icons/svg/international.svg +1 -0
  61. package/packages/src/assets/icons/svg/job.svg +1 -0
  62. package/packages/src/assets/icons/svg/language.svg +1 -0
  63. package/packages/src/assets/icons/svg/link.svg +1 -0
  64. package/packages/src/assets/icons/svg/list.svg +1 -0
  65. package/packages/src/assets/icons/svg/lock.svg +1 -0
  66. package/packages/src/assets/icons/svg/log.svg +1 -0
  67. package/packages/src/assets/icons/svg/logininfor.svg +1 -0
  68. package/packages/src/assets/icons/svg/message.svg +1 -0
  69. package/packages/src/assets/icons/svg/money.svg +1 -0
  70. package/packages/src/assets/icons/svg/monitor.svg +2 -0
  71. package/packages/src/assets/icons/svg/nested.svg +1 -0
  72. package/packages/src/assets/icons/svg/number.svg +1 -0
  73. package/packages/src/assets/icons/svg/online.svg +1 -0
  74. package/packages/src/assets/icons/svg/password.svg +1 -0
  75. package/packages/src/assets/icons/svg/pdf.svg +1 -0
  76. package/packages/src/assets/icons/svg/people.svg +1 -0
  77. package/packages/src/assets/icons/svg/peoples.svg +1 -0
  78. package/packages/src/assets/icons/svg/phone.svg +1 -0
  79. package/packages/src/assets/icons/svg/post.svg +1 -0
  80. package/packages/src/assets/icons/svg/qq.svg +1 -0
  81. package/packages/src/assets/icons/svg/question.svg +1 -0
  82. package/packages/src/assets/icons/svg/radio.svg +1 -0
  83. package/packages/src/assets/icons/svg/rate.svg +1 -0
  84. package/packages/src/assets/icons/svg/redis.svg +1 -0
  85. package/packages/src/assets/icons/svg/row.svg +1 -0
  86. package/packages/src/assets/icons/svg/search.svg +1 -0
  87. package/packages/src/assets/icons/svg/select.svg +1 -0
  88. package/packages/src/assets/icons/svg/server.svg +1 -0
  89. package/packages/src/assets/icons/svg/shopping.svg +1 -0
  90. package/packages/src/assets/icons/svg/size.svg +1 -0
  91. package/packages/src/assets/icons/svg/skill.svg +1 -0
  92. package/packages/src/assets/icons/svg/slider.svg +1 -0
  93. package/packages/src/assets/icons/svg/star.svg +1 -0
  94. package/packages/src/assets/icons/svg/swagger.svg +1 -0
  95. package/packages/src/assets/icons/svg/switch.svg +1 -0
  96. package/packages/src/assets/icons/svg/system.svg +2 -0
  97. package/packages/src/assets/icons/svg/tab.svg +1 -0
  98. package/packages/src/assets/icons/svg/table.svg +1 -0
  99. package/packages/src/assets/icons/svg/textarea.svg +1 -0
  100. package/packages/src/assets/icons/svg/theme.svg +1 -0
  101. package/packages/src/assets/icons/svg/time-range.svg +1 -0
  102. package/packages/src/assets/icons/svg/time.svg +1 -0
  103. package/packages/src/assets/icons/svg/tool.svg +1 -0
  104. package/packages/src/assets/icons/svg/tree-table.svg +1 -0
  105. package/packages/src/assets/icons/svg/tree.svg +1 -0
  106. package/packages/src/assets/icons/svg/upload.svg +1 -0
  107. package/packages/src/assets/icons/svg/user.svg +1 -0
  108. package/packages/src/assets/icons/svg/validCode.svg +1 -0
  109. package/packages/src/assets/icons/svg/warn.svg +1 -0
  110. package/packages/src/assets/icons/svg/wechat.svg +1 -0
  111. package/packages/src/assets/icons/svg/zip.svg +1 -0
  112. package/packages/src/assets/icons/svgo.yml +22 -0
  113. package/packages/src/assets/images/file.png +0 -0
  114. package/packages/src/assets/images/pdf.png +0 -0
  115. package/packages/src/assets/styles/btn.scss +99 -0
  116. package/packages/src/assets/styles/element-ui.scss +92 -0
  117. package/packages/src/assets/styles/element-variables.scss +31 -0
  118. package/packages/src/assets/styles/index.scss +191 -0
  119. package/packages/src/assets/styles/mixin.scss +66 -0
  120. package/packages/src/assets/styles/ruoyi.scss +273 -0
  121. package/packages/src/assets/styles/sidebar.scss +223 -0
  122. package/packages/src/assets/styles/transition.scss +48 -0
  123. package/packages/src/assets/styles/variables.scss +54 -0
  124. package/packages/src/components/DictData/index.js +29 -0
  125. package/packages/src/components/DictTag/index.vue +65 -0
  126. package/packages/src/components/FileUpload/aliyun.vue +350 -0
  127. package/packages/src/components/FileUpload/apk.vue +360 -0
  128. package/packages/src/components/FileUpload/contract-drag.vue +268 -0
  129. package/packages/src/components/FileUpload/contract.vue +239 -0
  130. package/packages/src/components/FileUpload/index.vue +229 -0
  131. package/packages/src/components/FileUpload/s3.vue +244 -0
  132. package/packages/src/components/FileUpload/uploadInvoice.vue +270 -0
  133. package/packages/src/components/ImagePreview/index.vue +92 -0
  134. package/packages/src/components/ImageUpload/aliyun.vue +257 -0
  135. package/packages/src/components/ImageUpload/index.vue +192 -0
  136. package/packages/src/components/ImageUpload/s3.vue +243 -0
  137. package/packages/src/components/ImageUpload/shrinkS3.vue +253 -0
  138. package/packages/src/components/SvgIcon/index.vue +69 -0
  139. package/packages/src/index.js +24 -0
  140. package/packages/src/lang/en.json +225 -0
  141. package/packages/src/lang/zh.json +224 -0
  142. package/packages/src/lib-components/zpw-button.vue +53 -0
  143. package/packages/src/lib-components/zpw-com-test-sample.vue +78 -0
  144. package/packages/src/plugins/auth.js +68 -0
  145. package/packages/src/plugins/cache.js +77 -0
  146. package/packages/src/plugins/download.js +80 -0
  147. package/packages/src/plugins/index.js +28 -0
  148. package/packages/src/plugins/modal.js +83 -0
  149. package/packages/src/plugins/tab.js +75 -0
  150. package/packages/src/router/index.js +339 -0
  151. package/packages/src/store/getters.js +18 -0
  152. package/packages/src/store/index.js +31 -0
  153. package/packages/src/store/modules/app.js +56 -0
  154. package/packages/src/store/modules/i18n.js +28 -0
  155. package/packages/src/store/modules/permission.js +138 -0
  156. package/packages/src/store/modules/settings.js +50 -0
  157. package/packages/src/store/modules/tagsView.js +207 -0
  158. package/packages/src/store/modules/user.js +104 -0
  159. package/packages/src/utils/auth.js +25 -0
  160. package/packages/src/utils/dict/Dict.js +90 -0
  161. package/packages/src/utils/dict/DictConverter.js +17 -0
  162. package/packages/src/utils/dict/DictData.js +13 -0
  163. package/packages/src/utils/dict/DictMeta.js +46 -0
  164. package/packages/src/utils/dict/DictOptions.js +59 -0
  165. package/packages/src/utils/dict/index.js +33 -0
  166. package/packages/src/utils/errorCode.js +6 -0
  167. package/packages/src/utils/generator/config.js +438 -0
  168. package/packages/src/utils/generator/css.js +18 -0
  169. package/packages/src/utils/generator/drawingDefault.js +29 -0
  170. package/packages/src/utils/generator/html.js +359 -0
  171. package/packages/src/utils/generator/icon.json +1 -0
  172. package/packages/src/utils/generator/js.js +236 -0
  173. package/packages/src/utils/generator/render.js +126 -0
  174. package/packages/src/utils/index.js +390 -0
  175. package/packages/src/utils/pdf.js +62 -0
  176. package/packages/src/utils/request.js +227 -0
  177. package/packages/src/utils/ruoyi.js +261 -0
  178. package/packages/src/utils/validate.js +83 -0
  179. package/packages/src/utils/zip.js +62 -0
  180. package/packages/src/views/biz/bizContract/companyList.vue +217 -0
  181. package/packages/src/views/biz/bizContract/contractCompanyList.vue +433 -0
  182. package/packages/src/views/biz/bizContract/depositInvoice.vue +688 -0
  183. package/packages/src/views/biz/bizContract/detail.vue +1168 -0
  184. package/packages/src/views/biz/bizContract/index.vue +940 -0
  185. package/packages/src/views/biz/bizFileInfo/contract copy.vue +359 -0
  186. package/packages/src/views/biz/bizFileInfo/contract-history.vue +150 -0
  187. package/packages/src/views/biz/bizFileInfo/contract.vue +1115 -0
  188. package/packages/src/views/biz/bizFileInfo/detail.vue +82 -0
  189. package/packages/src/views/biz/bizFileInfo/fileShow.vue +316 -0
  190. package/packages/src/views/biz/bizFileInfo/index.vue +405 -0
  191. package/packages/src/views/biz/bizShipment/detail.vue +202 -0
  192. package/packages/src/views/biz/bizShipment/gen.vue +1147 -0
  193. package/packages/src/views/biz/bizShipment/index.vue +696 -0
  194. package/packages/src/views/biz/contractTracing/addBillGood.vue +184 -0
  195. package/packages/src/views/biz/contractTracing/addSubCompany.vue +337 -0
  196. package/packages/src/views/biz/contractTracing/association.vue +189 -0
  197. package/packages/src/views/biz/contractTracing/billGoods.vue +180 -0
  198. package/packages/src/views/biz/contractTracing/billInfo.vue +559 -0
  199. package/packages/src/views/biz/contractTracing/billPdf.vue +275 -0
  200. package/packages/src/views/biz/contractTracing/chargingDialog.vue +84 -0
  201. package/packages/src/views/biz/contractTracing/contract.vue +1256 -0
  202. package/packages/src/views/biz/contractTracing/contractInfo.vue +209 -0
  203. package/packages/src/views/biz/contractTracing/contractPdf.vue +562 -0
  204. package/packages/src/views/biz/contractTracing/contractSummary.vue +1012 -0
  205. package/packages/src/views/biz/contractTracing/contractTracingDetail.vue +88 -0
  206. package/packages/src/views/biz/contractTracing/disputeRecord.vue +311 -0
  207. package/packages/src/views/biz/contractTracing/edit.vue +205 -0
  208. package/packages/src/views/biz/contractTracing/editBill.vue +722 -0
  209. package/packages/src/views/biz/contractTracing/index.vue +1503 -0
  210. package/packages/src/views/biz/contractTracing/purchaseInvoiceUpload.vue +330 -0
  211. package/packages/src/views/biz/contractTracing/sendDrafEmail.vue +120 -0
  212. package/packages/src/views/biz/contractTracing/shipment.vue +601 -0
  213. package/packages/src/views/biz/contractTracing/subCompanyDialog.vue +318 -0
  214. package/packages/src/views/biz/track/index.vue +171 -0
  215. package/packages/src/views/components/icons/element-icons.js +3 -0
  216. package/packages/src/views/components/icons/index.vue +87 -0
  217. package/packages/src/views/components/icons/svg-icons.js +10 -0
  218. package/packages/src/views/test.vue +44 -0
@@ -0,0 +1,82 @@
1
+ <!--
2
+ * @Author: zhangpengwei 15038779532@163.com
3
+ * @Date: 2022-10-08 10:03:50
4
+ * @LastEditors: zhangpengwei 15038779532@163.com
5
+ * @LastEditTime: 2023-07-24 10:59:29
6
+ * @FilePath: /doctor-admin-components-再生博士管理台组建/src/views/biz/bizFileInfo/detail.vue
7
+ * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
8
+ -->
9
+ <template>
10
+ <div class="app-container">
11
+
12
+ <!-- 文件信息详情对话框 -->
13
+ <el-dialog :title="title" :visible.sync="open" width="550px" append-to-body>
14
+ <el-form ref="form" :model="form" label-width="100px">
15
+ <el-form-item label="关联编号" prop="linkId">
16
+ {{form.linkId}}
17
+ </el-form-item>
18
+ <el-form-item label="文件名" prop="fileName">
19
+ {{form.fileName}}
20
+ </el-form-item>
21
+ <el-form-item label="文件路径" prop="url">
22
+ {{form.url}}
23
+ </el-form-item>
24
+ <el-form-item label="创建时间" prop="createTime">
25
+ {{form.createTime}}
26
+ </el-form-item>
27
+ <el-form-item label="扩展名" prop="ext">
28
+ {{form.ext}}
29
+ </el-form-item>
30
+ </el-form>
31
+ </el-dialog>
32
+ </div>
33
+ </template>
34
+
35
+ <script>
36
+ import { getBizFileInfo } from "../../../api/biz/bizFileInfo";
37
+
38
+ export default {
39
+ name: "BizFileInfo",
40
+ data() {
41
+ return {
42
+ // 遮罩层
43
+ loading: true,
44
+ // 弹出层标题
45
+ title: "",
46
+ // 是否显示弹出层
47
+ open: false,
48
+ // 表单参数
49
+ form: {},
50
+ };
51
+ },
52
+ created() {
53
+
54
+ },
55
+ methods: {
56
+ // 表单重置
57
+ reset() {
58
+ this.form = {
59
+ fileId: null,
60
+ linkId: null,
61
+ linkType: null,
62
+ fileName: null,
63
+ fileType: null,
64
+ url: null,
65
+ createTime: null,
66
+ ext: null
67
+ };
68
+ this.resetForm("form");
69
+ },
70
+ /** 展示按钮操作 */
71
+ handleShow(row) {
72
+ this.reset();
73
+ const fileId = row.fileId || this.ids
74
+ getBizFileInfo(fileId).then(response => {
75
+ this.form = response.data;
76
+ this.open = true;
77
+ this.title = "文件信息";
78
+ });
79
+ },
80
+ }
81
+ };
82
+ </script>
@@ -0,0 +1,316 @@
1
+ <template>
2
+ <div class="file-info" v-if="fileInfo.url">
3
+ <div class="main">
4
+ <el-checkbox label="" @change="handleCheck"> </el-checkbox>
5
+ <div class="area">
6
+ <div class="area-info">
7
+ <div class="area-pdf" v-if="fileInfo.ext == '.pdf'"></div>
8
+ <el-image
9
+ style="width: 54px; height: 54px"
10
+ :src="fileInfo.url"
11
+ fit="contain"
12
+ :preview-src-list="[fileInfo.url]"
13
+ v-else-if="isImage(fileInfo.ext)"
14
+ ></el-image>
15
+ <div class="area-file" v-else></div>
16
+ <el-button
17
+ type="text"
18
+ size="mini"
19
+ class="ml5"
20
+ @click="openFile(fileInfo.url)"
21
+ >{{ $t("contractDetail.preview") }}</el-button
22
+ >
23
+ <el-button type="text" size="mini" @click="handleDownload">
24
+ {{ $t("contractDetail.download") }}
25
+ </el-button>
26
+ </div>
27
+ <div v-if="!this.hiddenOperation">
28
+ <el-dropdown trigger="click" @command="handleCommand">
29
+ <span class="el-dropdown-link">
30
+ {{ fileInfo.fileName }}
31
+ <i class="el-icon-arrow-down el-icon--right"></i>
32
+ </span>
33
+ <el-dropdown-menu slot="dropdown">
34
+ <el-dropdown-item command="delete">{{
35
+ $t("contractDetail.delete")
36
+ }}</el-dropdown-item>
37
+ <el-dropdown-item command="rename">重命名</el-dropdown-item>
38
+ <el-dropdown-item command="deleteAndUpload">
39
+ $t('contractDetail.deleteAndUpload')</el-dropdown-item
40
+ >
41
+ </el-dropdown-menu>
42
+ </el-dropdown>
43
+ </div>
44
+ <div v-else>
45
+ {{ fileInfo.fileName }}
46
+ </div>
47
+ </div>
48
+ </div>
49
+
50
+ <!-- 添加或修改文件信息对话框 -->
51
+ <el-dialog :title="title" :visible.sync="open" width="550px" append-to-body>
52
+ <el-form ref="form" :model="form" label-width="100px">
53
+ <el-form-item :label="$t('contractDetail.fileNmae')" prop="fileName">
54
+ <el-input v-model="form.fileName" placeholder="请输入文件名" />
55
+ </el-form-item>
56
+ </el-form>
57
+ <div slot="footer" class="dialog-footer">
58
+ <el-button type="primary" @click="submitForm">{{
59
+ $t("button.confirm")
60
+ }}</el-button>
61
+ <el-button @click="cancel">{{ $t("button.cancel") }}</el-button>
62
+ </div>
63
+ </el-dialog>
64
+
65
+ <!-- 上传文件信息对话框 -->
66
+ <el-dialog
67
+ :title="title"
68
+ :visible.sync="uploadOpen"
69
+ width="550px"
70
+ append-to-body
71
+ >
72
+ <el-form ref="form" :model="uploadForm" label-width="100px">
73
+ <file-upload v-model="uploadForm.fileInfoList"> </file-upload>
74
+ </el-form>
75
+ <div slot="footer" class="dialog-footer">
76
+ <el-button type="primary" @click="submitUploadForm">{{
77
+ $t("button.confirm")
78
+ }}</el-button>
79
+ <el-button @click="cancel">{{ $t("button.cancel") }}</el-button>
80
+ </div>
81
+ </el-dialog>
82
+ </div>
83
+ </template>
84
+ <script>
85
+ import { downloadFile } from "../../../utils/request";
86
+ import {
87
+ getBizFileInfo,
88
+ delBizFileInfo,
89
+ addBizFileInfo,
90
+ updateBizFileInfo,
91
+ } from "../../../api/biz/bizFileInfo";
92
+ export default {
93
+ name: "FileShow",
94
+ props: {
95
+ // 文件信息
96
+ fileInfo: {
97
+ type: Object,
98
+ default: () => {
99
+ return {
100
+ url: "",
101
+ fileName: "",
102
+ ext: "",
103
+ };
104
+ },
105
+ },
106
+ },
107
+ data() {
108
+ return {
109
+ checkedIds: [],
110
+ //是否显示上传弹出层
111
+ uploadOpen: false,
112
+ // 是否显示弹出层
113
+ open: false,
114
+ // 弹出层标题
115
+ title: "",
116
+ // 表单参数
117
+ form: {},
118
+ //上传表单
119
+ uploadForm: {},
120
+ };
121
+ },
122
+ computed: {
123
+ fileId() {
124
+ return this.fileInfo.fileId;
125
+ },
126
+ },
127
+ methods: {
128
+ // 取消按钮
129
+ cancel() {
130
+ this.open = false;
131
+ this.uploadOpen = false;
132
+ this.reset();
133
+ },
134
+ // 表单重置
135
+ reset() {
136
+ this.form = {
137
+ fileId: null,
138
+ linkId: null,
139
+ linkType: null,
140
+ fileName: null,
141
+ fileType: null,
142
+ url: null,
143
+ createTime: null,
144
+ ext: null,
145
+ };
146
+ this.uploadForm = {
147
+ fileId: null,
148
+ linkId: null,
149
+ linkType: null,
150
+ fileName: null,
151
+ fileType: null,
152
+ url: null,
153
+ createTime: null,
154
+ ext: null,
155
+ fileInfoList: [],
156
+ };
157
+ this.resetForm("form");
158
+ },
159
+ /** 提交按钮 */
160
+ submitForm() {
161
+ this.$refs["form"].validate((valid) => {
162
+ if (valid) {
163
+ if (this.form.fileId != null) {
164
+ updateBizFileInfo(this.form).then((response) => {
165
+ this.$modal.msgSuccess("修改成功");
166
+ this.open = false;
167
+ this.$emit("refresh");
168
+ });
169
+ } else {
170
+ addBizFileInfo(this.form).then((response) => {
171
+ this.$modal.msgSuccess("新增成功");
172
+ this.open = false;
173
+ this.$emit("refresh");
174
+ });
175
+ }
176
+ }
177
+ });
178
+ },
179
+ /** 修改按钮操作 */
180
+ handleUpdate(row) {
181
+ this.reset();
182
+ const fileId = row.fileId || this.ids;
183
+ getBizFileInfo(fileId).then((response) => {
184
+ this.form = response.data;
185
+ this.open = true;
186
+ this.title = "修改文件信息";
187
+ });
188
+ },
189
+ /** 删除按钮操作 */
190
+ handleDelete(row) {
191
+ const fileIds = row.fileId || this.ids;
192
+ this.$modal
193
+ .confirm("是否确认删除该文件?")
194
+ .then(function () {
195
+ return delBizFileInfo(fileIds);
196
+ })
197
+ .then(() => {
198
+ this.$emit("refresh");
199
+ this.$modal.msgSuccess("删除成功");
200
+ })
201
+ .catch(() => {});
202
+ },
203
+ submitUploadForm() {
204
+ console.log(this.uploadForm);
205
+ addBizFileInfo(this.uploadForm).then((response) => {
206
+ this.$modal.msgSuccess("上传成功");
207
+ this.uploadOpen = false;
208
+ this.$emit("refresh");
209
+ });
210
+ },
211
+ handleDeleteAndUpload(row) {
212
+ const fileId = row.fileId;
213
+ this.$modal
214
+ .confirm("是否确认删除该文件并重新上传?")
215
+ .then(function () {
216
+ return delBizFileInfo(fileId);
217
+ })
218
+ .then(() => {
219
+ this.$modal.msgSuccess("删除成功");
220
+ this.reset();
221
+ this.uploadOpen = true;
222
+ this.uploadForm = {
223
+ linkId: row.linkId,
224
+ linkType: row.linkType,
225
+ fileType: row.fileType,
226
+ };
227
+ this.title = "上传文件";
228
+ })
229
+ .catch(() => {});
230
+ },
231
+ handleCommand(command) {
232
+ switch (command) {
233
+ case "delete":
234
+ this.handleDelete(this.fileInfo);
235
+ break;
236
+ case "rename":
237
+ this.handleUpdate(this.fileInfo);
238
+ break;
239
+ case "deleteAndUpload":
240
+ this.handleDeleteAndUpload(this.fileInfo);
241
+ break;
242
+ default:
243
+ break;
244
+ }
245
+ },
246
+ isImage(ext) {
247
+ return [".jpg", ".jpeg", ".png", ".gif"].includes(ext);
248
+ },
249
+ /** 下载文件 */
250
+ handleDownload() {
251
+ // this.download(this.fileInfo.url, {}, this.fileInfo.fileName);
252
+ downloadFile(this.fileInfo.url, this.fileInfo.fileName);
253
+ },
254
+ openFile(url) {
255
+ window.open(url);
256
+ },
257
+ handleCheck(val) {
258
+ if (val) {
259
+ this.$emit("checked", this.fileInfo);
260
+ } else {
261
+ this.$emit("uncheck", this.fileInfo.fileId);
262
+ }
263
+ },
264
+ },
265
+ };
266
+ </script>
267
+ <style lang="scss" scoped>
268
+ .file-info {
269
+ width: 160px;
270
+ display: flex;
271
+ // border: 1px solid red;
272
+ .main {
273
+ display: flex;
274
+ .area {
275
+ margin-left: 5px;
276
+ width: 100%;
277
+ height: 100%;
278
+ display: block;
279
+ .area-info {
280
+ display: flex;
281
+ .area-pdf {
282
+ width: 38px;
283
+ height: 46px;
284
+ background-image: url("../../../assets/images/pdf.png") no-repeat
285
+ center;
286
+ background-size: contain;
287
+ }
288
+ .area-file {
289
+ width: 38px;
290
+ height: 46px;
291
+ background: url("../../../assets/images/file.png") no-repeat center;
292
+ background-size: contain;
293
+ }
294
+ }
295
+ }
296
+ .filename {
297
+ width: 140px;
298
+ margin-top: 10px;
299
+ font-size: 14px;
300
+ color: #333;
301
+ text-align: left;
302
+ word-wrap: break-word;
303
+ }
304
+ }
305
+ ::v-deep .el-dropdown {
306
+ }
307
+ .el-dropdown-link {
308
+ cursor: pointer;
309
+ color: #409eff;
310
+ word-break: break-word;
311
+ }
312
+ .el-icon-arrow-down {
313
+ font-size: 12px;
314
+ }
315
+ }
316
+ </style>