askbot-dragon 1.7.22-beta → 1.7.23-beta
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 +2 -1
- package/public/index.html +8 -10
- package/src/assets/js/AliyunlssUtil.js +50 -26
- package/src/assets/js/hammer.js +13 -2
- package/src/assets/less/converSationContainer/common.less +7 -0
- package/src/components/ActionAlertIframe.vue +24 -1
- package/src/components/AiGuide.vue +121 -154
- package/src/components/AnswerDocknowledge.vue +108 -100
- package/src/components/ConversationContainer.vue +13 -220
- package/src/components/MyEditor.vue +2 -1
- package/src/components/actionSatisfaction.vue +3 -3
- package/src/components/answerRadio.vue +3 -3
- package/src/components/askVideo.vue +23 -0
- package/src/components/associationIntention.vue +11 -7
- package/src/components/formTemplate.vue +54 -50
- package/src/components/intelligentSummary.vue +8 -4
- package/src/components/message/TextMessage.vue +15 -11
- package/src/components/message/swiper/ticketSwiper.vue +1 -1
- package/src/components/newPdfPosition.vue +878 -0
- package/src/components/pdfPosition.vue +217 -37
- package/src/components/popup.vue +2 -2
- package/src/components/previewDoc.vue +6 -2
- package/src/components/previewPdf.vue +159 -134
- package/src/components/senderMessagePlatform.vue +4 -4
- package/src/components/utils/ckeditor.js +1 -1
- package/src/components/welcomeKnowledgeFile.vue +6 -2
- package/src/components/welcomeLlmCard.vue +5 -1
- package/src/components/welcomeSuggest.vue +1 -1
- package/src/locales/cn.json +72 -0
- package/src/locales/en.json +73 -0
- package/src/locales/jp.json +73 -0
- package/src/main.js +18 -0
- package/src/components/QwFeedback.vue +0 -302
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
)
|
|
18
18
|
"
|
|
19
19
|
>
|
|
20
|
-
|
|
20
|
+
{{$t('actionSatisfaction.satisfaction')}}
|
|
21
21
|
</div>
|
|
22
22
|
<div
|
|
23
23
|
class="statisfaction-item"
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
)
|
|
33
33
|
"
|
|
34
34
|
>
|
|
35
|
-
|
|
35
|
+
{{$t('actionSatisfaction.notSatisfied')}}
|
|
36
36
|
</div>
|
|
37
37
|
</div>
|
|
38
38
|
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
<script>
|
|
43
43
|
export default {
|
|
44
44
|
name: "actionSatisfaction",
|
|
45
|
-
props:['msg'],
|
|
45
|
+
props:['msg',"language"],
|
|
46
46
|
data(){
|
|
47
47
|
return{
|
|
48
48
|
isCheckSatis:false,
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
v-if="msg.content.description && !msg.content.isKnowledgeSummary"></p>
|
|
5
5
|
<div class="bottom-link" v-if="msg.content.description && !msg.content.isKnowledgeSummary"></div>
|
|
6
6
|
<div :class="['options-list', msg.content.isKnowledgeSummary ? 'isKnowledgeSummary' : '']">
|
|
7
|
-
<div v-if="msg.content.isKnowledgeSummary" class="tips">
|
|
7
|
+
<div v-if="msg.content.isKnowledgeSummary" class="tips">{{$t('answerRadio.tip')}}</div>
|
|
8
8
|
<div v-for="(option, index) in showOptions" class="options-item"
|
|
9
9
|
:class="index !== msg.content.options.length - 1 ? 'recommend-item' : 'last-item'" :key="msg.nodeId + '_' + index"
|
|
10
10
|
@click="radioClick(msg, option, index)">
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
</div>
|
|
14
14
|
</div>
|
|
15
15
|
<div v-if="showPage" class="switch-page">
|
|
16
|
-
<span @click="changeActivePage" class="switch-page-btn"
|
|
16
|
+
<span @click="changeActivePage" class="switch-page-btn">{{$t('answerRadio.loadMore')}}</span>
|
|
17
17
|
<!-- <span @click="showMore" class="switch-page-btn">查看更多</span> -->
|
|
18
18
|
</div>
|
|
19
19
|
</div>
|
|
@@ -32,7 +32,7 @@ export default {
|
|
|
32
32
|
showOptions: [],
|
|
33
33
|
}
|
|
34
34
|
},
|
|
35
|
-
props: ['msg'],
|
|
35
|
+
props: ['msg','language'],
|
|
36
36
|
mounted() {
|
|
37
37
|
console.log(this.msg, 'msg');
|
|
38
38
|
// 关键词推荐 前端分页
|
|
@@ -22,6 +22,9 @@
|
|
|
22
22
|
:id="msg.id+'key'">
|
|
23
23
|
<source :src="videoSrc"/>
|
|
24
24
|
</video>
|
|
25
|
+
<div v-show="!nodownload" class="dragon-video-download">
|
|
26
|
+
<a :href="msg.content.url" download><span class="el-icon-download"></span></a>
|
|
27
|
+
</div>
|
|
25
28
|
<div id="output"></div>
|
|
26
29
|
</div>
|
|
27
30
|
</template>
|
|
@@ -123,6 +126,8 @@
|
|
|
123
126
|
video::-webkit-media-controls-mute-button { display: none !important;}
|
|
124
127
|
#dragon-video{
|
|
125
128
|
position: relative;
|
|
129
|
+
width: calc(100vw - 109px);
|
|
130
|
+
max-width: 260px;
|
|
126
131
|
#outputVideo{
|
|
127
132
|
position: absolute;
|
|
128
133
|
top: 0px;
|
|
@@ -134,6 +139,24 @@ video::-webkit-media-controls-mute-button { display: none !important;}
|
|
|
134
139
|
}
|
|
135
140
|
|
|
136
141
|
}
|
|
142
|
+
.dragon-video-download{
|
|
143
|
+
position: absolute;
|
|
144
|
+
width: 40px;
|
|
145
|
+
height: 26px;
|
|
146
|
+
background-color: rgba(54, 106, 255, 0.5);
|
|
147
|
+
border-radius: 13px;
|
|
148
|
+
text-align: center;
|
|
149
|
+
bottom: 2px;
|
|
150
|
+
right: 6px;
|
|
151
|
+
a {
|
|
152
|
+
span {
|
|
153
|
+
height: 26px;
|
|
154
|
+
line-height: 26px;
|
|
155
|
+
display: block;
|
|
156
|
+
color: white;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
137
160
|
}
|
|
138
161
|
|
|
139
162
|
</style>
|
|
@@ -68,10 +68,10 @@
|
|
|
68
68
|
<span class="model-switch-handle-name">{{msg.footerStyleValue}}</span>
|
|
69
69
|
</div>
|
|
70
70
|
<van-popup v-model="previewShowPopup" position="bottom" v-if="previewShowPopup" :style="{ height: '90%', background:'#FFFFFF'}">
|
|
71
|
-
<previewDoc ref="previewDoc" :url="previewHref" @close="close" v-if="previewShowPopup"></previewDoc>
|
|
71
|
+
<previewDoc ref="previewDoc" :url="previewHref" :language="language" @close="close" v-if="previewShowPopup"></previewDoc>
|
|
72
72
|
</van-popup>
|
|
73
73
|
<el-drawer
|
|
74
|
-
title="
|
|
74
|
+
:title="$t('common.drawerTitle')"
|
|
75
75
|
:append-to-body="true"
|
|
76
76
|
:model="false"
|
|
77
77
|
:visible.sync="drawer"
|
|
@@ -79,7 +79,7 @@
|
|
|
79
79
|
size="65%"
|
|
80
80
|
v-if="drawer"
|
|
81
81
|
>
|
|
82
|
-
<previewDoc ref="previewDoc" :url="previewHref" @close="close" v-if="drawer"></previewDoc>
|
|
82
|
+
<previewDoc ref="previewDoc" :url="previewHref" :language="language" @close="close" v-if="drawer"></previewDoc>
|
|
83
83
|
</el-drawer>
|
|
84
84
|
</div>
|
|
85
85
|
</template>
|
|
@@ -92,7 +92,7 @@
|
|
|
92
92
|
export default {
|
|
93
93
|
name: "associationIntention",
|
|
94
94
|
components: {Recommend, askVideo, previewDoc},
|
|
95
|
-
props: ["msg",'msgType','isOpen','sourceOhm','isOhmPc', 'nodownload', 'hiddenHeaderFooter'],
|
|
95
|
+
props: ["msg",'msgType','isOpen','sourceOhm','isOhmPc', 'nodownload', 'hiddenHeaderFooter','language'],
|
|
96
96
|
filters: {
|
|
97
97
|
imageStyle: function (html) {
|
|
98
98
|
//富文本内图片自适应高度宽度
|
|
@@ -115,8 +115,6 @@
|
|
|
115
115
|
drawer:false
|
|
116
116
|
}
|
|
117
117
|
},
|
|
118
|
-
mounted() {
|
|
119
|
-
},
|
|
120
118
|
methods:{
|
|
121
119
|
// 将匹配结果替换表情图片
|
|
122
120
|
emotion(res) {
|
|
@@ -237,7 +235,7 @@
|
|
|
237
235
|
this.$emit("onRadioClick", id, name, apikey,optionApiKey);
|
|
238
236
|
},
|
|
239
237
|
onImageClick(url){
|
|
240
|
-
this.$emit('onImageClick',url)
|
|
238
|
+
this.$emit('onImageClick', encodeURI(url))
|
|
241
239
|
},
|
|
242
240
|
msgContent(content){
|
|
243
241
|
console.debug('215',content)
|
|
@@ -368,6 +366,12 @@
|
|
|
368
366
|
display: block;
|
|
369
367
|
}
|
|
370
368
|
}
|
|
369
|
+
/deep/ img {
|
|
370
|
+
height: auto;
|
|
371
|
+
width: calc(100vw - 137px);
|
|
372
|
+
border-radius: 25px;
|
|
373
|
+
max-width: 230px;
|
|
374
|
+
}
|
|
371
375
|
}
|
|
372
376
|
/deep/.el-drawer__body{
|
|
373
377
|
height: 100%;
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
class="field-item-name">
|
|
14
14
|
<span
|
|
15
15
|
v-if="item.fieldId !== 'workorder_description' && item.fieldId !== 'workorder_clientId'">{{ item.formField.name }}</span>
|
|
16
|
-
<span v-if="item.fieldId === 'workorder_description'">{{ isBaiLi ? '
|
|
17
|
-
<span v-if="item.fieldId === 'workorder_clientId'"
|
|
16
|
+
<span v-if="item.fieldId === 'workorder_description'">{{ isBaiLi ? $t('formTemplate.feedbackDes') : $t('formTemplate.orderDes') }}</span>
|
|
17
|
+
<span v-if="item.fieldId === 'workorder_clientId'">{{$t('formTemplate.report')}}</span>
|
|
18
18
|
<span style="color: red;padding-left: 5px;padding-right: 5px"
|
|
19
19
|
v-if="item.fieldId !== '0feca81fce97465da537248c066e4db8' && item.fieldId !== '1d8bd21485834773a6d18eae60013000' && (item.required || isRequiredFn(item.formField))">*</span>
|
|
20
20
|
<el-tooltip class="item" effect="dark" placement="right-start">
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
</div>
|
|
60
60
|
</template>
|
|
61
61
|
<el-input type="textarea" :rows="2" v-model="item.value"
|
|
62
|
-
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
62
|
+
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.inputPlaceholder')"
|
|
63
63
|
:maxlength="item.formField.extInfo && item.formField.extInfo.maxNum ? item.formField.extInfo.maxNum * 1 : 1000"
|
|
64
64
|
v-if="item.formField.type === 'TEXTAREA' && item.fieldId !== 'workorder_description'"></el-input>
|
|
65
65
|
<div v-else-if="item.fieldId === 'workorder_description'">
|
|
@@ -79,20 +79,20 @@
|
|
|
79
79
|
<file-list-view :attachmentList="attachmentList" @attachDeleteAttch="attachDeleteAttch"></file-list-view>
|
|
80
80
|
</div>
|
|
81
81
|
<el-date-picker v-model=item.value type="date"
|
|
82
|
-
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
82
|
+
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.selectDate')"
|
|
83
83
|
style="width: 100%" v-else-if="item.formField.type === 'DATE_PICKER'">
|
|
84
84
|
</el-date-picker>
|
|
85
85
|
<el-time-picker v-model=item.value format="HH:mm"
|
|
86
|
-
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
86
|
+
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.selectTime')"
|
|
87
87
|
style="width: 100%"
|
|
88
88
|
v-else-if="item.formField.type === 'TIME_PICKER' && (!item.formField.extInfo.mold || item.formField.extInfo.mold == 'TIME' || getMoldTime(item.formField) == 'TIME')">
|
|
89
89
|
</el-time-picker>
|
|
90
90
|
<el-date-picker v-model=item.value type="date" style="width: 100%"
|
|
91
|
-
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
91
|
+
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.selectDate')"
|
|
92
92
|
v-else-if="item.formField.type === 'TIME_PICKER' && (item.formField.extInfo.mold === 'DATA' || item.formField.extInfo.mold === 'DATE' || getMoldTime(item.formField) == 'DATE')">
|
|
93
93
|
</el-date-picker>
|
|
94
94
|
<el-date-picker v-model=item.value
|
|
95
|
-
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
95
|
+
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.selectDateTime')"
|
|
96
96
|
clearable style="width: 100%" type="datetime"
|
|
97
97
|
v-else-if="item.formField.type === 'TIME_PICKER' && (item.formField.extInfo.mold === 'DATA_TIME' || item.formField.extInfo.mold === 'DATE_TIME' || getMoldTime(item.formField) == 'DATE_TIME')">
|
|
98
98
|
</el-date-picker>
|
|
@@ -122,7 +122,7 @@
|
|
|
122
122
|
</div>
|
|
123
123
|
<div v-else-if="item.formField.type === 'SELECT' || item.formField.type === 'OPTION'">
|
|
124
124
|
<el-select v-model=item.value
|
|
125
|
-
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
125
|
+
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.selectPlaceholder')"
|
|
126
126
|
style="width: 100%" filterable
|
|
127
127
|
v-if="item.fieldId === 'workorder_clientId' || item.fieldId === 'workorder_statusId' || item.fieldId === 'workorder_priority'">
|
|
128
128
|
<el-option v-for="(items, index) in selectOptions(item.formField)" :key="index" :label="items.label"
|
|
@@ -130,7 +130,7 @@
|
|
|
130
130
|
</el-option>
|
|
131
131
|
</el-select>
|
|
132
132
|
<el-select v-model=item.value
|
|
133
|
-
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
133
|
+
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.selectPlaceholder')"
|
|
134
134
|
style="width: 100%" filterable v-else @change="changeSelect(item)"
|
|
135
135
|
:multiple="item.formField.extInfo && item.formField.extInfo.selectType == '多选'">
|
|
136
136
|
<el-option v-for="(items, index) in optionsLists(item)" :key="index" :label="items.label"
|
|
@@ -159,7 +159,7 @@
|
|
|
159
159
|
</span>
|
|
160
160
|
</template>
|
|
161
161
|
<span
|
|
162
|
-
v-else>{{ item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
162
|
+
v-else>{{ item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.selectPlaceholder' )}}</span>
|
|
163
163
|
</div>
|
|
164
164
|
<!-- <el-cascader
|
|
165
165
|
v-model=item.value
|
|
@@ -210,7 +210,7 @@
|
|
|
210
210
|
</template>
|
|
211
211
|
<div v-else-if="item.formField.type == 'REF_TEMPLATE' || item.formField.type == 'REF'">
|
|
212
212
|
<el-select v-model=item.value
|
|
213
|
-
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
213
|
+
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.selectPlaceholder')"
|
|
214
214
|
style="width: 100%" filterable
|
|
215
215
|
:multiple="item.formField.extInfo && item.formField.extInfo.selectType == '多选'"
|
|
216
216
|
@visible-change="(visible) => { return refTemplateVisibleChange(visible, item) }" collapse-tags
|
|
@@ -234,7 +234,7 @@
|
|
|
234
234
|
<div v-if="item.formField.type === 'INPUT'" class="form-field-item-value">
|
|
235
235
|
<van-field v-model=item.value :label=item.formField.name
|
|
236
236
|
:required="item.required || isRequiredFn(item.formField)" :disabled="disableds"
|
|
237
|
-
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
237
|
+
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.inputPlaceholder')"
|
|
238
238
|
:maxlength="item.formField.extInfo && item.formField.extInfo.maxNum ? item.formField.extInfo.maxNum * 1 : 1000"
|
|
239
239
|
@blur="typeCheck(item.formField, item)" :type="item.formField.extInfo.inputType === 'NUMBER' ||
|
|
240
240
|
item.formField.extInfo.inputType === 'RATE' ? 'number' : 'text'">
|
|
@@ -270,7 +270,7 @@
|
|
|
270
270
|
<div v-else-if="item.formField.type === 'TEXTAREA'" class="form-field-item-value">
|
|
271
271
|
<van-field v-model=item.value :label=item.formField.name
|
|
272
272
|
:required="item.required || isRequiredFn(item.formField)" type="textarea" :disabled="disableds"
|
|
273
|
-
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
273
|
+
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.inputPlaceholder')"
|
|
274
274
|
:maxlength="item.formField.extInfo && item.formField.extInfo.maxNum ? item.formField.extInfo.maxNum * 1 : 1000"
|
|
275
275
|
v-if="item.fieldId !== 'workorder_description'">
|
|
276
276
|
<template slot="label">
|
|
@@ -317,7 +317,7 @@
|
|
|
317
317
|
</div>
|
|
318
318
|
<div v-else-if="item.formField.type === 'DATE_PICKER'" class="form-field-item-value">
|
|
319
319
|
<van-field readonly clickable name="calendar" :value=dateValue[item.fieldId] :label=item.formField.name
|
|
320
|
-
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
320
|
+
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.selectDate')"
|
|
321
321
|
:required="item.required || isRequiredFn(item.formField)" @click="dateClick(item.fieldId)"
|
|
322
322
|
:disabled="disableds" right-icon="van-icon van-icon-arrow van-cell__right-icon">
|
|
323
323
|
<template slot="label">
|
|
@@ -341,7 +341,7 @@
|
|
|
341
341
|
class="form-field-item-value">
|
|
342
342
|
<van-field readonly clickable name="datetimePicker" :required="item.required || isRequiredFn(item.formField)"
|
|
343
343
|
:value=extInfoFieldValue[item.fieldId] :label=item.formField.name
|
|
344
|
-
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
344
|
+
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.selectPlaceholder')"
|
|
345
345
|
@click="timeClick(item.fieldId, item, 'DATE_TIME')" :disabled="disableds"
|
|
346
346
|
right-icon="van-icon van-icon-arrow van-cell__right-icon">
|
|
347
347
|
<template slot="label">
|
|
@@ -368,7 +368,7 @@
|
|
|
368
368
|
class="form-field-item-value">
|
|
369
369
|
<van-field readonly clickable name="datetimePicker" :required="item.required || isRequiredFn(item.formField)"
|
|
370
370
|
:value=extInfoFieldValue[item.fieldId] :label=item.formField.name
|
|
371
|
-
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
371
|
+
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.selectPlaceholder')"
|
|
372
372
|
@click="timeClick(item.fieldId, item, 'TIME')" :disabled="disableds"
|
|
373
373
|
right-icon="van-icon van-icon-arrow van-cell__right-icon">
|
|
374
374
|
<template slot="label">
|
|
@@ -394,7 +394,7 @@
|
|
|
394
394
|
class="form-field-item-value">
|
|
395
395
|
<van-field readonly clickable name="datetimePicker" :required="item.required || isRequiredFn(item.formField)"
|
|
396
396
|
:value=extInfoFieldValue[item.fieldId] :label=item.formField.name
|
|
397
|
-
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
397
|
+
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.selectPlaceholder')"
|
|
398
398
|
@click="timeClick(item.fieldId, item, 'DATE')" :disabled="disableds"
|
|
399
399
|
right-icon="van-icon van-icon-arrow van-cell__right-icon">
|
|
400
400
|
<template slot="label">
|
|
@@ -511,7 +511,7 @@
|
|
|
511
511
|
v-if="item.fieldId === 'workorder_clientId' || item.fieldId === 'workorder_statusId' || item.fieldId === 'workorder_priority'">
|
|
512
512
|
<van-field readonly clickable name="picker" :value=selectValues[item.fieldId]
|
|
513
513
|
:label="item.fieldId === 'workorder_clientId' ? '报单人' : item.formField.name"
|
|
514
|
-
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
514
|
+
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.selectPlaceholder')"
|
|
515
515
|
@click="selectClick(item.fieldId, 'client', item)" :required="item.required || isRequiredFn(item.formField)"
|
|
516
516
|
:disabled="disableds" @click-right-icon.stop="SelectClear(item.fieldId)"
|
|
517
517
|
:right-icon="selectValues[item.fieldId] ? 'close' : 'van-icon van-icon-arrow van-cell__right-icon'">
|
|
@@ -537,7 +537,7 @@
|
|
|
537
537
|
<van-field readonly clickable name="picker"
|
|
538
538
|
:value="showSelectText(item.formField.extInfo ? (item.formField.extInfo.option || item.formField.extInfo.options) : [], item.value)"
|
|
539
539
|
:label=item.formField.name
|
|
540
|
-
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
540
|
+
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.selectPlaceholder')"
|
|
541
541
|
@click="selectClick(item.fieldId, 'select', item)" :required="item.required || isRequiredFn(item.formField)"
|
|
542
542
|
:disabled="disableds" @click-right-icon.stop="SelectClear(item.fieldId)"
|
|
543
543
|
:right-icon="item.value && item.value.length ? 'close' : 'van-icon van-icon-arrow van-cell__right-icon'">
|
|
@@ -586,7 +586,7 @@
|
|
|
586
586
|
<van-field readonly clickable
|
|
587
587
|
:value="Array.isArray(extInfoFieldValue[item.fieldId]) ? extInfoFieldValue[item.fieldId].map(v => v.name).join(',') : (extInfoFieldValue[item.fieldId] && extInfoFieldValue[item.fieldId].name ? extInfoFieldValue[item.fieldId].name : '')"
|
|
588
588
|
:label="item.formField.name" name="picker"
|
|
589
|
-
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
589
|
+
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.selectPlaceholder')"
|
|
590
590
|
@click="selectClick(item.fieldId, 'ref', item)" @click-right-icon.stop="SelectClear(item.fieldId)"
|
|
591
591
|
:required="item.required || isRequiredFn(item.formField)" :disabled="disableds"
|
|
592
592
|
:right-icon="extInfoFieldValue[item.fieldId] && extInfoFieldValue[item.fieldId].length ? 'close' : 'van-icon van-icon-arrow van-cell__right-icon'" />
|
|
@@ -600,7 +600,7 @@
|
|
|
600
600
|
label: 'name'
|
|
601
601
|
}">
|
|
602
602
|
<template slot="popup-footer" v-if="refNextPage[item.fieldId] && refNextPage[item.fieldId].hasNextPage">
|
|
603
|
-
<span @click="lodeMore(item)"
|
|
603
|
+
<span @click="lodeMore(item)">{{$t('common.loadMore')}}</span>
|
|
604
604
|
</template>
|
|
605
605
|
</select-popup>
|
|
606
606
|
</van-popup>
|
|
@@ -610,7 +610,7 @@
|
|
|
610
610
|
<van-field readonly clickable name="area"
|
|
611
611
|
:value="extInfoFieldValue[item.fieldId] && Array.isArray(extInfoFieldValue[item.fieldId]) ? extInfoFieldValue[item.fieldId].map(e => e.label).join('/') : ''"
|
|
612
612
|
:label=item.formField.name
|
|
613
|
-
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '
|
|
613
|
+
:placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : $t('common.selectPlaceholder')"
|
|
614
614
|
@click="openDrawer(item, 'cascader')"
|
|
615
615
|
:required="item.fieldId !== '0feca81fce97465da537248c066e4db8' && item.fieldId !== '1d8bd21485834773a6d18eae60013000' && (item.required || isRequiredFn(item.formField))"
|
|
616
616
|
:disabled="disableds" right-icon="van-icon van-icon-arrow van-cell__right-icon">
|
|
@@ -722,7 +722,7 @@
|
|
|
722
722
|
/* eslint-disable */
|
|
723
723
|
import { forMatTime } from "./utils/format_date";
|
|
724
724
|
let that
|
|
725
|
-
import { multipartUpload, ossFileUrl } from "
|
|
725
|
+
import { multipartUpload, ossFileUrl } from "../assets/js/AliyunlssUtil";
|
|
726
726
|
import MyEditor from './MyEditor'
|
|
727
727
|
import myPopup from "./myPopup.vue";
|
|
728
728
|
import Tree from '../components/tree'
|
|
@@ -883,6 +883,10 @@ export default {
|
|
|
883
883
|
default () {
|
|
884
884
|
return ""
|
|
885
885
|
}
|
|
886
|
+
},
|
|
887
|
+
language:{
|
|
888
|
+
type:String,
|
|
889
|
+
default:"cn"
|
|
886
890
|
}
|
|
887
891
|
},
|
|
888
892
|
computed: {
|
|
@@ -1098,7 +1102,7 @@ export default {
|
|
|
1098
1102
|
} else {
|
|
1099
1103
|
this.disableds = false
|
|
1100
1104
|
}
|
|
1101
|
-
this.submitValue = this.submit ? '
|
|
1105
|
+
this.submitValue = this.submit ? this.$t('common.submited') : this.$t('common.submit')
|
|
1102
1106
|
},
|
|
1103
1107
|
beforeMount () {
|
|
1104
1108
|
that.defaultClick()
|
|
@@ -1383,11 +1387,11 @@ export default {
|
|
|
1383
1387
|
const isLte2M = file.size / 1024 / 1024 <= 8;
|
|
1384
1388
|
const isSupportedFormat = file.type.indexOf('image') !== -1
|
|
1385
1389
|
if (!isSupportedFormat) {
|
|
1386
|
-
this.$message.error(
|
|
1390
|
+
this.$message.error(this.$t('formTemplate.uploadType'));
|
|
1387
1391
|
return false
|
|
1388
1392
|
}
|
|
1389
1393
|
if (!isLte2M && isSupportedFormat) {
|
|
1390
|
-
this.$message.error(
|
|
1394
|
+
this.$message.error(this.$t('formTemplate.uploadImageSize'));
|
|
1391
1395
|
return false
|
|
1392
1396
|
}
|
|
1393
1397
|
return true
|
|
@@ -1396,11 +1400,11 @@ export default {
|
|
|
1396
1400
|
const isLte2M = file.size / 1024 / 1024 <= 100;
|
|
1397
1401
|
const isSupportedFormat = file.type.indexOf('video') !== -1
|
|
1398
1402
|
if (!isSupportedFormat) {
|
|
1399
|
-
this.$message.error(
|
|
1403
|
+
this.$message.error(this.$t('formTemplate.uploadVideoType'));
|
|
1400
1404
|
return false
|
|
1401
1405
|
}
|
|
1402
1406
|
if (!isLte2M && isSupportedFormat) {
|
|
1403
|
-
this.$message.error(
|
|
1407
|
+
this.$message.error(this.$t('formTemplate.uploadVideoSize'));
|
|
1404
1408
|
return false
|
|
1405
1409
|
}
|
|
1406
1410
|
return true
|
|
@@ -1408,7 +1412,7 @@ export default {
|
|
|
1408
1412
|
else if (type === 'ATTACHMENT') {
|
|
1409
1413
|
const isLte2M = file.size / 1024 / 1024 <= 100;
|
|
1410
1414
|
if (!isLte2M) {
|
|
1411
|
-
this.$message.error(
|
|
1415
|
+
this.$message.error(this.$t('formTemplate.uploadFileSize'));
|
|
1412
1416
|
return false
|
|
1413
1417
|
}
|
|
1414
1418
|
return true
|
|
@@ -1425,11 +1429,11 @@ export default {
|
|
|
1425
1429
|
const isLte2M = file[i].size / 1024 / 1024 <= 8;
|
|
1426
1430
|
const isSupportedFormat = file[i].type.indexOf('image') !== -1
|
|
1427
1431
|
if (!isSupportedFormat) {
|
|
1428
|
-
this.$message.error(
|
|
1432
|
+
this.$message.error(this.$t('formTemplate.uploadType'));
|
|
1429
1433
|
return false
|
|
1430
1434
|
}
|
|
1431
1435
|
if (!isLte2M && isSupportedFormat) {
|
|
1432
|
-
this.$message.error(
|
|
1436
|
+
this.$message.error(this.$t('formTemplate.uploadImageSize'));
|
|
1433
1437
|
return false
|
|
1434
1438
|
}
|
|
1435
1439
|
return true
|
|
@@ -1438,11 +1442,11 @@ export default {
|
|
|
1438
1442
|
const isLte2M = file[i].size / 1024 / 1024 <= 100;
|
|
1439
1443
|
const isSupportedFormat = file[i].type.indexOf('video') !== -1
|
|
1440
1444
|
if (!isSupportedFormat) {
|
|
1441
|
-
this.$message.error(
|
|
1445
|
+
this.$message.error(this.$t('formTemplate.uploadVideoType'));
|
|
1442
1446
|
return false
|
|
1443
1447
|
}
|
|
1444
1448
|
if (!isLte2M && isSupportedFormat) {
|
|
1445
|
-
this.$message.error(
|
|
1449
|
+
this.$message.error(this.$t('formTemplate.uploadVideoSize'));
|
|
1446
1450
|
return false
|
|
1447
1451
|
}
|
|
1448
1452
|
return true
|
|
@@ -1450,7 +1454,7 @@ export default {
|
|
|
1450
1454
|
else if (type === 'ATTACHMENT') {
|
|
1451
1455
|
const isLte2M = file[i].size / 1024 / 1024 <= 100;
|
|
1452
1456
|
if (!isLte2M) {
|
|
1453
|
-
this.$message.error(
|
|
1457
|
+
this.$message.error(this.$t('formTemplate.uploadFileSize'));
|
|
1454
1458
|
return false
|
|
1455
1459
|
}
|
|
1456
1460
|
return true
|
|
@@ -1462,7 +1466,7 @@ export default {
|
|
|
1462
1466
|
if (this.limitNum) {
|
|
1463
1467
|
num = this.limitNum
|
|
1464
1468
|
}
|
|
1465
|
-
let messageText = '
|
|
1469
|
+
let messageText = this.$t('formTemplate.onlyUpload' )+num+ this.$t('formTemplate.number')
|
|
1466
1470
|
this.$message.error(messageText);
|
|
1467
1471
|
return false
|
|
1468
1472
|
}
|
|
@@ -1484,7 +1488,7 @@ export default {
|
|
|
1484
1488
|
num = this.limitNum
|
|
1485
1489
|
}
|
|
1486
1490
|
if (file.length > num) {
|
|
1487
|
-
this.$message.warning('
|
|
1491
|
+
this.$message.warning(this.$t('formTemplate.onlyUpload' )+ num + this.$t('formTemplate.number'))
|
|
1488
1492
|
return false
|
|
1489
1493
|
}
|
|
1490
1494
|
else {
|
|
@@ -1687,7 +1691,7 @@ export default {
|
|
|
1687
1691
|
this.$set(this.extInfoFieldValue, this.formList.form.formFieldRelation[i].fieldId, [])
|
|
1688
1692
|
this.loopCascaderSetDefalut(cascadeOptions, this.formList.form.formFieldRelation[i], extInfo.selectType)
|
|
1689
1693
|
this.loopCascaderSetValue(cascadeOptions, this.formList.form.formFieldRelation[i], extInfo.selectType)
|
|
1690
|
-
|
|
1694
|
+
|
|
1691
1695
|
}
|
|
1692
1696
|
if (type === 'DATE_PICKER') {
|
|
1693
1697
|
if (this.formList.form.formFieldRelation[i].value && this.formList.form.formFieldRelation[i].value !== null && this.formList.form.formFieldRelation[i].value !== '') {
|
|
@@ -1976,27 +1980,27 @@ export default {
|
|
|
1976
1980
|
if (checkDescription.checkAttachment && this.attachmentList.length == 0) {
|
|
1977
1981
|
attachmentFlag = false
|
|
1978
1982
|
}
|
|
1979
|
-
let text = this.isBaiLi ? '
|
|
1983
|
+
let text = this.isBaiLi ? this.$t('formTemplate.feedbackDes') : this.$t('formTemplate.orderDes')
|
|
1980
1984
|
if (!textFlag) {
|
|
1981
|
-
errorText = text + '
|
|
1985
|
+
errorText = text + this.$t('formTemplate.textFlag')
|
|
1982
1986
|
}
|
|
1983
1987
|
if (!imageOrAttachment) {
|
|
1984
|
-
errorText = text + '
|
|
1988
|
+
errorText = text + this.$t('formTemplate.imageOrAttachment')
|
|
1985
1989
|
}
|
|
1986
1990
|
if (!imageFlag) {
|
|
1987
|
-
errorText = text + '
|
|
1991
|
+
errorText = text + this.$t('formTemplate.imageFlag')
|
|
1988
1992
|
}
|
|
1989
1993
|
if (!attachmentFlag) {
|
|
1990
|
-
errorText = text + '
|
|
1994
|
+
errorText = text + this.$t('formTemplate.attachmentFlag')
|
|
1991
1995
|
}
|
|
1992
1996
|
if (!textFlag && (!imageFlag || !attachmentFlag)) {
|
|
1993
|
-
errorText = text + '
|
|
1997
|
+
errorText = text + this.$t('formTemplate.textFlag') + this.$t('formTemplate.and') + (!imageFlag ? this.$t('formTemplate.image') : this.$t('formTemplate.file'))
|
|
1994
1998
|
}
|
|
1995
1999
|
if (!imageFlag && !attachmentFlag) {
|
|
1996
|
-
errorText = text + '
|
|
2000
|
+
errorText = text + this.$t('formTemplate.imageFlag') + this.$t('formTemplate.and') + this.$t('formTemplate.file')
|
|
1997
2001
|
}
|
|
1998
2002
|
if (!imageFlag && !attachmentFlag && !textFlag) {
|
|
1999
|
-
errorText = text + '
|
|
2003
|
+
errorText = text + this.$t('formTemplate.textFlag') + ',' + this.$t('formTemplate.image') + this.$t('formTemplate.and') + this.$t('formTemplate.file')
|
|
2000
2004
|
}
|
|
2001
2005
|
if (errorText) {
|
|
2002
2006
|
this.$message.error(errorText);
|
|
@@ -2005,7 +2009,7 @@ export default {
|
|
|
2005
2009
|
let d = document.createElement('div')
|
|
2006
2010
|
d.innerHTML = this.workOrderDestail.value
|
|
2007
2011
|
if (checkDescription.required && !d.innerText && !this.workOrderDestail.value.includes('img') && this.attachmentList.length == 0) {
|
|
2008
|
-
let errorText = this.isBaiLi ? '
|
|
2012
|
+
let errorText = this.isBaiLi ? this.$t('formTemplate.feedbackDesRequired') : this.$t('formTemplate.orderDesRequired')
|
|
2009
2013
|
this.$message.error(errorText);
|
|
2010
2014
|
return false
|
|
2011
2015
|
}
|
|
@@ -2015,7 +2019,7 @@ export default {
|
|
|
2015
2019
|
//提交按钮事件
|
|
2016
2020
|
submitClick () {
|
|
2017
2021
|
if (this.uploadImgQueue || this.attachmentList.some(arrach => { return !arrach.url })) {
|
|
2018
|
-
this.$message.warning('
|
|
2022
|
+
this.$message.warning(this.$t('formTemplate.uploading'))
|
|
2019
2023
|
return
|
|
2020
2024
|
}
|
|
2021
2025
|
if (this.workOrderDestail && !this.verificationDescription()) {
|
|
@@ -2094,7 +2098,7 @@ export default {
|
|
|
2094
2098
|
}
|
|
2095
2099
|
if (this.formShow.form.formFieldRelation[i].relationDisplay && this.formShow.form.formFieldRelation[i].display && this.formShow.form.formFieldRelation[i].fieldId !== 'workorder_description') {
|
|
2096
2100
|
if (!this.formShow.form.formFieldRelation[i].value || this.strIsNull(this.formShow.form.formFieldRelation[i].value) || bool[this.formShow.form.formFieldRelation[i].fieldId] || (Array.isArray(this.formShow.form.formFieldRelation[i].value) && !this.formShow.form.formFieldRelation[i].value.length)) {
|
|
2097
|
-
this.$message.error('
|
|
2101
|
+
this.$message.error(this.$t('formTemplate.pleaseImprove' )+ this.formShow.form.formFieldRelation[i].formField.name)
|
|
2098
2102
|
return
|
|
2099
2103
|
}
|
|
2100
2104
|
}
|
|
@@ -2125,7 +2129,7 @@ export default {
|
|
|
2125
2129
|
console.error('formShow', newForm)
|
|
2126
2130
|
this.$emit('submitClick', newForm)
|
|
2127
2131
|
this.disableds = true
|
|
2128
|
-
this.submitValue = '
|
|
2132
|
+
this.submitValue = this.$t('common.submited')
|
|
2129
2133
|
},
|
|
2130
2134
|
strIsNull (str) {
|
|
2131
2135
|
if (str == "") return true;
|
|
@@ -3504,4 +3508,4 @@ export default {
|
|
|
3504
3508
|
height: 100%;
|
|
3505
3509
|
overflow: hidden;
|
|
3506
3510
|
}
|
|
3507
|
-
</style>
|
|
3511
|
+
</style>
|
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
<div class="summaryHeader">
|
|
4
4
|
<div class="left">
|
|
5
5
|
<i class="iconfont guoran-tongyichicun-write-29-jiqiren"></i>
|
|
6
|
-
<span
|
|
6
|
+
<span>{{$t('previewPdf.intelligentSummary')}}</span>
|
|
7
7
|
</div>
|
|
8
8
|
<div class="right">
|
|
9
9
|
<div class="regenerationBtn" @click="regeneration">
|
|
10
|
-
<template v-if="!isLoading"
|
|
10
|
+
<template v-if="!isLoading">{{$t('previewPdf.regeneration')}}</template>
|
|
11
11
|
<template v-else>
|
|
12
12
|
<img
|
|
13
13
|
height="20px"
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
srcset
|
|
18
18
|
style="margin-right: 6px"
|
|
19
19
|
/>
|
|
20
|
-
<span
|
|
20
|
+
<span>{{$t('previewPdf.generating')}}</span>
|
|
21
21
|
</template>
|
|
22
22
|
</div>
|
|
23
23
|
<i class="iconfont guoran-tongyichicun-shouqi" @click="closeSummary"></i>
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
<div class="summaryContent">
|
|
27
27
|
<span>{{ typedContent }}</span>
|
|
28
28
|
</div>
|
|
29
|
-
<div class="intelligentBottom" v-if="recommendQuestions.length > 0">
|
|
29
|
+
<div class="intelligentBottom" v-if="recommendQuestions.length > 0 && !formKnowledgeManagement">
|
|
30
30
|
<div class="intelligentQues"
|
|
31
31
|
v-for="(item,index) in recommendQuestions"
|
|
32
32
|
:key="index"
|
|
@@ -59,6 +59,10 @@ export default {
|
|
|
59
59
|
default() {
|
|
60
60
|
return []
|
|
61
61
|
}
|
|
62
|
+
},
|
|
63
|
+
formKnowledgeManagement:{
|
|
64
|
+
type: Boolean,
|
|
65
|
+
default: false
|
|
62
66
|
}
|
|
63
67
|
},
|
|
64
68
|
methods:{
|