askbot-dragon 0.6.17 → 0.6.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/README.md +27 -27
  2. package/babel.config.js +5 -5
  3. package/dragon.iml +7 -7
  4. package/package.json +54 -52
  5. package/public/index.html +27 -26
  6. package/src/App.vue +31 -31
  7. package/src/api/index.js +1 -1
  8. package/src/api/mock.http +2 -2
  9. package/src/api/requestUrl.js +185 -185
  10. package/src/assets/less/common.css +6760 -6760
  11. package/src/assets/less/converSationContainer/common.less +4751 -4751
  12. package/src/assets/less/converSationContainer/converSatonContainer.less +492 -492
  13. package/src/assets/less/ticketMessage.less +319 -319
  14. package/src/components/ActionAlertIframe.vue +117 -117
  15. package/src/components/AskIFrame.vue +15 -15
  16. package/src/components/ConversationContainer.vue +1388 -1388
  17. package/src/components/FileType.vue +88 -88
  18. package/src/components/Message.vue +27 -27
  19. package/src/components/ask-components/DissatisfactionOptions.vue +57 -57
  20. package/src/components/ask-components/Msgloading.vue +37 -37
  21. package/src/components/ask-components/SatisfactionV2.vue +15 -15
  22. package/src/components/chatContent.vue +512 -512
  23. package/src/components/feedBack.vue +133 -133
  24. package/src/components/file/AliyunOssComponents.vue +109 -109
  25. package/src/components/formTemplate.vue +1898 -2039
  26. package/src/components/message/ActionAlertIframe.vue +116 -116
  27. package/src/components/message/ShopMessage.vue +168 -168
  28. package/src/components/message/TextMessage.vue +895 -895
  29. package/src/components/message/TicketMessage.vue +173 -173
  30. package/src/components/message/swiper/index.js +4 -4
  31. package/src/components/message/swiper/ticketSwiper.vue +530 -530
  32. package/src/components/message/swiper/ticketSwiperItem.vue +61 -61
  33. package/src/components/selector/hOption.vue +20 -20
  34. package/src/components/selector/hSelector.vue +199 -199
  35. package/src/components/selector/hWrapper.vue +216 -216
  36. package/src/components/source/BotMessage.vue +24 -24
  37. package/src/components/source/CustomMessage.vue +24 -24
  38. package/src/components/test.vue +260 -260
  39. package/src/components/utils/AliyunIssUtil.js +72 -72
  40. package/src/components/utils/ckeditor.js +124 -0
  41. package/src/components/utils/format_date.js +18 -18
  42. package/src/components/utils/index.js +6 -6
  43. package/src/components/utils/math_utils.js +15 -15
  44. package/src/main.js +44 -43
  45. package/vue.config.js +34 -28
@@ -1,1388 +1,1388 @@
1
- <!-- 消息记录容器 -->
2
- <template>
3
- <div id="conversation">
4
- <!--<action-alert
5
- :actionAlertIframe="actionAlertIframeObj"
6
- :disable="true"
7
- ></action-alert>-->
8
- <!-- <ticket-message :content="contents"></ticket-message>-->
9
-
10
- <!-- <form-template @submitClick="submitClick" :formList="formList"></form-template>
11
- <form-template @submitClick="submitClick" :formList="formList" :type="rem"></form-template>
12
-
13
- &lt;!&ndash; <div class="conversation-container">
14
- <div
15
- v-if="showPreview"
16
- style="
17
- width: 100vw;
18
- height: 100vh;
19
- z-index: 10000;
20
- position: fixed;
21
- top: 0;
22
- left: 0;
23
- background-color: rgba(0, 0, 0, 0.8);
24
- "
25
- >
26
- <div
27
- @click="showPreview = false"
28
- style="
29
- color: white;
30
- font-size: 30px;
31
- padding: 30px 30px 15vh;
32
- text-align: right;
33
- cursor: pointer;
34
- "
35
- >
36
- X
37
- </div>
38
- <img
39
- style="max-height: 70vh; max-width: 70vw"
40
- :src="previewImageUrl"
41
- alt
42
- srcset
43
- />
44
- </div>
45
- <div class="test-box">
46
- <div class="gr-header">
47
- <span class="bot-name" v-if="currentBot != null">
48
- &lt;!&ndash; {{ currentBot.name }}&ndash;&gt;
49
- 我是名字
50
- <el-popover
51
- v-if="botList.length > 1"
52
- placement="bottom"
53
- trigger="hover"
54
- width="250"
55
- >
56
- <el-radio-group v-model="currentBot.id" @change="changeCurrentBot">
57
- <el-radio v-for="bot in botList" :key="bot.id" :label="bot.id">{{
58
- bot.name
59
- }}</el-radio>
60
- </el-radio-group>
61
- <i slot="reference" class="el-icon-s-operation"></i>
62
- </el-popover>
63
- </span>
64
- <span class="el-icon-refresh" @click="cleanSession(true)"></span>
65
- <span class="el-icon-close" @click="handleClose(false)"></span>
66
- </div>
67
- <transition name="fade">
68
- <div class="mod-loading" v-if="isShow" transiton="fade">
69
- <span>已将该问法添加至知识库, 正在重新训练模型</span>
70
- <em class="el-icon-loading"></em>
71
- </div>
72
- </transition>
73
- <div id="grContent" class="gr-content" ref="grContent">
74
- <ul class="chat-list">
75
- <li
76
- v-for="(item, index) in chatList"
77
- :key="index"
78
- :class="[
79
- 'chat-cell',
80
- item.user === 'bot' ? 'via-bot-outer' : 'via-user-outer',
81
- ]"
82
- >
83
- <div class="chat-content">
84
- <div
85
- class="chat-content"
86
- v-if="item.type === 'TEXT' && item.user === 'user'"
87
- >
88
- <span class>{{ item.content }}</span>
89
- <el-cascader
90
- v-if="item.requestCompleted && item.needShowIntent"
91
- style="width: 290px"
92
- placeholder="未识别到意图,可选择所属意图,提高识别率"
93
- size="mini"
94
- v-model="item.intentId"
95
- :options="intentionList"
96
- :props="optionProps"
97
- @change="changeIntent(item)"
98
- ></el-cascader>
99
- </div>
100
-
101
- <span
102
- v-html="item.text"
103
- v-if="item.type === 'answer_text' && item.user === 'bot'"
104
- ></span>
105
- <div
106
- v-html="item.text"
107
- v-if="
108
- item.type === 'answer_rich_text_pro' && item.user === 'bot'
109
- "
110
- ></div>
111
-
112
- <img
113
- v-if="item.type === 'answer_image'"
114
- width="150px"
115
- :src="item.url"
116
- alt
117
- />
118
- <video-player
119
- v-if="item.type === 'answer_video'"
120
- class="video-player vjs-custom-skin"
121
- :options="videoOptions(item.content)"
122
- style="width: 300px"
123
- />
124
- <div v-if="item.type === 'answer_radio'" class="link-list-outer">
125
- <span>{{ item.description }}</span>
126
- <span
127
- v-for="(cell, index) in item.options"
128
- :key="item.nodeId + '_' + index"
129
- class="link-cell cursor"
130
- @click="
131
- sendTestContent(
132
- 'RADIO',
133
- item.actionId + '_' + index + '_' + cell.value,
134
- cell.name,
135
- false
136
- )
137
- "
138
- >{{ cell.name }}</span
139
- >
140
- </div>
141
- <div
142
- v-if="item.type === 'unSatisfactionChoose'"
143
- class="link-list-outer"
144
- >
145
- <span>{{ item.content.description }}</span>
146
- <span
147
- v-for="(cell, index) in item.content.options"
148
- :key="index"
149
- class="link-cell cursor"
150
- @click="
151
- chatList.push({
152
- type: 'TEXT',
153
- content: cell.name,
154
- user: 'user',
155
- }),
156
- addAnswerList([
157
- {
158
- type: 'answer_text',
159
- content: { list: [cell.answer] },
160
- },
161
- ])
162
- "
163
- >{{ cell.name }}</span
164
- >
165
- </div>
166
- <div
167
- v-if="item.type === 'action_satisfaction'"
168
- class="link-list-outer"
169
- >
170
- <span>{{ item.content.satisfactionDes }}</span>
171
- <span
172
- class="link-cell cursor"
173
- @click="
174
- satisfacte('满意', item.content.satisfactoryAnswer, null)
175
- "
176
- >满意</span
177
- >
178
- <span
179
- class="link-cell cursor"
180
- @click="
181
- satisfacte(
182
- '不满意',
183
- item.content.unsatisfiedAnswer,
184
- item.content.answerRadio
185
- )
186
- "
187
- >不满意</span
188
- >
189
- </div>
190
- </div>
191
- </li>
192
- </ul>
193
- </div>
194
- <div class="gr-footer">
195
- <el-input
196
- size="small"
197
- placeholder="请输入测试问题"
198
- v-model="testValue"
199
- @keyup.enter.native="
200
- sendTestContent('TEXT', testValue, testValue, true)
201
- "
202
- >
203
- <el-button
204
- type="primary"
205
- size="small"
206
- slot="append"
207
- @click="sendTestContent('TEXT', testValue, testValue, true)"
208
- >发送</el-button
209
- >
210
- <el-button
211
- type="info"
212
- size="small"
213
- slot="append"
214
- @click="sendTestContent('END_SESSION', 'END_SESSION', null, false)"
215
- >结束</el-button
216
- >
217
- </el-input>
218
- </div>
219
- </div>
220
- </div>
221
- <div class="dialog">
222
- <div class="headerName">对话记录</div>
223
- <div class="dialogContent" id="messageContent" ref="msgContainer">
224
- &lt;!&ndash; <div class="message">
225
- <div class="user-detail">
226
- <div class="media-body">
227
- <p><el-image
228
- style="width: 100px; height: 100px"
229
- :src="url"
230
- :preview-src-list="srcList">
231
- </el-image>
232
- </p>
233
- </div>
234
- </div>
235
- </div>
236
- <div class="message-notice">
237
- <p class="notice-content">客户和机器人建立会话 11:15:42</p>
238
- </div>
239
- <div class="message-notice">
240
- <p class="notice-content">客户转人工服务 11:15:45</p>
241
- </div>
242
- <div class="message-notice">
243
- <p class="notice-content">客户和客服 阿毛 的会话已结束 11:16:01 </p>
244
- </div>
245
- <div class="message-notice">
246
- <p class="notice-content-day">
247
- <span class="line-left"></span>
248
- <span class="line-text">2020-01-06</span>
249
- <span class="line-right"> </span>
250
- </p>
251
- </div>&ndash;&gt;
252
- <div v-for="(item,index) in userMessages" :key="index">
253
- <el-link
254
- :underline="false"
255
- v-if="index==0 && moreMessages"
256
- type="primary"
257
- @click="clickUserli(activeClass,userList[activeClass].destId,userList[activeClass].sourceId,false,item.id,false,userList[activeClass].channel)"
258
- >更多消息</el-link>
259
- <el-link
260
- :underline="false"
261
- v-if="index==0 && !moreMessages"
262
- type="primary"
263
- disabled
264
- >没有更多消息了</el-link>
265
- <div class="message message-kf" v-if="item.source=='WEB_SOCKET'">
266
- <div class="user-detail">
267
- <div class="media-body">
268
- <p
269
- v-if="item.type == 'user_action_to_satisfaction'|| item.type == 'user_action_to_unsatisfactory'"
270
- >{{JSON.parse(item.content).input}}</p>
271
- <p
272
- v-else
273
- v-html="item.type == 'RADIO'? item.content.split('_')[item.content.split('_').length - 1] :item.content "
274
- ></p>
275
- <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:s")}}</span>
276
- </div>
277
- </div>
278
- </div>
279
- <div class="message message-kf" v-if="item.source=='WEBSITE_SOCKET'">
280
- <div class="user-detail">
281
- <div class="media-body">
282
- <p
283
- v-if="item.type == 'user_action_to_satisfaction'|| item.type == 'user_action_to_unsatisfactory'"
284
- >{{JSON.parse(item.content).input}}</p>
285
- <p
286
- v-else
287
- v-html="item.type == 'RADIO'? item.content.split('_')[item.content.split('_').length - 1] :item.content "
288
- ></p>
289
- <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:s")}}</span>
290
- </div>
291
- </div>
292
- </div>
293
- <div class="message message-kf" v-if="item.source=='MINI_PROGRAM_WEB_SOCKET'">
294
- <div class="user-detail">
295
- <div class="media-body">
296
- <p
297
- v-if="item.type == 'user_action_to_satisfaction'|| item.type == 'user_action_to_unsatisfactory'"
298
- >{{JSON.parse(item.content).input}}</p>
299
- <p
300
- v-else
301
- v-html="item.type == 'RADIO'? item.content.split('_')[item.content.split('_').length - 1] :item.content "
302
- ></p>
303
- <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:s")}}</span>
304
- </div>
305
- </div>
306
- </div>
307
- <div class="message" v-if="item.type=='user_action_to_satisfaction' ">
308
- <template>
309
- <div class="user-detail" v-if="JSON.parse(item.content)!=null">
310
- <div class="media-body">
311
- <p v-html="JSON.parse(item.content).reply_text"></p>
312
- <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:ss")}}</span>
313
- <span v-if="item.source=='GUORAN_BOT'" class="botname">{{userInfor.botName}}</span>
314
- <span
315
- v-else-if="item.source=='CUSTOMER_SERVICE_SYSTEM'"
316
- class="botname"
317
- >{{item.sourceId}}</span>
318
- </div>
319
- </div>
320
- </template>
321
- </div>
322
-
323
- <div class="message" v-if="item.type=='user_action_to_unsatisfactory'">
324
- <template>
325
- <div class="user-detail" v-if="JSON.parse(item.content)!=null">
326
- <div class="media-body-ps">
327
- <p
328
- class="other"
329
- v-if="JSON.parse(item.content).reply_text!=null"
330
- >{{JSON.parse(item.content).reply_text}}</p>
331
- <div v-if="JSON.parse(item.content).reply_options!=null && JSON.parse(item.content).reply_options.length>0"
332
- >
333
- <p
334
- class="ps"
335
- v-for="(option,index) in JSON.parse(item.content).options"
336
- :key="index"
337
- >{{option.name}}</p>
338
- </div>
339
-
340
- <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:ss")}}</span>
341
- <span class="botname">{{userInfor.botName}}</span>
342
- </div>
343
- </div>
344
- </template>
345
- </div>
346
- <template
347
- v-if="(item.source=='GUORAN_BOT' || item.source=='CUSTOMER_SERVICE_SYSTEM') && item.type!='user_action_to_satisfaction' && item.type!='user_action_to_unsatisfactory' "
348
- >
349
- <div class="message" v-for="(msg,index) in JSON.parse(item.content)" :key="index">
350
- <div class="user-detail" v-if="msg.content!=null">
351
- <div
352
- class="media-body"
353
- v-if="(msg.type =='answer_text' || msg.type=='answer_welcometext' || msg.type=='answer_correct') && msg.content.list!=null && msg.content.list[0]!='__welcome__' "
354
- >
355
- <p v-html="msg.content.list != null?msg.content.list[0]:''"></p>
356
- <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:ss")}}</span>
357
- <span v-if="item.source=='GUORAN_BOT'" class="botname">{{userInfor.botName}}</span>
358
- <span
359
- v-else-if="item.source=='CUSTOMER_SERVICE_SYSTEM'"
360
- class="botname"
361
- >{{item.sourceId}}</span>
362
- </div>
363
- <div
364
- class="media-body"
365
- style="max-width: 300px"
366
- v-else-if="(msg.type =='answer_rich_text')"
367
- >
368
- <p v-html="msg.content.html"></p>
369
- <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:ss")}}</span>
370
- <span v-if="item.source=='GUORAN_BOT'" class="botname">{{userInfor.botName}}</span>
371
- <span
372
- v-else-if="item.source=='CUSTOMER_SERVICE_SYSTEM'"
373
- class="botname"
374
- >{{item.sourceId}}</span>
375
- </div>
376
- <div
377
- class="media-body"
378
- v-else-if="msg.type =='action_question' && msg.content!=null && msg.content.questions!=null && msg.content.questions.length>0"
379
- >
380
- <p v-html="msg.content.questions[0]"></p>
381
- <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:ss")}}</span>
382
- <span v-if="item.source=='GUORAN_BOT'" class="botname">{{userInfor.botName}}</span>
383
- <span
384
- v-else-if="item.source=='CUSTOMER_SERVICE_SYSTEM'"
385
- class="botname"
386
- >{{item.sourceId}}</span>
387
- </div>
388
- <div class="media-body" v-else-if="msg.type == 'answer_image'">
389
- <p>
390
- <el-image style="width: 35%;" :src="msg.content.url"></el-image>
391
- </p>
392
- <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:ss")}}</span>
393
- <span v-if="item.source=='GUORAN_BOT'" class="botname">{{userInfor.botName}}</span>
394
- <span
395
- v-else-if="item.source=='CUSTOMER_SERVICE_SYSTEM'"
396
- class="botname"
397
- >{{item.sourceId}}</span>
398
- </div>
399
- <div v-else-if="msg.type=='answer_radio'" class="media-body-ps">
400
- <p class="other">{{msg.content.description}}</p>
401
- <p
402
- class="ps"
403
- v-for="(option,index) in msg.content.options"
404
- :key="index"
405
- >{{option.name}}</p>
406
- <span
407
- style="margin-left:15px;margin-top:5px"
408
- >{{new Date(item.time).Format("yyyy-MM-dd hh:mm:ss")}}</span>
409
- <span v-if="item.source=='GUORAN_BOT'" class="botname">{{userInfor.botName}}</span>
410
- <span
411
- v-else-if="item.source=='CUSTOMER_SERVICE_SYSTEM'"
412
- class="botname"
413
- >{{item.sourceId}}</span>
414
- </div>
415
- <div v-else-if="msg.type=='action_satisfaction'" class="media-body-ps">
416
- <p class="other">{{msg.content.satisfactionDes}}</p>
417
- <p class="ps" v-for="(option,index) in ['满意','不满意']" :key="index">{{option}}</p>
418
- </div>
419
- <div v-else-if="msg.type=='answer_video'" class="media-body">
420
- <p>
421
- <video-player
422
- class="video-player vjs-custom-skin"
423
- :options="videoOptions(msg.content)"
424
- style="height:auto"
425
- />
426
- </p>
427
- <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:ss")}}</span>
428
- <span v-if="item.source=='GUORAN_BOT'" class="botname">{{userInfor.botName}}</span>
429
- <span
430
- v-else-if="item.source=='CUSTOMER_SERVICE_SYSTEM'"
431
- class="botname"
432
- >{{item.sourceId}}</span>
433
- </div>
434
-
435
- <div v-else-if="msg.type=='action_transfer'">
436
- &lt;!&ndash; 机器人回复为转人工组件内容 &ndash;&gt;
437
- </div>
438
- <div v-else>
439
- <p>{{msg}}</p>
440
- </div>
441
- </div>
442
- </div>
443
- </template>
444
- </div>
445
- &lt;!&ndash; <div class="message">&ndash;&gt;
446
- &lt;!&ndash; <div class="user-detail">&ndash;&gt;
447
- &lt;!&ndash; &ndash;&gt;
448
- &lt;!&ndash; </div>&ndash;&gt;
449
- &lt;!&ndash; </div>&ndash;&gt;
450
- &lt;!&ndash; <div class="message">
451
- <div class="user-detail">
452
- <div class="media-body">
453
- <p>
454
- <video-player
455
- class="video-player vjs-custom-skin"
456
- ref="videoPlayer"
457
- :playsinline="true"
458
- :options="playerOptions"
459
- >
460
- </video-player>
461
- </p>
462
- </div>
463
- </div>
464
- </div>&ndash;&gt;
465
- </div>
466
- </div>&ndash;&gt;
467
- <text-message :text="text" @submitClick="submitClicks"></text-message>
468
- <text-message :text="text" @submitClick="submitClicks" :type="rem"></text-message>
469
- <text-message :text="text" @submitClick="submitClicks" :type="rem"></text-message>-->
470
-
471
- <!-- <ticket-message :content="contents" @touchEnd="touchEnd"></ticket-message>-->
472
- <!-- <ticket-message :content="contents" type="rem"></ticket-message>
473
- <ticket-message :content="contents" type="rem"></ticket-message>
474
- <ticket-message :content="contents" type="rem"></ticket-message>
475
- <ticket-message :content="contents" ></ticket-message>
476
- <ticket-message :content="contents"></ticket-message>
477
- <ticket-message :content="contents" ></ticket-message>
478
- <ticket-message :content="contents" ></ticket-message>-->
479
- <!-- <text-message :text="text" :type="rem" @submitClick="submitClick"></text-message>
480
- <text-message :text="text" @submitClick="submitClick"></text-message>-->
481
- <!-- <text-message :text="text"></text-message>
482
- <form-template :formList="formList" @submitClick="submitClick"></form-template>
483
- <form-template :formList="formList" @submitClick="submitClick"></form-template>
484
- <form-template :formList="formList" @submitClick="submitClick"></form-template>-->
485
-
486
- <!-- <feed-back
487
- :feedBack="feedBack"
488
- :rem="rem"
489
- @positiveFeedback="positiveFeedback"
490
- ></feed-back>-->
491
- <!-- <feed-back
492
- :feedBack="feedBack"
493
- @positiveFeedback="positiveFeedback"
494
- ></feed-back>-->
495
- <form-template
496
- :formList="formList"
497
- @submitClick="submitClick"
498
- ></form-template>
499
- <form-template
500
- :formList="formList2"
501
- @submitClick="submitClick"
502
- ></form-template>
503
- <!-- <text-message :text="text" @submitClick="submitClick"></text-message>
504
- <text-message
505
- :text="text"
506
- @submitClick="submitClick"
507
- :disable="true"
508
- :submit="true"
509
- ></text-message>
510
- <FileType :urls="urls" :color="black"></FileType>
511
- <chat-content :messageList="messageList"></chat-content>-->
512
- </div>
513
- </template>
514
- <script>
515
- /*
516
- import FormTemplate from "@/components/formTemplate";
517
- import TextMessage from "@/components/message/TextMessage";*/
518
-
519
-
520
- /*import FormTemplate from "@/components/formTemplate";
521
- import TextMessage from "@/components/message/TextMessage";*/
522
-
523
- import FormTemplate from "@/components/formTemplate";
524
-
525
-
526
- /* import TicketMessage from "@/components/message/TicketMessage";
527
- import TicketMessage from "@/components/message/TicketMessage";
528
- import TextMessage from "@/components/message/TextMessage";
529
- import FeedBack from "@/components/feedBack";*/
530
- // iframe 弹窗组件测试
531
- /*import ActionAlert from "@/components/message/ActionAlertIframe";*/
532
- /*import FileType from "@/components/FileType";
533
- import ChatContent from "./chatContent";*/
534
-
535
- export default {
536
- name: "ConversationContainer",
537
- components: {
538
-
539
-
540
- FormTemplate,
541
-
542
-
543
- },
544
- props: {
545
- messages: Array,
546
- },
547
- data() {
548
- return {
549
- black:'',
550
- // 弹窗组件模拟数据
551
- actionAlertIframeObj: {
552
- iframeId: "iframeId999999998",
553
- template: "https://www.baidu.com/?name=5555555",
554
- description: "描述",
555
- height: 550,
556
- width: 300,
557
- scrolling: "yes",
558
- sandbox: [
559
- "预留",
560
- "启用一系列对 <iframe> 中内容的额外限制",
561
- "参考 https://www.w3school.com.cn/tags/att_iframe_sandbox.asp",
562
- ],
563
- frameborder: "0/1(是否显示框架周围的边框)",
564
- displayStyle: "iframe 样式(点击弹出/嵌入iframe 字符串类型后端未做限制)",
565
- },
566
- contents: {
567
- multiple: true,
568
- cards: [
569
- {
570
- content: {
571
- htmlList: [
572
- {
573
- type:'IMAGE',
574
- src:'https://guoranopen-zjk.oss-cn-zhangjiakou.aliyuncs.com/2021/02/03/03/11/90a549ad-5118-4bbd-b02f-88fa39a7d9e7/src=http___wx1.sinaimg.cn_mw690_0075bygJly1gg7223fbsnj31ba1yx4kl.jpg&refer=http___wx1.sinaimg.jfif'
575
-
576
- /*list: [
577
- {
578
- type:'IMAGE',
579
- src:'https://guoranopen-zjk.oss-cn-zhangjiakou.aliyuncs.com/2021/02/03/02/58/0d04a01a-5b57-439f-82f8-2c5dfba06fc5/5c468a64f152b1.jpg'
580
- },
581
- ],*/
582
- },
583
- { type: "SINGLE", list: ["<p>aaaaaaaaaa</p>"] },
584
- { type: "SINGLE", list: ["<p>北京首都国际机场</p>"] },
585
- { type: "SINGLE", list: ["<p>北京首都国际机场啦啦啦啦</p>"] },
586
- { type: "SINGLE", list: ["<p>7:00</p>"] },
587
- ],
588
- buttonList: [
589
- { name: "我是标签1", scope: "", test: "" },
590
- { name: "我是标签2" },
591
- ],
592
- },
593
- },
594
- {
595
- content: {
596
- htmlList: [
597
- { type: "SINGLE", list: ["<p>aaaaa</p>"] },
598
- {
599
- type: "DOUBLE",
600
- list: [
601
- "<p>测试测试测试测试测试测试测试</p>",
602
- "<div>bbbbb</div>",
603
- ],
604
- },
605
- {
606
- type: "TRIPLE",
607
- list: ["<p>7:00</p>", "<div></div>", "<p>ccccc</p>"],
608
- },
609
- {
610
- type: "TRIPLE",
611
- list: ["<p>7:00</p>", "<div>bbbbb</div>", "<p>12:00</p>"],
612
- },
613
- ],
614
- buttonList: [{ name: "我是标签1", scope: "", test: "" }],
615
- },
616
- },
617
- {
618
- content: {
619
- htmlList: [
620
- { type: "SINGLE", list: ["<p>邓伦李沁的背景图片</p>"] },
621
- { type: "SINGLE", list: ["<p>男生藏快递向求婚被他人错拆</p>"] },
622
- { type: "SINGLE", list: ["<p>aaaaa</p>"] },
623
- { type: "SINGLE", list: ["<p>aaaaa</p>"] },
624
- ],
625
- buttonList: [{ name: "我是标签1" }],
626
- },
627
- },
628
- ],
629
- apiKey:'123456789'
630
- },
631
- formList: {
632
- formActionId: "",
633
- form: {
634
- formFieldRelation: [
635
- {
636
- display: true,
637
- paramName: "miaoshu",
638
- formField: {
639
- deleted: false,
640
- createTime: "2020-12-08T08:08:03.000+0000",
641
- name: "",
642
- description: "",
643
- updateTime: "2020-12-08T08:10:41.000+0000",
644
- id: 1112,
645
- lastOperatorId: 21,
646
- mainId: "e2f80aecaf7c11eabdcd506b4b2f3ac8",
647
- type: "EXPLANATION",
648
- extInfo: {
649
- descriptionText: "我是解释说明文案"
650
- },
651
- },
652
- required: false,
653
- fieldId: 1112,
654
- },
655
- {
656
- display: true,
657
- paramName: "danxuan",
658
- value: "",
659
- formField: {
660
- deleted: false,
661
- createTime: "2020-12-08T08:08:03.000+0000",
662
- name: "单选1",
663
- description: "",
664
- updateTime: "2020-12-08T08:10:41.000+0000",
665
- id: 111,
666
- lastOperatorId: 21,
667
- mainId: "e2f80aecaf7c11eabdcd506b4b2f3acc",
668
- type: "RADIO",
669
- extInfo: {
670
- WebHookParameter: [],
671
- value: [],
672
- option: [
673
- { _default: "true", label: "1", value: "1" },
674
- { _default: "false", label: "2", value: "选项二" },
675
- { _default: "false", label: "3", value: "3" },
676
- ],
677
- },
678
- },
679
- required: false,
680
- fieldId: 111,
681
- },
682
- {
683
- display: true,
684
- paramName: "fujian",
685
- formField: {
686
- deleted: false,
687
- createTime: "2020-12-08T08:08:03.000+0000",
688
- name: '123',
689
- description: "",
690
- updateTime: "2020-12-08T08:10:41.000+0000",
691
- id: 1117,
692
- lastOperatorId: 78,
693
- mainId: "e2f80aecaf7c11eabdcd506b4b2f3accJ",
694
- type: "FILE",
695
- extInfo: {
696
- fileLimit:'more',
697
- limitNum:'3'
698
- },
699
- },
700
- required: true,
701
- fieldId: 1117,
702
- value: [
703
- {
704
- url:'https://img01.yzcdn.cn/vant/leaf.jpg'
705
- }
706
- ]
707
- },
708
- {
709
- display: true,
710
- paramName: "fuxuan",
711
- value: [],
712
- formField: {
713
- deleted: false,
714
- createTime: "2020-12-08T08:08:15.000+0000",
715
- name: "复选1",
716
- description: "",
717
- updateTime: "2020-12-08T08:10:49.000+0000",
718
- id: 112,
719
- lastOperatorId: 21,
720
- mainId: "e2f80aecaf7c11eabdcd506b4b2f3accd",
721
- type: "CHECKBOX",
722
- extInfo: {
723
- WebHookParameter: [],
724
- value: [],
725
- option: [
726
- { _default: "false", label: "1", value: "" },
727
- {
728
- _default: "false",
729
- label: "2",
730
- value: "选项二",
731
- },
732
- { _default: "false", label: "3", value: "" },
733
- ],
734
- },
735
- },
736
- required: true,
737
- fieldId: 112,
738
- },
739
- {
740
- display: true,
741
- paramName: "xiala",
742
- value: "MIDDLE",
743
- formField: {
744
- deleted: false,
745
- createTime: "2020-12-08T08:08:27.000+0000",
746
- name: "下拉1",
747
- description: "",
748
- updateTime: "2020-12-08T08:10:56.000+0000",
749
- id: 113,
750
- lastOperatorId: 21,
751
- mainId: "e2f80aecaf7c11eabdcd506b4b2f3accdd",
752
- type: "SELECT",
753
- extInfo: {
754
- WebHookParameter: [],
755
- value: [],
756
- option: [
757
- { _default: "false", label: "紧急", value: "URGENT" },
758
- {
759
- _default: "false",
760
- label: "高",
761
- value: "HIGH",
762
- },
763
- { _default: "false", label: "中", value: "MIDDLE" },
764
- { _default: "false", label: "12", value: "12" },
765
- ],
766
- },
767
- },
768
- required: false,
769
- fieldId: 113,
770
-
771
- },
772
- {
773
- display: true,
774
- paramName: "hhh",
775
- value: [{
776
- url:'https://img01.yzcdn.cn/vant/leaf.jpg'
777
- },
778
- {
779
- url:'https://img01.yzcdn.cn/vant/leaf.jpg'
780
- }
781
- ],
782
- formField: {
783
- deleted: false,
784
- createTime: "2020-12-08T08:08:03.000+0000",
785
- name: '345',
786
- description: "",
787
- updateTime: "2020-12-08T08:10:41.000+0000",
788
- id: 222222,
789
- lastOperatorId: 78,
790
- mainId: "e2f80aecaf7c11eabdcd506b4b2f3accJ",
791
- type: "FILE",
792
- extInfo: {
793
- fileLimit:'more',
794
-
795
- },
796
- },
797
- required: false,
798
- fieldId: 222222
799
- },
800
- ],
801
- },
802
- },
803
- formList2: {
804
- formActionId: "",
805
- form: {
806
- id: 3,
807
- name: "表单1",
808
- release: false,
809
- deleted: false,
810
- description: "",
811
- webhookId: 0,
812
- webHookRequest: null,
813
- createTime: "2020-11-18T10:50:19.000+0000",
814
- updateTime: "2020-11-18T10:50:19.000+0000",
815
- mainId: "e2f80aecaf7c11eabdcd506b4b2f3acc",
816
- formFieldRelation: [
817
- {
818
- display: true,
819
- fieldId: "5fd1d87127d6601a879b49bbc",
820
- formField: {
821
- createTime: null,
822
- updateTime: "2020-12-10T16:12:33.544",
823
- id: "5fd1d87127d6601a879b49bbc",
824
- name: "级联",
825
- description: "",
826
- type: "CASCADER",
827
- operatorId: "12",
828
- mainId: "6cdfcac6a7d611eabdcd506b4b2f3acc",
829
- searchable: true,
830
- extInfo: {
831
- exinfo: [],
832
- cascadeDown: [
833
- {
834
- style: "1",
835
- options: [
836
- {
837
- value: "选项一",
838
- label: "选项一",
839
- children: [
840
- {
841
- value: "选项一一",
842
- label: "选项一一",
843
- children:[
844
- {label:'选项一一一',value:'选项一一一'},
845
- {label:'选项一一二',value:'选项一一二'}
846
-
847
- ]
848
- },
849
- {
850
- value: "选项一二",
851
- label: "选项一二",
852
- children:[
853
- {label:'选项一二一',value:'选项一二一'},
854
- {label:'选项一二二',value:'选项一二二'}
855
- ]
856
- },
857
- ],
858
- },
859
- {
860
- value: "选项二",
861
- label: "选项二",
862
- children: [
863
- {
864
- value: "选项二一",
865
- label: "选项二一",
866
- children:[
867
- {label:'选项二一一',value:'选项二一一'},
868
- {label:'选项二一二',value:'选项二一二'}
869
- ]
870
- },
871
- {
872
- value: "选项二二",
873
- label: "选项二二",
874
- children:[
875
- {label:'选项二二一',value:'选项二二一'},
876
- {label:'选项二二二',value:'选项二二二'}
877
- ]
878
- },
879
- ],
880
- },
881
- {
882
- value: "选项三",
883
- label: "选项三"
884
- },
885
- ],
886
- },
887
- ],
888
- },
889
- },
890
- width: 0,
891
- required: true,
892
- value: null,
893
- },
894
- {
895
- display: true,
896
- fieldId: "workorder_description",
897
- formField: {
898
- createTime: null,
899
- updateTime: "2020-12-10T16:12:33.544",
900
- id: "5fd1d87127d6601a879b49bbcccc",
901
- name: "工单描述",
902
- description: "",
903
- type: "TEXTAREA",
904
- operatorId: "12",
905
- mainId: "6cdfcac6a7d611eabdcd506b4b2f3acccc",
906
- searchable: true,
907
- extInfo:null
908
- },
909
- width: 0,
910
- required: true,
911
- value: null,
912
- },
913
- {
914
- display: true,
915
- fieldId: "workorder_clientId",
916
- formField: {
917
- createTime: null,
918
- updateTime: "2020-12-10T16:12:33.544",
919
- id: "5fd1d87127d6601a879b49bbccccd'd",
920
- name: "客户",
921
- description: "",
922
- type: "SELECT",
923
- operatorId: "12",
924
- mainId: "6cdfcac6a7d611eabdcd506b4b2f3acccc",
925
- searchable: true,
926
- extInfo:{
927
- options:[]
928
- }
929
- },
930
- width: 0,
931
- required: true,
932
- value: null,
933
- },
934
- {
935
- display: true,
936
- fieldId: "5fd1d87127d6601a879b49bbccc",
937
- formField: {
938
- createTime: null,
939
- updateTime: "2020-12-10T16:12:33.544",
940
- id: "5fd1d87127d6601a879b49bbccc",
941
- name: "级联2",
942
- description: "",
943
- type: "CASCADER",
944
- operatorId: "12",
945
- mainId: "6cdfcac6a7d611eabdcd506b4b2f3acccc",
946
- searchable: true,
947
- extInfo: {
948
- exinfo: [],
949
- cascade:[
950
- {
951
- value: "是",
952
- label: "是",
953
- children: [
954
- {
955
- value: "北京",
956
- label: "北京",
957
- children:[
958
- {label:'北京一',value:'北京一'}
959
- ]
960
- },
961
- {
962
- value: "天津",
963
- label: "天津",
964
- },
965
- ],
966
- },
967
- {
968
- value: "飒飒",
969
- label: "飒飒"
970
- },
971
- ],
972
- placeholder:'请选择级联'
973
-
974
- },
975
- },
976
- width: 0,
977
- required: true,
978
- value: null,
979
- },
980
- {
981
- display: true,
982
- fieldId: "5fd1d87b27d6601a879b49bcaaff",
983
- formField: {
984
- createTime: null,
985
- updateTime: "2020-12-10T16:12:43.694",
986
- id: "5fd1d87b27d6601a879b49bcaaff",
987
- name: "下拉",
988
- description: "",
989
- type: "SELECT",
990
- operatorId: "12",
991
- mainId: "6cdfcac6a7d611eabdcd506b4b2f3acc",
992
- searchable: true,
993
- extInfo: {
994
- exinfo: [
995
- {
996
- value: "我",
997
- _default: "true",
998
- },
999
- {
1000
- value: "你",
1001
- _default: "false",
1002
- },
1003
- ],
1004
- cascadeDown: [
1005
- {
1006
- style: "1",
1007
- options: [],
1008
- },
1009
- ],
1010
- },
1011
- },
1012
- width: 0,
1013
- required: false,
1014
- value: '我',
1015
- },
1016
- {
1017
- display: true,
1018
- fieldId: "5fd1d87b27d6601a879b49bc",
1019
- formField: {
1020
- createTime: null,
1021
- updateTime: "2020-12-10T16:12:43.694",
1022
- id: "5fd1d87b27d6601a879b49bc",
1023
- name: "下拉22",
1024
- description: "",
1025
- type: "SELECT",
1026
- operatorId: "12",
1027
- mainId: "6cdfcac6a7d611eabdcd506b4b2f3acc",
1028
- searchable: true,
1029
- extInfo: {
1030
- option: [
1031
- { value: "chifan", label: "吃饭", _default: "false" },
1032
- { value: "shuijiao", label: "睡觉", _default: "true" },
1033
- ],
1034
- placeholder:'请选择下拉'
1035
- },
1036
- },
1037
- width: 0,
1038
- required: false,
1039
- value: null,
1040
- },
1041
- {
1042
- display: true,
1043
- fieldId: "5fd1d88627d6601a879b49bd",
1044
- formField: {
1045
- createTime: null,
1046
- updateTime: "2020-12-10T16:12:54.45",
1047
- id: "5fd1d88627d6601a879b49bd",
1048
- name: "单选",
1049
- description: "",
1050
- type: "RADIO",
1051
- operatorId: "12",
1052
- mainId: "6cdfcac6a7d611eabdcd506b4b2f3acc",
1053
- searchable: true,
1054
- extInfo: {
1055
- exinfo: [
1056
- {
1057
- value: "三点",
1058
- _default: "true",
1059
- },
1060
- {
1061
- value: "但是",
1062
- _default: "false",
1063
- },
1064
- ],
1065
- cascadeDown: [
1066
- {
1067
- style: "1",
1068
- options: [],
1069
- },
1070
- ],
1071
- },
1072
- },
1073
- width: 0,
1074
- required: true,
1075
- value: null,
1076
- },
1077
- {
1078
- display: true,
1079
- fieldId: "5fd1d89127d6601a879b49be",
1080
- formField: {
1081
- createTime: null,
1082
- updateTime: "2020-12-10T16:13:05.108",
1083
- id: "5fd1d89127d6601a879b49be",
1084
- name: "复选",
1085
- description: "",
1086
- type: "CHECKBOX",
1087
- operatorId: "12",
1088
- mainId: "6cdfcac6a7d611eabdcd506b4b2f3acc",
1089
- searchable: true,
1090
- extInfo: {
1091
- exinfo: [
1092
- {
1093
- value: "dingding",
1094
- label:'dingding',
1095
- _default: "false",
1096
- },
1097
- {
1098
- value: "lala",
1099
- label:'lala',
1100
- _default: "true",
1101
- },
1102
- ],
1103
- cascadeDown: [
1104
- {
1105
- style: "1",
1106
- options: [],
1107
- },
1108
- ],
1109
- },
1110
- },
1111
- width: 0,
1112
- required: true,
1113
- value: null,
1114
- },
1115
- {
1116
- display:true,
1117
- fieldId: "1adcfd3d0c494dcaba5c469ee8252e3f",
1118
- formField:{
1119
- extInfo:{
1120
- isDelete:true,
1121
- visibleWithoutPermission:false
1122
- },
1123
- name:'聊天记录',
1124
- type:'CHAT_RECORD'
1125
- },
1126
- paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f",
1127
- required:false,
1128
- value:''
1129
- },
1130
- {
1131
- display:true,
1132
- fieldId: "5811458460c94013bc2c2285120d7a8c",
1133
- formField:{
1134
- extInfo:{
1135
- isDelete:true,
1136
- visibleWithoutPermission:false,
1137
- url:"https://www.runoob.com/tags/html-colorpicker.html"
1138
- },
1139
- name:'"说明文字"',
1140
- type:'EXPLAIN'
1141
- },
1142
- paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f",
1143
- required:false,
1144
- value:'说明文字'
1145
- },
1146
- {
1147
- display:true,
1148
- fieldId: "44650eba647345e7b7f785bf772415c3",
1149
- formField:{
1150
- extInfo:{
1151
- isDelete:true,
1152
- visibleWithoutPermission:false,
1153
- url:""
1154
- },
1155
- name:'"渠道"',
1156
- type:'CHANNEL'
1157
- },
1158
- paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f",
1159
- required:false,
1160
- value:'说明文字'
1161
- },
1162
- {
1163
- display:true,
1164
- fieldId: "a59fc947fc47405796babb376acc6a7b",
1165
- formField:{
1166
- extInfo:{
1167
- isDelete:true,
1168
- visibleWithoutPermission:false,
1169
- options:[
1170
- {
1171
- label:"选项一",
1172
- value:'选项一',
1173
- _default:"false"
1174
- },
1175
- {
1176
- label:"选项二",
1177
- value:'选项二',
1178
- _default:"false"
1179
- },
1180
- {
1181
- label:"选项三",
1182
- value:'选项三',
1183
- _default:"false"
1184
- },
1185
- ]
1186
- },
1187
- name:'下拉',
1188
- type:'SELECT'
1189
- },
1190
- paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f",
1191
- required:false,
1192
- value:'选项二'
1193
- },
1194
- {
1195
- display:true,
1196
- fieldId: "64e8e0d90dd34c42ac5fcd81e1f932b4",
1197
- formField:{
1198
- extInfo:{
1199
- isDelete:true,
1200
- visibleWithoutPermission:false,
1201
- options:[
1202
- {
1203
- label:"选项一",
1204
- value:'选项一',
1205
- _default:"false"
1206
- },
1207
- {
1208
- label:"选项二",
1209
- value:'选项二',
1210
- _default:"false"
1211
- },
1212
- {
1213
- label:"选项三",
1214
- value:'选项三',
1215
- _default:"false"
1216
- },
1217
- ]
1218
- },
1219
- name:'单选',
1220
- type:'RADIO'
1221
- },
1222
- paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f",
1223
- required:false,
1224
- value:'选项一'
1225
- },
1226
- {
1227
- display:true,
1228
- fieldId: "dc573800d9904f3d8e4d59408549e087",
1229
- formField:{
1230
- extInfo:{
1231
- isDelete:true,
1232
- visibleWithoutPermission:false,
1233
- options:[
1234
- {
1235
- label:"选项一",
1236
- value:'选项一',
1237
- _default:"false"
1238
- },
1239
- {
1240
- label:"选项二",
1241
- value:'选项二',
1242
- _default:"false"
1243
- },
1244
- {
1245
- label:"选项三",
1246
- value:'选项三',
1247
- _default:"false"
1248
- },
1249
- ]
1250
- },
1251
- name:'多选',
1252
- type:'CHECKBOX'
1253
- },
1254
- paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f",
1255
- required:false,
1256
- value:['选项一','选项二']
1257
- },
1258
- {
1259
- display:true,
1260
- fieldId: "ef91e955bf894886b9edc56eb2c37554",
1261
- formField:{
1262
- extInfo:{
1263
- isDelete:true,
1264
- visibleWithoutPermission:false,
1265
- mold:'DATA',
1266
- placeholder:'请选择时间日期'
1267
- },
1268
- name:'时间日期',
1269
- type:'TIME_PICKER'
1270
- },
1271
- paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f",
1272
- required:false,
1273
- value:''
1274
- },
1275
- {
1276
- display:true,
1277
- fieldId: "ef91e955bf894886b9edc56eb2c3755S",
1278
- formField:{
1279
- extInfo:{
1280
- isDelete:true,
1281
- visibleWithoutPermission:false,
1282
- mold:'DATA_TIME',
1283
- placeholder:'请选择'
1284
- },
1285
- name:'时间日期',
1286
- type:'TIME_PICKER'
1287
- },
1288
- paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f",
1289
- required:false,
1290
- value:''
1291
- },
1292
- {
1293
- display:true,
1294
- fieldId: "workorder_name",
1295
- formField:{
1296
- name:'工单名称',
1297
- type:'INPUT'
1298
- },
1299
- paramName:"name",
1300
- required:true,
1301
- value:''
1302
- },
1303
- {
1304
- display:true,
1305
- fieldId: "ef91e955bf894886b9edc56eb2c3755S333",
1306
- formField:{
1307
- extInfo:{
1308
- isDelete:true,
1309
- visibleWithoutPermission:false,
1310
- maxNum:"3"
1311
- },
1312
- name:'单行输入框',
1313
- type:'INPUT'
1314
- },
1315
- paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f3333",
1316
- required:false,
1317
- value:''
1318
- },
1319
- {
1320
- display:true,
1321
- fieldId: "ef91e955bf894886b9edc56eb2c3755S444",
1322
- formField:{
1323
- extInfo:{
1324
- isDelete:true,
1325
- visibleWithoutPermission:false,
1326
- },
1327
- name:'多行输入框',
1328
- type:'TEXTAREA'
1329
- },
1330
- paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f3444",
1331
- required:false,
1332
- value:''
1333
- },
1334
-
1335
- ],
1336
- },
1337
- },
1338
-
1339
- text: {
1340
- template:
1341
- '<p>开始时间&nbsp;<span class="ask-component-placeholder-container"><span class="ask-component-placeholder-span" data="${开始时间戳_秒}" type="INPUT">1607427268</span><i class="ask-component-placeholder-icon arsenal_icon arsenalkebianji" icon="arsenal_icon arsenalkebianji" editable="true" onclick="_askEditValue(this,this.previousElementSibling)"></i></span>&nbsp;结束时间&nbsp;<span class="ask-component-placeholder-container"><span class="ask-component-placeholder-span" data="${结束时间戳_秒}" type="TIME_PICKER">1607772868</span><i class="ask-component-placeholder-icon arsenal_icon arsenalkebianji" icon="arsenal_icon arsenalkebianji" editable="true" onclick="_askEditValue(this,this.previousElementSibling)"></i></span></p>',
1342
- goToAction: { value: "123" },
1343
- apiKey:''
1344
- },
1345
- rem: "rem",
1346
- feedBack: {
1347
- positiveFeedback: { text: "有用有用有用有用" },
1348
- negativeFeedback: { text: "无用无用无用无用" },
1349
- feedbackActions: [],
1350
- feedbackUid: "",
1351
- },
1352
- urls:[ {"status":"success","name":"portal.test.askbot.cn_20201214_153724.zip", "size":2077,"percentage":100, "uid":1609154083480,"raw":{ "uid":1609154083480 }, "response":"https://guoranopen-zjk.oss-cn-zhangjiakou.aliyuncs.com/2020/12/28/07/15/d4c7a970-037e-454a-9921-821c0e81a3c5.zip" },
1353
- {"status":"success","name":"portal._153724.doc", "size":2077,"percentage":100, "uid":1609154083480,"raw":{ "uid":1609154083480 }, "response":"https://guoranopen-zjk.oss-cn-zhangjiakou.aliyuncs.com/2020/12/28/07/15/d4c7a970-037e-454a-9921-821c0e81a3c5.zip" },
1354
- {"status":"success","name":"portal.test.askbot.cn_20201214_153724.xls", "size":2077,"percentage":100, "uid":1609154083480,"raw":{ "uid":1609154083480 }, "response":"https://guoranopen-zjk.oss-cn-zhangjiakou.aliyuncs.com/2020/12/28/07/15/d4c7a970-037e-454a-9921-821c0e81a3c5.zip" },
1355
- {"status":"success","name":"portal.test.askbot.cn_20201214_153724.ppt", "size":2077,"percentage":100, "uid":1609154083480,"raw":{ "uid":1609154083480 }, "response":"https://guoranopen-zjk.oss-cn-zhangjiakou.aliyuncs.com/2020/12/28/07/15/d4c7a970-037e-454a-9921-821c0e81a3c5.zip" },
1356
- {"status":"success","name":"portal.test.askbot.cn_20201214_153724.pdf", "size":2077,"percentage":100, "uid":1609154083480,"raw":{ "uid":1609154083480 }, "response":"https://guoranopen-zjk.oss-cn-zhangjiakou.aliyuncs.com/2020/12/28/07/15/d4c7a970-037e-454a-9921-821c0e81a3c5.zip" },
1357
- {"status":"success","name":"portal.test.askbot.cn_20201214_153724.zip", "size":2077,"percentage":100, "uid":1609154083480,"raw":{ "uid":1609154083480 }, "response":"https://guoranopen-zjk.oss-cn-zhangjiakou.aliyuncs.com/2020/12/28/07/15/d4c7a970-037e-454a-9921-821c0e81a3c5.zip" }],
1358
- messageList:[
1359
- {content:'您好,我是郑俊成的智能助理,请问您是为企业咨询还是个人兴趣?',speaker:'bot',type:'answer_text'},
1360
- {content:'单位',speaker:'user',type:'answer_text'}
1361
- ],
1362
- };
1363
- },
1364
- methods: {
1365
- submitClick(value) {
1366
- console.log(value);
1367
- },
1368
- submitClicks(value) {
1369
- console.log(value);
1370
- },
1371
- positiveFeedback(value1) {
1372
- console.log(value1);
1373
- },
1374
- touchEnd(index){
1375
- console.log(index)
1376
- }
1377
- },
1378
- mounted() {},
1379
- updated() {},
1380
- };
1381
- </script>
1382
-
1383
- <!-- Add "scoped" attribute to limit CSS to this component only -->
1384
- <style scoped lang="less">
1385
- @import "../assets/less/converSationContainer/converSatonContainer";
1386
- #conversation{
1387
- }
1388
- </style>
1
+ <!-- 消息记录容器 -->
2
+ <template>
3
+ <div id="conversation">
4
+ <!--<action-alert
5
+ :actionAlertIframe="actionAlertIframeObj"
6
+ :disable="true"
7
+ ></action-alert>-->
8
+ <!-- <ticket-message :content="contents"></ticket-message>-->
9
+
10
+ <!-- <form-template @submitClick="submitClick" :formList="formList"></form-template>
11
+ <form-template @submitClick="submitClick" :formList="formList" :type="rem"></form-template>
12
+
13
+ &lt;!&ndash; <div class="conversation-container">
14
+ <div
15
+ v-if="showPreview"
16
+ style="
17
+ width: 100vw;
18
+ height: 100vh;
19
+ z-index: 10000;
20
+ position: fixed;
21
+ top: 0;
22
+ left: 0;
23
+ background-color: rgba(0, 0, 0, 0.8);
24
+ "
25
+ >
26
+ <div
27
+ @click="showPreview = false"
28
+ style="
29
+ color: white;
30
+ font-size: 30px;
31
+ padding: 30px 30px 15vh;
32
+ text-align: right;
33
+ cursor: pointer;
34
+ "
35
+ >
36
+ X
37
+ </div>
38
+ <img
39
+ style="max-height: 70vh; max-width: 70vw"
40
+ :src="previewImageUrl"
41
+ alt
42
+ srcset
43
+ />
44
+ </div>
45
+ <div class="test-box">
46
+ <div class="gr-header">
47
+ <span class="bot-name" v-if="currentBot != null">
48
+ &lt;!&ndash; {{ currentBot.name }}&ndash;&gt;
49
+ 我是名字
50
+ <el-popover
51
+ v-if="botList.length > 1"
52
+ placement="bottom"
53
+ trigger="hover"
54
+ width="250"
55
+ >
56
+ <el-radio-group v-model="currentBot.id" @change="changeCurrentBot">
57
+ <el-radio v-for="bot in botList" :key="bot.id" :label="bot.id">{{
58
+ bot.name
59
+ }}</el-radio>
60
+ </el-radio-group>
61
+ <i slot="reference" class="el-icon-s-operation"></i>
62
+ </el-popover>
63
+ </span>
64
+ <span class="el-icon-refresh" @click="cleanSession(true)"></span>
65
+ <span class="el-icon-close" @click="handleClose(false)"></span>
66
+ </div>
67
+ <transition name="fade">
68
+ <div class="mod-loading" v-if="isShow" transiton="fade">
69
+ <span>已将该问法添加至知识库, 正在重新训练模型</span>
70
+ <em class="el-icon-loading"></em>
71
+ </div>
72
+ </transition>
73
+ <div id="grContent" class="gr-content" ref="grContent">
74
+ <ul class="chat-list">
75
+ <li
76
+ v-for="(item, index) in chatList"
77
+ :key="index"
78
+ :class="[
79
+ 'chat-cell',
80
+ item.user === 'bot' ? 'via-bot-outer' : 'via-user-outer',
81
+ ]"
82
+ >
83
+ <div class="chat-content">
84
+ <div
85
+ class="chat-content"
86
+ v-if="item.type === 'TEXT' && item.user === 'user'"
87
+ >
88
+ <span class>{{ item.content }}</span>
89
+ <el-cascader
90
+ v-if="item.requestCompleted && item.needShowIntent"
91
+ style="width: 290px"
92
+ placeholder="未识别到意图,可选择所属意图,提高识别率"
93
+ size="mini"
94
+ v-model="item.intentId"
95
+ :options="intentionList"
96
+ :props="optionProps"
97
+ @change="changeIntent(item)"
98
+ ></el-cascader>
99
+ </div>
100
+
101
+ <span
102
+ v-html="item.text"
103
+ v-if="item.type === 'answer_text' && item.user === 'bot'"
104
+ ></span>
105
+ <div
106
+ v-html="item.text"
107
+ v-if="
108
+ item.type === 'answer_rich_text_pro' && item.user === 'bot'
109
+ "
110
+ ></div>
111
+
112
+ <img
113
+ v-if="item.type === 'answer_image'"
114
+ width="150px"
115
+ :src="item.url"
116
+ alt
117
+ />
118
+ <video-player
119
+ v-if="item.type === 'answer_video'"
120
+ class="video-player vjs-custom-skin"
121
+ :options="videoOptions(item.content)"
122
+ style="width: 300px"
123
+ />
124
+ <div v-if="item.type === 'answer_radio'" class="link-list-outer">
125
+ <span>{{ item.description }}</span>
126
+ <span
127
+ v-for="(cell, index) in item.options"
128
+ :key="item.nodeId + '_' + index"
129
+ class="link-cell cursor"
130
+ @click="
131
+ sendTestContent(
132
+ 'RADIO',
133
+ item.actionId + '_' + index + '_' + cell.value,
134
+ cell.name,
135
+ false
136
+ )
137
+ "
138
+ >{{ cell.name }}</span
139
+ >
140
+ </div>
141
+ <div
142
+ v-if="item.type === 'unSatisfactionChoose'"
143
+ class="link-list-outer"
144
+ >
145
+ <span>{{ item.content.description }}</span>
146
+ <span
147
+ v-for="(cell, index) in item.content.options"
148
+ :key="index"
149
+ class="link-cell cursor"
150
+ @click="
151
+ chatList.push({
152
+ type: 'TEXT',
153
+ content: cell.name,
154
+ user: 'user',
155
+ }),
156
+ addAnswerList([
157
+ {
158
+ type: 'answer_text',
159
+ content: { list: [cell.answer] },
160
+ },
161
+ ])
162
+ "
163
+ >{{ cell.name }}</span
164
+ >
165
+ </div>
166
+ <div
167
+ v-if="item.type === 'action_satisfaction'"
168
+ class="link-list-outer"
169
+ >
170
+ <span>{{ item.content.satisfactionDes }}</span>
171
+ <span
172
+ class="link-cell cursor"
173
+ @click="
174
+ satisfacte('满意', item.content.satisfactoryAnswer, null)
175
+ "
176
+ >满意</span
177
+ >
178
+ <span
179
+ class="link-cell cursor"
180
+ @click="
181
+ satisfacte(
182
+ '不满意',
183
+ item.content.unsatisfiedAnswer,
184
+ item.content.answerRadio
185
+ )
186
+ "
187
+ >不满意</span
188
+ >
189
+ </div>
190
+ </div>
191
+ </li>
192
+ </ul>
193
+ </div>
194
+ <div class="gr-footer">
195
+ <el-input
196
+ size="small"
197
+ placeholder="请输入测试问题"
198
+ v-model="testValue"
199
+ @keyup.enter.native="
200
+ sendTestContent('TEXT', testValue, testValue, true)
201
+ "
202
+ >
203
+ <el-button
204
+ type="primary"
205
+ size="small"
206
+ slot="append"
207
+ @click="sendTestContent('TEXT', testValue, testValue, true)"
208
+ >发送</el-button
209
+ >
210
+ <el-button
211
+ type="info"
212
+ size="small"
213
+ slot="append"
214
+ @click="sendTestContent('END_SESSION', 'END_SESSION', null, false)"
215
+ >结束</el-button
216
+ >
217
+ </el-input>
218
+ </div>
219
+ </div>
220
+ </div>
221
+ <div class="dialog">
222
+ <div class="headerName">对话记录</div>
223
+ <div class="dialogContent" id="messageContent" ref="msgContainer">
224
+ &lt;!&ndash; <div class="message">
225
+ <div class="user-detail">
226
+ <div class="media-body">
227
+ <p><el-image
228
+ style="width: 100px; height: 100px"
229
+ :src="url"
230
+ :preview-src-list="srcList">
231
+ </el-image>
232
+ </p>
233
+ </div>
234
+ </div>
235
+ </div>
236
+ <div class="message-notice">
237
+ <p class="notice-content">客户和机器人建立会话 11:15:42</p>
238
+ </div>
239
+ <div class="message-notice">
240
+ <p class="notice-content">客户转人工服务 11:15:45</p>
241
+ </div>
242
+ <div class="message-notice">
243
+ <p class="notice-content">客户和客服 阿毛 的会话已结束 11:16:01 </p>
244
+ </div>
245
+ <div class="message-notice">
246
+ <p class="notice-content-day">
247
+ <span class="line-left"></span>
248
+ <span class="line-text">2020-01-06</span>
249
+ <span class="line-right"> </span>
250
+ </p>
251
+ </div>&ndash;&gt;
252
+ <div v-for="(item,index) in userMessages" :key="index">
253
+ <el-link
254
+ :underline="false"
255
+ v-if="index==0 && moreMessages"
256
+ type="primary"
257
+ @click="clickUserli(activeClass,userList[activeClass].destId,userList[activeClass].sourceId,false,item.id,false,userList[activeClass].channel)"
258
+ >更多消息</el-link>
259
+ <el-link
260
+ :underline="false"
261
+ v-if="index==0 && !moreMessages"
262
+ type="primary"
263
+ disabled
264
+ >没有更多消息了</el-link>
265
+ <div class="message message-kf" v-if="item.source=='WEB_SOCKET'">
266
+ <div class="user-detail">
267
+ <div class="media-body">
268
+ <p
269
+ v-if="item.type == 'user_action_to_satisfaction'|| item.type == 'user_action_to_unsatisfactory'"
270
+ >{{JSON.parse(item.content).input}}</p>
271
+ <p
272
+ v-else
273
+ v-html="item.type == 'RADIO'? item.content.split('_')[item.content.split('_').length - 1] :item.content "
274
+ ></p>
275
+ <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:s")}}</span>
276
+ </div>
277
+ </div>
278
+ </div>
279
+ <div class="message message-kf" v-if="item.source=='WEBSITE_SOCKET'">
280
+ <div class="user-detail">
281
+ <div class="media-body">
282
+ <p
283
+ v-if="item.type == 'user_action_to_satisfaction'|| item.type == 'user_action_to_unsatisfactory'"
284
+ >{{JSON.parse(item.content).input}}</p>
285
+ <p
286
+ v-else
287
+ v-html="item.type == 'RADIO'? item.content.split('_')[item.content.split('_').length - 1] :item.content "
288
+ ></p>
289
+ <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:s")}}</span>
290
+ </div>
291
+ </div>
292
+ </div>
293
+ <div class="message message-kf" v-if="item.source=='MINI_PROGRAM_WEB_SOCKET'">
294
+ <div class="user-detail">
295
+ <div class="media-body">
296
+ <p
297
+ v-if="item.type == 'user_action_to_satisfaction'|| item.type == 'user_action_to_unsatisfactory'"
298
+ >{{JSON.parse(item.content).input}}</p>
299
+ <p
300
+ v-else
301
+ v-html="item.type == 'RADIO'? item.content.split('_')[item.content.split('_').length - 1] :item.content "
302
+ ></p>
303
+ <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:s")}}</span>
304
+ </div>
305
+ </div>
306
+ </div>
307
+ <div class="message" v-if="item.type=='user_action_to_satisfaction' ">
308
+ <template>
309
+ <div class="user-detail" v-if="JSON.parse(item.content)!=null">
310
+ <div class="media-body">
311
+ <p v-html="JSON.parse(item.content).reply_text"></p>
312
+ <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:ss")}}</span>
313
+ <span v-if="item.source=='GUORAN_BOT'" class="botname">{{userInfor.botName}}</span>
314
+ <span
315
+ v-else-if="item.source=='CUSTOMER_SERVICE_SYSTEM'"
316
+ class="botname"
317
+ >{{item.sourceId}}</span>
318
+ </div>
319
+ </div>
320
+ </template>
321
+ </div>
322
+
323
+ <div class="message" v-if="item.type=='user_action_to_unsatisfactory'">
324
+ <template>
325
+ <div class="user-detail" v-if="JSON.parse(item.content)!=null">
326
+ <div class="media-body-ps">
327
+ <p
328
+ class="other"
329
+ v-if="JSON.parse(item.content).reply_text!=null"
330
+ >{{JSON.parse(item.content).reply_text}}</p>
331
+ <div v-if="JSON.parse(item.content).reply_options!=null && JSON.parse(item.content).reply_options.length>0"
332
+ >
333
+ <p
334
+ class="ps"
335
+ v-for="(option,index) in JSON.parse(item.content).options"
336
+ :key="index"
337
+ >{{option.name}}</p>
338
+ </div>
339
+
340
+ <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:ss")}}</span>
341
+ <span class="botname">{{userInfor.botName}}</span>
342
+ </div>
343
+ </div>
344
+ </template>
345
+ </div>
346
+ <template
347
+ v-if="(item.source=='GUORAN_BOT' || item.source=='CUSTOMER_SERVICE_SYSTEM') && item.type!='user_action_to_satisfaction' && item.type!='user_action_to_unsatisfactory' "
348
+ >
349
+ <div class="message" v-for="(msg,index) in JSON.parse(item.content)" :key="index">
350
+ <div class="user-detail" v-if="msg.content!=null">
351
+ <div
352
+ class="media-body"
353
+ v-if="(msg.type =='answer_text' || msg.type=='answer_welcometext' || msg.type=='answer_correct') && msg.content.list!=null && msg.content.list[0]!='__welcome__' "
354
+ >
355
+ <p v-html="msg.content.list != null?msg.content.list[0]:''"></p>
356
+ <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:ss")}}</span>
357
+ <span v-if="item.source=='GUORAN_BOT'" class="botname">{{userInfor.botName}}</span>
358
+ <span
359
+ v-else-if="item.source=='CUSTOMER_SERVICE_SYSTEM'"
360
+ class="botname"
361
+ >{{item.sourceId}}</span>
362
+ </div>
363
+ <div
364
+ class="media-body"
365
+ style="max-width: 300px"
366
+ v-else-if="(msg.type =='answer_rich_text')"
367
+ >
368
+ <p v-html="msg.content.html"></p>
369
+ <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:ss")}}</span>
370
+ <span v-if="item.source=='GUORAN_BOT'" class="botname">{{userInfor.botName}}</span>
371
+ <span
372
+ v-else-if="item.source=='CUSTOMER_SERVICE_SYSTEM'"
373
+ class="botname"
374
+ >{{item.sourceId}}</span>
375
+ </div>
376
+ <div
377
+ class="media-body"
378
+ v-else-if="msg.type =='action_question' && msg.content!=null && msg.content.questions!=null && msg.content.questions.length>0"
379
+ >
380
+ <p v-html="msg.content.questions[0]"></p>
381
+ <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:ss")}}</span>
382
+ <span v-if="item.source=='GUORAN_BOT'" class="botname">{{userInfor.botName}}</span>
383
+ <span
384
+ v-else-if="item.source=='CUSTOMER_SERVICE_SYSTEM'"
385
+ class="botname"
386
+ >{{item.sourceId}}</span>
387
+ </div>
388
+ <div class="media-body" v-else-if="msg.type == 'answer_image'">
389
+ <p>
390
+ <el-image style="width: 35%;" :src="msg.content.url"></el-image>
391
+ </p>
392
+ <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:ss")}}</span>
393
+ <span v-if="item.source=='GUORAN_BOT'" class="botname">{{userInfor.botName}}</span>
394
+ <span
395
+ v-else-if="item.source=='CUSTOMER_SERVICE_SYSTEM'"
396
+ class="botname"
397
+ >{{item.sourceId}}</span>
398
+ </div>
399
+ <div v-else-if="msg.type=='answer_radio'" class="media-body-ps">
400
+ <p class="other">{{msg.content.description}}</p>
401
+ <p
402
+ class="ps"
403
+ v-for="(option,index) in msg.content.options"
404
+ :key="index"
405
+ >{{option.name}}</p>
406
+ <span
407
+ style="margin-left:15px;margin-top:5px"
408
+ >{{new Date(item.time).Format("yyyy-MM-dd hh:mm:ss")}}</span>
409
+ <span v-if="item.source=='GUORAN_BOT'" class="botname">{{userInfor.botName}}</span>
410
+ <span
411
+ v-else-if="item.source=='CUSTOMER_SERVICE_SYSTEM'"
412
+ class="botname"
413
+ >{{item.sourceId}}</span>
414
+ </div>
415
+ <div v-else-if="msg.type=='action_satisfaction'" class="media-body-ps">
416
+ <p class="other">{{msg.content.satisfactionDes}}</p>
417
+ <p class="ps" v-for="(option,index) in ['满意','不满意']" :key="index">{{option}}</p>
418
+ </div>
419
+ <div v-else-if="msg.type=='answer_video'" class="media-body">
420
+ <p>
421
+ <video-player
422
+ class="video-player vjs-custom-skin"
423
+ :options="videoOptions(msg.content)"
424
+ style="height:auto"
425
+ />
426
+ </p>
427
+ <span>{{new Date(item.time).Format("yyyy-MM-dd hh:mm:ss")}}</span>
428
+ <span v-if="item.source=='GUORAN_BOT'" class="botname">{{userInfor.botName}}</span>
429
+ <span
430
+ v-else-if="item.source=='CUSTOMER_SERVICE_SYSTEM'"
431
+ class="botname"
432
+ >{{item.sourceId}}</span>
433
+ </div>
434
+
435
+ <div v-else-if="msg.type=='action_transfer'">
436
+ &lt;!&ndash; 机器人回复为转人工组件内容 &ndash;&gt;
437
+ </div>
438
+ <div v-else>
439
+ <p>{{msg}}</p>
440
+ </div>
441
+ </div>
442
+ </div>
443
+ </template>
444
+ </div>
445
+ &lt;!&ndash; <div class="message">&ndash;&gt;
446
+ &lt;!&ndash; <div class="user-detail">&ndash;&gt;
447
+ &lt;!&ndash; &ndash;&gt;
448
+ &lt;!&ndash; </div>&ndash;&gt;
449
+ &lt;!&ndash; </div>&ndash;&gt;
450
+ &lt;!&ndash; <div class="message">
451
+ <div class="user-detail">
452
+ <div class="media-body">
453
+ <p>
454
+ <video-player
455
+ class="video-player vjs-custom-skin"
456
+ ref="videoPlayer"
457
+ :playsinline="true"
458
+ :options="playerOptions"
459
+ >
460
+ </video-player>
461
+ </p>
462
+ </div>
463
+ </div>
464
+ </div>&ndash;&gt;
465
+ </div>
466
+ </div>&ndash;&gt;
467
+ <text-message :text="text" @submitClick="submitClicks"></text-message>
468
+ <text-message :text="text" @submitClick="submitClicks" :type="rem"></text-message>
469
+ <text-message :text="text" @submitClick="submitClicks" :type="rem"></text-message>-->
470
+
471
+ <!-- <ticket-message :content="contents" @touchEnd="touchEnd"></ticket-message>-->
472
+ <!-- <ticket-message :content="contents" type="rem"></ticket-message>
473
+ <ticket-message :content="contents" type="rem"></ticket-message>
474
+ <ticket-message :content="contents" type="rem"></ticket-message>
475
+ <ticket-message :content="contents" ></ticket-message>
476
+ <ticket-message :content="contents"></ticket-message>
477
+ <ticket-message :content="contents" ></ticket-message>
478
+ <ticket-message :content="contents" ></ticket-message>-->
479
+ <!-- <text-message :text="text" :type="rem" @submitClick="submitClick"></text-message>
480
+ <text-message :text="text" @submitClick="submitClick"></text-message>-->
481
+ <!-- <text-message :text="text"></text-message>
482
+ <form-template :formList="formList" @submitClick="submitClick"></form-template>
483
+ <form-template :formList="formList" @submitClick="submitClick"></form-template>
484
+ <form-template :formList="formList" @submitClick="submitClick"></form-template>-->
485
+
486
+ <!-- <feed-back
487
+ :feedBack="feedBack"
488
+ :rem="rem"
489
+ @positiveFeedback="positiveFeedback"
490
+ ></feed-back>-->
491
+ <!-- <feed-back
492
+ :feedBack="feedBack"
493
+ @positiveFeedback="positiveFeedback"
494
+ ></feed-back>-->
495
+ <form-template
496
+ :formList="formList"
497
+ @submitClick="submitClick"
498
+ ></form-template>
499
+ <form-template
500
+ :formList="formList2"
501
+ @submitClick="submitClick"
502
+ ></form-template>
503
+ <!-- <text-message :text="text" @submitClick="submitClick"></text-message>
504
+ <text-message
505
+ :text="text"
506
+ @submitClick="submitClick"
507
+ :disable="true"
508
+ :submit="true"
509
+ ></text-message>
510
+ <FileType :urls="urls" :color="black"></FileType>
511
+ <chat-content :messageList="messageList"></chat-content>-->
512
+ </div>
513
+ </template>
514
+ <script>
515
+ /*
516
+ import FormTemplate from "@/components/formTemplate";
517
+ import TextMessage from "@/components/message/TextMessage";*/
518
+
519
+
520
+ /*import FormTemplate from "@/components/formTemplate";
521
+ import TextMessage from "@/components/message/TextMessage";*/
522
+
523
+ import FormTemplate from "@/components/formTemplate";
524
+
525
+
526
+ /* import TicketMessage from "@/components/message/TicketMessage";
527
+ import TicketMessage from "@/components/message/TicketMessage";
528
+ import TextMessage from "@/components/message/TextMessage";
529
+ import FeedBack from "@/components/feedBack";*/
530
+ // iframe 弹窗组件测试
531
+ /*import ActionAlert from "@/components/message/ActionAlertIframe";*/
532
+ /*import FileType from "@/components/FileType";
533
+ import ChatContent from "./chatContent";*/
534
+
535
+ export default {
536
+ name: "ConversationContainer",
537
+ components: {
538
+
539
+
540
+ FormTemplate,
541
+
542
+
543
+ },
544
+ props: {
545
+ messages: Array,
546
+ },
547
+ data() {
548
+ return {
549
+ black:'',
550
+ // 弹窗组件模拟数据
551
+ actionAlertIframeObj: {
552
+ iframeId: "iframeId999999998",
553
+ template: "https://www.baidu.com/?name=5555555",
554
+ description: "描述",
555
+ height: 550,
556
+ width: 300,
557
+ scrolling: "yes",
558
+ sandbox: [
559
+ "预留",
560
+ "启用一系列对 <iframe> 中内容的额外限制",
561
+ "参考 https://www.w3school.com.cn/tags/att_iframe_sandbox.asp",
562
+ ],
563
+ frameborder: "0/1(是否显示框架周围的边框)",
564
+ displayStyle: "iframe 样式(点击弹出/嵌入iframe 字符串类型后端未做限制)",
565
+ },
566
+ contents: {
567
+ multiple: true,
568
+ cards: [
569
+ {
570
+ content: {
571
+ htmlList: [
572
+ {
573
+ type:'IMAGE',
574
+ src:'https://guoranopen-zjk.oss-cn-zhangjiakou.aliyuncs.com/2021/02/03/03/11/90a549ad-5118-4bbd-b02f-88fa39a7d9e7/src=http___wx1.sinaimg.cn_mw690_0075bygJly1gg7223fbsnj31ba1yx4kl.jpg&refer=http___wx1.sinaimg.jfif'
575
+
576
+ /*list: [
577
+ {
578
+ type:'IMAGE',
579
+ src:'https://guoranopen-zjk.oss-cn-zhangjiakou.aliyuncs.com/2021/02/03/02/58/0d04a01a-5b57-439f-82f8-2c5dfba06fc5/5c468a64f152b1.jpg'
580
+ },
581
+ ],*/
582
+ },
583
+ { type: "SINGLE", list: ["<p>aaaaaaaaaa</p>"] },
584
+ { type: "SINGLE", list: ["<p>北京首都国际机场</p>"] },
585
+ { type: "SINGLE", list: ["<p>北京首都国际机场啦啦啦啦</p>"] },
586
+ { type: "SINGLE", list: ["<p>7:00</p>"] },
587
+ ],
588
+ buttonList: [
589
+ { name: "我是标签1", scope: "", test: "" },
590
+ { name: "我是标签2" },
591
+ ],
592
+ },
593
+ },
594
+ {
595
+ content: {
596
+ htmlList: [
597
+ { type: "SINGLE", list: ["<p>aaaaa</p>"] },
598
+ {
599
+ type: "DOUBLE",
600
+ list: [
601
+ "<p>测试测试测试测试测试测试测试</p>",
602
+ "<div>bbbbb</div>",
603
+ ],
604
+ },
605
+ {
606
+ type: "TRIPLE",
607
+ list: ["<p>7:00</p>", "<div></div>", "<p>ccccc</p>"],
608
+ },
609
+ {
610
+ type: "TRIPLE",
611
+ list: ["<p>7:00</p>", "<div>bbbbb</div>", "<p>12:00</p>"],
612
+ },
613
+ ],
614
+ buttonList: [{ name: "我是标签1", scope: "", test: "" }],
615
+ },
616
+ },
617
+ {
618
+ content: {
619
+ htmlList: [
620
+ { type: "SINGLE", list: ["<p>邓伦李沁的背景图片</p>"] },
621
+ { type: "SINGLE", list: ["<p>男生藏快递向求婚被他人错拆</p>"] },
622
+ { type: "SINGLE", list: ["<p>aaaaa</p>"] },
623
+ { type: "SINGLE", list: ["<p>aaaaa</p>"] },
624
+ ],
625
+ buttonList: [{ name: "我是标签1" }],
626
+ },
627
+ },
628
+ ],
629
+ apiKey:'123456789'
630
+ },
631
+ formList: {
632
+ formActionId: "",
633
+ form: {
634
+ formFieldRelation: [
635
+ {
636
+ display: true,
637
+ paramName: "miaoshu",
638
+ formField: {
639
+ deleted: false,
640
+ createTime: "2020-12-08T08:08:03.000+0000",
641
+ name: "",
642
+ description: "",
643
+ updateTime: "2020-12-08T08:10:41.000+0000",
644
+ id: 1112,
645
+ lastOperatorId: 21,
646
+ mainId: "e2f80aecaf7c11eabdcd506b4b2f3ac8",
647
+ type: "EXPLANATION",
648
+ extInfo: {
649
+ descriptionText: "我是解释说明文案"
650
+ },
651
+ },
652
+ required: false,
653
+ fieldId: 1112,
654
+ },
655
+ {
656
+ display: true,
657
+ paramName: "danxuan",
658
+ value: "",
659
+ formField: {
660
+ deleted: false,
661
+ createTime: "2020-12-08T08:08:03.000+0000",
662
+ name: "单选1",
663
+ description: "",
664
+ updateTime: "2020-12-08T08:10:41.000+0000",
665
+ id: 111,
666
+ lastOperatorId: 21,
667
+ mainId: "e2f80aecaf7c11eabdcd506b4b2f3acc",
668
+ type: "RADIO",
669
+ extInfo: {
670
+ WebHookParameter: [],
671
+ value: [],
672
+ option: [
673
+ { _default: "true", label: "1", value: "1" },
674
+ { _default: "false", label: "2", value: "选项二" },
675
+ { _default: "false", label: "3", value: "3" },
676
+ ],
677
+ },
678
+ },
679
+ required: false,
680
+ fieldId: 111,
681
+ },
682
+ {
683
+ display: true,
684
+ paramName: "fujian",
685
+ formField: {
686
+ deleted: false,
687
+ createTime: "2020-12-08T08:08:03.000+0000",
688
+ name: '123',
689
+ description: "",
690
+ updateTime: "2020-12-08T08:10:41.000+0000",
691
+ id: 1117,
692
+ lastOperatorId: 78,
693
+ mainId: "e2f80aecaf7c11eabdcd506b4b2f3accJ",
694
+ type: "FILE",
695
+ extInfo: {
696
+ fileLimit:'more',
697
+ limitNum:'3'
698
+ },
699
+ },
700
+ required: true,
701
+ fieldId: 1117,
702
+ value: [
703
+ {
704
+ url:'https://img01.yzcdn.cn/vant/leaf.jpg'
705
+ }
706
+ ]
707
+ },
708
+ {
709
+ display: true,
710
+ paramName: "fuxuan",
711
+ value: [],
712
+ formField: {
713
+ deleted: false,
714
+ createTime: "2020-12-08T08:08:15.000+0000",
715
+ name: "复选1",
716
+ description: "",
717
+ updateTime: "2020-12-08T08:10:49.000+0000",
718
+ id: 112,
719
+ lastOperatorId: 21,
720
+ mainId: "e2f80aecaf7c11eabdcd506b4b2f3accd",
721
+ type: "CHECKBOX",
722
+ extInfo: {
723
+ WebHookParameter: [],
724
+ value: [],
725
+ option: [
726
+ { _default: "false", label: "1", value: "" },
727
+ {
728
+ _default: "false",
729
+ label: "2",
730
+ value: "选项二",
731
+ },
732
+ { _default: "false", label: "3", value: "" },
733
+ ],
734
+ },
735
+ },
736
+ required: true,
737
+ fieldId: 112,
738
+ },
739
+ {
740
+ display: true,
741
+ paramName: "xiala",
742
+ value: "MIDDLE",
743
+ formField: {
744
+ deleted: false,
745
+ createTime: "2020-12-08T08:08:27.000+0000",
746
+ name: "下拉1",
747
+ description: "",
748
+ updateTime: "2020-12-08T08:10:56.000+0000",
749
+ id: 113,
750
+ lastOperatorId: 21,
751
+ mainId: "e2f80aecaf7c11eabdcd506b4b2f3accdd",
752
+ type: "SELECT",
753
+ extInfo: {
754
+ WebHookParameter: [],
755
+ value: [],
756
+ option: [
757
+ { _default: "false", label: "紧急", value: "URGENT" },
758
+ {
759
+ _default: "false",
760
+ label: "高",
761
+ value: "HIGH",
762
+ },
763
+ { _default: "false", label: "中", value: "MIDDLE" },
764
+ { _default: "false", label: "12", value: "12" },
765
+ ],
766
+ },
767
+ },
768
+ required: false,
769
+ fieldId: 113,
770
+
771
+ },
772
+ {
773
+ display: true,
774
+ paramName: "hhh",
775
+ value: [{
776
+ url:'https://img01.yzcdn.cn/vant/leaf.jpg'
777
+ },
778
+ {
779
+ url:'https://img01.yzcdn.cn/vant/leaf.jpg'
780
+ }
781
+ ],
782
+ formField: {
783
+ deleted: false,
784
+ createTime: "2020-12-08T08:08:03.000+0000",
785
+ name: '345',
786
+ description: "",
787
+ updateTime: "2020-12-08T08:10:41.000+0000",
788
+ id: 222222,
789
+ lastOperatorId: 78,
790
+ mainId: "e2f80aecaf7c11eabdcd506b4b2f3accJ",
791
+ type: "FILE",
792
+ extInfo: {
793
+ fileLimit:'more',
794
+
795
+ },
796
+ },
797
+ required: false,
798
+ fieldId: 222222
799
+ },
800
+ ],
801
+ },
802
+ },
803
+ formList2: {
804
+ formActionId: "",
805
+ form: {
806
+ id: 3,
807
+ name: "表单1",
808
+ release: false,
809
+ deleted: false,
810
+ description: "",
811
+ webhookId: 0,
812
+ webHookRequest: null,
813
+ createTime: "2020-11-18T10:50:19.000+0000",
814
+ updateTime: "2020-11-18T10:50:19.000+0000",
815
+ mainId: "e2f80aecaf7c11eabdcd506b4b2f3acc",
816
+ formFieldRelation: [
817
+ {
818
+ display: true,
819
+ fieldId: "5fd1d87127d6601a879b49bbc",
820
+ formField: {
821
+ createTime: null,
822
+ updateTime: "2020-12-10T16:12:33.544",
823
+ id: "5fd1d87127d6601a879b49bbc",
824
+ name: "级联",
825
+ description: "",
826
+ type: "CASCADER",
827
+ operatorId: "12",
828
+ mainId: "6cdfcac6a7d611eabdcd506b4b2f3acc",
829
+ searchable: true,
830
+ extInfo: {
831
+ exinfo: [],
832
+ cascadeDown: [
833
+ {
834
+ style: "1",
835
+ options: [
836
+ {
837
+ value: "选项一",
838
+ label: "选项一",
839
+ children: [
840
+ {
841
+ value: "选项一一",
842
+ label: "选项一一",
843
+ children:[
844
+ {label:'选项一一一',value:'选项一一一'},
845
+ {label:'选项一一二',value:'选项一一二'}
846
+
847
+ ]
848
+ },
849
+ {
850
+ value: "选项一二",
851
+ label: "选项一二",
852
+ children:[
853
+ {label:'选项一二一',value:'选项一二一'},
854
+ {label:'选项一二二',value:'选项一二二'}
855
+ ]
856
+ },
857
+ ],
858
+ },
859
+ {
860
+ value: "选项二",
861
+ label: "选项二",
862
+ children: [
863
+ {
864
+ value: "选项二一",
865
+ label: "选项二一",
866
+ children:[
867
+ {label:'选项二一一',value:'选项二一一'},
868
+ {label:'选项二一二',value:'选项二一二'}
869
+ ]
870
+ },
871
+ {
872
+ value: "选项二二",
873
+ label: "选项二二",
874
+ children:[
875
+ {label:'选项二二一',value:'选项二二一'},
876
+ {label:'选项二二二',value:'选项二二二'}
877
+ ]
878
+ },
879
+ ],
880
+ },
881
+ {
882
+ value: "选项三",
883
+ label: "选项三"
884
+ },
885
+ ],
886
+ },
887
+ ],
888
+ },
889
+ },
890
+ width: 0,
891
+ required: true,
892
+ value: null,
893
+ },
894
+ {
895
+ display: true,
896
+ fieldId: "workorder_description",
897
+ formField: {
898
+ createTime: null,
899
+ updateTime: "2020-12-10T16:12:33.544",
900
+ id: "5fd1d87127d6601a879b49bbcccc",
901
+ name: "工单描述",
902
+ description: "",
903
+ type: "TEXTAREA",
904
+ operatorId: "12",
905
+ mainId: "6cdfcac6a7d611eabdcd506b4b2f3acccc",
906
+ searchable: true,
907
+ extInfo:null
908
+ },
909
+ width: 0,
910
+ required: true,
911
+ value: null,
912
+ },
913
+ {
914
+ display: true,
915
+ fieldId: "workorder_clientId",
916
+ formField: {
917
+ createTime: null,
918
+ updateTime: "2020-12-10T16:12:33.544",
919
+ id: "5fd1d87127d6601a879b49bbccccd'd",
920
+ name: "客户",
921
+ description: "",
922
+ type: "SELECT",
923
+ operatorId: "12",
924
+ mainId: "6cdfcac6a7d611eabdcd506b4b2f3acccc",
925
+ searchable: true,
926
+ extInfo:{
927
+ options:[]
928
+ }
929
+ },
930
+ width: 0,
931
+ required: true,
932
+ value: null,
933
+ },
934
+ {
935
+ display: true,
936
+ fieldId: "5fd1d87127d6601a879b49bbccc",
937
+ formField: {
938
+ createTime: null,
939
+ updateTime: "2020-12-10T16:12:33.544",
940
+ id: "5fd1d87127d6601a879b49bbccc",
941
+ name: "级联2",
942
+ description: "",
943
+ type: "CASCADER",
944
+ operatorId: "12",
945
+ mainId: "6cdfcac6a7d611eabdcd506b4b2f3acccc",
946
+ searchable: true,
947
+ extInfo: {
948
+ exinfo: [],
949
+ cascade:[
950
+ {
951
+ value: "是",
952
+ label: "是",
953
+ children: [
954
+ {
955
+ value: "北京",
956
+ label: "北京",
957
+ children:[
958
+ {label:'北京一',value:'北京一'}
959
+ ]
960
+ },
961
+ {
962
+ value: "天津",
963
+ label: "天津",
964
+ },
965
+ ],
966
+ },
967
+ {
968
+ value: "飒飒",
969
+ label: "飒飒"
970
+ },
971
+ ],
972
+ placeholder:'请选择级联'
973
+
974
+ },
975
+ },
976
+ width: 0,
977
+ required: true,
978
+ value: null,
979
+ },
980
+ {
981
+ display: true,
982
+ fieldId: "5fd1d87b27d6601a879b49bcaaff",
983
+ formField: {
984
+ createTime: null,
985
+ updateTime: "2020-12-10T16:12:43.694",
986
+ id: "5fd1d87b27d6601a879b49bcaaff",
987
+ name: "下拉",
988
+ description: "",
989
+ type: "SELECT",
990
+ operatorId: "12",
991
+ mainId: "6cdfcac6a7d611eabdcd506b4b2f3acc",
992
+ searchable: true,
993
+ extInfo: {
994
+ exinfo: [
995
+ {
996
+ value: "我",
997
+ _default: "true",
998
+ },
999
+ {
1000
+ value: "你",
1001
+ _default: "false",
1002
+ },
1003
+ ],
1004
+ cascadeDown: [
1005
+ {
1006
+ style: "1",
1007
+ options: [],
1008
+ },
1009
+ ],
1010
+ },
1011
+ },
1012
+ width: 0,
1013
+ required: false,
1014
+ value: '我',
1015
+ },
1016
+ {
1017
+ display: true,
1018
+ fieldId: "5fd1d87b27d6601a879b49bc",
1019
+ formField: {
1020
+ createTime: null,
1021
+ updateTime: "2020-12-10T16:12:43.694",
1022
+ id: "5fd1d87b27d6601a879b49bc",
1023
+ name: "下拉22",
1024
+ description: "",
1025
+ type: "SELECT",
1026
+ operatorId: "12",
1027
+ mainId: "6cdfcac6a7d611eabdcd506b4b2f3acc",
1028
+ searchable: true,
1029
+ extInfo: {
1030
+ option: [
1031
+ { value: "chifan", label: "吃饭", _default: "false" },
1032
+ { value: "shuijiao", label: "睡觉", _default: "true" },
1033
+ ],
1034
+ placeholder:'请选择下拉'
1035
+ },
1036
+ },
1037
+ width: 0,
1038
+ required: false,
1039
+ value: null,
1040
+ },
1041
+ {
1042
+ display: true,
1043
+ fieldId: "5fd1d88627d6601a879b49bd",
1044
+ formField: {
1045
+ createTime: null,
1046
+ updateTime: "2020-12-10T16:12:54.45",
1047
+ id: "5fd1d88627d6601a879b49bd",
1048
+ name: "单选",
1049
+ description: "",
1050
+ type: "RADIO",
1051
+ operatorId: "12",
1052
+ mainId: "6cdfcac6a7d611eabdcd506b4b2f3acc",
1053
+ searchable: true,
1054
+ extInfo: {
1055
+ exinfo: [
1056
+ {
1057
+ value: "三点",
1058
+ _default: "true",
1059
+ },
1060
+ {
1061
+ value: "但是",
1062
+ _default: "false",
1063
+ },
1064
+ ],
1065
+ cascadeDown: [
1066
+ {
1067
+ style: "1",
1068
+ options: [],
1069
+ },
1070
+ ],
1071
+ },
1072
+ },
1073
+ width: 0,
1074
+ required: true,
1075
+ value: null,
1076
+ },
1077
+ {
1078
+ display: true,
1079
+ fieldId: "5fd1d89127d6601a879b49be",
1080
+ formField: {
1081
+ createTime: null,
1082
+ updateTime: "2020-12-10T16:13:05.108",
1083
+ id: "5fd1d89127d6601a879b49be",
1084
+ name: "复选",
1085
+ description: "",
1086
+ type: "CHECKBOX",
1087
+ operatorId: "12",
1088
+ mainId: "6cdfcac6a7d611eabdcd506b4b2f3acc",
1089
+ searchable: true,
1090
+ extInfo: {
1091
+ exinfo: [
1092
+ {
1093
+ value: "dingding",
1094
+ label:'dingding',
1095
+ _default: "false",
1096
+ },
1097
+ {
1098
+ value: "lala",
1099
+ label:'lala',
1100
+ _default: "true",
1101
+ },
1102
+ ],
1103
+ cascadeDown: [
1104
+ {
1105
+ style: "1",
1106
+ options: [],
1107
+ },
1108
+ ],
1109
+ },
1110
+ },
1111
+ width: 0,
1112
+ required: true,
1113
+ value: null,
1114
+ },
1115
+ {
1116
+ display:true,
1117
+ fieldId: "1adcfd3d0c494dcaba5c469ee8252e3f",
1118
+ formField:{
1119
+ extInfo:{
1120
+ isDelete:true,
1121
+ visibleWithoutPermission:false
1122
+ },
1123
+ name:'聊天记录',
1124
+ type:'CHAT_RECORD'
1125
+ },
1126
+ paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f",
1127
+ required:false,
1128
+ value:''
1129
+ },
1130
+ {
1131
+ display:true,
1132
+ fieldId: "5811458460c94013bc2c2285120d7a8c",
1133
+ formField:{
1134
+ extInfo:{
1135
+ isDelete:true,
1136
+ visibleWithoutPermission:false,
1137
+ url:"https://www.runoob.com/tags/html-colorpicker.html"
1138
+ },
1139
+ name:'"说明文字"',
1140
+ type:'EXPLAIN'
1141
+ },
1142
+ paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f",
1143
+ required:false,
1144
+ value:'说明文字'
1145
+ },
1146
+ {
1147
+ display:true,
1148
+ fieldId: "44650eba647345e7b7f785bf772415c3",
1149
+ formField:{
1150
+ extInfo:{
1151
+ isDelete:true,
1152
+ visibleWithoutPermission:false,
1153
+ url:""
1154
+ },
1155
+ name:'"渠道"',
1156
+ type:'CHANNEL'
1157
+ },
1158
+ paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f",
1159
+ required:false,
1160
+ value:'说明文字'
1161
+ },
1162
+ {
1163
+ display:true,
1164
+ fieldId: "a59fc947fc47405796babb376acc6a7b",
1165
+ formField:{
1166
+ extInfo:{
1167
+ isDelete:true,
1168
+ visibleWithoutPermission:false,
1169
+ options:[
1170
+ {
1171
+ label:"选项一",
1172
+ value:'选项一',
1173
+ _default:"false"
1174
+ },
1175
+ {
1176
+ label:"选项二",
1177
+ value:'选项二',
1178
+ _default:"false"
1179
+ },
1180
+ {
1181
+ label:"选项三",
1182
+ value:'选项三',
1183
+ _default:"false"
1184
+ },
1185
+ ]
1186
+ },
1187
+ name:'下拉',
1188
+ type:'SELECT'
1189
+ },
1190
+ paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f",
1191
+ required:false,
1192
+ value:'选项二'
1193
+ },
1194
+ {
1195
+ display:true,
1196
+ fieldId: "64e8e0d90dd34c42ac5fcd81e1f932b4",
1197
+ formField:{
1198
+ extInfo:{
1199
+ isDelete:true,
1200
+ visibleWithoutPermission:false,
1201
+ options:[
1202
+ {
1203
+ label:"选项一",
1204
+ value:'选项一',
1205
+ _default:"false"
1206
+ },
1207
+ {
1208
+ label:"选项二",
1209
+ value:'选项二',
1210
+ _default:"false"
1211
+ },
1212
+ {
1213
+ label:"选项三",
1214
+ value:'选项三',
1215
+ _default:"false"
1216
+ },
1217
+ ]
1218
+ },
1219
+ name:'单选',
1220
+ type:'RADIO'
1221
+ },
1222
+ paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f",
1223
+ required:false,
1224
+ value:'选项一'
1225
+ },
1226
+ {
1227
+ display:true,
1228
+ fieldId: "dc573800d9904f3d8e4d59408549e087",
1229
+ formField:{
1230
+ extInfo:{
1231
+ isDelete:true,
1232
+ visibleWithoutPermission:false,
1233
+ options:[
1234
+ {
1235
+ label:"选项一",
1236
+ value:'选项一',
1237
+ _default:"false"
1238
+ },
1239
+ {
1240
+ label:"选项二",
1241
+ value:'选项二',
1242
+ _default:"false"
1243
+ },
1244
+ {
1245
+ label:"选项三",
1246
+ value:'选项三',
1247
+ _default:"false"
1248
+ },
1249
+ ]
1250
+ },
1251
+ name:'多选',
1252
+ type:'CHECKBOX'
1253
+ },
1254
+ paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f",
1255
+ required:false,
1256
+ value:['选项一','选项二']
1257
+ },
1258
+ {
1259
+ display:true,
1260
+ fieldId: "ef91e955bf894886b9edc56eb2c37554",
1261
+ formField:{
1262
+ extInfo:{
1263
+ isDelete:true,
1264
+ visibleWithoutPermission:false,
1265
+ mold:'DATA',
1266
+ placeholder:'请选择时间日期'
1267
+ },
1268
+ name:'时间日期',
1269
+ type:'TIME_PICKER'
1270
+ },
1271
+ paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f",
1272
+ required:false,
1273
+ value:''
1274
+ },
1275
+ {
1276
+ display:true,
1277
+ fieldId: "ef91e955bf894886b9edc56eb2c3755S",
1278
+ formField:{
1279
+ extInfo:{
1280
+ isDelete:true,
1281
+ visibleWithoutPermission:false,
1282
+ mold:'DATA_TIME',
1283
+ placeholder:'请选择'
1284
+ },
1285
+ name:'时间日期',
1286
+ type:'TIME_PICKER'
1287
+ },
1288
+ paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f",
1289
+ required:false,
1290
+ value:''
1291
+ },
1292
+ {
1293
+ display:true,
1294
+ fieldId: "workorder_name",
1295
+ formField:{
1296
+ name:'工单名称',
1297
+ type:'INPUT'
1298
+ },
1299
+ paramName:"name",
1300
+ required:true,
1301
+ value:''
1302
+ },
1303
+ {
1304
+ display:true,
1305
+ fieldId: "ef91e955bf894886b9edc56eb2c3755S333",
1306
+ formField:{
1307
+ extInfo:{
1308
+ isDelete:true,
1309
+ visibleWithoutPermission:false,
1310
+ maxNum:"3"
1311
+ },
1312
+ name:'单行输入框',
1313
+ type:'INPUT'
1314
+ },
1315
+ paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f3333",
1316
+ required:false,
1317
+ value:''
1318
+ },
1319
+ {
1320
+ display:true,
1321
+ fieldId: "ef91e955bf894886b9edc56eb2c3755S444",
1322
+ formField:{
1323
+ extInfo:{
1324
+ isDelete:true,
1325
+ visibleWithoutPermission:false,
1326
+ },
1327
+ name:'多行输入框',
1328
+ type:'TEXTAREA'
1329
+ },
1330
+ paramName:"fieldValue.1adcfd3d0c494dcaba5c469ee8252e3f3444",
1331
+ required:false,
1332
+ value:''
1333
+ },
1334
+
1335
+ ],
1336
+ },
1337
+ },
1338
+
1339
+ text: {
1340
+ template:
1341
+ '<p>开始时间&nbsp;<span class="ask-component-placeholder-container"><span class="ask-component-placeholder-span" data="${开始时间戳_秒}" type="INPUT">1607427268</span><i class="ask-component-placeholder-icon arsenal_icon arsenalkebianji" icon="arsenal_icon arsenalkebianji" editable="true" onclick="_askEditValue(this,this.previousElementSibling)"></i></span>&nbsp;结束时间&nbsp;<span class="ask-component-placeholder-container"><span class="ask-component-placeholder-span" data="${结束时间戳_秒}" type="TIME_PICKER">1607772868</span><i class="ask-component-placeholder-icon arsenal_icon arsenalkebianji" icon="arsenal_icon arsenalkebianji" editable="true" onclick="_askEditValue(this,this.previousElementSibling)"></i></span></p>',
1342
+ goToAction: { value: "123" },
1343
+ apiKey:''
1344
+ },
1345
+ rem: "rem",
1346
+ feedBack: {
1347
+ positiveFeedback: { text: "有用有用有用有用" },
1348
+ negativeFeedback: { text: "无用无用无用无用" },
1349
+ feedbackActions: [],
1350
+ feedbackUid: "",
1351
+ },
1352
+ urls:[ {"status":"success","name":"portal.test.askbot.cn_20201214_153724.zip", "size":2077,"percentage":100, "uid":1609154083480,"raw":{ "uid":1609154083480 }, "response":"https://guoranopen-zjk.oss-cn-zhangjiakou.aliyuncs.com/2020/12/28/07/15/d4c7a970-037e-454a-9921-821c0e81a3c5.zip" },
1353
+ {"status":"success","name":"portal._153724.doc", "size":2077,"percentage":100, "uid":1609154083480,"raw":{ "uid":1609154083480 }, "response":"https://guoranopen-zjk.oss-cn-zhangjiakou.aliyuncs.com/2020/12/28/07/15/d4c7a970-037e-454a-9921-821c0e81a3c5.zip" },
1354
+ {"status":"success","name":"portal.test.askbot.cn_20201214_153724.xls", "size":2077,"percentage":100, "uid":1609154083480,"raw":{ "uid":1609154083480 }, "response":"https://guoranopen-zjk.oss-cn-zhangjiakou.aliyuncs.com/2020/12/28/07/15/d4c7a970-037e-454a-9921-821c0e81a3c5.zip" },
1355
+ {"status":"success","name":"portal.test.askbot.cn_20201214_153724.ppt", "size":2077,"percentage":100, "uid":1609154083480,"raw":{ "uid":1609154083480 }, "response":"https://guoranopen-zjk.oss-cn-zhangjiakou.aliyuncs.com/2020/12/28/07/15/d4c7a970-037e-454a-9921-821c0e81a3c5.zip" },
1356
+ {"status":"success","name":"portal.test.askbot.cn_20201214_153724.pdf", "size":2077,"percentage":100, "uid":1609154083480,"raw":{ "uid":1609154083480 }, "response":"https://guoranopen-zjk.oss-cn-zhangjiakou.aliyuncs.com/2020/12/28/07/15/d4c7a970-037e-454a-9921-821c0e81a3c5.zip" },
1357
+ {"status":"success","name":"portal.test.askbot.cn_20201214_153724.zip", "size":2077,"percentage":100, "uid":1609154083480,"raw":{ "uid":1609154083480 }, "response":"https://guoranopen-zjk.oss-cn-zhangjiakou.aliyuncs.com/2020/12/28/07/15/d4c7a970-037e-454a-9921-821c0e81a3c5.zip" }],
1358
+ messageList:[
1359
+ {content:'您好,我是郑俊成的智能助理,请问您是为企业咨询还是个人兴趣?',speaker:'bot',type:'answer_text'},
1360
+ {content:'单位',speaker:'user',type:'answer_text'}
1361
+ ],
1362
+ };
1363
+ },
1364
+ methods: {
1365
+ submitClick(value) {
1366
+ console.log(value);
1367
+ },
1368
+ submitClicks(value) {
1369
+ console.log(value);
1370
+ },
1371
+ positiveFeedback(value1) {
1372
+ console.log(value1);
1373
+ },
1374
+ touchEnd(index){
1375
+ console.log(index)
1376
+ }
1377
+ },
1378
+ mounted() {},
1379
+ updated() {},
1380
+ };
1381
+ </script>
1382
+
1383
+ <!-- Add "scoped" attribute to limit CSS to this component only -->
1384
+ <style scoped lang="less">
1385
+ @import "../assets/less/converSationContainer/converSatonContainer";
1386
+ #conversation{
1387
+ }
1388
+ </style>