8.15提交

This commit is contained in:
zoujiandong
2025-08-15 09:18:09 +08:00
parent 61584a5d20
commit c7eb7ed879
425 changed files with 191 additions and 44642 deletions
+27 -4
View File
@@ -96,6 +96,7 @@
item.exchange_content_video.length > 0
"
>
<view class="videomask"></view>
<video
:key="index"
v-for="(videoCell, index) in item.exchange_content_video.slice(0,1)"
@@ -160,12 +161,12 @@
import navTo from "@/utils/navTo.js";
import api from "@/api/api";
import { reactive,ref } from 'vue';
import { onShow } from "@dcloudio/uni-app";
import { onShow,onLoad } from "@dcloudio/uni-app";
const numInfo=reactive({})
const most_read_articles=ref([]);
const new_articles=ref([]);
const hasUse=ref(false);
const formatdate = (date) => {
return dayjs(date).format('YYYY-MM-DD')
};
@@ -206,7 +207,7 @@ const goDetail = (id) => {
const searchList = async () => {
let searchForm = {
page: 1,
page_size: 10,
page_size: 20,
order:{
push_date:'desc'
}
@@ -255,6 +256,21 @@ const goPublish=()=>{
url:'/pages/publish/publish'
})
}
onLoad((options)=>{
console.log(options.from && !hasUse.value)
if(options.from && !hasUse.value){
setTimeout(()=>{
uni.showToast({
duration:2000,
title: "提交成功,请耐心等待审核",
icon: "none",
})
hasUse.value=true;
},300)
}
})
onShow(()=>{
getStatic();
goodList();
@@ -380,7 +396,13 @@ onShow(()=>{
.imgbox {
display: flex;
margin-top: 24rpx;
position: relative;
.videomask{
position: absolute;
width:100%;
height:100%;
z-index:2;
}
.imgcell {
width: 220rpx;
height: 220rpx;
@@ -396,6 +418,7 @@ onShow(()=>{
}
.special {
background-color: #fff;
padding-top: 30rpx;
.list {
+2 -1
View File
@@ -159,7 +159,7 @@
<up-parse :content="fromatImg(info.exchange_summary)"></up-parse>
<!-- <view class="con" v-html="fromatImg(info.exchange_summary)"></view> -->
</view>
<view class="bar"></view>
<view class="bar" v-if="info.exchange_vote && info.exchange_vote.vote_title"></view>
<view class="detail" v-if="info.exchange_vote && info.exchange_vote.vote_title">
<view class="votebox" v-if="info.exchange_vote.is_have_voted==0 ">
<view class="name">在线投票</view>
@@ -2041,6 +2041,7 @@ const readRecord= async()=>{
color: #3cc7c0;
}
.commentcon {
background-color: #fff;
.item {
display: flex;
padding: 30rpx 35rpx 16rpx;
+30 -12
View File
@@ -33,8 +33,8 @@
</view>
<view class="listbox">
<!-- <view class="titlename">我的临床病例库</view> -->
<view class="cell" @click="goDoctor(userInfo.doctor_id,userInfo.user_name)" v-if="numInfo.article_num+numInfo.video_num>=2"> <!-- 5 -->
<view class="left">
<view class="cell" :class="{on:isHarmonyos}" @click="goDoctor(userInfo.doctor_id,userInfo.user_name)" v-if="numInfo.article_num+numInfo.video_num>=2"> <!-- 5 -->
<view class="left" >
<up--image
:src="myFile"
width="34rpx"
@@ -45,8 +45,8 @@
</view>
<u-icon name="arrow-right" color="#9CA3AF" size="18"></u-icon>
</view>
<view class="cell" @click="goCert" v-if="numInfo.article_num+numInfo.video_num>=2">
<view class="left">
<view class="cell" :class="{on:isHarmonyos}" @click="goCert" v-if="numInfo.article_num+numInfo.video_num>=2">
<view class="left" >
<up--image
:src="myDownload"
width="42rpx"
@@ -57,8 +57,8 @@
</view>
<u-icon name="arrow-right" color="#9CA3AF" size="18"></u-icon>
</view>
<view class="cell" @click="goHospital(userInfo.hospital_id,userInfo.hospital_name)" v-if="hospitalInfo.video_num+hospitalInfo.article_num>=2">
<view class="left">
<view class="cell" :class="{on:isHarmonyos}" @click="goHospital(userInfo.hospital_id,userInfo.hospital_name)" v-if="hospitalInfo.video_num+hospitalInfo.article_num>=2">
<view class="left" >
<up--image
:src="myHospital"
width="39rpx"
@@ -69,8 +69,8 @@
</view>
<u-icon name="arrow-right" color="#9CA3AF" size="18"></u-icon>
</view>
<view class="cell" @click="mySpecial">
<view class="left">
<view class="cell" :class="{on:isHarmonyos}" @click="mySpecial">
<view class="left" >
<up--image
:src="myTalk"
width="39rpx"
@@ -81,8 +81,8 @@
</view>
<u-icon name="arrow-right" color="#9CA3AF" size="18"></u-icon>
</view>
<view class="cell" @click="goJoin">
<view class="left">
<view class="cell" @click="goJoin" :class="{on:isHarmonyos}">
<view class="left" >
<up--image
:src="myJoin"
width="39rpx"
@@ -93,8 +93,8 @@
</view>
<u-icon name="arrow-right" color="#9CA3AF" size="18"></u-icon>
</view>
<view class="cell" @click="goCollect">
<view class="left">
<view class="cell" @click="goCollect" :class="{on:isHarmonyos}">
<view class="left" >
<up--image
:src="myCollect"
width="39rpx"
@@ -129,6 +129,7 @@ import { onLoad } from "@dcloudio/uni-app";
import navTo from "@/utils/navTo.js";
import api from "@/api/api";
import { ref,reactive} from "vue";
const isHarmonyos=ref(false)
const userInfo=reactive({})
const numInfo=reactive({})
const hospitalInfo=reactive({})
@@ -160,6 +161,15 @@ const getHospitalNum=(id)=>{
}
onLoad(()=>{
getInfo()
uni.getSystemInfo({
success(res){
console.log(res.platform);
console.log(res.platform=="ohos")
if(res.platform=="ohos"){
isHarmonyos.value=true;
}
}
})
})
const goCert = () => {
navTo({
@@ -201,9 +211,11 @@ const goPublish=()=>{
.upage{
height:100vh;
display: flex;
background-color: #fff;
flex-direction: column;
}
.con{
background-color: #fff;
height:calc(100vh - 100rpx);
overflow-y: scroll;
}
@@ -249,6 +261,12 @@ const goPublish=()=>{
}
}
.cell.on{
:deep(.u-image){
margin-top: 0rpx;
background: none!important;
}
}
}
.databox {
height: 162rpx;
+2
View File
@@ -220,6 +220,7 @@ const queryList = (pageNo, pageSize) => {
}
}
.filterbox{
background-color: #fff;
display: flex;
height:128rpx;
align-items: center;
@@ -294,6 +295,7 @@ const queryList = (pageNo, pageSize) => {
}
}
.item {
background-color: #fff;
border-bottom: 1rpx solid #f3f4f6;
padding: 30rpx;
.title {
+60 -14
View File
@@ -438,6 +438,22 @@
</view>
</view>
</up-overlay>
<up-overlay :show="isCheckModal" mask-click-able zIndex="99">
<view class="zanboxpop">
<view class="zanwraper">
<view class="title">提示</view>
<view class="content" >
提交成功请耐心等待审核
</view>
<view class="btnbox" style="justify-content: center;">
<!-- <view class="cancle" @click="cancelConfirmPublish">取消</view> -->
<view class="ok" @click="goPrevPage">确定</view>
</view>
</view>
</view>
</up-overlay>
<up-popup
:round="10"
zIndex="9"
@@ -564,11 +580,11 @@ import voteOnImg from "@/static/voteon.png";
import draftImg from "@/static/draft.png";
import api from "@/api/api";
import dayjs from "dayjs";
import { onLoad,onReady } from "@dcloudio/uni-app";
import { onLoad,onReady,onShow } from "@dcloudio/uni-app";
import throttle from "@/utils/throttle"
import svEditor from "@/uni_modules/sv-editor/components/sv-editor/sv-editor.vue";
import pEditor from "@/components/pEditor/pEditor"
const isCheckModal=ref(false);
const uToast=ref(null);
//import SvEditorToolbar from "@/uni_modules/sv-editor/components/sv-editor/sv-editor-toolbar.vue";
import {
@@ -576,6 +592,7 @@ import {
addVideo,
addText,
} from "@/uni_modules/sv-editor/components/common/utils.js";
import navTo from "../../utils/navTo";
const isLock = ref(false);
const isFlag = ref(false);
const delId = ref("");
@@ -1108,6 +1125,7 @@ const cancelDel = () => {
}
};
const cancelConfirmPublish=()=>{
console.log(1111111);
isConfirmPublish.value=false;
}
@@ -1196,9 +1214,17 @@ const publish =throttle(async () => {
});
return false;
}
if (!(form.case_exchange_vote && form.case_exchange_vote.vote_title)) {
delete form.case_exchange_vote;
}
try{
if (!form.case_exchange_vote || !(form.case_exchange_vote.vote_title)) {
form.case_exchange_vote={};
delete form.case_exchange_vote
}
} catch(e) {
console.log(e);
};
if (
!form.case_exchange_label ||
(form.case_exchange_label && form.case_exchange_label.length == 0)
@@ -1226,22 +1252,38 @@ const publish =throttle(async () => {
});
isFlag.value = false;
isPublish.value = true;
uni.navigateBack()
isConfirmPublish.value=false;
uni.redirectTo({
url:'/pages/caseTalk/caseTalk'
})
});
}else{
api.addExchange(form).then((res) => {
uni.showToast({
title: "发布成功",
icon: "none",
duration: 2000,
});
isFlag.value = false;
isPublish.value = true;
uni.navigateBack()
//isCheckModal.value=true;
uni.redirectTo({
url:'/pages/caseTalk/caseTalk?from=publish',
})
// uni.navigateBack({
// success(){
// uni.showToast({
// duration:2500,
// title: "提交成功,请耐心等待审核",
// icon: "none",
// })
// }
// });
isFlag.value = false;
isPublish.value = true;
isConfirmPublish.value=false;
});
}
});
const goPrevPage=()=>{
uni.navigateBack()
}
const handleUpload = (file) => {
api
.getOss({
@@ -1595,6 +1637,9 @@ onReady(()=>{
duration:1500
})
})
onShow(()=>{
isConfirmPublish.value=false;
})
onLoad((options) => {
if(options.exchange_id){
@@ -2189,6 +2234,7 @@ min-height: 600rpx;
display: flex;
flex-direction: column;
height: 100vh;
background-color: #fff;
position: relative;
:deep(.u-image) {
background: transparent !important;
+5 -4
View File
@@ -732,10 +732,11 @@ const clearMuBan = () => {
};
const focusInfo = () => {
isFocusInfo.value = true;
// uni.onKeyboardHeightChange(res => {
// console.log(res.height);
// bottomHeight.value=res.height*2;
// })
uni.onKeyboardHeightChange(res => {
console.log(res.height);
bottomHeight.value=res.height*2;
editorCtx.value.s
})
};
const blurInfo = () => {
+2
View File
@@ -813,6 +813,7 @@ const queryList = (pageNo, pageSize) => {
}
}
.filterbox{
background:#fff;
:deep(.u-flex) {
display: flex;
flex-direction:row;
@@ -983,6 +984,7 @@ const queryList = (pageNo, pageSize) => {
}
.item {
border-bottom: 1rpx solid #f3f4f6;
background-color: #fff;
padding: 30rpx;
.title {
font-size: 30rpx;
+10 -1
View File
@@ -118,6 +118,7 @@
item.exchange_content_video.length > 0
"
>
<view class="videomask"></view>
<video
:key="index"
v-for="(videoCell, index) in item.exchange_content_video.slice(0,1)"
@@ -714,6 +715,7 @@ const searchList = async (params) => {
}
}
.filterbox{
background-color: #fff;
display: flex;
height:128rpx;
align-items: center;
@@ -781,6 +783,7 @@ const searchList = async (params) => {
}
.box {
background-color: #fff;
flex: 1;
padding-bottom: 30rpx;
overflow-y: scroll;
@@ -872,7 +875,13 @@ const searchList = async (params) => {
.imgbox {
display: flex;
margin-top: 24rpx;
position: relative;
.videomask{
position: absolute;
width:100%;
height:100%;
z-index:2;
}
.imgcell {
width: 220rpx;
height: 220rpx;
+28 -8
View File
@@ -69,7 +69,7 @@
</view>
</template>
<view class="item" v-for="(item, index) in dataList" :key="index" @click="isArticle?goDetail(item.article_id):goDetail(item.video_id)">
<view class="item" v-for="(item, index) in dataList" :key="index" @click="goDetail(item.video_id,item.is_link,item.is_link_url)">
<view class="title ellipsis-two-lines">{{isArticle?item.article_title:item.video_title }}</view>
<view class="tagsbox">
<view class="tag" v-for="tag in item.author" :key="tag.author_id">{{ tag.doctor_name }}</view>
@@ -450,13 +450,31 @@ const changeRead=(e)=>{
const formatdate=(date)=>{
return dayjs(date).format('YYYY-MM-DD')
}
const goDetail=(id)=>{
console.log(11111)
console.log(id)
let type=isArticle.value?'article':'video'
navTo({
url: `/pages/detail/detail?id=${id}&type=${type}`
})
const goDetail=(id,isLink,src)=>{
console.log(999999)
console.log(isLink,src)
if(isLink==1){
api.readRecord({
type:2,
id:id
}).then(res=>{
})
// #ifdef MP-WEIXIN
navTo({
url: `/pages/web/web?src=${src}`,
});
// #endif
// #ifdef H5
window.location.href=`${src}`
// #endif
}else{
let type=isArticle.value?'article':'video'
navTo({
url: `/pages/detail/detail?id=${id}&type=${type}`
})
}
}
const getStatic=()=>{
api.getHomeStatics().then((res) => {
@@ -612,6 +630,7 @@ const queryList = (pageNo, pageSize) => {
}
}
.filterbox{
background-color: #fff;
display: flex;
height:128rpx;
align-items: center;
@@ -704,6 +723,7 @@ const queryList = (pageNo, pageSize) => {
}
}
.item {
background-color: #fff;
border-bottom: 1rpx solid #f3f4f6;
padding: 30rpx;
.title {