feat(recordInbound): 完善入库记录表单验证和字段配置
- 替换物料编码输入组件为禁用状态的文本输入框 - 为表单添加验证规则和字段名配置 - 添加提交按钮并实现表单验证功能 - 清理无用代码和注释
This commit is contained in:
@@ -14,18 +14,24 @@
|
||||
<uni-forms
|
||||
ref="baseForm"
|
||||
:modelValue="baseFormData"
|
||||
:rules="valiFormData"
|
||||
label-position="top"
|
||||
label-width="120"
|
||||
>
|
||||
<uni-forms-item label="物料编码" required>
|
||||
<uni-combox
|
||||
<uni-forms-item label="物料编码" name="materialCode" required>
|
||||
<!-- <uni-combox
|
||||
:candidates="candidates"
|
||||
placeholder="请选择物料编码"
|
||||
v-model="baseFormData.materialCode"
|
||||
></uni-combox>
|
||||
></uni-combox> -->
|
||||
<uni-easyinput
|
||||
v-model="baseFormData.materialName"
|
||||
placeholder="请输入物料编码"
|
||||
:disabled="true"
|
||||
/>
|
||||
</uni-forms-item>
|
||||
|
||||
<uni-forms-item label="物料名称" required>
|
||||
<uni-forms-item label="物料名称" name="materialName">
|
||||
<uni-easyinput
|
||||
v-model="baseFormData.materialName"
|
||||
placeholder="请输入物料名称"
|
||||
@@ -33,15 +39,15 @@
|
||||
/>
|
||||
</uni-forms-item>
|
||||
|
||||
<uni-forms-item label="标号" required>
|
||||
<uni-forms-item label="标号" name="type">
|
||||
<uni-easyinput
|
||||
v-model="baseFormData.label"
|
||||
v-model="baseFormData.type"
|
||||
placeholder="请输入标号"
|
||||
:disabled="true"
|
||||
/>
|
||||
</uni-forms-item>
|
||||
|
||||
<uni-forms-item label="供应商名称" required>
|
||||
<uni-forms-item label="供应商名称" name="supplierName">
|
||||
<uni-easyinput
|
||||
v-model="baseFormData.supplierName"
|
||||
placeholder="请输入供应商名称"
|
||||
@@ -49,14 +55,14 @@
|
||||
/>
|
||||
</uni-forms-item>
|
||||
|
||||
<uni-forms-item label="库位编码" required>
|
||||
<uni-forms-item label="库位编码" name="locationCode" required>
|
||||
<uni-easyinput
|
||||
v-model="baseFormData.locationCode"
|
||||
placeholder="请输入库位编码"
|
||||
/>
|
||||
</uni-forms-item>
|
||||
|
||||
<uni-forms-item label="库位名称" required>
|
||||
<uni-forms-item label="库位名称" name="locationName">
|
||||
<uni-easyinput
|
||||
v-model="baseFormData.locationName"
|
||||
placeholder="请输入库位名称"
|
||||
@@ -64,7 +70,7 @@
|
||||
/>
|
||||
</uni-forms-item>
|
||||
|
||||
<uni-forms-item label="仓库编码" required>
|
||||
<uni-forms-item label="仓库编码" name="warehouseCode" required>
|
||||
<uni-easyinput
|
||||
v-model="baseFormData.warehouseCode"
|
||||
placeholder="请输入仓库编码"
|
||||
@@ -72,41 +78,42 @@
|
||||
/>
|
||||
</uni-forms-item>
|
||||
|
||||
<uni-forms-item label="入库类型" required>
|
||||
<uni-forms-item label="入库类型" name="transportType" required>
|
||||
<uni-easyinput
|
||||
v-model="baseFormData.transportType"
|
||||
placeholder="请输入入库类型"
|
||||
/>
|
||||
</uni-forms-item>
|
||||
|
||||
<uni-forms-item label="入库数量" required>
|
||||
<uni-forms-item label="入库数量" name="quantity" required>
|
||||
<uni-easyinput
|
||||
v-model="baseFormData.quantity"
|
||||
placeholder="请输入入库数量"
|
||||
/>
|
||||
</uni-forms-item>
|
||||
|
||||
<uni-forms-item label="批次号" required>
|
||||
<uni-forms-item label="批次号" name="batchNo" required>
|
||||
<uni-easyinput
|
||||
v-model="baseFormData.batchNo"
|
||||
placeholder="请输入批次号"
|
||||
/>
|
||||
</uni-forms-item>
|
||||
|
||||
<uni-forms-item label="炉号" required>
|
||||
<uni-forms-item label="炉号" name="ovenNo">
|
||||
<uni-easyinput
|
||||
v-model="baseFormData.ovenNo"
|
||||
placeholder="请输入炉号"
|
||||
/>
|
||||
</uni-forms-item>
|
||||
|
||||
<uni-forms-item label="操作员" required>
|
||||
<uni-forms-item label="操作员" name="operator">
|
||||
<uni-easyinput
|
||||
v-model="baseFormData.operator"
|
||||
placeholder="请输入操作员"
|
||||
/>
|
||||
</uni-forms-item>
|
||||
</uni-forms>
|
||||
<button type="primary" @click="submit('customForm')">提交</button>
|
||||
</view>
|
||||
</uni-section>
|
||||
</view>
|
||||
@@ -119,88 +126,100 @@ export default {
|
||||
return {
|
||||
// 基础表单数据
|
||||
baseFormData: {
|
||||
name: "",
|
||||
age: "",
|
||||
introduction: "",
|
||||
sex: 2,
|
||||
hobby: [5],
|
||||
datetimesingle: 1627529992399,
|
||||
materialCode: "",
|
||||
materialName: "",
|
||||
type: "",
|
||||
transportType: "",
|
||||
supplierName: "",
|
||||
locationCode: "",
|
||||
locationName: "",
|
||||
warehouseCode: "",
|
||||
quantity: null,
|
||||
batchNo: "",
|
||||
stoveCode: "",
|
||||
operator: "",
|
||||
},
|
||||
// 校验表单数据
|
||||
valiFormData: {
|
||||
name: "",
|
||||
age: "",
|
||||
introduction: "",
|
||||
materialCode: "",
|
||||
locationCode: "",
|
||||
warehouseCode: "",
|
||||
transportType: "",
|
||||
quantity: "",
|
||||
batchNo: "",
|
||||
},
|
||||
// 校验规则
|
||||
rules: {
|
||||
name: {
|
||||
materialCode: {
|
||||
rules: [
|
||||
{
|
||||
required: true,
|
||||
errorMessage: "姓名不能为空",
|
||||
errorMessage: "物料编码不能为空",
|
||||
},
|
||||
],
|
||||
},
|
||||
age: {
|
||||
locationCode: {
|
||||
rules: [
|
||||
{
|
||||
required: true,
|
||||
errorMessage: "年龄不能为空",
|
||||
errorMessage: "库位编码不能为空",
|
||||
},
|
||||
],
|
||||
},
|
||||
warehouseCode: {
|
||||
rules: [
|
||||
{
|
||||
required: true,
|
||||
errorMessage: "仓库编码不能为空",
|
||||
},
|
||||
],
|
||||
},
|
||||
transportType: {
|
||||
rules: [
|
||||
{
|
||||
required: true,
|
||||
errorMessage: "入库类型不能为空",
|
||||
},
|
||||
],
|
||||
},
|
||||
quantity: {
|
||||
rules: [
|
||||
{
|
||||
required: true,
|
||||
errorMessage: "入库数量不能为空",
|
||||
},
|
||||
{
|
||||
format: "number",
|
||||
errorMessage: "年龄只能输入数字",
|
||||
errorMessage: "入库数量只能输入数字",
|
||||
},
|
||||
],
|
||||
},
|
||||
batchNo: {
|
||||
rules: [
|
||||
{
|
||||
required: true,
|
||||
errorMessage: "批次号不能为空",
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
|
||||
candidates: ['北京', '南京', '东京', '武汉', '天津', '上海', '海口'],
|
||||
// candidates: ['北京', '南京', '东京', '武汉', '天津', '上海', '海口'],
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
// 处理表单排列切换
|
||||
alignment() {
|
||||
if (this.current === 0) return "left";
|
||||
if (this.current === 1) return "top";
|
||||
return "left";
|
||||
},
|
||||
},
|
||||
computed: {},
|
||||
onLoad() {},
|
||||
onReady() {},
|
||||
methods: {
|
||||
onClickItem(e) {
|
||||
console.log(e);
|
||||
this.current = e.currentIndex;
|
||||
},
|
||||
add() {
|
||||
this.dynamicLists.push({
|
||||
label: "域名",
|
||||
rules: [
|
||||
{
|
||||
required: true,
|
||||
errorMessage: "域名项必填",
|
||||
},
|
||||
],
|
||||
id: Date.now(),
|
||||
});
|
||||
},
|
||||
del(id) {
|
||||
let index = this.dynamicLists.findIndex((v) => v.id === id);
|
||||
this.dynamicLists.splice(index, 1);
|
||||
},
|
||||
// 提交表单
|
||||
submit(ref) {
|
||||
this.$refs[ref]
|
||||
this.$refs.baseForm
|
||||
.validate()
|
||||
.then((res) => {
|
||||
console.log("success", res);
|
||||
uni.showToast({
|
||||
title: `校验通过`,
|
||||
});
|
||||
console.log("表单数据信息:", res);
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log("err", err);
|
||||
console.log("表单错误信息:", err);
|
||||
});
|
||||
},
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user