vue2-client 1.14.60 → 1.14.62
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.
- package/package.json +1 -1
- package/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox.vue +3 -7
- package/src/base-client/components/common/AmapMarker/index.js +3 -3
- package/src/base-client/components/common/XAddNativeForm/demo.vue +2 -5
- package/src/base-client/components/common/XDetailsView/index.js +3 -3
- package/src/base-client/components/common/XFormGroupDetails/index.js +3 -3
- package/src/base-client/components/common/XReportGrid/XReport.vue +0 -2
- package/src/base-client/components/his/XHisEditor/XHisEditor.vue +16 -122
- package/src/base-client/components/his/XTitle/README.md +8 -5
- package/src/pages/ReportGrid/index.vue +1 -5
- package/src/pages/WorkflowDetail/WorkFlowDemo.vue +79 -36
- package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowHandle.vue +21 -26
- package/src/router/async/router.map.js +5 -6
- package/src/services/api/restTools.js +0 -1
- package/vue.config.js +3 -3
package/package.json
CHANGED
|
@@ -314,17 +314,13 @@ export default {
|
|
|
314
314
|
let result
|
|
315
315
|
if (this.searchResultType !== 'Default') {
|
|
316
316
|
if (this.searchResultType === 'Array') {
|
|
317
|
-
|
|
318
|
-
if (this.attr.type === 'coordinateSearch') {
|
|
319
|
-
result = [this.addressObj.lng_lat]
|
|
320
|
-
} else {
|
|
321
|
-
result = [_addstr || this.addressObj.address, this.addressObj.lng_lat]
|
|
322
|
-
}
|
|
317
|
+
result = [_addstr || this.addressObj.address, this.addressObj.lng_lat]
|
|
323
318
|
} else {
|
|
324
319
|
result = {}
|
|
325
320
|
// 如果是坐标搜索,只返回坐标
|
|
321
|
+
// 不知道为什么这么加 命名之前的组件已经返回了 lng_lat ,算了 还是相信后人的智慧吧
|
|
326
322
|
if (this.attr.type === 'coordinateSearch') {
|
|
327
|
-
result[this.resultKeys.
|
|
323
|
+
result[this.resultKeys.address] = this.addressObj.lng_lat
|
|
328
324
|
} else {
|
|
329
325
|
result[this.resultKeys.address] = _addstr || this.addressObj.address
|
|
330
326
|
result[this.resultKeys.coords] = this.addressObj.lng_lat
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import AmapPointRendering from './AmapPointRendering'
|
|
2
|
-
|
|
3
|
-
export default AmapPointRendering
|
|
1
|
+
import AmapPointRendering from './AmapPointRendering'
|
|
2
|
+
|
|
3
|
+
export default AmapPointRendering
|
|
@@ -6,13 +6,10 @@ export default {
|
|
|
6
6
|
name: 'Demo',
|
|
7
7
|
components: { XAddNativeForm },
|
|
8
8
|
mounted () {
|
|
9
|
-
|
|
10
|
-
getConfigByNameAsync('ceshiCRUD', 'af-system').then(res => {
|
|
9
|
+
getConfigByNameAsync('form_check_test', 'af-system').then(res => {
|
|
11
10
|
this.$refs.xAddFrom.init(Object.assign(res, {
|
|
12
11
|
modifyModelData: {
|
|
13
|
-
data: {
|
|
14
|
-
oldSignList: realTableData
|
|
15
|
-
}
|
|
12
|
+
data: {}
|
|
16
13
|
}
|
|
17
14
|
}))
|
|
18
15
|
})
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import XDetailsView from './XDetailsView'
|
|
2
|
-
|
|
3
|
-
export default XDetailsView
|
|
1
|
+
import XDetailsView from './XDetailsView'
|
|
2
|
+
|
|
3
|
+
export default XDetailsView
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import XFormGroupDetails from './XFormGroupDetails'
|
|
2
|
-
|
|
3
|
-
export default XFormGroupDetails
|
|
1
|
+
import XFormGroupDetails from './XFormGroupDetails'
|
|
2
|
+
|
|
3
|
+
export default XFormGroupDetails
|
|
@@ -249,8 +249,6 @@ export default {
|
|
|
249
249
|
},
|
|
250
250
|
methods: {
|
|
251
251
|
findComponentByName (instance, componentName, maxDepth, findType) {
|
|
252
|
-
findType = findType || 'children'
|
|
253
|
-
maxDepth = maxDepth || 50
|
|
254
252
|
// 基础判断:如果实例不存在或者已经超过最大深度,返回null
|
|
255
253
|
if (!instance || maxDepth <= 0) {
|
|
256
254
|
return null
|
|
@@ -86,8 +86,7 @@
|
|
|
86
86
|
</template>
|
|
87
87
|
|
|
88
88
|
<script>
|
|
89
|
-
|
|
90
|
-
import jsPDF from 'jspdf'
|
|
89
|
+
|
|
91
90
|
import { runLogic } from '@vue2-client/services/api/common'
|
|
92
91
|
import { initDiagnosisDropdown } from './diagnosisAutocomplete'
|
|
93
92
|
|
|
@@ -388,136 +387,31 @@ export default {
|
|
|
388
387
|
})
|
|
389
388
|
}
|
|
390
389
|
},
|
|
391
|
-
//
|
|
392
|
-
|
|
390
|
+
// 保存文档
|
|
391
|
+
save () {
|
|
393
392
|
// 验证必须输入项
|
|
394
393
|
if (this.editorRef.validate()) {
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
logicExtraParams: this.logicExtraParams,
|
|
407
|
-
// 添加 PDF 数据
|
|
408
|
-
pdfData: pdfBlob
|
|
409
|
-
}
|
|
410
|
-
|
|
411
|
-
// 3. 保存到后端
|
|
412
|
-
const res = await runLogic(this.saveDataLogicName, data, this.serviceName)
|
|
413
|
-
|
|
394
|
+
// 获取HTML文档和结构化数据(JSON)
|
|
395
|
+
const data = {
|
|
396
|
+
doc: this.editorRef.getHtml(),
|
|
397
|
+
dataObject: this.editorRef.getBindObject(),
|
|
398
|
+
dataMode: this.dataMode,
|
|
399
|
+
resId: this.resId,
|
|
400
|
+
modifyResModel: this.modifyResModel,
|
|
401
|
+
logicExtraParams: this.logicExtraParams
|
|
402
|
+
}
|
|
403
|
+
// 保存HTML文档和结构化数据到后端服务
|
|
404
|
+
runLogic(this.saveDataLogicName, data, this.serviceName).then(res => {
|
|
414
405
|
this.$message.success('保存成功')
|
|
415
406
|
this.changeRes(res.currResData.id)
|
|
416
407
|
this.$emit('saveafter', data.dataObject)
|
|
417
|
-
}
|
|
418
|
-
console.error('保存失败:', error)
|
|
419
|
-
this.$message.error('保存失败,请重试')
|
|
420
|
-
} finally {
|
|
408
|
+
}).finally(() => {
|
|
421
409
|
this.resDataModalVisible = false
|
|
422
|
-
}
|
|
410
|
+
})
|
|
423
411
|
} else {
|
|
424
412
|
this.$message.error('请检查未填写的项目')
|
|
425
413
|
}
|
|
426
414
|
},
|
|
427
|
-
// 修改 generatePDF 方法,返回 PDF Blob
|
|
428
|
-
async generatePDF() {
|
|
429
|
-
// 显示加载提示
|
|
430
|
-
this.$message.loading('正在生成 PDF...', 0)
|
|
431
|
-
|
|
432
|
-
try {
|
|
433
|
-
const iframe = document.getElementById('x-editor')
|
|
434
|
-
const iframeDocument = iframe.contentDocument || iframe.contentWindow.document
|
|
435
|
-
|
|
436
|
-
// 添加自定义样式
|
|
437
|
-
const style = iframeDocument.createElement('style')
|
|
438
|
-
style.textContent = `
|
|
439
|
-
body {
|
|
440
|
-
font-family: Arial, sans-serif;
|
|
441
|
-
line-height: 1.5;
|
|
442
|
-
color: #333;
|
|
443
|
-
padding: 20px;
|
|
444
|
-
}
|
|
445
|
-
h1, h2, h3 {
|
|
446
|
-
color: #000;
|
|
447
|
-
margin-bottom: 15px;
|
|
448
|
-
}
|
|
449
|
-
table {
|
|
450
|
-
border-collapse: collapse;
|
|
451
|
-
width: 100%;
|
|
452
|
-
margin-bottom: 20px;
|
|
453
|
-
}
|
|
454
|
-
th, td {
|
|
455
|
-
border: 1px solid #ddd;
|
|
456
|
-
padding: 8px;
|
|
457
|
-
text-align: left;
|
|
458
|
-
}
|
|
459
|
-
th {
|
|
460
|
-
background-color: #f5f5f5;
|
|
461
|
-
}
|
|
462
|
-
img {
|
|
463
|
-
max-width: 100%;
|
|
464
|
-
height: auto;
|
|
465
|
-
}
|
|
466
|
-
`
|
|
467
|
-
iframeDocument.head.appendChild(style)
|
|
468
|
-
|
|
469
|
-
const canvas = await html2canvas(iframeDocument.body, {
|
|
470
|
-
scale: 2,
|
|
471
|
-
useCORS: true,
|
|
472
|
-
logging: false,
|
|
473
|
-
backgroundColor: '#ffffff',
|
|
474
|
-
windowWidth: iframeDocument.documentElement.scrollWidth,
|
|
475
|
-
windowHeight: iframeDocument.documentElement.scrollHeight
|
|
476
|
-
})
|
|
477
|
-
|
|
478
|
-
const pdf = new jsPDF({
|
|
479
|
-
orientation: 'portrait',
|
|
480
|
-
unit: 'mm',
|
|
481
|
-
format: 'a4'
|
|
482
|
-
})
|
|
483
|
-
|
|
484
|
-
const imgData = canvas.toDataURL('image/png')
|
|
485
|
-
const imgWidth = 210
|
|
486
|
-
const imgHeight = (canvas.height * imgWidth) / canvas.width
|
|
487
|
-
|
|
488
|
-
const pageHeight = 297
|
|
489
|
-
let heightLeft = imgHeight
|
|
490
|
-
let position = 0
|
|
491
|
-
|
|
492
|
-
pdf.addImage(imgData, 'PNG', 0, position, imgWidth, imgHeight)
|
|
493
|
-
|
|
494
|
-
while (heightLeft > 0) {
|
|
495
|
-
position = heightLeft - pageHeight
|
|
496
|
-
pdf.addPage()
|
|
497
|
-
pdf.addImage(imgData, 'PNG', 0, position, imgWidth, imgHeight)
|
|
498
|
-
heightLeft -= pageHeight
|
|
499
|
-
}
|
|
500
|
-
|
|
501
|
-
// 生成 PDF 的 Blob 数据
|
|
502
|
-
const pdfBlob = pdf.output('blob')
|
|
503
|
-
|
|
504
|
-
// 预览 PDF
|
|
505
|
-
const pdfUrl = URL.createObjectURL(pdfBlob)
|
|
506
|
-
window.open(pdfUrl, '_blank')
|
|
507
|
-
|
|
508
|
-
// 关闭加载提示
|
|
509
|
-
this.$message.destroy()
|
|
510
|
-
this.$message.success('PDF 生成成功')
|
|
511
|
-
|
|
512
|
-
// 返回 PDF Blob 数据
|
|
513
|
-
return pdfBlob
|
|
514
|
-
} catch (error) {
|
|
515
|
-
console.error('PDF 生成失败:', error)
|
|
516
|
-
this.$message.destroy()
|
|
517
|
-
this.$message.error('PDF 生成失败,请重试')
|
|
518
|
-
throw error // 抛出错误,让 save 方法捕获
|
|
519
|
-
}
|
|
520
|
-
},
|
|
521
415
|
// 打印文档
|
|
522
416
|
print () {
|
|
523
417
|
this.editorRef.execCommand('print')
|
|
@@ -22,7 +22,7 @@ XTitle 是一个多功能的标题组件,可以显示标题文本或按钮,
|
|
|
22
22
|
|
|
23
23
|
### 配置参数格式
|
|
24
24
|
|
|
25
|
-
XTitle 组件通过一个字符串参数进行配置
|
|
25
|
+
XTitle 组件通过一个字符串参数进行配置
|
|
26
26
|
|
|
27
27
|
各部分说明:
|
|
28
28
|
|
|
@@ -37,9 +37,6 @@ XTitle 组件通过一个字符串参数进行配置
|
|
|
37
37
|
|
|
38
38
|
### 1. 基本标题
|
|
39
39
|
|
|
40
|
-
```vue
|
|
41
|
-
<x-title query-params-name="患者信息"></x-title>
|
|
42
|
-
```
|
|
43
40
|
```vue
|
|
44
41
|
<x-title query-params-name="患者信息-title"></x-title>
|
|
45
42
|
```
|
|
@@ -47,7 +44,7 @@ XTitle 组件通过一个字符串参数进行配置
|
|
|
47
44
|
### 2. 带下划线的标题
|
|
48
45
|
|
|
49
46
|
```vue
|
|
50
|
-
<x-title query-params-name="患者信息-title
|
|
47
|
+
<x-title query-params-name="患者信息-title--line"></x-title>
|
|
51
48
|
```
|
|
52
49
|
|
|
53
50
|
### 3. 自定义下划线颜色和宽度
|
|
@@ -56,6 +53,12 @@ XTitle 组件通过一个字符串参数进行配置
|
|
|
56
53
|
<x-title query-params-name="患者信息-title--line-red-800"></x-title>
|
|
57
54
|
```
|
|
58
55
|
|
|
56
|
+
### 4. 带点击事件的标题
|
|
57
|
+
|
|
58
|
+
```vue
|
|
59
|
+
<x-title query-params-name="患者信息-title-showPatient-line" @showPatient="handleShowPatient"></x-title>
|
|
60
|
+
```
|
|
61
|
+
|
|
59
62
|
### 5. 按钮模式
|
|
60
63
|
|
|
61
64
|
```vue
|
|
@@ -4,14 +4,13 @@
|
|
|
4
4
|
@updateImg="updateImg"
|
|
5
5
|
ref="main"
|
|
6
6
|
:use-oss-for-img="false"
|
|
7
|
-
config-name="
|
|
7
|
+
config-name="outpatientWait"
|
|
8
8
|
server-name="af-his"
|
|
9
9
|
:show-img-in-cell="true"
|
|
10
10
|
:display-only="displayOnly"
|
|
11
11
|
:edit-mode="false"
|
|
12
12
|
:show-save-button="false"
|
|
13
13
|
:dont-format="true"/>
|
|
14
|
-
<button @click="clickButton()"></button>
|
|
15
14
|
</div>
|
|
16
15
|
</template>
|
|
17
16
|
|
|
@@ -68,9 +67,6 @@ export default {
|
|
|
68
67
|
result.push(item.exportData())
|
|
69
68
|
})
|
|
70
69
|
console.warn('save', result)
|
|
71
|
-
},
|
|
72
|
-
clickButton () {
|
|
73
|
-
this.findComponentByName(this, 'aaa', 10, 'parent')
|
|
74
70
|
}
|
|
75
71
|
}
|
|
76
72
|
}
|
|
@@ -1,47 +1,90 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<a-card :bordered="false">
|
|
3
|
+
<x-form-table
|
|
4
|
+
title="示例页面"
|
|
5
|
+
:queryParamsName="queryParamsName"
|
|
6
|
+
:fixed-query-form="{
|
|
7
|
+
users_f_handler_id: currUser.id,
|
|
8
|
+
}"
|
|
9
|
+
@action="toDetail">
|
|
10
|
+
<template slot="button">
|
|
11
|
+
<a-button @click="add">
|
|
12
|
+
<a-icon type="plus"/>
|
|
13
|
+
发起报建
|
|
14
|
+
</a-button>
|
|
15
|
+
</template>
|
|
16
|
+
</x-form-table>
|
|
17
|
+
<a-modal
|
|
18
|
+
v-model="applyAddFlag"
|
|
19
|
+
:footer="null"
|
|
20
|
+
:dialog-style="{ top: '5rem' }"
|
|
21
|
+
:z-index="1001"
|
|
22
|
+
title="发起报建"
|
|
23
|
+
:destroyOnClose="true">
|
|
24
|
+
<x-add-native-form ref="xForm" @onSubmit="applySubmit"/>
|
|
25
|
+
</a-modal>
|
|
26
|
+
<WorkflowDetail ref="workFlow" @success="success"></WorkflowDetail>
|
|
27
|
+
</a-card>
|
|
28
|
+
</template>
|
|
29
|
+
|
|
1
30
|
<script>
|
|
2
31
|
import WorkflowDetail from '@vue2-client/pages/WorkflowDetail/WorkflowDetail.vue'
|
|
32
|
+
import XFormTable from '@vue2-client/base-client/components/common/XFormTable/XFormTable'
|
|
33
|
+
import XAddNativeForm from '@vue2-client/base-client/components/common/XAddNativeForm/XAddNativeForm.vue'
|
|
34
|
+
import { getConfigByName, runLogic } from '@vue2-client/services/api/common'
|
|
35
|
+
import { mapState } from 'vuex'
|
|
3
36
|
|
|
4
37
|
export default {
|
|
5
|
-
name: '
|
|
6
|
-
components: {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
38
|
+
name: 'Apply',
|
|
39
|
+
components: {
|
|
40
|
+
XFormTable,
|
|
41
|
+
XAddNativeForm,
|
|
42
|
+
WorkflowDetail
|
|
43
|
+
},
|
|
44
|
+
data () {
|
|
45
|
+
return {
|
|
46
|
+
// 查询配置文件名
|
|
47
|
+
queryParamsName: 'applyCRUD',
|
|
48
|
+
// 发起报建弹框控制
|
|
49
|
+
applyAddFlag: false
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
computed: {
|
|
53
|
+
...mapState('account', { currUser: 'user' }),
|
|
11
54
|
},
|
|
12
55
|
methods: {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
56
|
+
add () {
|
|
57
|
+
this.applyAddFlag = true
|
|
58
|
+
this.$nextTick(
|
|
59
|
+
() => {
|
|
60
|
+
getConfigByName('addApplyForm', 'af-apply', (res) => {
|
|
61
|
+
this.$refs.xForm.init({
|
|
62
|
+
businessType: '新增',
|
|
63
|
+
title: '发起报建',
|
|
64
|
+
...res
|
|
65
|
+
})
|
|
66
|
+
})
|
|
67
|
+
}
|
|
68
|
+
)
|
|
69
|
+
},
|
|
70
|
+
applySubmit (formData) {
|
|
71
|
+
runLogic('addApply', formData).then(
|
|
72
|
+
res => {
|
|
73
|
+
this.$message.success('发起报建成功')
|
|
74
|
+
this.applyAddFlag = false
|
|
75
|
+
}
|
|
76
|
+
).catch(() => {
|
|
77
|
+
this.applyAddFlag = false
|
|
78
|
+
})
|
|
21
79
|
},
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
* @param successStepId 完成步骤id
|
|
30
|
-
* @param successStep 完成步骤名称
|
|
31
|
-
* @param fromStep 起步骤名称
|
|
32
|
-
* @param toStep 往步骤名称
|
|
33
|
-
*/
|
|
34
|
-
nextClick ({ note, form, workflowId, fromStepId, toStepId, fromStep, toStep, successStepId, successStep }) {
|
|
35
|
-
console.log('success', note, form, workflowId, fromStepId, toStepId, fromStep, toStep, successStepId, successStep)
|
|
80
|
+
success () {
|
|
81
|
+
console.log('完工')
|
|
82
|
+
},
|
|
83
|
+
toDetail (record, id) {
|
|
84
|
+
this.$refs.workFlow.init({
|
|
85
|
+
workflowId: record.twf_id
|
|
86
|
+
})
|
|
36
87
|
}
|
|
37
88
|
}
|
|
38
89
|
}
|
|
39
90
|
</script>
|
|
40
|
-
|
|
41
|
-
<template>
|
|
42
|
-
<WorkflowDetail ref="workFlow" @success="success" @nextClick="nextClick"></WorkflowDetail>
|
|
43
|
-
</template>
|
|
44
|
-
|
|
45
|
-
<style scoped lang="less">
|
|
46
|
-
|
|
47
|
-
</style>
|
|
@@ -45,11 +45,11 @@
|
|
|
45
45
|
bordered
|
|
46
46
|
>
|
|
47
47
|
<a-descriptions-item
|
|
48
|
-
v-for="
|
|
49
|
-
:key="
|
|
48
|
+
v-for="item in formCompletedDataPreview.data"
|
|
49
|
+
:key="item.label"
|
|
50
50
|
>
|
|
51
|
-
<span slot="label" style="color: #000">{{
|
|
52
|
-
<div style="white-space: pre-wrap">{{ value }}</div>
|
|
51
|
+
<span slot="label" style="color: #000">{{ item.label }}</span>
|
|
52
|
+
<div style="white-space: pre-wrap">{{ item.value }}</div>
|
|
53
53
|
</a-descriptions-item>
|
|
54
54
|
</a-descriptions>
|
|
55
55
|
<div v-if="formCompletedDataPreview.note">
|
|
@@ -786,33 +786,28 @@ export default {
|
|
|
786
786
|
formCompletedDataPreview = JSON.parse(JSON.stringify(this.formCompletedData))
|
|
787
787
|
// 使用字段定义中内容,将回显数据的列名,替换为定义的中文名
|
|
788
788
|
const formData = formCompletedDataPreview.data
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
}
|
|
802
|
-
} else {
|
|
803
|
-
formData[stepDefine.name] = formData[key]
|
|
789
|
+
// 新增:有序处理表单数据,保证顺序与formJson一致
|
|
790
|
+
const orderedFormData = []
|
|
791
|
+
for (const stepDefine of this.targetStepDefine) {
|
|
792
|
+
const key = stepDefine.model
|
|
793
|
+
if (formData && Object.prototype.hasOwnProperty.call(formData, key)) {
|
|
794
|
+
let value = formData[key]
|
|
795
|
+
// 读取字典值
|
|
796
|
+
if (stepDefine.formType === 'select' && stepDefine.selectType === 'key') {
|
|
797
|
+
for (const item of this.$appdata.getDictionaryList(stepDefine.selectKey)) {
|
|
798
|
+
if (item.value === value) {
|
|
799
|
+
value = item.label
|
|
800
|
+
break
|
|
804
801
|
}
|
|
805
802
|
}
|
|
806
|
-
if (key !== stepDefine.name) {
|
|
807
|
-
delete formData[key]
|
|
808
|
-
}
|
|
809
|
-
break
|
|
810
803
|
}
|
|
804
|
+
orderedFormData.push({
|
|
805
|
+
label: stepDefine.name,
|
|
806
|
+
value
|
|
807
|
+
})
|
|
811
808
|
}
|
|
812
809
|
}
|
|
813
|
-
|
|
814
|
-
formCompletedDataPreview.data = null
|
|
815
|
-
}
|
|
810
|
+
formCompletedDataPreview.data = orderedFormData
|
|
816
811
|
// 备注
|
|
817
812
|
formCompletedDataPreview.note = this.stepsForChild[stepId - 1].note
|
|
818
813
|
if (!formCompletedDataPreview.data && !formCompletedDataPreview.files.length && !formCompletedDataPreview.images.length && !formCompletedDataPreview.note) {
|
|
@@ -55,17 +55,16 @@ routerResource.newDynamicStatistics = () => import('@vue2-client/pages/NewDynami
|
|
|
55
55
|
routerResource.example = {
|
|
56
56
|
path: 'example',
|
|
57
57
|
name: '示例主页面',
|
|
58
|
-
// component: () => import('@vue2-client/base-client/components/common/
|
|
59
|
-
|
|
60
|
-
// component: () => import('@vue2-client/base-client/components/his/XCharge/XCharge.vue'),
|
|
61
|
-
// component: () => import('@vue2-client/base-client/components/common/XAddNativeForm/demo.vue'),
|
|
58
|
+
// component: () => import('@vue2-client/base-client/components/common/XDescriptions/demo.vue'),
|
|
59
|
+
component: () => import('@vue2-client/base-client/components/common/XAddNativeForm/demo.vue'),
|
|
62
60
|
// component: () => import('@vue2-client/base-client/components/common/XFormGroup/demo.vue'),
|
|
63
|
-
component: () => import('@vue2-client/base-client/components/common/
|
|
64
|
-
// component: () => import('@vue2-client/base-client/components/common/XFormTable/
|
|
61
|
+
// component: () => import('@vue2-client/base-client/components/common/XReport/XReportDemo.vue'),
|
|
62
|
+
// component: () => import('@vue2-client/base-client/components/common/XFormTable/demo.vue'),
|
|
65
63
|
// component: () => import('@vue2-client/base-client/components/common/XDatePicker/demo.vue'),
|
|
66
64
|
// component: () => import('@vue2-client/base-client/components/common/XTab/XTabDemo.vue'),
|
|
67
65
|
// component: () => import('@vue2-client/base-client/components/common/XRate/demo.vue'),
|
|
68
66
|
// component: () => import('@vue2-client/base-client/components/common/XForm/demo.vue'),
|
|
67
|
+
// component: () => import('@vue2-client/base-client/components/his/XTimeSelect/XTimeSelectDemo.vue'),
|
|
69
68
|
// component: () => import('@vue2-client/pages/WorkflowDetail/WorkFlowDemo.vue'),
|
|
70
69
|
// component: () => import('@vue2-client/base-client/components/common/XConversation/XConversationDemo.vue'),
|
|
71
70
|
// component: () => import('@vue2-client/base-client/components/common/XButtons/XButtonDemo.vue'),
|
package/vue.config.js
CHANGED
|
@@ -11,12 +11,12 @@ const productionGzipExtensions = ['js', 'css']
|
|
|
11
11
|
const isProd = process.env.NODE_ENV === 'production'
|
|
12
12
|
|
|
13
13
|
// v4 产品演示
|
|
14
|
-
const v3Server = 'http://
|
|
14
|
+
const v3Server = 'http://192.168.50.67:31567'
|
|
15
15
|
// const gateway = 'http://192.168.50.67:31467'
|
|
16
16
|
// const testUpload = 'http://123.60.214.109:8406'
|
|
17
17
|
const OSSServerDev = 'http://192.168.50.67:30351'
|
|
18
18
|
// const revenue = 'http://aote-office.8866.org:31567'
|
|
19
|
-
const revenue = 'http://
|
|
19
|
+
const revenue = 'http://192.168.50.67:31567'
|
|
20
20
|
// const OSSServerProd = 'http://192.168.50.67:31351'
|
|
21
21
|
// const testUploadLocal = 'http://127.0.0.1:9001'
|
|
22
22
|
// v3 铜川
|
|
@@ -83,7 +83,7 @@ module.exports = {
|
|
|
83
83
|
// v3用
|
|
84
84
|
// pathRewrite: { '^/api/af-system/': '/rs/', '^/api/af-iot/': '/rs/' },
|
|
85
85
|
// pathRewrite: { '^/api/': '/' },
|
|
86
|
-
target:
|
|
86
|
+
target: revenue,
|
|
87
87
|
changeOrigin: true
|
|
88
88
|
},
|
|
89
89
|
'/devApi': {
|