修改了大量的样式

This commit is contained in:
Teng 2026-03-03 14:51:42 +08:00
parent c8dd8565cd
commit 6db4d8bb64
18 changed files with 885 additions and 568 deletions

View File

@ -4,7 +4,7 @@
<view> <view>
<view class="addall" v-if="show" :style="style"> <view class="addall" v-if="show" :style="style">
<image class="addallimge" v-if="icons" src="/static/error.png" mode="aspectFill"></image> <image class="addallimge" v-if="icons" src="/static/error.png" mode="aspectFill"></image>
<view class="addallfont">{{ font }}</view> <view class="addallfont">{{font}}</view>
<view class="qd" @click="onClose">确定</view> <view class="qd" @click="onClose">确定</view>
</view> </view>
@ -61,7 +61,8 @@
} }
.addallfont { .addallfont {
width: 23vw; // margin: 0 auto;
max-width: 23vw;
font-weight: 400; font-weight: 400;
font-size: 1.3vw; font-size: 1.3vw;
color: #888888; color: #888888;
@ -70,6 +71,7 @@
margin-bottom: 4vw; margin-bottom: 4vw;
text-align: center; text-align: center;
overflow-wrap: break-word; overflow-wrap: break-word;
// background-color: red;
} }
.qd { .qd {

View File

@ -278,6 +278,7 @@
position: absolute; position: absolute;
top: 0; top: 0;
right: 0.8vw; right: 0.8vw;
// background-color: red;
>view { >view {
width: 4.5vw; width: 4.5vw;
@ -300,9 +301,9 @@
width: 2.4vw; width: 2.4vw;
height: 2.4vw; height: 2.4vw;
position: absolute; position: absolute;
top: 65%; top: 100%;
transform: translateY(-50%); // transform: translateY(-50%);
right: 0.6vw; right: 0.4vw;
} }
} }
@ -517,7 +518,7 @@
width: 615rpx; width: 615rpx;
height: 365rpx; height: 365rpx;
margin-left: 20rpx; margin-left: 20rpx;
margin-bottom: 15rpx; margin-bottom: 23rpx;
.carditem { .carditem {
@ -587,7 +588,7 @@
width: 2rpx; width: 2rpx;
height: 50rpx; height: 50rpx;
background-color: #C9C9C9; background-color: #C9C9C9;
margin: 0 40rpx; margin: 0 30rpx;
margin-top: 10rpx; margin-top: 10rpx;
} }
} }
@ -603,7 +604,7 @@
background-color: #fff; background-color: #fff;
border-radius: 30rpx; border-radius: 30rpx;
margin-left: 20rpx; margin-left: 20rpx;
margin-bottom: 15rpx; margin-bottom: 23rpx;
padding: 0 30rpx; padding: 0 30rpx;
position: relative; position: relative;
// background-color: red; // background-color: red;

View File

