| | |
| | | <script setup lang="ts"> |
| | | import { defineProps,ref,defineEmits, onMounted } from 'vue'; |
| | | import { Message } from '@arco-design/web-vue'; |
| | | import { addSessionApi ,getDialogListApi }from '@/api/session'; |
| | | const props=defineProps({ |
| | | modalObj:Object |
| | | }); |
| | | const conversation=ref({ dialog_id:'', conversation_desc:'' }); |
| | | const dialogList=ref([]); |
| | | const emit = defineEmits(['addSession']); |
| | | const queryDialogList=async ()=>{ |
| | | const { code, data } = await getDialogListApi(); |
| | | if(code===200){ |
| | | dialogList.value = data; |
| | | import { defineProps, ref, defineEmits, onMounted } from 'vue'; |
| | | import { Message } from '@arco-design/web-vue'; |
| | | import { addSessionApi, getDialogListApi } from '@/api/session'; |
| | | const props = defineProps({ |
| | | modalObj: Object, |
| | | }); |
| | | const conversation = ref({ dialog_id: '', conversation_desc: '' }); |
| | | const dialogList = ref([]); |
| | | const emit = defineEmits(['addSession']); |
| | | const queryDialogList = async () => { |
| | | const { code, data } = await getDialogListApi(); |
| | | if (code === 200) { |
| | | dialogList.value = data; |
| | | } |
| | | }; |
| | | |
| | | const rules = { |
| | | dialog_id: [ |
| | | { |
| | | required: true, |
| | | message: '智能助手不能为空', |
| | | }, |
| | | ], |
| | | conversation_desc: [ |
| | | { |
| | | required: true, |
| | | message: '描述不能为空', |
| | | }, |
| | | ], |
| | | }; |
| | | onMounted(() => { |
| | | queryDialogList(); |
| | | }); |
| | | const formRef = ref(); |
| | | const handleOk = () => { |
| | | formRef.value.validate().then(async (res) => { |
| | | if (!res) { |
| | | const { code } = await addSessionApi({ ...conversation.value }); |
| | | if (code === 200) { |
| | | Message.success('添加成功'); |
| | | emit('addSession'); |
| | | setTimeout(() => { |
| | | props.modalObj.add = false; |
| | | }, 500); |
| | | } else { |
| | | Message.warning('添加失败'); |
| | | } |
| | | } |
| | | }; |
| | | |
| | | const rules = { |
| | | dialog_id: [ |
| | | { |
| | | required: true, |
| | | message: '智能助手不能为空', |
| | | }, |
| | | ], |
| | | conversation_desc: [ |
| | | { |
| | | required: true, |
| | | message: '描述不能为空', |
| | | } |
| | | ] |
| | | } |
| | | onMounted(()=>{ |
| | | queryDialogList(); |
| | | }); |
| | | const formRef = ref(); |
| | | const handleOk=()=>{ |
| | | formRef.value.validate().then(async(res)=>{ |
| | | if(!res){ |
| | | const { code }=await addSessionApi({ ...conversation.value }); |
| | | if(code===200){ |
| | | Message.success('添加成功'); |
| | | emit('addSession'); |
| | | setTimeout(()=>{ |
| | | props.modalObj.add=false; |
| | | },500); |
| | | }else{ |
| | | Message.warning('添加失败'); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | return false; |
| | | } |
| | | const destroyData = ()=>{ |
| | | formRef.value.resetFields(); |
| | | } |
| | | return false; |
| | | }; |
| | | const destroyData = () => { |
| | | formRef.value.resetFields(); |
| | | }; |
| | | </script> |
| | | |
| | | <template> |
| | | <div> |
| | | <a-modal v-model:visible="modalObj.add" @before-ok="handleOk" @cancel="modalObj.add=false" @before-close="destroyData"> |
| | | <template #title> |
| | | 新增会话 |
| | | </template> |
| | | <a-form ref="formRef" :model="conversation" :rules="rules"> |
| | | <a-form-item label="助手关联:" field="dialog_id" @submit="handleSubmit"> |
| | | <a-select style="width: 80%" v-model="conversation.dialog_id" placeholder="请选择关联助手"> |
| | | <a-option v-for="dialog in dialogList" :key="dialog.id" :value="dialog.id">{{dialog.name}}</a-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | <a-form-item label="描述:" field="conversation_desc"> |
| | | <a-textarea placeholder="请输入描述" :max-length="100" show-word-limit :auto-size="{minRows:4,maxRows:5}" v-model="conversation.conversation_desc" style="width: 80%"></a-textarea> |
| | | </a-form-item> |
| | | </a-form> |
| | | </a-modal> |
| | | </div> |
| | | <div> |
| | | <a-modal |
| | | v-model:visible="modalObj.add" |
| | | @before-ok="handleOk" |
| | | @cancel="modalObj.add = false" |
| | | @before-close="destroyData" |
| | | > |
| | | <template #title> 新增会话 </template> |
| | | <a-form ref="formRef" :model="conversation" :rules="rules"> |
| | | <a-form-item label="助手关联:" field="dialog_id" @submit="handleSubmit"> |
| | | <a-select |
| | | style="width: 80%" |
| | | v-model="conversation.dialog_id" |
| | | placeholder="请选择关联助手" |
| | | > |
| | | <a-option |
| | | v-for="dialog in dialogList" |
| | | :key="dialog.id" |
| | | :value="dialog.id" |
| | | >{{ dialog.name }}</a-option |
| | | > |
| | | </a-select> |
| | | </a-form-item> |
| | | <a-form-item label="描述:" field="conversation_desc"> |
| | | <a-textarea |
| | | placeholder="请输入描述" |
| | | :max-length="100" |
| | | show-word-limit |
| | | :auto-size="{ minRows: 4, maxRows: 5 }" |
| | | v-model="conversation.conversation_desc" |
| | | style="width: 80%" |
| | | ></a-textarea> |
| | | </a-form-item> |
| | | </a-form> |
| | | </a-modal> |
| | | </div> |
| | | </template> |
| | | |
| | | <style scoped lang="scss"> |
| | | |
| | | </style> |
| | | <style scoped lang="scss"></style> |