This commit is contained in:
wangweidong 2025-12-18 17:18:04 +08:00
commit ec474003d1
28 changed files with 910 additions and 136 deletions

View File

@ -13,7 +13,7 @@
<view class="title">退出登录</view>
<view class="card-font">
确定要注销账户
确定要退出登录
</view>
</view>
</view>

View File

@ -7,6 +7,14 @@
"navigationStyle": "custom"
}
},
//
{
"path": "pages/login/index",
"style": {
"navigationStyle": "custom"
}
},
// nvuenvue
{

View File

@ -2,6 +2,7 @@
<view>
<view class="home">
<image class="all-home" src="/static/index/warehouse/newtwo/backpage.jpg" mode="aspectFit"></image>
</view>
<view class="right-title">
<image class="title-imge" src="/static/home.png" mode="aspectFit"></image>

View File

@ -431,10 +431,10 @@
<view class="bottom-left" @click="chongzhi">
重置
</view>
<view class="bottom-right" @click="openselect=false">
<view class="bottom-right" @click="openselect=false;search()">
确定
<text style="font-size: 25rpx;margin-top: 5rpx;" v-if="alltotal>=99">
(99+采购单)
<text style="font-size: 25rpx;margin-top: 5rpx;" v-if="alltotal">
{{ alltotal }}采购单
</text>
</view>
@ -1189,12 +1189,13 @@
const closefilteredCgrList = () => {
filteredCgrList.value = [];
cgrvalue.value = plzinfo.cgBy;
lookshuliang()
}
const clickfilteredCgrList = (item : any) => {
filteredCgrList.value = [];
plzinfo.cgBy = item.cgBy
cgrvalue.value = plzinfo.cgBy;
search()
lookshuliang()
}
// --- ---
@ -1257,14 +1258,14 @@
filteredCgrListsecond.value = [];
gysvalue.value = "";
plzinfo.suppliers = "";
search()
lookshuliang()
}
const clickfilteredCgrListsecond = (item : any, index : number) => {
filteredCgrListsecond.value = [];
plzinfo.suppliers = item.suppliers;
gysvalue.value = item.suppliersName;
secondindex.value = index;
search()
lookshuliang()
}
const cgrvalue = ref("");
const gysvalue = ref("");
@ -1380,7 +1381,18 @@
const dateget = (res : datetype) => {
plzinfo.startTime = res.start;
plzinfo.endTime = res.end;
search()
lookshuliang()
}
const lookshuliang = () => {
let data = {
...plzinfo,
pageNo : 1
}
queryCgdList(data).then((res : any) => {
alltotal.value = res.result.total
})
}
const leftscrolltop = ref(0)

View File

