This commit is contained in:
wangweidong 2026-04-08 17:19:39 +08:00
parent 5a3b1a35fe
commit 0fe24ea848
10 changed files with 157 additions and 34 deletions

View File

@ -2,8 +2,8 @@
"name" : "护理单元",
"appid" : "__UNI__FB2D473",
"description" : "护理单元",
"versionName" : "1.0.041",
"versionCode" : 10041,
"versionName" : "1.0.042",
"versionCode" : 10042,
"transformPx" : false,
/* 5+App */
"app-plus" : {

View File

@ -120,9 +120,10 @@
@click="zldex(i)">
<image :src="serverUrl+(fwzldex!=i?v.immediateFile:v.immediateFileFocus)" mode="aspectFill">
</image>
<text
style="white-space: nowrap;width: 100%;text-overflow: ellipsis;overflow: hidden;">{{v.directiveName?.substring(0,5)}}</text>
<view>{{v.directiveName?.substring(5,12)}}</view>
<text style="white-space: nowrap;width: 100%;text-overflow: ellipsis;overflow: hidden;" >
{{v.obj.mainName}}
</text>
<view v-if="v.obj.subName">( {{v.obj.subName}} )</view>
</view>
<view style="width: 13vw;height: 13vw;margin: 7vw 0 0 23.5vw;display: block;background: none;"
@ -420,7 +421,7 @@
const fwzlindex = ref(0);
const fwzldex = ref(-1);
const fwzlarr = ref(0);
const fwzlarr = ref([]);
const zlarr = ref({});
const zlfunc = (e) => {
let data = {
@ -428,15 +429,35 @@
instructionTagId: e
}
queryAll(data).then(res => {
// console.log(res)
fwzlarr.value = res.result.jsList;
fwzlarr.value.forEach(item=>{
item.obj = parseDirectiveName(item.directiveName)
})
console.log(fwzlarr.value)
})
}
const parseDirectiveName=(directiveName)=> {
if (!directiveName) return { mainName: '', subName: '' }
const reg = /^(.+)(.+)$/
const match = directiveName.match(reg)
if (match) {
return {
mainName: match[1].trim(), //
subName: match[2].trim() //
}
} else {
return {
mainName: directiveName.trim(),
subName: ''
}
}
}
const shtab = (e) => {
fwzlindex.value = e;
zlfunc(typearra.value[e].instructionType)
fwzldex.value = -1
}
const zldex = (e) => {
if (e > -1 && e == fwzldex.value) {
fwzldex.value = -1
@ -465,7 +486,7 @@
})
setTimeout(()=>{
inits(uni.getStorageSync('nuId'))
},800)
},1500)
} else {
error.value = true;
msg.value = res.message

View File

@ -31,7 +31,7 @@
url:'/pages/watch/settings/settings'
})">
<view class="tp">
<image :src="userInfo.avatar?serverUrl+'/sys/common/static/'+userInfo.avatar:'/static/shouye/xd.png'" mode="aspectFill"></image>
<image :src="userInfo.avatar?media_url+userInfo.avatar:'/static/shouye/xd.png'" mode="aspectFill"></image>
</view>
<text>{{uni.getStorageSync('realname')}}</text>
</view>
@ -41,6 +41,7 @@
<script setup lang="ts">
import { ref, onMounted, onBeforeUnmount, computed, nextTick, watch, reactive } from 'vue';
import { media_url } from '@/request/index.js'
const props = defineProps({
list: {
type: Array
@ -135,6 +136,7 @@
display: flex;
flex-direction: column;
height: 6.2vw;
align-items: center;
view{
width: 3.8vw;

View File

@ -113,21 +113,19 @@
<view class="left-menu">
<view @click="errmsgclk(0,1,indexmessage)">
<view class="left-ball" :style="indexmessage?.serviceContent!=''?' ':'opacity: 0.4'">
<view class="left-ball" >
<image class="left-menu-img"
:src="'/static/index/newindex/leftmenu/left'+0+'.png'" />
</view>
</view>
<view @click="errmsgclk(1,1,indexmessage)">
<view class="left-ball"
:style="indexmessage?.mp3File!=''?' ':'opacity: 0.4'">
<view class="left-ball" >
<image class="left-menu-img"
:src="'/static/index/newindex/leftmenu/left'+1+'.png'" />
</view>
</view>
<view @click="errmsgclk(2,1,indexmessage)">
<view class="left-ball"
:style="indexmessage?.mp4File!=''?' ':'opacity: 0.4'">
<view class="left-ball" >
<image class="left-menu-img"
:src="'/static/index/newindex/leftmenu/left'+2+'.png'" />
</view>
@ -234,21 +232,19 @@
<view class="left-menu">
<view @click="errmsgclk(0,1,indexmessage?.directiveList[swipdcurrent])">
<view class="left-ball" :style="indexmessage?.directiveList[swipdcurrent]?.serviceContent!=''?' ':'opacity: 0.4'">
<view class="left-ball" >
<image class="left-menu-img"
:src="'/static/index/newindex/leftmenu/left'+0+'.png'" />
</view>
</view>
<view @click="errmsgclk(1,1,indexmessage?.directiveList[swipdcurrent])">
<view class="left-ball"
:style="indexmessage?.directiveList[swipdcurrent]?.mp3File!=''?' ':'opacity: 0.4'">
<view class="left-ball" >
<image class="left-menu-img"
:src="'/static/index/newindex/leftmenu/left'+1+'.png'" />
</view>
</view>
<view @click="errmsgclk(2,1,indexmessage?.directiveList[swipdcurrent])">
<view class="left-ball"
:style="indexmessage?.directiveList[swipdcurrent]?.mp4File!=''?' ':'opacity: 0.4'">
<view class="left-ball" >
<image class="left-menu-img"
:src="'/static/index/newindex/leftmenu/left'+2+'.png'" />
</view>
@ -336,7 +332,7 @@
:style="v.flag?{borderColor: `rgba(1, 125, 233, 0.3)`}:''">
<image
style="width: 5.5vw;height: 5.5vw;border-radius: 50%;margin: 0 auto;margin-bottom: 1.5vw;margin-top: 2.2vw;"
:src="v.headPath?serverpicUrl+v.headPath:'/static/shouye/xd.png'" />
:src="v.headPath?media_url+v.headPath:'/static/shouye/xd.png'" />
<view class="name-weight">
{{v.name }}
</view>
@ -414,7 +410,28 @@
</view>
<tanchuang :show="open==1" font="是否删除此图片" @back="open = 0" @right="del1()"> </tanchuang>
<tanchuang :show="zxzd>0" :font="zdcont" @back="zxzd = 0" @right="tijiaozx()"> </tanchuang>
<errorshow :show="openerror" :font="errmsg" @close="openerror=false" style="left: 44%;z-index: 9999;" />
<errorshow :show="openerror" :font="errmsg" @close="openerror=false;icons = true" :icons="icons" style="left: 44%;z-index: 9999;" />
<view class="mengban" @click="mp4url = ''" v-if="mp4url!=''"></view>
<view class="mp4ziyuan" v-if="mp4url!=''">
<view style="width: 100%;height: 100%;border-radius: 30rpx ;position: relative;" v-if="mp4url!=''">
<video style="width: 100%;height: 80%;border-radius: 30rpx;margin: 10% auto 0;" :id="'myVideomp4'"
:src="mp4url" direction="180" mode="aspectFill"></video>
</view>
</view>
<view class="mengban" @click="mp3url=''" v-if="mp3url!=''"></view>
<view class="mp3ziyuan" v-if="mp3url!=''">
<view style="width: 100%;height: 100%;border-radius: 30rpx ;position: relative;" v-if="mp3url!=''">
<view style="text-align: center;width: 100%;font-weight: bold;margin-top: 40rpx;font-size: 44rpx;">{{mp3obj.name}}</view>
<audio style="width: 100%;height: 50%;border-radius: 30rpx; "
:src="mp3url"
:poster="mp3obj.poster" :name="mp3obj.name"
:action="mp3obj.audioAction"
controls></audio>
</view>
</view>
</view>
</template>
@ -423,7 +440,7 @@
import { onBackPress, onShow, onHide } from "@dcloudio/uni-app"
import timeing from './sxy-Timeing.vue'
import swipecard from './swipecard.vue'
import { base_url } from '@/request/index.js'
import { base_url,media_url } from '@/request/index.js'
import {preupload, queryOrderList, queryOrderInfoList, startOrder, endOrder, editSubPicPath, editSubMp4, queryEmpList, transferOrder, assistOrder, generateInstant } from '../../component/doctorask/api/api.js'
const open = ref(0)
@ -439,6 +456,7 @@
const current = ref(-1)
const current2 = ref(0)
const autoplay = ref(false)
const icons = ref(true)
const init = (e) => {
firstgetqueryCgdList(e);
}
@ -582,6 +600,12 @@
}
}
const zhixingsub = () => {
let a = zdxzarr.value.find(item=>item.flag==true)
if(!a){
errmsg.value = '请选择人员';
openerror.value = true;
return
}
zxzd.value = zdxzdex.value
if (zdxzdex.value == 1) {
zdcont.value = "确认转单执行?"
@ -960,6 +984,7 @@
endobj.value = v;
open.value = 3;
} else {
if(v.izFinish == "Y"){return}
errmsg.value = "服务尚未开始!"
openerror.value = true;
}
@ -982,6 +1007,18 @@
}
const errmsg = ref('')
const openerror = ref(false);
const clickAudio = ref(null)
const audioplay = ref(false)
const mp4url = ref("");
const mp3url = ref("");
const mp3obj = reactive({
poster: '',
name: '',
audioAction: {
method: 'play'
}
})
const errmsgclk = (e, k, indexmessage) => {
// font.value = '~'
// open.value = 3
@ -1010,14 +1047,39 @@
case 0:
errmsg.value = !indexmessage?.serviceContent?'暂无数据':indexmessage?.serviceContent
openerror.value = true;
if(errmsg.value != "暂无数据"){
icons.value = false;
}
break;
case 1:
errmsg.value = !indexmessage?.mp3File?'暂无数据':indexmessage?.mp3File
openerror.value = true;
if(errmsg.value != "暂无数据"){
// clickAudio.value = uni.createInnerAudioContext('myVideomp3')
// clickAudio.value.src = clickaudio.value + indexmessage?.mp3File;
// clickAudio.value.volume = 0.4;
// console.log(clickAudio.value.src ,uni.getStorageSync('serverUrl'))
// clickAudio.value.stop()
// clickAudio.value.play()
mp3obj.poster =serverUrl.value + indexmessage.previewFile;
mp3obj.name = indexmessage.directiveName;
mp3url.value = media_url + indexmessage?.mp3File;
audioplay.value = true;
}else{
openerror.value = true;
}
break;
case 2:
errmsg.value = !indexmessage?.mp4File?'暂无数据':indexmessage?.mp4File
openerror.value = true;
if(errmsg.value != "暂无数据"){
mp4url.value = media_url + indexmessage?.mp4File;
videoContext.value = uni.createVideoContext('myVideomp4');
videoContext.value.play()
}else{
openerror.value = true;
}
break;
default:
@ -1987,6 +2049,34 @@
z-index: 100;
background: RGBA(239, 240, 244, 0.55);
}
.mp3ziyuan{
position: fixed;
top: 50%;
left: 49.5%;
transform: translate(-50%, -50%);
width: 55.5vw;
height: 28%;
border-radius: 40rpx;
background-color: #fff;
transition: all 0.3s;
z-index: 9990;
box-shadow: 0 0 10rpx rgba(0, 0, 0, 0.1);
padding: 0 90rpx;
}
.mp4ziyuan{
position: fixed;
top: 50%;
left: 49.5%;
transform: translate(-50%, -50%);
width: 55.5vw;
height: 65%;
border-radius: 40rpx;
background-color: #fff;
transition: all 0.3s;
z-index: 9990;
box-shadow: 0 0 10rpx rgba(0, 0, 0, 0.1);
padding: 0 90rpx;
}
.photowall {
position: fixed;

View File

@ -5,6 +5,7 @@
indicator-active-color="#0081ff">
<swiper-item v-for="(item,index) in indexmessage.directiveList" :key="index" :class="cardCur==index?'cur':''">
<view class="swiper-item">
<view class="ico">{{index+1}}/{{indexmessage.directiveList.length}}</view>
<image :src="uni.getStorageSync('imagebase')+item.previewFile" mode="aspectFill" ></image>
</view>
</swiper-item>
@ -142,6 +143,12 @@ swiper.round-dot .uni-swiper-dot.uni-swiper-dot-active {
transition: all 0.2s ease-in 0s;
overflow: hidden;
background: #f6f9ff;
position: relative;
.ico{
position: absolute;
right: 0.7vw;
top: 0.7vw;
}
}
.card-swiper swiper-item.cur .swiper-item {

View File

@ -116,14 +116,14 @@
</scroll-view>
</view>
<view class="right-order" @click="clickrighttoclean();">
<view class="right-tags" @click="clicktags()">
<view class="right-tags">
<view class="right-tags-title">
<view class="blue-shu" style="margin-left: 35rpx;"></view>
<view class="blue-font">
<view class="blue-font" @click.stop="clicktags(0)">
体型标签
</view>
<view class="blue-shu" style="margin-left: 92rpx;"></view>
<view class="blue-font">
<view class="blue-font" @click.stop="clicktags(1)">
情绪标签
</view>
<image class="blue-icon" @click.stop="clicktagsopen()"
@ -139,7 +139,7 @@
</view>
</view>
<view class="right-contont">
<view class="tags-leftmenu">
<view class="tags-leftmenu" @click.stop="clicktags(0)">
<view class="leftmenu-shu"></view>
<view class="tags-img-father">
<view v-for="(item,index) in bodyTagListLook" :key="index" class="tags-img-view"
@ -156,7 +156,7 @@
src="/static/index/procurement/haven.png" mode="aspectFill"></image>
</view>
<view class="tags-rightmenu">
<view class="tags-rightmenu" @click.stop="clicktags(1)">
<view class="tags-img-father" style="margin-left: 10rpx;">
<view v-for="(item,index) in emotionTagListLook" :key="index"
class="tags-img-view" @click.stop="clickbody(item,index+2)">
@ -2061,7 +2061,7 @@
bodyTagListLooksave.value = JSON.parse(JSON.stringify(bodyTagList.value));
emotionTagListLooksave.value = JSON.parse(JSON.stringify(emotionTagList.value));
listsave.value = bodyTagListLooksave.value
menutype.value = 0
// menutype.value = 0
}
}
const saverightclick = () => {
@ -2079,8 +2079,9 @@
}
}
const clicktags = () => {
const clicktags = (e) => {
if (editingmode.value && !tagsopen.value) {
menutype.value = e
clickopen()
}
}

View File

@ -135,7 +135,7 @@
})
const kf = ref('0')
onLoad((e)=>{
console.log(e)
// console.log(e)
kf.value = e.kf;
})
const listarr = ref([]);

