doctor-admin-components 1.0.13-pro.1 → 1.0.14-beta.10

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 (47) hide show
  1. package/README.md +15 -2
  2. package/package.json +1 -1
  3. package/packages/index.js +16 -1
  4. package/packages/src/api/biz/bizContract.js +1005 -0
  5. package/packages/src/api/biz/bizFileInfo.js +16 -0
  6. package/packages/src/api/biz/bizInvoice.js +1 -1
  7. package/packages/src/api/biz/bizShipment.js +38 -0
  8. package/packages/src/assets/images/click-show-table.png +0 -0
  9. package/packages/src/assets/images/more.png +0 -0
  10. package/packages/src/assets/images/pdf-new.png +0 -0
  11. package/packages/src/components/DictTag/index.vue +12 -2
  12. package/packages/src/components/FileUpload/contract-drag-new.vue +100 -11
  13. package/packages/src/i18n/en/message.json +305 -0
  14. package/packages/src/i18n/index.js +38 -0
  15. package/packages/src/i18n/zh-CN/message.json +305 -0
  16. package/packages/src/index.js +24 -1
  17. package/packages/src/utils/MycommonUtil.js +12 -0
  18. package/packages/src/utils/index.js +35 -0
  19. package/packages/src/views/biz/bizFileInfo/PAYMENT_VOUCHER(/"payment_voucher/", /"/344/273/230/346/254/276/345/207/255/350/257/201.ini" +222 -0
  20. package/packages/src/views/biz/bizFileInfo/contract copy.vue +1711 -0
  21. package/packages/src/views/biz/bizFileInfo/contract.vue +1925 -1019
  22. package/packages/src/views/biz/bizFileInfo/contractFile/BillOfLadingNoTab.vue +116 -0
  23. package/packages/src/views/biz/bizFileInfo/contractFile/ContentTitle.vue +102 -0
  24. package/packages/src/views/biz/bizFileInfo/contractFile/IMGPreviewCheckBox.vue +324 -0
  25. package/packages/src/views/biz/bizFileInfo/contractFile/Progress.vue +85 -0
  26. package/packages/src/views/biz/bizFileInfo/contractFile/ProgressDetail.vue +123 -0
  27. package/packages/src/views/biz/bizFileInfo/contractFile/SectionSlot.vue +91 -0
  28. package/packages/src/views/biz/bizFileInfo/contractFile/ShowAndHide.vue +178 -0
  29. package/packages/src/views/biz/bizFileInfo/fileShow copy.vue +321 -0
  30. package/packages/src/views/biz/bizFileInfo/fileShow.vue +152 -48
  31. package/packages/src/views/biz/bizFileInfo/fileShowClaim.vue +1 -1
  32. package/packages/src/views/biz/bizShipment/add.vue +178 -29
  33. package/packages/src/views/biz/bizShipment/referenceAlert.vue +168 -0
  34. package/packages/src/views/biz/contractTracing/billInfo.vue +64 -40
  35. package/packages/src/views/biz/contractTracing/companyBanks.vue +228 -0
  36. package/packages/src/views/biz/contractTracing/contractInfo.vue +1 -1
  37. package/packages/src/views/biz/contractTracing/contractPdf.vue +10 -5
  38. package/packages/src/views/biz/contractTracing/contractSummary.vue +31 -19
  39. package/packages/src/views/biz/contractTracing/contractTracingDetail copy.vue +107 -0
  40. package/packages/src/views/biz/contractTracing/contractTracingDetail.vue +209 -31
  41. package/packages/src/views/biz/contractTracing/editBill.vue +22 -9
  42. package/packages/src/views/biz/contractTracing/purchaseInvoiceUpload.vue +153 -7
  43. package/packages/src/views/biz/contractTracing/shipmentPurchaseAmount.vue +14 -0
  44. package/packages/src/views/biz/contractTracing/subCompanyDialog.vue +8 -2
  45. package/packages/src/views/components/RegionPicker/Distpicker.vue +459 -0
  46. package/packages/src/views/components/RegionPicker/districts.js +4641 -0
  47. package/packages/src/views/test.vue +3 -3
@@ -1,34 +1,55 @@
1
1
  <template>
2
2
  <div class="file-info" v-if="fileInfo.url">
3
3
  <div class="main">
4
- <el-checkbox v-if="!this.hiddenOperation" label="" @change="handleCheck"> </el-checkbox>
4
+ <el-checkbox v-if="!this.hiddenOperation && !hiddenSelect" label="" class="checkbox-position" @change="handleCheck" v-model="checkFlag">
5
+ </el-checkbox>
5
6
  <div class="area">
6
7
  <div class="area-info">
7
- <div class="area-pdf" v-if="fileInfo.ext == '.pdf'"></div>
8
- <el-image style="width: 54px; height: 54px" :src="fileInfo.url" fit="contain" :preview-src-list="[fileInfo.url]" v-else-if="isImage(fileInfo.ext)"></el-image>
8
+ <div class="area-pdf" v-if="isPdf(fileInfo.url)"></div>
9
+ <el-image style="width: 38px; height: 46px" :src="fileInfo.url" fit="contain" :preview-src-list="[fileInfo.url]" v-else-if="isImage(fileInfo.url)"></el-image>
9
10
  <div class="area-file" v-else></div>
10
- <el-button type="text" size="mini" class="ml5" @click="openFile(fileInfo.url)">{{ $t('contractDetail.preview') }}</el-button>
11
- <el-button type="text" size="mini" @click="handleDownload">
12
- {{ $t('contractDetail.download') }}
13
- </el-button>
14
- </div>
15
- <div v-if="!this.hiddenOperation">
16
- <el-dropdown trigger="click" @command="handleCommand">
17
- <span class="el-dropdown-link">
11
+ <div>
12
+ <div> {{ fileInfo.fileName }}</div>
13
+ <div class="preview-download-root">
14
+ <div
15
+ v-if="!fileInfo.downloadUrl"
16
+ type="text"
17
+ size="mini"
18
+ class="preview-download"
19
+ @click="openFile(fileInfo.url)"
20
+ >{{ $t("contractDetail.preview") }}</div
21
+ >
22
+ <div class="preview-download" type="text" size="mini" @click="handleDownload">
23
+ {{ $t("contractDetail.download") }}
24
+ </div>
25
+ <div v-if="!this.hiddenOperation">
26
+ <el-dropdown trigger="click" @command="handleCommand">
27
+ <span class="el-dropdown-link">
28
+ <div class="more-icon"></div>
29
+ </span>
30
+
31
+ <el-dropdown-menu slot="dropdown" v-if="type == 'signContract'" >
32
+ <el-dropdown-item command="signContract">
33
+ {{ $t('contractDetail.withdraw_sign') }}
34
+ </el-dropdown-item>
35
+ <el-dropdown-item command="rename">{{$t('contractDetail.rename')}}</el-dropdown-item>
36
+ </el-dropdown-menu>
37
+ <el-dropdown-menu slot="dropdown" v-else >
38
+ <el-dropdown-item command="delete">{{
39
+ $t("contractDetail.delete")
40
+ }}</el-dropdown-item>
41
+ <el-dropdown-item command="rename">{{$t('contractDetail.rename')}}</el-dropdown-item>
42
+ <!-- <el-dropdown-item command="deleteAndUpload">
43
+ {{ $t("contractDetail.deleteAndUpload") }}
44
+ </el-dropdown-item> -->
45
+ </el-dropdown-menu>
46
+ </el-dropdown>
47
+ </div>
48
+ <!-- <div v-else style="width:120px;word-break:break-all">
18
49
  {{ fileInfo.fileName }}
19
- <i class="el-icon-arrow-down el-icon--right"></i>
20
- </span>
21
- <el-dropdown-menu slot="dropdown">
22
- <el-dropdown-item command="delete">{{ $t('contractDetail.delete') }}</el-dropdown-item>
23
- <el-dropdown-item command="rename">重命名</el-dropdown-item>
24
- <el-dropdown-item command="deleteAndUpload">
25
- {{ $t('contractDetail.deleteAndUpload') }}
26
- </el-dropdown-item>
27
- </el-dropdown-menu>
28
- </el-dropdown>
29
- </div>
30
- <div v-else style="width: 120px; word-break: break-all">
31
- {{ fileInfo.fileName }}
50
+ </div> -->
51
+ </div>
52
+ </div>
32
53
  </div>
33
54
  </div>
34
55
  </div>
@@ -37,7 +58,7 @@
37
58
  <el-dialog :title="title" :visible.sync="open" width="550px" append-to-body>
38
59
  <el-form ref="form" :model="form" label-width="100px">
39
60
  <el-form-item :label="$t('contractDetail.fileNmae')" prop="fileName">
40
- <el-input v-model="form.fileName" placeholder="请输入文件名" />
61
+ <el-input v-model="form.fileName" :placeholder="$t('contractDetail.Please_enter_a_file_name')" />
41
62
  </el-form-item>
42
63
  </el-form>
43
64
  <div slot="footer" class="dialog-footer">
@@ -60,7 +81,9 @@
60
81
  </template>
61
82
  <script>
62
83
  import { downloadFile } from '../../../utils/request'
63
- import { getBizFileInfo, delBizFileInfo, addBizFileInfo, updateBizFileInfo } from '../../../api/biz/bizFileInfo'
84
+ import { getBizFileInfo, delBizFileInfo, addBizFileInfo, updateBizFileInfo, shipmentWithDrawDraftBill } from '../../../api/biz/bizFileInfo'
85
+ import { isImage, isPdf } from '../../../utils/index';
86
+
64
87
  export default {
65
88
  name: 'FileShow',
66
89
  props: {
@@ -75,14 +98,34 @@ export default {
75
98
  }
76
99
  }
77
100
  },
101
+ selectFileListProp: {
102
+ type: Array,
103
+ default: () => {
104
+ return []
105
+ }
106
+ },
78
107
  //是否隐藏操作
79
108
  hiddenOperation: {
80
109
  type: Boolean,
81
- default: false
82
- }
110
+ default: false,
111
+ },
112
+ hiddenSelect: {
113
+ type: Boolean,
114
+ default: false,
115
+ },
116
+ type: {
117
+ type: String,
118
+ default: '',
119
+ },
120
+ deleteTips: {
121
+ type: String,
122
+ default: null,
123
+ },
83
124
  },
