This commit is contained in:
2023-08-29 17:19:26 +08:00
parent c148d53c0a
commit c3dfee52d2
5 changed files with 303 additions and 43 deletions

View File

@@ -36,6 +36,18 @@
"navigationStyle": "custom"
}
},
{
"path" : "pages/modules/SemifinishedOutStore",
"style": {
"navigationStyle": "custom"
}
},
{
"path": "pages/modules/EmptyOutStore",
"style": {
"navigationStyle": "custom"
}
},
{
"path" : "pages/modules/equip-inspection",
"style": {

View File

@@ -4,7 +4,7 @@
<view class="userInfo-wrap">
<view class="userInfo">
<text class="p1">{{userName}}</text>
<text class="p2">欢迎进入瑞泰马钢手持系统</text>
<text class="p2">欢迎进入海亮手持系统</text>
</view>
<view class="exit" @tap="Quit">
<view class="icon-exit"></view>
@@ -55,14 +55,14 @@
},
toPage1 (e) {
let url = e.path
uni.redirectTo({
url: url
})
// if (e.sonTree.length > 0) {
// this.show = true
// this.secM = e.sonTree
// }
// let url = e.path
// uni.redirectTo({
// url: url
// })
if (e.sonTree.length > 0) {
this.show = true
this.secM = e.sonTree
}
},
toPage2 (e) {
let url = e.path

View File

@@ -0,0 +1,124 @@
<template>
<view class="zd_container">
<nav-bar title="空箱出库"></nav-bar>
<view class="zd_content">
<view class="zd_wrapper">
<view class="filter_item">
<view class="filter_label">设备号</view>
<view class="filter_input_wraper">
<uni-data-select v-model="index1" :localdata="options1" @change="selectChange1"></uni-data-select>
</view>
</view>
<view class="filter_item">
<view class="filter_label_wraper">
<span class="filter_label">状态</span>
</view>
<view class="filter_input_wraper">
<uni-data-select v-model="index2" :localdata="options2" @change="selectChange2"></uni-data-select>
</view>
</view>
<view class="filter_item filter_item_1">
<view class="filter_label">备注</view>
<view class="filter_input_wraper filter_input_wraper_1">
<textarea class="filter_textarea" v-model="remark"></textarea>
</view>
</view>
</view>
</view>
<view class="submit-bar">
<button class="submit-button" :class="{'btn-disabled': !index1 || !index2}" :disabled="disabled1" @tap="toSure">确认</button>
<button class="submit-button" @tap="toCancle">取消</button>
</view>
</view>
</template>
<script>
import NavBar from '@/components/NavBar.vue'
import SearchBox from '@/components/SearchBox.vue'
import {deviceInfo, deviceStatus, deviceCheckVerify} from '@/utils/getData2.js'
export default {
components: {
NavBar,
SearchBox
},
data() {
return {
options1: [],
index1: '',
options2: [],
index2: '',
remark: '',
disabled1: false
};
},
created () {
this._deviceInfo()
this._deviceStatus()
},
methods: {
/** 选择器 */
selectChange1(e) {
this.index1 = e
},
selectChange2(e) {
this.index2 = e
},
/** 获取设备下拉框 */
async _deviceInfo () {
let res = await deviceInfo()
this.options1 = [...res]
},
/** 获取设备状态下拉框 */
async _deviceStatus () {
let res = await deviceStatus()
this.options2 = [...res]
},
/** 确定 */
async toSure () {
this.disabled1 = true
if (!this.index1) {
uni.showToast({
title: '设备号不能为空',
icon: 'none'
})
this.disabled1 = false
return
}
if (!this.index2) {
uni.showToast({
title: '状态不能为空',
icon: 'none'
})
this.disabled1 = false
return
}
try {
let userName = this.$store.getters.userInfo !== '' ? JSON.parse(this.$store.getters.userInfo).username : ''
let res = await deviceCheckVerify(this.index1, userName,this.remark, this.index2)
this.disabled1 = false
this.index1 = ''
this.index2 = ''
this.remark = ''
uni.showToast({
title: res.message,
icon: 'none'
})
} catch (e) {
this.disabled1 = false
}
},
toCancle () {
this.disabled1 = false
this.index1 = ''
this.index2 = ''
this.remark = false
}
}
}
</script>
<style lang="stylus" scoped>
.filter_item_1, .filter_input_wraper_1
align-items: flex-start
height 210rpx
</style>

View File

@@ -0,0 +1,124 @@
<template>
<view class="zd_container">
<nav-bar title="半成品出库"></nav-bar>
<view class="zd_content">
<view class="zd_wrapper">
<view class="filter_item">
<view class="filter_label">设备号</view>
<view class="filter_input_wraper">
<uni-data-select v-model="index1" :localdata="options1" @change="selectChange1"></uni-data-select>
</view>
</view>
<view class="filter_item">
<view class="filter_label_wraper">
<span class="filter_label">状态</span>
</view>
<view class="filter_input_wraper">
<uni-data-select v-model="index2" :localdata="options2" @change="selectChange2"></uni-data-select>
</view>
</view>
<view class="filter_item filter_item_1">
<view class="filter_label">备注</view>
<view class="filter_input_wraper filter_input_wraper_1">
<textarea class="filter_textarea" v-model="remark"></textarea>
</view>
</view>
</view>
</view>
<view class="submit-bar">
<button class="submit-button" :class="{'btn-disabled': !index1 || !index2}" :disabled="disabled1" @tap="toSure">确认</button>
<button class="submit-button" @tap="toCancle">取消</button>
</view>
</view>
</template>
<script>
import NavBar from '@/components/NavBar.vue'
import SearchBox from '@/components/SearchBox.vue'
import {deviceInfo, deviceStatus, deviceCheckVerify} from '@/utils/getData2.js'
export default {
components: {
NavBar,
SearchBox
},
data() {
return {
options1: [],
index1: '',
options2: [],
index2: '',
remark: '',
disabled1: false
};
},
created () {
this._deviceInfo()
this._deviceStatus()
},
methods: {
/** 选择器 */
selectChange1(e) {
this.index1 = e
},
selectChange2(e) {
this.index2 = e
},
/** 获取设备下拉框 */
async _deviceInfo () {
let res = await deviceInfo()
this.options1 = [...res]
},
/** 获取设备状态下拉框 */
async _deviceStatus () {
let res = await deviceStatus()
this.options2 = [...res]
},
/** 确定 */
async toSure () {
this.disabled1 = true
if (!this.index1) {
uni.showToast({
title: '设备号不能为空',
icon: 'none'
})
this.disabled1 = false
return
}
if (!this.index2) {
uni.showToast({
title: '状态不能为空',
icon: 'none'
})
this.disabled1 = false
return
}
try {
let userName = this.$store.getters.userInfo !== '' ? JSON.parse(this.$store.getters.userInfo).username : ''
let res = await deviceCheckVerify(this.index1, userName,this.remark, this.index2)
this.disabled1 = false
this.index1 = ''
this.index2 = ''
this.remark = ''
uni.showToast({
title: res.message,
icon: 'none'
})
} catch (e) {
this.disabled1 = false
}
},
toCancle () {
this.disabled1 = false
this.index1 = ''
this.index2 = ''
this.remark = false
}
}
}
</script>
<style lang="stylus" scoped>
.filter_item_1, .filter_input_wraper_1
align-items: flex-start
height 210rpx
</style>

View File

@@ -22,33 +22,33 @@ export const handLogin = (user, password) => request({
}
})
// export const handLogin = (user, password) => {
// let res = {
// "user": {
// "user": {
// "user_id": "1",
// "username": "admin",
// "person_name": "管理员",
// "gender": "男",
// "phone": "18312365896",
// "email": "201507802@qq.com",
// "avatar_name": "avatar-20200806032259161.png",
// "avatar_path": "/Users/jie/Documents/work/me/admin/eladmin/~/avatar/avatar-20200806032259161.png",
// "password": "f52020dca765fd3943ed40a615dc2c5c",
// "is_admin": true,
// "is_used": true,
// "pwd_reset_user_id": 0,
// "pwd_reset_time": null,
// "create_id": null,
// "create_name": "",
// "create_time": "2022-12-01 00:00:00",
// "update_id": "1",
// "update_name": "admin",
// "update_time": "2023-05-06 14:00:14",
// "extperson_id": null,
// "extuser_id": null
// }
// },
// "token": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJsb2dpblR5cGUiOiJsb2dpbiIsImxvZ2luSWQiOiIxIiwicm5TdHIiOiIyZENCQk1uYW03ellTb21aVVN2ZzZnMndJOHJ0V0RmciIsImxvZ2luSW5mbyI6eyJpZCI6IjEiLCJ1c2VybmFtZSI6ImFkbWluIiwicHJlc29uTmFtZSI6IueuoeeQhuWRmCIsInVzZXIiOnsidXNlcl9pZCI6IjEiLCJ1c2VybmFtZSI6ImFkbWluIiwicGVyc29uX25hbWUiOiLnrqHnkIblkZgiLCJnZW5kZXIiOiLnlLciLCJwaG9uZSI6IjE4MzEyMzY1ODk2IiwiZW1haWwiOiIyMDE1MDc4MDJAcXEuY29tIiwiYXZhdGFyX25hbWUiOiJhdmF0YXItMjAyMDA4MDYwMzIyNTkxNjEucG5nIiwiYXZhdGFyX3BhdGgiOiIvVXNlcnMvamllL0RvY3VtZW50cy93b3JrL21lL2FkbWluL2VsYWRtaW4vfi9hdmF0YXIvYXZhdGFyLTIwMjAwODA2MDMyMjU5MTYxLnBuZyIsInBhc3N3b3JkIjoiZjUyMDIwZGNhNzY1ZmQzOTQzZWQ0MGE2MTVkYzJjNWMiLCJpc19hZG1pbiI6dHJ1ZSwiaXNfdXNlZCI6dHJ1ZSwicHdkX3Jlc2V0X3VzZXJfaWQiOjAsImNyZWF0ZV9uYW1lIjoiIiwiY3JlYXRlX3RpbWUiOjE2Njk4MjQwMDAsInVwZGF0ZV9pZCI6IjEiLCJ1cGRhdGVfbmFtZSI6ImFkbWluIiwidXBkYXRlX3RpbWUiOjE2ODMzNTI4MTR9LCJwZXJtaXNzaW9ucyI6WyJhZG1pbiIsIm1vbml0b3I6bGlzdCIsInRpbWluZzpkZWwiLCJ0aW1pbmc6ZWRpdCIsInRpbWluZzphZGQiLCJkaWN0OmRlbCIsImRpY3Q6ZWRpdCIsImRpY3Q6YWRkIiwiZGVwdDpkZWwiLCJkZXB0OmVkaXQiLCJkZXB0OmFkZCIsIm1lbnU6ZGVsIiwibWVudTplZGl0IiwibWVudTphZGQiLCJyb2xlczpkZWwiLCJtZW51Omxpc3QiLCJyb2xlczplZGl0Iiwicm9sZXM6YWRkIiwidXNlcjpkZWwiLCJ1c2VyOmVkaXQiLCJ1c2VyOmFkZCIsInN0b3JhZ2U6ZGVsIiwic3RvcmFnZTplZGl0Iiwic3RvcmFnZTphZGQiLCJzdG9yYWdlOmxpc3QiLCJkaWN0Omxpc3QiLCJkZXB0Omxpc3QiLCJyb2xlczpsaXN0IiwidGltaW5nOmxpc3QiLCJ1c2VyOmxpc3QiLCI5OTkiLCJnZW5Db2RlOmVkaXQiLCJnZW5Db2RlOmRlbCIsImdlbkNvZGU6YWRkIiwiZ2VuQ29kZTpsaXN0Il19fQ.cur9GPyns_MCRCw9vwNogGiCAOxzSd_9-KKythjc9dU"
// let res = {
// "user": {
// "user": {
// "user_id": "1",
// "username": "admin",
// "person_name": "管理员",
// "gender": "男",
// "phone": "18312365896",
// "email": "201507802@qq.com",
// "avatar_name": "avatar-20200806032259161.png",
// "avatar_path": "/Users/jie/Documents/work/me/admin/eladmin/~/avatar/avatar-20200806032259161.png",
// "password": "f52020dca765fd3943ed40a615dc2c5c",
// "is_admin": true,
// "is_used": true,
// "pwd_reset_user_id": 0,
// "pwd_reset_time": null,
// "create_id": null,
// "create_name": "",
// "create_time": "2022-12-01 00:00:00",
// "update_id": "1",
// "update_name": "admin",
// "update_time": "2023-05-06 14:00:14",
// "extperson_id": null,
// "extuser_id": null
// }
// },
// "token": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJsb2dpblR5cGUiOiJsb2dpbiIsImxvZ2luSWQiOiIxIiwicm5TdHIiOiIyZENCQk1uYW03ellTb21aVVN2ZzZnMndJOHJ0V0RmciIsImxvZ2luSW5mbyI6eyJpZCI6IjEiLCJ1c2VybmFtZSI6ImFkbWluIiwicHJlc29uTmFtZSI6IueuoeeQhuWRmCIsInVzZXIiOnsidXNlcl9pZCI6IjEiLCJ1c2VybmFtZSI6ImFkbWluIiwicGVyc29uX25hbWUiOiLnrqHnkIblkZgiLCJnZW5kZXIiOiLnlLciLCJwaG9uZSI6IjE4MzEyMzY1ODk2IiwiZW1haWwiOiIyMDE1MDc4MDJAcXEuY29tIiwiYXZhdGFyX25hbWUiOiJhdmF0YXItMjAyMDA4MDYwMzIyNTkxNjEucG5nIiwiYXZhdGFyX3BhdGgiOiIvVXNlcnMvamllL0RvY3VtZW50cy93b3JrL21lL2FkbWluL2VsYWRtaW4vfi9hdmF0YXIvYXZhdGFyLTIwMjAwODA2MDMyMjU5MTYxLnBuZyIsInBhc3N3b3JkIjoiZjUyMDIwZGNhNzY1ZmQzOTQzZWQ0MGE2MTVkYzJjNWMiLCJpc19hZG1pbiI6dHJ1ZSwiaXNfdXNlZCI6dHJ1ZSwicHdkX3Jlc2V0X3VzZXJfaWQiOjAsImNyZWF0ZV9uYW1lIjoiIiwiY3JlYXRlX3RpbWUiOjE2Njk4MjQwMDAsInVwZGF0ZV9pZCI6IjEiLCJ1cGRhdGVfbmFtZSI6ImFkbWluIiwidXBkYXRlX3RpbWUiOjE2ODMzNTI4MTR9LCJwZXJtaXNzaW9ucyI6WyJhZG1pbiIsIm1vbml0b3I6bGlzdCIsInRpbWluZzpkZWwiLCJ0aW1pbmc6ZWRpdCIsInRpbWluZzphZGQiLCJkaWN0OmRlbCIsImRpY3Q6ZWRpdCIsImRpY3Q6YWRkIiwiZGVwdDpkZWwiLCJkZXB0OmVkaXQiLCJkZXB0OmFkZCIsIm1lbnU6ZGVsIiwibWVudTplZGl0IiwibWVudTphZGQiLCJyb2xlczpkZWwiLCJtZW51Omxpc3QiLCJyb2xlczplZGl0Iiwicm9sZXM6YWRkIiwidXNlcjpkZWwiLCJ1c2VyOmVkaXQiLCJ1c2VyOmFkZCIsInN0b3JhZ2U6ZGVsIiwic3RvcmFnZTplZGl0Iiwic3RvcmFnZTphZGQiLCJzdG9yYWdlOmxpc3QiLCJkaWN0Omxpc3QiLCJkZXB0Omxpc3QiLCJyb2xlczpsaXN0IiwidGltaW5nOmxpc3QiLCJ1c2VyOmxpc3QiLCI5OTkiLCJnZW5Db2RlOmVkaXQiLCJnZW5Db2RlOmRlbCIsImdlbkNvZGU6YWRkIiwiZ2VuQ29kZTpsaXN0Il19fQ.cur9GPyns_MCRCw9vwNogGiCAOxzSd_9-KKythjc9dU"
// }
// return res
// }
@@ -60,17 +60,17 @@ export const handRequest = () => request({
})
// 菜单
export const authority = () => {
let res = {
sonTree: [
{menu_id: '1', icon: 'RF08', name: '入库搬运', path: '', sonTree: [
{menu_id: '1', name: '生箔生产进度', path: '/pages/ProductManage/SboProdProgress'}
// {menu_id: '5', icon: 'RF04', name: '设备点检', path: '/pages/modules/equip-inspection', sonTree: []}
{menu_id: '1', icon: 'RF06', name: '仓储管理', sonTree: [
{menu_id: '1', name: '半成品入库', path: '/pages/modules/SemifinishedInStore'},
{menu_id: '2', name: '半成品出库', path: '/pages/modules/SemifinishedOutStore'},
{menu_id: '3', name: '空箱出库', path: '/pages/modules/EmptyOutStore'}
]},
{menu_id: '2', icon: 'RF02', name: '叫料出库', path: '', sonTree: []},
{menu_id: '3', icon: 'RF03', name: '任务管理', path: '', sonTree: []},
{menu_id: '4', icon: 'RF07', name: '指令管理', path: '', sonTree: []},
{menu_id: '5', icon: 'RF04', name: '设备点检', path: '/pages/modules/equip-inspection', sonTree: []},
{menu_id: '6', icon: 'RF10', name: '设备操作', path: '', sonTree: []}
{menu_id: '2', icon: 'RF01', name: '生产管理', path: '', sonTree: []}
]
}
return res