多个功能修改
This commit is contained in:
@@ -283,8 +283,11 @@ uni-button:after {
|
|||||||
border-radius: 10rpx;
|
border-radius: 10rpx;
|
||||||
}
|
}
|
||||||
.button-primary {
|
.button-primary {
|
||||||
|
display: grid;
|
||||||
|
place-items: center; /* 垂直和水平居中 */
|
||||||
font-size: 34rpx;
|
font-size: 34rpx;
|
||||||
line-height: 88rpx;
|
line-height: 34rpx;
|
||||||
|
height: 88rpx;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
letter-spacing: 4rpx;
|
letter-spacing: 4rpx;
|
||||||
|
|||||||
34
components/NumberInput.vue
Normal file
34
components/NumberInput.vue
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
<template>
|
||||||
|
<input
|
||||||
|
class="filter_input"
|
||||||
|
type="number"
|
||||||
|
:value="value"
|
||||||
|
:placeholder="placeholder"
|
||||||
|
@input="onInput"
|
||||||
|
@confirm="onInput"
|
||||||
|
/>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
props: {
|
||||||
|
value: {
|
||||||
|
type: [Number, String],
|
||||||
|
default: '',
|
||||||
|
},
|
||||||
|
placeholder: String
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
onInput(event) {
|
||||||
|
// 获取输入值
|
||||||
|
const value = event.detail ? event.detail.value : event.target.value;
|
||||||
|
// 格式化输入值
|
||||||
|
let formattedValue = value.replace(/[^0-9.]/g, '')
|
||||||
|
formattedValue = parseFloat(formattedValue)
|
||||||
|
formattedValue = formattedValue > 0 ? formattedValue : ''
|
||||||
|
this.$emit('input', formattedValue);
|
||||||
|
event.target.value = formattedValue
|
||||||
|
}
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
4
main.js
4
main.js
@@ -25,6 +25,10 @@ Vue.directive('enterNumber', {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Vue.prototype.$getStatusText = function(statusMap, status) {
|
||||||
|
return statusMap[status] || '';
|
||||||
|
};
|
||||||
|
|
||||||
import store from '@/vuex/store.js'
|
import store from '@/vuex/store.js'
|
||||||
|
|
||||||
const app = new Vue({
|
const app = new Vue({
|
||||||
|
|||||||
@@ -306,6 +306,14 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
,{
|
||||||
|
"path" : "pages/entry/check-to-store",
|
||||||
|
"style" :
|
||||||
|
{
|
||||||
|
"navigationStyle": "custom"
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
],
|
],
|
||||||
"globalStyle": {
|
"globalStyle": {
|
||||||
// "pageOrientation": "landscape",
|
// "pageOrientation": "landscape",
|
||||||
|
|||||||
204
pages/entry/check-to-store.vue
Normal file
204
pages/entry/check-to-store.vue
Normal file
@@ -0,0 +1,204 @@
|
|||||||
|
<template>
|
||||||
|
<view class="zd_container">
|
||||||
|
<!-- 盘点入库 -->
|
||||||
|
<nav-bar :title="title"></nav-bar>
|
||||||
|
<view class="zd_content">
|
||||||
|
<view class="zd_wrapper">
|
||||||
|
<view class="zd-row border-bottom">
|
||||||
|
<view class="zd-col-7">
|
||||||
|
<span class="filter_label">载具编码</span>
|
||||||
|
</view>
|
||||||
|
<view class="zd-col-17">
|
||||||
|
<search-box v-model="vehicleCode" @handleChange="handleChange"/>
|
||||||
|
</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_code" @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.unit_name" 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="sWeight" />
|
||||||
|
</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="pcsn">
|
||||||
|
</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="qty" />
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="zd-row border-bottom filter_input_disabled">
|
||||||
|
<view class="zd-col-7">
|
||||||
|
<span class="filter_label">仓库编码</span>
|
||||||
|
</view>
|
||||||
|
<view class="zd-col-17 filter_select">
|
||||||
|
<input type="text" class="filter_input" v-model="storCode" disabled>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="zd-row submit-bar">
|
||||||
|
<button class="zd-col-6 button-default" @tap="toEmpty">清空</button>
|
||||||
|
<button class="zd-col-16 button-primary" :class="{'button-info': JSON.stringify(currentData) === '{}' || !vehicleCode || !sWeight || !pcsn || !qty}" :disabled="disabled" @tap="_checkMaterConfirm">盘点确认</button>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import NavBar from '@/components/NavBar.vue'
|
||||||
|
import SearchBox from '@/components/SearchBox.vue'
|
||||||
|
import NumberInput from '@/components/NumberInput.vue'
|
||||||
|
import {storList, queryMaterByVehicleCode} from '@/utils/mork2.js'
|
||||||
|
import {checkMaterConfirm} from '@/utils/getData2.js'
|
||||||
|
export default {
|
||||||
|
components: {
|
||||||
|
NavBar,
|
||||||
|
SearchBox,
|
||||||
|
NumberInput
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
title: '',
|
||||||
|
vehicleCode: '',
|
||||||
|
currentData: {},
|
||||||
|
sWeight: null,
|
||||||
|
pcsn: null,
|
||||||
|
qty: null,
|
||||||
|
storCode: null,
|
||||||
|
options: [],
|
||||||
|
disabled: false
|
||||||
|
};
|
||||||
|
},
|
||||||
|
onLoad (options) {
|
||||||
|
this.title = options.title
|
||||||
|
this._storList()
|
||||||
|
},
|
||||||
|
onShow () {
|
||||||
|
if (this.$store.getters.publicObj !== '') {
|
||||||
|
this.currentData.material_id = this.$store.getters.publicObj.material_id
|
||||||
|
this.currentData.material_code = this.$store.getters.publicObj.material_code
|
||||||
|
this.currentData.material_name = this.$store.getters.publicObj.material_name
|
||||||
|
this.currentData.material_spec = this.$store.getters.publicObj.material_spec
|
||||||
|
this.currentData.unit_name = this.$store.getters.publicObj.unit_name
|
||||||
|
this.sWeight = null
|
||||||
|
this.pcsn = null
|
||||||
|
this.qty = null
|
||||||
|
this.$store.dispatch('setPublicObj', '')
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
async _storList () {
|
||||||
|
let res = await storList()
|
||||||
|
if (res.code === '200') {
|
||||||
|
this.options = [...res.content]
|
||||||
|
this.options.map(el => {
|
||||||
|
this.$set(el, 'text', el.label)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
toJump () {
|
||||||
|
if (!this.vehicleCode) {
|
||||||
|
uni.showToast({
|
||||||
|
title: '请先扫描载具编码',
|
||||||
|
icon: 'none'
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
uni.navigateTo({
|
||||||
|
url: '/pages/common/mater-list?title=查询物料'
|
||||||
|
})
|
||||||
|
},
|
||||||
|
handleChange (e) {
|
||||||
|
if (e) {
|
||||||
|
this._queryMaterByVehicleCode(e)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
async _queryMaterByVehicleCode (e) {
|
||||||
|
try {
|
||||||
|
let res = await queryMaterByVehicleCode(e)
|
||||||
|
if (res && res.code === '200') {
|
||||||
|
this.currentData = res.content[0]
|
||||||
|
this.sWeight = this.currentData.single_weight
|
||||||
|
this.pcsn = this.currentData.pcsn
|
||||||
|
this.qty = this.currentData.qty
|
||||||
|
this.options.map(el => {
|
||||||
|
if (el.value === this.currentData.stor_code) {
|
||||||
|
this.storCode = el.text
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
} catch (e) {
|
||||||
|
this.disabled = false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
toEmpty () {
|
||||||
|
this.currentData = {}
|
||||||
|
this.vehicleCode = ''
|
||||||
|
this.storCode = null
|
||||||
|
this.disabled = false
|
||||||
|
},
|
||||||
|
async _checkMaterConfirm () {
|
||||||
|
this.disabled = true
|
||||||
|
if (JSON.stringify(this.currentData) === '{}' || !this.vehicleCode || !this.sWeight || !this.pcsn || !this.qty) {
|
||||||
|
this.disabled = false
|
||||||
|
return
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
let obj = Object.assign(this.currentData, {single_weight: this.sWeight, pcsn: this.pcsn, qty: this.qty})
|
||||||
|
let res = await checkMaterConfirm(obj)
|
||||||
|
uni.showToast({
|
||||||
|
title: res.msg,
|
||||||
|
icon: 'none'
|
||||||
|
})
|
||||||
|
this.disabled = false
|
||||||
|
} catch (e) {
|
||||||
|
this.disabled = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="stylus">
|
||||||
|
</style>
|
||||||
@@ -33,7 +33,7 @@
|
|||||||
<span class="filter_label filter_input_disabled">单位</span>
|
<span class="filter_label filter_input_disabled">单位</span>
|
||||||
</view>
|
</view>
|
||||||
<view class="zd-col-24">
|
<view class="zd-col-24">
|
||||||
<input type="text" class="filter_input filter_input_disabled" v-model="currentData.unit_id" disabled>
|
<input type="text" class="filter_input filter_input_disabled" v-model="currentData.unit_name" disabled>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="zd-row border-bottom">
|
<view class="zd-row border-bottom">
|
||||||
@@ -41,7 +41,7 @@
|
|||||||
<span class="filter_label">物料单重</span>
|
<span class="filter_label">物料单重</span>
|
||||||
</view>
|
</view>
|
||||||
<view class="zd-col-24">
|
<view class="zd-col-24">
|
||||||
<input type="number" class="filter_input" v-model="currentData.single_weight">
|
<NumberInput v-model="currentData.single_weight" />
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="zd-row border-bottom">
|
<view class="zd-row border-bottom">
|
||||||
@@ -57,7 +57,7 @@
|
|||||||
<span class="filter_label">物料数量</span>
|
<span class="filter_label">物料数量</span>
|
||||||
</view>
|
</view>
|
||||||
<view class="zd-col-24">
|
<view class="zd-col-24">
|
||||||
<input type="number" class="filter_input" v-model="currentData.qty">
|
<NumberInput v-model="currentData.qty" />
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="zd-row border-bottom">
|
<view class="zd-row border-bottom">
|
||||||
@@ -89,11 +89,13 @@
|
|||||||
<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 NumberInput from '@/components/NumberInput.vue'
|
||||||
import {storList, groupMaterIn} from '@/utils/getData2.js'
|
import {storList, groupMaterIn} from '@/utils/getData2.js'
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
NavBar,
|
NavBar,
|
||||||
SearchBox
|
SearchBox,
|
||||||
|
NumberInput
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
|||||||
@@ -41,8 +41,8 @@
|
|||||||
return {
|
return {
|
||||||
userName: '',
|
userName: '',
|
||||||
menuList: [
|
menuList: [
|
||||||
{title: '入库管理', path: 'RF01', sonTree: [{title: '物料组盘入库', path: '/pages/entry/mater-group-to-store'}, {title: '合格证入库', path: '/pages/entry/qualified-to-store'}, {title: '单据入库', path: '/pages/entry/bill-to-store'}, {title: '空托盘入库', path: '/pages/entry/empty-tray-to-store'}]},
|
{title: '入库管理', path: 'RF01', sonTree: [{title: '物料组盘入库', path: '/pages/entry/mater-group-to-store'}, {title: '合格证入库', path: '/pages/entry/qualified-to-store'}, {title: '单据入库', path: '/pages/entry/bill-to-store'}, {title: '盘点入库', path: '/pages/entry/check-to-store'}, {title: '空托盘入库', path: '/pages/entry/empty-tray-to-store'}]},
|
||||||
{title: '出库管理', path: 'RF02', sonTree: [{title: '空托盘出库', path: '/pages/outbound/tray-out-store'}, {title: '出库确认', path: '/pages/outbound/out-store-confirm'}, {title: '单据出库', path: '/pages/outbound/bill-list'}, {title: '库存出库', path: '/pages/outbound/stock-out-store'}]},
|
{title: '出库管理', path: 'RF02', sonTree: [{title: '空托盘出库', path: '/pages/outbound/tray-out-store'}, {title: '出库确认', path: '/pages/outbound/out-store-confirm'}, {title: '单据出库', path: '/pages/outbound/bill-list'}, {title: '盘点出库', path: '/pages/outbound/stock-out-store'}]},
|
||||||
{title: '拣选管理', path: 'RF04', sonTree: [{title: '拣选作业', path: '/pages/pick/pick-task'}]},
|
{title: '拣选管理', path: 'RF04', sonTree: [{title: '拣选作业', path: '/pages/pick/pick-task'}]},
|
||||||
{title: '设备操控', path: 'RF07', sonTree: [{title: '切换出入库模式', path: '/pages/mode/switch-in-out'}, {title: '拣选工位启停模式', path: '/pages/mode/pick'}, {title: '下发输送线运动命令', path: '/pages/mode/command'}]},
|
{title: '设备操控', path: 'RF07', sonTree: [{title: '切换出入库模式', path: '/pages/mode/switch-in-out'}, {title: '拣选工位启停模式', path: '/pages/mode/pick'}, {title: '下发输送线运动命令', path: '/pages/mode/command'}]},
|
||||||
{title: '产线叫料', path: 'RF10', sonTree: [{title: '二楼生产出库', path: '/pages/outbound/produce-out-store-2nd'}, {title: '二楼取货确认', path: '/pages/outbound/pick-confirm-2nd'}, {title: '二楼货架绑定', path: '/pages/outbound/shelf-bind-2nd'}]},
|
{title: '产线叫料', path: 'RF10', sonTree: [{title: '二楼生产出库', path: '/pages/outbound/produce-out-store-2nd'}, {title: '二楼取货确认', path: '/pages/outbound/pick-confirm-2nd'}, {title: '二楼货架绑定', path: '/pages/outbound/shelf-bind-2nd'}]},
|
||||||
@@ -208,7 +208,7 @@
|
|||||||
&:nth-child(5n+3) .menu-name_inner
|
&:nth-child(5n+3) .menu-name_inner
|
||||||
background linear-gradient(to right, rgba(0, 228, 153,0.8) 0%, rgba(0, 241, 197,0.8) 100%)
|
background linear-gradient(to right, rgba(0, 228, 153,0.8) 0%, rgba(0, 241, 197,0.8) 100%)
|
||||||
&:nth-child(5n+4) .menu-name_inner
|
&:nth-child(5n+4) .menu-name_inner
|
||||||
background linear-gradient(to right, rgba(162, 86, 171,0.8) 0%, rgba(183,120,190,0.8) 100%)
|
background linear-gradient(to right, rgba(196, 5, 219,0.8) 0%, rgba(183,120,190,0.8) 100%)
|
||||||
&:nth-child(5n+5) .menu-name_inner
|
&:nth-child(5n+5) .menu-name_inner
|
||||||
background linear-gradient(to right, rgba(146, 94, 52,0.8) 0%, rgba(162, 116, 79,0.8) 100%)
|
background linear-gradient(to right, rgba(146, 94, 52,0.8) 0%, rgba(162, 116, 79,0.8) 100%)
|
||||||
.menu-name_inner
|
.menu-name_inner
|
||||||
|
|||||||
@@ -34,6 +34,7 @@
|
|||||||
<th>站点编码</th>
|
<th>站点编码</th>
|
||||||
<th>站点名称</th>
|
<th>站点名称</th>
|
||||||
<th>绑定状态</th>
|
<th>绑定状态</th>
|
||||||
|
<th>任务锁定</th>
|
||||||
<th>绑定货架号</th>
|
<th>绑定货架号</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
@@ -42,6 +43,7 @@
|
|||||||
<td>{{e.code}}</td>
|
<td>{{e.code}}</td>
|
||||||
<td>{{e.name}}</td>
|
<td>{{e.name}}</td>
|
||||||
<td>{{e.remark}}</td>
|
<td>{{e.remark}}</td>
|
||||||
|
<td>{{$getStatusText({ '00': '未锁定', '10': '入库锁', '20': '出库锁' }, e.lock_type)}}</td>
|
||||||
<td>{{e.vehicle_code}}</td>
|
<td>{{e.vehicle_code}}</td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
@@ -50,10 +52,11 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="zd-row submit-bar">
|
<view class="zd-row submit-bar">
|
||||||
<button class="zd-col-6 button-primary" @tap="toEmpty">清空</button>
|
<button class="zd-col-5 button-primary" @tap="toEmpty">清空</button>
|
||||||
<button v-if="dataList.length > 0 && dataList[0].lock_type === '00'" class="zd-col-16 button-primary" :class="{'button-info': !val1 || !val2}" :disabled="disabled" @tap="toSure('1')">绑定</button>
|
<button class="zd-col-8 button-primary" :class="{'button-info': !val1 || !val2}" :disabled="disabled" @tap="_pointUnbind">CTU站点解绑</button>
|
||||||
<button v-if="dataList.length > 0 && dataList[0].lock_type !== '00'" class="zd-col-16 button-primary" :class="{'button-info': !val1 || !val2}" :disabled="disabled" @tap="toSure('0')">解绑</button>
|
<button v-if="dataList.length > 0 && dataList[0].lock_type === '00'" class="zd-col-8 button-primary" :class="{'button-info': !val1 || !val2}" :disabled="disabled" @tap="toSure('1')">货架绑定</button>
|
||||||
<button v-if="!dataList.length" class="zd-col-16 button-primary button-info">绑定/解绑</button>
|
<button v-if="dataList.length > 0 && dataList[0].lock_type !== '00'" class="zd-col-8 button-primary" :class="{'button-info': !val1 || !val2}" :disabled="disabled" @tap="toSure('0')">货架解绑</button>
|
||||||
|
<button v-if="!dataList.length" class="zd-col-8 button-primary button-info">货架绑定/解绑</button>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
@@ -61,7 +64,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 {getPointStatus, bindOrUnbind} from '@/utils/getData2.js'
|
import {getPointStatus, bindOrUnbind, pointUnbind} from '@/utils/getData2.js'
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
NavBar,
|
NavBar,
|
||||||
@@ -86,10 +89,14 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
async _getPointStatus (e) {
|
async _getPointStatus (e) {
|
||||||
let res = await getPointStatus(e)
|
try {
|
||||||
this.dataList = []
|
let res = await getPointStatus(e)
|
||||||
this.dataList.push(res)
|
this.dataList = []
|
||||||
this.val2 = res.vehicle_code
|
this.dataList.push(res)
|
||||||
|
this.val2 = res.vehicle_code
|
||||||
|
} catch (e) {
|
||||||
|
this.dataList = []
|
||||||
|
}
|
||||||
},
|
},
|
||||||
toEmpty () {
|
toEmpty () {
|
||||||
this.val1 = ''
|
this.val1 = ''
|
||||||
@@ -119,6 +126,26 @@
|
|||||||
} catch (e) {
|
} catch (e) {
|
||||||
this.disabled = false
|
this.disabled = false
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
async _pointUnbind () {
|
||||||
|
try {
|
||||||
|
this.disabled = true
|
||||||
|
if (!this.val1 || !this.val2) {
|
||||||
|
this.disabled = false
|
||||||
|
return
|
||||||
|
}
|
||||||
|
let res = await pointUnbind(this.val1, this.val2)
|
||||||
|
if (res.code === '200') {
|
||||||
|
this._getPointStatus(this.val1)
|
||||||
|
}
|
||||||
|
this.disabled = false
|
||||||
|
uni.showToast({
|
||||||
|
title: res.msg,
|
||||||
|
icon: 'none'
|
||||||
|
})
|
||||||
|
} catch (e) {
|
||||||
|
this.disabled = false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,18 +8,42 @@
|
|||||||
<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 filter_select">
|
||||||
<uni-data-select v-model="index" :localdata="options"></uni-data-select>
|
<uni-data-select v-model="index" :localdata="options"></uni-data-select>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="zd-row">
|
<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 filter_select">
|
||||||
<input type="text" class="filter_input" v-model="val1">
|
<input type="text" class="filter_input" v-model="val1">
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
<view class="zd-row border-bottom">
|
||||||
|
<view class="zd-col-7">
|
||||||
|
<span class="filter_label">仓位编码</span>
|
||||||
|
</view>
|
||||||
|
<view class="zd-col-17 filter_select">
|
||||||
|
<input type="text" class="filter_input" v-model="val4">
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="zd-row border-bottom">
|
||||||
|
<view class="zd-col-7">
|
||||||
|
<span class="filter_label">物料批次</span>
|
||||||
|
</view>
|
||||||
|
<view class="zd-col-17 filter_select">
|
||||||
|
<input type="text" class="filter_input" v-model="val2">
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="zd-row border-bottom">
|
||||||
|
<view class="zd-col-7">
|
||||||
|
<span class="filter_label">载具编码</span>
|
||||||
|
</view>
|
||||||
|
<view class="zd-col-17 filter_select">
|
||||||
|
<input type="text" class="filter_input" v-model="val3">
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="zd_wrapper grid-wraper">
|
<view class="zd_wrapper grid-wraper">
|
||||||
<view class="slide_new">
|
<view class="slide_new">
|
||||||
@@ -71,7 +95,10 @@
|
|||||||
title: '',
|
title: '',
|
||||||
val1: '',
|
val1: '',
|
||||||
options: [{value: 'FStockPallet', text: '托盘库'}, {value: 'FStockId', text: '料箱库'}],
|
options: [{value: 'FStockPallet', text: '托盘库'}, {value: 'FStockId', text: '料箱库'}],
|
||||||
index: '',
|
index: 'FStockId',
|
||||||
|
val2: '',
|
||||||
|
val3: '',
|
||||||
|
val4: '',
|
||||||
dataList: [],
|
dataList: [],
|
||||||
pkId: '',
|
pkId: '',
|
||||||
pkObj: {},
|
pkObj: {},
|
||||||
@@ -97,7 +124,7 @@
|
|||||||
this._structattrPage()
|
this._structattrPage()
|
||||||
},
|
},
|
||||||
async _structattrPage () {
|
async _structattrPage () {
|
||||||
let res = await structattrPage(this.pageNum + '', this.pageSize + '', this.index, this.val1, true)
|
let res = await structattrPage(this.pageNum + '', this.pageSize + '', this.index, this.val1, true, this.val2, this.val3, this.val4)
|
||||||
if (res.code === '200') {
|
if (res.code === '200') {
|
||||||
this.totalCount = res.totalElements
|
this.totalCount = res.totalElements
|
||||||
if (res.totalElements > 0) {
|
if (res.totalElements > 0) {
|
||||||
|
|||||||
@@ -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">
|
||||||
@@ -46,7 +46,7 @@
|
|||||||
</view>
|
</view>
|
||||||
<view class="zd-row submit-bar">
|
<view class="zd-row submit-bar">
|
||||||
<button class="zd-col-6 button-default" @tap="toEmpty">清空</button>
|
<button class="zd-col-6 button-default" @tap="toEmpty">清空</button>
|
||||||
<button class="zd-col-16 button-primary" :class="{'button-info': JSON.stringify(currentData) === '{}'}" :disabled="disabled" @tap="_outStorageMaterConfirm">出库确认</button>
|
<button class="zd-col-16 button-primary" :class="{'button-info': JSON.stringify(currentData) === '{}'}" :disabled="disabled" @tap="_outStorageMaterConfirm">确认出库</button>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
@@ -80,6 +80,9 @@
|
|||||||
} else if (this.currentData.stor_code === 'FStockId') {
|
} else if (this.currentData.stor_code === 'FStockId') {
|
||||||
this.val1 = '料箱库'
|
this.val1 = '料箱库'
|
||||||
}
|
}
|
||||||
|
if (!this.currentData.product_area) {
|
||||||
|
this.currentData.product_area = 'A1'
|
||||||
|
}
|
||||||
this.$store.dispatch('setPublicObj', '')
|
this.$store.dispatch('setPublicObj', '')
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -204,8 +204,8 @@ export const transfConfirm = (start, end, code) => request({
|
|||||||
/**
|
/**
|
||||||
* 库存出库
|
* 库存出库
|
||||||
*/
|
*/
|
||||||
export const structattrPage = (page, size, code, mcode, has) => request({
|
export const structattrPage = (page, size, code, mcode, has, pcsn, vcode, stcode) => request({
|
||||||
url:'api/structattr?page=' + page + '&size=' + size + '&stor_code=' + code + '&material_code=' + mcode + '&has=' + has,
|
url:'api/structattr/checkQuery?page=' + page + '&size=' + size + '&stor_code=' + code + '&material_code=' + mcode + '&has=' + has + '&pcsn=' + pcsn + '&vehicle_code=' + vcode + '&struct_code=' + stcode,
|
||||||
method: 'GET'
|
method: 'GET'
|
||||||
})
|
})
|
||||||
export const outStorageMaterConfirm = (obj) => request({
|
export const outStorageMaterConfirm = (obj) => request({
|
||||||
@@ -247,6 +247,10 @@ export const bindOrUnbind = (scode, bcode, mode) => request({
|
|||||||
url:'api/point/bindOrUnbind',
|
url:'api/point/bindOrUnbind',
|
||||||
data: {site_code: scode, shelf_code: bcode, mode: mode}
|
data: {site_code: scode, shelf_code: bcode, mode: mode}
|
||||||
})
|
})
|
||||||
|
export const pointUnbind = (scode, bcode, mode) => request({
|
||||||
|
url:'api/point/unbind',
|
||||||
|
data: {site_code: scode, shelf_code: bcode}
|
||||||
|
})
|
||||||
/**
|
/**
|
||||||
* 单据入库
|
* 单据入库
|
||||||
*/
|
*/
|
||||||
@@ -256,5 +260,16 @@ export const inStorageOrder = () => request({
|
|||||||
})
|
})
|
||||||
export const getBillNoInfo = (code, type) => request({
|
export const getBillNoInfo = (code, type) => request({
|
||||||
url:'api/pda/inStorage/getBillNoInfo',
|
url:'api/pda/inStorage/getBillNoInfo',
|
||||||
data: {code, form_type: type}
|
data: {code: code, form_type: type}
|
||||||
|
})
|
||||||
|
/**
|
||||||
|
* 盘点入库
|
||||||
|
*/
|
||||||
|
export const queryMaterByVehicleCode = (code) => request({
|
||||||
|
url:'api/structattr/queryMaterByVehicleCode',
|
||||||
|
data: {vehicle_code: code}
|
||||||
|
})
|
||||||
|
export const checkMaterConfirm = (obj) => request({
|
||||||
|
url:'api/groupMater/checkMaterConfirm',
|
||||||
|
data: obj
|
||||||
})
|
})
|
||||||
@@ -88,6 +88,14 @@ export const groupMaterList = () => {
|
|||||||
pcsn: null,
|
pcsn: null,
|
||||||
vehicle_code: null,
|
vehicle_code: null,
|
||||||
vehicle_id: null
|
vehicle_id: null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
material_id: '3',
|
||||||
|
"material_code": "02.03.05.01.00075",
|
||||||
|
"material_name": "密封球",
|
||||||
|
"material_spec": "D377-DQF-E-2150-01",
|
||||||
|
"single_weight": null,
|
||||||
|
"unit_name": null
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
data: null,
|
data: null,
|
||||||
@@ -255,7 +263,7 @@ export const ctuOutConfirm = () => {
|
|||||||
return res
|
return res
|
||||||
}
|
}
|
||||||
export const getPointStatus = () => {
|
export const getPointStatus = () => {
|
||||||
let res = {code: 'a', name: 'ldjlfjl', lock_type: '0'}
|
let res = {code: 'a', name: 'ldjlfjl', lock_type: '00'}
|
||||||
return res
|
return res
|
||||||
}
|
}
|
||||||
export const queryTargetPoint = () => {
|
export const queryTargetPoint = () => {
|
||||||
@@ -336,4 +344,48 @@ export const savePickTask = (data) => {
|
|||||||
msg: 'ok'
|
msg: 'ok'
|
||||||
}
|
}
|
||||||
return res
|
return res
|
||||||
|
}
|
||||||
|
export const queryMaterByVehicleCode = (code) => {
|
||||||
|
let res = {
|
||||||
|
"totalElements": 1,
|
||||||
|
"content": [
|
||||||
|
{
|
||||||
|
"id": "1926551433252048896",
|
||||||
|
"group_id": "1926551433247854592",
|
||||||
|
"stor_code": "FStockPallet",
|
||||||
|
"vehicle_code": "T00000278",
|
||||||
|
"material_id": "985577",
|
||||||
|
"pcsn": "001",
|
||||||
|
"qty": 13.000,
|
||||||
|
"frozen_qty": 0.000,
|
||||||
|
"is_lock": false,
|
||||||
|
"is_delete": false,
|
||||||
|
"unit_id": "100438",
|
||||||
|
"is_check": "1",
|
||||||
|
"parent_vehicle_code": null,
|
||||||
|
"has_child": false,
|
||||||
|
"source_form_type": null,
|
||||||
|
"source_form_id": null,
|
||||||
|
"task_code": "132799",
|
||||||
|
"form_data": {},
|
||||||
|
"update_time": "2025-06-11 21:35:40",
|
||||||
|
"update_name": null,
|
||||||
|
"create_time": "2025-05-25 16:10:29",
|
||||||
|
"create_name": "管理员",
|
||||||
|
"remark": "",
|
||||||
|
"proc_inst_id": null,
|
||||||
|
"prd_ppbom_no": "PPBOM250600121",
|
||||||
|
"need_pick": true,
|
||||||
|
"material_code": "02.03.05.01.00075",
|
||||||
|
"material_name": "密封球(S∅155×116×12×∅100)",
|
||||||
|
"material_spec": "D377-DQF-E-2150-01",
|
||||||
|
"single_weight": null,
|
||||||
|
"unit_name": null
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"data": null,
|
||||||
|
"code": "200",
|
||||||
|
"msg": "查询成功"
|
||||||
|
}
|
||||||
|
return res
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user