@ -1,8 +1,7 @@
<template>
<view class="contain">
<view
v-show="moreindex!=-1 || topbuttontarget!=-1 || openjianhuo || opengaijia || opendata"
class="mengban" :style="opencgr||opengys||opendata ?{background:`transparent`}:{}"
<view v-show="moreindex!=-1 || topbuttontarget!=-1 || openjianhuo || opengaijia || opendata" class="mengban"
:style="opencgr||opengys||opendata ?{background:`transparent`}:{}"
@click="moreindex=-1; topbuttontarget=-1;openjianhuo=false;opengaijia=false;opendata=false;opencgr=false;opengys=false;albumlist=[]">
</view>
<!-- 没数据了遮罩 -->
@ -420,7 +419,7 @@
<view class="bottom-left" @click="chongzhi">
重置
</view>
<view class="bottom-right" @click="openselect=false">
<view class="bottom-right" @click="openselect=false;search()">
确定
<text style="font-size: 25rpx;margin-top: 5rpx;" v-if="alltotal">
{{ alltotal }}采购单
@ -431,16 +430,16 @@
采购单状态
</view>
<view class="more-statues-father">
<view :class="plzinfo.cgdType==`0,1`?`more-statues-button-target`:`more-statues-button`"
@click="plzinfo.cgdType=`0,1`;search()">
<view :class="plzinfo.status==``?`more-statues-button-target`:`more-statues-button`"
@click="plzinfo.cgdType=`0,1`;plzinfo.status='';search()">
全部
</view>
<view :class="plzinfo.cgdType==`0`?`more-statues-button-target`:`more-statues-button`"
@click="plzinfo.cgdType=`0`;search()">
<view :class="plzinfo.status==`0`?`more-statues-button-target`:`more-statues-button`"
@click="plzinfo.cgdType=`0`;plzinfo.status='0';search()">
待入库
</view>
<view :class="plzinfo.cgdType==`1`?`more-statues-button-target`:`more-statues-button`"
@click="plzinfo.cgdType=`1`;search()">
<view :class="plzinfo.status==`1`?`more-statues-button-target`:`more-statues-button`"
@click="plzinfo.cgdType=`0`;plzinfo.status='1';search()">
待完结
</view>
</view>
@ -1051,7 +1050,7 @@
import { onShow, onLoad, onHide, onPageScroll } from "@dcloudio/uni-app"
import calendar from '@/component/public/calendar.vue'
import nomessageimge from '@/pages/procurement/components/nomessage.vue';
const open = ref(0);
const typechange = ref(0);
@ -1152,12 +1151,13 @@
console.log("?????????")
filteredCgrList.value = [];
cgrvalue.value = plzinfo.cgBy;
lookshuliang()
}
const clickfilteredCgrList = (item : any) => {
filteredCgrList.value = [];
plzinfo.cgBy = item.cgBy
cgrvalue.value = plzinfo.cgBy;
search()
lookshuliang()
}
// --- ---
@ -1220,14 +1220,14 @@
filteredCgrListsecond.value = [];
gysvalue.value = "";
plzinfo.suppliers = "";
search()
lookshuliang()
}
const clickfilteredCgrListsecond = (item : any, index : number) => {
filteredCgrListsecond.value = [];
plzinfo.suppliers = item.suppliers;
gysvalue.value = item.suppliersName;
secondindex.value = index;
search()
lookshuliang()
}
const cgrvalue = ref("");
const gysvalue = ref("");
@ -1311,7 +1311,7 @@
endTime: "",
cgBy: "",
nuId: uni.getStorageSync('nuId'),
status:''
status: ''
})
const mobanplzinfo = {
pageNo: 1,
@ -1344,8 +1344,21 @@
const dateget = (res : datetype) => {
plzinfo.startTime = res.start;
plzinfo.endTime = res.end;
search()
lookshuliang()
}
const lookshuliang = () => {
let data = {
...plzinfo,
pageNo: 1
}
queryCgdList(data).then((res : any) => {
alltotal.value = res.result.total
})
}
const leftscrolltop = ref(0)
const plsbuy = ref([])
@ -1353,7 +1366,7 @@
const nomessageshow = ref(false);
const firstgetqueryCgdList = () => {
queryCgdList(plzinfo).then((res : any) => {
console.log("数据呢",res)
// console.log("",res)
plsbuy.value.push(...res.result.records)
alltotal.value = res.result.total
if (!res.result.total) {
@ -2503,7 +2516,7 @@
.middle-Y-father {
display: flex;
.middle-one {
min-width: 325rpx;
height: 450rpx;

View File

@ -1,7 +1,7 @@
<template>
<view>
<view class="home">
<image class="all-home" src="/static/index/warehouse/newhome/setting.png" mode="aspectFit"></image>
<image class="all-home" src="/static/index/warehouse/newhome/backpage.jpg" mode="aspectFit"></image>
</view>
<view class="right-title">
<image class="title-imge" src="/static/home.png" mode="aspectFit"></image>
@ -10,10 +10,10 @@
</view>
</view>
<view class="paizi tp">
<donghua width="18vw" height="18vw" :interval="300" :links="paiziarray" :playing="playall" :loop="true" />
<donghua width="15vw" height="15vw" :interval="300" :links="paiziarray" :playing="playall" :loop="true" />
</view>
<view class="jiankong tp" @click="housactive(3)">
<donghua width="17vw" height="17vw" :interval="150" :links="jiankongarray" :playing="playall"
<donghua width="15vw" height="15vw" :interval="150" :links="jiankongarray" :playing="playall"
:loop="true" />
</view>
<view class="jiankongtag tp" @click="housactive(3)">
@ -24,7 +24,7 @@
<image class="blue-imge" src="/static/index/warehouse/home/z.png" mode=""></image>
</view>
<view class="wanjie tp" @click="housactive(4)">
<donghua width="18vw" height="18vw" :interval="300" :links="wanjiearray" :playing="playall" :loop="true" />
<donghua width="17vw" height="17vw" :interval="300" :links="wanjiearray" :playing="playall" :loop="true" />
</view>
<view class="wanjietag tp" @click="housactive(4)">
<view class="blue-bgc">
@ -33,8 +33,18 @@
</view>
<image class="blue-imge" src="/static/index/warehouse/home/z.png" mode=""></image>
</view>
<view class="juzhen tp" @click="housactive(6)">
<donghua width="17vw" height="17vw" :interval="300" :links="juzhenarray" :playing="playall" :loop="true" />
</view>
<view class="juzhentag tp" @click="housactive(6)">
<view class="blue-bgc" style="background: #7BC2FF;width: 8vw;">
库房矩阵
<view class="triangle-middle" style="border-top: 0.5vw solid #7BC2FF"></view>
</view>
<image class="blue-imge" src="/static/index/warehouse/home/z.png" mode=""></image>
</view>
<view class="caigou tp" @click="housactive(0)">
<donghua width="18vw" height="18vw" :interval="150" :links="caigouarray" :playing="playall" :loop="true" />
<donghua width="16vw" height="16vw" :interval="150" :links="caigouarray" :playing="playall" :loop="true" />
</view>
<view class="caigoutag tp" @click="housactive(0)">
<view class="blue-bgc">
@ -50,7 +60,7 @@
<donghua width="11vw" height="11vw" :interval="300" :links="rukuarray" :playing="playall" :loop="true" />
</view>
<view class="jianhuo tp">
<donghua width="40vw" height="40vw" :interval="150" :links="jianhuoarray" :playing="playall" :loop="true" />
<donghua width="34vw" height="34vw" :interval="150" :links="jianhuoarray" :playing="playall" :loop="true" />
</view>
<view class="pandan tp" @click="housactive(5)">
<image src="/static/index/warehouse/newhome/count.png" mode="widthFix"></image>
@ -103,6 +113,15 @@
<script setup lang="ts">
import { ref, onMounted, reactive, onBeforeUnmount, computed, nextTick } from 'vue';
const juzhenarray =
genPaths(
'/static/index/warehouse/newhome/',
'matrix',
5, //
'png',
0, // 1
false //
)
const cararray =
genPaths(
'/static/index/warehouse/newhome/',
@ -179,7 +198,7 @@
const housactive = (index : number) => {
clickAudio.stop() // Galgame
clickAudio.play()
console.log(index)
// console.log(index)
housedex.value = index;
if (index == 0) {
navurl.value = 'pages/procurement/material'
@ -244,8 +263,8 @@
})
}
// px
const x = ref(63)
const y = ref(59)
const x = ref(77)
const y = ref(60)
// s
const duration = ref(0.7)
const easing = 'linear' // easing
@ -273,47 +292,47 @@
}
const ceshi = () => {
moveTo(21, 43, 3);
moveTo(23, 40.5, 3);
cartarget.value = 0
setTimeout(() => {
cartarget.value = 1
moveTo(21, 40, 0.5); // 6
moveTo(24.5, 38, 0.5); // 6
}, 3000);
setTimeout(() => {
cartarget.value = 2
moveTo(34, 31.5, 2); // 6
moveTo(35, 32, 2); // 6
}, 3500);
setTimeout(() => {
cartarget.value = 3
moveTo(38, 30, 0.5); // 6
moveTo(38, 29.5, 0.5); // 6
}, 5500);
setTimeout(() => {
cartarget.value = 4
moveTo(65, 39, 3); // 6
moveTo(63.5, 37.8, 3); // 6
}, 6000);
setTimeout(() => {
cartarget.value = 5
moveTo(93, 20, 3); // 6
moveTo(91, 21, 3); // 6
}, 9000);
setTimeout(() => {
cartarget.value = 6
moveTo(92, 16, 0.5); // 6
moveTo(90, 19, 0.5); // 6
}, 12000);
setTimeout(() => {
cartarget.value = 7
moveTo(91, 15, 0.5); // 6
moveTo(89, 17, 0.5); // 6
}, 12500);
setTimeout(() => {
cartarget.value = 8
moveTo(48, 0.5, 3); // 6
moveTo(48, 4, 3); // 6
}, 13000);
setTimeout(() => {
cartarget.value = 9
moveTo(-11, 35, 4); // 6
moveTo(-11, 37.5, 4); // 6
}, 16000);
setTimeout(() => {
cartarget.value = 0
moveTo(63, 59, 0.0001);
moveTo(77, 60, 0.0001);
}, 20000);
setTimeout(() => {
ceshi()
@ -344,46 +363,46 @@
}
.paizi {
width: 18vw;
height: 18vw;
width: 15vw;
height: 15vw;
position: fixed;
bottom: 0.3vw;
left: 10vw;
bottom: 3.3vw;
left: 14.8vw;
}
.jiankong {
width: 17vw;
height: 17vw;
width: 14vw;
height: 14vw;
position: fixed;
top: 1.5vw;
top: 7vw;
left: 12vw;
z-index: 50;
}
.wanjie {
width: 18vw;
height: 18vw;
width: 17vw;
height: 17vw;
position: fixed;
top: 19vw;
left: 12vw;
top: 9vw;
left: 34vw;
z-index: 50;
}
.pandan {
width: 9.3vw;
height: 9.3vw;
width: 9vw;
height: 9vw;
position: fixed;
top: 23vw;
left: 29vw;
top: 20.5vw;
left: 38vw;
z-index: 50;
}
.caigou {
width: 18vw;
height: 18vw;
width: 16vw;
height: 16vw;
position: fixed;
top: 34vw;
left: 37vw;
left: 39vw;
z-index: 50;
}
@ -391,8 +410,8 @@
width: 11vw;
height: 11vw;
position: fixed;
bottom: 9vw;
right: 17vw;
bottom: 10.5vw;
right: 19vw;
z-index: 50;
}
@ -400,17 +419,17 @@
width: 11vw;
height: 11vw;
position: fixed;
bottom: 20.5vw;
right: 2.5vw;
bottom: 20vw;
right: 6vw;
z-index: 50;
}
.return {
width: 7vw;
height: 7vw;
width: 6.5vw;
height: 6.5vw;
position: fixed;
bottom: 8.8vw;
right: 25vw;
bottom: 10.5vw;
right: 26vw;
z-index: 50;
}
@ -418,26 +437,26 @@
width: 7vw;
height: 7vw;
position: fixed;
bottom: 20vw;
right: 10vw;
bottom: 19vw;
right: 14vw;
z-index: 50;
}
.jianhuo {
width: 40vw;
height: 40vw;
width: 34vw;
height: 34vw;
position: fixed;
top: 0vw;
right: 23vw;
top: 8vw;
right: 19vw;
z-index: 50;
}
.picking {
width: 12vw;
height: 12vw;
width: 10vw;
height: 10vw;
position: fixed;
top: 24vw;
right: 27vw;
top: 28.8vw;
right: 28vw;
z-index: 50;
}
@ -485,12 +504,36 @@
}
}
.juzhen {
width: 17vw;
height: 17vw;
position: fixed;
top: 20vw;
left: 19vw;
z-index: 50;
}
.juzhentag {
position: fixed;
top: 20vw;
left: 24vw;
z-index: 51;
.blue-imge {
position: absolute;
top: 2.2vw;
left: 50%;
transform: translateX(-50%);
width: 3vw;
height: 5vw;
}
}
.gray-bgc {
background: #e4efff;
border: 1rpx solid #60a1ff;
width: 7.5vw;
width: 8vw;
height: 2.8vw;
font-size: 26rpx;
font-size: 28rpx;
display: flex;
justify-content: center;
align-items: center;
@ -539,7 +582,7 @@
.jiankongtag {
position: fixed;
top: 2.8vw;
top: 8vw;
left: 16vw;
z-index: 51;
@ -555,7 +598,7 @@
.pickingtag {
position: fixed;
top: 24vw;
top: 28vw;
left: 67vw;
z-index: 51;
@ -571,8 +614,8 @@
.wanjietag {
position: fixed;
top: 22vw;
left: 18vw;
top: 11vw;
left: 38.5vw;
z-index: 51;
.blue-imge {
@ -587,8 +630,8 @@
.caigoutag {
position: fixed;
top: 36vw;
left: 42vw;
top: 35vw;
left: 43vw;
z-index: 51;
.blue-imge {
@ -603,22 +646,22 @@
.pandantag {
position: fixed;
top: 22vw;
left: 35.5vw;
top: 21vw;
left: 44vw;
z-index: 51;
}
.returntag {
position: fixed;
top: 32.5vw;
left: 84vw;
top: 34vw;
left: 81vw;
z-index: 51;
}
.leadtag {
position: fixed;
top: 44vw;
left: 71vw;
left: 72vw;
z-index: 51;
}

308
pages/login/index.vue Normal file
View File

@ -0,0 +1,308 @@
<template>
<view class="all">
<view class="all-title">
<view class="rentou">
<view class="rentou-left">
<image class="rentou-left-img" src="/static/shouye/old.png" />
</view>
<view class="rentou-right">
{{ uni.getStorageSync('realname') }}
</view>
</view>
<view class="lingdang">
<image class="lingdang-img" src="/static/shouye/lingdang.png" />
<view class="hongdian"></view>
</view>
</view>
<view class="all-menu">
<view v-for="(item,index) in menuarray" :key="index" @click="clickleftmenu(index)">
<view class="menu-one" :style="leftarraytarget===index?{backgroundColor:`#fff`}:{}">
<image class="menu-one-img" :src="`/static/shouye/menu${index}.png`" />
</view>
</view>
</view>
<exit :show="exitshow" @close="exitshow=false" />
<view class="right-content">
<view class="yanfazhong" v-show="!leftarraytarget">
研发中...
</view>
<view class="yanfazhong" v-show="leftarraytarget==3">
研发中...
</view>
<view class="componentall" v-show="leftarraytarget==4">
<menusettings :isShow="leftarraytarget==4" />
</view>
<view class="componentall" v-show="leftarraytarget==1 || leftarraytarget==2">
<scroll-view scroll-y class="componentall" >
<!-- 阻止scroll对容器样式的影响 {{item.nuName}}-->
<view class="card-father">
<view class="card"
:style="{border: cardtarget === index? '4rpx dashed #1083F8': '4rpx solid transparent',backgroundColor:cardtarget === index?`#F9FCFF`:``}"
v-for="(item,index) in cardarray" :key="index" @click="clickcard(index)">
<view class="card-title">
{{ item.areaFlag=="1"?`护理单元`:`库房` }}
</view>
<view style="display: flex;margin-top: 5%;">
<view style="width: 50%;">
<view style="color: #888888;">
机构名称
</view>
<view class="card-contect">
{{ item.nuName }}
</view>
</view>
<view style="width: 50%;" v-if="item.areaFlag==`1`">
<view style="color: #888888;">
状态
</view>
<view class="card-contect">
{{ item.elderId ? `已入驻`:`未入驻` }}
</view>
</view>
</view>
<view style="display: flex;margin-top: 5%;">
<view style="width: 50%;">
<view style="color: #888888;">
摄影设备
</view>
<view class="card-contect">
{{ item.cameraInfo? `运行中`:`离线` }}
</view>
</view>
<view style="width: 50%;" v-if="item.areaFlag==`1`">
<view style="color: #888888;">
老人姓名
</view>
<view class="card-contect">
{{ item.elderInfo?.name }}
</view>
</view>
<view style="width: 50%;" v-if="item.areaFlag==`3`">
<view style="color: #888888;">
库管姓名
</view>
<view class="card-contect">
{{ item.fzr }}
</view>
</view>
</view>
</view>
</view>
</scroll-view>
</view>
</view>
</view>
</template>
<script setup lang="ts">
import { ref, onMounted, onBeforeUnmount, computed, nextTick, reactive } from 'vue';
import { onShow, onLoad, onHide, onBackPress } from "@dcloudio/uni-app"
import exit from "@/component/public/exit.vue"
import menusettings from '@/pages/watch/settings/menusettings.vue'
import { queryPadPageList } from '@/pages/watch/api/lunpan.js'
const menuarray = ref(["", "", "", "", "", ""])
const leftarraytarget = ref(0);
//
onBackPress(() => {
return true; //
})
const leftMenuArray = ref([])
//
onShow(() => {
queryPadPageList().then((res => {
leftMenuArray.value = res.result.records;
}))
});
const filteredMenu = (index:number) => {
return leftMenuArray.value.filter(item => Number(item.areaFlag) - 1 == index);
}
const clickcard = (index:number) => {
if(cardtarget.value === index){
jumptopage(index)
}else{
cardtarget.value = index;
}
}
const jumptopage = (index:number) => {
uni.setStorageSync('nuId', cardarray.value[index].nuId);
uni.setStorageSync('nuName', cardarray.value[index].nuName);
uni.setStorageSync('customerId', cardarray.value[index].elderInfo ? cardarray.value[index].elderInfo?.id : null);
uni.setStorageSync('NUall', cardarray.value[index]);
if (leftarraytarget.value===1) {
uni.navigateTo({
url: '/pages/NursingNew/index'
})
} else if (leftarraytarget.value===2) {
uni.navigateTo({
url: '/pages/Warehouse/warehome',
})
}
}
const exitshow = ref(false);
const cardarray = ref([])
const cardtarget = ref(-1);
const clickleftmenu = (index : number) => {
if (index === 5) {
exitshow.value = true;
return
}
cardtarget.value=-1
if(index===1){
cardarray.value = filteredMenu(0)
// console.log("??11111111",cardarray.value)
}else if(index===2){
cardarray.value = filteredMenu(2)
// console.log("??11111111",cardarray.value)
}
leftarraytarget.value = index;
}
</script>
<style scoped lang="less">
.all {
width: 100%;
height: 100vh;
background-color: #eff0f4;
.all-title {
width: 100%;
height: 13vh;
padding: 0 3vw;
display: flex;
justify-content: space-between;
align-items: flex-end;
.rentou {
height: 7vh;
border-radius: 3vw;
background-color: #E3E4E8;
display: flex;
align-items: center;
font-size: 28rpx;
.rentou-left {
height: 7vh;
width: 7vh;
border-radius: 50%;
background-color: #D6D7DF;
margin-right: 0.5vw;
position: relative;
.rentou-left-img {
position: absolute;
left: 0vw;
top: 0.8vw;
height: 7vh;
width: 7vh;
}
}
.rentou-right {
margin-right: 1vw;
}
}
.lingdang {
width: 5vh;
height: 5vh;
border-radius: 1.5vh;
background-color: #fff;
display: flex;
justify-content: center;
align-items: center;
margin-bottom: 0.5vh;
position: relative;
.lingdang-img {
width: 4vh;
height: 4vh;
margin-left: 0.2vh;
}
}
}
.right-content {
width: 88%;
margin-left: 10%;
height: 86vh;
display: flex;
justify-content: center;
align-items: center;
.yanfazhong {
font-size: 40rpx;
margin-top: -10vh;
}
}
}
.hongdian {
position: absolute;
right: 0.6vh;
top: 0.6vh;
width: 1vh;
height: 1vh;
background-color: #FF5757;
border-radius: 50%;
}
.all-menu {
position: fixed;
left: 3vw;
top: 18vh;
width: 5vw;
.menu-one {
display: flex;
align-items: center;
justify-content: center;
height: 3.8vw;
width: 3.8vw;
border-radius: 50%;
margin-top: 1.2vw;
.menu-one-img {
height: 2.3vw;
width: 2.3vw;
margin-left: 0.1vw;
}
}
}
.componentall{
width: 100%;
height: 100%;
// background-color: red;
}
.card-father{
width: 100%;
height: 100%;
display: flex;
flex-wrap: wrap;
.card{
width: 32%;
margin-left: 1%;
height: 32%;
margin-top: 1%;
background-color: #fff;
border-radius: 23rpx;
// padding: 5vw;
padding: 1.5vw 2vw;
.card-title{
font-size: 35rpx;
font-weight: 600;
}
.card-contect{
font-size: 32rpx;
}
}
}
</style>

View File

@ -259,7 +259,7 @@
if (!jumpFirst.value) {
if (loading.value === 2) {
setTimeout(() => {
jumpTo(`/pages/watch/index`)
jumpTo(`/pages/login/index`)
}, 500)
} else {
loading.value++
@ -278,7 +278,7 @@
selectserve.value = true;
} else {
setTimeout(() => {
jumpTo(`/pages/watch/index`)
jumpTo(`/pages/login/index`)
}, 500)
}
}
@ -287,7 +287,7 @@
uni.setStorageSync('orgListName', item.departName);
uni.setStorageSync('orgListCode', item.orgCode);
setTimeout(() => {
jumpTo(`/pages/watch/index`)
jumpTo(`/pages/login/index`)
}, 500)
}
@ -329,7 +329,7 @@
if (uni.getStorageSync('token') && uni.getStorageSync('token') !== 1) {
if (loading.value === 2) {
setTimeout(() => {
jumpTo(`/pages/watch/index`)
jumpTo(`/pages/login/index`)
}, 500)
} else {
loading.value++
@ -359,7 +359,7 @@
monitorModule.cloudLoginIn(loginfo, (r) => {
if (loading.value === 2) {
setTimeout(() => {
jumpTo(`/pages/watch/index`)
jumpTo(`/pages/login/index`)
}, 500)
} else {
loading.value++

View File

@ -30,8 +30,8 @@
<view class="heng-blue" :style="{ left: `${selectType === 0 ? 18 : 18 + selectType * 30}%` }">
</view>
</view>
<view class="right-button" @click="addshow = true">
<view class="right-button" @click="addshow = true">
<image src="/static/index/requestform/addnew.png" />
<view>
新增
@ -51,7 +51,7 @@
<view class="all-contain" v-show=" !nomessageshow">
<scroll-view scroll-y="true" scroll-with-animation class="all-scroll" :scroll-top="leftscrolltop"
@scrolltolower="plsbuytolower" :lower-threshold="200">
@scrolltolower="plsbuytolower" :lower-threshold="200">
<view class="scroll-items">
<view class="scroll-item" v-for="(item,index) in plsbuy" :key="index" @click="pdurl(item)">
<view class="scroll-item-title">
@ -132,8 +132,11 @@
<view class="bottom-left" @click="chongzhi">
重置
</view>
<view class="bottom-right" @click="openselect=false">
<view class="bottom-right" @click="openselect=false;firstgetqueryCgdList()">
确定
<text style="font-size: 25rpx;margin-top: 5rpx;" v-if="alltotal">
{{ alltotal }}采购单
</text>
</view>
</view>
<view class="more-title">
@ -141,21 +144,21 @@
</view>
<view class="more-statues-father">
<view :class="plzinfo.pddType==``?`more-statues-button-target`:`more-statues-button`"
@click="plzinfo.pddType=``;firstgetqueryCgdList()">
@click="plzinfo.pddType=``;firstgetqueryCgdList();selectType=0">
全部
</view>
<view :class="plzinfo.pddType==`1`?`more-statues-button-target`:`more-statues-button`"
@click="plzinfo.pddType=`1`;firstgetqueryCgdList()">
@click="plzinfo.pddType=`1`;firstgetqueryCgdList();selectType=1">
盘点中
</view>
<view :class="plzinfo.pddType==`2`?`more-statues-button-target`:`more-statues-button`"
@click="plzinfo.pddType=`2`;firstgetqueryCgdList()">
@click="plzinfo.pddType=`2`;firstgetqueryCgdList();selectType=2">
已完成
</view>
</view>
<!-- <view class="more-select" style="margin-top: 10rpx;">
<!-- <view class="more-select" style="margin-top: 10rpx;">
盘点单号
</view>
<view class="more-time-select" @click="pandian=true">
@ -245,13 +248,13 @@
</view>
</view>
<tanchuang :show="addshow" font="确定要新增盘点单吗" @back="addshow=false;" @right="addnew"> </tanchuang>
<errorshow :show="openmessage" :font="errormessage" @close="openmessage=false" />
<errorshow :show="openmessage" :font="errormessage" @close="openmessage=false" />
</template>
<script setup lang="ts">
import { ref, onMounted, onBeforeUnmount, computed, nextTick, watch, reactive } from 'vue';
import { onShow, onLoad, onHide, onPageScroll } from "@dcloudio/uni-app"
import { queryPddList, queryPddStartByList,addPddMain } from './api/lunpan.js'
import { queryPddList, queryPddStartByList, addPddMain } from './api/lunpan.js'
import nomessage from './components/nomessage.vue'
import defaultr from './components/default.vue'
import calendar from '@/component/public/calendar.vue'
@ -266,12 +269,12 @@
const getSelectList = () => {
queryPddStartByList({nuId:uni.getStorageSync('nuId')}).then((res : any) => {
queryPddStartByList({ nuId: uni.getStorageSync('nuId') }).then((res : any) => {
cgrlist.value = res.result;
})
}
onShow(()=>{
onShow(() => {
chongzhi()
})
onMounted(() => {
@ -285,7 +288,8 @@
const dateget = (res : datetype) => {
plzinfo.startTime = res.start;
plzinfo.endTime = res.end;
firstgetqueryCgdList()
// firstgetqueryCgdList()
lookshuliang()
}
const lanjie = ref(false);
@ -342,7 +346,7 @@
* changeName - 防抖搜索0.3 秒后无再次输入才执行
*/
function changeName(res : any) {
console.log("0000",res)
console.log("0000", res)
if (!res.detail.value) {
plzinfo.pddStartBy = "";
filteredCgrList.value = [];
@ -359,10 +363,10 @@
// 300ms
debounceTimer = setTimeout(() => {
if (!keyword) {
filteredCgrList.value = cgrlist.value.slice()
return
}
@ -380,13 +384,24 @@
// console.log("?????????")
filteredCgrList.value = [];
peoplename.value = plzinfo.pddStartBy;
firstgetqueryCgdList()
lookshuliang()
}
const clickfilteredCgrList = (item : any) => {
filteredCgrList.value = [];
plzinfo.pddStartBy = item.name
peoplename.value = plzinfo.pddStartBy;
firstgetqueryCgdList()
lookshuliang()
}
const lookshuliang = () => {
let data = {
...plzinfo,
pageNo: 1
}
queryPddList(data).then((res : any) => {
alltotal.value = res.result.total
})
}
const pandian = ref(false)
const pandianclick = () => {
@ -421,6 +436,7 @@
plzinfo.startTime = "";
plzinfo.pddStartBy = ""
plzinfo.endTime = "";
peoplename.value = ""
changetype(0)
setTimeout(() => {
@ -456,8 +472,8 @@
// '1,2' ->
const arr = Array.from(set).filter(Boolean).sort((a, b) => a - b);
plzinfo.pydOrPkd = arr.length ? arr.join(',') : '';
firstgetqueryCgdList()
lookshuliang()
// firstgetqueryCgdList()
}
const nomessageshow = ref(false);
const leftscrolltop = ref(0)
@ -480,7 +496,7 @@
cannomessage.value = false
plsbuy.value = []
plsbuy.value.push(...res.result.records)
// plsbuy.value.push(...res.result.records)
// plsbuy.value.push(...res.result.records)
alltotal.value = res.result.total
if (res.result.records.length < plzinfo.pageSize) {
@ -505,7 +521,7 @@
if (!plzinfo.canpull) return
queryPddList(plzinfo).then((res : any) => {
plsbuy.value.push(...res.result.records)
console.log("????",plzinfo,res.result.records)
console.log("????", plzinfo, res.result.records)
alltotal.value = res.result.total
if (res.result.records.length < plzinfo.pageSize) {
plzinfo.canpull = false;
@ -521,25 +537,25 @@
}
const errormessage = ref("")
const openmessage = ref(false)
const addnew = () =>{
addPddMain({nuId:uni.getStorageSync('nuId')}).then((res:any)=>{
console.log("res",res.result)
if(res.success){
const addnew = () => {
addPddMain({ nuId: uni.getStorageSync('nuId') }).then((res : any) => {
console.log("res", res.result)
if (res.success) {
addshow.value = false
chongzhi();
let pddobj = res.result;
console.log(pddobj)
uni.navigateTo({url:'/pages/procurement/addtory?pddobj='+JSON.stringify(pddobj)})
}else{
uni.navigateTo({ url: '/pages/procurement/addtory?pddobj=' + JSON.stringify(pddobj) })
} else {
openmessage.value = true
errormessage.value = res.message
}
})
}
const pdurl = (v)=>{
const pdurl = (v) => {
console.log(v)
uni.navigateTo({url:'/pages/procurement/addtory?pddobj='+JSON.stringify(v)})
uni.navigateTo({ url: '/pages/procurement/addtory?pddobj=' + JSON.stringify(v) })
}
</script>
@ -1157,6 +1173,7 @@
}
}
}
.input-next {
position: fixed;
bottom: 850rpx;
@ -1169,14 +1186,14 @@
box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
padding: 40rpx 30rpx;
z-index: 9999;
.next-father {
color: #999;
margin: 10rpx;
font-size: 28rpx;
}
}
.nomessage {
display: flex;
justify-content: center;

View File

@ -0,0 +1,372 @@
<template>
<scroll-view scroll-y class="index-content-other" :style="transition?{opacity: `1`}:{opacity: `0`}">
<view class="array-father">
<view v-for="(item,index) in iconsArray.slice(0,3)" :key="index" class="item" @click="jumpToTarget(index)">
<view class="left-item">
<image class="left-icon" :src="`/static/index/settings/${index}.png`" />
<view class="left-font">
{{item}}
</view>
</view>
<view class="right-item">
<image class="right-icon" :src="`/static/index/settings/00.png`" />
</view>
</view>
</view>
<view class="array-father">
<view v-for="(item,index) in iconsArray.slice(3,5)" :key="index" class="item"
@click="jumpToTarget(index+3)">
<view class="left-item">
<image class="left-icon" :src="`/static/index/settings/${index+3}.png`" />
<view class="left-font">
{{item}}
</view>
</view>
<view class="right-item">
<image class="right-icon" :src="`/static/index/settings/00.png`" />
</view>
</view>
</view>
<view class="array-father">
<view v-for="(item,index) in iconsArray.slice(5,8)" :key="index" class="item"
@click="jumpToTarget(index+5)">
<view class="left-item">
<image class="left-icon" :src="`/static/index/settings/${index+5}.png`" />
<view class="left-font">
{{item}}
</view>
</view>
<view class="right-item">
<image class="right-icon" :src="`/static/index/settings/00.png`" />
</view>
</view>
</view>
<!-- <view class="bottom-button" @click="exitshow=true">
注销登录
</view> -->
<view class="text-center">
<view>{{ uni.getStorageSync('orgListName') }}</view>
</view>
<!-- <exit :show="exitshow" @close="exitshow=false" /> -->
<reset :show="resetshow" @close="resetshow=false" />
<zy-update ref="zyupgrade" :noticeflag="true" theme="blue" :h5preview="false" oldversion="1.0.0"
:appstoreflag="true" :autocheckupdate="true" @showupdateTips="noNeed"></zy-update>
<!-- 弹出层 -->
<view v-if="openany" class="popup-any" :style="animation?{opacity:1}:{opacity:0}">
<view class="mask" @touchmove.prevent @click="openany=false"></view>
<view class="box-any" @touchmove.prevent>
<view class="title-left">
<!-- <image class="back-img" src="/static/left.png" @click="openany=false"></image> -->
<view v-if="!opentype" class="back-font">NU护理单元隐私信息保护政策</view>
<view v-if="opentype" class="back-font">NU护理单元用户服务协议</view>
</view>
<twoseven v-if="!opentype" />
<oneseven v-if="opentype" />
</view>
</view>
<!-- </view> -->
</scroll-view>
<view class="bg-mask" v-if="selectserve">
<view @click.stop class="white-select">
<view class="big-font">
请选择您的机构
</view>
<view class="">
<view class="small-father">
<view class="small-select"
:style="serverUrl==item.serverUrl?{color:`#0083FF`,borderColor:`#0083FF`}:{}"
v-for="(item,index) in allserve" @click="changeServe(item)">
{{ item.departName }}
</view>
</view>
</view>
</view>
</view>
</template>
<script setup lang="ts">
import { ref, onMounted, watch, nextTick } from 'vue'
import exit from "@/component/public/exit.vue"
import reset from "@/component/public/reset.vue"
import ZyUpdate from '@/component/zy-upgrade/zy-upgrade.vue'
import oneseven from '@/pages/login/oneseven.vue'
import twoseven from '@/pages/login/twoseven.vue'
const zyupgrade = ref(null);
const issay = ref(false)
const openany = ref(false);
const opentype = ref(false);
// const exitshow = ref(false);
const resetshow = ref(false);
const emit = defineEmits(['jump'])
// const props = defineProps({ isShow: { type: Boolean, required: true } })
const iconsArray = ref(["雷达扫描", "扫码添加", "手动录入", "修改密码", "切换机构", "检查更新", "用户协议", "隐私政策"])
const transition = ref(true)
const uuid = ref("")
const selectserve = ref(false)
const allserve = ref(uni.getStorageSync('orgList'))
const changeServe = (item : any) => {
uni.setStorageSync('serverUrl', item.serverUrl);
uni.setStorageSync('orgListName', item.departName);
uni.setStorageSync('orgListCode', item.orgCode);
uni.showToast({
title: '切换机构成功',
icon: 'success', //
duration: 2000 //
});
selectserve.value = false;
// setTimeout(() => {
// jumpTo(`/pages/watch/index`)
// }, 500)
}
const props = defineProps({
isShow: {
type: Boolean,
required: true,
},
});
//
watch(
() => props.isShow,
(newVal, oldVal) => {
if (!oldVal && newVal) {
transition.value = false
setTimeout(() => (transition.value = true), 50)
}
}
)
const animation = ref(false);
const serverUrl = ref("")
const jumpToTarget = (index : number) => {
switch (index) {
case 0:
uni.navigateTo({
url: '/pages/watch/settings/leida'
})
break
case 1:
uni.navigateTo({
url: '/pages/watch/settings/saoma'
})
break
case 2:
uni.navigateTo({
url: '/pages/watch/settings/input'
})
break
case 3:
resetshow.value = true
break
case 4:
if (allserve.value.length == 1) {
uni.showToast({
title: `您目前只绑定了一个机构。如需切换,请先申请新的机构。`,
icon: 'none', //
duration: 2000 //
});
} else {
serverUrl.value = uni.getStorageSync('serverUrl')
selectserve.value = true;
// console.log("!!!!", allserve.value)
}
break
case 5:
issay.value = true;
zyupgrade.value?.check_update()
break
case 6:
openany.value = true;
opentype.value = true;
animation.value = false;
setTimeout(() => {
animation.value = true;
}, 50)
break
case 7:
openany.value = true;
opentype.value = false;
animation.value = false;
setTimeout(() => {
animation.value = true;
}, 50)
break
}
}
const noNeed = () => {
if (issay.value) {
uni.showToast({
title: '已经是最新版了',
icon: 'none', //
duration: 2000 //
});
}
}
const goback = () => {
uni.navigateBack()
}
</script>
<style scoped lang="less">
.index-content-other {
width: 100%;
height: 100%;
transition: opacity 1s ease;
position: relative;
background-color: #EFF0F4;
}
.item {
display: flex;
align-items: center;
justify-content: space-between;
width: 100%;
height: 130rpx;
.left-item {
display: flex;
align-items: center;
margin-left: 20rpx;
.left-icon {
margin: 0 20rpx;
width: 40rpx;
height: 40rpx;
}
.left-item {}
}
.right-item {
display: flex;
align-items: center;
margin-right: 50rpx;
.right-icon {
// margin: 0 20rpx;
width: 15rpx;
height: 30rpx;
}
}
}
.array-father {
background-color: rgba(255, 255, 255, 0.6);
width: 93%;
margin-left: 2%;
border-radius: 30rpx;
margin-top: 30rpx;
}
.popup-any {
position: fixed;
inset: 0;
z-index: 999;
/* 初始透明度 */
opacity: 0;
/* 播放动画:名称 fadeIn时长 0.5s,缓动函数 ease保持最后状态 */
transition: opacity 0.5s ease;
backdrop-filter: blur(1rpx);
background-color: rgba(236, 237, 241, 0.4);
/* 添加毛玻璃效果 */
z-index: 999;
}
.mask {
position: absolute;
inset: 0;
}
.box-any {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 1000rpx;
height: 1300rpx;
background: #fff;
border-radius: 50rpx;
overflow: hidden;
display: flex;
flex-direction: column;
padding: 65rpx 60rpx;
}
.title-left {
display: flex;
align-items: center;
justify-content: center;
.back-font {
font-size: 35rpx;
font-weight: 600;
}
}
.text-center {
margin-top: 40rpx;
height: 60rpx;
width: 100%;
display: flex;
justify-content: center;
}
.bg-mask {
position: fixed;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
background: rgba(0, 0, 0, 0.3);
backdrop-filter: blur(5rpx);
z-index: 998;
display: flex;
justify-content: center;
align-items: center;
.white-select {
display: flex;
justify-content: center;
align-items: center;
background-color: #fff;
width: 1200rpx;
height: 1200rpx;
border-radius: 30rpx;
flex-direction: column;
.big-font {
font-size: 35rpx;
}
.small-father {
display: flex;
align-items: center;
flex-wrap: wrap;
flex-direction: column;
}
.small-select {
display: flex;
justify-content: center;
align-items: center;
width: 600rpx;
height: 200rpx;
margin-top: 50rpx;
padding: 30rpx;
border-radius: 30rpx;
border: 2rpx solid;
font-size: 32rpx;
}
}
}
</style>

Binary file not shown.

After

Width:  |  Height:  |  Size: 124 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

BIN
static/shouye/lingdang.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

BIN
static/shouye/menu0.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

BIN
static/shouye/menu1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

BIN
static/shouye/menu2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

BIN
static/shouye/menu3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
static/shouye/menu4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

BIN
static/shouye/menu5.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

BIN
static/shouye/old.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View File

@ -574,7 +574,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
)
]);
}
const camera = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["styles", [_style_0]], ["__file", "D:/项目/hldy_app_mini/pages/camera.nvue"]]);
const camera = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["styles", [_style_0]], ["__file", "D:/hldy_app_mini/pages/camera.nvue"]]);
export {
camera as default
};

View File

@ -577,7 +577,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
)
]);
}
const fullcamera = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["styles", [_style_0]], ["__file", "D:/项目/hldy_app_mini/pages/fullcamera.nvue"]]);
const fullcamera = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["styles", [_style_0]], ["__file", "D:/hldy_app_mini/pages/fullcamera.nvue"]]);
export {
fullcamera as default
};