@ -1080,7 +1080,7 @@
.right-contain { .right-contain {
width: 100%; width: 100%;
height: 97%; height: 98%;
margin-top: 20rpx; margin-top: 20rpx;
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
@ -1096,23 +1096,23 @@
// padding-bottom: 80rpx; // padding-bottom: 80rpx;
.right-one-white{ .right-one-white{
width: 592rpx; width: 615rpx;
height: 365rpx; height: 365rpx;
border: 1rpx solid #c9c9c9; border: 1rpx solid #c9c9c9;
background-color: #fff; background-color: #fff;
border-radius: 30rpx; border-radius: 30rpx;
margin-left: 20rpx; margin-left: 20rpx;
margin-bottom: 15rpx; margin-bottom: 23rpx;
padding: 0 30rpx; padding: 0 30rpx;
position: relative; position: relative;
// background-color: #fff; // background-color: #fff;
} }
.right-one { .right-one {
width: 592rpx; width: 615rpx;
height: 365rpx; height: 365rpx;
margin-left: 20rpx; margin-left: 20rpx;
margin-bottom: 15rpx; margin-bottom: 23rpx;
background-color: #fff; background-color: #fff;
border-radius: 30rpx; border-radius: 30rpx;
display: flex; display: flex;
@ -1265,8 +1265,8 @@
.bignomessage{ .bignomessage{
position: fixed; position: fixed;
top: 8.5vh; top: 8.5vh;
left: 9.8vw; left: 9.4vw;
width: 88.2vw; width: 89vw;
height: 89vh; height: 89vh;
z-index: 100; z-index: 100;
background-color: #fff; background-color: #fff;
@ -1283,7 +1283,7 @@
view { view {
text-align: center; text-align: center;
margin-top: 1vw; margin-top: -2vw;
font-weight: 300; font-weight: 300;
font-size: 1.5vw; font-size: 1.5vw;
color: #555555; color: #555555;

View File

@ -947,8 +947,8 @@
.bignomessage{ .bignomessage{
position: fixed; position: fixed;
top: 8.5vh; top: 8.5vh;
left: 9.8vw; left: 9.4vw;
width: 88.2vw; width: 89vw;
height: 89vh; height: 89vh;
z-index: 100; z-index: 100;
background-color: #fff; background-color: #fff;
@ -965,7 +965,7 @@
view { view {
text-align: center; text-align: center;
margin-top: 1vw; margin-top: -2vw;
font-weight: 300; font-weight: 300;
font-size: 1.5vw; font-size: 1.5vw;
color: #555555; color: #555555;

View File

@ -490,6 +490,12 @@
<view class="left-menu-father"> <view class="left-menu-father">
<scroll-view scroll-y="true" scroll-with-animation class="left-menu-scroll" :scroll-top="leftscrolltop" <scroll-view scroll-y="true" scroll-with-animation class="left-menu-scroll" :scroll-top="leftscrolltop"
@scrolltolower="plsbuytolower" :lower-threshold="400"> @scrolltolower="plsbuytolower" :lower-threshold="400">
<view class="haventmessage" v-if="shownomessage">
<view class="que">
<image src="/static/index/procurement/que.png" mode="aspectFill"></image>
<view>暂无数据</view>
</view>
</view>
<view class="pls-card" v-for="(v,i) in plsbuy" :key='i' @click="clickLeftMenu(i,v)" :style="{ <view class="pls-card" v-for="(v,i) in plsbuy" :key='i' @click="clickLeftMenu(i,v)" :style="{
borderColor: i === lefttarget ? '#0f9fff' : '', borderColor: i === lefttarget ? '#0f9fff' : '',
}"> }">
@ -583,19 +589,19 @@
</view> </view>
</view> </view>
</view> </view>
<view class="pls-card center" v-if="plsbuy.length===1"> <view class="pls-card center" v-if="plsbuy.length===1&&!shownomessage">
<view class="que"> <view class="que">
<image src="/static/index/procurement/que.png" mode="aspectFill"></image> <image src="/static/index/procurement/que.png" mode="aspectFill"></image>
<view>暂无数据</view> <view>暂无数据</view>
</view> </view>
</view> </view>
<view class="pls-card center" v-if="plsbuy.length===1"> <view class="pls-card center" v-if="plsbuy.length===1&&!shownomessage">
<view class="que"> <view class="que">
<image src="/static/index/procurement/que.png" mode="aspectFill"></image> <image src="/static/index/procurement/que.png" mode="aspectFill"></image>
<view>暂无数据</view> <view>暂无数据</view>
</view> </view>
</view> </view>
<view class="pls-card center" v-if="plsbuy.length===2"> <view class="pls-card center" v-if="plsbuy.length===2&&!shownomessage">
<view class="que"> <view class="que">
<image src="/static/index/procurement/que.png" mode="aspectFill"></image> <image src="/static/index/procurement/que.png" mode="aspectFill"></image>
<view>暂无数据</view> <view>暂无数据</view>
@ -606,6 +612,12 @@
</view> </view>
<!-- <view class="white-zhezhao"></view> --> <!-- <view class="white-zhezhao"></view> -->
<view class="contain-right"> <view class="contain-right">
<view class="contain-right-nomessage center" v-if="shownomessage">
<view class="que">
<image src="/static/index/procurement/que.png" mode="aspectFill"></image>
<view>暂无数据</view>
</view>
</view>
<view class="contain-right-father"> <view class="contain-right-father">
<view class="contain-right-title"> <view class="contain-right-title">
<view class="left-top-tags"> <view class="left-top-tags">
@ -1368,7 +1380,7 @@
}) })
} }
const leftscrolltop = ref(0) const leftscrolltop = ref(0)
const shownomessage = ref(false)
const plsbuy = ref([]) const plsbuy = ref([])
const alltotal = ref(0); const alltotal = ref(0);
const nomessageshow = ref(false); const nomessageshow = ref(false);
@ -1530,6 +1542,11 @@
plzinfo.pageNo = 1; plzinfo.pageNo = 1;
plsbuy.value = []; plsbuy.value = [];
queryCgdList(plzinfo).then((res : any) => { queryCgdList(plzinfo).then((res : any) => {
if (res.result.records.length) {
shownomessage.value = false;
} else {
shownomessage.value = true;
}
plsbuy.value.push(...res.result.records) plsbuy.value.push(...res.result.records)
alltotal.value = res.result.total alltotal.value = res.result.total
if (res.result.records.length) { if (res.result.records.length) {
@ -2462,6 +2479,7 @@
overflow: hidden; overflow: hidden;
background-color: #fff; background-color: #fff;
border-radius: 30rpx; border-radius: 30rpx;
position: relative;
.contain-right-title { .contain-right-title {
width: 100%; width: 100%;
@ -3549,4 +3567,23 @@
justify-content: center; justify-content: center;
align-items: center; align-items: center;
} }
.haventmessage {
width: 100%;
height: 100%;
background-color: #fff;
display: flex;
justify-content: center;
align-items: center;
border-radius: 30rpx;
}
.contain-right-nomessage {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: #fff;
border-radius: 30rpx;
z-index: 100;
}
</style> </style>

View File

@ -862,7 +862,7 @@
z-index: 4; z-index: 4;
} }
.title-card-two{ .title-card-two{
width: 33vw; width: 33.6vw;
height: 12vw; height: 12vw;
border-radius: 1.6vw; border-radius: 1.6vw;
background-color: #FFFFFF; background-color: #FFFFFF;
@ -1358,7 +1358,7 @@
.tittop { .tittop {
height: 2vw; height: 2vw;
font-weight: 400; font-weight: 400;
font-size: 1.4vw; font-size: 1.5vw;
color: #333333; color: #333333;
display: flex; display: flex;
align-items: center; align-items: center;

View File

@ -74,7 +74,7 @@
</view> </view>
</view> </view>
<view class="jianhuo-jianpan" style="right: 55rpx;bottom: 160rpx;"> <view class="jianhuo-jianpan" style="right: 110rpx;bottom: 200rpx;">
<view style="display: flex;"> <view style="display: flex;">
<view class="gray-button-jianpan" @click="press('1')"> <view class="gray-button-jianpan" @click="press('1')">
1 1
@ -132,7 +132,7 @@
{{showvalue.wlName}} {{showvalue.wlName}}
</view> </view>
<view style="display: flex;justify-content: space-between;width: 100%;"> <view style="display: flex;justify-content: space-between;width: 100%;">
<view style="font-weight: 600;font-size: 30rpx;"> <view style="font-weight: 600;font-size: 35rpx;">
物料信息 物料信息
</view> </view>
<view style="font-weight: 600;font-size: 40rpx;color: #555555;"> <view style="font-weight: 600;font-size: 40rpx;color: #555555;">
@ -184,10 +184,10 @@
</view> </view>
</view> </view>
</view> </view>
<view style="width: 95%;height: 0.5rpx; background-color: #eff1f3;margin-top: 10rpx;margin-bottom: 5rpx;"> <view style="width: 95%;height: 0.5rpx; background-color: #d3d5d6;margin-top: 10rpx;margin-bottom: 5rpx;">
</view> </view>
<view style=""> <view style="">
<view style="font-weight: 600;font-size: 30rpx;margin-top: 10rpx;"> <view style="font-weight: 600;font-size: 35rpx;margin-top: 10rpx;">
入库信息 入库信息
</view> </view>
</view> </view>
@ -217,10 +217,10 @@
</view> </view>
</view> </view>
</view> </view>
<view style="width: 95%;height: 0.5rpx; background-color: #eff1f3;margin-top: 10rpx;margin-bottom: 5rpx;"> <view style="width: 95%;height: 0.5rpx; background-color: #d3d5d6;margin-top: 10rpx;margin-bottom: 5rpx;">
</view> </view>
<view style=""> <view style="">
<view style="font-weight: 600;font-size: 30rpx;margin-top: 10rpx;"> <view style="font-weight: 600;font-size: 35rpx;margin-top: 20rpx;">
拣货拍照 拣货拍照
</view> </view>
</view> </view>
@ -233,7 +233,7 @@
<image style="width: 100%;height: 100%;" :src="item?item:'/static/zhanwei.png'" mode="aspectFill" <image style="width: 100%;height: 100%;" :src="item?item:'/static/zhanwei.png'" mode="aspectFill"
@click="previewImage(item,index,albumlist)" /> @click="previewImage(item,index,albumlist)" />
</view> </view>
<view style="width: 40%;height: 150rpx;margin-right: 4%;margin-top: 3%;" v-if="albumlist.length<4" <view style="width: 36%;height: 138rpx;margin-right: 4%;margin-top: 3%;" v-if="albumlist.length<4"
@click="uplod(0)"> @click="uplod(0)">
<view class="moban-photo-special"> <view class="moban-photo-special">
<image style="width: 50rpx;height: 50rpx;margin-bottom: 5rpx;" <image style="width: 50rpx;height: 50rpx;margin-bottom: 5rpx;"
@ -243,11 +243,11 @@
</view> </view>
</view> </view>
</view> </view>
<view <!-- <view
style="width: 87%;height: 0.5rpx; background-color: #eff1f3;margin-top: 10rpx;margin-bottom: 5rpx;"> style="width: 40%;height: 0.5rpx;background-color: #d3d5d6;margin-top: 30rpx;margin-bottom: 5rpx;">
</view> </view> -->
</view> </view>
<view style=""> <view style="margin-top: 20rpx;">
<view style="font-weight: 600;font-size: 30rpx;"> <view style="font-weight: 600;font-size: 30rpx;">
数量 数量
</view> </view>
@ -650,6 +650,13 @@
</view> </view>
</view> </view>
<view class="contain-right"> <view class="contain-right">
<view class="contain-right-nomessage center" v-if="shownomessage">
<view class="que">
<image src="/static/index/procurement/que.png" mode="aspectFill"></image>
<view>暂无数据</view>
</view>
</view>
<view class="contain-right-father"> <view class="contain-right-father">
<view class="contain-right-title"> <view class="contain-right-title">
<view class="left-top-tags"> <view class="left-top-tags">
@ -1554,6 +1561,9 @@
} else { } else {
shownomessage.value = true; shownomessage.value = true;
} }
// if (!res.result.total) {
// nomessageshow.value = true;
// }
plsbuy.value.push(...res.result.records) plsbuy.value.push(...res.result.records)
alltotal.value = res.result.total alltotal.value = res.result.total
if (res.result.records.length) { if (res.result.records.length) {
@ -2157,7 +2167,7 @@
.statues-father { .statues-father {
margin-top: 0.5vh; margin-top: 0.5vh;
margin-bottom: 1vh; margin-bottom: 1.2vh;
width: 100%; width: 100%;
height: 5.9vh; height: 5.9vh;
display: flex; display: flex;
@ -2395,12 +2405,13 @@
.contain-right { .contain-right {
z-index: 1; z-index: 1;
height: 96.7vh; height: 96.8vh;
width: 100vw; width: 100vw;
margin-left: 20rpx; margin-left: 20rpx;
overflow: hidden; overflow: hidden;
background-color: #fff; background-color: #fff;
border-radius: 30rpx; border-radius: 30rpx;
position: relative;
.contain-right-title { .contain-right-title {
width: 100%; width: 100%;
@ -3070,18 +3081,18 @@
// } // }
.gray-button-jianpan:active { .gray-button-jianpan:active {
background: linear-gradient(to top, #00C9FF, #0076FF); background: linear-gradient(to top, #019cef, #0084fa);
color: #fff; color: #fff;
font-size: 44rpx; font-size: 44rpx;
font-weight: 700; font-weight: 500;
border: 1rpx solid #00C9FF; // border: 1rpx solid #00C9FF;
} }
.gray-button-jianpan { .gray-button-jianpan {
font-size: 40rpx; font-size: 40rpx;
font-weight: 600; font-weight: 600;
background-color: #f3f5f9; // background-color: #f3f5f9;
border-radius: 45rpx; // border-radius: 45rpx;
// box-shadow: 2px 3px 6px rgba(0, 0, 0, 0.12); // box-shadow: 2px 3px 6px rgba(0, 0, 0, 0.12);
color: #555555; color: #555555;
width: 135rpx; width: 135rpx;
@ -3090,17 +3101,20 @@
display: flex; display: flex;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
margin-right: 60rpx; margin: 25rpx 25rpx 0 0;
margin-bottom: 30rpx; width: 7vw;
height: 5.5vw;
background-color: #F3F5F9;
border-radius: 40rpx;
transition: .1s; transition: .1s;
-webkit-transform-style: preserve-3d; -webkit-transform-style: preserve-3d;
-webkit-overflow-scrolling: touch; -webkit-overflow-scrolling: touch;
} }
.gray-button-jianpan-jian:active { .gray-button-jianpan-jian:active {
background: linear-gradient(to top, #00C9FF, #0076FF); background: linear-gradient(to bottom, #019cef, #0084fa);
color: #fff; color: #fff;
font-size: 44rpx; font-size: 40rpx;
font-weight: 700; font-weight: 700;
border: 1rpx solid #00C9FF; border: 1rpx solid #00C9FF;
} }
@ -3109,7 +3123,7 @@
font-size: 40rpx; font-size: 40rpx;
font-weight: 600; font-weight: 600;
background-color: #f3f5f9; background-color: #f3f5f9;
border-radius: 45rpx; border-radius: 35rpx;
// box-shadow: 2px 3px 6px rgba(0, 0, 0, 0.12); // box-shadow: 2px 3px 6px rgba(0, 0, 0, 0.12);
color: #555555; color: #555555;
width: 135rpx; width: 135rpx;
@ -3146,7 +3160,7 @@
.jianhuo-jianpan { .jianhuo-jianpan {
position: absolute; position: absolute;
right: 30rpx; right: 30rpx;
bottom: 130rpx; bottom: 110rpx;
} }
.text-anim { .text-anim {
@ -3213,8 +3227,8 @@
} }
.moban-photo { .moban-photo {
width: 40%; width: 36%;
height: 150rpx; height: 138rpx;
margin-right: 4%; margin-right: 4%;
margin-top: 3%; margin-top: 3%;
background-color: #F9F9F9; background-color: #F9F9F9;
@ -3230,8 +3244,8 @@
height: 2vw; height: 2vw;
z-index: 20; z-index: 20;
position: absolute; position: absolute;
right: 0.1vw; right: 0.3vw;
top: 0.1vw; top: 0.3vw;
border-radius: 10rpx 0.6vw 10rpx 10rpx; border-radius: 10rpx 0.6vw 10rpx 10rpx;
background: rgba(255, 255, 255, 1); background: rgba(255, 255, 255, 1);
display: flex; display: flex;
@ -3403,4 +3417,15 @@
justify-content: center; justify-content: center;
align-items: center; align-items: center;
} }
.contain-right-nomessage {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: #fff;
border-radius: 30rpx;
z-index: 100;
}
</style> </style>

View File

@ -154,7 +154,7 @@
onShow(() => { onShow(() => {
setTimeout(() => { setTimeout(() => {
playall.value = true; playall.value = true;
}, 1000) }, 1200)
zyupgrade.value?.check_update(); zyupgrade.value?.check_update();
// console.log("zzzzzzzzzzzzzzzzzzzzzzzzzzzz") // console.log("zzzzzzzzzzzzzzzzzzzzzzzzzzzz")

View File

@ -29,7 +29,7 @@
<toryitem :pddlist="pddlist" @scrolltolower="scrolltolower" :pddType="pddobj?.pddType" :status="status" <toryitem :pddlist="pddlist" @scrolltolower="scrolltolower" :pddType="pddobj?.pddType" :status="status"
@tabitem="tabitem" @right="right"></toryitem> @tabitem="tabitem" @right="right"></toryitem>
</view> </view>
<view class="submit" v-if="pddobj.pddType=='1'"> <view class="submit" v-if="pddobj.pddType=='1'&&pddlist.length">
<view @click="pddzfshow = true">取消盘点</view> <view @click="pddzfshow = true">取消盘点</view>
<view @click="subitshowing">提交盘点单</view> <view @click="subitshowing">提交盘点单</view>
</view> </view>

View File

@ -2,8 +2,13 @@
<view @tap="onTap"> <view @tap="onTap">
<scroll-view scroll-y="true" class="itembox" scroll-with-animation @scrolltolower="scrolltolower()" <scroll-view scroll-y="true" class="itembox" scroll-with-animation @scrolltolower="scrolltolower()"
enable-back-to-top enable-flex :scroll-top="scrolltop" @scroll="scroll"> enable-back-to-top enable-flex :scroll-top="scrolltop" @scroll="scroll">
<defaultr cont="暂无数据" v-if="pddlist.length==0 && listflag" <!-- <defaultr cont="暂无数据" v-if="pddlist.length==0 && listflag"
style="position: absolute;width: 10vw;height: 10vw;"></defaultr> style="position: absolute;width: 10vw;height: 10vw;"></defaultr> -->
<view class="all-nomessage" v-if="pddlist.length==0 && listflag">
<image src="/static/index/procurement/que.png" mode="aspectFill"></image>
<view>暂无数据</view>
</view>
<view class="items guodu" v-for="(v,i) in pddlist" :key='i' <view class="items guodu" v-for="(v,i) in pddlist" :key='i'
:style="isbottom&&v.zk?{top: `-390rpx !important`,transition: `.4s !important`}:{transition: `.4s !important`}" :style="isbottom&&v.zk?{top: `-390rpx !important`,transition: `.4s !important`}:{transition: `.4s !important`}"
:class="{'itembord0':v.zk==true,'itembord1':v.zk==false,'dczk':v.dczk==true&&v.zk==true,'dczks':v.dczk==true&&v.zk==false}"> :class="{'itembord0':v.zk==true,'itembord1':v.zk==false,'dczk':v.dczk==true&&v.zk==true,'dczks':v.dczk==true&&v.zk==false}">
@ -108,12 +113,13 @@
@click="previewImage(v,p,o)"> @click="previewImage(v,p,o)">
<image :src="serverUrl+p" mode="aspectFill"></image> <image :src="serverUrl+p" mode="aspectFill"></image>
<view @click.stop="open=1;del(v,o)"> <view @click.stop="open=1;del(v,o)">
<image src="/static/index/keyimg/deletebutton.png" mode="aspectFill" <image src="/static/index/keyimg/deletebutton.png" mode="aspectFill"
style="width: 75%;height: 70%;"></image> style="width: 75%;height: 70%;"></image>
</view> </view>
</view> </view>
<view class="clkpz" @click="uplod(v,i)" v-if="v.picPatharr?.length<6&&pddType == 1"> <view class="clkpz" @click="uplod(v,i)"
v-if="v.picPatharr?.length<6&&pddType == 1">
<image src="/static/index/procurement/xjpz.png" mode="aspectFill"></image> <image src="/static/index/procurement/xjpz.png" mode="aspectFill"></image>
<text>点击拍照上传 </text> <text>点击拍照上传 </text>
</view> </view>
@ -121,8 +127,8 @@
style="position: absolute;width: 10vw;height: 10vw;"></defaultr> style="position: absolute;width: 10vw;height: 10vw;"></defaultr>
</view> </view>
</scroll-view> </scroll-view>
<view class="submit" v-if="v.pz" style="height: 3vw;"> <view class="submit" v-if="v.pz" style="height: 3.5vw;">
<view @click="v.pz = false">{{pddType=='1'?'取消':'关闭'}}</view> <view @click="v.pz = false">{{pddType=='1'?'取消':'关闭'}}</view>
<view v-if="pddType=='1'" @click="v.pz = false">确定</view> <view v-if="pddType=='1'" @click="v.pz = false">确定</view>
</view> </view>
@ -427,7 +433,8 @@
.submit { .submit {
width: 100%; width: 100%;
// height: 3.2vw; height: 1vw;
margin-top: 0.7vw;
// margin-top: 0.9vw; // margin-top: 0.9vw;
padding-right: 2vw; padding-right: 2vw;
display: flex; display: flex;
@ -515,10 +522,12 @@
bottom: 0; bottom: 0;
right: 0; right: 0;
} }
.scrollbgc{
.scrollbgc {
width: 92%; width: 92%;
margin-left: 4%; margin-left: 4%;
height: 22vw; height: 22vw;
.zpj { .zpj {
width: 30%; width: 30%;
display: flex; display: flex;
@ -527,7 +536,7 @@
// padding: 0 1.6vw; // padding: 0 1.6vw;
height: 22vw; height: 22vw;
// background-color: red; // background-color: red;
.zpk { .zpk {
width: 17.8vw; width: 17.8vw;
height: 10vw; height: 10vw;
@ -540,7 +549,7 @@
background: #F9F9F9; background: #F9F9F9;
overflow: hidden; overflow: hidden;
margin-right: 1vw; margin-right: 1vw;
view { view {
width: 2vw; width: 2vw;
height: 2vw; height: 2vw;
@ -554,13 +563,13 @@
justify-content: center; justify-content: center;
align-items: center; align-items: center;
} }
image { image {
width: 100%; width: 100%;
height: 100%; height: 100%;
} }
} }
.clkpz { .clkpz {
width: 17.8vw; width: 17.8vw;
height: 10vw; height: 10vw;
@ -572,22 +581,22 @@
align-items: center; align-items: center;
margin-top: 1vw; margin-top: 1vw;
flex-direction: column; flex-direction: column;
text { text {
font-weight: 400; font-weight: 400;
font-size: 0.7vw; font-size: 0.7vw;
color: #78B1EB; color: #78B1EB;
} }
image { image {
width: 2.3vw; width: 2.3vw;
height: 2.3vw; height: 2.3vw;
} }
} }
} }
} }
.pztit { .pztit {
font-weight: 400; font-weight: 400;
@ -924,4 +933,32 @@
z-index: 21; z-index: 21;
background: RGBA(239, 240, 244, 0); background: RGBA(239, 240, 244, 0);
} }
.all-nomessage {
width: 89vw;
height: 56vw;
position: fixed;
top: 5vw;
left: 9.5vw;
background-color: #fff;
border-radius: 40rpx;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
image {
width: 13.5vw;
height: 13.5vw;
}
view {
margin-top: -40rpx;
width: 100%;
text-align: center;
font-weight: 300;
font-size: 1.4vw;
color: #555555;
}
}
</style> </style>

View File

@ -196,7 +196,9 @@
display: flex; display: flex;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
background: url('/static/index/procurement/bt.png') no-repeat; // background: url('/static/index/procurement/bt.png') no-repeat;
background-color: #F3F5F9;
border-radius: 30rpx;
background-size: 100% 100%; background-size: 100% 100%;
font-size: 1.5vw; font-size: 1.5vw;
font-weight: 500; font-weight: 500;
@ -205,10 +207,10 @@
} }
.calculator-kuai:active { .calculator-kuai:active {
background: linear-gradient(to bottom, #00C9FF, #0076FF); background: linear-gradient(to bottom, #019cef, #0084fa);
color: #fff !important; color: #fff !important;
font-weight: 500; font-weight: 500;
border-radius: 1.5vw; // border-radius: 1.5vw;
display: flex; display: flex;
justify-content: center; justify-content: center;
align-items: center; align-items: center;

View File

@ -2,443 +2,495 @@
<view> <view>
<view class="qbkyj" v-if="show"> <view class="qbkyj" v-if="show">
<view class="titletop">全部库存预警</view> <view class="titletop">全部库存预警</view>
<scroll-view scroll-y="true" class="crdcroll" scroll-with-animation <scroll-view scroll-y="true" class="crdcroll" scroll-with-animation @scrolltolower="scrolltolower">
@scrolltolower="scrolltolower"> <view class="fler">
<view class="fler"> <scroll-view class="carditem guodu" v-for="(v,index) in InvoicingList" :key="index"
<scroll-view class="carditem guodu" v-for="(v,index) in InvoicingList" :key="index" @touchend="handleTouchEnd($event,v,index)" @touchstart="touchstart($event,v,index)"
@touchend="handleTouchEnd($event,v,index)" @touchstart="touchstart($event,v,index)" scroll-with-animation scroll-x="true" :scroll-left="v.scrollleft" @scroll="scroll($event,v)">
scroll-with-animation scroll-x="true" :scroll-left="v.scrollleft" @scroll="scroll($event,v)"> <view class="speitem guodu" :class="v.zk?'spleft':''">
<view class="speitem guodu" :class="v.zk?'spleft':''"> <view class="imghs">
<view class="imghs"> <image :src="v.materialImg?serverUrl+v.materialImg:'/static/index/procurement/k.png'"
<image :src="v.materialImg?serverUrl+v.materialImg:'/static/index/procurement/k.png'" mode="aspectFill">
mode="aspectFill"> </image>
</image> </view>
</view> <view class="cardp">
<view class="cardp"> <view v-if="v.categoryId_dictText">{{v.categoryId_dictText}}</view>
<view v-if="v.categoryId_dictText">{{v.categoryId_dictText}}</view> <view v-if="v.typeId_dictText">{{v.typeId_dictText}}</view>
<view v-if="v.typeId_dictText">{{v.typeId_dictText}}</view> <view v-if="v.medicationId_dictText">{{v.medicationId_dictText}}</view>
<view v-if="v.medicationId_dictText">{{v.medicationId_dictText}}</view> </view>
</view> </view>
<view class="msitem guodu">
<view>
<view>{{v.materialName}}</view><text>{{v.materialNo}}</text>
</view>
<view style="white-space: nowrap;display: block;">
<text style="white-space: nowrap;display: block;"> 规格型号: {{v.specificationModel}}</text>
</view>
<view>
<text v-if="v.multiUnitType=='1'">采购单价:
{{v.oneUnitPrice?Number(v.oneUnitPrice).toFixed(2):""}} </text>
<text v-if="v.multiUnitType=='1'">采购单位: {{ v.oneUnit}}</text>
<text v-if="v.multiUnitType=='2'">采购单价:
{{v.twoUnitPrice?Number(v.twoUnitPrice).toFixed(2):""}} </text>
<text v-if="v.multiUnitType=='2'">采购单位: {{ v.twoUnit}}</text>
<text v-if="v.multiUnitType=='3'">采购单价:
{{v.referenceUnitPrice?Number(v.referenceUnitPrice).toFixed(2):""}} </text>
<text v-if="v.multiUnitType=='3'">采购单位: {{ v.materialUnits}}</text>
</view>
<view>
<view>
<text>{{v.kcsl}}</text>
<text>库存数量</text>
</view> </view>
<view class="msitem guodu"> <view>
<view> <text>{{v.upperLimit}}</text>
<view>{{v.materialName}}</view><text>{{v.materialNo}}</text> <text>物料上限 </text>
</view>
<view style="white-space: nowrap;display: block;">
<text style="white-space: nowrap;display: block;"> 规格型号: {{v.specificationModel}}</text>
</view>
<view>
<text v-if="v.multiUnitType=='1'">采购单价: {{v.oneUnitPrice?Number(v.oneUnitPrice).toFixed(2):""}} </text>
<text v-if="v.multiUnitType=='1'">采购单位: {{ v.oneUnit}}</text>
<text v-if="v.multiUnitType=='2'">采购单价: {{v.twoUnitPrice?Number(v.twoUnitPrice).toFixed(2):""}} </text>
<text v-if="v.multiUnitType=='2'">采购单位: {{ v.twoUnit}}</text>
<text v-if="v.multiUnitType=='3'">采购单价: {{v.referenceUnitPrice?Number(v.referenceUnitPrice).toFixed(2):""}} </text>
<text v-if="v.multiUnitType=='3'">采购单位: {{ v.materialUnits}}</text>
</view>
<view>
<view>
<text>{{v.kcsl}}</text>
<text>库存数量</text>
</view>
<view>
<text >{{v.upperLimit}}</text>
<text>物料上限 </text>
</view>
<view>
<text >{{v.lowerLimit}}</text>
<text> 物料下限</text>
</view>
</view>
</view> </view>
<view class="add" @click.stop="clkzk(v,index)"> <view>
<view v-if="v.isAdd==1">已添加</view> <text>{{v.lowerLimit}}</text>
<image class="guodu" :style="v.zk?'transform: rotate(180deg);':''" :src="'/static/index/procurement/l.png'" mode="aspectFill"></image> <text> 物料下限</text>
</view> </view>
<view class="zkadd guodu" :class="v.isAdd==1?'zkf':''"> </view>
<view @click.stop="crk(v,index)" @touchend.stop>出入库</view> </view>
<view @click.stop="addcar(v)" v-if="v.isAdd!=1" @touchend.stop> <view class="add" @click.stop="clkzk(v,index)">
<view> <view v-if="v.isAdd==1">已添加</view>
加购物车 <image class="guodu" :style="v.zk?'transform: rotate(180deg);':''"
</view> :src="'/static/index/procurement/l.png'" mode="aspectFill"></image>
</view> </view>
<view class="zkadd guodu" :class="v.isAdd==1?'zkf':''">
<view @click.stop="crk(v,index)" @touchend.stop>出入库</view>
<view @click.stop="addcar(v)" v-if="v.isAdd!=1" @touchend.stop>
<view>
加购物车
</view> </view>
</scroll-view> </view>
</view> </view>
<view style="height:3vw;width: 100%;display: flex;align-items: center;justify-content: center;"> </scroll-view>
<u-loadmore :status="status" :loadText="{nomore:'暂无更多数据'}" v-if="InvoicingList.length>6"/> </view>
</view> <view style="height:3vw;width: 100%;display: flex;align-items: center;justify-content: center;">
<u-loadmore :status="status" :loadText="{nomore:'暂无更多数据'}" v-if="InvoicingList.length>6" />
</view>
</scroll-view> </scroll-view>
</view> </view>
</view> </view>
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import { ref, onMounted, reactive, onBeforeUnmount, computed, nextTick ,defineComponent} from 'vue'; import { ref, onMounted, reactive, onBeforeUnmount, computed, nextTick, defineComponent } from 'vue';
import { queryInvoicingList,queryWlInfoByWlId,addShoppingCartList,queryShoppingCartList } from '../api/lunpan.js' import { queryInvoicingList, queryWlInfoByWlId, addShoppingCartList, queryShoppingCartList } from '../api/lunpan.js'
const props = defineProps({ const props = defineProps({
InvoicingList: { InvoicingList: {
type: Array, type: Array,
required: true required: true
}, },
status:{ status: {
type:String type: String
}, },
show: { show: {
type: Boolean, type: Boolean,
default:false, default: false,
required: true, required: true,
}, },
}) })
const emit = defineEmits(['addcartory','tolower','solleft','crk']) const emit = defineEmits(['addcartory', 'tolower', 'solleft', 'crk'])
const serverUrl = ref('') const serverUrl = ref('')
onMounted(()=>{ onMounted(() => {
serverUrl.value = uni.getStorageSync('serverUrl') + '/sys/common/static/'; serverUrl.value = uni.getStorageSync('serverUrl') + '/sys/common/static/';
}) })
const setout1 = ref(true) const setout1 = ref(true)
const scrolltolower = () => { const scrolltolower = () => {
emit('tolower') emit('tolower')
} }
const caigouobj = ref({}) const caigouobj = ref({})
const clkzk =(v:any,i:number)=>{ const clkzk = (v : any, i : number) => {
caigouobj.value = v; caigouobj.value = v;
caigouobj.value.Limitnum = Number(caigouobj.value?.upperLimit)-Number(caigouobj.value.kcsl); caigouobj.value.Limitnum = Number(caigouobj.value?.upperLimit) - Number(caigouobj.value.kcsl);
caigouobj.value.index = i; caigouobj.value.index = i;
caigouobj.value.yj = true; caigouobj.value.yj = true;
if(v.zk==true){ if (v.zk == true) {
v.zk = false; v.zk = false;
v.scrollleft = 0 v.scrollleft = 0
}else{ } else {
v.zk = true; v.zk = true;
v.scrollleft = 170; v.scrollleft = 170;
} }
solleft(v,i) solleft(v, i)
} }
const addcar = (v:any)=>{ const addcar = (v : any) => {
emit('addcartory',caigouobj.value) emit('addcartory', caigouobj.value)
} }
const pageX = ref(0); const pageX = ref(0);
const pageY = ref(0); const pageY = ref(0);
const touchstart = (event:any,v:any,i:number)=>{ const touchstart = (event : any, v : any, i : number) => {
pageX.value = event.changedTouches[0].pageX; pageX.value = event.changedTouches[0].pageX;
pageY.value = event.changedTouches[0].pageY; pageY.value = event.changedTouches[0].pageY;
solleft(v,i) solleft(v, i)
} }
const handleTouchEnd = (event:any,v:any,i:number)=>{ const handleTouchEnd = (event : any, v : any, i : number) => {
let y = event.changedTouches[0].pageY; let y = event.changedTouches[0].pageY;
let x = event.changedTouches[0].pageX; let x = event.changedTouches[0].pageX;
let absx = Math.abs(x-pageX.value) let absx = Math.abs(x - pageX.value)
let absy = Math.abs(y-pageY.value) let absy = Math.abs(y - pageY.value)
if (absy > 30 && absx+10<absy&& absx<70) { if (absy > 30 && absx + 10 < absy && absx < 70) {
if(v.zk==false){ if (v.zk == false) {
setTimeout(()=>{ setTimeout(() => {
v.scrollleft = 0 v.scrollleft = 0
},20) }, 20)
} }
return return
} }
if (absx < 10 && absy < 10) { if (absx < 10 && absy < 10) {
if(v.zk==false && absx > 2 && absy > 2){ if (v.zk == false && absx > 2 && absy > 2) {
v.scrollleft = 0; v.scrollleft = 0;
return return
} }
return return
} }
caigouobj.value = v; caigouobj.value = v;
caigouobj.value.Limitnum = Number(caigouobj.value?.upperLimit)-Number(caigouobj.value.kcsl); caigouobj.value.Limitnum = Number(caigouobj.value?.upperLimit) - Number(caigouobj.value.kcsl);
caigouobj.value.index = i; caigouobj.value.index = i;
v.zk = x>pageX.value?false:true; v.zk = x > pageX.value ? false : true;
v.scrollleft = v.zk?170 : 0; v.scrollleft = v.zk ? 170 : 0;
} }
const solleft =(v:any,i:number)=>{ const solleft = (v : any, i : number) => {
props.InvoicingList.forEach((item,k)=>{ props.InvoicingList.forEach((item, k) => {
if(k!=i && item.zk==true){ if (k != i && item.zk == true) {
item.zk = false; item.zk = false;
item.scrollleft = 0; item.scrollleft = 0;
} }
}) })
} }
const scrollLeft = ref(0) const scrollLeft = ref(0)
const scroll = (e)=>{ const scroll = (e) => {
// scrollLeft.value = e.detail.scrollLeft // scrollLeft.value = e.detail.scrollLeft
// console.log(e.detail.scrollLeft) // console.log(e.detail.scrollLeft)
} }
const crk=(v,i)=>{ const crk = (v, i) => {
emit('crk',v,i) emit('crk', v, i)
} }
</script> </script>
<style scoped lang="less"> <style scoped lang="less">
.carditem {
width: 46.9vw;
height: 14.5vw;
background: rgba(255, 255, 255, 1);
border: 1rpx solid #D2D2D2;
border-radius: 1.6vw;
position: relative;
margin-bottom: 1.1vw;
display: flex;
overflow: hidden;
justify-content: flex-start;
white-space: nowrap;
.carditem { .zkadd {
width: 46.9vw; width: 14vw;
height: 14.5vw; height: 100%;
background: rgba(255, 255, 255, 1); display: inline-flex;
border: 1rpx solid #D2D2D2; justify-content: flex-end;
border-radius: 1.6vw; position: absolute;
position: relative; top: 0;
margin-bottom: 1.1vw; right: -14vw;
display: flex;
overflow: hidden; >view {
justify-content: flex-start;
white-space: nowrap;
.zkadd{
width: 14vw;
height: 100%;
display: inline-flex;
justify-content: flex-end;
position: absolute;
top: 0;
right:-14vw;
>view {
width: 7vw;
height: 100%;
font-weight: 400;
font-size: 1.5vw;
display: flex;
justify-content: center;
align-items: center;
writing-mode: vertical-rl;
text-orientation: upright;
text-align: center;
&:nth-child(2) {
background: #1083F8;
color: #fff;
view {
width: 3.8vw;
height: 3.8vw;
display: flex;
justify-content: center;
align-items: center;
margin-top: -0.7vw;
}
}
&:nth-child(1) {
background: #e3e5e7;
color: #555555;
}
}
}
.zkf{
width: 7vw; width: 7vw;
right:-7vw ; height: 100%;
} font-weight: 400;
.add{ font-size: 1.5vw;
width: 6vw; display: flex;
height: 14.5vw;
display: inline-flex;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
position: relative; writing-mode: vertical-rl;
top: -2vw; text-orientation: upright;
>view{ text-align: center;
width: 4.5vw;
height: 1.8vw; &:nth-child(2) {
background: #E3EEF7; background: #1083F8;
border-radius: 0.9vw; color: #fff;
border: 1px solid rgba(3, 133, 250, 0.34);
font-weight: 400; view {
font-size: 1.1vw; width: 3.8vw;
color: #1083F8; height: 3.8vw;
display: flex;
justify-content: center;
align-items: center;
position: absolute;
top: 0.8vw;
right: 0.8vw;
}
image{
width: 3vw;
height: 3vw;
}
}
.msitem{
width: 25vw;
height: 100%;
padding: 1vw;
display: inline-block;
>view{
margin-top: 0.5vw;
&:nth-child(4){
width: 100%;
height: 3.4vw;
display: flex;
justify-content: space-between;
>view{
width: 33.3%;
height: 100%;
display: flex;
flex-direction: column;
position: relative;
align-items: center;
&:nth-child(1){
width: 30%;
text-align: left;
}
&:nth-child(2){
width: 40%;
text-align: center;
}
&:nth-child(3){
width: 30%;
text-align: right;
}
&:nth-child(2)::after{
content: '';
position: absolute;
right: 0;
width: 100%;
height: 2.2vw;
border-left: 1px solid #C9C9C9;
border-right: 1px solid #C9C9C9;
top: 0.6vw;
}
text{
&:nth-child(1){
font-weight: bold;
font-size: 1.7vw;
color: #555555;
}
&:nth-child(2){
font-weight: 400;
font-size: 1.1vw;
color: #999999;
}
}
}
}
&:nth-child(2),&:nth-child(3){
display: flex;
justify-content: space-between;
text{
font-weight: 400;
font-size: 1.4vw;
color: #777777;
margin-top: 0.35vw;
white-space: nowrap;
}
}
&:nth-child(1){
display: flex;
justify-content: space-between;
align-items: center;
height: 2vw;
>view{
width: 19vw;
height: 2vw;
font-weight: bold;
font-size: 1.6vw;
color: #222222;
text-overflow:ellipsis;
overflow: hidden;
white-space: nowrap;
}
text{
width: 6vw;
font-weight: 300;
font-size: 1.4vw;
color: #222222;
}
}
}
}
// .spleft{
// margin-left: -15vw !important;
// }
.speitem{
width: 15vw;
height: 100%;
display: inline-flex;
flex-direction: column;
position: relative;
top: -2vw;
.cardp{
width: 12.5vw;
height: 4vw;
display: flex;
flex-wrap: wrap;
margin: 0 auto;
align-items: center;
view{
min-width: 5.5vw;
height: 1.8vw;
border-radius: 0.9vw;
border: 1px solid #D2D2D2;
margin: 0.5vw 0 0 0.5vw;
display: flex; display: flex;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
font-weight: 400; margin-top: -0.7vw;
font-size: 1vw; }
color: #555555;
&:nth-child(1),&:nth-child(2){ }
max-width: 6vw;
overflow: hidden; &:nth-child(1) {
text-overflow: ellipsis; background: #e3e5e7;
white-space: nowrap; color: #555555;
display: block; }
line-height: 1.8vw; }
}
.zkf {
width: 7vw;
right: -7vw;
}
.add {
width: 6vw;
height: 14.5vw;
display: inline-flex;
justify-content: center;
align-items: center;
position: relative;
top: -2vw;
>view {
width: 4.5vw;
height: 1.8vw;
background: #E3EEF7;
border-radius: 0.9vw;
border: 1px solid rgba(3, 133, 250, 0.34);
font-weight: 400;
font-size: 1.1vw;
color: #1083F8;
display: flex;
justify-content: center;
align-items: center;
position: absolute;
top: 0.8vw;
right: 0.8vw;
}
image {
width: 3vw;
height: 3vw;
}
}
.msitem {
width: 25vw;
height: 100%;
padding: 1vw;
display: inline-block;
>view {
margin-top: 0.5vw;
&:nth-child(4) {
width: 100%;
height: 3.4vw;
display: flex;
justify-content: space-between;
>view {
width: 33.3%;
height: 100%;
display: flex;
flex-direction: column;
position: relative;
align-items: center;
&:nth-child(1) {
width: 30%;
text-align: left;
}
&:nth-child(2) {
width: 40%;
text-align: center; text-align: center;
} }
&:nth-child(3) {
width: 30%;
text-align: right;
}
&:nth-child(2)::after {
content: '';
position: absolute;
right: 0;
width: 100%;
height: 2.2vw;
border-left: 1px solid #C9C9C9;
border-right: 1px solid #C9C9C9;
top: 0.6vw;
}
text {
&:nth-child(1) {
font-weight: bold;
font-size: 1.7vw;
color: #555555;
}
&:nth-child(2) {
font-weight: 400;
font-size: 1.1vw;
color: #999999;
}
}
} }
} }
.imghs{
width: 9vw; &:nth-child(2),
height: 8vw; &:nth-child(3) {
margin: 0.8vw auto 0.25vw; display: flex;
padding: 0.2vw; justify-content: space-between;
background: #fff;
border-radius: 1.1vw; text {
>image { font-weight: 400;
width: 100%; font-size: 1.4vw;
height: 100%; color: #777777;
border-radius: 1.1vw; margin-top: 0.35vw;
white-space: nowrap;
}
}
&:nth-child(2) {
text{
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
}
&:nth-child(1) {
display: flex;
justify-content: space-between;
align-items: center;
height: 2vw;
>view {
width: 19vw;
height: 2vw;
font-weight: bold;
font-size: 1.6vw;
color: #222222;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}
text {
width: 6vw;
font-weight: 300;
font-size: 1.4vw;
color: #222222;
} }
} }
} }
} }
.crdcroll { // .spleft{
width: 100%; // margin-left: -15vw !important;
height: calc(85vh - 6.5vw); // }
.speitem {
.fler { width: 15vw;
display: grid; height: 100%;
grid-template-columns: 1fr; display: inline-flex;
flex-direction: column;
position: relative;
top: -2vw;
.cardp {
width: 12.5vw;
height: 4vw;
display: flex;
flex-wrap: wrap;
margin: 0 auto;
align-items: center;
view {
min-width: 5.5vw;
height: 1.8vw;
border-radius: 0.9vw;
border: 1px solid #D2D2D2;
margin: 0.5vw 0 0 0.5vw;
display: flex;
justify-content: center;
align-items: center;
font-weight: 400;
font-size: 1vw;
color: #555555;
&:nth-child(1),
&:nth-child(2) {
max-width: 6vw;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
display: block;
line-height: 1.8vw;
text-align: center;
}
&:nth-child(3) {
max-width: 11.5vw;
padding: 0 0.8vw;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
display: block;
line-height: 1.8vw;
text-align: center;
}
}
}
.imghs {
width: 9vw;
height: 8vw;
margin: 0.8vw auto 0.25vw;
padding: 0.2vw;
background: #fff;
border-radius: 1.1vw;
>image {
width: 100%;
height: 100%;
border-radius: 1.1vw;
}
} }
} }
}
.crdcroll {
.qbkyj{ width: 100%;
width: 51vw; height: calc(85vh - 6.5vw);
height: 85vh;
background: #FFFFFF; .fler {
box-shadow: 0rpx 0rpx 0.7vw 0rpx rgba(182,186,196,0.29); display: grid;
border-radius: 1.6vw; grid-template-columns: 1fr;
position: fixed; }
top:5vh; }
right: 24.5vw;
z-index: 150;
padding: 2vw;
} .qbkyj {
.titletop{ width: 51vw;
width: 100%; height: 85vh;
height: 3.5vw; background: #FFFFFF;
font-weight: bold; box-shadow: 0rpx 0rpx 0.7vw 0rpx rgba(182, 186, 196, 0.29);
font-size: 1.8vw; border-radius: 1.6vw;
color: #333333; position: fixed;
line-height: 2.5vw; top: 5vh;
} right: 24.5vw;
.guodu { z-index: 150;
padding: 2vw;
}
.titletop {
width: 100%;
height: 3.5vw;
font-weight: bold;
font-size: 1.8vw;
color: #333333;
line-height: 2.5vw;
}
.guodu {
transition: .4s; transition: .4s;
-webkit-transform-style: preserve-3d; -webkit-transform-style: preserve-3d;
-webkit-overflow-scrolling: touch; -webkit-overflow-scrolling: touch;
} }
</style> </style>

View File

@ -1,7 +1,7 @@
<template> <template>
<view class="plsbuy-contain guodu" :class="show?'':'unclass'" :style="showbox?'z-index:999':'z-index:-2'"> <view class="plsbuy-contain guodu" :class="show?'':'unclass'" :style="showbox?'z-index:999':'z-index:-2'">
<view class="gys"> <view class="gys">
<view class="tlt">供应商</view> <view class="tlt">供应商1111111111111</view>
<view class="gssel" @click="gysflag = true"> <view class="gssel" @click="gysflag = true">
<view> <view>
{{gysarr[gysidnum]?.name}} {{gysarr[gysidnum]?.name}}
@ -698,26 +698,28 @@
flex-wrap: wrap; flex-wrap: wrap;
display: grid; display: grid;
grid-template-columns: 1fr 1fr 1fr; grid-template-columns: 1fr 1fr 1fr;
padding-left: 29rpx;
.calculator-kuai { .calculator-kuai {
display: flex; display: flex;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
background: url('/static/index/procurement/bt.png') no-repeat;
background-size: 100% 100%; background-size: 100% 100%;
font-size: 42rpx; font-size: 42rpx;
font-weight: 500; font-weight: 500;
margin: 12rpx 40rpx 0 0rpx; margin: 25rpx 25rpx 0 0;
width: 7.6vw; width: 7vw;
height: 6.1vw; height: 5.5vw;
background-color: #F3F5F9;
border-radius: 40rpx;
} }
.calculator-kuai:active { .calculator-kuai:active {
background: linear-gradient(to bottom, #00C9FF, #0076FF); background: linear-gradient(to bottom, #019cef, #0084fa);
color: #fff; color: #fff;
font-size: 45rpx; font-size: 42rpx;
font-weight: 500; font-weight: 500;
border-radius: 2.6vw; border-radius: 40rpx;
} }
} }

View File

@ -1,43 +1,46 @@
<template> <template>
<view> <view>
<scroll-view scroll-y="true" class="crdcroll" scroll-with-animation @scrolltolower="scrolltolower()" enable-back-to-top> <scroll-view scroll-y="true" class="crdcroll" scroll-with-animation @scrolltolower="scrolltolower()"
enable-back-to-top>
<view class="box"> <view class="box">
<view class="fler" v-for="(v,index) in InvoicingList" :key="index"> <view class="fler" v-for="(v,index) in InvoicingList" :key="index">
<scroll-view class="carditem guodu" @touchend="handleTouchEnd($event,v,index)" <scroll-view class="carditem guodu" @touchend="handleTouchEnd($event,v,index)"
@touchstart="touchstart($event,v,index)" scroll-with-animation scroll-x="true" @touchstart="touchstart($event,v,index)" scroll-with-animation scroll-x="true"
:scroll-left="v.scrollleft" @scroll="scroll" > :scroll-left="v.scrollleft" @scroll="scroll">
<view class="speitem guodu" > <view class="speitem guodu">
<view class="imghs"> <view class="imghs">
<image style="border-radius: 1vw;" :src="v.materialImg?serverUrl+v.materialImg:'/static/index/procurement/k.png'" <image style="border-radius: 1vw;"
:src="v.materialImg?serverUrl+v.materialImg:'/static/index/procurement/k.png'"
mode="aspectFill"> mode="aspectFill">
</image> </image>
</view> </view>
<view class="cardp"> <view class="cardp">
<view v-if="v.categoryId_dictText">{{v.categoryId_dictText}}</view> <view v-if="v.categoryId_dictText">{{v.categoryId_dictText}}</view>
<view v-if="v.typeId_dictText">{{v.typeId_dictText}}</view> <view v-if="v.typeId_dictText">{{v.typeId_dictText}}</view>
<view v-if="v.medicationId_dictText">{{v.medicationId_dictText}}</view> <view v-if="v.medicationId_dictText">{{v.medicationId_dictText}}</view>
</view> </view>
</view> </view>
<view class="msitem guodu" > <view class="msitem guodu">
<view> <view>
<view>{{v.materialName}}</view> <view>{{v.materialName}}</view>
</view> </view>
<view style="margin-top: 1vw;"> <view style="margin-top: 1vw;">
<text style="white-space: nowrap;"> 物料编码: {{v.materialNo}}</text> <text style="white-space: nowrap;"> 物料编码: {{v.materialNo}}</text>
</view> </view>
<view> <view>
<text style="white-space: nowrap;"> 规格型号: {{v.specificationModel}}</text> <text style="white-space: nowrap;"> 规格型号: {{v.specificationModel}}</text>
</view> </view>
<view> <view>
<text v-if="v.multiUnitType=='1'">采购单价: {{Number(v.oneUnitPrice).toFixed(2) }} </text> <text v-if="v.multiUnitType=='1'">采购单价: {{Number(v.oneUnitPrice).toFixed(2) }} </text>
<text v-if="v.multiUnitType=='2'">采购单价: {{Number(v.twoUnitPrice).toFixed(2) }} </text> <text v-if="v.multiUnitType=='2'">采购单价: {{Number(v.twoUnitPrice).toFixed(2) }} </text>
<text v-if="v.multiUnitType=='3'">采购单价: {{ Number(v.referenceUnitPrice).toFixed(2)}} </text> <text v-if="v.multiUnitType=='3'">采购单价: {{ Number(v.referenceUnitPrice).toFixed(2)}}
</text>
</view> </view>
<view> <view>
<text v-if="v.multiUnitType=='1'">采购单位: {{ v.oneUnit}}</text> <text v-if="v.multiUnitType=='1'">采购单位: {{ v.oneUnit}}</text>
<text v-if="v.multiUnitType=='2'">采购单位: {{ v.twoUnit}}</text> <text v-if="v.multiUnitType=='2'">采购单位: {{ v.twoUnit}}</text>
<text v-if="v.multiUnitType=='3'">采购单位: {{ v.materialUnits}}</text> <text v-if="v.multiUnitType=='3'">采购单位: {{ v.materialUnits}}</text>
</view> </view>
<view class="wlsy"> <view class="wlsy">
<view> <view>
@ -48,7 +51,7 @@
<text>{{v.upperLimit}}</text> <text>{{v.upperLimit}}</text>
<text>物料上限 </text> <text>物料上限 </text>
</view> </view>
<view > <view>
<text>{{v.lowerLimit}}</text> <text>{{v.lowerLimit}}</text>
<text> 物料下限</text> <text> 物料下限</text>
</view> </view>
@ -60,7 +63,7 @@
</view> </view>
<view class="zkadd guodu" :class="v.isAdd==1?'':''"> <view class="zkadd guodu" :class="v.isAdd==1?'':''">
<view v-if="v.isAdd==1"> <view v-if="v.isAdd==1">
</view> </view>
<view class="zkadd-white" @click.stop="crk(v,index)" @touchend.stop>出入库</view> <view class="zkadd-white" @click.stop="crk(v,index)" @touchend.stop>出入库</view>
<view class="zkadd-blue" @click.stop="addcar(v,index)" v-if="v.isAdd!=1" @touchend.stop> <view class="zkadd-blue" @click.stop="addcar(v,index)" v-if="v.isAdd!=1" @touchend.stop>
@ -80,20 +83,20 @@
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import { ref, onMounted, reactive, onBeforeUnmount, computed, nextTick, defineComponent } from 'vue'; import { ref, onMounted, reactive, onBeforeUnmount, computed, nextTick, defineComponent } from 'vue';
const props = defineProps({ const props = defineProps({
InvoicingList: { InvoicingList: {
type: Array type: Array
}, },
status: { status: {
type: String type: String
}, },
show: { show: {
type: Boolean, type: Boolean,
default: false default: false
}, },
}) })
const emit = defineEmits(['addcartory', 'scrolltolower','addcar','crk']) const emit = defineEmits(['addcartory', 'scrolltolower', 'addcar', 'crk'])
const serverUrl = ref('') const serverUrl = ref('')
onMounted(() => { onMounted(() => {
serverUrl.value = uni.getStorageSync('serverUrl') + '/sys/common/static/'; serverUrl.value = uni.getStorageSync('serverUrl') + '/sys/common/static/';
@ -102,11 +105,11 @@
// },3000) // },3000)
}) })
const caigouobj = ref({}) const caigouobj = ref({})
const addcar = (v : any,i:number) => { const addcar = (v : any, i : number) => {
if(Number(v.kcsl)>=Number(v.upperLimit)){ if (Number(v.kcsl) >= Number(v.upperLimit)) {
uni.showToast({ uni.showToast({
title:'库存数量已满,不可添加购物车!', title: '库存数量已满,不可添加购物车!',
icon:'none' icon: 'none'
}) })
return return
} }
@ -117,7 +120,7 @@
} }
const pageX = ref(0); const pageX = ref(0);
const pageY = ref(0); const pageY = ref(0);
const touchstart = (event : any, v : any,i:number) => { const touchstart = (event : any, v : any, i : number) => {
pageX.value = event.changedTouches[0].pageX; pageX.value = event.changedTouches[0].pageX;
pageY.value = event.changedTouches[0].pageY; pageY.value = event.changedTouches[0].pageY;
solleft(v, i) solleft(v, i)
@ -127,20 +130,20 @@
let x = event.changedTouches[0].pageX; let x = event.changedTouches[0].pageX;
let absx = Math.abs(x - pageX.value) let absx = Math.abs(x - pageX.value)
let absy = Math.abs(y - pageY.value) let absy = Math.abs(y - pageY.value)
if (absy > 30 && absx+10<absy) { if (absy > 30 && absx + 10 < absy) {
v.scrollleft = 1 v.scrollleft = 1
setTimeout(()=>{ setTimeout(() => {
v.scrollleft = 0 v.scrollleft = 0
},20) }, 20)
return return
} }
if (absx < 10 && absy < 10) { if (absx < 10 && absy < 10) {
if(v.zk==false){ if (v.zk == false) {
setTimeout(()=>{ setTimeout(() => {
v.scrollleft = 0 v.scrollleft = 0
},20) }, 20)
} }
console.log("2") console.log("2")
return return
} }
caigouobj.value = v; caigouobj.value = v;
@ -149,13 +152,13 @@
caigouobj.value.yj = false; caigouobj.value.yj = false;
v.zk = x > pageX.value ? false : true; v.zk = x > pageX.value ? false : true;
v.scrollleft = v.zk ? 150 : 0; v.scrollleft = v.zk ? 150 : 0;
} }
const solleft = (v : any, i : number) => { const solleft = (v : any, i : number) => {
props.InvoicingList.forEach((item, k) => { props.InvoicingList.forEach((item, k) => {
if (k != i&&item.zk==true) { if (k != i && item.zk == true) {
item.zk = false; item.zk = false;
item.scrollleft = 0; item.scrollleft = 0;
} }
}) })
} }
@ -163,12 +166,12 @@
emit('scrolltolower') emit('scrolltolower')
} }
const scrollLeft = ref(0) const scrollLeft = ref(0)
const scroll = (e)=>{ const scroll = (e) => {
// scrollLeft.value = e.detail.scrollLeft // scrollLeft.value = e.detail.scrollLeft
// console.log(e.detail.scrollLeft) // console.log(e.detail.scrollLeft)
} }
const crk=(v,i)=>{ const crk = (v, i) => {
emit('crk',v,i) emit('crk', v, i)
} }
</script> </script>
@ -182,6 +185,7 @@
display: grid; display: grid;
grid-template-columns: 1fr 1fr; grid-template-columns: 1fr 1fr;
} }
.fler { .fler {
width: 44vw; width: 44vw;
height: 20.5vw; height: 20.5vw;
@ -222,12 +226,13 @@
writing-mode: vertical-rl; writing-mode: vertical-rl;
text-orientation: upright; text-orientation: upright;
text-align: center; text-align: center;
} }
.zkadd-blue{
.zkadd-blue {
background: #1083F8; background: #1083F8;
color: #fff; color: #fff;
view { view {
width: 3.8vw; width: 3.8vw;
height: 3.8vw; height: 3.8vw;
@ -237,8 +242,8 @@
margin-top: -0.7vw; margin-top: -0.7vw;
} }
} }
.zkadd-white{ .zkadd-white {
background: #e3e5e7; background: #e3e5e7;
color: #555555; color: #555555;
} }
@ -256,10 +261,11 @@
display: flex; display: flex;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
top:50%; top: 50%;
transform: translateY(-50%); transform: translateY(-50%);
// top: 0.8vw; // top: 0.8vw;
right:0.8vw; right: 0.8vw;
>view { >view {
width: 5.5vw; width: 5.5vw;
height: 2.2vw; height: 2.2vw;
@ -274,7 +280,7 @@
align-items: center; align-items: center;
position: absolute; position: absolute;
top: 2.3vw; top: 2.3vw;
right:0.8vw; right: 0.8vw;
} }
image { image {
@ -288,19 +294,21 @@
height: 100%; height: 100%;
padding: 1vw; padding: 1vw;
position: absolute; position: absolute;
left:15vw; left: 15vw;
top: 0; top: 0;
>view { >view {
&:nth-child(2), &:nth-child(2),
&:nth-child(3), &:nth-child(3),
&:nth-child(4), &:nth-child(4),
&:nth-child(5){ &:nth-child(5) {
margin-top: 0.25vw; margin-top: 0.25vw;
max-width: 25vw; max-width: 25vw;
white-space: nowrap; white-space: nowrap;
text-overflow: ellipsis; text-overflow: ellipsis;
overflow: hidden; overflow: hidden;
text { text {
font-weight: 400; font-weight: 400;
font-size: 1.3vw; font-size: 1.3vw;
@ -315,11 +323,12 @@
align-items: center; align-items: center;
height: 2vw; height: 2vw;
margin-top: 1vw; margin-top: 1vw;
>view { >view {
width: 19vw; width: 19vw;
height: 2vw; height: 2vw;
font-weight: bold; font-weight: bold;
font-size:1.8vw; font-size: 1.8vw;
color: #222222; color: #222222;
text-overflow: ellipsis; text-overflow: ellipsis;
overflow: hidden; overflow: hidden;
@ -334,36 +343,38 @@
} }
} }
} }
>.wlsy{
>.wlsy {
width: 100%; width: 100%;
height: 3.4vw; height: 3.4vw;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
margin-top: 0vw; margin-top: 0vw;
>view { >view {
width: 33.3%; width: 33.3%;
height: 100%; height: 100%;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
position: relative; position: relative;
margin-top:1vw; margin-top: 1vw;
&:nth-child(1) { &:nth-child(1) {
width: 30%; width: 30%;
align-items: left; align-items: left;
} }
&:nth-child(2) { &:nth-child(2) {
width: 40%; width: 40%;
align-items: center; align-items: center;
} }
&:nth-child(3) { &:nth-child(3) {
width: 30%; width: 30%;
text-align: right; text-align: right;
align-items: right; align-items: right;
} }
&:nth-child(2)::after { &:nth-child(2)::after {
content: ''; content: '';
position: absolute; position: absolute;
@ -374,14 +385,14 @@
border-right: 1px solid #C9C9C9; border-right: 1px solid #C9C9C9;
top: 0.6vw; top: 0.6vw;
} }
text { text {
&:nth-child(1) { &:nth-child(1) {
font-weight: bold; font-weight: bold;
font-size: 1.8vw; font-size: 1.8vw;
color: #555555; color: #555555;
} }
&:nth-child(2) { &:nth-child(2) {
font-weight: 400; font-weight: 400;
font-size: 1.2vw; font-size: 1.2vw;
@ -399,7 +410,7 @@
width: 14.8vw; width: 14.8vw;
height: 100%; height: 100%;
position: absolute; position: absolute;
display:flex; display: flex;
flex-direction: column; flex-direction: column;
top: 0; top: 0;
left: 0; left: 0;
@ -428,7 +439,9 @@
font-size: 1vw; font-size: 1vw;
color: #555555; color: #555555;
padding: 0 0.25vw; padding: 0 0.25vw;
&:nth-child(1),&:nth-child(2){
&:nth-child(1),
&:nth-child(2) {
max-width: 6vw; max-width: 6vw;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
@ -437,22 +450,35 @@
line-height: 1.8vw; line-height: 1.8vw;
text-align: center; text-align: center;
} }
&:nth-child(3) {
max-width: 11.5vw;
padding: 0 0.8vw;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
display: block;
line-height: 1.8vw;
text-align: center;
}
} }
} }
.imghs{
.imghs {
width: 12vw; width: 12vw;
height: 12vw; height: 12vw;
margin: 0.8vw auto 0.25vw; margin: 0.8vw auto 0.25vw;
padding: 0.2vw; padding: 0.2vw;
background: #fff; background: #fff;
border-radius: 1.1vw; border-radius: 1.1vw;
>image { >image {
width: 100%; width: 100%;
height: 100%; height: 100%;
border-radius: 1.1vw; border-radius: 1.1vw;
} }
} }
} }
} }
</style> </style>

View File

@ -307,7 +307,7 @@
} }
.set { .set {
width: 23vw; width: 27vw;
height: 3.8vw; height: 3.8vw;
padding: 0 1.7vw; padding: 0 1.7vw;
display: flex; display: flex;
@ -346,7 +346,7 @@
} }
.ifclass { .ifclass {
width: 36vw; width: 40vw;
height: 83vh; height: 83vh;
position: fixed; position: fixed;
z-index: 120; z-index: 120;
@ -400,26 +400,28 @@
justify-content: space-around; justify-content: space-around;
.scrl1 { .scrl1 {
width: 10vw; width: 13vw;
} }
.scrl2, .scrl2,
.scrl3 { .scrl3 {
width: 10vw; width: 13vw;
display: flex; display: flex;
justify-content: flex-end; justify-content: flex-end;
view { // view {
width: 8vw; // width: 11vw;
margin-left: 1vw; // margin-left: 1vw;
} // }
} }
.scroll-Y { .scroll-Y {
width: 10vw; width: 13vw;
height: calc(85vh - 23vw); height: calc(85vh - 23vw);
// background-color: red;
view { view {
min-width: 8.5vw; // min-width: 8.5vw;
max-width: 10vw; // max-width: 11vw;
width: 11vw;
height: 3.8vw; height: 3.8vw;
background: #F5F5F8; background: #F5F5F8;
border-radius: 1.9vw; border-radius: 1.9vw;
@ -435,7 +437,7 @@
text { text {
white-space: nowrap; white-space: nowrap;
width: 6vw; width: 7vw;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
white-space: nowrap; white-space: nowrap;

View File

@ -134,8 +134,6 @@
<image src="/static/index/procurement/que.png" mode="aspectFill"></image> <image src="/static/index/procurement/que.png" mode="aspectFill"></image>
<view>暂无数据</view> <view>暂无数据</view>
</view> </view>
<!-- <defaultr cont="暂无数据" v-if="plsbuy.length==0">
</defaultr> -->
</view> </view>
<view v-show="openselect" class="mengban" @click="openselect=false"></view> <view v-show="openselect" class="mengban" @click="openselect=false"></view>
<view class="left-select-more" v-show="openselect" @click="opendata=false"> <view class="left-select-more" v-show="openselect" @click="opendata=false">

View File

@ -36,8 +36,8 @@
</view> </view>
</view> </view>
<view class="more-view"> <view class="more-view">
<image src="/static/backmore.png" mode="aspectFill" class="more" :style="Material.length?{}:{opacity:`0.3`}" <image src="/static/backmore.png" mode="aspectFill" class="more"
@click.stop="openmore()"></image> :style="Material.length?{}:{opacity:`0.3`}" @click.stop="openmore()"></image>
<view class="more-view-button" @click.stop v-show="backmoreopen"> <view class="more-view-button" @click.stop v-show="backmoreopen">
<view class="more-whitebutton" @click="moredex=1;Invenshow=true;backmoreopen=false"> <view class="more-whitebutton" @click="moredex=1;Invenshow=true;backmoreopen=false">
@ -101,6 +101,12 @@
</view> --> </view> -->
<view class="listcard"> <view class="listcard">
<view class="contain-right-nomessage center" v-if="shownomessage">
<view class="que">
<image src="/static/index/procurement/que.png" mode="aspectFill"></image>
<view>暂无数据</view>
</view>
</view>
<carditem :InvoicingList="InvoicingList" @addcartory="addcartory" @scrolltolower="scrolltolower" <carditem :InvoicingList="InvoicingList" @addcartory="addcartory" @scrolltolower="scrolltolower"
:status="status" @crk="crk"></carditem> :status="status" @crk="crk"></carditem>
</view> </view>
@ -204,9 +210,14 @@
type: Boolean type: Boolean
}, },
}); });
const shownomessage = ref(false)
const queryInvo = () => { const queryInvo = () => {
queryInvoicingList(form).then(res => { queryInvoicingList(form).then(res => {
// console.log(res) if (res.result.records.length) {
shownomessage.value = false;
} else {
shownomessage.value = true;
}
res.result.records.forEach(item => { res.result.records.forEach(item => {
item.zk = false; item.zk = false;
item.scrollleft = 0; item.scrollleft = 0;
@ -216,7 +227,7 @@
setout2.value = (res.result.total == InvoicingList.value.length ? false : true) setout2.value = (res.result.total == InvoicingList.value.length ? false : true)
}) })
} }
onMounted(()=>{ onMounted(() => {
// gwcsx() // gwcsx()
form.pageNo = 1; form.pageNo = 1;
warn.pageNo = 1; warn.pageNo = 1;
@ -228,9 +239,9 @@
nextTick(() => { nextTick(() => {
chongzhi() chongzhi()
}) })
setTimeout(()=>{ setTimeout(() => {
timeout.value = true timeout.value = true
},500) }, 500)
transition.value = false; transition.value = false;
setTimeout(() => { setTimeout(() => {
transition.value = true; transition.value = true;
@ -400,12 +411,12 @@
InvoicingList.value = []; InvoicingList.value = [];
queryInvo(); queryInvo();
} }
const addcartory = (e : any) => { const addcartory = (e : any) => {
// eindexindex0 // eindexindex0
// console.log("",e) // console.log("",e)
console.log("啥啊",e) console.log("啥啊", e)
if(!e.suppliers_dictText || !e.suppliers){ if (!e.suppliers_dictText || !e.suppliers) {
openerror.value = true; openerror.value = true;
errmsg.value = `此物料暂无供应商,请联系管理员` errmsg.value = `此物料暂无供应商,请联系管理员`
return return
@ -538,7 +549,7 @@
}) })
} }
const openmore = () => { const openmore = () => {
if(Material.value.length){ if (Material.value.length) {
backmoreopen.value = !backmoreopen.value backmoreopen.value = !backmoreopen.value
} }
} }
@ -599,6 +610,8 @@
width: 90vw; width: 90vw;
height: 70.3vh; height: 70.3vh;
margin-top: 0.9vw; margin-top: 0.9vw;
// background-color: #fff;
position: relative;
.crdcroll { .crdcroll {
width: 100%; width: 100%;
@ -1214,4 +1227,40 @@
// background-color: red; // background-color: red;
} }
} }
.que {
width: 10vw;
height: 10vw;
// margin: auto;
image {
width: 100%;
height: 100%;
}
view {
margin-top: -30rpx;
width: 100%;
text-align: center;
font-weight: 300;
font-size: 1.2vw;
color: #555555;
}
}
.center {
display: flex;
justify-content: center;
align-items: center;
}
.contain-right-nomessage {
position: absolute;
top: 0;
left: 0;
width: 99.2%;
height: 90%;
background-color: #fff;
border-radius: 30rpx;
z-index: 100;
}
</style> </style>

View File

@ -17,6 +17,13 @@
<view class="left-menu-father"> <view class="left-menu-father">
<scroll-view scroll-y="true" scroll-with-animation class="left-menu-scroll" :scroll-top="leftscrolltop" <scroll-view scroll-y="true" scroll-with-animation class="left-menu-scroll" :scroll-top="leftscrolltop"
@scrolltolower="plsbuytolower" :lower-threshold="400"> @scrolltolower="plsbuytolower" :lower-threshold="400">
<view class="haventmessage" v-if="shownomessage">
<view class="que">
<image src="/static/index/procurement/que.png" mode="aspectFill"></image>
<view>暂无数据</view>
</view>
</view>
<view class="pls-card" v-for="(v,i) in plsbuy" :key='i' @click="clickLeftMenu(i,v)" :style="{ <view class="pls-card" v-for="(v,i) in plsbuy" :key='i' @click="clickLeftMenu(i,v)" :style="{
borderColor: i === lefttarget ? '' : 'transparent', borderColor: i === lefttarget ? '' : 'transparent',
@ -126,11 +133,35 @@
</view> </view>
</view> </view>
</view> </view>
<view class="pls-card center" v-if="plsbuy.length===1&&!shownomessage">
<view class="que">
<image src="/static/index/procurement/que.png" mode="aspectFill"></image>
<view>暂无数据</view>
</view>
</view>
<view class="pls-card center" v-if="plsbuy.length===1&&!shownomessage">
<view class="que">
<image src="/static/index/procurement/que.png" mode="aspectFill"></image>
<view>暂无数据</view>
</view>
</view>
<view class="pls-card center" v-if="plsbuy.length===2&&!shownomessage">
<view class="que">
<image src="/static/index/procurement/que.png" mode="aspectFill"></image>
<view>暂无数据</view>
</view>
</view>
</scroll-view> </scroll-view>
</view> </view>
</view> </view>
<!-- <view class="white-zhezhao"></view> --> <!-- <view class="white-zhezhao"></view> -->
<view class="contain-right"> <view class="contain-right">
<view class="contain-right-nomessage center" v-if="shownomessage">
<view class="que">
<image src="/static/index/procurement/que.png" mode="aspectFill"></image>
<view>暂无数据</view>
</view>
</view>
<view class="contain-right-title"> <view class="contain-right-title">
<view class="contain-right-button" @click="ification=true"> <view class="contain-right-button" @click="ification=true">
<image class="buttont-img" src="/static/index/procurement/sx.png" /> <image class="buttont-img" src="/static/index/procurement/sx.png" />
@ -168,19 +199,19 @@
</view> </view>
</view> </view>
<view class="middle-one-white center" v-if="InvoicingList.length<4"> <view class="middle-one-white center" v-if="InvoicingList.length<4">
<view class="que"> <view class="quespec">
<image src="/static/index/procurement/que.png" mode="aspectFill"></image> <image src="/static/index/procurement/que.png" mode="aspectFill"></image>
<view>暂无数据</view> <view>暂无数据</view>
</view> </view>
</view> </view>
<view class="middle-one-white center" v-if="InvoicingList.length<3"> <view class="middle-one-white center" v-if="InvoicingList.length<3">
<view class="que"> <view class="quespec">
<image src="/static/index/procurement/que.png" mode="aspectFill"></image> <image src="/static/index/procurement/que.png" mode="aspectFill"></image>
<view>暂无数据</view> <view>暂无数据</view>
</view> </view>
</view> </view>
<view class="middle-one-white center" v-if="InvoicingList.length<2"> <view class="middle-one-white center" v-if="InvoicingList.length<2">
<view class="que"> <view class="quespec">
<image src="/static/index/procurement/que.png" mode="aspectFill"></image> <image src="/static/index/procurement/que.png" mode="aspectFill"></image>
<view>暂无数据</view> <view>暂无数据</view>
</view> </view>
@ -586,7 +617,7 @@
clickmiddle(middletarget.value); clickmiddle(middletarget.value);
}) })
} }
const shownomessage = ref(false)
const search = () => { const search = () => {
// if (!searchValue.value) return // if (!searchValue.value) return
form.pageNo = 1; form.pageNo = 1;
@ -599,7 +630,12 @@
plzinfo.pageNo = 1; plzinfo.pageNo = 1;
plsbuy.value = []; plsbuy.value = [];
queryCgdList(plzinfo).then((res : any) => { queryCgdList(plzinfo).then((res : any) => {
console.log(res.result.records) if (res.result.records.length) {
shownomessage.value = false;
} else {
shownomessage.value = true;
}
// console.log(res.result.records)
plsbuy.value.push(...res.result.records) plsbuy.value.push(...res.result.records)
if (res.result.records.length) { if (res.result.records.length) {
form.cgdId = plsbuy.value[0].id form.cgdId = plsbuy.value[0].id
@ -1002,6 +1038,7 @@
margin-left: 1.2%; margin-left: 1.2%;
overflow: hidden; overflow: hidden;
background-color: #fff; background-color: #fff;
position: relative;
// background-color: red; // background-color: red;
.contain-right-title { .contain-right-title {
@ -1613,7 +1650,7 @@
justify-content: center; justify-content: center;
align-items: center; align-items: center;
} }
.que { .quespec {
width: 7vw; width: 7vw;
height: 7vw; height: 7vw;
margin-top: -1vw; margin-top: -1vw;
@ -1633,4 +1670,51 @@
color: #555555; color: #555555;
} }
} }
.haventmessage {
width: 100%;
height: 100%;
background-color: #fff;
display: flex;
justify-content: center;
align-items: center;
border-radius: 30rpx;
}
.que {
width: 10vw;
height: 10vw;
// margin: auto;
image {
width: 100%;
height: 100%;
}
view {
margin-top: -30rpx;
width: 100%;
text-align: center;
font-weight: 300;
font-size: 1.2vw;
color: #555555;
}
}
.center {
display: flex;
justify-content: center;
align-items: center;
}
.contain-right-nomessage {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: #fff;
border-radius: 30rpx;
z-index: 100;
}
</style> </style>