From 73964413618944fd6f0db459bcf4b70f1663ea25 Mon Sep 17 00:00:00 2001
From: xiaofajia <1665375861@qq.com>
Date: Fri, 15 Nov 2024 16:25:44 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=BB=93=E5=BA=93=E9=80=9A?=
=?UTF-8?q?=E7=9F=A5=E9=A2=86=E6=96=99=E5=92=8C=E9=80=80=E6=96=99?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pages-warehouse/home/home.vue | 40 +++--
.../inOutWarehouse/inOutWarehouse.vue | 147 +++++++++++-------
2 files changed, 121 insertions(+), 66 deletions(-)
diff --git a/pages-warehouse/home/home.vue b/pages-warehouse/home/home.vue
index 59b26d9..ccd487f 100644
--- a/pages-warehouse/home/home.vue
+++ b/pages-warehouse/home/home.vue
@@ -69,15 +69,15 @@
@@ -159,7 +159,7 @@ export default {
//通知公告数量
noticeNum: 0,
//是否首次打开页面
- ifFirstLogin:true,
+ ifFirstLogin: true,
}
},
onLoad() {
@@ -193,7 +193,7 @@ export default {
url: '/pages-home/msg/message'
})
},
- socketSuccess(){
+ socketSuccess() {
this.getNoReadNum()
this.onRefresherrefresh()
console.log('通知并刷新成功')
@@ -203,19 +203,33 @@ export default {
*/
activeTab(index) {
this.active = index
- if (index == 1) {
+ if (index === 0) {
+ this.queryParams.isBack = false
+ this.queryParams.isToBeReviewed = undefined
+ this.isShow = true
+ } else if (index === 1) {
this.queryParams.isBack = true
this.queryParams.isToBeReviewed = undefined
this.isShow = true
- } else if (index == 2) {
+ } else if (index === 2) {
this.isShow = false
this.queryParams.isToBeReviewed = true
this.queryParams.isBack = undefined
- } else {
- this.isShow = true
- this.queryParams.isBack = undefined
- this.queryParams.isToBeReviewed = undefined
}
+ // this.active = index
+ // if (index == 1) {
+ // this.queryParams.isBack = false
+ // this.queryParams.isToBeReviewed = undefined
+ // this.isShow = true
+ // } else if (index == 2) {
+ // this.isShow = true
+ // this.queryParams.isToBeReviewed = true
+ // this.queryParams.isBack = undefined
+ // } else {
+ // this.isShow = true
+ // this.queryParams.isBack = undefined
+ // this.queryParams.isToBeReviewed = undefined
+ // }
this.onRefresherrefresh()
},
@@ -321,10 +335,10 @@ export default {
if (res.code == 200) {
this.noReadNum = res.data > 99 ? 99 : res.data
}
- if(this.ifFirstLogin && this.noReadNum>0){
+ if (this.ifFirstLogin && this.noReadNum > 0) {
console.log("播放")
this.$refs.tarBar.dianyidain()
- this.ifFirstLogin=false
+ this.ifFirstLogin = false
}
})
},
diff --git a/pages-warehouse/inOutWarehouse/inOutWarehouse.vue b/pages-warehouse/inOutWarehouse/inOutWarehouse.vue
index 12b526f..634d6e9 100644
--- a/pages-warehouse/inOutWarehouse/inOutWarehouse.vue
+++ b/pages-warehouse/inOutWarehouse/inOutWarehouse.vue
@@ -1,11 +1,11 @@
-
-
-
-
-
+
+
+
+
+
@@ -38,8 +38,8 @@
@@ -48,28 +48,28 @@
import VNavigationBar from "@/components/VNavigationBar.vue";
import request from '@/utils/request';
import {
- getJSONData,setJSONData
+ getJSONData, setJSONData
} from '@/utils/auth'
-import {getDictTextByCodeAndValue,createUniqueCodeByHead} from "@/utils/utils";
+import {getDictTextByCodeAndValue, createUniqueCodeByHead} from "@/utils/utils";
export default {
components: {VNavigationBar},
data() {
return {
//配件申请单id
- twId:'',
+ twId: '',
//配件列表
- wares:[],
+ wares: [],
//true 领料 ,false 退料
- isReceive:true,
+ isReceive: true,
//父组件传入的数据
- formData:{},
+ formData: {},
active: '',
- isToBeReviewed:true
+ isToBeReviewed: true
};
},
onLoad(data) {
- if(getJSONData("applyWaresForm")){
+ if (getJSONData("applyWaresForm")) {
this.formData = getJSONData("applyWaresForm")
this.isReceive = this.formData.isReceive
this.twId = this.formData.id
@@ -87,41 +87,63 @@ export default {
*/
init() {
const params = {
- twId:this.formData.id
+ twId: this.formData.id
}
request({
url: '/admin-api/repair/twi/list',
method: 'get',
params: params
- }).then((res)=>{
- res.data.map((item)=>{
- if(!item.waresAlreadyCount){
- item.waresAlreadyCount = 0
+ }).then((res) => {
+ this.wares = res.data
+ if (this.isToBeReviewed){
+ this.wares = this.wares.filter(item => item.waresStatus === '1')
+ this.wares = this.wares.filter(item => this.isReceive ? (item.waresCount > item.waresAlreadyCount) : (item.waresAlreadyCount > 0))
+ }
+ this.wares.forEach(item => {
+ if (!item.wares.stock){
+ item.wares.stock = 0
}
- if(!item.wares.stock){
- item.wares.stock=0
- }
- if(this.isReceive){
+ if (this.isReceive) {
//领料,最大可领取数量为申请数量-已领取数量,同时不能大于库存数量,默认数量就是最大可领取数量
item.maxNum = parseInt(item.waresCount) - parseInt(item.waresAlreadyCount)
- if(item.maxNum >item.wares.stock){
+ if (item.maxNum > item.wares.stock) {
item.maxNum = item.wares.stock
}
item.thisNum = item.maxNum
- }else{
+ } else {
//退料,最大数量为已领取数量,最小数量为0,默认数量为0
item.maxNum = item.waresAlreadyCount
item.thisNum = 0
}
})
- this.wares = res.data;
+ // res.data.map((item)=>{
+ // if(!item.waresAlreadyCount){
+ // item.waresAlreadyCount = 0
+ // }
+ // if(!item.wares.stock){
+ // item.wares.stock=0
+ // }
+ // if(this.isReceive){
+ // //领料,最大可领取数量为申请数量-已领取数量,同时不能大于库存数量,默认数量就是最大可领取数量
+ // item.maxNum = parseInt(item.waresCount) - parseInt(item.waresAlreadyCount)
+ // if(item.maxNum >item.wares.stock){
+ // item.maxNum = item.wares.stock
+ // }
+ // item.thisNum = item.maxNum
+ // }else{
+ // //退料,最大数量为已领取数量,最小数量为0,默认数量为0
+ // item.maxNum = item.waresAlreadyCount
+ // item.thisNum = 0
+ // }
+ // })
+ // this.wares = res.data;
})
},
/**
*
*/
addNum(repair) {
- if((repair.thisNum+1) > repair.maxNum){
+ if ((repair.thisNum + 1) > repair.maxNum) {
uni.showToast({
title: '超过库存数量或最大申请数量!',
icon: 'none'
@@ -129,13 +151,16 @@ export default {
return
}
this.$set(repair, 'thisNum', repair.thisNum + 1)
- const find = this.wares.find(f => f.id == repair.id)
- if (find) {
- find.thisNum = repair.thisNum
- } else {
- this.wares.push(JSON.parse(JSON.stringify(repair)))
+ const findIndex = this.wares.findIndex(f => f.id === repair.id);
+ if (findIndex !== -1) {
+ this.$set(this.wares, findIndex, repair);
}
- console.log('repair', repair)
+ // const find = this.wares.find(f => f.id == repair.id)
+ // if (find) {
+ // find.thisNum = repair.thisNum
+ // } else {
+ // this.wares.push(JSON.parse(JSON.stringify(repair)))
+ // }
},
/**
* 减
@@ -146,32 +171,46 @@ export default {
return
}
this.$set(repair, 'thisNum', repair.thisNum - 1)
- const find = this.wares.find(f => f.id == repair.id)
- if (find) {
- find.thisNum = repair.thisNum
- } else {
- this.wares.push(JSON.parse(JSON.stringify(repair)))
+ const findIndex = this.wares.findIndex(f => f.id === repair.id);
+ if (findIndex !== -1) {
+ this.$set(this.wares, findIndex, repair);
}
+ // const find = this.wares.find(f => f.id == repair.id)
+ // if (find) {
+ // find.thisNum = repair.thisNum
+ // } else {
+ // this.wares.push(JSON.parse(JSON.stringify(repair)))
+ // }
},
/**
* 出库
*/
submit() {
this.formData.repairSo = {
- soType:this.isReceive?'02':'04',
- soNo:createUniqueCodeByHead(this.isReceive?'LL':'TL'),
- userId:this.formData.repairId,
- userName:this.formData.repairName,
- soStatus:this.isReceive?'04':'07'
+ soType: this.isReceive ? '02' : '04',
+ soNo: createUniqueCodeByHead(this.isReceive ? 'LL' : 'TL'),
+ userId: this.formData.repairId,
+ userName: this.formData.repairName,
+ soStatus: this.isReceive ? '04' : '07'
}
- this.formData.repairSois = [...this.wares.map(item =>{
+ // 过滤一下,thisNum不等0才行
+ const flag = this.wares.filter(item => item.thisNum > 0)
+ if (!flag || flag.length === 0){
+ uni.showToast({
+ title: '请设置配件数量!',
+ icon: 'none'
+ })
+ return
+ }
+ this.wares = flag
+ this.formData.repairSois = [...this.wares.map(item => {
return {
soiType: this.isReceive ? '02' : "04",
goodsId: item.waresId,
goodsCount: item.thisNum,
}
})]
- if (this.isReceive){
+ if (this.isReceive) {
this.formData.items = [...this.wares.map(item => {
return {
id: item.id,
@@ -181,16 +220,16 @@ export default {
request({
url: '/admin-api/repair/tw/pass',
method: 'post',
- data:this.formData
- }).then((res)=>{
- if (res.code === 200){
+ data: this.formData
+ }).then((res) => {
+ if (res.code === 200) {
uni.showToast({
title: '通知成功!',
icon: 'none'
})
- setTimeout(()=>{
+ setTimeout(() => {
uni.navigateBack()
- },700)
+ }, 700)
}
})
},
@@ -198,10 +237,10 @@ export default {
/**
* 跳转采购页面
*/
- toPart(){
+ toPart() {
const formData = this.formData;
formData.items = this.wares;
- setJSONData("applyWaresForm",formData)
+ setJSONData("applyWaresForm", formData)
uni.navigateTo({
url: '/pages-warehouse/inOutWarehouse/part'
})
@@ -283,9 +322,11 @@ export default {
.listItem {
padding: 30rpx 0;
border-bottom: 2rpx solid #DDDDDD;
+
&:last-child {
border-bottom: none;
}
+
.repairName {
font-size: 32rpx;
color: #333333;