材料站-退料优化
This commit is contained in:
parent
22e9a82bde
commit
209a950101
|
|
@ -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)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue