This commit is contained in:
小小 2025-05-28 15:19:23 +08:00
commit 0a076c245a
3 changed files with 74 additions and 17 deletions

View File

@ -33,6 +33,13 @@
code.value = value.detail.value; code.value = value.detail.value;
emit('scan-change', value.detail.value); emit('scan-change', value.detail.value);
} }
const onSetValue = (value) => {
code.value = value;
}
defineExpose({
onSetValue
});
</script> </script>
<style> <style>

View File

@ -19,7 +19,8 @@
<uni-section title="中控" type="line"> <uni-section title="中控" type="line">
<uni-forms-item label="中控编号" required :name="['ebikeEcuInfo','ecuCode']" <uni-forms-item label="中控编号" required :name="['ebikeEcuInfo','ecuCode']"
:rules="[{ required: true, errorMessage: '请扫描或输入中控编号' }]"> :rules="[{ required: true, errorMessage: '请扫描或输入中控编号' }]">
<ecuCodeScan @scan-change="ecuCodeScanChange" :codeValue="ebikeInfo.ebikeEcuInfo.ecuCode" /> <ecuCodeScan @scan-change="ecuCodeScanChange" :codeValue="ebikeInfo.ebikeEcuInfo.ecuCode"
ref="ecuCodeScan_zk" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="中控序列号" required :name="['ebikeEcuInfo','ecuSN']" <uni-forms-item label="中控序列号" required :name="['ebikeEcuInfo','ecuSN']"
:rules="[{ required: true, errorMessage: '请输入中控序列号' }]"> :rules="[{ required: true, errorMessage: '请输入中控序列号' }]">
@ -35,13 +36,13 @@
<uni-forms-item label="电池编号" required :name="['ebikeBatteryInfo','batteryCode']" <uni-forms-item label="电池编号" required :name="['ebikeBatteryInfo','batteryCode']"
:rules="[{ required: true, errorMessage: '请扫描或输入电池编号' }]"> :rules="[{ required: true, errorMessage: '请扫描或输入电池编号' }]">
<scanCode @scan-change="batteryCodeScanChange" <scanCode @scan-change="batteryCodeScanChange"
:codeValue="ebikeInfo.ebikeBatteryInfo.batteryCode" /> :codeValue="ebikeInfo.ebikeBatteryInfo.batteryCode" ref="scanCode_dc" />
</uni-forms-item> </uni-forms-item>
</uni-section> </uni-section>
<uni-section title="头盔" type="line"> <uni-section title="头盔" type="line">
<uni-forms-item label="头盔编号" :name="['ebikeHelmetInfo','helmetCode']"> <uni-forms-item label="头盔编号" :name="['ebikeHelmetInfo','helmetCode']">
<scanCode @scan-change="helmetCodeScanChange" <scanCode @scan-change="helmetCodeScanChange" :codeValue="ebikeInfo.ebikeHelmetInfo.helmetCode"
:codeValue="ebikeInfo.ebikeHelmetInfo.helmetCode" /> ref="scanCode_tk" />
</uni-forms-item> </uni-forms-item>
</uni-section> </uni-section>
</uni-forms> </uni-forms>
@ -63,6 +64,9 @@
} from '@/utils/tools'; } from '@/utils/tools';
const ebikeInfoForm = ref(null); const ebikeInfoForm = ref(null);
const bikeCodeScanRef = ref(null); const bikeCodeScanRef = ref(null);
const ecuCodeScan_zk = ref(null);
const scanCode_dc = ref(null);
const scanCode_tk = ref(null);
const ebikeInfo = ref({ const ebikeInfo = ref({
bikeCode: '', bikeCode: '',
@ -172,21 +176,53 @@
// }, 1000); // }, 1000);
}; };
const ecuCodeScanChange = (data) => { const ecuCodeScanChange = (data) => {
ebikeInfo.value.ebikeEcuInfo.ecuCode = data["imei"]; if (!data["sn"]) return;
ebikeInfo.value.ebikeEcuInfo.ecuSN = data["sn"];
const params = {
"componentCode": data["sn"],
"componentType": "262711452730008" //
}
api.callOperateApi("ebikeComponent/validateComponentExistence", params).then(res => {
if (res.code == 200) {
if (res.data) {
ebikeInfo.value.ebikeEcuInfo.ecuCode = data["imei"];
ebikeInfo.value.ebikeEcuInfo.ecuSN = data["sn"];
} else {
ebikeInfo.value.ebikeEcuInfo.ecuCode = "";
ebikeInfo.value.ebikeEcuInfo.ecuSN = "";
ecuCodeScan_zk.value.onSetValue("");
showModelMessage("中控不在仓库中,请重新扫码或输入!");
}
} else {
ebikeInfo.value.ebikeEcuInfo.ecuCode = "";
ebikeInfo.value.ebikeEcuInfo.ecuSN = "";
ecuCodeScan_zk.value.onSetValue("");
showModelMessage("操作失败!");
}
})
}; };
const batteryCodeScanChange = (data) => { const batteryCodeScanChange = (data) => {
if (!data) return; if (!data) return;
api.callOperateApi("ebikeBatteryQrcode/checkbatteryCodeExistence?batteryCode=" + data, {}, const params = {
"get").then(res => { "componentCode": data,
"componentType": "262711452730000" //
}
api.callOperateApi("ebikeComponent/validateComponentExistence", params).then(res => {
if (res.code == 200) { if (res.code == 200) {
if (res.data > 0) { if (res.data) {
ebikeInfo.value.ebikeBatteryInfo.batteryCode = data; ebikeInfo.value.ebikeBatteryInfo.batteryCode = data;
} else { } else {
ebikeInfo.value.ebikeBatteryInfo.batteryCode = ""; ebikeInfo.value.ebikeBatteryInfo.batteryCode = "";
showModelMessage("电池二维码未生成,请重新扫码或输入!") scanCode_dc.value.onSetValue("");
showModelMessage("电池不在仓库中,请重新扫码或输入!");
} }
} else {
scanCode_dc.value.onSetValue("");
ebikeInfo.value.ebikeBatteryInfo.batteryCode = "";
showModelMessage("操作失败!");
} }
}) })
@ -194,16 +230,24 @@
const helmetCodeScanChange = (data) => { const helmetCodeScanChange = (data) => {
if (!data) return; if (!data) return;
api.callOperateApi("ebikeHelmetQrcode/checkhelmetCodeExistence?helmetCode=" + data, {}, const params = {
"get").then(res => { "componentCode": data,
"componentType": "262711452730001" //
}
api.callOperateApi("ebikeComponent/validateComponentExistence", params).then(res => {
if (res.code == 200) { if (res.code == 200) {
if (res.data > 0) { if (res.data > 0) {
ebikeInfo.value.ebikeHelmetInfo.helmetCode = data; ebikeInfo.value.ebikeHelmetInfo.helmetCode = data;
} else { } else {
ebikeInfo.value.ebikeHelmetInfo.helmetCode = ""; ebikeInfo.value.ebikeHelmetInfo.helmetCode = "";
scanCode_tk.value.onSetValue("");
// bikeCodeScanRef.value.onSetValue(""); // bikeCodeScanRef.value.onSetValue("");
showModelMessage("头盔二维码未生成,请重新扫码或输入!") showModelMessage("头盔不在仓库中,请重新扫码或输入!")
} }
} else {
scanCode_tk.value.onSetValue("");
ebikeInfo.value.ebikeHelmetInfo.helmetCode = "";
showModelMessage("操作失败!");
} }
}) })

View File

@ -33,7 +33,7 @@
<a-button <a-button
v-if="current == 2" v-if="current == 2"
style="margin-left: 8px" style="margin-left: 8px"
@click="prev" @click="next"
>完成</a-button> >完成</a-button>
<a-button <a-button
type="default" type="default"
@ -80,11 +80,17 @@ const next = () => {
switch (current.value) { switch (current.value) {
case 0: case 0:
formModelOperateAdd.value.formSave((bres, data) => { formModelOperateAdd.value.formSave((bres, data) => {
if(bres) current.value++; if (bres) current.value++;
}); });
break; break;
case 1: break; case 1:
case 2: break; formModel.value.formSave((bres, data) => {
if (bres) current.value++;
}); break;
case 2:
formModelOperateAdd.value.formSave((bres, data) => {
if (bres) current.value++;
}); break;
default: break default: break
} }
}; };