Compare commits

..

No commits in common. "c4a809510aec2e4e582892ef344f41c43810e2dc" and "3fd5753c1fd0ccc5797d610a87bdc45b23a22d33" have entirely different histories.

8 changed files with 327 additions and 352 deletions

View File

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

View File

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

View File

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

View File

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

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

View File

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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB