ai-error-assistant-pro 0.0.4 → 0.0.6

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.
@@ -2,7 +2,7 @@
2
2
  <div class="robot-tools" v-if="listData">
3
3
  <div class="robot-reanswer"
4
4
  style="margin-bottom: 8px"
5
- v-if="listData.stop || listData.finish || type === 'error'"
5
+ v-if="listData.stop || listData.finish || type === 'error' && !sending"
6
6
  @click="reAnswer(listData)">
7
7
  <i class="el-icon-refresh-right"></i>
8
8
  重新回答
@@ -11,7 +11,7 @@
11
11
  v-if="listData.stop && type !== 'error'">已停止生成</div>
12
12
  <div class="stopMsg"
13
13
  @click="stopChat(listData)"
14
- v-if="!listData.stop && !listData.finish && type !== 'error'">停止输出</div>
14
+ v-if="!listData.stop && !listData.finish && type !== 'error' && !sending">停止输出</div>
15
15
  <div class="right-tools">
16
16
  <el-tooltip content="赞" effect="light" placement="top">
17
17
  <div class="tools-icon" @click="doZan(listData)">
@@ -80,6 +80,10 @@ export default {
80
80
  type: String,
81
81
  default: 'chart'
82
82
  },
83
+ sending: {
84
+ type: Boolean,
85
+ default: false
86
+ }
83
87
  },
