This commit is contained in:
parent
8d81be9f99
commit
c74b9b0da5
|
|
@ -93,36 +93,12 @@
|
||||||
</view>
|
</view>
|
||||||
</scroll-view>
|
</scroll-view>
|
||||||
</view>
|
</view>
|
||||||
<view class="right-one-white center" v-if="InvoicingList.length<2&&InvoicingList.length">
|
<!-- <view class="right-one-white center" v-if="InvoicingList.length<2&&InvoicingList.length">
|
||||||
<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="right-one-white center" v-if="InvoicingList.length<3&&InvoicingList.length">
|
|
||||||
<view class="que">
|
|
||||||
<image src="/static/index/procurement/que.png" mode="aspectFill"></image>
|
|
||||||
<view>暂无数据</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="right-one-white center" v-if="InvoicingList.length<4&&InvoicingList.length">
|
|
||||||
<view class="que">
|
|
||||||
<image src="/static/index/procurement/que.png" mode="aspectFill"></image>
|
|
||||||
<view>暂无数据</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="right-one-white center" v-if="InvoicingList.length<5&&InvoicingList.length">
|
|
||||||
<view class="que">
|
|
||||||
<image src="/static/index/procurement/que.png" mode="aspectFill"></image>
|
|
||||||
<view>暂无数据</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="right-one-white center" v-if="InvoicingList.length<6&&InvoicingList.length">
|
|
||||||
<view class="que">
|
|
||||||
<image src="/static/index/procurement/que.png" mode="aspectFill"></image>
|
|
||||||
<view>暂无数据</view>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<defaultr cont="暂无数据" v-if="InvoicingList.length==0 "
|
<defaultr cont="暂无数据" v-if="InvoicingList.length==0 "
|
||||||
style="position: absolute;width: 10vw;height: 10vw;"></defaultr>
|
style="position: absolute;width: 10vw;height: 10vw;"></defaultr>
|
||||||
</view>
|
</view>
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,405 @@
|
||||||
|
<template>
|
||||||
|
<view class="cont">
|
||||||
|
<view class="topcon">
|
||||||
|
<view class="title" >
|
||||||
|
<view></view>
|
||||||
|
采购单
|
||||||
|
</view>
|
||||||
|
<view class="zuofei" @click="emit(`link`,0)">
|
||||||
|
<image src="/static/index/procurement/bk.png" mode="aspectFill"></image>
|
||||||
|
返回
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="cgdh" >
|
||||||
|
<view class="conts">
|
||||||
|
<text>采购单号: </text>101C20251121006
|
||||||
|
</view>
|
||||||
|
<view class="conts">
|
||||||
|
<text>采购日期: </text>2025-10-12
|
||||||
|
</view>
|
||||||
|
<view class="jiage">
|
||||||
|
<view>
|
||||||
|
<text>¥</text>0.35
|
||||||
|
</view>
|
||||||
|
<text>采购价格 </text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<scroll-view scroll-y="true" class="caigoulist" scroll-with-animation @scrolltolower="scrolltolower()" lower-threshold="300"
|
||||||
|
:enhanced="true" :bounce="true" enable-back-to-top>
|
||||||
|
<view class="fler" v-for="(v,index) in InvoicingList" :key="index">
|
||||||
|
<view class="fler-view" >
|
||||||
|
<view class="carditem guodu" >
|
||||||
|
<view class="speitem guodu">
|
||||||
|
<view class="imghs">
|
||||||
|
<image style="border-radius: 1vw;"
|
||||||
|
:src="v.materialImg?serverUrl+v.materialImg:'/static/index/procurement/k.png'"
|
||||||
|
mode="aspectFill">
|
||||||
|
</image>
|
||||||
|
</view>
|
||||||
|
<view class="cardp">
|
||||||
|
<view>复健用品</view>
|
||||||
|
<view>复健用品</view>
|
||||||
|
</view>
|
||||||
|
<!-- <view class="cardp">
|
||||||
|
<view v-if="v.categoryId_dictText">{{v.categoryId_dictText}}</view>
|
||||||
|
<view v-if="v.typeId_dictText">{{v.typeId_dictText}}</view>
|
||||||
|
<view v-if="v.medicationId_dictText">{{v.medicationId_dictText}}</view>
|
||||||
|
</view> -->
|
||||||
|
</view>
|
||||||
|
<view class="msitem guodu">
|
||||||
|
<view style="margin-top: 1.4vw;">
|
||||||
|
<view>纸尿裤-拉拉裤纸尿裤拉拉裤纸尿裤</view>
|
||||||
|
</view>
|
||||||
|
<view>
|
||||||
|
<text style="white-space: nowrap;"> 规格型号: 800mm*680mm</text>
|
||||||
|
</view>
|
||||||
|
<view>
|
||||||
|
<text style="white-space: nowrap;"> 品牌型号:品牌型号名称</text>
|
||||||
|
</view>
|
||||||
|
<view>
|
||||||
|
<text style="white-space: nowrap;"> 生产厂家:吉林省捌零信创科技有限...</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
<view class="dibu">
|
||||||
|
<view>
|
||||||
|
<view><text>¥</text>0.32</view>
|
||||||
|
<text>采购价格</text>
|
||||||
|
</view>
|
||||||
|
<view>
|
||||||
|
<view>片</view>
|
||||||
|
<text>采购单位</text>
|
||||||
|
</view>
|
||||||
|
<view>
|
||||||
|
<view><text>¥</text>0.58</view>
|
||||||
|
<text>销售金额</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</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>
|
||||||
|
|
||||||
|
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { ref, onMounted, reactive, onBeforeUnmount, computed, nextTick, defineComponent, inject, watch } from 'vue';
|
||||||
|
const InvoicingList = ref([{},{},{},{},{},])
|
||||||
|
const emit = defineEmits(['link' ])
|
||||||
|
const ification = ref(false)
|
||||||
|
const carnum = ref(2)
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
.caigoulist{
|
||||||
|
width: 100%;
|
||||||
|
height: 47vw;
|
||||||
|
padding: 0 1.4vw;
|
||||||
|
|
||||||
|
.fler {
|
||||||
|
width: 59.5vw;
|
||||||
|
position: relative;
|
||||||
|
.fler-view {
|
||||||
|
width: 59vw;
|
||||||
|
height: 22.5vw;
|
||||||
|
border: 1px solid #E5E5E5;
|
||||||
|
border-radius: 1.6vw;
|
||||||
|
position: relative;
|
||||||
|
margin-bottom: 1.1vw;
|
||||||
|
overflow: hidden;
|
||||||
|
white-space: nowrap;
|
||||||
|
.dibu{
|
||||||
|
width: 100%;
|
||||||
|
height: 10vw;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-around;
|
||||||
|
align-items: center;
|
||||||
|
>view{
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
text{
|
||||||
|
font-size: 1.4vw;
|
||||||
|
color: #555555;
|
||||||
|
}
|
||||||
|
view{
|
||||||
|
font-size: 2.1vw;
|
||||||
|
color: #555555;
|
||||||
|
font-weight: bold;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
text{
|
||||||
|
font-size: 1.6vw;
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.carditem {
|
||||||
|
height: 13vw;
|
||||||
|
display: flex;
|
||||||
|
transition: transform 500ms cubic-bezier(.2, .8, .2, 1);
|
||||||
|
will-change: transform;
|
||||||
|
width: 59vw;
|
||||||
|
|
||||||
|
.add {
|
||||||
|
width: 6.5vw;
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
>view {
|
||||||
|
width: 5.5vw;
|
||||||
|
height: 2.2vw;
|
||||||
|
background: #fff;
|
||||||
|
border-radius: 0.9vw;
|
||||||
|
border: 1px solid #1083F8;
|
||||||
|
font-weight: 400;
|
||||||
|
font-size: 1.4vw;
|
||||||
|
color: #1083F8;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
position: absolute;
|
||||||
|
top: 2.3vw;
|
||||||
|
right: 0.8vw;
|
||||||
|
}
|
||||||
|
|
||||||
|
image {
|
||||||
|
width: 2.5vw;
|
||||||
|
height: 2.5vw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.msitem {
|
||||||
|
width: 38vw;
|
||||||
|
margin-left: 2vw;
|
||||||
|
>view {
|
||||||
|
&:nth-child(2),
|
||||||
|
&:nth-child(3),
|
||||||
|
&:nth-child(4),
|
||||||
|
&:nth-child(6),
|
||||||
|
&:nth-child(5) {
|
||||||
|
margin-top: 1.25vw;
|
||||||
|
max-width: 25vw;
|
||||||
|
white-space: nowrap;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
overflow: hidden;
|
||||||
|
|
||||||
|
text {
|
||||||
|
font-weight: 400;
|
||||||
|
font-size: 1.3vw;
|
||||||
|
color: #777777;
|
||||||
|
margin-top: 0.25vw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&:nth-child(1) {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
height: 2vw;
|
||||||
|
margin-top:2.4vw;
|
||||||
|
|
||||||
|
>view {
|
||||||
|
width: 100%;
|
||||||
|
height: 2vw;
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 1.8vw;
|
||||||
|
color: #222222;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
overflow: hidden;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
text {
|
||||||
|
width: 6vw;
|
||||||
|
font-weight: 300;
|
||||||
|
font-size: 1.4vw;
|
||||||
|
color: #222222;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
.speitem {
|
||||||
|
width: 16.8vw;
|
||||||
|
height: 14vw;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
.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;
|
||||||
|
padding: 0 0.25vw;
|
||||||
|
|
||||||
|
&: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: 10vw;
|
||||||
|
height: 9.1vw;
|
||||||
|
margin: 3vw auto 1.25vw;
|
||||||
|
padding: 0.2vw;
|
||||||
|
background: #fff;
|
||||||
|
border-radius: 1.1vw;
|
||||||
|
|
||||||
|
>image {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
border-radius: 1.1vw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.cont{
|
||||||
|
width: 100%;
|
||||||
|
height: 60.4vw;
|
||||||
|
position: relative;
|
||||||
|
.gys{
|
||||||
|
width: 100%;
|
||||||
|
text-align: right;
|
||||||
|
position: absolute;
|
||||||
|
right: 3.2vw;
|
||||||
|
bottom: 3.2vw;
|
||||||
|
font-size: 1.4vw;
|
||||||
|
color: #555555;
|
||||||
|
}
|
||||||
|
.jiage{
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: space-between;
|
||||||
|
position: absolute;
|
||||||
|
align-items: center;
|
||||||
|
top:0vw;
|
||||||
|
right:5.9vw;
|
||||||
|
text{
|
||||||
|
font-size: 1.3vw;
|
||||||
|
color: #888888;
|
||||||
|
}
|
||||||
|
view{
|
||||||
|
font-size: 2.3vw;
|
||||||
|
color: #333333;
|
||||||
|
font-weight: bold;
|
||||||
|
>text{
|
||||||
|
font-size: 1.4vw
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.cgdh{
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: space-between;
|
||||||
|
height: 3.8vw;
|
||||||
|
position: relative;
|
||||||
|
font-size: 1.4vw;
|
||||||
|
padding:0 2.3vw;
|
||||||
|
margin: 2.2vw auto 2vw;
|
||||||
|
.conts{
|
||||||
|
color: #333333;
|
||||||
|
text{
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
.topcon{
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
height: 3.6vw;
|
||||||
|
padding: 0 2.3vw;
|
||||||
|
align-items: center;
|
||||||
|
margin-top: 1.7vw;
|
||||||
|
.zuofei{
|
||||||
|
width: 9vw;
|
||||||
|
height: 3.6vw;
|
||||||
|
background: #FFFFFF;
|
||||||
|
border-radius: 1.6vw;
|
||||||
|
border: 1px solid #DCDCDC;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
font-size: 1.3vw;
|
||||||
|
color: #555555;
|
||||||
|
image{
|
||||||
|
width: 1.4vw;
|
||||||
|
height: 1.4vw;
|
||||||
|
margin: 0 0.5vw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.title{
|
||||||
|
font-size: 1.7vw;
|
||||||
|
color: #222222;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
view{
|
||||||
|
width: 0.5vw;
|
||||||
|
height: 1.4vw;
|
||||||
|
background: radial-gradient( 0% 0% at 0% 0%, #006DC9 7.25%, #0385FA 100%), #F7F7F7;
|
||||||
|
border-radius: 0.2vw;
|
||||||
|
margin-right: 1vw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
.guodu {
|
||||||
|
transition: .4s;
|
||||||
|
-webkit-transform-style: preserve-3d;
|
||||||
|
-webkit-overflow-scrolling: touch;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
@ -0,0 +1,810 @@
|
||||||
|
<template>
|
||||||
|
<view class="plsbuy-contain guodu" :class="show?'':'unclass'" :style="showbox?'z-index:999':'z-index:-2'">
|
||||||
|
<view class="gys">
|
||||||
|
<view class="tlt">供应商</view>
|
||||||
|
<view class="gssel" @click="gysflag = true">
|
||||||
|
<view>
|
||||||
|
{{gysarr[gysidnum]?.name}}
|
||||||
|
</view>
|
||||||
|
<text @click.stop="gysflag = !gysflag">
|
||||||
|
<image class="guodu" :style="gysflag?'transform: rotate(180deg);':''"
|
||||||
|
:src=" '/static/index/procurement/sj.png' " mode="aspectFill"></image>
|
||||||
|
</text>
|
||||||
|
</view>
|
||||||
|
<view class="tanchu guodu" :class="gysflag?'':'hei0'"
|
||||||
|
:style="`height: ${(gysarr && gysarr.length*8) || 0}vh`">
|
||||||
|
<scroll-view scroll-y="true" class="gysscrol" v-if="gysflag">
|
||||||
|
<view v-for="(v,i) in gysarr" :key='i' :class="gysidnum==i?'acts':''" @click="gysid(i)">
|
||||||
|
<text class="tab-view">{{ v.name }}</text>
|
||||||
|
</view>
|
||||||
|
</scroll-view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="calculator-father">
|
||||||
|
<view v-for="(item,index) in calculatorArray" :key="index">
|
||||||
|
<view :class="blueNumber == index ? `calculator-kuai-target` : ``" class="calculator-kuai"
|
||||||
|
style="font-size: 33rpx;" v-if="item==`AC`" @click="clickKuai(item,index)">
|
||||||
|
清零
|
||||||
|
</view>
|
||||||
|
<view :class="blueNumber == index ? `calculator-kuai-target` : ``" class="calculator-kuai"
|
||||||
|
v-else-if="item==`AE`" @click="clickKuai(item,index)">
|
||||||
|
<image src="/static/cleanone.png" mode="aspectFill"
|
||||||
|
style="width: 50%;height: 50%;margin-left: -5rpx;"></image>
|
||||||
|
</view>
|
||||||
|
<view :class="blueNumber == index ? `calculator-kuai-target` : ``" class="calculator-kuai" v-else
|
||||||
|
@click="clickKuai(item,index)">
|
||||||
|
{{item}}
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="tlt" style="width: 96%;margin-top: 30rpx;margin-bottom: 10rpx;">采购数量 <text style="color: red;"
|
||||||
|
v-if="sx==true">超过库存上限!</text></view>
|
||||||
|
<!-- <view class="qinggou-font">
|
||||||
|
采购数量 <text style="color: red;" v-if="sx==true">超过库存上限!</text>
|
||||||
|
</view> -->
|
||||||
|
<view class="stringShow-father">
|
||||||
|
<view class="jj" @click="jjnum(-1)" @touchstart="clickstart(-1)" @touchend="handleTouchEnd">
|
||||||
|
-
|
||||||
|
</view>
|
||||||
|
<view class="stringShow-kuai">
|
||||||
|
<view v-for="(item,index) in stringShow" :key="index" :style="sx==true?'color: red':''">
|
||||||
|
{{item}}
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="jj" :style="sx==true?'background:#f8f8f8':''" @click="jjnum(1)" @touchstart="clickstart(1)"
|
||||||
|
@touchend="handleTouchEnd">
|
||||||
|
+
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="cgdw">
|
||||||
|
<view class="leftr" @click.stop="cgdwflag = !cgdwflag,cgdwec = false">
|
||||||
|
<view>{{type.unit}}</view>
|
||||||
|
<text>
|
||||||
|
<image class="guodu" :style="!cgdwflag?'transform: rotate(180deg);':''"
|
||||||
|
:src=" '/static/index/procurement/sj.png' " mode="aspectFill"></image>
|
||||||
|
</text>
|
||||||
|
</view>
|
||||||
|
<!-- <view class="tz" @click="cgdwflag=!cgdwflag">调整</view> -->
|
||||||
|
<view class="dwdw guodu" :class="cgdwflag?'':'hei0'"
|
||||||
|
:style="`height: ${(cgdwarr && cgdwarr.length*8) || 0}vh`">
|
||||||
|
<view class="gysscrol guodu" v-if="cgdwec" :class="cgdwflag?'':'hei0'">
|
||||||
|
<view v-for="(v,i) in cgdwarr" :key='i' :class="type.multiUnitType==v.multiUnitType?'acts':''"
|
||||||
|
@click="cd(v,i)" :style="v.unit&&v.num?'':'height:0 !important;margin-top:-0.5vw'">
|
||||||
|
<text v-if="v.unit&&v.num">{{v.unit}}</text><text
|
||||||
|
v-if="v.unit&&v.num">{{v.num}}{{caigouobj.materialUnits}}</text>
|
||||||
|
<!-- <image src="/static/index/procurement/d.png" mode="aspectFill"></image> -->
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="plsbuy-bottom">
|
||||||
|
<view class="quxiao" @click="colse">
|
||||||
|
取消
|
||||||
|
</view>
|
||||||
|
<view class="plsbuy-bottom-blue" @click="closeIt">
|
||||||
|
确定
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="mengban" v-if="cgdwflag||gysflag" @click="gysflag = false;cgdwflag = false;cgdwec = false;"></view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
import {
|
||||||
|
ref,
|
||||||
|
onMounted,
|
||||||
|
onBeforeUnmount,
|
||||||
|
computed,
|
||||||
|
nextTick,
|
||||||
|
watch
|
||||||
|
} from 'vue';
|
||||||
|
const emit = defineEmits(['right', 'colse', 'jjnum'])
|
||||||
|
const blueNumber = ref(-1);
|
||||||
|
const gysflag = ref(false)
|
||||||
|
const cgdwflag = ref(false)
|
||||||
|
const sx = ref(false)
|
||||||
|
const type = ref({})
|
||||||
|
|
||||||
|
const downslength = ref(0);
|
||||||
|
const gysarr = ref([])
|
||||||
|
const cgdwarr = ref([])
|
||||||
|
const gysidnum = ref(0)
|
||||||
|
const props = defineProps({
|
||||||
|
show: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
},
|
||||||
|
caigouobj: {
|
||||||
|
type: Object,
|
||||||
|
required: true,
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// watch(
|
||||||
|
// () => type.value,
|
||||||
|
// (news,old) => {
|
||||||
|
// console.log(old,news)
|
||||||
|
// if(!old.num){return}
|
||||||
|
// if(old.num==1){
|
||||||
|
// let num = Number(props.caigouobj.upperLimit)-Number(props.caigouobj.kcsl);
|
||||||
|
// let m = Math.floor(relNumber.value/news.num);
|
||||||
|
// huansuan(m)
|
||||||
|
// }
|
||||||
|
// if(old.num!=1){
|
||||||
|
// let f = relNumber.value*old.num;
|
||||||
|
// let num = Number(props.caigouobj.upperLimit)-Number(props.caigouobj.kcsl);
|
||||||
|
// f = f>num?num:f;
|
||||||
|
// // let m = Math.floor(num/type.value.num)
|
||||||
|
// let m = Math.floor(f/news.num);
|
||||||
|
// huansuan(m)
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// )
|
||||||
|
const cgdwec = ref(false)
|
||||||
|
const showbox = ref(false)
|
||||||
|
watch(() => cgdwflag.value,
|
||||||
|
() => {
|
||||||
|
if (cgdwflag.value == true) {
|
||||||
|
setTimeout(() => {
|
||||||
|
cgdwec.value = true
|
||||||
|
}, 200)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
// watch(
|
||||||
|
// () => props.show,
|
||||||
|
// () => {
|
||||||
|
// if (props.show) {
|
||||||
|
// let a = [
|
||||||
|
// {
|
||||||
|
// multiUnitType: 1,
|
||||||
|
// price: props.caigouobj.oneUnitPrice,
|
||||||
|
// unit: props.caigouobj.oneUnit,
|
||||||
|
// num: props.caigouobj.oneUnitProportion
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// multiUnitType: 2,
|
||||||
|
// price: props.caigouobj.twoUnitPrice,
|
||||||
|
// unit: props.caigouobj.twoUnit,
|
||||||
|
// num: props.caigouobj.twoUnitProportion
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// multiUnitType: 3,
|
||||||
|
// price: props.caigouobj.unitPrice ? props.caigouobj.unitPrice : props.caigouobj.referenceUnitPrice,
|
||||||
|
// unit: props.caigouobj.materialUnits,
|
||||||
|
// num: 1
|
||||||
|
// }
|
||||||
|
// ];
|
||||||
|
// if (props.caigouobj.wlUnits) {
|
||||||
|
// type.value = a.find(item =>
|
||||||
|
// item.unit == props.caigouobj.wlUnits
|
||||||
|
// );
|
||||||
|
// } else {
|
||||||
|
// type.value = a.find(item =>
|
||||||
|
// item.multiUnitType == props.caigouobj.multiUnitType
|
||||||
|
// );
|
||||||
|
// }
|
||||||
|
|
||||||
|
// cgdwarr.value = []
|
||||||
|
// downslength.value = 0;
|
||||||
|
// a.forEach((element : any) => {
|
||||||
|
// if (element.unit && element.num) {
|
||||||
|
// cgdwarr.value.push(element)
|
||||||
|
// }
|
||||||
|
// })
|
||||||
|
|
||||||
|
// let n = [];
|
||||||
|
// let id = [];
|
||||||
|
// gysarr.value = [];
|
||||||
|
// n = props.caigouobj.suppliers_dictText?.split(/[, ]+/);
|
||||||
|
// id = props.caigouobj.suppliers?.split(/[, ]+/);
|
||||||
|
// n.forEach((item, i) => {
|
||||||
|
// gysarr.value.push({ 'name': item, 'id': id[i] })
|
||||||
|
|
||||||
|
// if (item == props.caigouobj.suppliersName) {
|
||||||
|
// gysid(i)
|
||||||
|
// }
|
||||||
|
// })
|
||||||
|
// if (props.caigouobj.purchaseQuantity) {
|
||||||
|
// props.caigouobj.upperLimit = props.caigouobj.wlUpperLimit
|
||||||
|
// huansuan(props.caigouobj.purchaseQuantity)
|
||||||
|
// } else {
|
||||||
|
// jssl()
|
||||||
|
// }
|
||||||
|
// setTimeout(() => {
|
||||||
|
// showbox.value = true;
|
||||||
|
// }, 50)
|
||||||
|
// } else {
|
||||||
|
// gysflag.value = false;
|
||||||
|
// cgdwflag.value = false;
|
||||||
|
// cgdwec.value = false;
|
||||||
|
// type.value = {};
|
||||||
|
// sx.value = false;
|
||||||
|
// gysidnum.value = 0;
|
||||||
|
// isZero.value = false;
|
||||||
|
// setTimeout(() => {
|
||||||
|
// showbox.value = false;
|
||||||
|
// }, 400)
|
||||||
|
// }
|
||||||
|
// })
|
||||||
|
const jssl = () => {
|
||||||
|
let num = Number(props.caigouobj.upperLimit) - Number(props.caigouobj.kcsl);
|
||||||
|
let m = Math.floor(num / type.value.num)
|
||||||
|
huansuan(m);
|
||||||
|
cy()
|
||||||
|
}
|
||||||
|
const huansuan = (m : number) => {
|
||||||
|
relNumber.value = m;
|
||||||
|
stringShow.value = toFixed4ByPadStart(relNumber.value);
|
||||||
|
}
|
||||||
|
const cy = () => {
|
||||||
|
let num = Number(props.caigouobj.upperLimit) - Number(props.caigouobj.kcsl);
|
||||||
|
let bl = relNumber.value * type.value.num
|
||||||
|
if (bl > num) {
|
||||||
|
sx.value = true
|
||||||
|
} else {
|
||||||
|
sx.value = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
const cd = (v, i) => {
|
||||||
|
type.value = v;
|
||||||
|
cgdwflag.value = false;
|
||||||
|
cgdwec.value = false;
|
||||||
|
jssl()
|
||||||
|
}
|
||||||
|
const gysid = (e : number) => {
|
||||||
|
gysidnum.value = e;
|
||||||
|
gysflag.value = false;
|
||||||
|
}
|
||||||
|
const calculatorArray = [1, 2, 3, 4, 5, 6, 7, 8, 9, "AC", 0, "AE"];
|
||||||
|
const stringShow = ref("0000");
|
||||||
|
const relNumber = ref(0);
|
||||||
|
const isZero = ref(false);
|
||||||
|
const clickKuai = (item : any, index : number) => {
|
||||||
|
blueNumber.value = index;
|
||||||
|
setTimeout(() => {
|
||||||
|
blueNumber.value = -1
|
||||||
|
}, 300)
|
||||||
|
if (item == "AC") {
|
||||||
|
relNumber.value = 0;
|
||||||
|
stringShow.value = "0000";
|
||||||
|
cy()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (item == "AE") {
|
||||||
|
relNumber.value = Math.trunc(relNumber.value / 10)
|
||||||
|
stringShow.value = toFixed4ByPadStart(relNumber.value);
|
||||||
|
cy()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (isZero.value == false) {
|
||||||
|
isZero.value = true;
|
||||||
|
relNumber.value = item;
|
||||||
|
stringShow.value = toFixed4ByPadStart(relNumber.value);
|
||||||
|
cy()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (digitCountByString(relNumber.value) > 3) {
|
||||||
|
|
||||||
|
} else {
|
||||||
|
if (!relNumber.value) {
|
||||||
|
relNumber.value = item
|
||||||
|
} else {
|
||||||
|
relNumber.value = relNumber.value * 10 + item;
|
||||||
|
}
|
||||||
|
cy()
|
||||||
|
stringShow.value = toFixed4ByPadStart(relNumber.value)
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
const InteroutId = ref(null)
|
||||||
|
const handleTouchStart = (e : number) => {
|
||||||
|
|
||||||
|
// Interval(e)
|
||||||
|
}
|
||||||
|
let longPressTimer = null;
|
||||||
|
let longPressed = false;
|
||||||
|
const clickstart = (e : number) => {
|
||||||
|
// console.log("开始长按")
|
||||||
|
longPressed = false;
|
||||||
|
if (longPressTimer) {
|
||||||
|
clearTimeout(longPressTimer);
|
||||||
|
longPressTimer = null;
|
||||||
|
}
|
||||||
|
longPressTimer = setTimeout(() => {
|
||||||
|
longPressTimer = null;
|
||||||
|
longPressed = true;
|
||||||
|
Interval(e)
|
||||||
|
}, 800); // 1000ms = 1s
|
||||||
|
}
|
||||||
|
const handleTouchEnd = () => {
|
||||||
|
// console.log("取消了吗???")
|
||||||
|
// 如果定时器还在,说明没到 1 秒,取消长按
|
||||||
|
if (longPressTimer) {
|
||||||
|
clearTimeout(longPressTimer);
|
||||||
|
longPressTimer = null;
|
||||||
|
// console.log('未达到 1 秒:取消长按');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 如果已经触发过长按
|
||||||
|
if (longPressed) {
|
||||||
|
// console.log('长按已触发,用户放手');
|
||||||
|
clearInterval(InteroutId.value);
|
||||||
|
longPressed = false; // 重置状态(按需)
|
||||||
|
} else {
|
||||||
|
console.log('无效状态(通常不会到这)');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
const Interval = (e : number) => {
|
||||||
|
InteroutId.value = setInterval(() => {
|
||||||
|
jjnum(e);
|
||||||
|
}, 120);
|
||||||
|
}
|
||||||
|
const jjnum = (e : number) => {
|
||||||
|
let num = Number(props.caigouobj.upperLimit) - Number(props.caigouobj.kcsl);
|
||||||
|
let m = Math.floor(num / type.value.num)
|
||||||
|
if (m <= relNumber.value && e == 1) { relNumber.value = m; return }
|
||||||
|
if (relNumber.value <= 1 && e == -1) { relNumber.value = 1; return }
|
||||||
|
relNumber.value += e;
|
||||||
|
stringShow.value = toFixed4ByPadStart(relNumber.value)
|
||||||
|
cy()
|
||||||
|
// emit('jjnum',e)
|
||||||
|
}
|
||||||
|
const closeIt = () => {
|
||||||
|
if (relNumber.value < 1) {
|
||||||
|
uni.showToast({
|
||||||
|
title: '采购数量不能为0!',
|
||||||
|
icon: 'none'
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
emit('right', relNumber.value, gysarr.value[gysidnum.value], type.value, props.caigouobj)
|
||||||
|
}
|
||||||
|
const colse = () => {
|
||||||
|
emit('colse')
|
||||||
|
}
|
||||||
|
function digitCountByString(n) {
|
||||||
|
const s = Math.abs(n).toString();
|
||||||
|
return s.length;
|
||||||
|
}
|
||||||
|
function toFixed4ByPadStart(n) {
|
||||||
|
const intPart = Math.floor(Math.abs(n));
|
||||||
|
return String(intPart).padStart(4, '0');
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
.hei0 {
|
||||||
|
height: 0 !important;
|
||||||
|
|
||||||
|
view {
|
||||||
|
height: 0 !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.unclass {
|
||||||
|
opacity: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cgdw {
|
||||||
|
width: 26vw;
|
||||||
|
display: flex;
|
||||||
|
height: 3.3vw;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
margin: 1.2vw 0;
|
||||||
|
margin-left: 1.1vw;
|
||||||
|
background: #F3F5F9;
|
||||||
|
border-radius: 1.1vw;
|
||||||
|
padding: 0 1vw;
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
text {
|
||||||
|
width: 3.3vw;
|
||||||
|
height: 3.3vw;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
image {
|
||||||
|
width: 1.6vw;
|
||||||
|
height: 1.6vw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.dwdw {
|
||||||
|
width: 26vw;
|
||||||
|
// max-height: 21vh;
|
||||||
|
background: #FFFFFF;
|
||||||
|
box-shadow: 0rpx 0rpx 0.5vw 0rpx rgba(174, 175, 176, 0.35);
|
||||||
|
border-radius: 1.1vw;
|
||||||
|
padding: 0 2vw;
|
||||||
|
// background-color: red;
|
||||||
|
position: absolute;
|
||||||
|
left: 0vw;
|
||||||
|
bottom: 3.5vw;
|
||||||
|
z-index: 211;
|
||||||
|
|
||||||
|
.gysscrol {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
|
||||||
|
// max-height: 21vw;
|
||||||
|
>.acts {
|
||||||
|
color: #0385FA !important;
|
||||||
|
|
||||||
|
image {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
view {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
font-weight: 400;
|
||||||
|
font-size: 1.5vw;
|
||||||
|
color: #666666;
|
||||||
|
// margin-bottom: 1.2vw;
|
||||||
|
// padding-right: 1.5vw;
|
||||||
|
height: 8vh;
|
||||||
|
position: relative;
|
||||||
|
white-space: nowrap;
|
||||||
|
|
||||||
|
text {
|
||||||
|
white-space: nowrap;
|
||||||
|
padding-right: 1vw;
|
||||||
|
}
|
||||||
|
|
||||||
|
&:nth-child(1) {
|
||||||
|
// margin-top: 1vw;
|
||||||
|
}
|
||||||
|
|
||||||
|
>image {
|
||||||
|
position: absolute;
|
||||||
|
right: -0.2vw;
|
||||||
|
top: 50%;
|
||||||
|
transform: translateY(-50%);
|
||||||
|
width: 1vw !important;
|
||||||
|
height: 0.7vw !important;
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.tz {
|
||||||
|
width: 7vw;
|
||||||
|
height: 3.3vw;
|
||||||
|
background: rgba(255, 255, 255, 0.6);
|
||||||
|
border-radius: 1.6vw;
|
||||||
|
border: 1px solid #D9DADC;
|
||||||
|
box-shadow: 0.05vw 0.5vw 0.5vw #dadee1;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
font-weight: 400;
|
||||||
|
font-size: 1.5vw;
|
||||||
|
color: #555555;
|
||||||
|
}
|
||||||
|
|
||||||
|
.leftr {
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
white-space: nowrap;
|
||||||
|
height: 3.3vw;
|
||||||
|
padding: 0 1vw;
|
||||||
|
|
||||||
|
view {
|
||||||
|
width: 8.6vw;
|
||||||
|
font-weight: 400;
|
||||||
|
font-size: 1.6vw;
|
||||||
|
color: #555555;
|
||||||
|
}
|
||||||
|
|
||||||
|
text {
|
||||||
|
font-weight: 400;
|
||||||
|
font-size: 1.4vw;
|
||||||
|
color: #888888;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.gys {
|
||||||
|
width: 100%;
|
||||||
|
height: 7vw;
|
||||||
|
position: relative;
|
||||||
|
margin-top: 0.5vw;
|
||||||
|
|
||||||
|
>.tanchu {
|
||||||
|
width: 26vw;
|
||||||
|
// max-height: 35vh;
|
||||||
|
box-shadow: 0rpx 0rpx 0.5vw 0rpx rgba(174, 175, 176, 0.35);
|
||||||
|
border-radius: 1.1vw;
|
||||||
|
padding: 0 1vw;
|
||||||
|
position: absolute;
|
||||||
|
left: 4vw;
|
||||||
|
top: 6.5vw;
|
||||||
|
z-index: 211;
|
||||||
|
background-color: #fff;
|
||||||
|
|
||||||
|
.gysscrol {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
|
||||||
|
.acts {
|
||||||
|
color: #0385FA !important;
|
||||||
|
|
||||||
|
image {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
view {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
font-weight: 400;
|
||||||
|
font-size: 1.5vw;
|
||||||
|
color: #666666;
|
||||||
|
// height: 8vh;
|
||||||
|
position: relative;
|
||||||
|
// padding: 0 30rpx;
|
||||||
|
margin: 20rpx 0;
|
||||||
|
|
||||||
|
image {
|
||||||
|
position: absolute;
|
||||||
|
right: 0.2vw;
|
||||||
|
top: 50%;
|
||||||
|
transform: translateY(-50%);
|
||||||
|
width: 1vw !important;
|
||||||
|
height: 0.7vw !important;
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.gssel {
|
||||||
|
width: 27vw;
|
||||||
|
display: flex;
|
||||||
|
height: 3.3vw;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
margin: 0.8vw auto 0;
|
||||||
|
background: #F3F5F9;
|
||||||
|
border-radius: 1.1vw;
|
||||||
|
padding: 0 1vw;
|
||||||
|
margin-bottom: 10rpx;
|
||||||
|
|
||||||
|
text {
|
||||||
|
width: 3.3vw;
|
||||||
|
height: 3.3vw;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
image {
|
||||||
|
width: 1.6vw;
|
||||||
|
height: 1.6vw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
view {
|
||||||
|
width: 22vw;
|
||||||
|
height: 3.3vw;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
font-weight: 400;
|
||||||
|
font-size: 1.5vw;
|
||||||
|
color: #555555;
|
||||||
|
line-height: 3.3vw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.plsbuy-contain {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
flex-direction: column;
|
||||||
|
width: 33vw;
|
||||||
|
height: 91vh;
|
||||||
|
background: rgba(250, 251, 252, 1);
|
||||||
|
overflow: hidden;
|
||||||
|
box-shadow: 0rpx 0rpx 1.6vw 0rpx rgba(136, 141, 153, 0.28);
|
||||||
|
border-radius: 2.2vw;
|
||||||
|
top: 50%;
|
||||||
|
transform: translateY(-50%);
|
||||||
|
right: 32vw;
|
||||||
|
position: fixed;
|
||||||
|
padding: 1.5vw 0vw;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.plsbuy-bottom {
|
||||||
|
width: 90%;
|
||||||
|
margin-top: 0.5vw;
|
||||||
|
height: 7vw;
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-end;
|
||||||
|
font-size: 35rpx;
|
||||||
|
|
||||||
|
view {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
width: 9vw;
|
||||||
|
height: 3.8vw;
|
||||||
|
color: rgba(92, 121, 146, 1);
|
||||||
|
border-radius: 1.9vw;
|
||||||
|
font-size: 1.8vw;
|
||||||
|
border: 1px solid #EDEDEF;
|
||||||
|
margin-left: 1vw;
|
||||||
|
}
|
||||||
|
|
||||||
|
.quxiao {
|
||||||
|
width: 160rpx;
|
||||||
|
height: 75rpx;
|
||||||
|
background-color: #ebeced;
|
||||||
|
color: #888888;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
font-size: 30rpx;
|
||||||
|
border-radius: 40rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.plsbuy-bottom-blue {
|
||||||
|
width: 160rpx;
|
||||||
|
height: 75rpx;
|
||||||
|
color: #0385FA;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
font-size: 30rpx;
|
||||||
|
border-radius: 40rpx;
|
||||||
|
border: 1rpx solid #0385FA;
|
||||||
|
background: linear-gradient(to bottom, #E9F4FF, #CAE0F9);
|
||||||
|
margin: 0 40rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.calculator-father {
|
||||||
|
width: 25vw;
|
||||||
|
height: 45vh;
|
||||||
|
margin-left: -20rpx;
|
||||||
|
// margin: 0 auto 0;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 1fr 1fr 1fr;
|
||||||
|
padding-left: 29rpx;
|
||||||
|
|
||||||
|
.calculator-kuai {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
background-size: 100% 100%;
|
||||||
|
font-size: 42rpx;
|
||||||
|
font-weight: 500;
|
||||||
|
margin: 25rpx 25rpx 0 0;
|
||||||
|
width: 7vw;
|
||||||
|
height: 5.5vw;
|
||||||
|
background-color: #F3F5F9;
|
||||||
|
border-radius: 40rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.calculator-kuai:active {
|
||||||
|
background: linear-gradient(to bottom, #019cef, #0084fa);
|
||||||
|
color: #fff;
|
||||||
|
font-size: 42rpx;
|
||||||
|
font-weight: 500;
|
||||||
|
border-radius: 40rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.stringShow-father {
|
||||||
|
width: 100%;
|
||||||
|
height: 7vw;
|
||||||
|
margin-top: 0.5vw;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
margin-left: 0.8vw;
|
||||||
|
|
||||||
|
.jj {
|
||||||
|
width: 5vw;
|
||||||
|
height: 5vw;
|
||||||
|
margin: 0 1vw;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
background: url('/static/index/procurement/bt.png') no-repeat;
|
||||||
|
background-size: 100% 100%;
|
||||||
|
border-radius: 25rpx;
|
||||||
|
font-size: 42rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.jj:active {
|
||||||
|
background: linear-gradient(to bottom, #00C9FF, #0076FF);
|
||||||
|
color: #fff;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
background-color: #DCDCEE;
|
||||||
|
border-radius: 25rpx;
|
||||||
|
font-size: 45rpx;
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
|
||||||
|
.stringShow-kuai {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
width: 14vw;
|
||||||
|
height: 5vw;
|
||||||
|
background: #F3F5F9;
|
||||||
|
border-radius: 1vw;
|
||||||
|
border: 1px solid #CBCFD0;
|
||||||
|
justify-content: space-around;
|
||||||
|
padding: 0 1vw;
|
||||||
|
// box-shadow: 0rpx 0.1vw 0.3vw 0rpx rgba(140, 143, 153, 0.17) inset;
|
||||||
|
|
||||||
|
view {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
font-size: 42rpx;
|
||||||
|
font-weight: 500;
|
||||||
|
width: 2.5vw;
|
||||||
|
height: 5vw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.qinggou-font {
|
||||||
|
font-size: 27rpx;
|
||||||
|
font-weight: 500;
|
||||||
|
margin: 0.8vw auto 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mengban {
|
||||||
|
width: 100vw;
|
||||||
|
height: 100vh;
|
||||||
|
position: fixed;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
z-index: 210;
|
||||||
|
background: RGBA(239, 240, 244, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
.guodu {
|
||||||
|
transition: .4s;
|
||||||
|
-webkit-transform-style: preserve-3d;
|
||||||
|
-webkit-overflow-scrolling: touch;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tab-view {
|
||||||
|
display: -webkit-box;
|
||||||
|
-webkit-box-orient: vertical;
|
||||||
|
-webkit-line-clamp: 2;
|
||||||
|
overflow: hidden;
|
||||||
|
word-break: break-word;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tlt {
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 34rpx;
|
||||||
|
color: #333333;
|
||||||
|
padding-left: 3vw;
|
||||||
|
font-weight: 400;
|
||||||
|
margin-bottom: 30rpx;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
<image src="/static/index/purchaseorder/selecttarget.png" mode="aspectFill" class="shr"></image>
|
<image src="/static/index/purchaseorder/selecttarget.png" mode="aspectFill" class="shr"></image>
|
||||||
筛选
|
筛选
|
||||||
</view>
|
</view>
|
||||||
<view class="shx guodu" >
|
<view class="shx guodu" @click="open = 2;cont = '是否清空购物车中所有物料?'">
|
||||||
<!-- <image src="/static/index/purchaseorder/cg.png" mode="aspectFill" class="sh"></image> -->
|
<!-- <image src="/static/index/purchaseorder/cg.png" mode="aspectFill" class="sh"></image> -->
|
||||||
<image src="/static/index/procurement/del1.png" mode="aspectFill" class="sh"></image>
|
<image src="/static/index/procurement/del1.png" mode="aspectFill" class="sh"></image>
|
||||||
<image src="/static/index/procurement/del1.png" mode="aspectFill" class="shr"></image>
|
<image src="/static/index/procurement/del1.png" mode="aspectFill" class="shr"></image>
|
||||||
|
|
@ -122,9 +122,9 @@
|
||||||
</view>
|
</view>
|
||||||
<view class="zkadd guodu" >
|
<view class="zkadd guodu" >
|
||||||
<view @click.stop="addcar(v,index)" @touchend.stop>编辑</view>
|
<view @click.stop="addcar(v,index)" @touchend.stop>编辑</view>
|
||||||
<view @click.stop="del(v,index)" v-if="v.isAdd!=1" @touchend.stop>
|
<view @click.stop="open = 1;cont = '确认将该物料从购物车中移除吗?'" @touchend.stop>
|
||||||
<view>
|
<view>
|
||||||
删除
|
移除
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
@ -142,6 +142,7 @@
|
||||||
<view class="fiedrightview">
|
<view class="fiedrightview">
|
||||||
<image src="/static/index/purchaseorder/cg.png" mode="aspectFill"></image>
|
<image src="/static/index/purchaseorder/cg.png" mode="aspectFill"></image>
|
||||||
</view>
|
</view>
|
||||||
|
<tanchuang :show="open>0" :font="cont" @back="open = 0" @right="del()"> </tanchuang>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|
@ -157,6 +158,8 @@
|
||||||
const InvoicingList = ref([{},{},{},{},{},])
|
const InvoicingList = ref([{},{},{},{},{},])
|
||||||
const ification = ref(false)
|
const ification = ref(false)
|
||||||
const carnum = ref(2)
|
const carnum = ref(2)
|
||||||
|
const open = ref(0)
|
||||||
|
const cont = ref('')
|
||||||
|
|
||||||
const form = reactive({
|
const form = reactive({
|
||||||
nuId: uni.getStorageSync('nuId'),
|
nuId: uni.getStorageSync('nuId'),
|
||||||
|
|
@ -169,6 +172,9 @@
|
||||||
isWaring: 0,
|
isWaring: 0,
|
||||||
suppliers: ''
|
suppliers: ''
|
||||||
})
|
})
|
||||||
|
const del = () =>{
|
||||||
|
console.log(open.value)
|
||||||
|
}
|
||||||
const startX = ref(0)
|
const startX = ref(0)
|
||||||
const openwhitchindex = ref(-1)
|
const openwhitchindex = ref(-1)
|
||||||
const ts = (e) => {
|
const ts = (e) => {
|
||||||
|
|
@ -478,7 +484,7 @@
|
||||||
&:nth-child(6) {
|
&:nth-child(6) {
|
||||||
width: 30vw;
|
width: 30vw;
|
||||||
display: flex;
|
display: flex;
|
||||||
margin-top: 1.1vw;
|
margin-top: 0.6vw;
|
||||||
|
|
||||||
.three-one {
|
.three-one {
|
||||||
width: 33%;
|
width: 33%;
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,34 @@
|
||||||
<template>
|
<template>
|
||||||
<view>
|
<view>
|
||||||
<view class="cont">
|
<view class="cont">
|
||||||
<view class="title" @click="clk">
|
<view class="gys">
|
||||||
<view></view>
|
供应商:吉林省捌零信创科技有限公司
|
||||||
采购单
|
|
||||||
</view>
|
</view>
|
||||||
|
<view class="topcon">
|
||||||
|
<view class="title" @click="clk">
|
||||||
|
<view></view>
|
||||||
|
采购单
|
||||||
|
</view>
|
||||||
|
<view class="zuofei" v-if="active==2">
|
||||||
|
<image src="/static/three/zf.png" mode="aspectFill"></image>
|
||||||
|
作废采购单
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="cgdh" v-if="active==2">
|
||||||
|
<view class="cont">
|
||||||
|
<text>采购单号: </text>101C20251121006
|
||||||
|
</view>
|
||||||
|
<view class="cont">
|
||||||
|
<text>采购日期: </text>2025-10-12
|
||||||
|
</view>
|
||||||
|
<view class="jiage">
|
||||||
|
<view>
|
||||||
|
<text>¥</text>0.35
|
||||||
|
</view>
|
||||||
|
<text>采购价格 </text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
<view class="boxcen">
|
<view class="boxcen">
|
||||||
<view class="boxa">
|
<view class="boxa">
|
||||||
<view class="bianj" v-if="active==1">
|
<view class="bianj" v-if="active==1">
|
||||||
|
|
@ -51,7 +75,6 @@
|
||||||
<text>拣货</text>
|
<text>拣货</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
@ -71,12 +94,62 @@
|
||||||
<style lang="less" scoped>
|
<style lang="less" scoped>
|
||||||
.cont{
|
.cont{
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 60.4vw;
|
||||||
padding: 1.7vw 2.3vw;
|
padding: 1.7vw 2.3vw;
|
||||||
|
position: relative;
|
||||||
|
.gys{
|
||||||
|
width: 100%;
|
||||||
|
text-align: right;
|
||||||
|
position: absolute;
|
||||||
|
right: 3.2vw;
|
||||||
|
bottom: 3.2vw;
|
||||||
|
font-size: 1.4vw;
|
||||||
|
color: #555555;
|
||||||
|
}
|
||||||
|
.jiage{
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: space-between;
|
||||||
|
position: absolute;
|
||||||
|
align-items: center;
|
||||||
|
top:1.5vw;
|
||||||
|
right: 0;
|
||||||
|
text{
|
||||||
|
font-size: 1.3vw;
|
||||||
|
color: #888888;
|
||||||
|
}
|
||||||
|
view{
|
||||||
|
font-size: 2.3vw;
|
||||||
|
color: #333333;
|
||||||
|
font-weight: bold;
|
||||||
|
>text{
|
||||||
|
font-size: 1.4vw
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.cgdh{
|
||||||
|
width: 55vw;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: space-between;
|
||||||
|
height: 3.8vw;
|
||||||
|
position: relative;
|
||||||
|
font-size: 1.4vw;
|
||||||
|
.cont{
|
||||||
|
color: #333333;
|
||||||
|
text{
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
.boxcen{
|
.boxcen{
|
||||||
width: 50vw;
|
width: 50vw;
|
||||||
height: 20vw;
|
height: 20vw;
|
||||||
margin: 18vw auto 0;
|
// margin: 18vw auto 0;
|
||||||
|
position: absolute;
|
||||||
|
top: 18vw;
|
||||||
|
left:6.25vw;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-around;
|
justify-content: space-around;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|
@ -160,6 +233,29 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.topcon{
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
height: 3.5vw;
|
||||||
|
.zuofei{
|
||||||
|
width: 11vw;
|
||||||
|
height: 3.6vw;
|
||||||
|
background: #FFFFFF;
|
||||||
|
border-radius: 1.6vw;
|
||||||
|
border: 1px solid rgba(16, 131, 248,0.5);
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
font-size: 1.3vw;
|
||||||
|
color: #555555;
|
||||||
|
image{
|
||||||
|
width: 1.4vw;
|
||||||
|
height: 1.4vw;
|
||||||
|
margin: 0 0.5vw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
.title{
|
.title{
|
||||||
font-size: 1.7vw;
|
font-size: 1.7vw;
|
||||||
color: #222222;
|
color: #222222;
|
||||||
|
|
|
||||||
|
|
@ -101,6 +101,7 @@
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -177,6 +177,7 @@
|
||||||
<contright @link="link" v-if="rightcat==0"></contright>
|
<contright @link="link" v-if="rightcat==0"></contright>
|
||||||
<procurement @link="link" v-if="rightcat==1"></procurement>
|
<procurement @link="link" v-if="rightcat==1"></procurement>
|
||||||
<carlist @link="link" v-if="rightcat==2"></carlist>
|
<carlist @link="link" v-if="rightcat==2"></carlist>
|
||||||
|
<caigoudan @link="link" v-if="lefttarget>=0" style="z-index: 9999;"></caigoudan>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
@ -187,8 +188,12 @@
|
||||||
import contright from './component/contright.vue';
|
import contright from './component/contright.vue';
|
||||||
import procurement from './component/procurement.vue';
|
import procurement from './component/procurement.vue';
|
||||||
import carlist from './component/carlist.vue';
|
import carlist from './component/carlist.vue';
|
||||||
|
import caigoudan from './component/caigoudan.vue';
|
||||||
const transition = ref(false)
|
const transition = ref(false)
|
||||||
const leftscrolltop = ref(0)
|
const leftscrolltop = ref(0)
|
||||||
|
const lefttarget = ref(-1)
|
||||||
|
|
||||||
|
|
||||||
const tagsarray = ref(["全部", "待确认", "待完结", "待付款", "已完成"])
|
const tagsarray = ref(["全部", "待确认", "待完结", "待付款", "已完成"])
|
||||||
const selectType = ref(0)
|
const selectType = ref(0)
|
||||||
|
|
||||||
|
|
@ -197,12 +202,16 @@
|
||||||
const rightcat = ref(0)
|
const rightcat = ref(0)
|
||||||
const link = (e)=>{
|
const link = (e)=>{
|
||||||
console.log(e)
|
console.log(e)
|
||||||
rightcat.value = e
|
rightcat.value = e;
|
||||||
|
lefttarget.value =-1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
const clickLeftMenu =(e)=>{
|
||||||
|
lefttarget.value = e;
|
||||||
|
rightcat.value = -1;
|
||||||
|
}
|
||||||
|
|
||||||
const changetype = (index : number) => {
|
const changetype = (index : number) => {
|
||||||
if ((selectType.value == index) && index) {
|
if ((selectType.value == index) && index) {
|
||||||
|
|
@ -273,7 +282,6 @@
|
||||||
}, 500)
|
}, 500)
|
||||||
}
|
}
|
||||||
const plsbuy = ref([{cgdType:9},{},{}])
|
const plsbuy = ref([{cgdType:9},{},{}])
|
||||||
const lefttarget = ref(0)
|
|
||||||
const basePath = '/static/index/procurement/' // 图片公共路径
|
const basePath = '/static/index/procurement/' // 图片公共路径
|
||||||
const imgNormal = basePath + 'sh.png'
|
const imgNormal = basePath + 'sh.png'
|
||||||
const imgActive = basePath + 'shr.png'
|
const imgActive = basePath + 'shr.png'
|
||||||
|
|
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 1.0 KiB |
Loading…
Reference in New Issue