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.
243 lines
5.1 KiB
243 lines
5.1 KiB
|
3 weeks ago
|
<template>
|
||
|
|
<ifrm ref="ifrm">
|
||
|
|
<u-sticky offset-top="0">
|
||
|
|
<uni-forms ref="wrForm" class="formBox">
|
||
|
|
<uni-forms-item>
|
||
|
|
<input
|
||
|
|
class="uni-input-border"
|
||
|
|
v-model="processCardNo"
|
||
|
|
placeholder="请扫描流程卡号"
|
||
|
|
placeholder-class="input-placeholder"
|
||
|
|
@confirm="handleCardNoConfirm"
|
||
|
|
/>
|
||
|
|
</uni-forms-item>
|
||
|
|
<uni-forms-item>
|
||
|
|
<view class="bottom-input-row">
|
||
|
|
<view class="weight-input-wrapper">
|
||
|
|
<view class="input-box">
|
||
|
|
<input
|
||
|
|
class="input-field"
|
||
|
|
v-model="weight"
|
||
|
|
type="digit"
|
||
|
|
placeholder="重量 (克)"
|
||
|
|
placeholder-class="input-placeholder"
|
||
|
|
/>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
<button
|
||
|
|
class="submit-btn"
|
||
|
|
:class="{ disabled: !canSubmit }"
|
||
|
|
:disabled="!canSubmit"
|
||
|
|
@tap="handleSubmit"
|
||
|
|
>
|
||
|
|
提交
|
||
|
|
</button>
|
||
|
|
</view>
|
||
|
|
</uni-forms-item>
|
||
|
|
</uni-forms>
|
||
|
|
<!-- 信息显示区域 -->
|
||
|
|
<t-table style="margin-top: 20rpx">
|
||
|
|
<t-tr>
|
||
|
|
<t-td>车间订单号</t-td>
|
||
|
|
<t-td>{{ tableObj.ypCode }}</t-td>
|
||
|
|
</t-tr>
|
||
|
|
|
||
|
|
<t-tr>
|
||
|
|
<t-td>零件编码</t-td>
|
||
|
|
<t-td>{{ tableObj.partCode }}</t-td>
|
||
|
|
</t-tr>
|
||
|
|
<t-tr>
|
||
|
|
<t-td>零件名称</t-td>
|
||
|
|
<t-td>{{ tableObj.partName }}</t-td>
|
||
|
|
</t-tr>
|
||
|
|
<t-tr>
|
||
|
|
<t-td>流程卡号</t-td>
|
||
|
|
<t-td>{{ tableObj.cardNo }}</t-td>
|
||
|
|
</t-tr>
|
||
|
|
<t-tr>
|
||
|
|
<t-td>批次号</t-td>
|
||
|
|
<t-td>{{ tableObj.batchNo }}</t-td>
|
||
|
|
</t-tr>
|
||
|
|
<t-tr>
|
||
|
|
<t-td>数量</t-td>
|
||
|
|
<t-td>{{ tableObj.ypQty }}</t-td>
|
||
|
|
</t-tr>
|
||
|
|
</t-table>
|
||
|
|
</u-sticky>
|
||
|
|
</ifrm>
|
||
|
|
</template>
|
||
|
|
|
||
|
|
<script>
|
||
|
|
import ifrm from "@/pages/index/ifrm";
|
||
|
|
import tTable from "@/components/t-table/t-table.vue";
|
||
|
|
import tTh from "@/components/t-table/t-th.vue";
|
||
|
|
import tTr from "@/components/t-table/t-tr.vue";
|
||
|
|
import tTd from "@/components/t-table/t-td.vue";
|
||
|
|
export default {
|
||
|
|
components: {
|
||
|
|
ifrm,
|
||
|
|
tTable,
|
||
|
|
tTh,
|
||
|
|
tTr,
|
||
|
|
tTd,
|
||
|
|
},
|
||
|
|
data() {
|
||
|
|
return {
|
||
|
|
processCardNo: "",
|
||
|
|
weight: "",
|
||
|
|
tableObj: {},
|
||
|
|
orderInfo: {
|
||
|
|
orderNo: "",
|
||
|
|
materialCode: "",
|
||
|
|
materialName: "",
|
||
|
|
specification: "",
|
||
|
|
batch: "",
|
||
|
|
customerName: "",
|
||
|
|
plannedQuantity: "",
|
||
|
|
currentProcess: "",
|
||
|
|
currentStatus: "",
|
||
|
|
remarks: "",
|
||
|
|
},
|
||
|
|
};
|
||
|
|
},
|
||
|
|
computed: {
|
||
|
|
canSubmit() {
|
||
|
|
return this.processCardNo && this.weight;
|
||
|
|
},
|
||
|
|
},
|
||
|
|
methods: {
|
||
|
|
handleCardNoConfirm() {
|
||
|
|
if (this.processCardNo) {
|
||
|
|
// 自动聚焦到重量输入框(可选)
|
||
|
|
this.$u.api.queryCardNo({cardNo:this.processCardNo}).then((res) => {
|
||
|
|
this.tableObj = res.data;
|
||
|
|
});
|
||
|
|
}
|
||
|
|
},
|
||
|
|
// 处理提交
|
||
|
|
handleSubmit() {
|
||
|
|
if (!this.canSubmit) return;
|
||
|
|
|
||
|
|
// 提交称重数据
|
||
|
|
this.submitWeight();
|
||
|
|
},
|
||
|
|
|
||
|
|
// 提交称重数据
|
||
|
|
submitWeight() {
|
||
|
|
// 实际项目中这里应该调用API提交数据
|
||
|
|
uni.showLoading({
|
||
|
|
title: "提交中...",
|
||
|
|
});
|
||
|
|
|
||
|
|
setTimeout(() => {
|
||
|
|
uni.hideLoading();
|
||
|
|
let query_ = {
|
||
|
|
cardNo: this.processCardNo,
|
||
|
|
actualWeight: this.weight,
|
||
|
|
};
|
||
|
|
|
||
|
|
this.$u.api.getWeighing(query_).then((res) => {
|
||
|
|
uni.showToast({
|
||
|
|
title: "提交成功",
|
||
|
|
icon: "success",
|
||
|
|
});
|
||
|
|
this.processCardNo = "";
|
||
|
|
this.weight = "";
|
||
|
|
this.tableObj = {};
|
||
|
|
});
|
||
|
|
// if (this.processCardNo !== "PC99999") {
|
||
|
|
// uni.showToast({
|
||
|
|
// title: "提交成功",
|
||
|
|
// icon: "success",
|
||
|
|
// });
|
||
|
|
|
||
|
|
// // 清空输入
|
||
|
|
// setTimeout(() => {
|
||
|
|
// this.processCardNo = "";
|
||
|
|
// this.weight = "";
|
||
|
|
// }, 1500);
|
||
|
|
// }
|
||
|
|
}, 1000);
|
||
|
|
},
|
||
|
|
},
|
||
|
|
};
|
||
|
|
</script>
|
||
|
|
|
||
|
|
<style scoped>
|
||
|
|
/* 输入区域 */
|
||
|
|
|
||
|
|
.input-wrapper {
|
||
|
|
margin-bottom: 12px;
|
||
|
|
}
|
||
|
|
|
||
|
|
.input-box {
|
||
|
|
position: relative;
|
||
|
|
height: 50px;
|
||
|
|
background-color: #f8fafc;
|
||
|
|
border: 1px solid #e2e8f0;
|
||
|
|
border-radius: 10px;
|
||
|
|
padding-left: 40px;
|
||
|
|
padding-right: 12px;
|
||
|
|
display: flex;
|
||
|
|
align-items: center;
|
||
|
|
}
|
||
|
|
|
||
|
|
.input-icon {
|
||
|
|
position: absolute;
|
||
|
|
left: 14px;
|
||
|
|
top: 16px;
|
||
|
|
width: 18px;
|
||
|
|
height: 18px;
|
||
|
|
}
|
||
|
|
|
||
|
|
.icon {
|
||
|
|
width: 100%;
|
||
|
|
height: 100%;
|
||
|
|
}
|
||
|
|
|
||
|
|
.input-field {
|
||
|
|
flex: 1;
|
||
|
|
font-size: 16px;
|
||
|
|
color: #1d293d;
|
||
|
|
}
|
||
|
|
|
||
|
|
.input-placeholder {
|
||
|
|
color: #90a1b9;
|
||
|
|
font-size: 16px;
|
||
|
|
}
|
||
|
|
|
||
|
|
/* 重量输入和提交按钮行 */
|
||
|
|
.bottom-input-row {
|
||
|
|
display: flex;
|
||
|
|
gap: 10px;
|
||
|
|
margin-bottom: 12px;
|
||
|
|
}
|
||
|
|
|
||
|
|
.weight-input-wrapper {
|
||
|
|
flex: 1;
|
||
|
|
}
|
||
|
|
|
||
|
|
.submit-btn {
|
||
|
|
width: 88px;
|
||
|
|
height: 50px;
|
||
|
|
background-color: #155dfc;
|
||
|
|
border-radius: 10px;
|
||
|
|
color: #ffffff;
|
||
|
|
font-size: 16px;
|
||
|
|
font-weight: 500;
|
||
|
|
display: flex;
|
||
|
|
align-items: center;
|
||
|
|
justify-content: center;
|
||
|
|
box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.1),
|
||
|
|
0px 1px 2px 0px rgba(0, 0, 0, 0.1);
|
||
|
|
border: none;
|
||
|
|
padding: 0;
|
||
|
|
line-height: 50px;
|
||
|
|
}
|
||
|
|
|
||
|
|
.submit-btn.disabled {
|
||
|
|
opacity: 0.5;
|
||
|
|
}
|
||
|
|
|
||
|
|
</style>
|