84
88
  data() {
85
89
  return {
@@ -154,6 +158,7 @@ export default {
154
158
  .robot-tools {
155
159
  position: relative;
156
160
  margin-top: 8px;
161
+ min-height: 30px;
157
162
  .robot-reanswer {
158
163
  width: 104px;
159
164
  height: 32px;
@@ -14,16 +14,20 @@
14
14
  <div v-if="list.type === 'robot' && list.links.length > 0" class="link">
15
15
  <div class="link-title">相关链接</div>
16
16
  <div class="link-content">
17
- <div class="links" v-for="item in list.links">
18
- <a :href="'https://ai-yuliao.hep.com.cn'+item.documentUrl" target="_blank">
19
- <span>{{ item.title }}</span>
20
- </a>
21
- </div>
17
+ <template v-for="item in list.links">
18
+ <div class="links" v-if="!item.title.startsWith(chatMajorId)">
19
+ <a :href="'https://ai-yuliao.hep.com.cn'+item.documentUrl" target="_blank">
20
+ <span>{{ item.title }}</span>
21
+ </a>
22
+ </div>
23
+ </template>
24
+
22
25
  </div>
23
26
  </div>
24
27
  <chat-tools v-if="list.type === 'robot'"
25
28
  :chatId="chatId"
26
29
  :detail-data="list"
30
+ :sending="list.sending"
27
31
  @on-reanswer="(list) => reanswer(list, index)"
28
32
  @on-stop-chat="onStopChat"/>
29
33
  </div>
@@ -68,6 +72,7 @@ export default {
68
72
  cacheKeyWord: '', // 由于外部需要快速清掉 keyword 但是存在重新发送请求的情况,因此需要一个混存记录
69
73
  messageData: [],
70
74
  chatId: '', // 对话id
75
+ chatMajorId: '',
71
76
  }
72
77
  },
73
78
  computed: {
@@ -99,6 +104,7 @@ export default {
99
104
  async postMessage(list, commonKey, parentMsgId) {
100
105
  let reanswerParams = {};
101
106
  if (list) {
107
+ list.sending = true;
102
108
  reanswerParams = {
103
109
  reStatus: 1,
104
110
  parentMsgId: list.parentMsgId,
@@ -130,6 +136,7 @@ export default {
130
136
  cai: false,
131
137
  stop: false,
132
138
  finish: false,
139
+ sending: true,
133
140
  links: [],
134
141
  reAnswerCount: 0
135
142
  }
@@ -146,6 +153,7 @@ export default {
146
153
  // 结束标识
147
154
  if (status === 2 || status === 1) {
148
155
  if (commonKey) {
156
+ currentList.sending = true;
149
157
  this.postMessage(list, commonKey, parentMsgId);
150
158
  return;
151
159
  }
@@ -157,13 +165,16 @@ export default {
157
165
  this.$emit('on-message-finish', chatId);
158
166
  return;
159
167
  }
160
- currentList.message += content;
168
+ currentList.message += content.replace(/\n/g, '<br>');
161
169
  currentList.msgId = msgId;
162
170
  currentList.parentMsgId = parentMsgId;
163
171
  currentList.chatId = chatId;
172
+
164
173
  setTimeout(() => {
165
174
  if (!list) this.scrollToBottom();
166
- }, 100)
175
+ }, 100);
176
+ // 防止出现调用基础模型前导致停止回答id错误
177
+ setTimeout(() => currentList.sending = false,500);
167
178
  },
168
179
  onStopChat(list){
169
180
  this.$emit('on-message-finish', list.chatId)
@@ -186,6 +197,8 @@ export default {
186
197
  this.$emit('on-reanser');
187
198
  },
188
199
  errorChatInit(list, chatId) {
200
+ const { chatMajorId } = list[0];
201
+ this.chatMajorId = chatMajorId.toString();
189
202
  if (list && list[0].contents) {
190
203
  const cacheArray = [];
191
204
  list[0].contents.reverse().map((list) => {
@@ -67,7 +67,7 @@
67
67
  <div class="answer-content" v-html="analysisData.analysis"></div>
68
68
  <div class="title-label">错因分析</div>
69
69
  <div class="answer-content" v-html="analysisData.reason"></div>
70
- <div class="title-label">推荐资料</div>
70
+ <div class="title-label" v-if="analysisData.recommend && analysisData.recommend.length > 0">推荐资料</div>
71
71
  <div class="answer-content">
72
72
  <div v-for="(list,index) in analysisData.recommend" :key="index" style="margin-bottom: 8px">
73
73
  <a :href="'https://ai-yuliao.hep.com.cn' + list.url" target="_blank">{{ list.title }}</a>
@@ -73,6 +73,9 @@ export default {
73
73
  },
74
74
  methods: {
75
75
  closeMessage() {
76
+ if (!this.stopMessage()) {
77
+ return;
78
+ }
76
79
  this.$emit('close');
77
80
  },
78
81
  messageFinish() {
@@ -91,6 +94,14 @@ export default {
91
94
  if (!this.stopMessage()) {
92
95
  return;
93
96
  }
97
+ if (this.aiMessage.length > 6000) {
98
+ this.$message.warning('文字长度不能超过3000字');
99
+ return;
100
+ }
101
+ if (!this.aiMessage.trim()) {
102
+ this.$message.error('输入内容为空');
103
+ return
104
+ }
94
105
  this.aiMessageKeyWord = this.aiMessage;
95
106
  this.stop = true;
96
107
  setTimeout(() => {
@@ -218,7 +229,7 @@ export default {
218
229
  border: 0;
219
230
  border-radius: 40px;
220
231
  background: linear-gradient(to bottom, #fff, #d8f0fb);
221
- padding: 8px 24px 0 24px;
232
+ padding: 8px 56px 0 24px;
222
233
  &::placeholder {
223
234
  color: rgba(51,51,51,.75);
224
235
  }
@@ -6546,7 +6546,7 @@ if (typeof window !== 'undefined') {
6546
6546
  // Indicate to webpack that this file can be concatenated
6547
6547
  /* harmony default export */ var setPublicPath = (null);
6548
6548
 
6549
- ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/demo/src/main.vue?vue&type=template&id=98bac9ca&scoped=true
6549
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/demo/src/main.vue?vue&type=template&id=63ef79ac&scoped=true
6550
6550
  var render = function render() {
6551
6551
  var _vm = this,
6552
6552
  _c = _vm._self._c;
@@ -6641,10 +6641,10 @@ var staticRenderFns = [function () {
6641
6641
  }, [_vm._v("智能解析")])]);
6642
6642
  }];
6643
6643
 
6644
- ;// CONCATENATED MODULE: ./components/demo/src/main.vue?vue&type=template&id=98bac9ca&scoped=true
6644
+ ;// CONCATENATED MODULE: ./components/demo/src/main.vue?vue&type=template&id=63ef79ac&scoped=true
6645
6645
 
6646
- ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/demo/src/chat.vue?vue&type=template&id=311af3d2&scoped=true
6647
- var chatvue_type_template_id_311af3d2_scoped_true_render = function render() {
6646
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/demo/src/chat.vue?vue&type=template&id=8e426b78&scoped=true
6647
+ var chatvue_type_template_id_8e426b78_scoped_true_render = function render() {
6648
6648
  var _vm = this,
6649
6649
  _c = _vm._self._c;
6650
6650
  return _c('div', {
@@ -6685,19 +6685,20 @@ var chatvue_type_template_id_311af3d2_scoped_true_render = function render() {
6685
6685
  staticClass: "link-title"
6686
6686
  }, [_vm._v("相关链接")]), _c('div', {
6687
6687
  staticClass: "link-content"
6688
- }, _vm._l(list.links, function (item) {
6689
- return _c('div', {
6688
+ }, [_vm._l(list.links, function (item) {
6689
+ return [!item.title.startsWith(_vm.chatMajorId) ? _c('div', {
6690
6690
  staticClass: "links"
6691
6691
  }, [_c('a', {
6692
6692
  attrs: {
6693
6693
  "href": 'https://ai-yuliao.hep.com.cn' + item.documentUrl,
6694
6694
  "target": "_blank"
6695
6695
  }
6696
- }, [_c('span', [_vm._v(_vm._s(item.title))])])]);
6697
- }), 0)]) : _vm._e(), list.type === 'robot' ? _c('chat-tools', {
6696
+ }, [_c('span', [_vm._v(_vm._s(item.title))])])]) : _vm._e()];
6697
+ })], 2)]) : _vm._e(), list.type === 'robot' ? _c('chat-tools', {
6698
6698
  attrs: {
6699
6699
  "chatId": _vm.chatId,
6700
- "detail-data": list
6700
+ "detail-data": list,
6701
+ "sending": list.sending
6701
6702
  },
6702
6703
  on: {
6703
6704
  "on-reanswer": list => _vm.reanswer(list, index),
@@ -6706,7 +6707,7 @@ var chatvue_type_template_id_311af3d2_scoped_true_render = function render() {
6706
6707
  }) : _vm._e()], 1)]);
6707
6708
  })], 2);
6708
6709
  };
6709
- var chatvue_type_template_id_311af3d2_scoped_true_staticRenderFns = [];
6710
+ var chatvue_type_template_id_8e426b78_scoped_true_staticRenderFns = [];
6710
6711
 
6711
6712
  ;// CONCATENATED MODULE: ./node_modules/axios/lib/helpers/bind.js
6712
6713
 
@@ -10927,13 +10928,13 @@ const getUserInfo = async token => {
10927
10928
  });
10928
10929
  cache.session.setJSON('SRKJ_TOKEN_CACHE', userRes);
10929
10930
  };
10930
- ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/demo/src/chat-tools.vue?vue&type=template&id=7e1b214b&scoped=true
10931
- var chat_toolsvue_type_template_id_7e1b214b_scoped_true_render = function render() {
10931
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/demo/src/chat-tools.vue?vue&type=template&id=65c1d3ae&scoped=true
10932
+ var chat_toolsvue_type_template_id_65c1d3ae_scoped_true_render = function render() {
10932
10933
  var _vm = this,
10933
10934
  _c = _vm._self._c;
10934
10935
  return _vm.listData ? _c('div', {
10935
10936
  staticClass: "robot-tools"
10936
- }, [_vm.listData.stop || _vm.listData.finish || _vm.type === 'error' ? _c('div', {
10937
+ }, [_vm.listData.stop || _vm.listData.finish || _vm.type === 'error' && !_vm.sending ? _c('div', {
10937
10938
  staticClass: "robot-reanswer",
10938
10939
  staticStyle: {
10939
10940
  "margin-bottom": "8px"
@@ -10951,7 +10952,7 @@ var chat_toolsvue_type_template_id_7e1b214b_scoped_true_render = function render
10951
10952
  "color": "#cfcfcf",
10952
10953
  "cursor": "default"
10953
10954
  }
10954
- }, [_vm._v("已停止生成")]) : _vm._e(), !_vm.listData.stop && !_vm.listData.finish && _vm.type !== 'error' ? _c('div', {
10955
+ }, [_vm._v("已停止生成")]) : _vm._e(), !_vm.listData.stop && !_vm.listData.finish && _vm.type !== 'error' && !_vm.sending ? _c('div', {
10955
10956
  staticClass: "stopMsg",
10956
10957
  on: {
10957
10958
  "click": function ($event) {
@@ -11090,9 +11091,9 @@ var chat_toolsvue_type_template_id_7e1b214b_scoped_true_render = function render
11090
11091
  }
11091
11092
  }, [_vm._v("提交")])], 1)], 1)])])], 1)]) : _vm._e();
11092
11093
  };
