This commit is contained in:
wangweidong 2025-11-26 15:38:48 +08:00
commit 1249773ad7
8 changed files with 352 additions and 327 deletions

View File

@ -104,7 +104,7 @@
{
"path": "pages/NursingNew/index",
"style": {
"navigationStyle": "custom",
"navigationStyle": "custom"
}
},

View File

@ -139,11 +139,12 @@
{{showvalue.wlMaterialNo}}
</view>
</view>
<view style="width: 33%;">
<view style="width: 33%;">
<view style="color: #888888;margin-top: 10rpx;white-space: nowrap;">
规格型号
</view>
<view style="margin-top: 5rpx;font-size: 34rpx;white-space: nowrap;display: flex;flex-wrap: nowrap;">
<view
style="margin-top: 5rpx;font-size: 34rpx;white-space: nowrap;display: flex;flex-wrap: nowrap;">
{{showvalue.wlSpecificationModel}}
</view>
</view>
@ -363,7 +364,16 @@
</text>
</view>
</view>
<view class="noarray" v-if="!jhdanarr.length">
<image class="noarray-img" src="/static/index/warehouse/procurement/picking/noarray.png"
mode="aspectFill" />
<view class="noarray-font">
暂无拣货照片
</view>
</view>
</scroll-view>
<scroll-view scroll-y="true" class="photowall-other" scroll-with-animation v-if="topbuttontarget==1">
<view class="photowall-other-one" v-for="(item,index) in suixingdanarr" :key="index"
@click="previewImage(item,index,suixingdanarr,1)">
@ -401,11 +411,11 @@
</scroll-view>
</view>
<view class="contain-left">
<view v-show="openselect" class="mengban" @click="openselect=false"></view>
<view class="left-select-more" v-show="openselect" >
<view class="left-select-more" v-show="openselect">
<view class="more-bottom">
<view class="bottom-left" @click="chongzhi">
重置
@ -512,11 +522,12 @@
<view class="left-menu-father">
<scroll-view scroll-y="true" scroll-with-animation class="left-menu-scroll" :scroll-top="leftscrolltop"
@scrolltolower="plsbuytolower" :lower-threshold="400">
<view class="pls-card" v-for="(v,i) in plsbuy" :key='i' @click="clickLeftMenu(i,v)"
:style="{borderColor: i==lefttarget? ``:`#fff` }">
<view class="pls-card" v-for="(v,i) in plsbuy" :key='i' @click="clickLeftMenu(i,v)" :style="{
borderColor: i === lefttarget ? '' : 'transparent',
background: i === lefttarget ? '#fff' : 'rgba(255,255,255,0.6)'
}">
<text style="display: block;background: #ff5757;
position: absolute;width: 1.3vw;height: 1.3vw;border-radius: 50%;right: -0.1vw;top: -0.1vw;"
v-if="v.izNew=='Y'">
position: absolute;width: 1.3vw;height: 1.3vw;border-radius: 50%;right: -0.1vw;top: -0.1vw;" v-if="v.izNew=='Y'">
</text>
<view class="pls-card-title">
<view class="title-left">
@ -534,21 +545,17 @@
</view>
</view>
<view class="pls-card-middle">
<view class="middle-heng"></view>
<view class="pls-card-middle-one">
<view class="middle-title">
{{ v.qgDate }}
</view>
<view class="middle-heng-father">
<view class="middle-heng"
style="border-top-left-radius: 20rpx;border-bottom-left-radius: 20rpx;"></view>
<view class="middle-heng" style="border-radius: 20rpx;background-color: #1083F8;">
</view>
<view class="middle-ball" :style="{backgroundColor: `#1083F8`}"></view>
<image class="middle-ball-img" src="/static/index/requestform/isok.png" />
</view>
<view class="end-font">
<view class="" :style="{color: `#1083F8`}">
<view>
采购
</view>
<view style="font-size: 25rpx;">
@ -561,29 +568,16 @@
{{ v.jhTime?.slice(0,10) }}
</view>
<view class="middle-heng-father">
<view class="middle-heng"></view>
<view class="middle-heng" v-if="Number(v.status)>=1"
style="border-radius: 20rpx;background-color: #1083F8;width: 105%;margin-left: -5%;">
</view>
<view class="middle-ball" :style="{backgroundColor: `#1083F8`}"></view>
<view class="middle-ball"
:style="Number(v.status)>=1?{backgroundColor: `#1083F8`}:{} ">
</view>
<!-- <view class="middle-ball"
:style="Number(v.status)>=1?{backgroundColor: `#1083F8`}:{} ">
</view> -->
<view class="middle-ball" v-if="Number(v.status)<1"></view>
<image class="middle-ball-img" v-else src="/static/index/requestform/isok.png" />
</view>
<view class="end-font">
<!-- <view class=""
:style="Number(v.status)<3 && Number(v.status)>0?{color: `#1083F8`}:{} ">
拣货
</view> -->
<view class="" :style="Number(v.status)>=1?{color: `#1083F8`}:{}">
<view>
拣货
</view>
<view style="font-size: 25rpx;" v-if="Number(v.status)>=1 && v.jhBy">
<view style="font-size: 25rpx;" v-if=" v.jhBy">
{{ "[ " + v.jhBy + " ]" }}
</view>
</view>
@ -594,22 +588,18 @@
</view>
<view class="middle-heng-father">
<view class="middle-heng"
style="border-top-right-radius: 20rpx;border-bottom-right-radius: 20rpx;">
</view>
<view class="middle-heng" v-if="Number(v.status)>=2"
style="border-radius: 20rpx;background-color: #1083F8;width: 105%;margin-left: -5%;">
</view>
<view class="middle-ball" :style="{backgroundColor: `#1083F8`}"></view>
<!-- <view class="middle-ball" :style="{backgroundColor: `#1083F8`}"></view> -->
<view class="middle-ball"
:style="Number(v.status)>=2?{backgroundColor: `#1083F8`}:{} ">
</view>
:style="{backgroundColor: Number(v.status)==1? ``:`#E5E5E5`}"
v-if="Number(v.status)!=2"></view>
<image class="middle-ball-img" v-else src="/static/index/requestform/isok.png" />
</view>
<view class="end-font">
<view :style="Number(v.status)>=2?{color: `#1083F8`}:{}">
<view>
完结
</view>
<view style="font-size: 25rpx;" v-if="Number(v.status)>=2 && v.wjBy">
<view style="font-size: 25rpx;" v-if=" v.wjBy">
{{ "[ " + v.wjBy + " ]" }}
</view>
</view>
@ -1078,7 +1068,7 @@
<script setup lang="ts">
import { ref, onMounted, reactive, onBeforeUnmount, computed, nextTick, defineProps, onUnmounted } from 'vue';
import { editIzNew,queryPickingRecordList, queryJhzpList, addSxd, querySxdList, queryInvoicingList, getCgdMaterialTreeData, queryNuInfoByNuId, updateKfstatus, queryCgdList, queryCgdInfoList, queryWlInfoByWlId, voidedCgdMain, getCgrLis, getGysList, upload, editPrice, pickingInfo } from './api/lunpan.js'
import { editIzNew, queryPickingRecordList, queryJhzpList, addSxd, querySxdList, queryInvoicingList, getCgdMaterialTreeData, queryNuInfoByNuId, updateKfstatus, queryCgdList, queryCgdInfoList, queryWlInfoByWlId, voidedCgdMain, getCgrLis, getGysList, upload, editPrice, pickingInfo } from './api/lunpan.js'
import { onShow, onLoad, onHide, onPageScroll } from "@dcloudio/uni-app"
import calendar from '@/component/public/calendar.vue'
import superpicker from '@/component/public/superpicker.vue'
@ -1382,6 +1372,7 @@
const nomessageshow = ref(false);
const firstgetqueryCgdList = () => {
queryCgdList(plzinfo).then((res : any) => {
plsbuy.value.push(...res.result.records)
alltotal.value = res.result.total
if (!res.result.total) {
@ -1424,7 +1415,7 @@
})
}
const lefttarget = ref(0);
const clickLeftMenu = (index : any,item:any) => {
const clickLeftMenu = (index : any, item : any) => {
let num = Math.ceil((index + 1))
leftscrolltop.value = (num - 2) * 180;
lefttarget.value = index;
@ -1444,7 +1435,7 @@
item.izNew = 'N'
editIzNew({ id: item.id })
}
}
const showvalue = ref({
materialImg: "",
@ -1586,7 +1577,7 @@
const clickshare = () => {
console.log("-----------------------> 点击分享按钮");
uni.share({
provider: "weixin",
scene: "WXSceneSession",
@ -1601,10 +1592,10 @@
icon: 'none', // 'none'
duration: 20000
})
console.log("-------------------success:",res);
console.log("-------------------success:", res);
},
fail: function (err) {
console.log("------------------- fail:",err);
console.log("------------------- fail:", err);
uni.showToast({
title: err,
icon: 'none', // 'none'
@ -2005,7 +1996,7 @@
const textStyle = computed(() => ({
color: segColors.value[0] || rgbToHex(from),
fontSize: '30rpx',
fontWeight: '500',
fontWeight: '600',
zIndex: 3
}));
@ -2180,9 +2171,9 @@
height: 5.5vh;
border-radius: 40rpx;
font-size: 28rpx;
background-color: #DFF4FC;
background-color: #fff;
border: 1rpx solid #0da6f8;
color: #1083F8;
color: #0da6f8;
display: flex;
justify-content: center;
align-items: center;
@ -2259,9 +2250,9 @@
height: 4vh;
border-radius: 40rpx;
font-size: 28rpx;
background-color: #DFF4FC;
background-color: #fff;
border: 1rpx solid #0da6f8;
color: #1083F8;
color: #0da6f8;
display: flex;
justify-content: center;
align-items: center;
@ -2327,8 +2318,23 @@
width: 100%;
height: 11vh;
margin-top: 1vh;
// background-color: blue;
display: flex;
position: relative;
.middle-heng {
position: absolute;
left: 4%;
top: 35%;
transform: translateY(-35%);
width: 92%;
height: 2px;
/* 虚线粗细 */
background-image: repeating-linear-gradient(to right,
#E5E5E5 0,
#E5E5E5 6px,
transparent 6px,
transparent 10px);
}
.pls-card-middle-one {
width: 33.3%;
@ -2350,21 +2356,19 @@
height: 4vh;
position: relative;
.middle-heng {
width: 100%;
height: 0.8vh;
.middle-ball-img {
width: 35rpx;
height: 35rpx;
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
background-color: #EEEEEE;
left: 50%;
transform: translate(-50%, -50%);
}
.middle-ball {
width: 30rpx;
height: 30rpx;
background-color: #EEEEEE;
width: 20rpx;
height: 20rpx;
background-color: #1083F8;
position: absolute;
top: 50%;
left: 50%;
@ -2754,8 +2758,8 @@
}
.title-input-img {
width: 50rpx;
height: 50rpx;
width: 35rpx;
height: 35rpx;
position: absolute;
right: 220rpx;
top: 50%;
@ -3423,4 +3427,24 @@
-webkit-transform-style: preserve-3d;
-webkit-overflow-scrolling: touch;
}
.noarray {
width: 90%;
height: 100%;
// background-color: red;
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
.noarray-img {
margin-top: -200rpx;
width: 400rpx;
height: 400rpx;
}
.noarray-font{
margin-top: -70rpx;
color: #888888;
}
}
</style>

View File

@ -170,7 +170,7 @@
},
cgdId: {
type: String,
default: 0
default: ""
}
})
watch(

View File

@ -2,7 +2,7 @@
<view>
<view class="purbox guodu" :style="show?'top:6vh':'top:-99vh'">
<view class="lfitem">
<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">
<view class="pls-card" v-for="(v,i) in generatedOrder" :key='i' @click="clickLeftMenu(i)"
:style="{borderColor: i==lefttarget? ``:`#fff`,marginTop:i==0?'2vw':'' }">
<view class="pls-card-title">
@ -13,33 +13,26 @@
<text style="position: absolute;bottom: 4rpx;left: -30rpx;">
</text>
<view class="title-right-big">
{{Number(v.totalPrice).toFixed(2)}}
</view>
<!-- <image class="title-right-img" src="/static/more.png" @click="openmore(i)" /> -->
</view>
</view>
<view class="pls-card-middle">
<view class="middle-heng"></view>
<view class="pls-card-middle-one">
<view class="middle-title">
{{v.qgDate}}
</view>
<view class="middle-heng-father">
<view class="middle-heng"
style="border-top-left-radius: 20rpx;border-bottom-left-radius: 20rpx;"></view>
<view class="middle-heng" style="border-radius: 20rpx;background-color: #1083F8;">
</view>
<!-- <view class="middle-heng" v-if="Number(v.status)<3 "
style="border-radius: 20rpx;background-color: #1083F8;"></view> -->
<view class="middle-ball"
:style="Number(v.status)<3?{backgroundColor: `#1083F8`}:{} "></view>
<!-- <view class="middle-ball" :style="{backgroundColor: `#1083F8`}"></view> -->
<image class="middle-ball-img" src="/static/index/requestform/isok.png" />
</view>
<view class="end-font">
<view :style="Number(v.status)<3?{color: `#1083F8`}:{} ">
<view>
采购
</view>
<view style="font-size: 25rpx;">
@ -50,30 +43,17 @@
<view class="pls-card-middle-one">
<view class="middle-title">
{{ Number(v.status)==1 ?``:v.jhTime }}
</view>
<view class="middle-heng-father">
<view class="middle-heng"></view>
<!-- <view class="middle-heng"
style="border-radius: 20rpx;background-color: #1083F8;width: 105%;margin-left: -5%;">
</view> -->
<view class="middle-heng" v-if="Number(v.status)==1 "
style="border-radius: 20rpx;background-color: #1083F8;width: 105%;margin-left: -5%;">
</view>
<view class="middle-ball"
:style="Number(v.status)==1 ?{backgroundColor: `#1083F8`}:{} ">
</view>
<!-- <view class="middle-ball" :style="{backgroundColor: `#1083F8`}"></view> -->
<view class="middle-ball"
:style="Number(v.status)==1 ?{backgroundColor: `#1083F8`}:{} ">
</view>
<view class="middle-ball" style="background-color: #1083F8;"></view>
</view>
<view class="end-font">
<!-- <view class=""
:style="Number(v.status)<3 && Number(v.status)>0?{color: `#1083F8`}:{} ">
拣货
</view> -->
<view class="" :style="Number(v.status)==1 ?{color: `#1083F8`}:{}">
<view>
拣货
</view>
<view style="font-size: 25rpx;" v-if="Number(v.status)==1 ">
@ -86,24 +66,15 @@
{{v.wjTime}}
</view>
<view class="middle-heng-father">
<view class="middle-heng"
style="border-top-right-radius: 20rpx;border-bottom-right-radius: 20rpx;">
</view>
<view class="middle-heng" v-if="Number(v.status)<3 && Number(v.status)>1 "
style="border-radius: 20rpx;background-color: #1083F8;width: 105%;margin-left: -5%;">
</view>
<view class="middle-ball"
:style="Number(v.status)<3 && Number(v.status)>1?{backgroundColor: `#1083F8`}:{} ">
</view>
<view class="middle-ball"></view>
</view>
<view class="end-font">
<view class=""
:style="Number(v.status)<3 && Number(v.status)>1?{color: `#1083F8`}:{} ">
<view>
完结
</view>
<view style="font-size: 25rpx;" v-if="Number(v.status)==2 ">
<!-- <view style="font-size: 25rpx;" v-if="Number(v.status)==2 ">
[ {{v.wjTime}} ]
</view>
</view> -->
</view>
</view>
</view>
@ -129,74 +100,76 @@
</scroll-view>
</view>
<view class="rigitem">
<scroll-view scroll-y="true" class="crdcroll" scroll-with-animation enable-back-to-top @scroll="scroll" :scroll-top="scrolltoplist">
<view style="height:2vw;" ></view>
<view class="fler" v-for="(v,index) in generatedOrder[lefttarget]?.cgdInfoList" :key="index" >
<view class="speitem guodu" >
<image :src="v.materialImg?serverUrl+v.materialImg:'/static/index/procurement/k.png'"
mode="aspectFill">
</image>
<view class="cardp">
<view v-if="v.categoryName">{{v.categoryName}}</view>
<view v-if="v.typeName">{{v.typeName}}</view>
<view v-if="v.medicationName">{{v.medicationName}}</view>
</view>
</view>
<view class="msitem guodu" >
<view>
<view>{{v.wlName}}</view>
<text>{{v.wlMaterialNo}}</text>
<text> <text class="q">{{Number(v.totalPrice).toFixed(2) }}</text></text>
</view>
<view style="white-space: nowrap;">
<text style="white-space: nowrap;"> 规格型号: {{v.wlSpecificationModel}}</text>
</view>
<view>
<text>采购单价: {{v.arrivalPrice?Number(v.arrivalPrice).toFixed(2) : Number(v.procurementPrice).toFixed(2) }}</text>
<text>采购单位: {{v.wlUnits}}</text>
</view>
<view></view>
<view>
<view style="align-items: flex-start;">
<text style="color: #1083F8;">{{v.purchaseQuantity}}</text>
<text style="color: #1083F8;">采购数量</text>
</view>
<view>
<text>{{v.kcsl?v.kcsl:'0'}}</text>
<text>库存数量</text>
</view>
<view>
<text>{{v.wlUpperLimit}}</text>
<text>物料上限 </text>
</view>
<view>
<text>{{v.wlLowerLimit}}</text>
<text> 物料下限</text>
</view>
</view>
</view>
<scroll-view scroll-y="true" class="crdcroll" scroll-with-animation enable-back-to-top @scroll="scroll"
:scroll-top="scrolltoplist">
<view style="height:2vw;"></view>
<view class="fler" v-for="(v,index) in generatedOrder[lefttarget]?.cgdInfoList" :key="index">
<view class="speitem guodu">
<image :src="v.materialImg?serverUrl+v.materialImg:'/static/index/procurement/k.png'"
mode="aspectFill">
</image>
<view class="cardp">
<view v-if="v.categoryName">{{v.categoryName}}</view>
<view v-if="v.typeName">{{v.typeName}}</view>
<view v-if="v.medicationName">{{v.medicationName}}</view>
</view>
</view>
<view style="height: 1.5vw;" v-if="generatedOrder[lefttarget]?.cgdInfoList.length>2"></view>
<view class="msitem guodu">
<view>
<view>{{v.wlName}}</view>
<text>{{v.wlMaterialNo}}</text>
<text> <text class="q">{{Number(v.totalPrice).toFixed(2) }}</text></text>
</view>
<view style="white-space: nowrap;">
<text style="white-space: nowrap;"> 规格型号: {{v.wlSpecificationModel}}</text>
</view>
<view>
<text>采购单价:
{{v.arrivalPrice?Number(v.arrivalPrice).toFixed(2) : Number(v.procurementPrice).toFixed(2) }}</text>
<text>采购单位: {{v.wlUnits}}</text>
</view>
<view></view>
<view>
<view style="align-items: flex-start;">
<text style="color: #1083F8;">{{v.purchaseQuantity}}</text>
<text style="color: #1083F8;">采购数量</text>
</view>
<view>
<text>{{v.kcsl?v.kcsl:'0'}}</text>
<text>库存数量</text>
</view>
<view>
<text>{{v.wlUpperLimit}}</text>
<text>物料上限 </text>
</view>
<view>
<text>{{v.wlLowerLimit}}</text>
<text> 物料下限</text>
</view>
</view>
</view>
</view>
<view style="height: 1.5vw;" v-if="generatedOrder[lefttarget]?.cgdInfoList.length>2"></view>
</scroll-view>
<view class="anniubtn">
<view class="gb" @click="emit('cloe')">取消</view>
<view class="scsgd" @click="connfig">生成采购单</view>
</view>
<!-- -->
</view>
</view>
</view>
</template>
<script setup lang="ts">
import { ref, onMounted, reactive, onBeforeUnmount, computed, nextTick, defineProps ,defineComponent, watch} from 'vue';
import { generatedPurchaseViewOrder,generatedPurchaseOrder } from '../api/lunpan.js'
const emit = defineEmits(['cloe','config'])
import { ref, onMounted, reactive, onBeforeUnmount, computed, nextTick, defineProps, defineComponent, watch } from 'vue';
import { generatedPurchaseViewOrder, generatedPurchaseOrder } from '../api/lunpan.js'
const emit = defineEmits(['cloe', 'config'])
const leftscrolltop = ref(0);
const scrolltoplist = ref(0);
const lefttarget = ref(0);
const form = reactive({
nuId: '',
pageNo: 1,
@ -210,15 +183,15 @@
canpull: true
})
const props = defineProps({
arrlist: {
type: Array,
default:[]
},
show: {
type: Boolean,
default:false
}
arrlist: {
type: Array,
default: []
},
show: {
type: Boolean,
default: false
}
})
const generatedOrder = ref([])
const serverUrl = ref('')
@ -226,19 +199,19 @@
serverUrl.value = uni.getStorageSync('serverUrl') + '/sys/common/static/';
})
watch(
()=>props.show,
()=>{
if(props.show==true){
() => props.show,
() => {
if (props.show == true) {
console.log(props.arrlist)
generatedPurchaseViewOrder(props.arrlist).then(res=>{
console.log( res.result)
generatedOrder.value = res.result;
generatedPurchaseViewOrder(props.arrlist).then(res => {
console.log(res.result)
generatedOrder.value = res.result;
})
}
}
)
const oldscl = ref(0)
const scroll = (e)=>{
const scroll = (e) => {
oldscl.value = e.detail.scrollTop
}
const clickLeftMenu = (index : any) => {
@ -250,51 +223,53 @@
form.pageNo = 1
form.canpull = true;
scrolltoplist.value = oldscl.value;
nextTick(()=> {
scrolltoplist.value = 0
nextTick(() => {
scrolltoplist.value = 0
});
// console.log("!!!!",form)
}
const timerflag = ref(true);
const connfig = () =>{
if(timerflag.value==false){return}
const connfig = () => {
if (timerflag.value == false) { return }
timerflag.value = false;
generatedPurchaseOrder(generatedOrder.value).then(res=>{
generatedPurchaseOrder(generatedOrder.value).then(res => {
uni.showToast({
icon:res.success?'success':'error',
title:res.message
icon: res.success ? 'success' : 'error',
title: res.message
})
setTimeout(()=>{
if(res.success){
setTimeout(() => {
if (res.success) {
emit('config')
timerflag.value = true;
}
},700)
}, 700)
})
}
</script>
<style scoped lang="less">
.anniubtn{
.anniubtn {
width: 100%;
height: 7vw;
display: flex;
justify-content: flex-end;
align-items: center;
.gb{
.gb {
width: 10vw;
background: #EDEDEF;
color: #888888;
}
.scsgd{
.scsgd {
width: 12vw;
background: linear-gradient(0deg, #CAE0F9, #E9F4FF);
border: 1px solid rgba(3,133,250,0.34);
border: 1px solid rgba(3, 133, 250, 0.34);
color: #0385FA;
}
view{
view {
display: flex;
justify-content: center;
align-items: center;
@ -305,11 +280,12 @@
height: 3.8vw;
}
}
.purbox{
.purbox {
width: 83vw;
height: 90vh;
background: #FFFFFF;
box-shadow: 0rpx 0rpx 1.3vw 0rpx rgba(136,141,153,0.26);
box-shadow: 0rpx 0rpx 1.3vw 0rpx rgba(136, 141, 153, 0.26);
border-radius: 1.6vw;
position: fixed;
top: 6vh;
@ -317,24 +293,28 @@
z-index: 133;
display: flex;
overflow: hidden;
.lfitem{
.lfitem {
width: 33vw;
height: 100%;
background: #EFF0F4;
}
.rigitem{
.rigitem {
width: 50vw;
height: 100%;
background: #fff;
.crdcroll {
width: 100%;
height: calc(90vh - 7vw);
}
.actve{
.actve {
border: 2px solid #1083F8 !important;
}
.fler {
width: 47vw;
height: 15.5vw;
@ -347,22 +327,22 @@
overflow: hidden;
justify-content: flex-start;
white-space: nowrap;
.zkf {
width: 7vw;
right: -7vw;
}
.msitem {
width: 25vw;
height: 100%;
padding:0.5vw 1vw 1vw;
padding: 0.5vw 1vw 1vw;
display: inline-block;
>view {
margin-top: 0.8vw;
&:nth-child(5) {
width: 28vw;
height: 3.4vw;
@ -370,6 +350,7 @@
justify-content: space-between;
position: relative;
left: 0;
>view {
width: 25%;
height: 100%;
@ -377,23 +358,25 @@
flex-direction: column;
position: relative;
align-items: center;
&:nth-child(1) {
text-align: left;
}
&:nth-child(2),&:nth-child(3),&:nth-child(4) {
&:nth-child(2),
&:nth-child(3),
&:nth-child(4) {
text-align: center;
}
text {
&:nth-child(1) {
font-weight: bold;
font-size: 1.7vw;
color: #555555;
}
&:nth-child(2) {
font-weight: 400;
font-size: 1.1vw;
@ -402,18 +385,20 @@
}
}
}
&:nth-child(2),
&:nth-child(3),
&:nth-child(4){
&:nth-child(4) {
display: flex;
justify-content: space-between;
text {
font-weight: 400;
font-size: 1.4vw;
color: #777777;
}
}
&:nth-child(1) {
width: 28vw;
display: flex;
@ -423,6 +408,7 @@
margin-top: 1vw;
white-space: nowrap;
flex: auto;
>view {
width: 13vw;
height: 2vw;
@ -433,7 +419,7 @@
overflow: hidden;
white-space: nowrap;
}
text {
min-width: 3vw;
font-weight: 400;
@ -441,7 +427,8 @@
color: #222222;
white-space: nowrap;
text-align: right;
.q{
.q {
color: #555555;
font-size: 1.6vw;
font-weight: 800;
@ -452,7 +439,7 @@
}
}
}
// .spleft{
// margin-left: -15vw !important;
// }
@ -462,6 +449,7 @@
display: flex;
flex-direction: column;
position: relative;
.cardp {
width: 12.5vw;
height: 4vw;
@ -469,6 +457,7 @@
flex-wrap: wrap;
margin: 0vw auto 0;
align-items: center;
view {
width: 5.5vw;
height: 1.8vw;
@ -483,7 +472,7 @@
color: #555555;
}
}
>image {
width: 10vw;
height: 9vw;
@ -493,12 +482,13 @@
}
}
}
.left-menu-scroll {
height: 100%;
width: 100%;
.pls-card {
width: 30vw;
height: 16.5vw;
@ -508,30 +498,30 @@
margin: 0 auto 1.2vw;
padding: 0 30rpx;
position: relative;
.pls-card-title {
height: 5.5vh;
width: 100%;
display: flex;
justify-content: space-between;
align-items: flex-end;
.title-left {
font-weight: 600;
font-size: 32rpx;
}
.title-right {
display: flex;
align-items: flex-end;
font-size: 30rpx;
position: relative;
.title-right-big {
font-weight: 600;
font-size: 40rpx;
}
.title-right-img {
position: absolute;
right: -10rpx;
@ -541,18 +531,34 @@
}
}
}
.pls-card-middle {
width: 100%;
height: 11vh;
margin-top: 1vw;
// background-color: blue;
position: relative;
display: flex;
.middle-heng {
position: absolute;
left: 4%;
top: 35%;
transform: translateY(-35%);
width: 92%;
height: 2px;
/* 虚线粗细 */
background-image: repeating-linear-gradient(to right,
#E5E5E5 0,
#E5E5E5 6px,
transparent 6px,
transparent 10px);
}
.pls-card-middle-one {
width: 33.3%;
height: 100%;
// background-color: yellow;
.middle-title {
width: 100%;
@ -562,23 +568,21 @@
text-align: center;
font-size: 25rpx;
}
.middle-heng-father {
width: 100%;
height: 4vh;
position: relative;
.middle-heng {
width: 100%;
height: 0.8vh;
.middle-ball-img {
width: 35rpx;
height: 35rpx;
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
background-color: #EEEEEE;
left: 50%;
transform: translate(-50%, -50%);
}
.middle-ball {
width: 30rpx;
height: 30rpx;
@ -590,7 +594,7 @@
border-radius: 50%;
}
}
.end-font {
width: 100%;
height: 6vh;
@ -602,25 +606,25 @@
}
}
}
.pls-card-end {
width: 100%;
height: 7vh;
margin-top:0.5vw;
margin-top: 0.5vw;
display: flex;
justify-content: space-between;
position: relative;
.end-left {
height: 100%;
display: flex;
align-items: center;
.end-left-img {
width: 30rpx;
height: 30rpx;
}
.end-left-font {
margin-top: 3rpx;
width: 400rpx;
@ -633,7 +637,7 @@
text-overflow: ellipsis;
}
}
.tag-fail {
width: 120rpx;
height: 50rpx;
@ -647,7 +651,7 @@
right: -5rpx;
bottom: 20rpx;
}
.tag-success {
width: 120rpx;
height: 50rpx;
@ -664,9 +668,10 @@
}
}
}
.guodu {
transition: .4s;
-webkit-transform-style: preserve-3d;
-webkit-overflow-scrolling: touch;
}
</style>
transition: .4s;
-webkit-transform-style: preserve-3d;
-webkit-overflow-scrolling: touch;
}
</style>

View File

@ -297,8 +297,8 @@
height: 3.3vw;
image {
width: 2.2vw;
height: 2.2vw;
width: 1.8vw;
height: 1.8vw;
margin:0 0.5vw;
}

View File

@ -14,8 +14,10 @@
<view class="left-menu-father">
<scroll-view scroll-y="true" scroll-with-animation class="left-menu-scroll" :scroll-top="leftscrolltop"
@scrolltolower="plsbuytolower" :lower-threshold="400">
<view class="pls-card" v-for="(v,i) in plsbuy" :key='i' @click="clickLeftMenu(i,v)"
:style="{borderColor: i==lefttarget? ``:`#fff` }">
<view class="pls-card" v-for="(v,i) in plsbuy" :key='i' @click="clickLeftMenu(i,v)" :style="{
borderColor: i === lefttarget ? '' : 'transparent',
background: i === lefttarget ? '#fff' : 'rgba(255,255,255,0.6)'
}">
<view v-if="moreindex==i" class="more-father">
<view class="more-one" @click="share">
@ -46,27 +48,18 @@
</view>
</view>
<view class="pls-card-middle">
<view class="middle-heng"></view>
<view class="pls-card-middle-one">
<view class="middle-title">
{{ v.qgDate }}
</view>
<view class="middle-heng-father">
<view class="middle-heng"
style="border-top-left-radius: 20rpx;border-bottom-left-radius: 20rpx;"></view>
<view class="middle-heng" style="border-radius: 20rpx;background-color: #1083F8;">
</view>
<!-- <view class="middle-heng" v-if="Number(v.status)<3 "
style="border-radius: 20rpx;background-color: #1083F8;"></view> -->
<!-- <view class="middle-ball"
:style="Number(v.status)<3?{backgroundColor: `#1083F8`}:{} "></view> -->
<view class="middle-ball" :style="{backgroundColor: `#1083F8`}"></view>
<image class="middle-ball-img" src="/static/index/requestform/isok.png" />
</view>
<view class="end-font">
<!-- <view class="" :style="Number(v.status)<3?{color: `#1083F8`}:{} ">
采购
</view> -->
<view class="" :style="{color: `#1083F8`}">
采购
<view>
采购{{ Number(v.status) }}
</view>
<view style="font-size: 25rpx;">
{{ "[ " + v.qgBy + " ]" }}
@ -78,24 +71,17 @@
{{ v.jhTime?.slice(0,10) }}
</view>
<view class="middle-heng-father">
<view class="middle-heng"></view>
<!-- <view class="middle-heng"
style="border-radius: 20rpx;background-color: #1083F8;width: 105%;margin-left: -5%;">
</view> -->
<view class="middle-heng" v-if="Number(v.status)>0"
style="border-radius: 20rpx;background-color: #1083F8;width: 105%;margin-left: -5%;">
</view>
<view class="middle-ball"
:style="Number(v.status)>0?{backgroundColor: `#1083F8`}:{} ">
</view>
<!-- <view class="middle-ball" :style="{backgroundColor: `#1083F8`}"></view> -->
<view class="middle-ball"
:style="Number(v.status)>0?{backgroundColor: `#1083F8`}:{} ">
</view>
<view class="middle-ball" style="background-color: #1083F8;"
:style=" v?.cgdType=='9' ?{backgroundColor:`#FF5757`}:{}"
v-if="Number(v.status)<1"></view>
<image class="middle-ball-img" v-else src="/static/index/requestform/isok.png" />
</view>
<view class="end-font">
<view class="" :style="Number(v.status)>0?{color: `#1083F8`}:{}">
拣货
<view :style=" v?.cgdType=='9' ?{color:`#FF5757`}:{}">
{{ v?.cgdType=='9' ?`已作废`:`拣货` }}
</view>
<view style="font-size: 25rpx;" v-if="Number(v.status)>0 && v.jhBy ">
{{ "[ " + v.jhBy + " ]" }}
@ -107,23 +93,15 @@
{{ v.wjTime?.slice(0,10) }}
</view>
<view class="middle-heng-father">
<view class="middle-heng"></view>
<!-- <view class="middle-heng"
style="border-radius: 20rpx;background-color: #1083F8;width: 105%;margin-left: -5%;">
</view> -->
<view class="middle-heng" v-if="Number(v.status)>1"
style="border-radius: 20rpx;background-color: #1083F8;width: 105%;margin-left: -5%;">
</view>
<view class="middle-ball"
:style="Number(v.status)>1?{backgroundColor: `#1083F8`}:{} ">
</view>
<!-- <view class="middle-ball" :style="{backgroundColor: `#1083F8`}"></view> -->
<view class="middle-ball"
:style="Number(v.status)>1?{backgroundColor: `#1083F8`}:{} ">
</view>
<view class="middle-ball" :style="Number(v.status)==1?{backgroundColor: `#1083F8`}:{} "
v-if="Number(v.status)<2"></view>
<image class="middle-ball-img" v-else src="/static/index/requestform/isok.png" />
</view>
<view class="end-font">
<view class="" :style="Number(v.status)>1?{color: `#1083F8`}:{}">
<view>
完结
</view>
<view style="font-size: 25rpx;" v-if="Number(v.status)>1 && v.wjBy ">
@ -196,7 +174,8 @@
<view class="right-title">
{{ v.wlName }}
</view>
<view class="right-middle" style="white-space: nowrap;text-overflow:ellipsis;overflow: hidden;">
<view class="right-middle"
style="white-space: nowrap;text-overflow:ellipsis;overflow: hidden;">
{{ v.wlSpecificationModel }}
</view>
<view style="color: #888888;">
@ -259,11 +238,11 @@
{{ showvalue?.wlMaterialNo }}
</view>
</view>
<view class="threeone" style="white-space: nowrap; ">
<view class="gray-text" style="white-space: nowrap;">
<view class="threeone" style="white-space: nowrap; ">
<view class="gray-text" style="white-space: nowrap;">
规格型号
</view>
<view class="right-text" style="white-space: nowrap;">
<view class="right-text" style="white-space: nowrap;">
{{ showvalue?.wlSpecificationModel }}
</view>
</view>
@ -830,9 +809,25 @@
width: 100%;
height: 11vh;
margin-top: 1vh;
// background-color: blue;
position: relative;
display: flex;
.middle-heng {
position: absolute;
left: 4%;
top: 35%;
transform: translateY(-35%);
width: 92%;
height: 2px;
/* 虚线粗细 */
background-image: repeating-linear-gradient(to right,
#E5E5E5 0,
#E5E5E5 6px,
transparent 6px,
transparent 10px);
}
.pls-card-middle-one {
width: 33.3%;
height: 100%;
@ -852,20 +847,18 @@
height: 4vh;
position: relative;
.middle-heng {
width: 100%;
height: 1vh;
.middle-ball-img {
width: 35rpx;
height: 35rpx;
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
background-color: #EEEEEE;
left: 50%;
transform: translate(-50%, -50%);
}
.middle-ball {
width: 30rpx;
height: 30rpx;
width: 20rpx;
height: 20rpx;
background-color: #EEEEEE;
position: absolute;
top: 50%;
@ -927,6 +920,7 @@
justify-content: center;
background-color: #FDEBEC;
color: #FF5757;
border: 1rpx solid #FF5757;
position: absolute;
right: -5rpx;
bottom: 20rpx;
@ -940,6 +934,7 @@
align-items: center;
justify-content: center;
background-color: #ECF6FF;
border: 1rpx solid #0385FA;
color: #1083F8;
position: absolute;
right: -5rpx;
@ -1155,8 +1150,9 @@
height: 120rpx;
display: flex;
position: relative;
white-space: nowrap;
flex-wrap: nowrap;
white-space: nowrap;
flex-wrap: nowrap;
.gray-text {
color: #999999;
margin-bottom: 3rpx;
@ -1184,8 +1180,8 @@
}
.title-input-img {
width: 50rpx;
height: 50rpx;
width: 35rpx;
height: 35rpx;
position: absolute;
right: 150rpx;
top: 50%;

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB