From 0256141ad70be0d254fd9958e8d28867db1d7531 Mon Sep 17 00:00:00 2001
From: Mr.Shi <1878285526@qq.com>
Date: 星期三, 06 九月 2023 13:47:07 +0800
Subject: [PATCH] 小程序
---
minipro_standard/pages_adjust/pages/addReceipt/addReceipt.vue | 252 ++++++++++++++++++++++++++++++++++++-------------
1 files changed, 183 insertions(+), 69 deletions(-)
diff --git a/minipro_standard/pages_adjust/pages/addReceipt/addReceipt.vue b/minipro_standard/pages_adjust/pages/addReceipt/addReceipt.vue
index 3b9b607..08a5346 100644
--- a/minipro_standard/pages_adjust/pages/addReceipt/addReceipt.vue
+++ b/minipro_standard/pages_adjust/pages/addReceipt/addReceipt.vue
@@ -20,67 +20,66 @@
<view class="rework_qd_title">
<view class="rework_qd_title_left">
<view class="x"></view>
- <text>{{`鍏ュ簱鐗╂枡娓呭崟${list.length}`}}</text>
+ <text>鍏ュ簱鐗╂枡娓呭崟</text>
</view>
<view class="rework_qd_title_right" @click="addItem()">
<image src="@/static/gongdan_ic_shoudong@2x.png" mode="widthFix"></image>
<text>澧炲姞鍏ュ簱</text>
</view>
</view>
- <van-swipe-cell v-for="(item, index) in list" :key="index">
- <view class="rework_qd_list">
- <view class="rework_qd_item" @click="locationShow = true">
- <text><b>*</b>鍏ュ簱璐т綅</text>
- <view class="rework_qd_item_right">
- <text :class="item.locationName ? 'black' : ''">{{item.locationName ? item.locationName : '璇烽�夋嫨'}}</text>
- <u-icon name="arrow-right"></u-icon>
- </view>
- </view>
- <view class="rework_qd_item" @click="materialsShow = true">
- <text><b>*</b>鍏ュ簱鐗╂枡</text>
- <view class="rework_qd_item_right">
- <text :class="item.materialName ? 'black' : ''">{{item.materialName ? item.materialName : '璇烽�夋嫨'}}</text>
- <u-icon name="arrow-right"></u-icon>
- </view>
- </view>
- <template v-if="form.type !== 25">
- <view class="rework_qd_item" @click="productionShow = true">
- <text>鐢熶骇宸ュ簭</text>
+ <u-swipe-action :autoClose="true">
+ <u-swipe-action-item v-for="(item, index) in list" :key="index" @click="dele($event, index)" :options="item.options">
+ <view class="rework_qd_list">
+ <view class="rework_qd_item" @click="openL(index)">
+ <text><b>*</b>鍏ュ簱璐т綅</text>
<view class="rework_qd_item_right">
- <text :class="item.procedureName ? 'black' : ''">{{item.procedureName ? item.procedureName : '璇烽�夋嫨'}}</text>
+ <text :class="item.locationName ? 'black' : ''">{{item.locationName ? item.locationName : '璇烽�夋嫨'}}</text>
<u-icon name="arrow-right"></u-icon>
</view>
</view>
- </template>
- <view class="rework_qd_item" @click="qualityShow = true">
- <text><b>*</b>璐ㄩ噺灞炴��</text>
- <view class="rework_qd_item_right">
- <text :class="item.qualityTypeName ? 'black' : ''">{{item.qualityTypeName ? item.qualityTypeName : '璇烽�夋嫨'}}</text>
- <u-icon name="arrow-right"></u-icon>
+ <view class="rework_qd_item" @click="openMaterial(index)">
+ <text><b>*</b>鍏ュ簱鐗╂枡</text>
+ <view class="rework_qd_item_right">
+ <text :class="item.materialName ? 'black' : ''">{{item.materialName ? item.materialName : '璇烽�夋嫨'}}</text>
+ <u-icon name="arrow-right"></u-icon>
+ </view>
+ </view>
+ <template v-if="form.type !== 25">
+ <view class="rework_qd_item" @click="openGX(index)">
+ <text>鐢熶骇宸ュ簭</text>
+ <view class="rework_qd_item_right">
+ <text :class="item.procedureName ? 'black' : ''">{{item.procedureName ? item.procedureName : '璇烽�夋嫨'}}</text>
+ <u-icon name="arrow-right"></u-icon>
+ </view>
+ </view>
+ </template>
+ <view class="rework_qd_item" @click="openQ(index)">
+ <text><b>*</b>璐ㄩ噺灞炴��</text>
+ <view class="rework_qd_item_right">
+ <text :class="item.qualityTypeName ? 'black' : ''">{{item.qualityTypeName ? item.qualityTypeName : '璇烽�夋嫨'}}</text>
+ <u-icon name="arrow-right"></u-icon>
+ </view>
+ </view>
+ <view class="rework_qd_item">
+ <text>鎵规鍙�</text>
+ <view class="rework_qd_item_right">
+ <u--input placeholder="璇疯緭鍏�" inputAlign="right" :customStyle="{width: '230rpx'}" border="surround" v-model="item.batch"></u--input>
+ </view>
+ </view>
+ <view class="rework_qd_item">
+ <text><b>*</b>鍏ュ簱鏁伴噺<template v-if="item.unitName">({{ item.unitName }})</template></text>
+ <view class="rework_qd_item_right">
+ <u--input placeholder="0" inputAlign="right" :customStyle="{width: '230rpx'}" border="surround" v-model="item.num"></u--input>
+ </view>
</view>
</view>
- <view class="rework_qd_item">
- <text>鎵规鍙�</text>
- <view class="rework_qd_item_right">
- <u--input placeholder="璇疯緭鍏�" inputAlign="right" :customStyle="{width: '230rpx'}" border="surround" v-model="item.batch"></u--input>
- </view>
- </view>
- <view class="rework_qd_item">
- <text><b>*</b>鍏ュ簱鏁伴噺<template v-if="item.unitName">({{ item.unitName }})</template></text>
- <view class="rework_qd_item_right">
- <u--input placeholder="0" inputAlign="right" :customStyle="{width: '230rpx'}" border="surround" v-model="item.num"></u--input>
- </view>
- </view>
- </view>
- <template #right>
- <van-button style="height: 100%;" square type="danger" text="鍒犻櫎" @click="dele(index)" />
- </template>
- </van-swipe-cell>
+ </u-swipe-action-item>
+ </u-swipe-action>
</view>
<view class="rework_zw"></view>
<!-- 搴曢儴鎿嶄綔鎸夐挳 -->
<view class="rework_footer">
- <button class="rework_footer_submit">鎻愪氦</button>
+ <button class="rework_footer_submit" @click="onConfirm()">鎻愪氦</button>
</view>
<u-toast ref="uToast"></u-toast>
<!-- 浠撳簱 -->
@@ -90,7 +89,7 @@
<!-- 璐т綅 -->
<location :show="locationShow" :list="locationList" @close="close3" @value="getValue3" />
<!-- 宸ュ簭 -->
- <ProductionProcess :show="productionShow" :list="productionList" @close="close4" @value="getValue4" />
+ <ProductionProcess :show="productionShow" :list="productionList" @close="productionShow = false" @value="getValue4" />
<!-- 鍗曟嵁绫诲瀷 -->
<u-picker :show="typeShow" keyName="name" :columns="typeList" @confirm="confirm" @cancel="typeClose"></u-picker>
<!-- 璐ㄩ噺灞炴�� -->
@@ -103,6 +102,8 @@
import location from '../../components/location.vue'
import Material from '../../components/Material.vue'
import ProductionProcess from '../../components/ProductionProcess.vue'
+ import { getListByWarehouseId, wOutBoundForStockUp } from '@/util/api/WorkOrderAPI'
+ import { getListByMaterialId } from '@/util/api/ExWarehouse'
export default {
components: { Warehouse, location, Material, ProductionProcess },
data() {
@@ -138,7 +139,15 @@
qualityType: '',
qualityTypeName: '',
unitId: '',
- unitName: ''
+ unitName: '',
+ options: [
+ {
+ text: '鍒犻櫎',
+ style: {
+ backgroundColor: '#f56c6c'
+ }
+ }
+ ]
}
],
typeList: [[{name: '閲囪喘鍏ュ簱', id: 25}, {name: '搴撳瓨璋冩暣', id: 28}]],
@@ -151,17 +160,82 @@
};
},
methods: {
+ dele(e, index) {
+ if (this.list.length === 1) return uni.showToast({ title: '璇烽�夋嫨鍗曟嵁绫诲瀷', icon: 'none', duration: 2000 });
+ this.list.splice(index, 1)
+ },
+ // 閫夋嫨宸ュ簭
+ getValue4(item) {
+ this.list[this.i].procedureId = item.id
+ this.list[this.i].procedureName = item.name
+ this.productionShow = false
+ },
+ // 鎻愪氦
+ onConfirm() {
+ if (!this.form.type) return uni.showToast({ title: '璇烽�夋嫨鍗曟嵁绫诲瀷', icon: 'none', duration: 2000 });
+ if (!this.form.warehouseId) return uni.showToast({ title: '璇烽�夋嫨鍏ュ簱浠撳簱', icon: 'none', duration: 2000 });
+ if (this.list.length === 0) return uni.showToast({ title: '璇峰厛娣诲姞鍏ュ簱鐗╂枡', icon: 'none', duration: 2000 });
+ for (let i = 0; i < this.list.length; i++) {
+ if (!this.list[i].locationId) return uni.showToast({ title: `绗�${i+1}椤瑰叆搴撹揣浣嶄笉鑳戒负绌篳, icon: 'none', duration: 2000 });
+ if (!this.list[i].materialId) return uni.showToast({ title: `绗�${i+1}椤瑰叆搴撶墿鏂欎笉鑳戒负绌篳, icon: 'none', duration: 2000 });
+ if (!this.list[i].qualityType) return uni.showToast({ title: `绗�${i+1}椤硅川閲忓睘鎬т笉鑳戒负绌篳, icon: 'none', duration: 2000 });
+ if (this.list[i].num <= 0) {
+ return uni.showToast({ title: `绗�${i + 1}椤瑰叆搴撴暟閲忓繀椤诲ぇ浜�0`, icon: 'none', duration: 2000 });
+ }
+ }
+ wOutBoundForStockUp({
+ type: this.form.type,
+ planDate: this.getDay(),
+ validDate: this.getDay(),
+ warehouseId: this.form.warehouseId,
+ woutboundInBodyBeanList: this.list
+ }).then(res => {
+ if (res.code === 200) {
+ uni.showToast({ title: '鍏ュ簱鎴愬姛', icon: 'success', duration: 2000 });
+ setTimeout(() => {
+ uni.navigateBack({ delta: 1 });
+ }, 2000)
+ }
+ })
+ },
+ // 鑾峰彇褰撳ぉ骞存湀鏃�
+ getDay() {
+ var date = new Date();
+ var year = date.getFullYear();
+ var month = date.getMonth() + 1;
+ var day = date.getDate();
+ return `${year}-${month <= 9 ? `0${month}` : month}-${day <= 9 ? `0${day}` : day}`
+ },
+ // 鎵撳紑閫夋嫨鐗╂枡
+ openQ(index) {
+ if (this.list[index].locationIdLabel == 'APPLIANCE_ONTEST' || this.list[index].locationIdLabel == 'APPLIANCE_OFFTEST' || this.list[index].locationIdLabel == 'APPLIANCE_USELESS') {
+ return
+ }
+ this.i = index
+ this.qualityShow = true
+ },
+ // 鎵撳紑宸ュ簭
+ openGX(index) {
+ if (!this.list[index].materialId) return uni.showToast({ title: '璇峰厛閫夋嫨鍏ュ簱鐗╂枡', icon: 'none', duration: 2000 });
+ this.i = index
+ this.productionShow = true
+ },
+ // 鎵撳紑閫夋嫨璐т綅
+ openL(index) {
+ if (!this.form.warehouseId) return uni.showToast({ title: '璇烽�夋嫨鍏ュ簱浠撳簱', icon: 'none', duration: 2000 });
+ this.i = index
+ this.locationShow = true
+ },
+ // 鎵撳紑閫夋嫨鐗╂枡
+ openMaterial(index) {
+ this.i = index
+ this.materialsShow = true
+ },
// 璐ㄩ噺灞炴�х‘璁�
onConfirm1(value) {
- this.form.typeName = value.name
- this.form.type = value.id
- if (value.id == 25) {
- this.list.forEach(item => {
- item.procedureId = ''
- item.procedureName = ''
- })
- }
- this.typeShow = false
+ this.list[this.i].qualityType = value.value[0].id
+ this.list[this.i].qualityTypeName = value.value[0].name
+ this.qualityShow = false
},
// 閫夋嫨鐗╂枡
getValue1(item) {
@@ -175,12 +249,12 @@
materialId: item.id
}).then(res => {
if (res.code === 200) {
- productionList.value = res.data
+ this.productionList = res.data
this.list[this.i].procedureId = ''
this.list[this.i].procedureName = ''
}
})
- materialsShow.value = false
+ this.materialsShow = false
},
// 鍏抽棴浠撳簱閫夋嫨寮规
close1() {
@@ -213,12 +287,48 @@
confirm(val) {
this.form.type = val.value[0].id
this.form.typeName = val.value[0].name
+ if (val.value[0].id == 25) {
+ this.list.forEach(item => {
+ item.procedureId = ''
+ item.procedureName = ''
+ })
+ }
this.typeShow = false
},
// 浠撳簱纭
getValue(val) {
this.form.warehouseName = val.name
this.form.warehouseId = val.id
+ getListByWarehouseId({ wareHouseId: val.id })
+ .then(res => {
+ if (res.code === 200) {
+ this.locationList = res.data
+ if (res.data.length === 1) {
+ this.location = false
+ this.list.forEach(item => {
+ item.locationId = res.data[0].id
+ item.locationName = res.data[0].unionName
+ })
+ this.list[this.i].locationIdLabel = res.data[0].label
+ if (res.data[0].label === 'APPLIANCE_ONTEST') {
+ this.list[this.i].qualityType = '0'
+ this.list[this.i].qualityTypeName = '鍚堟牸'
+ } else if (res.data[0].label === 'APPLIANCE_OFFTEST') {
+ this.list[this.i].qualityType = '1'
+ this.list[this.i].qualityTypeName = '涓嶈壇'
+ } else if (res.data[0].label === 'APPLIANCE_USELESS') {
+ this.list[this.i].qualityType = '2'
+ this.list[this.i].qualityTypeName = '鎶ュ簾'
+ }
+ } else {
+ this.location = true
+ this.list.forEach(item => {
+ item.locationId = res.data[0].id
+ item.locationName = res.data[0].unionName
+ })
+ }
+ }
+ })
this.warehouseShow = false
},
typeClose() {
@@ -230,7 +340,7 @@
// 娣诲姞鏄庣粏
addItem() {
if (!this.form.warehouseId) return this.$refs.uToast.show({ type: 'default', message: "璇烽�夋嫨鍏ュ簱浠撳簱" })
- this.list.push({
+ this.list.unshift({
batch: '',
locationId: this.list[this.list.length - 1].locationId,
locationName: this.list[this.list.length - 1].locationName,
@@ -244,21 +354,25 @@
qualityType: this.list[this.list.length - 1].qualityType,
qualityTypeName: this.list[this.list.length - 1].qualityTypeName,
unitId: '',
- unitName: ''
+ unitName: '',
+ options: [
+ {
+ text: '鍒犻櫎',
+ style: {
+ backgroundColor: '#f56c6c'
+ }
+ }
+ ]
})
- },
- // 鍒犻櫎
- dele(index) {
- if (this.list.length === 1) {
- this.$refs.uToast.show({ type: 'default', message: "鑷冲皯淇濈暀涓�鏉$墿娴佹竻鍗曚俊鎭�" })
- return
- }
- this.list.splice(index, 1)
}
}
}
</script>
-
+<style>
+ .u-swipe-action-item__right {
+ z-index: 9;
+ }
+</style>
<style lang="scss" scoped>
.rework {
width: 100%;
--
Gitblit v1.9.3