11093
- var chat_toolsvue_type_template_id_7e1b214b_scoped_true_staticRenderFns = [];
11094
+ var chat_toolsvue_type_template_id_65c1d3ae_scoped_true_staticRenderFns = [];
11094
11095
 
11095
- ;// CONCATENATED MODULE: ./components/demo/src/chat-tools.vue?vue&type=template&id=7e1b214b&scoped=true
11096
+ ;// CONCATENATED MODULE: ./components/demo/src/chat-tools.vue?vue&type=template&id=65c1d3ae&scoped=true
11096
11097
 
11097
11098
  ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/demo/src/chat-tools.vue?vue&type=script&lang=js
11098
11099
 
@@ -11111,6 +11112,10 @@ var chat_toolsvue_type_template_id_7e1b214b_scoped_true_staticRenderFns = [];
11111
11112
  type: {
11112
11113
  type: String,
11113
11114
  default: 'chart'
11115
+ },
11116
+ sending: {
11117
+ type: Boolean,
11118
+ default: false
11114
11119
  }
11115
11120
  },
11116
11121
  data() {
@@ -11185,10 +11190,10 @@ var chat_toolsvue_type_template_id_7e1b214b_scoped_true_staticRenderFns = [];
11185
11190
  });
11186
11191
  ;// CONCATENATED MODULE: ./components/demo/src/chat-tools.vue?vue&type=script&lang=js
