小料箱

This commit is contained in:
2025-09-02 11:10:13 +08:00
parent f36892dc52
commit eaa800bb1b
13 changed files with 2270 additions and 147 deletions

View File

@@ -320,7 +320,76 @@
{
"navigationStyle": "custom"
}
}
,{
"path" : "pages/xzhy/kzj-out-store",
"style" :
{
"navigationStyle": "custom"
}
}
,{
"path" : "pages/xzhy/kzj-in-store",
"style" :
{
"navigationStyle": "custom"
}
}
,{
"path" : "pages/xzhy/xlx-in-store",
"style" :
{
"navigationStyle": "custom"
}
}
,{
"path" : "pages/xzhy/kzj-inout-store",
"style" :
{
"navigationStyle": "custom"
}
}
,{
"path" : "pages/xzhy/lx-in-store",
"style" :
{
"navigationStyle": "custom"
}
}
,{
"path" : "pages/xzhy/mater-in-store",
"style" :
{
"navigationStyle": "custom"
}
}
,{
"path" : "pages/xzhy/dlx-out-store",
"style" :
{
"navigationStyle": "custom"
}
}
,{
"path" : "pages/xzhy/tuiku-confirm",
"style" :
{
"navigationStyle": "custom"
}
}
,{
"path" : "pages/xzhy/dlx-move-store",
"style" :
{
"navigationStyle": "custom"
}
}
,{
"path" : "pages/xzhy/dlx-pan-store",
"style" :
{
"navigationStyle": "custom"
}
}
],
"globalStyle": {

View File

@@ -43,8 +43,8 @@
userName: '',
menuList: [
{title: '通用功能', path: 'RF06', sonTree: [{title: '物料组盘入库', path: '/pages/entry/mater-group-to-store'}]},
{title: '小料箱功能', path: 'RF03', sonTree: [{title: '物料组盘入库', path: '/pages/entry/mater-group-to-store'}]},
{title: '大料箱功能', path: 'RF04', sonTree: [{title: '物料组盘入库', path: '/pages/entry/mater-group-to-store'}]},
{title: '小料箱功能', path: 'RF03', sonTree: [{title: '空载具出库', path: '/pages/xzhy/kzj-out-store'}, {title: '空载具入库', path: '/pages/xzhy/kzj-in-store'}, {title: '小料箱入库', path: '/pages/xzhy/xlx-in-store'}]},
{title: '大料箱功能', path: 'RF04', sonTree: [{title: '空载具出入库', path: '/pages/xzhy/kzj-inout-store'}, {title: '料箱入库', path: '/pages/xzhy/lx-in-store'}, {title: '物料入库', path: '/pages/xzhy/mater-in-store'}, {title: '大料箱出库', path: '/pages/xzhy/dlx-out-store'}, {title: '退库确认', path: '/pages/xzhy/tuiku-confirm'}, {title: '大料箱移库', path: '/pages/xzhy/dlx-move-store'}, {title: '大料箱盘库', path: '/pages/xzhy/dlx-pan-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: 'RF04', sonTree: [{title: '拣选作业', path: '/pages/pick/pick-task'}]},

View File

@@ -0,0 +1,176 @@
<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-24 filter_select">
<uni-data-select v-model="index" :localdata="options" @change="selectChange"></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-24 filter_select">
<search-box
v-model="val1"
/>
</view>
</view>
</view>
<view class="zd_wrapper grid-wraper">
<view class="slide_new">
<table>
<thead>
<tr>
<th>任务类型</th>
<th>任务编码</th>
<th>载具编码</th>
<th>状态</th>
<th>起点</th>
<th>终点</th>
<th>创建时间</th>
</tr>
</thead>
<tbody>
<tr v-for="(e, i) in dataList" :key="i" @click="toCheck(e)" :class="{'checked': e.task_code === pkId}">
<td>{{e.task_type}}</td>
<td>{{e.task_code}}</td>
<td>{{e.vehicle_code}}</td>
<td>{{e.status}}</td>
<td>{{e.point_code1}}</td>
<td>{{e.point_code2}}</td>
<td>{{e.create_time}}</td>
</tr>
</tbody>
</table>
</view>
</view>
<uni-load-more color="#007AFF" iconType="circle" :status="status" :icon-size="14" :content-text="contentText" v-if="dataList.length > 0"/>
</view>
<view class="zd-row submit-bar">
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('80')">完成</button>
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('80')">强制完成</button>
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('90')">取消</button>
<button class="zd-col-5 button-primary" @tap="searchList">查询</button>
</view>
</view>
</template>
<script>
import NavBar from '@/components/NavBar.vue'
import SearchBox from '@/components/SearchBox.vue'
import {getStatusEnum, schBaseTask, saveCheckTask} from '@/utils/getData2.js'
export default {
components: {
NavBar,
SearchBox
},
data() {
return {
title: '',
options: [],
index: '',
val1: '',
dataList: [],
pkId: '',
reload: false,
status: 'more',
contentText: {
contentdown: '查看更多',
contentrefresh: '加载中',
contentnomore: '没有更多'
},
totalCount: 0,
pageNum: 1,
pageSize: 10,
disabled: false
};
},
onLoad (options) {
this.title = options.title
this._getStatusEnum()
},
methods: {
async _getStatusEnum () {
let res = await getStatusEnum()
this.options = [...res]
this.options.map(el => {
this.$set(el, 'text', el.label)
})
},
selectChange (e) {
this.index = e
},
searchList () {
this.dataList = []
this.pageNum = 1
this._schBaseTask()
},
async _schBaseTask () {
let res = await schBaseTask(this.pageNum + '', this.pageSize + '', this.index, this.val1)
if (res.code === '200') {
this.totalCount = res.totalElements
if (res.totalElements > 0) {
const dataMap = res.content
this.dataList = this.reload ? dataMap : this.dataList.concat(dataMap)
this.reload = false
} else {
this.dataList = []
}
if (this.totalCount == this.dataList.length) {
this.reload = false
this.status = 'noMore'
}
}
},
onReachBottom () {
if (this.totalCount > this.dataList.length) {
this.status = 'loading'
setTimeout(() => {
this.pageNum++
this._schBaseTask()
}, 1000)
} else { //停止加载
this.status = 'noMore'
}
},
toCheck (e) {
this.pkId = e.e.task_code === this.pkId ? '' : e.task_code
},
async toSure (status) {
this.disabled = true
if (!this.pkId) {
this.disabled = false
return
}
try {
let res = await saveCheckTask(this.pkId, status)
if (res.code === '200') {
this.index = ''
this.val1 = ''
this.dataList = []
this.pkId = ''
uni.showToast({
title: res.desc,
icon: 'none'
})
} else {
uni.showToast({
title: res.desc,
icon: 'none'
})
}
this.disabled = false
} catch (e) {
this.disabled = false
}
}
}
}
</script>

View File

@@ -0,0 +1,176 @@
<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-24 filter_select">
<uni-data-select v-model="index" :localdata="options" @change="selectChange"></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-24 filter_select">
<search-box
v-model="val1"
/>
</view>
</view>
</view>
<view class="zd_wrapper grid-wraper">
<view class="slide_new">
<table>
<thead>
<tr>
<th>任务类型</th>
<th>任务编码</th>
<th>载具编码</th>
<th>状态</th>
<th>起点</th>
<th>终点</th>
<th>创建时间</th>
</tr>
</thead>
<tbody>
<tr v-for="(e, i) in dataList" :key="i" @click="toCheck(e)" :class="{'checked': e.task_code === pkId}">
<td>{{e.task_type}}</td>
<td>{{e.task_code}}</td>
<td>{{e.vehicle_code}}</td>
<td>{{e.status}}</td>
<td>{{e.point_code1}}</td>
<td>{{e.point_code2}}</td>
<td>{{e.create_time}}</td>
</tr>
</tbody>
</table>
</view>
</view>
<uni-load-more color="#007AFF" iconType="circle" :status="status" :icon-size="14" :content-text="contentText" v-if="dataList.length > 0"/>
</view>
<view class="zd-row submit-bar">
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('80')">完成</button>
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('80')">强制完成</button>
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('90')">取消</button>
<button class="zd-col-5 button-primary" @tap="searchList">查询</button>
</view>
</view>
</template>
<script>
import NavBar from '@/components/NavBar.vue'
import SearchBox from '@/components/SearchBox.vue'
import {getStatusEnum, schBaseTask, saveCheckTask} from '@/utils/getData2.js'
export default {
components: {
NavBar,
SearchBox
},
data() {
return {
title: '',
options: [],
index: '',
val1: '',
dataList: [],
pkId: '',
reload: false,
status: 'more',
contentText: {
contentdown: '查看更多',
contentrefresh: '加载中',
contentnomore: '没有更多'
},
totalCount: 0,
pageNum: 1,
pageSize: 10,
disabled: false
};
},
onLoad (options) {
this.title = options.title
this._getStatusEnum()
},
methods: {
async _getStatusEnum () {
let res = await getStatusEnum()
this.options = [...res]
this.options.map(el => {
this.$set(el, 'text', el.label)
})
},
selectChange (e) {
this.index = e
},
searchList () {
this.dataList = []
this.pageNum = 1
this._schBaseTask()
},
async _schBaseTask () {
let res = await schBaseTask(this.pageNum + '', this.pageSize + '', this.index, this.val1)
if (res.code === '200') {
this.totalCount = res.totalElements
if (res.totalElements > 0) {
const dataMap = res.content
this.dataList = this.reload ? dataMap : this.dataList.concat(dataMap)
this.reload = false
} else {
this.dataList = []
}
if (this.totalCount == this.dataList.length) {
this.reload = false
this.status = 'noMore'
}
}
},
onReachBottom () {
if (this.totalCount > this.dataList.length) {
this.status = 'loading'
setTimeout(() => {
this.pageNum++
this._schBaseTask()
}, 1000)
} else { //停止加载
this.status = 'noMore'
}
},
toCheck (e) {
this.pkId = e.e.task_code === this.pkId ? '' : e.task_code
},
async toSure (status) {
this.disabled = true
if (!this.pkId) {
this.disabled = false
return
}
try {
let res = await saveCheckTask(this.pkId, status)
if (res.code === '200') {
this.index = ''
this.val1 = ''
this.dataList = []
this.pkId = ''
uni.showToast({
title: res.desc,
icon: 'none'
})
} else {
uni.showToast({
title: res.desc,
icon: 'none'
})
}
this.disabled = false
} catch (e) {
this.disabled = false
}
}
}
}
</script>

View File

@@ -0,0 +1,176 @@
<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-24 filter_select">
<uni-data-select v-model="index" :localdata="options" @change="selectChange"></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-24 filter_select">
<search-box
v-model="val1"
/>
</view>
</view>
</view>
<view class="zd_wrapper grid-wraper">
<view class="slide_new">
<table>
<thead>
<tr>
<th>任务类型</th>
<th>任务编码</th>
<th>载具编码</th>
<th>状态</th>
<th>起点</th>
<th>终点</th>
<th>创建时间</th>
</tr>
</thead>
<tbody>
<tr v-for="(e, i) in dataList" :key="i" @click="toCheck(e)" :class="{'checked': e.task_code === pkId}">
<td>{{e.task_type}}</td>
<td>{{e.task_code}}</td>
<td>{{e.vehicle_code}}</td>
<td>{{e.status}}</td>
<td>{{e.point_code1}}</td>
<td>{{e.point_code2}}</td>
<td>{{e.create_time}}</td>
</tr>
</tbody>
</table>
</view>
</view>
<uni-load-more color="#007AFF" iconType="circle" :status="status" :icon-size="14" :content-text="contentText" v-if="dataList.length > 0"/>
</view>
<view class="zd-row submit-bar">
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('80')">完成</button>
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('80')">强制完成</button>
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('90')">取消</button>
<button class="zd-col-5 button-primary" @tap="searchList">查询</button>
</view>
</view>
</template>
<script>
import NavBar from '@/components/NavBar.vue'
import SearchBox from '@/components/SearchBox.vue'
import {getStatusEnum, schBaseTask, saveCheckTask} from '@/utils/getData2.js'
export default {
components: {
NavBar,
SearchBox
},
data() {
return {
title: '',
options: [],
index: '',
val1: '',
dataList: [],
pkId: '',
reload: false,
status: 'more',
contentText: {
contentdown: '查看更多',
contentrefresh: '加载中',
contentnomore: '没有更多'
},
totalCount: 0,
pageNum: 1,
pageSize: 10,
disabled: false
};
},
onLoad (options) {
this.title = options.title
this._getStatusEnum()
},
methods: {
async _getStatusEnum () {
let res = await getStatusEnum()
this.options = [...res]
this.options.map(el => {
this.$set(el, 'text', el.label)
})
},
selectChange (e) {
this.index = e
},
searchList () {
this.dataList = []
this.pageNum = 1
this._schBaseTask()
},
async _schBaseTask () {
let res = await schBaseTask(this.pageNum + '', this.pageSize + '', this.index, this.val1)
if (res.code === '200') {
this.totalCount = res.totalElements
if (res.totalElements > 0) {
const dataMap = res.content
this.dataList = this.reload ? dataMap : this.dataList.concat(dataMap)
this.reload = false
} else {
this.dataList = []
}
if (this.totalCount == this.dataList.length) {
this.reload = false
this.status = 'noMore'
}
}
},
onReachBottom () {
if (this.totalCount > this.dataList.length) {
this.status = 'loading'
setTimeout(() => {
this.pageNum++
this._schBaseTask()
}, 1000)
} else { //停止加载
this.status = 'noMore'
}
},
toCheck (e) {
this.pkId = e.e.task_code === this.pkId ? '' : e.task_code
},
async toSure (status) {
this.disabled = true
if (!this.pkId) {
this.disabled = false
return
}
try {
let res = await saveCheckTask(this.pkId, status)
if (res.code === '200') {
this.index = ''
this.val1 = ''
this.dataList = []
this.pkId = ''
uni.showToast({
title: res.desc,
icon: 'none'
})
} else {
uni.showToast({
title: res.desc,
icon: 'none'
})
}
this.disabled = false
} catch (e) {
this.disabled = false
}
}
}
}
</script>

136
pages/xzhy/kzj-in-store.vue Normal file
View File

@@ -0,0 +1,136 @@
<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="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">
<search-box
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-24 filter_select">
<uni-data-select v-model="index" :localdata="options" @change="selectChange"></uni-data-select>
</view>
</view>
</view>
</view>
<view class="zd-row submit-bar">
<button class="zd-col-6 button-default" @tap="clearUp">清空</button>
<button class="zd-col-16 button-primary" :class="{'button-info': !val1 || !val2 || !index}" :disabled="disabled" @tap="_vehicleInConfirm">呼叫入库</button>
</view>
</view>
</template>
<script>
import NavBar from '@/components/NavBar.vue'
import SearchBox from '@/components/SearchBox.vue'
import {getPdaSect, getPointCodeByVehicleCode, vehicleInConfirm} from '@/utils/getData4.js'
export default {
components: {
NavBar,
SearchBox
},
data() {
return {
title: '',
val1: '',
val2: '',
options: [],
index: '',
disabled: false
};
},
onLoad (options) {
this.title = options.title
},
created () {
this._getPdaSect()
},
methods: {
handleChange (e) {
if (e) {
this._getPointCodeByVehicleCode()
}
},
async _getPdaSect () {
try {
let res = await getPdaSect()
if (res) {
this.options = res.data
} else {
this.options = []
}
} catch (e) {
this.options = []
}
},
selectChange (e) {
this.index = e
},
clearUp () {
this.val1 = ''
this.index = ''
this.disabled = false
},
async _getPointCodeByVehicleCode () {
try {
let res = await getPointCodeByVehicleCode(this.val1)
if (res.code === '200') {
this.val2 = res.data
} else {
}
} catch (e) {
}
},
async _vehicleInConfirm () {
this.disabled = true
if (!this.val1 || !this.val2 || !this.index) {
this.disabled = false
return
}
try {
let res = await vehicleInConfirm(this.val1, this.index, this.val2)
if (res.code === '200') {
uni.showToast({
title: res.message,
icon: 'none'
})
this.clearUp()
} else {
uni.showToast({
title: res.message,
icon: 'none'
})
this.disabled = false
}
} catch (e) {
this.disabled = false
}
}
}
}
</script>
<style lang="stylus">
</style>

View File

@@ -0,0 +1,176 @@
<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-24 filter_select">
<uni-data-select v-model="index" :localdata="options" @change="selectChange"></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-24 filter_select">
<search-box
v-model="val1"
/>
</view>
</view>
</view>
<view class="zd_wrapper grid-wraper">
<view class="slide_new">
<table>
<thead>
<tr>
<th>任务类型</th>
<th>任务编码</th>
<th>载具编码</th>
<th>状态</th>
<th>起点</th>
<th>终点</th>
<th>创建时间</th>
</tr>
</thead>
<tbody>
<tr v-for="(e, i) in dataList" :key="i" @click="toCheck(e)" :class="{'checked': e.task_code === pkId}">
<td>{{e.task_type}}</td>
<td>{{e.task_code}}</td>
<td>{{e.vehicle_code}}</td>
<td>{{e.status}}</td>
<td>{{e.point_code1}}</td>
<td>{{e.point_code2}}</td>
<td>{{e.create_time}}</td>
</tr>
</tbody>
</table>
</view>
</view>
<uni-load-more color="#007AFF" iconType="circle" :status="status" :icon-size="14" :content-text="contentText" v-if="dataList.length > 0"/>
</view>
<view class="zd-row submit-bar">
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('80')">完成</button>
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('80')">强制完成</button>
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('90')">取消</button>
<button class="zd-col-5 button-primary" @tap="searchList">查询</button>
</view>
</view>
</template>
<script>
import NavBar from '@/components/NavBar.vue'
import SearchBox from '@/components/SearchBox.vue'
import {getStatusEnum, schBaseTask, saveCheckTask} from '@/utils/getData2.js'
export default {
components: {
NavBar,
SearchBox
},
data() {
return {
title: '',
options: [],
index: '',
val1: '',
dataList: [],
pkId: '',
reload: false,
status: 'more',
contentText: {
contentdown: '查看更多',
contentrefresh: '加载中',
contentnomore: '没有更多'
},
totalCount: 0,
pageNum: 1,
pageSize: 10,
disabled: false
};
},
onLoad (options) {
this.title = options.title
this._getStatusEnum()
},
methods: {
async _getStatusEnum () {
let res = await getStatusEnum()
this.options = [...res]
this.options.map(el => {
this.$set(el, 'text', el.label)
})
},
selectChange (e) {
this.index = e
},
searchList () {
this.dataList = []
this.pageNum = 1
this._schBaseTask()
},
async _schBaseTask () {
let res = await schBaseTask(this.pageNum + '', this.pageSize + '', this.index, this.val1)
if (res.code === '200') {
this.totalCount = res.totalElements
if (res.totalElements > 0) {
const dataMap = res.content
this.dataList = this.reload ? dataMap : this.dataList.concat(dataMap)
this.reload = false
} else {
this.dataList = []
}
if (this.totalCount == this.dataList.length) {
this.reload = false
this.status = 'noMore'
}
}
},
onReachBottom () {
if (this.totalCount > this.dataList.length) {
this.status = 'loading'
setTimeout(() => {
this.pageNum++
this._schBaseTask()
}, 1000)
} else { //停止加载
this.status = 'noMore'
}
},
toCheck (e) {
this.pkId = e.e.task_code === this.pkId ? '' : e.task_code
},
async toSure (status) {
this.disabled = true
if (!this.pkId) {
this.disabled = false
return
}
try {
let res = await saveCheckTask(this.pkId, status)
if (res.code === '200') {
this.index = ''
this.val1 = ''
this.dataList = []
this.pkId = ''
uni.showToast({
title: res.desc,
icon: 'none'
})
} else {
uni.showToast({
title: res.desc,
icon: 'none'
})
}
this.disabled = false
} catch (e) {
this.disabled = false
}
}
}
}
</script>

View File

@@ -0,0 +1,163 @@
<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="val2"
/>
</view>
</view>
<view class="zd-row border-bottom">
<view class="zd-col-7">
<span class="filter_label">载具类型</span>
</view>
<view class="zd-col-24 filter_select">
<uni-data-select v-model="index" :localdata="options" @change="selectChange"></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-24 filter_select">
<uni-data-select v-model="index2" :localdata="options2" @change="selectChange2"></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">
<NumberInput v-model="qty" />
</view>
</view>
</view>
</view>
<view class="zd-row submit-bar">
<button class="zd-col-6 button-default" @tap="clearUp">清空</button>
<button class="zd-col-16 button-primary" :class="{'button-info': !val1 || !val2 || !index}" :disabled="disabled" @tap="_vehicleInConfirm">呼叫出库</button>
</view>
</view>
</template>
<script>
import NavBar from '@/components/NavBar.vue'
import SearchBox from '@/components/SearchBox.vue'
import NumberInput from '@/components/NumberInput.vue'
import {getPdaSect, getPointCodeByVehicleCode, vehicleInConfirm} from '@/utils/getData4.js'
export default {
components: {
NavBar,
SearchBox,
NumberInput
},
data() {
return {
title: '',
val1: '',
val2: '',
options: [],
index: '',
options2: [],
index2: '',
qty: 1,
disabled: false
};
},
onLoad (options) {
this.title = options.title
},
created () {
this._getPdaSect()
this._getPdaSect2()
},
methods: {
handleChange (e) {
if (e) {
this._getPointCodeByVehicleCode()
}
},
async _getPdaSect () {
try {
let res = await getPdaSect()
if (res) {
this.options = res.data
} else {
this.options = []
}
} catch (e) {
this.options = []
}
},
async _getPdaSect2 () {
try {
let res = await getPdaSect()
if (res) {
this.options2 = res.data
} else {
this.options2 = []
}
} catch (e) {
this.options2 = []
}
},
selectChange (e) {
this.index = e
},
selectChange (e) {
this.index2 = e
},
clearUp () {
this.val1 = ''
this.index = ''
this.disabled = false
},
async _getPointCodeByVehicleCode () {
try {
let res = await getPointCodeByVehicleCode(this.val1)
if (res.code === '200') {
this.val2 = res.data
} else {
}
} catch (e) {
}
},
async _vehicleInConfirm () {
this.disabled = true
if (!this.val1 || !this.val2 || !this.index) {
this.disabled = false
return
}
try {
let res = await vehicleInConfirm(this.val1, this.index, this.val2)
if (res.code === '200') {
uni.showToast({
title: res.message,
icon: 'none'
})
this.clearUp()
} else {
uni.showToast({
title: res.message,
icon: 'none'
})
this.disabled = false
}
} catch (e) {
this.disabled = false
}
}
}
}
</script>
<style lang="stylus">
</style>

176
pages/xzhy/lx-in-store.vue Normal file
View File

@@ -0,0 +1,176 @@
<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-24 filter_select">
<uni-data-select v-model="index" :localdata="options" @change="selectChange"></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-24 filter_select">
<search-box
v-model="val1"
/>
</view>
</view>
</view>
<view class="zd_wrapper grid-wraper">
<view class="slide_new">
<table>
<thead>
<tr>
<th>任务类型</th>
<th>任务编码</th>
<th>载具编码</th>
<th>状态</th>
<th>起点</th>
<th>终点</th>
<th>创建时间</th>
</tr>
</thead>
<tbody>
<tr v-for="(e, i) in dataList" :key="i" @click="toCheck(e)" :class="{'checked': e.task_code === pkId}">
<td>{{e.task_type}}</td>
<td>{{e.task_code}}</td>
<td>{{e.vehicle_code}}</td>
<td>{{e.status}}</td>
<td>{{e.point_code1}}</td>
<td>{{e.point_code2}}</td>
<td>{{e.create_time}}</td>
</tr>
</tbody>
</table>
</view>
</view>
<uni-load-more color="#007AFF" iconType="circle" :status="status" :icon-size="14" :content-text="contentText" v-if="dataList.length > 0"/>
</view>
<view class="zd-row submit-bar">
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('80')">完成</button>
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('80')">强制完成</button>
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('90')">取消</button>
<button class="zd-col-5 button-primary" @tap="searchList">查询</button>
</view>
</view>
</template>
<script>
import NavBar from '@/components/NavBar.vue'
import SearchBox from '@/components/SearchBox.vue'
import {getStatusEnum, schBaseTask, saveCheckTask} from '@/utils/getData2.js'
export default {
components: {
NavBar,
SearchBox
},
data() {
return {
title: '',
options: [],
index: '',
val1: '',
dataList: [],
pkId: '',
reload: false,
status: 'more',
contentText: {
contentdown: '查看更多',
contentrefresh: '加载中',
contentnomore: '没有更多'
},
totalCount: 0,
pageNum: 1,
pageSize: 10,
disabled: false
};
},
onLoad (options) {
this.title = options.title
this._getStatusEnum()
},
methods: {
async _getStatusEnum () {
let res = await getStatusEnum()
this.options = [...res]
this.options.map(el => {
this.$set(el, 'text', el.label)
})
},
selectChange (e) {
this.index = e
},
searchList () {
this.dataList = []
this.pageNum = 1
this._schBaseTask()
},
async _schBaseTask () {
let res = await schBaseTask(this.pageNum + '', this.pageSize + '', this.index, this.val1)
if (res.code === '200') {
this.totalCount = res.totalElements
if (res.totalElements > 0) {
const dataMap = res.content
this.dataList = this.reload ? dataMap : this.dataList.concat(dataMap)
this.reload = false
} else {
this.dataList = []
}
if (this.totalCount == this.dataList.length) {
this.reload = false
this.status = 'noMore'
}
}
},
onReachBottom () {
if (this.totalCount > this.dataList.length) {
this.status = 'loading'
setTimeout(() => {
this.pageNum++
this._schBaseTask()
}, 1000)
} else { //停止加载
this.status = 'noMore'
}
},
toCheck (e) {
this.pkId = e.e.task_code === this.pkId ? '' : e.task_code
},
async toSure (status) {
this.disabled = true
if (!this.pkId) {
this.disabled = false
return
}
try {
let res = await saveCheckTask(this.pkId, status)
if (res.code === '200') {
this.index = ''
this.val1 = ''
this.dataList = []
this.pkId = ''
uni.showToast({
title: res.desc,
icon: 'none'
})
} else {
uni.showToast({
title: res.desc,
icon: 'none'
})
}
this.disabled = false
} catch (e) {
this.disabled = false
}
}
}
}
</script>

View File

@@ -0,0 +1,176 @@
<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-24 filter_select">
<uni-data-select v-model="index" :localdata="options" @change="selectChange"></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-24 filter_select">
<search-box
v-model="val1"
/>
</view>
</view>
</view>
<view class="zd_wrapper grid-wraper">
<view class="slide_new">
<table>
<thead>
<tr>
<th>任务类型</th>
<th>任务编码</th>
<th>载具编码</th>
<th>状态</th>
<th>起点</th>
<th>终点</th>
<th>创建时间</th>
</tr>
</thead>
<tbody>
<tr v-for="(e, i) in dataList" :key="i" @click="toCheck(e)" :class="{'checked': e.task_code === pkId}">
<td>{{e.task_type}}</td>
<td>{{e.task_code}}</td>
<td>{{e.vehicle_code}}</td>
<td>{{e.status}}</td>
<td>{{e.point_code1}}</td>
<td>{{e.point_code2}}</td>
<td>{{e.create_time}}</td>
</tr>
</tbody>
</table>
</view>
</view>
<uni-load-more color="#007AFF" iconType="circle" :status="status" :icon-size="14" :content-text="contentText" v-if="dataList.length > 0"/>
</view>
<view class="zd-row submit-bar">
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('80')">完成</button>
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('80')">强制完成</button>
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('90')">取消</button>
<button class="zd-col-5 button-primary" @tap="searchList">查询</button>
</view>
</view>
</template>
<script>
import NavBar from '@/components/NavBar.vue'
import SearchBox from '@/components/SearchBox.vue'
import {getStatusEnum, schBaseTask, saveCheckTask} from '@/utils/getData2.js'
export default {
components: {
NavBar,
SearchBox
},
data() {
return {
title: '',
options: [],
index: '',
val1: '',
dataList: [],
pkId: '',
reload: false,
status: 'more',
contentText: {
contentdown: '查看更多',
contentrefresh: '加载中',
contentnomore: '没有更多'
},
totalCount: 0,
pageNum: 1,
pageSize: 10,
disabled: false
};
},
onLoad (options) {
this.title = options.title
this._getStatusEnum()
},
methods: {
async _getStatusEnum () {
let res = await getStatusEnum()
this.options = [...res]
this.options.map(el => {
this.$set(el, 'text', el.label)
})
},
selectChange (e) {
this.index = e
},
searchList () {
this.dataList = []
this.pageNum = 1
this._schBaseTask()
},
async _schBaseTask () {
let res = await schBaseTask(this.pageNum + '', this.pageSize + '', this.index, this.val1)
if (res.code === '200') {
this.totalCount = res.totalElements
if (res.totalElements > 0) {
const dataMap = res.content
this.dataList = this.reload ? dataMap : this.dataList.concat(dataMap)
this.reload = false
} else {
this.dataList = []
}
if (this.totalCount == this.dataList.length) {
this.reload = false
this.status = 'noMore'
}
}
},
onReachBottom () {
if (this.totalCount > this.dataList.length) {
this.status = 'loading'
setTimeout(() => {
this.pageNum++
this._schBaseTask()
}, 1000)
} else { //停止加载
this.status = 'noMore'
}
},
toCheck (e) {
this.pkId = e.e.task_code === this.pkId ? '' : e.task_code
},
async toSure (status) {
this.disabled = true
if (!this.pkId) {
this.disabled = false
return
}
try {
let res = await saveCheckTask(this.pkId, status)
if (res.code === '200') {
this.index = ''
this.val1 = ''
this.dataList = []
this.pkId = ''
uni.showToast({
title: res.desc,
icon: 'none'
})
} else {
uni.showToast({
title: res.desc,
icon: 'none'
})
}
this.disabled = false
} catch (e) {
this.disabled = false
}
}
}
}
</script>

View File

@@ -0,0 +1,176 @@
<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-24 filter_select">
<uni-data-select v-model="index" :localdata="options" @change="selectChange"></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-24 filter_select">
<search-box
v-model="val1"
/>
</view>
</view>
</view>
<view class="zd_wrapper grid-wraper">
<view class="slide_new">
<table>
<thead>
<tr>
<th>任务类型</th>
<th>任务编码</th>
<th>载具编码</th>
<th>状态</th>
<th>起点</th>
<th>终点</th>
<th>创建时间</th>
</tr>
</thead>
<tbody>
<tr v-for="(e, i) in dataList" :key="i" @click="toCheck(e)" :class="{'checked': e.task_code === pkId}">
<td>{{e.task_type}}</td>
<td>{{e.task_code}}</td>
<td>{{e.vehicle_code}}</td>
<td>{{e.status}}</td>
<td>{{e.point_code1}}</td>
<td>{{e.point_code2}}</td>
<td>{{e.create_time}}</td>
</tr>
</tbody>
</table>
</view>
</view>
<uni-load-more color="#007AFF" iconType="circle" :status="status" :icon-size="14" :content-text="contentText" v-if="dataList.length > 0"/>
</view>
<view class="zd-row submit-bar">
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('80')">完成</button>
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('80')">强制完成</button>
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('90')">取消</button>
<button class="zd-col-5 button-primary" @tap="searchList">查询</button>
</view>
</view>
</template>
<script>
import NavBar from '@/components/NavBar.vue'
import SearchBox from '@/components/SearchBox.vue'
import {getStatusEnum, schBaseTask, saveCheckTask} from '@/utils/getData2.js'
export default {
components: {
NavBar,
SearchBox
},
data() {
return {
title: '',
options: [],
index: '',
val1: '',
dataList: [],
pkId: '',
reload: false,
status: 'more',
contentText: {
contentdown: '查看更多',
contentrefresh: '加载中',
contentnomore: '没有更多'
},
totalCount: 0,
pageNum: 1,
pageSize: 10,
disabled: false
};
},
onLoad (options) {
this.title = options.title
this._getStatusEnum()
},
methods: {
async _getStatusEnum () {
let res = await getStatusEnum()
this.options = [...res]
this.options.map(el => {
this.$set(el, 'text', el.label)
})
},
selectChange (e) {
this.index = e
},
searchList () {
this.dataList = []
this.pageNum = 1
this._schBaseTask()
},
async _schBaseTask () {
let res = await schBaseTask(this.pageNum + '', this.pageSize + '', this.index, this.val1)
if (res.code === '200') {
this.totalCount = res.totalElements
if (res.totalElements > 0) {
const dataMap = res.content
this.dataList = this.reload ? dataMap : this.dataList.concat(dataMap)
this.reload = false
} else {
this.dataList = []
}
if (this.totalCount == this.dataList.length) {
this.reload = false
this.status = 'noMore'
}
}
},
onReachBottom () {
if (this.totalCount > this.dataList.length) {
this.status = 'loading'
setTimeout(() => {
this.pageNum++
this._schBaseTask()
}, 1000)
} else { //停止加载
this.status = 'noMore'
}
},
toCheck (e) {
this.pkId = e.e.task_code === this.pkId ? '' : e.task_code
},
async toSure (status) {
this.disabled = true
if (!this.pkId) {
this.disabled = false
return
}
try {
let res = await saveCheckTask(this.pkId, status)
if (res.code === '200') {
this.index = ''
this.val1 = ''
this.dataList = []
this.pkId = ''
uni.showToast({
title: res.desc,
icon: 'none'
})
} else {
uni.showToast({
title: res.desc,
icon: 'none'
})
}
this.disabled = false
} catch (e) {
this.disabled = false
}
}
}
}
</script>

201
pages/xzhy/xlx-in-store.vue Normal file
View File

@@ -0,0 +1,201 @@
<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-24 filter_select">
<uni-data-select v-model="index" :localdata="options" @change="selectChange"></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-24 filter_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-24 filter_select">
<search-box
v-model="val2"
/>
</view>
</view>
</view>
<view class="zd_wrapper grid-wraper">
<view class="slide_new">
<table>
<thead>
<tr>
<th>序号</th>
<th>物料编码</th>
<th>物料名称</th>
<th>批号</th>
<th>重量(kg)</th>
<th>生产日期</th>
<th>供应商编码</th>
<th>供应商名称</th>
<th>规格</th>
<th>型号</th>
<th>有效期()</th>
<th>执行标准</th>
<th>品质类型</th>
<th>烘干次数</th>
</tr>
</thead>
<tbody>
<tr v-for="(e, i) in dataList" :key="i" @click="toCheck(e)" :class="{'checked': e.task_code === pkId}">
<td>{{i+1}}</td>
<td>{{e.task_type}}</td>
<td>{{e.task_code}}</td>
<td>{{e.vehicle_code}}</td>
<td>{{e.status}}</td>
<td>{{e.point_code1}}</td>
<td>{{e.point_code2}}</td>
<td>{{e.create_time}}</td>
<td>{{e.create_time}}</td>
<td>{{e.create_time}}</td>
<td>{{e.create_time}}</td>
<td>{{e.create_time}}</td>
<td>{{e.create_time}}</td>
<td>{{e.create_time}}</td>
</tr>
</tbody>
</table>
</view>
</view>
<uni-load-more color="#007AFF" iconType="circle" :status="status" :icon-size="14" :content-text="contentText" v-if="dataList.length > 0"/>
</view>
<view class="zd-row submit-bar">
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('80')">完成</button>
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('80')">强制完成</button>
<button class="zd-col-6 button-primary" :class="{'button-info': !pkId}" :disabled="disabled" @tap="toSure('90')">取消</button>
<button class="zd-col-5 button-primary" @tap="searchList">查询</button>
</view>
</view>
</template>
<script>
import NavBar from '@/components/NavBar.vue'
import SearchBox from '@/components/SearchBox.vue'
import {getStatusEnum, schBaseTask, saveCheckTask} from '@/utils/getData2.js'
export default {
components: {
NavBar,
SearchBox
},
data() {
return {
title: '',
options: [],
index: '',
val1: '',
val2: '',
dataList: [],
pkId: '',
reload: false,
status: 'more',
contentText: {
contentdown: '查看更多',
contentrefresh: '加载中',
contentnomore: '没有更多'
},
totalCount: 0,
pageNum: 1,
pageSize: 10,
disabled: false
};
},
onLoad (options) {
this.title = options.title
this._getStatusEnum()
},
methods: {
async _getStatusEnum () {
let res = await getStatusEnum()
this.options = [...res]
this.options.map(el => {
this.$set(el, 'text', el.label)
})
},
selectChange (e) {
this.index = e
},
searchList () {
this.dataList = []
this.pageNum = 1
this._schBaseTask()
},
async _schBaseTask () {
let res = await schBaseTask(this.pageNum + '', this.pageSize + '', this.index, this.val1)
if (res.code === '200') {
this.totalCount = res.totalElements
if (res.totalElements > 0) {
const dataMap = res.content
this.dataList = this.reload ? dataMap : this.dataList.concat(dataMap)
this.reload = false
} else {
this.dataList = []
}
if (this.totalCount == this.dataList.length) {
this.reload = false
this.status = 'noMore'
}
}
},
onReachBottom () {
if (this.totalCount > this.dataList.length) {
this.status = 'loading'
setTimeout(() => {
this.pageNum++
this._schBaseTask()
}, 1000)
} else { //停止加载
this.status = 'noMore'
}
},
toCheck (e) {
this.pkId = e.e.task_code === this.pkId ? '' : e.task_code
},
async toSure (status) {
this.disabled = true
if (!this.pkId) {
this.disabled = false
return
}
try {
let res = await saveCheckTask(this.pkId, status)
if (res.code === '200') {
this.index = ''
this.val1 = ''
this.dataList = []
this.pkId = ''
uni.showToast({
title: res.desc,
icon: 'none'
})
} else {
uni.showToast({
title: res.desc,
icon: 'none'
})
}
this.disabled = false
} catch (e) {
this.disabled = false
}
}
}
}
</script>

322
utils/getData4.js Normal file
View File

@@ -0,0 +1,322 @@
import request from './request.js'
// 版本更新测试
export const pdaUpdate = () => request({
url:'api/pda/iosOut/update'
})
// export const pdaUpdate = () => {
// let res = {
// versionName: '1.0.1',
// url: 'https://mp-e979e0eb-882b-42b3-a4a1-923ad08ea194.cdn.bspapp.com/cloudstorage/f72ec59f-7b25-487d-a034-fead1b6654c6.apk'
// }
// return res
// }
// 登录
export const handLogin = (user, password) => request({
url:'mobile/auth/login',
data: {
username: user,
password: password
}
})
// 公共接口
// 仓库列表/区域列表
export const getSect = (scode, page, size) => request({
url:'api/pda/iosIn/getSect',
data: {stor_code: scode, page: page, size: size}
})
// 区域列表
export const getRegion = (region, page, size) => request({
url:'api/pda/iosIn/getRegion',
data: {region: region, page: page, size: size}
})
// 获取物料列表
export const getMaterialList = (search, page, size) => request({
url:'api/pda/iosIn/getMaterialList',
data: {search: search, page: page, size: size}
})
// 入库管理
// 物料组盘确认
// export const groupPlate = (mid, pcsn, qty, vcode, ecode) => request({
// url:'api/pda/iosIn/groupPlate',
// data: {material_id: mid, pcsn: pcsn, qty: qty, vehicle_code: vcode, ext_code: ecode}
// })
// 组盘入库确认
export const confirmIn = (vcode, sitecode, sid) => request({
url:'api/pda/iosIn/confirmIn',
data: {vehicle_code: vcode, site_code: sitecode, sect_id: sid}
})
// 空载具入库确认
export const emptyconfirmIn = (vcode, sitecode, sid, isempty, type) => request({
url:'api/pda/iosIn/confirmIn',
data: {vehicle_code: vcode, site_code: sitecode, sect_id: sid, is_empty_vehicle: isempty, material_id: type}
})
// 组盘入库获取物料明细
export const getVehicleMaterial = (search) => request({
url:'api/pda/iosIn/getVehicleMaterial',
data: {search: search}
})
// 拣选余料回库查询
export const getReturnMaterial = (search) => request({
url:'api/pda/iosIn/getReturnMaterial',
data: {search: search}
})
// 拣选余料回库确认
export const confirmReturnMaterial = (sid, obj) => request({
url:'api/pda/iosIn/confirmReturnMaterial',
data: {sect_id: sid, obj: obj}
})
// 出库管理
// 线边仓出库获取物料库存
export const getMaterialDtl = (sid, search) => request({
url:'api/pda/iosOut/getMaterialDtl',
data: {sect_id: sid, search: search}
})
// 线边仓出库确认
export const materialConfirm = (sid, siteCode, obj) => request({
url:'api/pda/iosOut/materialConfirm',
data: {sect_id: sid, siteCode: siteCode, obj: obj}
})
// 产线叫料获取物料库存
export const linegetMaterialDtl = (rcode, search) => request({
url:'api/pda/iosOut/getMaterialDtl',
data: {region_code: rcode, search: search}
})
// 产线叫料确认
export const callMaterialConfirm = (rcode, siteCode, obj) => request({
url:'api/pda/iosOut/callMaterialConfirm',
data: {region_code: rcode, siteCode: siteCode, obj: obj}
})
// 出库确认获取物料明细
export const iosOutgetVehicleMaterial = (search) => request({
url:'api/pda/iosOut/getVehicleMaterial',
data: {search: search}
})
// 出库确认
export const confirm = (gid, scode, type) => request({
url:'api/pda/iosOut/confirm',
data: {group_id: gid, storagevehicle_code: scode, type: type}
})
// 货架绑定/解绑
export const bindOrUnbind = (siteCode, shelfCode, mode) => request({
url:'api/pda/iosOut/bindOrUnbind',
data: {siteCode: siteCode, shelfCode: shelfCode, mode: mode}
})
// 转运确认
export const transferConfirm = (scode, siteCode, rcode) => request({
url:'api/pda/iosOut/transferConfirm',
data: {storagevehicle_code: scode, siteCode: siteCode, region_code: rcode}
})
// 空载具/CTU出库确认
export const vehicleOutConfirm = (sid, siteCode, qty) => request({
url:'api/pda/iosOut/vehicleOutConfirm',
data: {sect_id: sid, siteCode: siteCode, qty: qty}
})
// 中坞
// 公用
// 获取设备区域下拉框
export const regionList = () => request({
url:'api/pda/schPoint/regionList',
data: {}
})
// 获取设备下拉框数组
export const pointList = (rcode) => request({
url:'api/pda/schPoint/pointList',
data: {region_code: rcode}
})
// 供应商下拉框
export const suppList = () => request({
url:'api/pda/jb/suppList',
data: {}
})
// 解包上料
// 获取工单表格数据
export const getOrderList = (pcode, flag) => request({
url:'api/pda/jb/getOrderList',
data: {point_code: pcode, flag: flag}
})
// 开工
export const callMaterial = (wid, pcode, area) => request({
url:'api/pda/jb/callMaterial',
data: {workorder_id: wid, point_code: pcode, area: area}
})
// 解包下料
// 获取重量
export const getWeight = (pcode, wid) => request({
url:'api/pda/jb/getWeight',
data: {point_code: pcode, workorder_id: wid}
})
// 下料
export const downMaterial = (wid, area, weight, pcode, tcode, lcode) => request({
url:'api/pda/jb/downMaterial',
data: {workorder_id: wid, area: area, weight: weight, point_code: pcode, tp_code: tcode, lt_code: lcode}
})
// 获取解包点位的托盘编码
export const jbGetVehicleCode = (pcode) => request({
url:'api/pda/jb/jbGetVehicleCode',
data: {point_code: pcode}
})
// 料桶出入
// 检测站点
export const checkStruct = (pcode) => request({
url:'api/pda/jb/checkStruct',
data: {point_code: pcode}
})
// 确认放置
export const confirmSet = (pcode, vcode) => request({
url:'api/pda/jb/confirmSet',
data: {point_code: pcode, vehicle_code: vcode}
})
// 获取料桶组盘信息
export const jbGetLtInfo = (scode, vcode) => request({
url:'api/pda/jb/jbGetLtInfo',
data: {struct_code: scode, vehicle_code: vcode}
})
// 空桶取出
export const jbEmptyTakeOut = (pcode) => request({
url:'api/pda/jb/jbEmptyTakeOut',
data: {point_code: pcode}
})
// 解包退料
// 解包退料
export const jbReturnMaterial = (area, pcode, tpcode, wid) => request({
url:'api/pda/jb/jbReturnMaterial',
data: {area: area, point_code: pcode, tp_code: tpcode, workorder_id: wid}
})
// 人车安全
// 进入区域
export const intoRegion = (rcode, nickname) => request({
url:'api/pda/jb/intoRegion',
data: {region_code: rcode, nickname: nickname}
})
// 退出区域
export const outRegion = (rcode, nickname, rows) => request({
url:'api/pda/jb/outRegion',
data: {region_code: rcode, nickname: nickname, rows: rows}
})
// 获取进入区域的信息记录
export const getAllIntoRegionMembers = (rcode) => request({
url:'api/pda/jb/getAllIntoRegionMembers',
data: {region_code: rcode}
})
// 来料入库
// 来料入库接口
export const zwConfirmIn = (fdcode, plist) => request({
url:'api/pda/iosIn/zwConfirmIn',
data: {form_data_code: fdcode, param_list: plist}
})
// 获取单据下拉清单
export const getFormDataList = (date) => request({
url:'api/pda/iosIn/getFormDataList',
data: {date: date}
})
// 查询组盘明细
export const getPlate = (vcode) => request({
url:'api/pda/iosIn/getPlate',
data: {vehicle_code: vcode}
})
// PDA来料入库校验点位和托盘码
export const inCheck = (scode, vcode) => request({
url:'api/pda/iosIn/inCheck',
data: {site_code: scode, vehicle_code: vcode}
})
// 空载具出入库
// 载具编码下拉框
export const getPdaSect = (scode, page, size) => request({
url:'api/pda/iosIn/getPdaSect',
data: {stor_code: scode, page: page, size: size}
})
// 空载具入库
export const vehicleInConfirm = (vcode, sectcode, pcode) => request({
url:'api/pda/iosIn/vehicleInConfirm',
data: {vehicle_code: vcode, sect_code: sectcode, point_code: pcode}
})
// 空载具出库
export const iosOutvehicleOutConfirm = (sid, siteCode) => request({
url:'api/pda/iosOut/vehicleOutConfirm',
data: {sect_id: sid, siteCode: siteCode}
})
// 通过载具编码获取点位
export const getPointCodeByVehicleCode = (vcode) => request({
url:'api/pda/iosIn/getPointCodeByVehicleCode',
data: {vehicle_code: vcode}
})
// 手工叫料/退料
// 手工叫料
export const checkoutbillcallMaterial = (dcode, scode, mcode, type, spcode, spname) => request({
url:'api/checkoutbill/callMaterial',
data: {device_code: dcode, struct_code: scode, material_code: mcode, task_type: type, supp_code: spcode, supp_name: spname}
})
// 手工退料
export const checkoutbillBackMaterial = (dcode, vcode, type, qty, mcode, spcode, spname) => request({
url:'api/checkoutbill/BackMaterial',
data: {device_code: dcode, vehicle_code: vcode, task_type: type, qty: qty, material_code: mcode, supp_code: spcode, supp_name: spname}
})
// 获取库位(已弃用)
export const getPdaStruct = (scode) => request({
url:'api/pda/iosIn/getPdaStruct',
data: {sect_code: scode}
})
// 根据库区获得料桶号列表
export const getPdaVehicleCodeBySectCode = (scode) => request({
url:'api/pda/iosOut/getPdaVehicleCodeBySectCode',
data: {sect_code: scode}
})
// 根据料桶号获得物料、供应商详情
export const getMaterialSuppByVehicleCode = (vcode) => request({
url:'api/pda/iosOut/getMaterialSuppByVehicleCode',
data: {vehicle_code: vcode}
})
// 点位属性设置
export const updatePointType = (code, type) => request({
url:'api/schBasePoint/updatePointType',
data: {point_code: code, point_type: type}
})
// 组盘入库
// 物料组盘(带单据)
export const zwgroupPlate = (vcode, mid, qty, ecode, spcode, spname) => request({
url:'api/pda/iosIn/groupPlate',
data: {vehicle_code: vcode, material_id: mid, qty: qty, ext_code: ecode, supp_code: spcode, supp_name: spname}
})
// 获取单据下拉清单
// export const getFormDataList = (fdcode) => request({
// url:'api/pda/iosIn/getFormDataList',
// data: {form_data_code: fdcode}
// })
// 获取物料详情
export const getFormMaterial = (ecode) => request({
url:'api/pda/iosIn/getFormMaterial',
data: {ext_code: ecode}
})
// 获取供应商
export const supplierdroplist = () => request({
url:'api/pda/iosIn/supplier-drop-list',
data: {}
})
// 物料组盘入库
export const combination = (vcode, pcsn, mid, spcode, spname, sweight) => request({
url:'api/pda/jb/combination',
data: {vehicle_code: vcode, pcsn: pcsn, material_id: mid, supp_code: spcode, supp_name: spname, single_weight: sweight}
})
// 确认取货
export const pickUp = (pcode, pstatus) => request({
url:'api/pda/iosOut/pickUp',
data: {point_code: pcode, point_status: pstatus}
})