272 lines
6.8 KiB
Vue
272 lines
6.8 KiB
Vue
<template>
|
||
<view class="container">
|
||
<view class="formBox">
|
||
<uv-form labelPosition="left" :model="taskInfo" :rules="rules" ref="form" labelWidth="120">
|
||
<!-- <uv-form-item label="任务详情" prop="taskDtlName" borderBottom @click="showtaskDtlSelect">
|
||
<uv-input v-model="taskInfo.taskDtlName" border="none">
|
||
</uv-input>
|
||
<template v-slot:right>
|
||
<uv-icon name="arrow-right"></uv-icon>
|
||
</template>
|
||
</uv-form-item> -->
|
||
<uv-form-item label="任务类型" prop="taskTypeName" borderBottom @click="showTypeSelect">
|
||
<uv-input v-model="taskInfo.taskTypeName" border="none">
|
||
</uv-input>
|
||
<template v-slot:right>
|
||
<uv-icon name="arrow-right"></uv-icon>
|
||
</template>
|
||
</uv-form-item>
|
||
<uv-form-item label="物料编码" prop="mid" borderBottom >
|
||
<uv-input v-model="taskInfo.mid" border="none">
|
||
</uv-input>
|
||
<template v-slot:right>
|
||
<uv-icon name="arrow-right" @click="showWlbmList()"></uv-icon>
|
||
</template>
|
||
</uv-form-item>
|
||
<!-- <uv-form-item label="物料数量" prop="num" type="number" borderBottom >
|
||
<uv-input v-model="taskInfo.num" border="none">
|
||
</uv-input>
|
||
</uv-form-item> -->
|
||
<uv-form-item label="起始位置" prop="sourceName" borderBottom >
|
||
<uv-input v-model="taskInfo.sourceName" border="none">
|
||
</uv-input>
|
||
<template v-slot:right>
|
||
<uv-icon name="arrow-right" @click="showqswzTypeSelectList()"></uv-icon>
|
||
</template>
|
||
</uv-form-item>
|
||
<uv-form-item label="目标位置" prop="targetName" borderBottom >
|
||
<uv-input v-model="taskInfo.targetName" border="none">
|
||
</uv-input>
|
||
<template v-slot:right>
|
||
<uv-icon name="arrow-right" @click="showmbwzTypeSelectList()"></uv-icon>
|
||
</template>
|
||
</uv-form-item>
|
||
</uv-form>
|
||
</view>
|
||
|
||
<view class="btn">
|
||
<uv-button type="primary" shape="circle" text="提 交" class="mainBtn" @click="submit"></uv-button>
|
||
</view>
|
||
<!-- 任务详情弹框 -->
|
||
<uv-action-sheet ref="taskDtlSelect" :actions="taskDtlActions" @select="taskDtlSelectFun">
|
||
</uv-action-sheet>
|
||
<!-- 任务类型弹框 -->
|
||
<uv-action-sheet ref="taskTypeSelect" :actions="typeActions" @select="taskTypeSelectFun">
|
||
</uv-action-sheet>
|
||
<!-- 物料编码弹框 -->
|
||
<uv-action-sheet ref="wlbmTypeSelect" :actions="wlbmActions" @select="wlbmSelectFun">
|
||
</uv-action-sheet>
|
||
<!-- 起始位置弹框 -->
|
||
<uv-action-sheet ref="qswzTypeSelect" :actions="qswzActions" @select="qswzSelectFun">
|
||
</uv-action-sheet>
|
||
<!-- 目标位置弹框 -->
|
||
<uv-action-sheet ref="mbwzTypeSelect" :actions="qswzActions" @select="mbwzSelectFun">
|
||
</uv-action-sheet>
|
||
<uv-toast ref="toast"></uv-toast>
|
||
</view>
|
||
</template>
|
||
<script >
|
||
import { AddTask } from "@/api/dispatch"
|
||
export default{
|
||
data(){
|
||
return {
|
||
taskInfo: {
|
||
taskDtl:"", //任务详情id
|
||
taskDtlName:'', //任务详情中文
|
||
taskType:null, //任务类型id
|
||
taskTypeName:"", //任务类型中文
|
||
mid:"", //物料编码
|
||
num:1, //物料数量(固定传1)
|
||
sourceName:"", //起始位置
|
||
targetName:"" //目标位置
|
||
},
|
||
//任务详情
|
||
taskDtlActions: [{
|
||
id:"0",
|
||
name: '入库',
|
||
}, {
|
||
id:"1",
|
||
name: '送检',
|
||
}, {
|
||
id:"2",
|
||
name: '留样入库',
|
||
}, {
|
||
id:"3",
|
||
name: '出库',
|
||
}],
|
||
// 任务类型
|
||
typeActions: [{
|
||
id:"0",
|
||
name: '上架',
|
||
}, {
|
||
id:"1",
|
||
name: '下架',
|
||
}],
|
||
//物料编码
|
||
wlbmActions:[{
|
||
id:"500136003",
|
||
name: '500136003',
|
||
}],
|
||
//起始位置、目标位置下拉
|
||
qswzActions:[{
|
||
id:"V01-230101",
|
||
name: 'V01-230101',
|
||
},{
|
||
id:"A01-010102",
|
||
name: 'A01-010102',
|
||
}],
|
||
rules: {
|
||
// 'taskDtlName': {
|
||
// type: 'string',
|
||
// required: true,
|
||
// message: '请选择任务详情',
|
||
// trigger: ['blur', 'change']
|
||
// },
|
||
'taskTypeName': {
|
||
type: 'string',
|
||
required: true,
|
||
message: '请选择任务类型',
|
||
trigger: ['blur', 'change']
|
||
},
|
||
'mid':{
|
||
type: 'string',
|
||
required: true,
|
||
message: '请输入物料编码',
|
||
trigger: ['blur', 'change']
|
||
},
|
||
// 'num':{
|
||
// type: 'number',
|
||
// required: true,
|
||
// message: '请输入物料数量',
|
||
// trigger: ['blur']
|
||
// },
|
||
'sourceName':{
|
||
type: 'string',
|
||
required: true,
|
||
message: '请输入起始位置',
|
||
trigger: ['blur', 'change']
|
||
},
|
||
'targetName':{
|
||
type: 'string',
|
||
required: true,
|
||
message: '请输入目标位置',
|
||
trigger: ['blur', 'change']
|
||
}
|
||
},
|
||
radio: '',
|
||
switchVal: false
|
||
}
|
||
},
|
||
methods: {
|
||
//物料编码下拉
|
||
showWlbmList(){
|
||
this.$refs.wlbmTypeSelect.open();
|
||
this.hideKeyboard();
|
||
},
|
||
//起始位置下拉
|
||
showqswzTypeSelectList(){
|
||
this.$refs.qswzTypeSelect.open();
|
||
this.hideKeyboard();
|
||
},
|
||
//目标位置下拉
|
||
showmbwzTypeSelectList(){
|
||
this.$refs.mbwzTypeSelect.open();
|
||
this.hideKeyboard();
|
||
},
|
||
submit(){
|
||
this.$refs.form.validate().then(res => {
|
||
var firststr = "";
|
||
var altstr = "";
|
||
|
||
if(this.taskInfo.taskType == 0)
|
||
{
|
||
firststr = this.taskInfo.targetName.substr(0,1);
|
||
altstr = '目标位置输入错误';
|
||
}
|
||
else if(this.taskInfo.taskType == 1)
|
||
{
|
||
firststr = this.taskInfo.sourceName.substr(0,1);
|
||
altstr = '起始位置输入错误';
|
||
}
|
||
|
||
if(firststr != 'A' && firststr != 'B')
|
||
{
|
||
// uni.showToast({
|
||
// icon: 'error',
|
||
// title: altstr
|
||
// })
|
||
this.$refs.toast.show({
|
||
type: 'error',
|
||
icon: false,
|
||
title: '',
|
||
message: altstr
|
||
})
|
||
return;
|
||
}
|
||
// console.log(333333)
|
||
// return
|
||
const obj = this.taskInfo
|
||
AddTask(obj).then(res => {
|
||
uni.showToast({
|
||
title: '操作成功',
|
||
icon: 'success',
|
||
mask: true
|
||
})
|
||
uni.navigateBack({})
|
||
})
|
||
// uni.showToast({
|
||
// icon: 'success',
|
||
// title: '校验通过'
|
||
// })
|
||
})
|
||
},
|
||
// 点击任务详情
|
||
showtaskDtlSelect(){
|
||
this.$refs.taskDtlSelect.open();
|
||
this.hideKeyboard();
|
||
},
|
||
//选择任务详情
|
||
taskDtlSelectFun(e){
|
||
this.taskInfo.taskDtlName = e.name
|
||
this.taskInfo.taskDtl = e.id
|
||
// console.log(11111)
|
||
// console.log(e.id)
|
||
// console.log(e.name)
|
||
},
|
||
// 点击任务类型
|
||
showTypeSelect(){
|
||
this.$refs.taskTypeSelect.open();
|
||
this.hideKeyboard();
|
||
},
|
||
//选择任务类型
|
||
taskTypeSelectFun(e){
|
||
this.taskInfo.taskTypeName = e.name
|
||
this.taskInfo.taskType = e.id
|
||
},
|
||
//选择物料编码
|
||
wlbmSelectFun(e){
|
||
this.taskInfo.mid = e.name
|
||
},
|
||
//选择起始位置
|
||
qswzSelectFun(e){
|
||
this.taskInfo.sourceName = e.name
|
||
},
|
||
//选择目标位置
|
||
mbwzSelectFun(e){
|
||
this.taskInfo.targetName = e.name
|
||
},
|
||
hideKeyboard() {
|
||
uni.hideKeyboard()
|
||
}
|
||
}
|
||
}
|
||
</script>
|
||
<style scoped lang="scss">
|
||
.container{
|
||
height: 100vh;
|
||
padding:40rpx;
|
||
.formBox{
|
||
height: 85%;
|
||
}
|
||
}
|
||
</style> |