11187
11192
  /* harmony default export */ var src_chat_toolsvue_type_script_lang_js = (chat_toolsvue_type_script_lang_js);
11188
- ;// CONCATENATED MODULE: ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/demo/src/chat-tools.vue?vue&type=style&index=0&id=7e1b214b&prod&lang=scss&scoped=true
11193
+ ;// CONCATENATED MODULE: ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/demo/src/chat-tools.vue?vue&type=style&index=0&id=65c1d3ae&prod&lang=scss&scoped=true
11189
11194
  // extracted by mini-css-extract-plugin
11190
11195
 
11191
- ;// CONCATENATED MODULE: ./components/demo/src/chat-tools.vue?vue&type=style&index=0&id=7e1b214b&prod&lang=scss&scoped=true
11196
+ ;// CONCATENATED MODULE: ./components/demo/src/chat-tools.vue?vue&type=style&index=0&id=65c1d3ae&prod&lang=scss&scoped=true
11192
11197
 
11193
11198
  ;// CONCATENATED MODULE: ./node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js
11194
11199
  /* globals __VUE_SSR_CONTEXT__ */
@@ -11299,18 +11304,18 @@ function normalizeComponent(
11299
11304
 
11300
11305
  var component = normalizeComponent(
11301
11306
  src_chat_toolsvue_type_script_lang_js,
11302
- chat_toolsvue_type_template_id_7e1b214b_scoped_true_render,
11303
- chat_toolsvue_type_template_id_7e1b214b_scoped_true_staticRenderFns,
11307
+ chat_toolsvue_type_template_id_65c1d3ae_scoped_true_render,
11308
+ chat_toolsvue_type_template_id_65c1d3ae_scoped_true_staticRenderFns,
11304
11309
  false,
11305
11310
  null,
11306
- "7e1b214b",
11311
+ "65c1d3ae",
11307
11312
  null
11308
11313
 
11309
11314
  )
11310
11315
 
11311
11316
  /* harmony default export */ var chat_tools = (component.exports);
11312
- ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/demo/src/error-chat.vue?vue&type=template&id=081d2667&scoped=true
11313
- var error_chatvue_type_template_id_081d2667_scoped_true_render = function render() {
11317
+ ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/demo/src/error-chat.vue?vue&type=template&id=3c02c55c&scoped=true
11318
+ var error_chatvue_type_template_id_3c02c55c_scoped_true_render = function render() {
11314
11319
  var _vm = this,
11315
11320
  _c = _vm._self._c;
11316
11321
  return _c('div', {
@@ -11426,9 +11431,9 @@ var error_chatvue_type_template_id_081d2667_scoped_true_render = function render
11426
11431
  domProps: {
11427
11432
  "innerHTML": _vm._s(_vm.analysisData.reason)
11428
11433
  }
11429
- }), _c('div', {
11434
+ }), _vm.analysisData.recommend && _vm.analysisData.recommend.length > 0 ? _c('div', {
11430
11435
  staticClass: "title-label"
11431
- }, [_vm._v("推荐资料")]), _c('div', {
11436
+ }, [_vm._v("推荐资料")]) : _vm._e(), _c('div', {
11432
11437
  staticClass: "answer-content"
11433
11438
  }, _vm._l(_vm.analysisData.recommend, function (list, index) {
11434
11439
  return _c('div', {
@@ -11453,7 +11458,7 @@ var error_chatvue_type_template_id_081d2667_scoped_true_render = function render
11453
11458
  }
11454
11459
  })], 1)]);
11455
11460
  };
11456
- var error_chatvue_type_template_id_081d2667_scoped_true_staticRenderFns = [function () {
11461
+ var error_chatvue_type_template_id_3c02c55c_scoped_true_staticRenderFns = [function () {
11457
11462
  var _vm = this,
11458
11463
  _c = _vm._self._c;
11459
11464
  return _c('div', {
@@ -11472,7 +11477,7 @@ var error_chatvue_type_template_id_081d2667_scoped_true_staticRenderFns = [funct
11472
11477
  })]);
11473
11478
  }];
11474
11479
 
11475
- ;// CONCATENATED MODULE: ./components/demo/src/error-chat.vue?vue&type=template&id=081d2667&scoped=true
11480
+ ;// CONCATENATED MODULE: ./components/demo/src/error-chat.vue?vue&type=template&id=3c02c55c&scoped=true
11476
11481
 
11477
11482
  ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/demo/src/error-chat.vue?vue&type=script&lang=js
11478
11483
 
@@ -11587,10 +11592,10 @@ var error_chatvue_type_template_id_081d2667_scoped_true_staticRenderFns = [funct
11587
11592
  });
11588
11593
  ;// CONCATENATED MODULE: ./components/demo/src/error-chat.vue?vue&type=script&lang=js
11589
11594
  /* harmony default export */ var src_error_chatvue_type_script_lang_js = (error_chatvue_type_script_lang_js);
11590
- ;// CONCATENATED MODULE: ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/demo/src/error-chat.vue?vue&type=style&index=0&id=081d2667&prod&lang=scss&scoped=true
11595
+ ;// CONCATENATED MODULE: ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/demo/src/error-chat.vue?vue&type=style&index=0&id=3c02c55c&prod&lang=scss&scoped=true
11591
11596
  // extracted by mini-css-extract-plugin
11592
11597
 
11593
- ;// CONCATENATED MODULE: ./components/demo/src/error-chat.vue?vue&type=style&index=0&id=081d2667&prod&lang=scss&scoped=true
11598
+ ;// CONCATENATED MODULE: ./components/demo/src/error-chat.vue?vue&type=style&index=0&id=3c02c55c&prod&lang=scss&scoped=true
11594
11599
 
11595
11600
  ;// CONCATENATED MODULE: ./components/demo/src/error-chat.vue
11596
11601
 
@@ -11603,11 +11608,11 @@ var error_chatvue_type_template_id_081d2667_scoped_true_staticRenderFns = [funct
11603
11608
 
11604
11609
  var error_chat_component = normalizeComponent(
11605
11610
  src_error_chatvue_type_script_lang_js,
11606
- error_chatvue_type_template_id_081d2667_scoped_true_render,
11607
- error_chatvue_type_template_id_081d2667_scoped_true_staticRenderFns,
11611
+ error_chatvue_type_template_id_3c02c55c_scoped_true_render,
11612
+ error_chatvue_type_template_id_3c02c55c_scoped_true_staticRenderFns,
11608
11613
  false,
11609
11614
  null,
11610
- "081d2667",
11615
+ "3c02c55c",
11611
11616
  null
11612
11617
 
11613
11618
  )
@@ -11650,7 +11655,9 @@ const signal = controller.signal;
11650
11655
  cacheKeyWord: '',
11651
11656
  // 由于外部需要快速清掉 keyword 但是存在重新发送请求的情况,因此需要一个混存记录
11652
11657
  messageData: [],
11653
- chatId: '' // 对话id
11658
+ chatId: '',
11659
+ // 对话id
11660
+ chatMajorId: ''
11654
11661
  };
11655
11662
  },
11656
11663
  computed: {
@@ -11682,6 +11689,7 @@ const signal = controller.signal;
11682
11689
  async postMessage(list, commonKey, parentMsgId) {
11683
11690
  let reanswerParams = {};
11684
11691
  if (list) {
11692
+ list.sending = true;
11685
11693
  reanswerParams = {
11686
11694
  reStatus: 1,
11687
11695
  parentMsgId: list.parentMsgId,
@@ -11713,6 +11721,7 @@ const signal = controller.signal;
11713
11721
  cai: false,
11714
11722
  stop: false,
11715
11723
  finish: false,
11724
+ sending: true,
11716
11725
  links: [],
11717
11726
  reAnswerCount: 0
11718
11727
  }));
@@ -11736,6 +11745,7 @@ const signal = controller.signal;
11736
11745
  // 结束标识
11737
11746
  if (status === 2 || status === 1) {
11738
11747
  if (commonKey) {
11748
+ currentList.sending = true;
11739
11749
  this.postMessage(list, commonKey, parentMsgId);
11740
11750
  return;
11741
11751
  }
@@ -11747,13 +11757,15 @@ const signal = controller.signal;
11747
11757
  this.$emit('on-message-finish', chatId);
11748
11758
  return;
11749
11759
  }
11750
- currentList.message += content;
11760
+ currentList.message += content.replace(/\n/g, '<br>');
11751
11761
  currentList.msgId = msgId;
11752
11762
  currentList.parentMsgId = parentMsgId;
11753
11763
  currentList.chatId = chatId;
11754
11764
  setTimeout(() => {
11755
11765
  if (!list) this.scrollToBottom();
11756
11766
  }, 100);
11767
+ // 防止出现调用基础模型前导致停止回答id错误
11768
+ setTimeout(() => currentList.sending = false, 500);
11757
11769
  },
11758
11770
  onStopChat(list) {
11759
11771
  this.$emit('on-message-finish', list.chatId);
@@ -11776,6 +11788,10 @@ const signal = controller.signal;
11776
11788
  this.$emit('on-reanser');
11777
11789
  },
