This commit is contained in:
2025-08-14 09:52:26 +08:00
parent 1a4244e892
commit 868ae960e1
4 changed files with 142 additions and 78 deletions

View File

@@ -218,7 +218,7 @@
return return
} }
try { try {
let res = await jbReturnMaterial(this.index, this.index2, this.pkId) let res = await jbReturnMaterial(this.index, this.index2, this.val1, this.pkId)
if (res.code === '200') { if (res.code === '200') {
uni.showToast({ uni.showToast({
title: res.message, title: res.message,

View File

@@ -1,6 +1,6 @@
<template> <template>
<view class="zd_container"> <view class="zd_container">
<!-- 空载具入库 --> <!-- 手工叫料 -->
<nav-bar :title="title"></nav-bar> <nav-bar :title="title"></nav-bar>
<view class="zd_content"> <view class="zd_content">
<view class="zd_wrapper"> <view class="zd_wrapper">
@@ -14,7 +14,7 @@
</view> </view>
<view class="zd-row border-bottom"> <view class="zd-row border-bottom">
<view class="zd-col-7"> <view class="zd-col-7">
<span class="filter_label">产线终</span> <span class="filter_label">库区起</span>
</view> </view>
<view class="zd-col-24 filter_select"> <view class="zd-col-24 filter_select">
<uni-data-select v-model="index2" :localdata="options2" @change="selectChange2"></uni-data-select> <uni-data-select v-model="index2" :localdata="options2" @change="selectChange2"></uni-data-select>
@@ -22,10 +22,42 @@
</view> </view>
<view class="zd-row border-bottom"> <view class="zd-row border-bottom">
<view class="zd-col-7"> <view class="zd-col-7">
<span class="filter_label">物料编码</span> <span class="filter_label">产线终点</span>
</view> </view>
<view class="zd-col-24 filter_select"> <view class="zd-col-17">
<uni-data-select v-model="index3" :localdata="options3" @change="selectChange3"></uni-data-select> <search-box v-model="val1"/>
</view>
</view>
<view class="zd-row border-bottom">
<view class="zd-col-7">
<span class="filter_label">物料信息</span>
</view>
<view class="zd-col-17">
<input type="text" class="filter_input" v-model="currentData.material_name" @tap="toJump">
</view>
</view>
<view class="zd-row border-bottom">
<view class="zd-col-7">
<span class="filter_label filter_input_disabled">物料名称</span>
</view>
<view class="zd-col-17">
<input type="text" class="filter_input filter_input_disabled" v-model="currentData.material_name" disabled>
</view>
</view>
<view class="zd-row border-bottom">
<view class="zd-col-7">
<span class="filter_label filter_input_disabled">物料规格</span>
</view>
<view class="zd-col-17">
<input type="text" class="filter_input filter_input_disabled" v-model="currentData.material_spec" disabled>
</view>
</view>
<view class="zd-row border-bottom">
<view class="zd-col-7">
<span class="filter_label filter_input_disabled">物料编码</span>
</view>
<view class="zd-col-17">
<input type="text" class="filter_input filter_input_disabled" v-model="currentData.material_code" disabled>
</view> </view>
</view> </view>
<view class="zd-row border-bottom"> <view class="zd-row border-bottom">
@@ -40,7 +72,7 @@
</view> </view>
<view class="zd-row submit-bar"> <view class="zd-row submit-bar">
<button class="zd-col-6 button-default" @tap="clearUp">清空</button> <button class="zd-col-6 button-default" @tap="clearUp">清空</button>
<button class="zd-col-16 button-primary" :class="{'button-info': !this.index || !this.index2 || !this.index3 || !this.index4}" :disabled="disabled" @tap="_checkoutbillcallMaterial">确认</button> <button class="zd-col-16 button-primary" :class="{'button-info': !this.index || !this.index2 || !this.val1 || !this.currentData.material_code || !this.index4}" :disabled="disabled" @tap="_checkoutbillcallMaterial">确认</button>
</view> </view>
</view> </view>
</template> </template>
@@ -48,7 +80,7 @@
<script> <script>
import NavBar from '@/components/NavBar.vue' import NavBar from '@/components/NavBar.vue'
import SearchBox from '@/components/SearchBox.vue' import SearchBox from '@/components/SearchBox.vue'
import {regionList, pointList, checkoutbillcallMaterial} from '@/utils/getData4.js' import {getPdaSect, getPdaStruct, checkoutbillcallMaterial} from '@/utils/getData4.js'
export default { export default {
components: { components: {
NavBar, NavBar,
@@ -56,28 +88,38 @@
}, },
data() { data() {
return { return {
val1: '',
title: '', title: '',
options: [], options: [],
index: '', index: '',
options2: [], options2: [],
index2: '', index2: '',
options3: [],
index3: '',
options4: [{text:'单独上料', value:'1'}, {text:'下空桶上满料', value: '2'}], options4: [{text:'单独上料', value:'1'}, {text:'下空桶上满料', value: '2'}],
index4: '', index4: '',
currentData: {},
disabled: false disabled: false
}; };
}, },
onLoad (options) { onLoad (options) {
this.title = options.title this.title = options.title
}, },
onShow() {
if (this.$store.getters.publicObj !== '') {
this.currentData = this.$store.getters.publicObj
}
},
created () { created () {
this._regionList() this._getPdaSect()
}, },
methods: { methods: {
async _regionList () { toJump () {
uni.navigateTo({
url: '/pages/common/mater-list?title=查询物料'
})
},
async _getPdaSect () {
try { try {
let res = await regionList() let res = await getPdaSect()
if (res) { if (res) {
this.options = res.data this.options = res.data
} else { } else {
@@ -87,9 +129,9 @@
this.options = [] this.options = []
} }
}, },
async _pointList (e) { async _getPdaStruct (e) {
try { try {
let res = await pointList(e) let res = await getPdaStruct(e)
if (res) { if (res) {
this.options2 = res.data this.options2 = res.data
} else { } else {
@@ -101,14 +143,11 @@
}, },
selectChange (e) { selectChange (e) {
this.index = e this.index = e
this._pointList(e) this._getPdaStruct(e)
}, },
selectChange2 (e) { selectChange2 (e) {
this.index2 = e this.index2 = e
}, },
selectChange3 (e) {
this.index3 = e
},
selectChange4 (e) { selectChange4 (e) {
this.index4 = e this.index4 = e
}, },
@@ -118,12 +157,12 @@
}, },
async _checkoutbillcallMaterial () { async _checkoutbillcallMaterial () {
this.disabled = true this.disabled = true
if (!this.index || !this.index2 || !this.index3 || !this.index4) { if (!this.index || !this.index2 || !this.val1 || !this.currentData.material_code || !this.index4) {
this.disabled = false this.disabled = false
return return
} }
try { try {
let res = await checkoutbillcallMaterial(this.index, this.index2, this.index3, this.index4) let res = await checkoutbillcallMaterial(this.index, this.index2, this.currentData.material_code, this.index4)
if (res.code === '200') { if (res.code === '200') {
uni.showToast({ uni.showToast({
title: res.message, title: res.message,

View File

@@ -1,23 +1,23 @@
<template> <template>
<view class="zd_container"> <view class="zd_container">
<!-- 空载具入库 --> <!-- 手工退料 -->
<nav-bar :title="title"></nav-bar> <nav-bar :title="title"></nav-bar>
<view class="zd_content"> <view class="zd_content">
<view class="zd_wrapper"> <view class="zd_wrapper">
<view class="zd-row border-bottom"> <view class="zd-row border-bottom">
<view class="zd-col-7"> <view class="zd-col-7">
<span class="filter_label">库区编码</span> <span class="filter_label">起点点位</span>
</view> </view>
<view class="zd-col-24 filter_select"> <view class="zd-col-17">
<uni-data-select v-model="index" :localdata="options" @change="selectChange"></uni-data-select> <search-box v-model="val1"/>
</view> </view>
</view> </view>
<view class="zd-row border-bottom"> <view class="zd-row border-bottom">
<view class="zd-col-7"> <view class="zd-col-7">
<span class="filter_label">起点点位</span> <span class="filter_label">载具编码</span>
</view> </view>
<view class="zd-col-24 filter_select"> <view class="zd-col-17">
<uni-data-select v-model="index2" :localdata="options2" @change="selectChange2"></uni-data-select> <search-box v-model="val2"/>
</view> </view>
</view> </view>
<view class="zd-row border-bottom"> <view class="zd-row border-bottom">
@@ -25,14 +25,54 @@
<span class="filter_label">任务类型</span> <span class="filter_label">任务类型</span>
</view> </view>
<view class="zd-col-24 filter_select"> <view class="zd-col-24 filter_select">
<uni-data-select v-model="index3" :localdata="options3" @change="selectChange3"></uni-data-select> <uni-data-select v-model="index4" :localdata="options4" @change="selectChange4"></uni-data-select>
</view>
</view>
<view class="zd-row border-bottom">
<view class="zd-col-7">
<span class="filter_label">物料信息</span>
</view>
<view class="zd-col-17">
<input type="text" class="filter_input" v-model="currentData.material_name" @tap="toJump">
</view>
</view>
<view class="zd-row border-bottom">
<view class="zd-col-7">
<span class="filter_label filter_input_disabled">物料名称</span>
</view>
<view class="zd-col-17">
<input type="text" class="filter_input filter_input_disabled" v-model="currentData.material_name" disabled>
</view>
</view>
<view class="zd-row border-bottom">
<view class="zd-col-7">
<span class="filter_label filter_input_disabled">物料规格</span>
</view>
<view class="zd-col-17">
<input type="text" class="filter_input filter_input_disabled" v-model="currentData.material_spec" disabled>
</view>
</view>
<view class="zd-row border-bottom">
<view class="zd-col-7">
<span class="filter_label filter_input_disabled">物料编码</span>
</view>
<view class="zd-col-17">
<input type="text" class="filter_input filter_input_disabled" v-model="currentData.material_code" disabled>
</view>
</view>
<view class="zd-row border-bottom">
<view class="zd-col-7">
<span class="filter_label">物料数量</span>
</view>
<view class="zd-col-17">
<NumberInput v-model="val3" />
</view> </view>
</view> </view>
</view> </view>
</view> </view>
<view class="zd-row submit-bar"> <view class="zd-row submit-bar">
<button class="zd-col-6 button-default" @tap="clearUp">清空</button> <button class="zd-col-6 button-default" @tap="clearUp">清空</button>
<button class="zd-col-16 button-primary" :class="{'button-info': !this.index || !this.index2 || !this.index3}" :disabled="disabled" @tap="_checkoutbillBackMaterial">确认</button> <button class="zd-col-16 button-primary" :class="{'button-info': !val1 || !val2 || !index4 || !val3 || !currentData.material_code}" :disabled="disabled" @tap="_checkoutbillBackMaterial">确认</button>
</view> </view>
</view> </view>
</template> </template>
@@ -40,7 +80,7 @@
<script> <script>
import NavBar from '@/components/NavBar.vue' import NavBar from '@/components/NavBar.vue'
import SearchBox from '@/components/SearchBox.vue' import SearchBox from '@/components/SearchBox.vue'
import {regionList, pointList, checkoutbillBackMaterial} from '@/utils/getData4.js' import {checkoutbillBackMaterial} from '@/utils/getData4.js'
export default { export default {
components: { components: {
NavBar, NavBar,
@@ -48,69 +88,49 @@
}, },
data() { data() {
return { return {
val1: '',
val2: '',
val3: '',
title: '', title: '',
options: [], options4: [{text:'退料', value:'1'}, {text:'退空桶', value: '2'}],
index: '', index4: '',
options2: [], currentData: {},
index2: '',
options3: [{text:'退料', value:'1'},{text:'退空桶',value: '2'}],
index3: '',
disabled: false disabled: false
}; };
}, },
onLoad (options) { onLoad (options) {
this.title = options.title this.title = options.title
}, },
onShow() {
if (this.$store.getters.publicObj !== '') {
this.currentData = this.$store.getters.publicObj
}
},
created () { created () {
this._regionList()
}, },
methods: { methods: {
async _regionList () { toJump () {
try { uni.navigateTo({
let res = await regionList() url: '/pages/common/mater-list?title=查询物料'
if (res) { })
this.options = res.data
} else {
this.options = []
}
} catch (e) {
this.options = []
}
}, },
async _pointList (e) { selectChange4 (e) {
try { this.index4 = e
let res = await pointList(e)
if (res) {
this.options2 = res.data
} else {
this.options2 = []
}
} catch (e) {
this.options2 = []
}
},
selectChange (e) {
this.index = e
this._pointList(e)
},
selectChange2 (e) {
this.index2 = e
},
selectChange3 (e) {
this.index3 = e
}, },
clearUp () { clearUp () {
this.index = '' this.val1 = ''
this.val2 = ''
this.index4 = ''
this.disabled = false this.disabled = false
}, },
async _checkoutbillBackMaterial () { async _checkoutbillBackMaterial () {
this.disabled = true this.disabled = true
if (!this.index || !this.index2 || !this.index3) { if (!this.val1 || !this.val2 || !this.index4 || !this.val3 || !this.currentData.material_code) {
this.disabled = false this.disabled = false
return return
} }
try { try {
let res = await checkoutbillBackMaterial(this.index, this.index2, this.index3) let res = await checkoutbillBackMaterial(this.val1, this.val2, this.index4, this.val3, this.currentData.material_code)
if (res.code === '200') { if (res.code === '200') {
uni.showToast({ uni.showToast({
title: res.message, title: res.message,

View File

@@ -183,9 +183,9 @@ export const jbEmptyTakeOut = (pcode) => request({
// 解包退料 // 解包退料
// 解包退料 // 解包退料
export const jbReturnMaterial = (area, pcode, wid) => request({ export const jbReturnMaterial = (area, pcode, tpcode, wid) => request({
url:'api/pda/jb/jbReturnMaterial', url:'api/pda/jb/jbReturnMaterial',
data: {area: area, point_code: pcode, workorder_id: wid} data: {area: area, point_code: pcode, tp_code: tpcode, workorder_id: wid}
}) })
// 人车安全 // 人车安全
@@ -245,10 +245,15 @@ export const checkoutbillcallMaterial = (dcode, scode, mcode, type) => request({
url:'api/checkoutbill/callMaterial', url:'api/checkoutbill/callMaterial',
data: {device_code: dcode, struct_code: scode, material_code: mcode, task_type: type} data: {device_code: dcode, struct_code: scode, material_code: mcode, task_type: type}
}) })
// 手工 // 手工退
export const checkoutbillBackMaterial = (dcode, vcode, type) => request({ export const checkoutbillBackMaterial = (dcode, vcode, type, qty, mcode) => request({
url:'api/checkoutbill/BackMaterial', url:'api/checkoutbill/BackMaterial',
data: {device_code: dcode, vehicle_code: vcode, task_type: type} data: {device_code: dcode, vehicle_code: vcode, task_type: type, qty: qty, material_code: mcode}
})
// 获取库位
export const getPdaStruct = (scode) => request({
url:'api/pda/iosIn/getPdaStruct',
data: {sect_code: scode}
}) })
// 点位属性设置 // 点位属性设置