84
125
  data() {
85
126
  return {
127
+ isImage,
128
+ isPdf,
86
129
  checkedIds: [],
87
130
  //是否显示上传弹出层
88
131
  uploadOpen: false,
@@ -93,9 +136,10 @@ export default {
93
136
  // 表单参数
94
137
  form: {},
95
138
  //上传表单
96
- uploadForm: {}
139
+ uploadForm: {},
140
+ checkFlag: false,
97
141
  }
98
- },
142
+ },
99
143
  computed: {
100
144
  fileId() {
101
145
  return this.fileInfo.fileId
@@ -167,13 +211,20 @@ export default {
167
211
  handleDelete(row) {
168
212
  const fileIds = row.fileId || this.ids
169
213
  this.$modal
170
- .confirm('是否确认删除该文件?')
214
+ .confirm(this.deleteTips || '是否确认删除该文件?')
171
215
  .then(function () {
172
216
  return delBizFileInfo(fileIds)
173
217
  })
174
218
  .then(() => {
175
- this.$emit('refresh')
176
- this.$modal.msgSuccess('删除成功')
219
+ if(row.fileType == "draft_bill_of_lading") {
220
+ shipmentWithDrawDraftBill({shipmentId:row.linkId}).then(() => {
221
+ this.$emit('refresh')
222
+ this.$modal.msgSuccess('删除成功')
223
+ })
224
+ } else {
225
+ this.$emit('refresh')
226
+ this.$modal.msgSuccess('删除成功')
227
+ }
177
228
  })
178
229
  .catch(() => {})
179
230
  },
@@ -207,26 +258,36 @@ export default {
207
258
  },
208
259
  handleCommand(command) {
209
260
  switch (command) {
210
- case 'delete':
211
- this.handleDelete(this.fileInfo)
212
- break
213
- case 'rename':
214
- this.handleUpdate(this.fileInfo)
215
- break
216
- case 'deleteAndUpload':
217
- this.handleDeleteAndUpload(this.fileInfo)
218
- break
261
+ case "delete":
262
+ this.handleDelete(this.fileInfo);
263
+ break;
264
+ case "rename":
265
+ this.handleUpdate(this.fileInfo);
266
+ break;
267
+ case "signContract":
268
+ this.$emit("signContract", this.fileInfo);
269
+ break;
270
+ case "deleteAndUpload":
271
+ this.handleDeleteAndUpload(this.fileInfo);
272
+ break;
219
273
  default:
220
274
  break
221
275
  }
222
276
  },
223
- isImage(ext) {
224
- return ['.jpg', '.jpeg', '.png', '.gif'].includes(ext)
225
- },
226
277
  /** 下载文件 */
227
278
  handleDownload() {
228
279
  // this.download(this.fileInfo.url, {}, this.fileInfo.fileName);
229
- downloadFile(this.fileInfo.url, this.fileInfo.fileName)
280
+ if(this.fileInfo.downloadUrl) {
281
+ let filename
282
+ if (this.fileInfo.billType === 'receipt') {
283
+ filename = 'DebitNote ' + this.fileInfo.billNo + '.pdf'
284
+ } else {
285
+ filename = 'CreditNote ' + this.fileInfo.billNo + '.pdf'
286
+ }
287
+ this.$download.zip('/bill/download?id=' + this.fileInfo.id, filename)
288
+ } else {
289
+ downloadFile(this.fileInfo.url, this.fileInfo.fileName)
290
+ }
230
291
  },
231
292
  openFile(url) {
232
293
  window.open(url)
@@ -234,20 +295,36 @@ export default {
234
295
  handleCheck(val) {
235
296
  if (val) {
236
297
  this.$emit('checked', this.fileInfo)
298
+ this.checkFlag = true
237
299
  } else {
238
300
  this.$emit('uncheck', this.fileInfo.fileId)
301
+ this.checkFlag = false
239
302
  }
240
303
  }
304
+ },
305
+ watch: {
306
+ selectFileListProp: {
307
+ handler(val) {
308
+ if(val == 0) {
309
+ this.checkFlag = false
310
+ }
311
+ },
312
+ immediate: true,
313
+ deep: true
314
+ }
241
315
  }
242
316
  }
243
317
  </script>
244
318
  <style lang="scss" scoped>
245
319
  .file-info {
246
- width: 160px;
320
+ min-width: 450px;
247
321
  display: flex;
248
322
  // border: 1px solid red;
249
323
  .main {
250
324
  display: flex;
325
+ .checkbox-position {
326
+ margin-top: 10px;
327
+ }
251
328
  .area {
252
329
  margin-left: 5px;
253
330
  width: 100%;
@@ -258,7 +335,7 @@ export default {
258
335
  .area-pdf {
259
336
  width: 38px;
260
337
  height: 46px;
261
- background: url('../../../assets/images/pdf.png') no-repeat center;
338
+ background: url("../../../assets/images/pdf-new.png") no-repeat center;
262
339
  background-size: contain;
263
340
  }
264
341
  .area-file {
@@ -267,6 +344,33 @@ export default {
267
344
  background: url('../../../assets/images/file.png') no-repeat center;
268
345
  background-size: contain;
269
346
  }
347
+ .more-icon {
348
+ margin-left:10px;
349
+ cursor: pointer;
350
+ width: 20px;
351
+ height: 20px;
352
+ background: url("../../../assets/images/more.png") no-repeat center;
353
+ background-size: contain;
354
+ }
355
+ .preview-download-root {
356
+ display:flex;
357
+ margin-top:5px;
358
+
359
+ .preview-download {
360
+ cursor: pointer;
361
+ margin-left:8px;
362
+ min-width: 45px;
363
+ width:max-content;
364
+ padding: 0 10px;
365
+ height: 21px;
366
+ text-align: center;
367
+ line-height: 17px;
368
+ background: #FFFFFF;
369
+ border-radius: 11px;
370
+ font-size:12px;
371
+ border: 2px solid #D1D3D4;
372
+ }
373
+ }
270
374
  }
271
375
  }
272
376
  .filename {
@@ -269,7 +269,7 @@ export default {
269
269
  .area-pdf {
270
270
  width: 38px;
271
271
  height: 46px;
272
- background-image: url("../../../assets/images/pdf.png") no-repeat
272
+ background-image: url("../../../assets/images/pdf-new.png") no-repeat
273
273
  center;
274
274
  background-size: contain;
275
275
  }