From 570e47698cf0226e2830a20d73e3100c40081c3e Mon Sep 17 00:00:00 2001 From: zoujiandong <10130823232@qq.com> Date: Fri, 26 Sep 2025 19:06:31 +0800 Subject: [PATCH] =?UTF-8?q?9.26=E6=99=9A=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- App.vue | 5 +- api/api.js | 19 +- pages.json | 10 + pages/index/index.vue | 3448 +++++++++-------- pages_app/caseRecord/caseRecord.vue | 47 +- pages_app/consult/consult.vue | 23 +- pages_app/consultDetail/consultDetail.vue | 19 +- pages_app/freeDetail/freeDetail.vue | 509 +++ pages_app/myAnswer/myAnswer.vue | 98 +- .../patientMsg/conversation-list/index.vue | 47 +- pages_app/patientMsg/patientMsg.vue | 16 +- pages_chat/chat/index.vue | 99 +- utils/request.js | 2 +- 13 files changed, 2645 insertions(+), 1697 deletions(-) create mode 100644 pages_app/freeDetail/freeDetail.vue diff --git a/App.vue b/App.vue index 3cbbe5d..336db1f 100644 --- a/App.vue +++ b/App.vue @@ -447,7 +447,10 @@ export default { page { background-color: #f5f5f5; } - + .uni-navbar__header-btns-right{ + min-width: 120rpx; + width:auto!important; + } /* #endif */ .uni-nav-bar-text{ font-weight: bold; diff --git a/api/api.js b/api/api.js index ad4a680..a79529f 100644 --- a/api/api.js +++ b/api/api.js @@ -458,10 +458,10 @@ const api = { return request('/expertAPI/InterrogationPatientInfo', data, 'post', false); }, updateInterrogationAnswer(data){ - return request('/expertAPI/updateInterrogationAnswer', data, 'post', false); + return request('/expertAPI/updateInterrogationAnswerU', data, 'post', false); }, addInterrogationAnswer(data){ - return request('/expertAPI/addInterrogationAnswer', data, 'post', false); + return request('/expertAPI/addInterrogationAnswerU', data, 'post', false); }, videoDetail(data){ return request('/expertAPI/videoDetail', data, 'post', false); @@ -571,6 +571,21 @@ const api = { deleteConditionRecord(data){ return request('/expertAPI/delConditionRecord', data, 'post', false); }, + consultDetail(data){ + return request('/expertAPI/consultDetail', data, 'post', false); + }, + isConsultIng(data){ + return request('/expertAPI/isConsultIng', data, 'post', false); + }, + resConsult(data){ + return request('/expertAPI/resConsult', data, 'post', false); + }, + countConsult(data){ + return request('/expertAPI/countConsult', data, 'post', false); + }, + closeConsult(data){ + return request('/expertAPI/closeConsult', data, 'post', false); + }, } export default api \ No newline at end of file diff --git a/pages.json b/pages.json index b8f469b..ad92fae 100644 --- a/pages.json +++ b/pages.json @@ -616,6 +616,16 @@ } } }, + { + "path": "freeDetail/freeDetail", + "style": { + "navigationStyle": "custom", + "navigationBarTitleText": "uni-app分页", + "app": { + "bounce": "none" + } + } + }, { "path": "searchPatient/searchPatient", "style": { diff --git a/pages/index/index.vue b/pages/index/index.vue index 042dab4..6bd1246 100644 --- a/pages/index/index.vue +++ b/pages/index/index.vue @@ -1,1681 +1,1921 @@ - - diff --git a/pages_app/caseRecord/caseRecord.vue b/pages_app/caseRecord/caseRecord.vue index 9efc496..c0b0215 100644 --- a/pages_app/caseRecord/caseRecord.vue +++ b/pages_app/caseRecord/caseRecord.vue @@ -100,7 +100,7 @@ import { onShow, onLoad } from "@dcloudio/uni-app"; import api from "@/api/api.js"; import docUrl from "@/utils/docUrl.js"; import dayjs from "dayjs"; -import { pathToBase64, base64ToPath } from "image-tools"; +import { pathToBase64} from "image-tools"; // 响应式数据 const des = ref(""); @@ -146,18 +146,14 @@ const chooseImage = () => { // 这里应该上传图片到服务器 // imageList.value = [...imageList.value, ...res.tempFilePaths] tempImageList.value = [...tempImageList.value, ...res.tempFilePaths]; - const fileManager = uni.getFileSystemManager(); for (let i = 0; i < res.tempFilePaths.length; i++) { - fileManager.readFile({ - filePath: res.tempFilePaths[i], - encoding: "base64", - success: (res) => { - imageList.value.push(res.data); - }, - fail: (error) => { - console.log("chooseImage", error); - }, - }); + pathToBase64(res.tempFilePaths[i]) + .then((base64) => { + imageList.value.push(base64.split(',')[1]); + }) + .catch((error) => { + console.error(error); + }); } }, }); @@ -246,7 +242,7 @@ const updateRecord = async () => { title: "修改成功", icon: "none", }); - uni.setStorageSync("caseRecord",null); + uni.setStorageSync("caseRecord", null); goBack(); } }; @@ -291,19 +287,18 @@ onLoad((options) => { for (let i = 0; i < record.photo.length; i++) { console.log("url", docUrl + record.photo[i]); uni.request({ - url: docUrl + record.photo[i], - method: 'GET', - responseType: 'arraybuffer', - success: (res) => { - const base64 = `${uni.arrayBufferToBase64(res.data)}` - console.log(base64); - imageList.value.push(base64); - }, - fail: (err) => { - reject(err); - }, - }) - + url: docUrl + record.photo[i], + method: "GET", + responseType: "arraybuffer", + success: (res) => { + const base64 = `${uni.arrayBufferToBase64(res.data)}`; + console.log(base64); + imageList.value.push(base64); + }, + fail: (err) => { + reject(err); + }, + }); } } }); diff --git a/pages_app/consult/consult.vue b/pages_app/consult/consult.vue index a88288a..5c51b94 100644 --- a/pages_app/consult/consult.vue +++ b/pages_app/consult/consult.vue @@ -18,7 +18,7 @@ @scrolltolower="onReachBottom" lower-threshold="80" > - + {{ item.maskName }} {{ item.date }} @@ -65,14 +65,21 @@ const pageSize=ref(10) const hasMore = ref(true) const isLoading = ref(false) const isRefreshing = ref(false) -const goDetail=async(uuid)=>{ +const goDetail=async(uuid,patientUuid)=>{ if(bottomActive.value==='quick'){ - let userId=uni.getStorageSync('userInfo').uuid.toLowerCase(); - let conversationId=userId+'|1|'+uuid.toLowerCase(); + if(activeTab.value==='new'){ + navTo({ + url:'/pages_app/freeDetail/freeDetail?uuid='+uuid + }) + }else{ + let userId=uni.getStorageSync('userInfo').uuid.toLowerCase(); + let conversationId=userId+'|1|'+patientUuid.toLowerCase(); await uni.$UIKitStore.uiStore.selectConversation(conversationId) navTo({ - url:'/pages_chat/chat/index?from=consult' + url:'/pages_chat/chat/index?from=consult&&patientUuid='+patientUuid+'&&uuid='+uuid }) + } + }else{ let status=0; if(activeTab.value==='new'){ @@ -111,7 +118,8 @@ const newConsultList=async(isRefresh=false)=>{ content: item.content || '', replyCount: 0, tag: item.diseaseName || '', - id:item.patientUuid || '' + id:item.uuid || '', + patientUuid:item.patientUuid || '' })) if(isRefresh){ listNew.value = mapped @@ -147,7 +155,8 @@ const consultListHis=async(isRefresh=false)=>{ content: item.content || '', replyCount: 0, tag: item.diseaseName || '', - id:item.patientUuid || '' + id:item.uuid || '', + patientUuid:item.patientUuid || '' })) if(isRefresh){ listMine.value = mapped diff --git a/pages_app/consultDetail/consultDetail.vue b/pages_app/consultDetail/consultDetail.vue index 0187cac..537f736 100644 --- a/pages_app/consultDetail/consultDetail.vue +++ b/pages_app/consultDetail/consultDetail.vue @@ -101,7 +101,7 @@ - + {{status==1?'我要编辑':'我要回答'}} @@ -121,7 +121,7 @@ const step1_uuid = ref(''); const answer_uuid = ref(''); const status = ref(0) onLoad((options) => { - uuid.value = options.uuid || '125891f8c12145a99de01e29729978fb' + uuid.value = options.uuid status.value = options.status || 0 console.log(uuid.value) }) @@ -163,6 +163,7 @@ const getInterrogation=()=>{ return user.uuid == item.expert_uuid }) if(arr.length>0){ + status.value = 1; answer_uuid.value = arr[0].answer_uuid; } } @@ -254,10 +255,16 @@ function previewReplyImages(item, index){ // 编辑问题 function editQuestion() { - // 编辑逻辑 - navTo({ - url:'/pages_app/myAnswer/myAnswer?answer_uuid='+answer_uuid.value+'&uuid='+uuid.value - }) + if(status.value == 1){ + navTo({ + url:'/pages_app/myAnswer/myAnswer?answer_uuid='+answer_uuid.value+'&uuid='+uuid.value + }) + }else{ + navTo({ + url:'/pages_app/myAnswer/myAnswer?uuid='+uuid.value + }) + } + } diff --git a/pages_app/freeDetail/freeDetail.vue b/pages_app/freeDetail/freeDetail.vue new file mode 100644 index 0000000..0ded830 --- /dev/null +++ b/pages_app/freeDetail/freeDetail.vue @@ -0,0 +1,509 @@ + + + + + diff --git a/pages_app/myAnswer/myAnswer.vue b/pages_app/myAnswer/myAnswer.vue index 8fd0ad2..bfb7578 100644 --- a/pages_app/myAnswer/myAnswer.vue +++ b/pages_app/myAnswer/myAnswer.vue @@ -8,7 +8,7 @@ 我的意见 *