View File

@ -227,6 +227,7 @@
return
}
uni.setStorageSync('serverUrl', res.result.orgList[0].serverUrl);
// uni.setStorageSync('mediaUrl', 'https://www.focusnu.com/media/');
uni.setStorageSync('orgList', res.result.orgList);
uni.setStorageSync('orgListName', res.result.orgList[0].departName);
uni.setStorageSync('orgListCode', res.result.orgList[0].orgCode);

View File

@ -30,7 +30,7 @@
<image class="right-icon" :src="`/static/index/settings/00.png`" />
</view>
</view>
<view class="item" @click="jumpToTarget(8)">
<!-- <view class="item" @click="jumpToTarget(8)">
<view class="left-item">
<image class="left-icon" :src="`/static/index/settings/6.png`" />
<view class="left-font">
@ -40,7 +40,7 @@
<view class="right-item">
<image class="right-icon" :src="`/static/index/settings/00.png`" />
</view>
</view>
</view> -->
</view>
<view class="array-father">
<view v-for="(item,index) in iconsArray.slice(5,8)" :key="index" class="item"

View File

@ -2,6 +2,7 @@
export const base_url = 'https://www.focusnu.com/opeapi'
// export const base_url = 'http://192.168.2.27:8081/opeapi/'
// const base_url = 'http://192.168.2.55:8081/opeapi'
export const media_url = 'https://www.focusnu.com/media/'
// 请求超出时间
const timeout = 5000
// 登录过期防止多次弹出