This commit is contained in:
wangweidong 2026-04-01 17:02:08 +08:00
parent fe5131cb85
commit c2210d5c8e
5 changed files with 115 additions and 91 deletions

View File

@ -2,8 +2,8 @@
"name" : "护理单元",
"appid" : "__UNI__FB2D473",
"description" : "护理单元",
"versionName" : "1.0.037",
"versionCode" : 10037,
"versionName" : "1.0.038",
"versionCode" : 10038,
"transformPx" : false,
/* 5+App */
"app-plus" : {

View File

@ -155,7 +155,7 @@ export const queryCountByType = (data) => {
// 即时指令内容
export const queryAll = (data) => {
return request({
url: `${uni.getStorageSync('serverUrl')}/api/pad/care/directive/getImmediatelyOrderByNuID?nuId=${data.nuId}&elderId=${data.elderId}`,
url: `${uni.getStorageSync('serverUrl')}/api/pad/care/directive/getImmediatelyOrderByNuID?nuId=${data.nuId}&instructionTagId=${data.instructionTagId}`,
method: 'get'
})
}

View File

@ -112,8 +112,8 @@
即时服务指令
</view>
<view class="spiw">
<view v-for="(v,i) in ['护理','医疗','后勤']" :key="i" :class="i==fwzlindex?'act':''"
@click="shtab(i)">{{v}}</view>
<view v-for="(v,i) in typearra" :key="i" :class="i==fwzlindex?'act':''"
@click="shtab(i)">{{v.instructionName}}</view>
</view>
<scroll-view class="scrol" scroll-y="true" lower-threshold="300">
<view v-for="(v,i) in fwzlarr" :key='i' :class="i==fwzldex?'act':''" class="cdk"
@ -297,7 +297,7 @@
import { queryWorkOrderList, queryCountByType, queryAll } from './api.js'
// import {startOrder,endOrder} from './doctorask/api/api.js'
import { queryOrderList, queryOrderInfoList, startOrder, endOrder, editSubPicPath, editSubMp4, queryEmpList, transferOrder, assistOrder, generateInstant } from '../component/doctorask/api/api.js'
import { getNclist } from "./nurse/api.js";
import { getNclist,getInstructionTag } from "./nurse/api.js";
import serveswipe from './leftcontent/serveswipe.vue';
const serverUrl = ref(uni.getStorageSync('imagebase'))
const servervideoUrl = ref(uni.getStorageSync('serverUrl') + '/sys/commonVideo/staticVideo/')
@ -368,7 +368,6 @@
uni.setStorageSync('NUall', data);
inits(data.nuId)
hlylhq(data.nuId, data.elderInfo?.id)
zlfunc(data.nuId, data.elderInfo?.id)
emit('swip')
}
const hldyobj = ref({})
@ -386,33 +385,20 @@
const fwzlarr = ref(0);
const zlarr = ref({});
const zlfunc = (nuId, elderId) => {
const zlfunc = (e) => {
let data = {
nuId: nuId,
elderId: elderId
nuId: uni.getStorageSync('nuId'),
instructionTagId: e
}
// console.log("",data)
queryAll(data).then(res => {
zlarr.value = res.result;
// console.log("",res.result)
shtab(fwzlindex.value)
console.log(res)
fwzlarr.value = res.result.jsList;
})
}
const shtab = (e) => {
fwzlindex.value = e;
if (e == 0) {
fwzlarr.value = zlarr.value?.hlList
}
if (e == 1) {
fwzlarr.value = zlarr.value?.ylList;
}
if (e == 2) {
fwzlarr.value = zlarr.value?.hqList
}
zlfunc(typearra.value[e].instructionType)
fwzldex.value = -1
// console.log("", fwzlarr.value)
// console.log(zlarr.value,serverUrl.value)
}
const zldex = (e) => {
if (e > -1 && e == fwzldex.value) {
@ -427,15 +413,22 @@
if (fwzldex.value < 0) {
return
}
let code = fwzlindex.value == 0 ? 1 : fwzlindex.value == 1 ? 2 : 4
let obj = {
id: fwzlarr.value[fwzldex.value].id,
triggerMode: 1,
orderType: code
nuId:uni.getStorageSync('nuId'),
instructionId:fwzlarr.value[fwzldex.value].instructionId,
directiveId:fwzlarr.value[fwzldex.value].directiveId,
}
generateInstant(obj).then(res => {
console.log(res)
if (res.success) {
jszlshow.value = false
jszlshow.value = false;
uni.showToast({
title:res.message,
icon:'none'
})
setTimeout(()=>{
inits(uni.getStorageSync('nuId'))
},800)
} else {
error.value = true;
msg.value = res.message
@ -568,7 +561,13 @@
getmenu();
})
const typearra = ref([])
onShow(() => {
getInstructionTag().then((res)=>{
// console.log(res.result)
typearra.value = res.result;
shtab(0)
})
setTimeout(() => {
photoplay.value = true;
}, 200)
@ -1330,7 +1329,7 @@
}
.spiw {
width: 14vw;
width: 24vw;
height: 2vw;
display: flex;
justify-content: space-around;
@ -1342,6 +1341,7 @@
color: #555555;
position: relative;
line-height: 1.5vw;
white-space: nowrap;
}
.act {

View File

@ -35,7 +35,7 @@
<donghua :width="`1200rpx`" :height="`600rpx`" :links="blueArray" :playing="current==i"
:loop="true" :interval="500" />
</view>
<view class="timedjs" v-if="current==i&&indexmessage?.izStart=='Y'">
<!-- <view class="timedjs" v-if="current==i&&indexmessage?.izStart=='Y'">
<text>服务倒计时</text>
<timeing v-if="indexmessage?.serviceDuration !==`0`" :initTime="djstinme"
:timeoutDuration="Number(indexmessage.timeoutDuration)*60" @timeend="timeend"></timeing>
@ -54,8 +54,7 @@
</view>
</view>
</view>
</view>
</view> -->
<view v-if="indexmessage.izMulti=='N'">
<view class="weight-time">
<view >
@ -119,14 +118,14 @@
</view>
<view @click="errmsgclk(1,1,indexmessage)">
<view class="left-ball"
:style="indexmessage?.mp3File!=''&&indexmessage.izPackage!='Y'?' ':'opacity: 0.4'">
:style="indexmessage?.mp3File!=''?' ':'opacity: 0.4'">
<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!=''&&indexmessage.izPackage!='Y'?' ':'opacity: 0.4'">
:style="indexmessage?.mp4File!=''?' ':'opacity: 0.4'">
<image class="left-menu-img"
:src="'/static/index/newindex/leftmenu/left'+2+'.png'" />
</view>
@ -220,14 +219,14 @@
</view>
<view @click="errmsgclk(1,1,indexmessage?.directiveList[swipdcurrent])">
<view class="left-ball"
:style="indexmessage?.directiveList[swipdcurrent]?.mp3File!=''&&indexmessage?.directiveList[swipdcurrent].izPackage!='Y'?' ':'opacity: 0.4'">
:style="indexmessage?.directiveList[swipdcurrent]?.mp3File!=''?' ':'opacity: 0.4'">
<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!=''&&indexmessage?.directiveList[swipdcurrent].izPackage!='Y'?' ':'opacity: 0.4'">
:style="indexmessage?.directiveList[swipdcurrent]?.mp4File!=''?' ':'opacity: 0.4'">
<image class="left-menu-img"
:src="'/static/index/newindex/leftmenu/left'+2+'.png'" />
</view>
@ -243,7 +242,7 @@
<view class="right-scroll">
<view style="margin:1.5vw 0;width: 4vw;margin-left: 20rpx;"
@click="zhixing(1,indexmessage?.directiveList[swipdcurrent])">
<view class="white-circle" :style="indexmessage?.directiveList[swipdcurrent]?.izStart=='Y'?'opacity: 0.4' : ''">
<view class="white-circle" :style="indexmessage?.directiveList[swipdcurrent]?.izStart=='Y'||indexmessage?.directiveList[swipdcurrent].employeeIds?'opacity: 0.4' : ''">
<image class="right-menu-img" :src="'/static/index/newindex/rightmenu/1.png'" />
<view class="right-menu-name">
转单执行
@ -252,7 +251,7 @@
</view>
<view style="margin:1.5vw 0;width:4vw;margin-left: 20rpx;"
@click="zhixing(2,indexmessage?.directiveList[swipdcurrent])">
<view class="white-circle" :style="indexmessage?.directiveList[swipdcurrent]?.izStart=='Y'?'opacity: 0.4' : ''">
<view class="white-circle" :style="indexmessage?.directiveList[swipdcurrent]?.izStart=='Y'||indexmessage?.directiveList[swipdcurrent].employeeIds?'opacity: 0.4' : ''">
<image class="right-menu-img" :src="'/static/index/newindex/rightmenu/2.png'" />
<view class="right-menu-name">
协助执行
@ -325,14 +324,16 @@
<view style="font-weight: 600;">
{{ v.height}}cm
</view>
<view class="message-shu"></view>
{{ Number(v.weight).toFixed(1) }}Kg
<view class="message-shu" v-if="v.weight"></view>
{{ v.weight?v.weight.slice(0, 4)+'Kg':'' }}
</view>
</view>
</view>
</scroll-view>
<view style="position: absolute;right: 2vw;bottom: 0.8vw;height: 4vw;" >
<view class="subnt" @click="zhixingsub">确定</view>
</view>
</view>
<view class="mengban" v-if="topbuttontarget>0" @click="topbuttontarget=0"></view>
@ -350,7 +351,7 @@
<view v-if="topbuttontarget==1"
style="width: 100%;height: 100%;border-radius: 30rpx;position: relative;">
<image style="width: 100%;height: 100%;border-radius: 20rpx;"
:src="item?serverpicUrl + item:'/static/ceshiyaoshan.png'" mode="aspectFill"
:src="item?serverUrl + item:'/static/ceshiyaoshan.png'" mode="aspectFill"
:lazy-load="true" />
<view @click.stop="open=1;del(item,index)" class="del"
v-if="topbuttontarget>0&&(listobj?.izStart=='Y'&& listobj?.izFinish=='N')">
@ -361,7 +362,7 @@
<view v-if="topbuttontarget==2"
style="width: 100%;height: 100%;border-radius: 30rpx ;position: relative;">
<video style="width: 100%;height: 100%;border-radius: 30rpx;" :id="'myVideo'+index"
:src="servervideoUrl+item" direction="180" mode="aspectFill"></video>
:src="serverUrl+item" direction="180" mode="aspectFill"></video>
<view @click.stop="ilanarr.splice(index,1)"
v-if="topbuttontarget>0&&(listobj?.izStart=='Y'&& listobj?.izFinish=='N')" class="del">
<image src="/static/index/warehouse/procurement/x.png" mode="aspectFill" style="width: 1.4vw;
@ -387,11 +388,11 @@
<view style="position: absolute;right: 2vw;bottom: 0.8vw;height: 4vw;"
v-if="topbuttontarget>0&&(listobj?.izStart=='Y'&& listobj?.izFinish=='N')">
<view class="subnt" @click="submit">确定</view>
</view>
</view>
<tanchuang :show="open==1" font="是否删除此图片" @back="open = 0" @right="del1()"> </tanchuang>
<errorshow :show="openerror" :font="errmsg" @close="openerror=false" style="left: 44%;" />
<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;" />
<severcard ref="severcards"></severcard>
</view>
</template>
@ -432,9 +433,6 @@
swipdcurrent.value = e
}
const change = (e) => {
console.log(e)
// return
current.value = e.detail.current;
let a = e.detail.current;
if(e.detail.key==1){
@ -462,12 +460,12 @@
plsbuy.value[current.value].chaoshitime = true
}
}
const timeend = () => {
//
return
plsbuy.value.splice(current.value, 1)
firstgetqueryCgdList(form.nuId)
}
// const timeend = () => {
// //
// return
// plsbuy.value.splice(current.value, 1)
// firstgetqueryCgdList(form.nuId)
// }
const swip = (e) => {
if (current.value == 0 && e == -1) {
@ -498,15 +496,22 @@
})
const zdxzdex = ref(0)
const zdxzarr = ref(0)
const zhixing = (e, indexmessage) => {
if (indexmessage?.izStart == 'Y') {
const zhixing = (e, f) => {
if (f?.izStart == 'Y') {
errmsg.value = (e == 1 ? "服务中不能转单执行!" : '服务中不能协助执行!')
openerror.value = true
return
}
if(f.employeeIds){
errmsg.value = (e == 1 ? "转单执行只能执行一次!" : '协助执行只能执行一次!')
openerror.value = true
return
}
indexmessage.value = f;
//
queryEmpList({ id: uni.getStorageSync('userInfo').id }).then(res => {
queryEmpList({ id: uni.getStorageSync('userInfo').employeesId }).then(res => {
zdxzarr.value = res.result;
console.log(zdxzarr.value)
zdxzarr.value.forEach(item => {
item.flag = false
})
@ -516,6 +521,7 @@
const plsbuy = ref([])
const flag = ref(false)
const zdwu = (e, k) => {
console.log(e)
if (zdxzdex.value == 1) {
e.flag = !e.flag;
zdxzarr.value.forEach((item, i) => {
@ -564,21 +570,27 @@
employeeId: s.id,
employeeName: s.name,
beforeBy: indexmessage.value.employeeId,
beforeByName: indexmessage.value.employeeName
beforeByName: indexmessage.value.employeeName,
id:indexmessage.value.id
}
console.log(obj)
let nuId = uni.getStorageSync('nuId');
transferOrder(obj).then(res => {
console.log(res)
if (res.success) {
firstgetqueryCgdList(nuId);
flag.value = false;
zxzd.value = 0;
zdxzdex.value = 0;
}else{
errmsg.value = res.message;
openerror.value = true;
}
})
}
if (zxzd.value == 2) {
let userinfo = uni.getStorageSync('userInfo')
let id = userinfo.id + ',';
let id = userinfo.employeesId + ',';
let name = userinfo.realname + ',';
zdxzarr.value.forEach((item, i) => {
if (item.flag) {
@ -589,19 +601,24 @@
id = id.slice(0, -1);
name = name.slice(0, -1);
let obj = {
mainId: indexmessage.value.mainId,
optIds: id,
optNames: name,
employeeId: id,
employeeName: name,
beforeBy: indexmessage.value.employeeId,
beforeByName: indexmessage.value.employeeName
beforeByName: indexmessage.value.employeeName,
id:indexmessage.value.id
}
console.log(obj)
assistOrder(obj).then(res => {
console.log(res)
if (res.success) {
firstgetqueryCgdList(form.nuId)
// clickLeftMenu(0,{id:indexmessage.value.mainId})
flag.value = false;
zxzd.value = 0;
zdxzdex.value = 0;
}else{
errmsg.value = res.message;
openerror.value = true;
}
})
}
@ -639,12 +656,11 @@
}
})
}
// const indexmessage = ref({});
const indexmessage = ref({});
const firstgetqueryCgdList = (nuId) => {
form.nuId = nuId;
console.log(nuId)
// console.log(nuId)
queryOrderList(form).then(res => {
console.log(res)
console.log(`这啥啊啊啊啊啊`,res.result.length, res)
if (res.result.length > 0) {
res.result.forEach((item, l) => {
@ -656,13 +672,13 @@
if (djs < 0) {
item.chaoshitime = true
}
if (item.izPackage == 'Y') {
clickLeftMenu(l, item)
}
})
plsbuy.value = res.result;
console.log(plsbuy.value,uni.getStorageSync('imagebase'))
change({ detail: { current: current.value } })
if(current.value>=plsbuy.value.length){
change({ detail: { current: current.value-1 } })
}else{
change({ detail: { current: current.value } })
}
} else {
plsbuy.value = [];
}
@ -680,7 +696,6 @@
topbuttontarget.value = 0;
donghuaopo.value = false;
firstgetqueryCgdList(form.nuId)
// clickLeftMenu(0,{id:indexmessage.value.mainId})
}
})
} else {
@ -690,7 +705,6 @@
topbuttontarget.value = 0;
donghuaopo.value = false;
firstgetqueryCgdList(form.nuId)
// clickLeftMenu(0,{id:indexmessage.value.mainId})
}
})
}
@ -699,7 +713,7 @@
if (topbuttontarget.value == 1) {
let u = []
arr.forEach(e => {
u.push(serverpicUrl.value + e)
u.push(serverUrl.value + e)
})
uni.previewImage({
current: i,
@ -747,7 +761,11 @@
success: res => {
console.log(res)
const data = JSON.parse(res.data);
ilanarr.value.push(data.message)
if(data.message){
ilanarr.value.push(data.message)
}else{
uni.showToast({ title: '上传失败', icon: 'none' })
}
uni.hideLoading()
},
fail: () => {
@ -763,14 +781,16 @@
sizeType: ['compressed'], //
sourceType: ['camera'], //
success: (e) => {
console.log(e)
const filePath = e.tempFilePaths[0]
const fileName = filePath.substring(filePath.lastIndexOf('/') + 1 )
const ext = fileName.substring(fileName.lastIndexOf('.'))
let ar = JSON.stringify(e.tempFilePaths)
uni.compressImage({
src: JSON.parse(ar)[0],
quality: 60,
success: res => {
console.log(res.tempFilePath)
pre(res.tempFilePath,e.tempFiles[0].size)
pre(res.tempFilePath,fileName,e.tempFiles[0].size)
// v.picPatharr.push(res.tempFilePath);
}
})
@ -780,14 +800,17 @@
uni.chooseVideo({
sourceType: ['camera'],
success: (e) => {
console.log(e)
uni.showLoading({
title: '正在上传...'
})
const filePath = e.tempFilePath
const fileName = filePath.substring(filePath.lastIndexOf('/') + 1 )
uni.compressVideo({
src: e.tempFilePath,
quality: 'medium',
success: res => {
pre(res.tempFilePath,e.tempFiles[0].size)
pre(res.tempFilePath,fileName,e.size)
// sxdupld(res.tempFilePath)
// v.picPatharr.push(res.tempFilePath);
}
@ -798,11 +821,12 @@
}
}
const strs = ref('')
const pre = (e,s)=>{
strs.value = randomStr();
preupload({fileName:strs.value,fileSize:s}).then(res=>{
console.log(res,strs.value,s)
sxdupld(e,strs.value,s)
const pre = (e,n,s)=>{
preupload({fileName:n,fileSize:s}).then(res=>{
console.log(res,n,s)
if(res.success){
sxdupld(e,res.message,s)
}
})
}
const randomStr = (length = 8)=> {
@ -1101,7 +1125,7 @@
height: 60rpx;
bottom: 1.2vw;
left: 20%;
z-index: 999;
z-index: 99;
}
.bots {
height: 100%;
@ -1942,7 +1966,7 @@
.photowall-other {
width: 76vw;
// height: 62vh;
height: 62vh;
display: flex;
margin-top: 20rpx;
flex-wrap: wrap;

View File

@ -1,6 +1,6 @@
// 全局请求封装
// const base_url = 'https://www.focusnu.com/opeapi'
export const base_url = 'http://192.168.2.27:8081/opeapi/'
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'
// 请求超出时间
const timeout = 5000
@ -28,7 +28,7 @@ export default (params) => {
timeout,
success(response) {
const res = response
console.log("请求返回了啥啊",response)
// console.log("请求返回了啥啊",response)
// 根据返回的状态码做出对应的操作
//获取成功
// console.log("接口总线",url);