You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

131 lines
3.8 KiB

<template>
<view class="page-wraper">
<view class="">
<com-blank-view @goScan="goScan()"></com-blank-view>
</view>
</view>
<win-scan-pack ref="scanPopup" @getResult="getScanResult" headerType="HCMQ" title="叫料标签" :isShowHistory="false"></win-scan-pack>
<com-message ref="comMessageRef" />
</template>
<script setup lang="ts">
import { ref, getCurrentInstance, nextTick } from 'vue'
import { onLoad, onNavigationBarButtonTap, onPullDownRefresh } from '@dcloudio/uni-app'
import { issueRequestSubmit } from '@/api/request2.js'
import { calc } from '@/common/calc.js'
import { getBusinessType } from '@/common/record.js'
import { goHome, updateTitle, getRemoveOption, navigateBack, getCurrDateOneMonthsTimes } from '@/common/basic.js'
import { getDataSource } from '@/pages/issue/js/issue.js'
import comBlankView from '@/mycomponents/common/comBlankView.vue'
import jobDetailPopup from '@/mycomponents/job/jobDetailPopup.vue'
import comScanIssuePack from '@/pages/issue/coms/comScanIssuePack.vue'
import comIssueRequestCreator from '@/pages/issue/coms/comIssueRequestCreator.vue'
import winScanPack from '@/mycomponents/scan/winScanPack.vue'
const { proxy } = getCurrentInstance()
const jobContent = ref({}) // 任务内容
const subList = ref([]) // 接口返回的任务subList
const detailSource = ref({
subList: []
}) // 绑定在页面上的数据源
const detailOptions = ref([])
const scanOptions = ref([])
const requestList = ref([]) // 需求信息
const itemCodeTypeList = ref([])
const useOnTheWay = ref('FALSE')
const comIssueRequestPopupRef = ref()
const comMessageRef = ref()
const fromInventoryStatuses = ref('')
const toInventoryStatuses = ref('')
const scanPopup = ref()
onLoad((option) => {
const typeCode = 'Issue'
getBusinessType(typeCode, (res) => {
nextTick(() => {
if (res.success) {
itemCodeTypeList.value = res.itemCodeTypeList
useOnTheWay.value = res.useOnTheWay
fromInventoryStatuses.value = res.fromInventoryStatuses
toInventoryStatuses.value = res.toInventoryStatuses
goScan(true)
} else {
showErrorMessage(res.message)
}
})
})
})
const goScan = () => {
scanPopup.value.openScanPopup()
}
const getScanResult = (data) => {
detailSource.value = {
subList: []
}
const labelInfo = data.label
var data = {
productionLineCode: labelInfo.productionLineCode,
workStationCode: labelInfo.workStationCode,
itemCode: labelInfo.itemCode,
location: labelInfo.location,
qty: labelInfo.qty,
uom: labelInfo.uom,
packUnit: labelInfo.packUnit
}
detailSource.value.subList.push(data)
detailSource.value.warehouseCode = labelInfo.warehouseCode
detailSource.value.workshopCode = labelInfo.workshopCode
submit()
}
const setParams = () => {
detailSource.value.dueTime = getCurrDateOneMonthsTimes()
detailSource.value.isCallMaterialsLabel = 'TRUE'
return detailSource.value
}
const submit = () => {
proxy.$modal.loading('提交中....')
const params = setParams()
issueRequestSubmit(params)
.then((res) => {
uni.hideLoading()
if (res.data) {
showCommitSuccessMessage(`提交成功<br>生成发料申请[${res.data}]`)
} else {
showErrorMessage(`提交失败[${res.msg}]`)
}
})
.catch((error) => {
uni.hideLoading()
showErrorMessage(error)
})
}
const showCommitSuccessMessage = (hint) => {
comMessageRef.value.showSuccessMessage(hint, (res) => {
closeScanPopup()
goScan()
})
}
const closeScanPopup = () => {
scanPopup.value.closeScanPopup()
}
const showErrorMessage = (message) => {
comMessageRef.value.showErrorMessage(message, (res) => {
if (res) {
scanPopupGetFocus()
}
})
}
const scanPopupGetFocus = () => {
if (scanPopup.value != undefined) {
scanPopup.value.getfocus()
}
}
</script>
<style></style>