前端出库页面调整

This commit is contained in:
杨学谦 2025-10-11 16:45:19 +08:00
parent e74af4da82
commit 2c56587cae

View File

@ -2,46 +2,46 @@
<el-config-provider :locale="zhCn">
<el-container class="content">
<div class="work-area">
<fieldset class="search-area">
<el-form ref="outTaskRef" :model="outTaskEntity" :label-position="labelPosition" label-width="158px"
style="max-width: 100%" :rules="requestRules" status-icon>
<div style="display: flex; justify-content: space-between;">
<el-row>
<!-- <el-form-item label="出库类型" prop="outType">
<el-select-v2 style="width: 196px" v-model="outTaskEntity.outType" placeholder="请选择入库类型"
:options="outTypeOptions"></el-select-v2>
</el-form-item> -->
<el-form-item label="料号" prop="goodsId">
<el-input v-model="outTaskEntity.goodsId" @blur="getLackQty()" clearable/>
</el-form-item>
<el-form-item label="箱号" prop="vehicleId" v-if="outTaskEntity.outType !== 9">
<el-input v-model="outTaskEntity.vehicleId" clearable/>
</el-form-item>
<el-form-item label="数量" prop="needNum">
<el-input-number style="width: 196px" v-model.number="outTaskEntity.needNum"
controls-position="right" :min="1" clearable/>
</el-form-item>
<!-- <el-form-item label="原因" prop="reason" v-if="outTaskEntity.outType === 9">
<el-select-v2 style="width: 196px" v-model="outTaskEntity.reason" placeholder="请选择紧急出库原因"
:options="reasonOptions"></el-select-v2>
</el-form-item> -->
<el-form-item label="工单" prop="workOrder" v-if="outTaskEntity.reason === '缺料'">
<el-input v-model="outTaskEntity.workOrder" @blur="getLackQty()" clearable/>
</el-form-item>
</el-row>
<el-row>
<el-button type="primary"
style="height: 50px; width: 100px; margin: auto 5px auto 5px; font-size: large; color: black;"
@click="confirmOut()">确认出库
</el-button>
<el-button type="warning"
style="height: 50px; width: 100px; margin: auto 5px auto 5px; font-size: large; color: black;"
@click="clearInput()">清除输入
</el-button>
</el-row>
</div>
</el-form>
</fieldset>
<!-- <fieldset class="search-area">-->
<!-- <el-form ref="outTaskRef" :model="outTaskEntity" :label-position="labelPosition" label-width="158px"-->
<!-- style="max-width: 100%" :rules="requestRules" status-icon>-->
<!-- <div style="display: flex; justify-content: space-between;">-->
<!-- <el-row>-->
<!-- &lt;!&ndash; <el-form-item label="出库类型" prop="outType">-->
<!-- <el-select-v2 style="width: 196px" v-model="outTaskEntity.outType" placeholder="请选择入库类型"-->
<!-- :options="outTypeOptions"></el-select-v2>-->
<!-- </el-form-item> &ndash;&gt;-->
<!-- <el-form-item label="料号" prop="goodsId">-->
<!-- <el-input v-model="outTaskEntity.goodsId" @blur="getLackQty()" clearable/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="箱号" prop="vehicleId" v-if="outTaskEntity.outType !== 9">-->
<!-- <el-input v-model="outTaskEntity.vehicleId" clearable/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="数量" prop="needNum">-->
<!-- <el-input-number style="width: 196px" v-model.number="outTaskEntity.needNum"-->
<!-- controls-position="right" :min="1" clearable/>-->
<!-- </el-form-item>-->
<!-- &lt;!&ndash; <el-form-item label="原因" prop="reason" v-if="outTaskEntity.outType === 9">-->
<!-- <el-select-v2 style="width: 196px" v-model="outTaskEntity.reason" placeholder="请选择紧急出库原因"-->
<!-- :options="reasonOptions"></el-select-v2>-->
<!-- </el-form-item> &ndash;&gt;-->
<!-- <el-form-item label="工单" prop="workOrder" v-if="outTaskEntity.reason === '缺料'">-->
<!-- <el-input v-model="outTaskEntity.workOrder" @blur="getLackQty()" clearable/>-->
<!-- </el-form-item>-->
<!-- </el-row>-->
<!-- <el-row>-->
<!-- <el-button type="primary"-->
<!-- style="height: 50px; width: 100px; margin: auto 5px auto 5px; font-size: large; color: black;"-->
<!-- @click="confirmOut()">确认出库-->
<!-- </el-button>-->
<!-- <el-button type="warning"-->
<!-- style="height: 50px; width: 100px; margin: auto 5px auto 5px; font-size: large; color: black;"-->
<!-- @click="clearInput()">清除输入-->
<!-- </el-button>-->
<!-- </el-row>-->
<!-- </div>-->
<!-- </el-form>-->
<!-- </fieldset>-->
<!-- 修改confirm-area为竖直布局表单项两两一排 -->
<!-- 修改confirm-area为竖直布局表单项两两一排 -->
<div style="display: flex; margin-top: 10px;">
@ -230,25 +230,30 @@ let confirmEntities = reactive([
}
])
const confirmRules = reactive({})
let pauseGetPickFlag = ref(false)
//let pauseGetPickFlag = ref(false)
let hasDataTaskResult = ref(false) //
const route = useRoute()//
//
onMounted(() => {
nextTick(() => {
timer.value = setInterval(() => {
timerTask_1()
}, 1000)
startTimer() //
})
})
onBeforeUnmount(() => {
clearInterval(timer.value)
})
//
watch(() => route.path, (newVal, oldVal) => {
if (newVal === '/goodsOut') {
//
const startTimer = () => {
clearInterval(timer.value) //
timer.value = setInterval(() => {
timerTask_1()
}, 1000)
}, 2000) // 2
}
//
// watch
watch(() => route.path, (newVal, oldVal) => {
if (newVal === '/goodsOut') {
startTimer() //
} else {
clearInterval(timer.value)
}
@ -259,9 +264,9 @@ const timerTask_1 = () => {
}
//
const getTask = () => {
if (pauseGetPickFlag.value) {
return
}
// if (pauseGetPickFlag.value) {
// return
// }
const request = {
standId: STAND_ID,
userName: USER_NAME
@ -271,6 +276,16 @@ const getTask = () => {
const response = res.data
console.log(response)
if (response.code === 0) {
//
if (!hasDataTaskResult.value) {
//
hasDataTaskResult.value = true
clearInterval(timer.value)
timer.value = setInterval(() => {
timerTask_1()
}, 10000) // 10
}
const confirmVos = response.data
// ID
let childStandOrder = []
@ -326,18 +341,28 @@ const getTask = () => {
warningBox(`请注意!${found.childStandId}站台,剩余数量小于预警值,请检查并核对数量。`)
}
})
pauseGetPickFlag.value = true
} else if (response.code === 400) {
//
pauseGetPickFlag.value = true
//
if (hasDataTaskResult.value) {
//
hasDataTaskResult.value = false
clearInterval(timer.value)
timer.value = setInterval(() => {
timerTask_1()
}, 2000) // 2
}
warningBox(response.message)
}
}).catch(err => {
console.log(err)
pauseGetPickFlag.value = true
//
if (hasDataTaskResult.value) {
hasDataTaskResult.value = false
clearInterval(timer.value)
timer.value = setInterval(() => {
timerTask_1()
}, 2000) // 2
}
errorBox('请求错误,请检查完原因后刷新界面。')
})
}
@ -444,12 +469,14 @@ const confirmOrRelease = (index) => {
confirmCurrentTask(request, { timeout: 5000 }).then(res => {
const response = res.data
if (response.code === 0) {
clearConfirmEntity(index) //
//
pauseGetPickFlag.value = false
clearConfirmEntity(index)
ElMessage.success(response.message)
// 2
setTimeout(() => {
//
getTask()
}, 100)
} else if (response.code === 400) {
pauseGetPickFlag.value = false
warningBox(response.message)
} else {
//