sov
This commit is contained in:
@@ -14,22 +14,14 @@
|
|||||||
<input type="text" class="setup-input" placeholder="请输入刷新时间" v-model="setTime">
|
<input type="text" class="setup-input" placeholder="请输入刷新时间" v-model="setTime">
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<!-- <view class="zd_wrapper">
|
|
||||||
<view class="input-wrap">
|
|
||||||
<view class="input-label" style="margin-right: 20upx;">客户标签打印</view>
|
|
||||||
<uni-data-select v-model="index" :localdata="options" @change="selectChange"></uni-data-select>
|
|
||||||
</view>
|
|
||||||
</view> -->
|
|
||||||
</view>
|
</view>
|
||||||
<view class="submit-bar">
|
<view class="submit-bar">
|
||||||
<button class="submit-button" @click="_submit">确认</button>
|
<button class="submit-button" @click="_submit">确认</button>
|
||||||
<!-- <button class="submit-button" @click="_virtualprintType">查询</button> -->
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
// import {virtualprintType} from '@/utils/getData2.js'
|
|
||||||
import NavBar from '@/components/NavBar.vue'
|
import NavBar from '@/components/NavBar.vue'
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
@@ -43,27 +35,12 @@
|
|||||||
setTime: this.$store.getters.setTime / 1000
|
setTime: this.$store.getters.setTime / 1000
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created () {
|
|
||||||
// this._virtualprintType()
|
|
||||||
},
|
|
||||||
methods: {
|
methods: {
|
||||||
goIn () {
|
goIn () {
|
||||||
uni.redirectTo({
|
uni.redirectTo({
|
||||||
url: '/pages/login/login'
|
url: '/pages/login/login'
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
/** 选择器 */
|
|
||||||
selectChange(e) {
|
|
||||||
this.index = e
|
|
||||||
},
|
|
||||||
/** 打印机类型下拉框查询 */
|
|
||||||
async _virtualprintType () {
|
|
||||||
let res = await virtualprintType(this.addrip)
|
|
||||||
this.options = [...res.data]
|
|
||||||
// if (this.$store.getters.setPrintName !== '') {
|
|
||||||
// this.index = this.$store.getters.setPrintName
|
|
||||||
// }
|
|
||||||
},
|
|
||||||
_submit () {
|
_submit () {
|
||||||
if (this.addrip === '') {
|
if (this.addrip === '') {
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
|
|||||||
@@ -66,11 +66,17 @@
|
|||||||
/** 获取设备下拉框 */
|
/** 获取设备下拉框 */
|
||||||
async _deviceInfo () {
|
async _deviceInfo () {
|
||||||
let res = await deviceInfo()
|
let res = await deviceInfo()
|
||||||
|
res.map(el => {
|
||||||
|
this.$set(el, 'text', el.label)
|
||||||
|
})
|
||||||
this.options1 = [...res]
|
this.options1 = [...res]
|
||||||
},
|
},
|
||||||
/** 获取设备状态下拉框 */
|
/** 获取设备状态下拉框 */
|
||||||
async _deviceStatus () {
|
async _deviceStatus () {
|
||||||
let res = await deviceStatus()
|
let res = await deviceStatus()
|
||||||
|
res.map(el => {
|
||||||
|
this.$set(el, 'text', el.label)
|
||||||
|
})
|
||||||
this.options2 = [...res]
|
this.options2 = [...res]
|
||||||
},
|
},
|
||||||
/** 确定 */
|
/** 确定 */
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<view class="zd_content">
|
<view class="zd_content">
|
||||||
<view class="zd_wrapper">
|
<view class="zd_wrapper">
|
||||||
<view class="filter_item">
|
<view class="filter_item">
|
||||||
<view class="filter_label">设备号</view>
|
<view class="filter_label">静置时间</view>
|
||||||
<view class="filter_input_wraper">
|
<view class="filter_input_wraper">
|
||||||
<input type="text" class="filter_input" v-model="val1">
|
<input type="text" class="filter_input" v-model="val1">
|
||||||
</view>
|
</view>
|
||||||
|
|||||||
@@ -4,9 +4,15 @@
|
|||||||
<view class="zd_content">
|
<view class="zd_content">
|
||||||
<view class="zd_wrapper">
|
<view class="zd_wrapper">
|
||||||
<view class="filter_item">
|
<view class="filter_item">
|
||||||
<view class="filter_label">设备号</view>
|
<view class="filter_label">托盘编码</view>
|
||||||
<view class="filter_input_wraper">
|
<view class="filter_input_wraper">
|
||||||
<input type="text" class="filter_input" v-model="val1">
|
<search-box v-model="val1" />
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="filter_item">
|
||||||
|
<view class="filter_label">物料数量</view>
|
||||||
|
<view class="filter_input_wraper">
|
||||||
|
<input type="number" class="filter_input" v-model="val2">
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
@@ -15,20 +21,20 @@
|
|||||||
<table>
|
<table>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th>困料位置</th>
|
<th>起点1</th>
|
||||||
<th>设备号</th>
|
<th>终点1</th>
|
||||||
<th>静置时间</th>
|
<th>起点2</th>
|
||||||
<th>剩余静置时间</th>
|
<th>终点2</th>
|
||||||
<th>预计完成时间</th>
|
<th>任务状态</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr v-for="(e, i) in dataList" :key="i" @tap="toCheck(e)" :class="{'checked': e.group_id === pkId}">
|
<tr v-for="(e, i) in dataList" :key="i">
|
||||||
<td>{{e.point_code}}</td>
|
<td>{{e.point_name1}}</td>
|
||||||
<td>{{e.device_code}}</td>
|
<td>{{e.point_name2}}</td>
|
||||||
<td>{{e.standing_time}}</td>
|
<td>{{e.point_name3}}</td>
|
||||||
<td>{{e.timeDifferenceMinutes}}</td>
|
<td>{{e.point_name4}}</td>
|
||||||
<td>{{e.estimatedCompletionTimeString}}</td>
|
<td>{{e.task_status}}</td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
@@ -37,51 +43,50 @@
|
|||||||
</view>
|
</view>
|
||||||
<view class="submit-bar">
|
<view class="submit-bar">
|
||||||
<button class="submit-button" @tap="_forcedRestingShow">刷新</button>
|
<button class="submit-button" @tap="_forcedRestingShow">刷新</button>
|
||||||
<button class="submit-button" :class="{'btn-disabled': !val1 || !pkId}" :disabled="disabled" @tap="toSure">确认</button>
|
<button class="submit-button" :class="{'btn-disabled': !val1 || !val2}" :disabled="disabled" @tap="toSure">确认</button>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import NavBar from '@/components/NavBar.vue'
|
import NavBar from '@/components/NavBar.vue'
|
||||||
import {forcedRestingShow, forcedRestingSubmit} from '@/utils/getData2.js'
|
import SearchBox from '@/components/SearchBox.vue'
|
||||||
import {dateTimeFtt} from '@/utils/utils.js'
|
import {manualSortingPackingTaskShow, manualSortingPackingTask} from '@/utils/getData2.js'
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
NavBar
|
NavBar,
|
||||||
|
SearchBox
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
val1: '',
|
val1: '',
|
||||||
|
val2: '',
|
||||||
dataList: [],
|
dataList: [],
|
||||||
pkId: '',
|
|
||||||
pkObj: {},
|
|
||||||
disabled: false
|
disabled: false
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created () {
|
created () {
|
||||||
this._forcedRestingShow()
|
this._manualSortingPackingTaskShow()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
/** grid查询 */
|
/** grid查询 */
|
||||||
async _forcedRestingShow () {
|
async _manualSortingPackingTaskShow () {
|
||||||
let res = await forcedRestingShow()
|
let res = await manualSortingPackingTaskShow()
|
||||||
this.dataList = [...res]
|
this.dataList = [...res]
|
||||||
},
|
},
|
||||||
/** 确认 */
|
/** 确认 */
|
||||||
async toSure () {
|
async toSure () {
|
||||||
this.disabled = true
|
this.disabled = true
|
||||||
if (!this.val1 || !this.pkId) {
|
if (!this.val1 || !this.val2) {
|
||||||
this.disabled = false
|
this.disabled = false
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
let res = await forcedRestingSubmit(this.val1, this.pkId)
|
let res = await manualSortingPackingTask(this.val1, this.val2)
|
||||||
this.disabled = false
|
this.disabled = false
|
||||||
this.pkId = ''
|
|
||||||
this.pkObj = {}
|
|
||||||
this.val1 = ''
|
this.val1 = ''
|
||||||
this._forcedRestingShow()
|
this.val2 = ''
|
||||||
|
this._manualSortingPackingTaskShow()
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
title: res.message,
|
title: res.message,
|
||||||
icon: 'none'
|
icon: 'none'
|
||||||
@@ -89,10 +94,6 @@
|
|||||||
} catch (e) {
|
} catch (e) {
|
||||||
this.disabled = false
|
this.disabled = false
|
||||||
}
|
}
|
||||||
},
|
|
||||||
toCheck (e) {
|
|
||||||
this.pkId = this.pkId === e.group_id ? '' : e.group_id
|
|
||||||
this.pkObj = this.pkId === e.group_id ? e : {}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<view class="filter_item">
|
<view class="filter_item">
|
||||||
<view class="filter_label">木托盘编码</view>
|
<view class="filter_label">木托盘编码</view>
|
||||||
<view class="filter_input_wraper">
|
<view class="filter_input_wraper">
|
||||||
<uni-data-select v-model="index1" :localdata="options1" @change="selectChange1"></uni-data-select>
|
<search-box v-model="val1" />
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="filter_item">
|
<view class="filter_item">
|
||||||
@@ -14,14 +14,14 @@
|
|||||||
<span class="filter_label">钢托盘编码</span>
|
<span class="filter_label">钢托盘编码</span>
|
||||||
</view>
|
</view>
|
||||||
<view class="filter_input_wraper">
|
<view class="filter_input_wraper">
|
||||||
<uni-data-select v-model="index2" :localdata="options2" @change="selectChange2"></uni-data-select>
|
<search-box v-model="val2" />
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="submit-bar">
|
<view class="submit-bar">
|
||||||
<button class="submit-button" :class="{'btn-disabled': !index1 || !index2}" :disabled="disabled1" @tap="toSure">确认</button>
|
<button class="submit-button" :class="{'btn-disabled': !val1 || !val2}" :disabled="disabled" @tap="toSure">确认</button>
|
||||||
<button class="submit-button" @tap="toCancle">取消</button>
|
<button class="submit-button" @tap="toCancle">清空</button>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
@@ -29,7 +29,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 {deviceInfo, deviceStatus, deviceCheckVerify} from '@/utils/getData2.js'
|
import {manualSortingBindingVehicle} from '@/utils/getData2.js'
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
NavBar,
|
NavBar,
|
||||||
@@ -37,79 +37,40 @@
|
|||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
options1: [],
|
val1: '',
|
||||||
index1: '',
|
val2: '',
|
||||||
options2: [],
|
disabled: false
|
||||||
index2: '',
|
|
||||||
disabled1: false
|
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created () {
|
|
||||||
this._deviceInfo()
|
|
||||||
this._deviceStatus()
|
|
||||||
},
|
|
||||||
methods: {
|
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 () {
|
async toSure () {
|
||||||
this.disabled1 = true
|
this.disabled = true
|
||||||
if (!this.index1) {
|
if (!this.val1 || !this.val2) {
|
||||||
uni.showToast({
|
this.disabled = false
|
||||||
title: '设备号不能为空',
|
|
||||||
icon: 'none'
|
|
||||||
})
|
|
||||||
this.disabled1 = false
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if (!this.index2) {
|
|
||||||
uni.showToast({
|
|
||||||
title: '状态不能为空',
|
|
||||||
icon: 'none'
|
|
||||||
})
|
|
||||||
this.disabled1 = false
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
let userName = this.$store.getters.userInfo !== '' ? JSON.parse(this.$store.getters.userInfo).username : ''
|
let res = await manualSortingBindingVehicle(this.val2, this.val1)
|
||||||
let res = await deviceCheckVerify(this.index1, userName, this.index2)
|
this.disabled = false
|
||||||
this.disabled1 = false
|
this.val1 = ''
|
||||||
this.index1 = ''
|
this.val2 = ''
|
||||||
this.index2 = ''
|
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
title: res.message,
|
title: res.message,
|
||||||
icon: 'none'
|
icon: 'none'
|
||||||
})
|
})
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
this.disabled1 = false
|
this.disabled = false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
toCancle () {
|
toCancle () {
|
||||||
this.disabled1 = false
|
this.disabled = false
|
||||||
this.index1 = ''
|
this.val1 = ''
|
||||||
this.index2 = ''
|
this.val2 = ''
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="stylus" scoped>
|
<style lang="stylus" scoped>
|
||||||
.filter_item_1, .filter_input_wraper_1
|
|
||||||
align-items: flex-start
|
|
||||||
height 210rpx
|
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -7,26 +7,26 @@
|
|||||||
<table>
|
<table>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th>选择</th>
|
|
||||||
<th>工单号</th>
|
<th>工单号</th>
|
||||||
<th>物料编码</th>
|
<th>物料编码</th>
|
||||||
<th>物料名称</th>
|
<th>物料名称</th>
|
||||||
<th>规格</th>
|
<th>工单状态</th>
|
||||||
<th>客户</th>
|
<th>开工人</th>
|
||||||
<th>计划出库量</th>
|
<th>创建者</th>
|
||||||
<th>实际出库量</th>
|
<th>计划量</th>
|
||||||
|
<th>实际量</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr v-for="(e, i) in dataList" :key="i" :class="{'checked': e.checked}">
|
<tr v-for="(e, i) in dataList" :key="i" @tap="toCheck(e)" :class="{'checked': e.workorder_code === pkId}">
|
||||||
<td><span class="iconfont icon_unchecked" :class="{'icon_checked': e.checked}" @tap="toCheck(e)"></span></td>
|
<td>{{e.workorder_code}}</td>
|
||||||
<td>{{e.device_code}}</td>
|
<td>{{e.material_code}}</td>
|
||||||
<td @tap="toJump(e)">{{e.device_name}}</td>
|
<td>{{e.material_name}}</td>
|
||||||
<td>{{e.status_name}}</td>
|
<td>{{e.workorder_status}}</td>
|
||||||
<td>{{e.plan_start_date}}</td>
|
<td>{{e.operator}}</td>
|
||||||
<td></td>
|
<td>{{e.create_name}}</td>
|
||||||
<td></td>
|
<td><input type="number" class="sin_input" v-model="e.plan_qty"></td>
|
||||||
<td><input type="number" class="sin_input"></td>
|
<td>{{e.real_qty}}</td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
@@ -34,8 +34,8 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="submit-bar">
|
<view class="submit-bar">
|
||||||
<button class="submit-button" :class="{'btn-disabled': !pkId}" :disabled="disabled" @tap="toSure1">开工</button>
|
<button class="submit-button" :class="{'btn-disabled': !pkId}" :disabled="disabled1" @tap="toSure1">开工</button>
|
||||||
<button class="submit-button" :class="{'btn-disabled': !pkId}" :disabled="disabled" @tap="toSure1">完工</button>
|
<button class="submit-button" :class="{'btn-disabled': !pkId}" :disabled="disabled2" @tap="toSure2">完工</button>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
@@ -43,7 +43,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 {coolIOQuery, confirmInstor, statusList} from '@/utils/getData2.js'
|
import {manualSortingOrders, manualSortingProductionScheduling, manualSortingProductionComplete} from '@/utils/getData2.js'
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
NavBar,
|
NavBar,
|
||||||
@@ -52,56 +52,68 @@
|
|||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
dataList: [],
|
dataList: [],
|
||||||
checkArr: [],
|
pkId: '',
|
||||||
disabled: false
|
pkObj: {},
|
||||||
|
disabled1: false,
|
||||||
|
disabled2: false
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created () {
|
created () {
|
||||||
|
this._manualSortingOrders()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
/** 下拉框查询 */
|
|
||||||
async _statusList () {
|
|
||||||
let res = await statusList()
|
|
||||||
this.options = [...res.data]
|
|
||||||
},
|
|
||||||
/** grid查询 */
|
/** grid查询 */
|
||||||
async _empOutgetIvt (e) {
|
async _manualSortingOrders () {
|
||||||
let res = await empOutgetIvt(e)
|
let res = await manualSortingOrders()
|
||||||
res.data.map(el => {
|
this.dataList = [...res]
|
||||||
this.$set(el, 'checked', false)
|
|
||||||
})
|
|
||||||
this.dataList = [...res.data]
|
|
||||||
},
|
},
|
||||||
/** 确认 */
|
toCheck (e) {
|
||||||
async _confirmInstor () {
|
this.pkId = this.pkId === e.workorder_code ? '' : e.workorder_code
|
||||||
this.disabled = true
|
this.pkObj = this.pkId === e.workorder_code ? e : {}
|
||||||
if (!this.val1 || !this.pkId || !this.index) {
|
},
|
||||||
this.disabled = false
|
/** 开工 */
|
||||||
|
async toSure1 () {
|
||||||
|
this.disabled1 = true
|
||||||
|
if (!this.pkId) {
|
||||||
|
this.disabled1 = false
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
let res = await confirmInstor(this.pkObj, this.val1, this.index)
|
let userName = this.$store.getters.userInfo !== '' ? JSON.parse(this.$store.getters.userInfo).username : ''
|
||||||
this.disabled = false
|
let res = await manualSortingProductionScheduling(this.pkId, userName)
|
||||||
|
this.disabled1 = false
|
||||||
this.pkId = ''
|
this.pkId = ''
|
||||||
this.pkObj = {}
|
this.pkObj = {}
|
||||||
this.searchList()
|
this._manualSortingOrders()
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
title: res.message,
|
title: res.message,
|
||||||
icon: 'none'
|
icon: 'none'
|
||||||
})
|
})
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
this.disabled = false
|
this.disabled1 = false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
toCheck (e) {
|
/** 完工 */
|
||||||
e.checked = !e.checked
|
async toSure2 () {
|
||||||
this.checkArr = this.dataList.filter(i => { return i.checked === true })
|
this.disabled2 = true
|
||||||
},
|
if (!this.pkId) {
|
||||||
toJump (e) {
|
this.disabled2 = false
|
||||||
this.$store.dispatch('setPublicObj', e)
|
return
|
||||||
uni.navigateTo({
|
}
|
||||||
url: '/pages/warehouse/WarehouseReceiptDetails'
|
try {
|
||||||
|
let userName = this.$store.getters.userInfo !== '' ? JSON.parse(this.$store.getters.userInfo).username : ''
|
||||||
|
let res = await manualSortingProductionComplete(this.pkId, userName)
|
||||||
|
this.disabled2 = false
|
||||||
|
this.pkId = ''
|
||||||
|
this.pkObj = {}
|
||||||
|
this._manualSortingOrders()
|
||||||
|
uni.showToast({
|
||||||
|
title: res.message,
|
||||||
|
icon: 'none'
|
||||||
})
|
})
|
||||||
|
} catch (e) {
|
||||||
|
this.disabled2 = false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,9 +4,15 @@
|
|||||||
<view class="zd_content">
|
<view class="zd_content">
|
||||||
<view class="zd_wrapper">
|
<view class="zd_wrapper">
|
||||||
<view class="filter_item">
|
<view class="filter_item">
|
||||||
<view class="filter_label">设备号</view>
|
<view class="filter_label">托盘编码</view>
|
||||||
<view class="filter_input_wraper">
|
<view class="filter_input_wraper">
|
||||||
<input type="text" class="filter_input" v-model="val1">
|
<search-box v-model="val1" />
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="filter_item">
|
||||||
|
<view class="filter_label">物料数量</view>
|
||||||
|
<view class="filter_input_wraper">
|
||||||
|
<input type="number" class="filter_input" v-model="val2">
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
@@ -15,20 +21,18 @@
|
|||||||
<table>
|
<table>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th>困料位置</th>
|
<th>起点</th>
|
||||||
<th>设备号</th>
|
<th>终点</th>
|
||||||
<th>静置时间</th>
|
<th>任务状态</th>
|
||||||
<th>剩余静置时间</th>
|
<th>备注</th>
|
||||||
<th>预计完成时间</th>
|
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr v-for="(e, i) in dataList" :key="i" @tap="toCheck(e)" :class="{'checked': e.group_id === pkId}">
|
<tr v-for="(e, i) in dataList" :key="i">
|
||||||
<td>{{e.point_code}}</td>
|
<td>{{e.point_name1}}</td>
|
||||||
<td>{{e.device_code}}</td>
|
<td>{{e.point_name2}}</td>
|
||||||
<td>{{e.standing_time}}</td>
|
<td>{{e.task_status}}</td>
|
||||||
<td>{{e.timeDifferenceMinutes}}</td>
|
<td>{{e.remark}}</td>
|
||||||
<td>{{e.estimatedCompletionTimeString}}</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
@@ -37,51 +41,50 @@
|
|||||||
</view>
|
</view>
|
||||||
<view class="submit-bar">
|
<view class="submit-bar">
|
||||||
<button class="submit-button" @tap="_forcedRestingShow">刷新</button>
|
<button class="submit-button" @tap="_forcedRestingShow">刷新</button>
|
||||||
<button class="submit-button" :class="{'btn-disabled': !val1 || !pkId}" :disabled="disabled" @tap="toSure">确认</button>
|
<button class="submit-button" :class="{'btn-disabled': !val1 || !val2}" :disabled="disabled" @tap="toSure">确认</button>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import NavBar from '@/components/NavBar.vue'
|
import NavBar from '@/components/NavBar.vue'
|
||||||
import {forcedRestingShow, forcedRestingSubmit} from '@/utils/getData2.js'
|
import SearchBox from '@/components/SearchBox.vue'
|
||||||
import {dateTimeFtt} from '@/utils/utils.js'
|
import {callingResidueMaterialTaskShow, callingResidueMaterialTask} from '@/utils/getData2.js'
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
NavBar
|
NavBar,
|
||||||
|
SearchBox
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
val1: '',
|
val1: '',
|
||||||
|
val2: '',
|
||||||
dataList: [],
|
dataList: [],
|
||||||
pkId: '',
|
|
||||||
pkObj: {},
|
|
||||||
disabled: false
|
disabled: false
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created () {
|
created () {
|
||||||
this._forcedRestingShow()
|
this._callingResidueMaterialTaskShow()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
/** grid查询 */
|
/** grid查询 */
|
||||||
async _forcedRestingShow () {
|
async _callingResidueMaterialTaskShow () {
|
||||||
let res = await forcedRestingShow()
|
let res = await callingResidueMaterialTaskShow()
|
||||||
this.dataList = [...res]
|
this.dataList = [...res]
|
||||||
},
|
},
|
||||||
/** 确认 */
|
/** 确认 */
|
||||||
async toSure () {
|
async toSure () {
|
||||||
this.disabled = true
|
this.disabled = true
|
||||||
if (!this.val1 || !this.pkId) {
|
if (!this.val1 || !this.val2) {
|
||||||
this.disabled = false
|
this.disabled = false
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
let res = await forcedRestingSubmit(this.val1, this.pkId)
|
let res = await callingResidueMaterialTask(this.val1, this.val2)
|
||||||
this.disabled = false
|
this.disabled = false
|
||||||
this.pkId = ''
|
|
||||||
this.pkObj = {}
|
|
||||||
this.val1 = ''
|
this.val1 = ''
|
||||||
this._forcedRestingShow()
|
this.val2 = ''
|
||||||
|
this._callingResidueMaterialTaskShow()
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
title: res.message,
|
title: res.message,
|
||||||
icon: 'none'
|
icon: 'none'
|
||||||
@@ -89,10 +92,6 @@
|
|||||||
} catch (e) {
|
} catch (e) {
|
||||||
this.disabled = false
|
this.disabled = false
|
||||||
}
|
}
|
||||||
},
|
|
||||||
toCheck (e) {
|
|
||||||
this.pkId = this.pkId === e.group_id ? '' : e.group_id
|
|
||||||
this.pkObj = this.pkId === e.group_id ? e : {}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
16
utils/api.js
16
utils/api.js
@@ -1,16 +0,0 @@
|
|||||||
import request from './request.js'
|
|
||||||
// 登录
|
|
||||||
export const handLogin = (user, password) => request({
|
|
||||||
url:'mobile/auth/login',
|
|
||||||
data: {
|
|
||||||
username: user,
|
|
||||||
password: password
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
// 测试状态码报错接口
|
|
||||||
export const handRequest = () => request({
|
|
||||||
url:'getInfo/4',
|
|
||||||
data: {}
|
|
||||||
})
|
|
||||||
|
|
||||||
@@ -21,43 +21,6 @@ export const handLogin = (user, password) => request({
|
|||||||
password: password
|
password: password
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
// 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"
|
|
||||||
// }
|
|
||||||
// return res
|
|
||||||
// }
|
|
||||||
|
|
||||||
// 测试状态码报错接口
|
|
||||||
export const handRequest = () => request({
|
|
||||||
url:'getInfo/4',
|
|
||||||
data: {}
|
|
||||||
})
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 设备点检
|
* 设备点检
|
||||||
@@ -83,13 +46,6 @@ export const deviceCheckVerify = (code, user, remark, status) => request({
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
// 1.3打印机类型
|
|
||||||
export const virtualprintType = (url) => request1({
|
|
||||||
url: `${url}/` + 'api/pda/virtual/printType',
|
|
||||||
data: {}
|
|
||||||
})
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 强制静置
|
* 强制静置
|
||||||
*/
|
*/
|
||||||
@@ -106,3 +62,74 @@ export const forcedRestingSubmit = (stime, id) => request({
|
|||||||
group_id: id
|
group_id: id
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分拣排产
|
||||||
|
*/
|
||||||
|
// 显示工单/刷新
|
||||||
|
export const manualSortingOrders = () => request({
|
||||||
|
url:'api/pda/manualSorting/orders',
|
||||||
|
data: {}
|
||||||
|
})
|
||||||
|
// 开工
|
||||||
|
export const manualSortingProductionScheduling = (code, user) => request({
|
||||||
|
url:'api/pda/manualSorting/productionScheduling',
|
||||||
|
data: {
|
||||||
|
workorder_code: code,
|
||||||
|
username: user
|
||||||
|
}
|
||||||
|
})
|
||||||
|
// 完工
|
||||||
|
export const manualSortingProductionComplete = (code, user) => request({
|
||||||
|
url:'api/pda/manualSorting/productionComplete',
|
||||||
|
data: {
|
||||||
|
workorder_code: code,
|
||||||
|
username: user
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 剩料入库
|
||||||
|
*/
|
||||||
|
// 刷新
|
||||||
|
export const callingResidueMaterialTaskShow = () => request({
|
||||||
|
url:'api/pda/manualSorting/callingResidueMaterialTaskShow',
|
||||||
|
data: {}
|
||||||
|
})
|
||||||
|
// 确认
|
||||||
|
export const callingResidueMaterialTask = (code, qty) => request({
|
||||||
|
url:'api/pda/manualSorting/callingResidueMaterialTask',
|
||||||
|
data: {
|
||||||
|
vehicle_code: code,
|
||||||
|
qty: qty
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 托盘绑定
|
||||||
|
*/
|
||||||
|
// 确认
|
||||||
|
export const manualSortingBindingVehicle = (ocode, tcode) => request({
|
||||||
|
url:'api/pda/manualSorting/bindingVehicle',
|
||||||
|
data: {
|
||||||
|
origin_vehicle_code: ocode,
|
||||||
|
target_vehicle_code: tcode
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 包装入库
|
||||||
|
*/
|
||||||
|
// 刷新
|
||||||
|
export const manualSortingPackingTaskShow = () => request({
|
||||||
|
url:'api/pda/manualSorting/packingTaskShow',
|
||||||
|
data: {}
|
||||||
|
})
|
||||||
|
// 确认
|
||||||
|
export const manualSortingPackingTask = (code, qty) => request({
|
||||||
|
url:'/api/pda/manualSorting/packingTask',
|
||||||
|
data: {
|
||||||
|
vehicle_code: code,
|
||||||
|
qty: qty
|
||||||
|
}
|
||||||
|
})
|
||||||
Reference in New Issue
Block a user