This commit is contained in:
parent
ae95d91434
commit
bd906abad1
|
|
@ -6,28 +6,28 @@
|
|||
<view class="tablist">
|
||||
<view class="lefts">
|
||||
<view class="pddl">盘点单</view>
|
||||
<view class="pdh">101P20251012001</view>
|
||||
<view class="nms">梁嘉豪 | 2025.10.12</view>
|
||||
<view class="pdh">{{pddobj.pddNo}}</view>
|
||||
<view class="nms">{{pddobj.pddStartBy}} | {{pddobj.pddStartTime.substring(0,10)}}</view>
|
||||
<view class="shypk">
|
||||
生活用品库
|
||||
{{pddobj.nuName}}
|
||||
</view>
|
||||
</view>
|
||||
<view class="rith">
|
||||
<view class="left-selecttype">
|
||||
<view :class="selectType===index?`selecttype-target`: `selecttype`"
|
||||
v-for="(item,index) in ['全部','已盘点','未盘点','盘盈','盘亏']" @click="changetype(index)">
|
||||
v-for="(item,index) in ['全部','盘盈','盘亏','已盘点','未盘点']" @click="changetype(index)">
|
||||
{{ item }}
|
||||
</view>
|
||||
<view class="heng-blue" :style="{ left: `${selectType === 0 ? 11.5 : 10.6 + selectType * 19}%` }">
|
||||
</view>
|
||||
</view>
|
||||
<view class="pdbt">盘点中</view>
|
||||
<view class="pdbt">已完成</view>
|
||||
<view class="pdbt">{{pddobj.pddType_dictText}}</view>
|
||||
<!-- <view class="pdbt">{{已完成}}</view> -->
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<view class="list">
|
||||
<toryitem></toryitem>
|
||||
<toryitem :pddlist="pddlist" @scrolltolower="scrolltolower" :status="status"></toryitem>
|
||||
</view>
|
||||
<view class="submit">
|
||||
<view>取消盘点</view>
|
||||
|
|
@ -39,10 +39,11 @@
|
|||
<script setup lang="ts">
|
||||
import { ref, onMounted, onBeforeUnmount, computed, nextTick, watch, reactive } from 'vue';
|
||||
import { onShow, onLoad, onHide, onPageScroll } from "@dcloudio/uni-app"
|
||||
import { queryQld } from './api/lunpan.js'
|
||||
import { queryPddInfoList } from './api/lunpan.js'
|
||||
import toryitem from './common/toryitem.vue'
|
||||
const leftscrolltop = ref(0)
|
||||
|
||||
const pddobj = ref({})
|
||||
// "pddType": "1" 可以操作
|
||||
const selectType = ref(0)
|
||||
const changetype = (index : number) => {
|
||||
if ((selectType.value == index) && index) {
|
||||
|
|
@ -53,7 +54,33 @@
|
|||
leftscrolltop.value = 0
|
||||
}, 50)
|
||||
selectType.value = index
|
||||
|
||||
}
|
||||
onLoad((e)=>{
|
||||
console.log(JSON.parse(e.pddobj))
|
||||
pddobj.value = JSON.parse(e.pddobj)
|
||||
pandian()
|
||||
})
|
||||
const pageNo = ref(1);
|
||||
const status = ref('loadmore');
|
||||
const pddlist = ref([]);
|
||||
const pandian = ()=>{
|
||||
let obj = {
|
||||
pddId:pddobj.value.id,
|
||||
paramType:selectType.value==0?'':selectType.value,
|
||||
pageNo:pageNo.value,
|
||||
pageSize:10
|
||||
}
|
||||
queryPddInfoList(obj).then(res=>{
|
||||
console.log(res)
|
||||
pddlist.value.push(...res.result.records);
|
||||
status.value = (res.result.total == pddlist.value.length ? 'nomore' : 'loadmore')
|
||||
})
|
||||
}
|
||||
const scrolltolower = () =>{
|
||||
if(status.value == 'loading' || status.value == 'nomore'){return}
|
||||
status.value = 'loading'
|
||||
pageNo.value++;
|
||||
pandian()
|
||||
}
|
||||
</script>
|
||||
|
||||
|
|
|
|||
|
|
@ -378,4 +378,11 @@ export const addPddMain = (params) => {
|
|||
method: 'post',
|
||||
data: params,
|
||||
})
|
||||
}
|
||||
}
|
||||
export const queryPddInfoList = (params) => {
|
||||
return request({
|
||||
url: `${uni.getStorageSync('serverUrl')}/api/pad/invoicing/pdd/queryPddInfoList`,
|
||||
method: 'get',
|
||||
data: params,
|
||||
})
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,63 +2,65 @@
|
|||
<view>
|
||||
<scroll-view scroll-y="true" class="itembox" scroll-with-animation @scrolltolower="scrolltolower()"
|
||||
enable-back-to-top enable-flex :scroll-top="scrolltop" @scroll="scroll">
|
||||
<view class="items guodu" v-for="(v,i) in list" :key='i' :class="{'itembord0':v.zk==true}">
|
||||
<defaultr cont="暂无数据" v-if="pddlist.length==0 && listflag" style="position: absolute;width: 10vw;height: 10vw;"></defaultr>
|
||||
<view class="items guodu" v-for="(v,i) in pddlist" :key='i' :class="{'itembord0':v.zk==true}">
|
||||
<view class="speitem guodu">
|
||||
<view class="imgs">
|
||||
<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">
|
||||
</image>
|
||||
</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>123123123</view>
|
||||
<view>1232131212321312</view>
|
||||
<view>213213213</view>
|
||||
<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="wuli">
|
||||
<view class="tite">纸尿裤-拉拉裤纸尿裤-拉拉裤</view>
|
||||
<view class="tite">{{v?.materialName}}</view>
|
||||
<view class="cot">
|
||||
<text>物料编码:</text>
|
||||
040601022
|
||||
{{v?.materialNo}}
|
||||
</view>
|
||||
<view class="cot">
|
||||
<text>物料单位:</text>
|
||||
片
|
||||
{{v?.materialUnits}}
|
||||
</view>
|
||||
<view class="cot">
|
||||
<view class="cot" style="white-space: nowrap;">
|
||||
<text>规格型号:</text>
|
||||
800mm*680mm
|
||||
{{v?.specificationModel}}
|
||||
</view>
|
||||
<view class="wltwo">
|
||||
<view>
|
||||
<view>20</view>
|
||||
<view>{{v?.dqkcsl}}</view>
|
||||
<text>库存数量</text>
|
||||
</view>
|
||||
<view class="dot">
|
||||
<view style="text-align: right;">15</view>
|
||||
<view style="text-align: right;">{{v?.pdsl?v?.pdsl:'--'}}</view>
|
||||
<text>盘点数量</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="chae">
|
||||
<view :class="{b:i==0,r:i==1}">-5</view>
|
||||
<!-- pdType 1:b/ 2:r -->
|
||||
<view :class="{b:v?.pdType==1,r:v?.pdType==2}">{{v?.pdType==2?'-':''}}{{v?.cesl!=null?v?.cesl:'--'}}</view>
|
||||
<text>差额</text>
|
||||
</view>
|
||||
<view class="pandian" @click="zhankai(v,i)">
|
||||
<image src="/static/index/procurement/pd0.png" mode="aspectFill"></image>
|
||||
<image :src="v.zk?'/static/index/procurement/pd1.png':'/static/index/procurement/pd0.png'" mode="aspectFill" v-if="v.pdType==null"></image>
|
||||
<!-- <image src="/static/index/procurement/pd1.png" mode="aspectFill" v-if="v.pdType==null && v.cesl!=null"></image> -->
|
||||
<image :src="v.zk?'/static/index/procurement/pd5.png':'/static/index/procurement/pd2.png'" mode="aspectFill" v-if="v.pdType == 1"></image>
|
||||
<image :src="v.zk?'/static/index/procurement/pd4.png':'/static/index/procurement/pd3.png'" mode="aspectFill" v-if="v.pdType == 2"></image>
|
||||
</view>
|
||||
<view class="tan guodu" :class="v.zk?'':'itemhei0'">
|
||||
<view class="tbox guodu" :class="v.zk?'':'itemhei0'" :style="v.zk?'':'overflow: hidden'">
|
||||
<torytor :show="v.yczk"></torytor>
|
||||
<torytor :show="v.yczk" :tb="v.dqkcsl" @pddjjnum="pddjjnum" :idex="i"></torytor>
|
||||
<view class="bpq" v-show="v.yczk">
|
||||
<view class="bp b" @click="v.bz = !v.bz;v.pz = false">
|
||||
<image src="/static/index/procurement/th.png" mode="aspectFill"></image>
|
||||
备注
|
||||
<text class="r">5</text>
|
||||
<text class="r" v-if="v.content">1</text>
|
||||
</view>
|
||||
<view class="bp p" @click="v.pz = !v.pz;v.bz = false">
|
||||
|
||||
|
|
@ -101,7 +103,7 @@
|
|||
</view>
|
||||
<view class="submit" v-if="v.pz">
|
||||
<view>取消</view>
|
||||
<view>确定</view>
|
||||
<view @click="config(v,i)">确定</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
|
|
@ -110,6 +112,9 @@
|
|||
</view>
|
||||
<!-- <view class="mengban" v-if="v.zk" @click="v.zk = false"></view> -->
|
||||
</view>
|
||||
<view style="height:3vw;width: 100%;display: flex;align-items: center;justify-content: center;">
|
||||
<u-loadmore :status="status" :loadText="{nomore:'暂无更多数据'}" v-if="pddlist.length>6" />
|
||||
</view>
|
||||
</scroll-view>
|
||||
<tanchuang :show="open==1" font="是否删除此图片" @back="open = 0" @right="del()"> </tanchuang>
|
||||
</view>
|
||||
|
|
@ -120,14 +125,38 @@
|
|||
import { onShow, onLoad, onHide, onPageScroll } from "@dcloudio/uni-app"
|
||||
import { queryQld } from '../api/lunpan.js'
|
||||
import torytor from './torytor.vue'
|
||||
import defaultr from '../components/default.vue'
|
||||
const open = ref(0)
|
||||
const scrolltop = ref(0)
|
||||
const list = ref([]);
|
||||
|
||||
const serverUrl = ref(uni.getStorageSync('serverUrl') + '/sys/common/static/')
|
||||
const props = defineProps({
|
||||
pddlist: {
|
||||
type: Array
|
||||
},
|
||||
status: {
|
||||
type: String
|
||||
}
|
||||
})
|
||||
const listflag = ref(false)
|
||||
onMounted(() => {
|
||||
for (let i = 0; i < 20; i++) {
|
||||
list.value.push({ zk: false, yczk: false, bz: false, model: '', pz: false })
|
||||
}
|
||||
nextTick(()=>{
|
||||
props.pddlist.forEach(item=>{
|
||||
item.zk = false;
|
||||
item.yczk=false;
|
||||
item.bz=false;
|
||||
item.model='';
|
||||
item.pz=false;
|
||||
item.ce = '';
|
||||
})
|
||||
})
|
||||
|
||||
setTimeout(()=>{
|
||||
listflag.value = true;
|
||||
},1000)
|
||||
// for (let i = 0; i < 20; i++) {
|
||||
// list.value.push({ zk: false, yczk: false, bz: false, model: '', pz: false })
|
||||
// }
|
||||
})
|
||||
const zhankai = (v, i) => {
|
||||
let s = Math.ceil((i + 1) / 3);
|
||||
|
|
@ -150,7 +179,7 @@
|
|||
gb(i)
|
||||
}
|
||||
const gb = (i) => {
|
||||
list.value.forEach((item, k) => {
|
||||
props.pddlist.forEach((item, k) => {
|
||||
if (i != k) {
|
||||
item.zk = false;
|
||||
item.bz = false;
|
||||
|
|
@ -164,8 +193,20 @@
|
|||
// console.log(e.detail.scrollTop)
|
||||
top.value = e.detail.scrollTop;
|
||||
}
|
||||
const pddjjnum = (e,i) =>{
|
||||
let ce = 0;
|
||||
props.pddlist[i].pdsl = e;
|
||||
ce = e - props.pddlist[i].dqkcsl;
|
||||
props.pddlist[i].cesl = Math.abs(ce) ;
|
||||
props.pddlist[i].pdType = ce==0?'':(ce>0?1:2)
|
||||
console.log(e)
|
||||
}
|
||||
const config = (e,i) =>{
|
||||
// 没点确认情况下把pdsl,cesl ,pdType 归 null 需要加字段
|
||||
}
|
||||
const emit = defineEmits([ 'scrolltolower' ])
|
||||
const scrolltolower = () => {
|
||||
|
||||
emit('scrolltolower')
|
||||
}
|
||||
</script>
|
||||
|
||||
|
|
@ -620,9 +661,8 @@
|
|||
flex-wrap: wrap;
|
||||
margin: 0 auto;
|
||||
align-items: center;
|
||||
|
||||
view {
|
||||
min-width: 3.5vw;
|
||||
min-width: 5vw;
|
||||
height: 1.8vw;
|
||||
border-radius: 0.9vw;
|
||||
border: 1px solid #D2D2D2;
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
<view class="leftsa">
|
||||
<view class="shu">数量</view>
|
||||
<view class="stringShow-kuai">
|
||||
<view v-for="(item,index) in stringShow" :key="index" :style="sx==true?'color: red':''">
|
||||
<view v-for="(item,index) in stringShow" :key="index" >
|
||||
{{item}}
|
||||
</view>
|
||||
</view>
|
||||
|
|
@ -55,24 +55,34 @@
|
|||
const props = defineProps({
|
||||
show: {
|
||||
type: Boolean
|
||||
}
|
||||
},
|
||||
tb:{
|
||||
type:Number
|
||||
},
|
||||
idex:{
|
||||
type:Number
|
||||
}
|
||||
});
|
||||
const emit = defineEmits([ 'pddjjnum' ])
|
||||
const isZero = ref(false);
|
||||
const clickKuai = (item : any, index : number) => {
|
||||
if (item == "AE") {
|
||||
relNumber.value = 55;
|
||||
relNumber.value = props.tb;
|
||||
stringShow.value = toFixed4ByPadStart(relNumber.value);
|
||||
emit('pddjjnum',relNumber.value,props.idex);
|
||||
return
|
||||
}
|
||||
if (item == "AC") {
|
||||
relNumber.value = Math.trunc(relNumber.value / 10)
|
||||
stringShow.value = toFixed4ByPadStart(relNumber.value);
|
||||
emit('pddjjnum',relNumber.value,props.idex);
|
||||
return
|
||||
}
|
||||
if(isZero.value == false){
|
||||
isZero.value = true;
|
||||
relNumber.value = item;
|
||||
stringShow.value = toFixed4ByPadStart(relNumber.value);
|
||||
emit('pddjjnum',relNumber.value,props.idex);
|
||||
return
|
||||
}
|
||||
if (digitCountByString(relNumber.value) > 3) {
|
||||
|
|
@ -83,6 +93,7 @@
|
|||
} else {
|
||||
relNumber.value = relNumber.value * 10 + item;
|
||||
}
|
||||
emit('pddjjnum',relNumber.value,props.idex);
|
||||
stringShow.value = toFixed4ByPadStart(relNumber.value)
|
||||
}
|
||||
|
||||
|
|
@ -101,13 +112,12 @@
|
|||
}, 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}
|
||||
let num = 9999;
|
||||
if(num<=relNumber.value&&e==1){relNumber.value = num; return}
|
||||
if(relNumber.value<=0&&e==-1){relNumber.value = 0; return}
|
||||
relNumber.value+=e;
|
||||
stringShow.value = toFixed4ByPadStart(relNumber.value)
|
||||
// emit('jjnum',e)
|
||||
emit('pddjjnum',relNumber.value,props.idex)
|
||||
}
|
||||
function digitCountByString(n) {
|
||||
const s = Math.abs(n).toString();
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@
|
|||
<view class="heng-blue" :style="{ left: `${selectType === 0 ? 18 : 18 + selectType * 30}%` }">
|
||||
</view>
|
||||
</view>
|
||||
<view class="right-button" @click="uni.navigateTo({url:'/pages/procurement/addtory'})">
|
||||
<view class="right-button" @click="addshow=true">
|
||||
<image src="/static/index/requestform/addnew.png" />
|
||||
<view>
|
||||
新增
|
||||
|
|
@ -52,7 +52,7 @@
|
|||
<scroll-view scroll-y="true" scroll-with-animation class="all-scroll" :scroll-top="leftscrolltop"
|
||||
@scrolltolower="plsbuytolower" :lower-threshold="200">
|
||||
<view class="scroll-items">
|
||||
<view class="scroll-item" v-for="(item,index) in plsbuy" :key="index">
|
||||
<view class="scroll-item" v-for="(item,index) in plsbuy" :key="index" @click="pdurl(item)">
|
||||
<view class="scroll-item-title">
|
||||
<view class="scroll-title-left">
|
||||
<view class="title-font">
|
||||
|
|
@ -534,6 +534,11 @@
|
|||
}
|
||||
})
|
||||
}
|
||||
|
||||
const pdurl = (v)=>{
|
||||
console.log(v)
|
||||
uni.navigateTo({url:'/pages/procurement/addtory?pddobj='+JSON.stringify(v)})
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="less">
|
||||
|
|
|
|||
Loading…
Reference in New Issue