11778
11790
  errorChatInit(list, chatId) {
11791
+ const {
11792
+ chatMajorId
11793
+ } = list[0];
11794
+ this.chatMajorId = chatMajorId.toString();
11779
11795
  if (list && list[0].contents) {
11780
11796
  const cacheArray = [];
11781
11797
  list[0].contents.reverse().map(list => {
@@ -11803,10 +11819,10 @@ const signal = controller.signal;
11803
11819
  });
11804
11820
  ;// CONCATENATED MODULE: ./components/demo/src/chat.vue?vue&type=script&lang=js
11805
11821
  /* harmony default export */ var src_chatvue_type_script_lang_js = (chatvue_type_script_lang_js);
11806
- ;// CONCATENATED MODULE: ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/demo/src/chat.vue?vue&type=style&index=0&id=311af3d2&prod&lang=scss&scoped=true
11822
+ ;// CONCATENATED MODULE: ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/demo/src/chat.vue?vue&type=style&index=0&id=8e426b78&prod&lang=scss&scoped=true
11807
11823
  // extracted by mini-css-extract-plugin
11808
11824
 
11809
- ;// CONCATENATED MODULE: ./components/demo/src/chat.vue?vue&type=style&index=0&id=311af3d2&prod&lang=scss&scoped=true
11825
+ ;// CONCATENATED MODULE: ./components/demo/src/chat.vue?vue&type=style&index=0&id=8e426b78&prod&lang=scss&scoped=true
11810
11826
 
11811
11827
  ;// CONCATENATED MODULE: ./components/demo/src/chat.vue
11812
11828
 
@@ -11819,11 +11835,11 @@ const signal = controller.signal;
11819
11835
 
11820
11836
  var chat_component = normalizeComponent(
11821
11837
  src_chatvue_type_script_lang_js,
11822
- chatvue_type_template_id_311af3d2_scoped_true_render,
11823
- chatvue_type_template_id_311af3d2_scoped_true_staticRenderFns,
11838
+ chatvue_type_template_id_8e426b78_scoped_true_render,
11839
+ chatvue_type_template_id_8e426b78_scoped_true_staticRenderFns,
11824
11840
  false,
11825
11841
  null,
11826
- "311af3d2",
11842
+ "8e426b78",
11827
11843
  null
11828
11844
 
11829
11845
  )
@@ -11983,6 +11999,9 @@ var api = init(defaultConverter, {
11983
11999
  },
11984
12000
  methods: {
11985
12001
  closeMessage() {
12002
+ if (!this.stopMessage()) {
12003
+ return;
12004
+ }
11986
12005
  this.$emit('close');
11987
12006
  },
11988
12007
  messageFinish() {
@@ -12001,6 +12020,14 @@ var api = init(defaultConverter, {
12001
12020
  if (!this.stopMessage()) {
12002
12021
  return;
12003
12022
  }
12023
+ if (this.aiMessage.length > 6000) {
12024
+ this.$message.warning('文字长度不能超过3000字');
12025
+ return;
12026
+ }
12027
+ if (!this.aiMessage.trim()) {
12028
+ this.$message.error('输入内容为空');
12029
+ return;
12030
+ }
12004
12031
  this.aiMessageKeyWord = this.aiMessage;
12005
12032
  this.stop = true;
12006
12033
  setTimeout(() => {
@@ -12021,10 +12048,10 @@ var api = init(defaultConverter, {
12021
12048
  });
12022
12049
  ;// CONCATENATED MODULE: ./components/demo/src/main.vue?vue&type=script&lang=js
12023
12050
  /* harmony default export */ var src_mainvue_type_script_lang_js = (mainvue_type_script_lang_js);
12024
- ;// CONCATENATED MODULE: ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/demo/src/main.vue?vue&type=style&index=0&id=98bac9ca&prod&lang=scss&scoped=true
12051
+ ;// CONCATENATED MODULE: ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/demo/src/main.vue?vue&type=style&index=0&id=63ef79ac&prod&lang=scss&scoped=true
12025
12052
  // extracted by mini-css-extract-plugin
12026
12053
 
12027
- ;// CONCATENATED MODULE: ./components/demo/src/main.vue?vue&type=style&index=0&id=98bac9ca&prod&lang=scss&scoped=true
12054
+ ;// CONCATENATED MODULE: ./components/demo/src/main.vue?vue&type=style&index=0&id=63ef79ac&prod&lang=scss&scoped=true
12028
12055
 
12029
12056
  ;// CONCATENATED MODULE: ./components/demo/src/main.vue
12030
12057
 
@@ -12041,7 +12068,7 @@ var main_component = normalizeComponent(
12041
12068
  staticRenderFns,
12042
12069
  false,
12043
12070
  null,
12044
- "98bac9ca",
12071
+ "63ef79ac",
12045
12072
  null
12046
12073
 
12047
12074
  )