材料站-退料优化

This commit is contained in:
bb_pan 2025-07-09 16:09:53 +08:00
parent 22e9a82bde
commit 209a950101
1 changed files with 40 additions and 110 deletions

View File

@ -103,22 +103,8 @@
@scanSuccess="handleScanSuccess" @scanSuccess="handleScanSuccess"
@scanError="handleScanError" @scanError="handleScanError"
/> />
<view class="table-list-item" v-if="queryParams.isBack">
<uni-row :gutter="24" style="display: flex; align-items: center"> <div class="table-list-item">
<uni-col :span="6">
<view> 设备编码 </view>
</uni-col>
<uni-col :span="12">
<view>
<uni-easyinput v-model="queryCodeParams.maCode" placeholder="请输入内容" />
</view>
</uni-col>
<uni-col :span="6">
<view class="coding-btn search-btn" @tap="onCodeSearch">编码检索</view>
</uni-col>
</uni-row>
</view>
<div class="table-list-item" v-else>
<uni-row :gutter="24" style="display: flex; align-items: center"> <uni-row :gutter="24" style="display: flex; align-items: center">
<uni-col :span="6"> <uni-col :span="6">
<view> 设备编码 </view> <view> 设备编码 </view>
@ -132,6 +118,7 @@
</uni-col> </uni-col>
</uni-row> </uni-row>
</div> </div>
<scroll-view scroll-y style="padding-bottom: 90rpx; height: 70vh"> <scroll-view scroll-y style="padding-bottom: 90rpx; height: 70vh">
<view class="table-list-item" v-for="(item, index) in codeDeviceList" :key="item.maId"> <view class="table-list-item" v-for="(item, index) in codeDeviceList" :key="item.maId">
<uni-row :gutter="24"> <uni-row :gutter="24">
@ -233,18 +220,18 @@ onLoad((opt) => {
// queryParamsTemp.value.id = queryParamsTemp.value.parentId // queryParamsTemp.value.id = queryParamsTemp.value.parentId
console.log('xxxxxxxx', queryParamsTemp.value) console.log('xxxxxxxx', queryParamsTemp.value)
queryCodeParams.value.typeId = queryParamsTemp.value.typeId queryCodeParams.value.typeId = queryParamsTemp.value.typeId
queryCodeParams.value.proId = queryParamsTemp.value.proId queryCodeParams.value.proId = queryParamsTemp.value.proId || queryParamsTemp.value.projectId
queryCodeParams.value.teamId = queryParamsTemp.value.teamId queryCodeParams.value.teamId = queryParamsTemp.value.teamId
queryParams.value = { ...queryParamsTemp.value } queryParams.value = { ...queryParamsTemp.value }
if (queryParamsTemp.value.isBack) { if (queryParamsTemp.value.isBack) {
getCodeList() // getCodeList() //
} else { } else {
codeDeviceList.value = queryParamsTemp.value.maCodeList || [] //
if (queryParamsTemp.value.maCodeList && queryParamsTemp.value.maCodeList.length > 0) {
allChecked.value = queryParamsTemp.value.maCodeList.every((e) => e.checked)
}
getCodeDeviceListData() getCodeDeviceListData()
} }
codeDeviceList.value = queryParamsTemp.value.maCodeList || [] //
if (queryParamsTemp.value.maCodeList && queryParamsTemp.value.maCodeList.length > 0) {
allChecked.value = queryParamsTemp.value.maCodeList.every((e) => e.checked)
}
}) })
onShow((opt) => { onShow((opt) => {
@ -274,25 +261,12 @@ const getCodeList = async () => {
const res = await getMachineByIdApi(params) const res = await getMachineByIdApi(params)
console.log('🚀 ~ getCodeList ~ res:', res) console.log('🚀 ~ getCodeList ~ res:', res)
if (res.code === 200 && res.data && res.data.length > 0) { if (res.code === 200 && res.data && res.data.length > 0) {
codeDeviceList.value = res.data.map((item) => { codeRange.value = res.data.map((item) => {
return { return {
...item, text: item.maCode,
checked: false, // value: item.maCode,
materialModel: item.typeName,
} }
}) })
// queryParamsTemp.value.maCodeList codeDeviceList.value
codeDeviceList.value = [
...new Map(
[...codeDeviceList.value, ...queryParamsTemp.value.maCodeList].map((item) => [
item.maId,
item,
]),
).values(),
]
//
allChecked.value = codeDeviceList.value.every((e) => e.checked)
console.log('🚀 ~ getCodeList ~ allChecked.value:', allChecked.value)
} }
} catch (error) { } catch (error) {
console.log('🚀 ~ getCodeList ~ error:', error) console.log('🚀 ~ getCodeList ~ error:', error)
@ -318,13 +292,7 @@ const getCodeDeviceListData = async () => {
} }
console.log('🚀 ~ getCodeDeviceListData ~ res:', res) console.log('🚀 ~ getCodeDeviceListData ~ res:', res)
// codeDeviceList.value.push(...res.data)
// if (codeDeviceList.value.length > 0) {
// codeDeviceList.value = codeDeviceList.value.map((e) => {
// return { ...e, checked: false, outType: 0, checked: false }
// })
// }
// total.value = res.total
setTimeout(() => { setTimeout(() => {
uni.hideLoading() uni.hideLoading()
}, 300) }, 300)
@ -347,7 +315,20 @@ const getCodeInfoData = async () => {
title: '加载中...', title: '加载中...',
mask: true, mask: true,
}) })
const res = await getCodeDeviceListAPI(queryCodeParams.value) let res = null
if (queryParamsTemp.value.isBack) {
res = await getMachineByIdApi(queryCodeParams.value)
} else {
res = await getCodeDeviceListAPI(queryCodeParams.value)
}
if (!res.data || !res.data.length) {
uni.hideLoading()
uni.showToast({
title: '暂无数据',
icon: 'none',
})
return
}
const newItem = { const newItem = {
...res.data[0], ...res.data[0],
checked: true, checked: true,
@ -430,61 +411,10 @@ const onHandleOutbound = async () => {
// //
const scanStart = () => { const scanStart = () => {
// handleQrCode('201811-00531')
if (scanQrCodeRef.value) { if (scanQrCodeRef.value) {
scanQrCodeRef.value.scanQrCode() scanQrCodeRef.value.scanQrCode()
} }
// uni.scanCode({
// success: async (res) => {
// console.log('🚀 ~ scanStart ~ res:', res)
// let qrCode = res.result
// qrCode = qrCode.includes('qrcode=') ? qrCode.split('qrcode=')[1] : qrCode
// console.log('🚀 ~ success: ~ qrCode:', qrCode)
// if (!qrCode) {
// uni.showToast({ title: '', icon: 'none' })
// } else {
// const params = { qrCode, typeId: queryParams.value.typeId }
// console.log('🚀 ~ success: ~ queryParams.value.isAddCode:', queryParams.value.isAddCode)
// try {
// const res = await getCodeScanAPI(params)
// console.log('🚀 ~ success: ~ res:', res)
// if (res.code === 200) {
// if (res.data && res.data.recordList.length > 0) {
// codeDeviceList.value.unshift(...res.data.recordList)
// //
// if (codeDeviceList.value.length > 0) {
// const seen = new Set()
// codeDeviceList.value = codeDeviceList.value.filter((item) => {
// if (!item.maCode || seen.has(item.maCode)) {
// uni.showToast({ title: '', icon: 'none' })
// return false
// }
// seen.add(item.maCode)
// return true
// })
// //materialModel
// codeDeviceList.value.forEach((item) => {
// item.materialName = item.typeName
// item.materialModel = item.typeModelName
// item.outType = 2 //
// item.checked = true //
// })
// allChecked.value = codeDeviceList.value.every((e) => e.checked)
// }
// } else {
// uni.showToast({ title: res.data.msg, icon: 'none', duration: 1500 })
// }
// } else {
// uni.showToast({ title: '', icon: 'none' })
// }
// } catch (error) {
// console.log('🚀 ~ success: ~ error:', error)
// }
// }
// },
// fail: (error) => {
// console.error(':', error.message)
// },
// })
} }
// RFID // RFID
@ -523,19 +453,19 @@ const handleQrCode = async (qrCode) => {
if (queryParamsTemp.value.isBack) { if (queryParamsTemp.value.isBack) {
res = await getMachine(params) res = await getMachine(params)
console.log('🚀 ~ handleQrCode ~ res:', res) console.log('🚀 ~ handleQrCode ~ res:', res)
if (res.data && res.data.length > 0) { const newItem = {
codeDeviceList.value.forEach((item) => { ...res.data[0],
const checkedItem = res.data.find((e) => e.maCode === item.maCode) checked: true,
console.log('🚀 ~ codeDeviceList.value.forEach ~ checkedItem:', checkedItem) outType: 0,
if (checkedItem) {
item.checked = true
uni.showToast({
title: `设备编码 ${item.maCode} 已勾选`,
icon: 'none',
})
}
})
} }
// maCode
const exists = codeDeviceList.value.some((item) => item.maCode === newItem.maCode)
if (exists) {
uni.showToast({ title: '设备已添加', icon: 'none' })
} else {
codeDeviceList.value.unshift(newItem)
}
allChecked.value = codeDeviceList.value.every((e) => e.checked)
return return
} else { } else {
res = await getCodeScanAPI(params) res = await getCodeScanAPI(params)
@ -559,7 +489,7 @@ const handleQrCode = async (qrCode) => {
item.materialName = item.typeName item.materialName = item.typeName
item.materialModel = item.typeModelName item.materialModel = item.typeModelName
item.outType = 2 // item.outType = 2 //
item.checked = true // item.checked = true //
}) })
allChecked.value = codeDeviceList.value.every((e) => e.checked) allChecked.value = codeDeviceList.value.every((e) => e.checked)
} }