diff --git a/root/home/components/AiApply.vue b/root/home/components/AiApply.vue index ffd3d15..cbff60f 100644 --- a/root/home/components/AiApply.vue +++ b/root/home/components/AiApply.vue @@ -1,21 +1,36 @@ @@ -33,6 +48,8 @@ export default { token: '', id: '', }, + chooseImgShow: false, + currentImg: '', } }, created() { @@ -47,16 +64,17 @@ export default { console.log('error sse:', err) }, messageCore(msg) { + let that = this console.log('message sse:', msg) - // if (msg.event == 'Done') { - // if (!that.formInfo.jobName) { - // clearInterval(that.timer) - // that.ailoading = false - // } - // } else { - // let job = JSON.parse(msg.data) - // checkDataInfo(job) - // } + if (msg.event == 'Done') { + clearInterval(that.timer) + that.ailoading = false + } else if (msg.event == 'Message') { + let info = JSON.parse(msg.data) + if (info.node_type == 'End') { + this.setInfo(info) + } + } }, getAiToken() { let that = this @@ -68,6 +86,57 @@ export default { } }) }, + uploadPhoto($sourceType = ['album', 'camera']) { + let that = this + console.log('$sourceType', $sourceType) + uni.chooseImage({ + count: 1, //默认9 + sizeType: ['original'], //可以指定是原图还是压缩图,默认二者都有 + sourceType: $sourceType, //album 从相册选图,camera 使用相机 + success: function (res) { + console.log('选取文件数据:', res) + that.uploadCozeFile(res.tempFilePaths[0]) + }, + }) + }, + uploadCozeFile(tempFilePath) { + let that = this + that.chooseImgShow = false + that.currentImg = tempFilePath + uni.uploadFile({ + url: 'https://api.coze.cn/v1/files/upload', + method: 'POST', + filePath: tempFilePath, + name: 'file', + header: { + Authorization: 'Bearer ' + that.aiConfig.token, + 'Content-Type': 'multipart/form-data', + }, + formData: {}, + success: function (res) { + console.log('文件', res) + let data = JSON.parse(res.data) + that.appCoze(data.data.id) + }, + fail: function (err) { + console.log(err) + }, + }) + }, + uploadPhotoByChat() { + let that = this + uni.chooseMessageFile({ + count: 1, + type: 'image', + success(res) { + console.log('resresresresresres', res) + if (res.errMsg == 'chooseMessageFile:ok') { + console.log('res', res) + that.uploadCozeFile(res.tempFiles[0].path) + } + }, + }) + }, getClipboard() { let that = this if (this.aitext) { @@ -87,6 +156,30 @@ export default { }) } }, + setInfo(parsed) { + let that = this + const finalData = JSON.parse(parsed.content) + if (finalData) { + console.log('解析后的用户信息:', finalData) + let info = { + idCard: finalData.idcard, + address: finalData.address, + name: finalData.username, + nation: finalData.nation, + userName: finalData.username, + sex: finalData.sex ? (finalData.sex == '男' ? 1 : 2) : '', + age: finalData.age, + tel: finalData.tel, + } + // uni.$emit('getTownsman', { info }) + that.$emit('outputInfo', info) + // 将解析后的信息填充到表单中 + that.ailoading = false + } else { + that.ailoading = false + } + clearInterval(that.timer) + }, getCoze() { let that = this if (!that.aitext) { @@ -96,27 +189,40 @@ export default { }) return false } + + this.appCoze() + }, + appCoze(_id) { + let that = this + let parameters = {} // 重置内容 that.ailoading = true that.defaultPercent = 3 that.timer = setInterval(() => { - that.defaultPercent = that.defaultPercent < 15 ? (that.defaultPercent = 15) : that.defaultPercent + 1 + that.defaultPercent = that.defaultPercent < 15 ? (that.defaultPercent = 15) : that.defaultPercent + 3 // console.log('12313123123123123') if (that.defaultPercent >= 99) { clearInterval(that.timer) } - }, 500) + }, 150) that.timer1 = setTimeout(() => { console.log('5687678678678678678') that.ailoading = false clearInterval(that.timer) // setLoading() }, 30000) - this.appCoze() - }, - appCoze() { - let that = this + if (_id) { + parameters = { + img: { + file_id: _id, + }, + } + } else { + parameters = { + txt: that.aitext, + } + } this.$refs.sseTest.startChat({ /** * 将它换成你的地址 @@ -127,17 +233,15 @@ export default { // 请求头 headers: { // that.aiConfig.token - Authorization: 'Bearer ' + 'pat_cHNGkdbe3VRsmpMUXCNbZVt1ltDVyCI8k2bt9soIm2te76KXmtIfrOMKJ7xdwtYc', + Authorization: 'Bearer ' + that.aiConfig.token, 'Content-Type': 'application/json', }, // 默认为 post method: 'post', body: { - parameters: { - txt: that.aitext, - }, + parameters, // workflow_id: that.aiConfig.id, - workflow_id: '7520535773797318690', + workflow_id: '7520814905613664310', // workflow_id: '7492238568816656410', }, }) diff --git a/root/home/editTownsman.vue b/root/home/editTownsman.vue index 84f6fb1..f1c18e9 100644 --- a/root/home/editTownsman.vue +++ b/root/home/editTownsman.vue @@ -1,12 +1,12 @@