限制新增弹框必填项必填,补充KPI国际化

This commit is contained in:
猫猫guowen
2025-08-19 14:40:47 +08:00
parent 0e9da3259f
commit ce3d083c6d
17 changed files with 175 additions and 41 deletions

View File

@@ -34,7 +34,10 @@ export default {
placeholder: {
formatId: '请输入条码类型id',
trayCode: '请输入条码'
}
},
// 表单验证提示
formatIdRequired: '条码类型不能为空', // 条码类型不能为空
trayCodeRequired: '条码不能为空' // 条码不能为空
},
traycodeFormat: {
id: 'ID',
@@ -1006,7 +1009,9 @@ export default {
// 表单校验提示
fidRequired: 'fid不能为空',
useableRequired: '是否可用不能为空'
useableRequired: '是否可用不能为空',
supplierNoRequired: '供应商编号不能为空',
supplierNameRequired: '供应商名称不能为空'
},
// *************物料管理***************
@@ -1107,7 +1112,9 @@ export default {
unbindProduct: '删除物料',
bindSuccess: '绑定成功',
unbindSuccess: '解绑成功',
selectProduct: '选择物料'
selectProduct: '选择物料',
portNameRequired: '点位名称不能为空', // 点位名称不能为空
portTypeRequired: '点位分类不能为空' // 点位分类不能为空
},
// *************库存操作记录***************
@@ -1948,6 +1955,11 @@ export default {
textDeleteDetailsConfirm1: '是否确认删除容器物料明细编号为"',
textDeleteDetailsConfirm2: '"的数据项?',
//--------------表单验证提示--------------
containerIdRequired: '容器编号不能为空', // 容器编号不能为空
portNameRequired: '点位名称不能为空', // 点位名称不能为空
statusRequired: '容器状态不能为空', // 容器状态不能为空
//--------------其他--------------
lblWidthSearch: '68px',
lblWidthDialog: '80px',
@@ -3176,6 +3188,14 @@ export default {
textChartCargoSpace: '货位分析',
textValue: '数量',
// 货位状态国际化 - 对应后台返回的中文状态
statusEmpty: '空货位', // 空货位
statusFull: '满货位', // 满货位
statusInboundAllocated: '入库分配', // 入库分配
statusOutboundAllocated: '出库分配', // 出库分配
statusInboundNeedCheck: '入库需盘点', // 入库需盘点
statusOutboundNeedCheck: '出库需盘点', // 出库需盘点
lblWidthSearch: '68px'
},
@@ -3846,7 +3866,9 @@ export default {
addSuccess: '新增成功',
editSuccess: '修改成功',
deleteSuccess: '删除成功',
deleteConfirm: '是否确认删除客户编号为"{ids}"的数据项?'
deleteConfirm: '是否确认删除客户编号为"{ids}"的数据项?',
customerNameRequired: '客户名称不能为空', // 客户名称不能为空
useableRequired: '是否可用不能为空' // 是否可用不能为空
},
viewsMain: {
systemTitle: '福莱瑞达管理系统',

View File

@@ -34,7 +34,10 @@ export default {
placeholder: {
formatId: '请输入条码类型id',
trayCode: '请输入条码'
}
},
// 表单验证提示
formatIdRequired: '条码类型不能为空', // 条码类型不能为空
trayCodeRequired: '条码不能为空' // 条码不能为空
},
traycodeFormat: {
id: 'ID',
@@ -1006,7 +1009,9 @@ export default {
// 表单校验提示
fidRequired: 'fid不能为空',
useableRequired: '是否可用不能为空'
useableRequired: '是否可用不能为空',
supplierNoRequired: '供应商编号不能为空',
supplierNameRequired: '供应商名称不能为空'
},
// *************物料管理***************
@@ -1107,7 +1112,9 @@ export default {
unbindProduct: '删除物料',
bindSuccess: '绑定成功',
unbindSuccess: '解绑成功',
selectProduct: '选择物料'
selectProduct: '选择物料',
portNameRequired: '点位名称不能为空', // 点位名称不能为空
portTypeRequired: '点位分类不能为空' // 点位分类不能为空
},
// *************库存操作记录***************
@@ -1948,6 +1955,11 @@ export default {
textDeleteDetailsConfirm1: '是否确认删除容器物料明细编号为"',
textDeleteDetailsConfirm2: '"的数据项?',
//--------------表单验证提示--------------
containerIdRequired: '容器编号不能为空', // 容器编号不能为空
portNameRequired: '点位名称不能为空', // 点位名称不能为空
statusRequired: '容器状态不能为空', // 容器状态不能为空
//--------------其他--------------
lblWidthSearch: '68px',
lblWidthDialog: '80px',
@@ -3176,6 +3188,14 @@ export default {
textChartCargoSpace: '货位分析',
textValue: '数量',
// 货位状态国际化 - 对应后台返回的中文状态
statusEmpty: '空货位', // 空货位
statusFull: '满货位', // 满货位
statusInboundAllocated: '入库分配', // 入库分配
statusOutboundAllocated: '出库分配', // 出库分配
statusInboundNeedCheck: '入库需盘点', // 入库需盘点
statusOutboundNeedCheck: '出库需盘点', // 出库需盘点
lblWidthSearch: '68px'
},
@@ -3846,7 +3866,9 @@ export default {
addSuccess: '新增成功',
editSuccess: '修改成功',
deleteSuccess: '删除成功',
deleteConfirm: '是否确认删除客户编号为"{ids}"的数据项?'
deleteConfirm: '是否确认删除客户编号为"{ids}"的数据项?',
customerNameRequired: '客户名称不能为空', // 客户名称不能为空
useableRequired: '是否可用不能为空' // 是否可用不能为空
},
viewsMain: {
systemTitle: '福莱瑞达管理系统',

View File

@@ -34,7 +34,10 @@ export default {
placeholder: {
formatId: '请输入条码类型id',
trayCode: '请输入条码'
}
},
// 表单验证提示
formatIdRequired: '条码类型不能为空', // 条码类型不能为空
trayCodeRequired: '条码不能为空' // 条码不能为空
},
traycodeFormat: {
id: 'ID',
@@ -1006,7 +1009,9 @@ export default {
// 表单校验提示
fidRequired: 'fid不能为空',
useableRequired: '是否可用不能为空'
useableRequired: '是否可用不能为空',
supplierNoRequired: '供应商编号不能为空',
supplierNameRequired: '供应商名称不能为空'
},
// *************物料管理***************
@@ -1107,7 +1112,9 @@ export default {
unbindProduct: '删除物料',
bindSuccess: '绑定成功',
unbindSuccess: '解绑成功',
selectProduct: '选择物料'
selectProduct: '选择物料',
portNameRequired: '点位名称不能为空', // 点位名称不能为空
portTypeRequired: '点位分类不能为空' // 点位分类不能为空
},
// *************库存操作记录***************
@@ -1948,6 +1955,11 @@ export default {
textDeleteDetailsConfirm1: '是否确认删除容器物料明细编号为"',
textDeleteDetailsConfirm2: '"的数据项?',
//--------------表单验证提示--------------
containerIdRequired: '容器编号不能为空', // 容器编号不能为空
portNameRequired: '点位名称不能为空', // 点位名称不能为空
statusRequired: '容器状态不能为空', // 容器状态不能为空
//--------------其他--------------
lblWidthSearch: '68px',
lblWidthDialog: '80px',
@@ -3176,6 +3188,14 @@ export default {
textChartCargoSpace: '货位分析',
textValue: '数量',
// 货位状态国际化 - 对应后台返回的中文状态
statusEmpty: '空货位', // 空货位
statusFull: '满货位', // 满货位
statusInboundAllocated: '入库分配', // 入库分配
statusOutboundAllocated: '出库分配', // 出库分配
statusInboundNeedCheck: '入库需盘点', // 入库需盘点
statusOutboundNeedCheck: '出库需盘点', // 出库需盘点
lblWidthSearch: '68px'
},
@@ -3846,7 +3866,9 @@ export default {
addSuccess: '新增成功',
editSuccess: '修改成功',
deleteSuccess: '删除成功',
deleteConfirm: '是否确认删除客户编号为"{ids}"的数据项?'
deleteConfirm: '是否确认删除客户编号为"{ids}"的数据项?',
customerNameRequired: '客户名称不能为空', // 客户名称不能为空
useableRequired: '是否可用不能为空' // 是否可用不能为空
},
viewsMain: {
systemTitle: '福莱瑞达管理系统',

View File

@@ -129,7 +129,7 @@
<!-- 添加或修改客户管理对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<!-- <el-form-item label="ID" prop="id">
<el-input v-model="form.id" placeholder="请输入ID" />
</el-form-item> -->
@@ -266,6 +266,12 @@ export default {
customerNo: [
{ required: true, message: this.$t('basCustomer.customerNoRequired'), trigger: "blur" }
],
customerName: [
{ required: true, message: this.$t('basCustomer.customerNameRequired'), trigger: "blur" } // 客户名称不能为空
],
useable: [
{ required: true, message: this.$t('basCustomer.useableRequired'), trigger: "blur" } // 是否可用不能为空
],
}
}
},
@@ -385,3 +391,10 @@ export default {
}
}
</script>
<style scoped>
/* 统一表单控件宽度 */
.el-select,
.el-input {
width: 100%;
}
</style>

View File

@@ -144,7 +144,7 @@
<!-- 添加或修改物料管理对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px" style="max-height: 500px; overflow-y: auto;">
<el-form ref="form" :model="form" :rules="rules" label-width="100px" style="max-height: 500px; overflow-y: auto;">
<el-form-item :label="$t('BasProduct.productId')" prop="productId"> <!-- 物料编码 -->
<el-input v-model="form.productId" :placeholder="$t('BasProduct.inputProductId')" />
</el-form-item>

View File

@@ -372,6 +372,12 @@ export default {
id: [
{ required: true, message: this.$t('BasSupplier.fidRequired'), trigger: "blur" } // fid不能为空
],
supplierNo: [
{ required: true, message: this.$t('BasSupplier.supplierNoRequired'), trigger: "blur" } // 供应商编号不能为空
],
supplierName: [
{ required: true, message: this.$t('BasSupplier.supplierNameRequired'), trigger: "blur" } // 供应商名称不能为空
],
useable: [
{ required: true, message: this.$t('BasSupplier.useableRequired'), trigger: "blur" } // 是否可用不能为空
],

View File

@@ -217,7 +217,7 @@
<!-- 添加或修改库存信息对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<!-- 货位ID -->
<el-form-item :label="$t('cargoSpace.cargoSpaceId')" prop="cargoSpaceId">
<el-input v-model="form.cargoSpaceId" :placeholder="$t('cargoSpace.placeholderCargoSpaceId')" />
@@ -554,4 +554,4 @@ export default {
.el-input {
width: 100%;
}
</style>
</style>

View File

@@ -93,7 +93,11 @@
<!-- 点位名称 -->
<el-table-column :label="$t('bas_ContainerManagement.portName')" align="left" prop="portName" />
<!-- 容器状态 -->
<el-table-column :label="$t('bas_ContainerManagement.status')" align="left" prop="status" />
<el-table-column :label="$t('bas_ContainerManagement.status')" align="left" prop="status">
<template slot-scope="scope">
<dict-tag :options="dict.type.stock_status" :value="scope.row.status"/>
</template>
</el-table-column>
<!-- 物料种类 -->
<el-table-column :label="$t('bas_ContainerManagement.productTypeQuantity')" align="right" prop="productTypeQuantity" />
<!-- 容量 -->
@@ -162,7 +166,7 @@
</el-select>
</el-form-item>
<!-- 状态 -->
<el-form-item :label="$t('bas_ContainerManagement.status')" prop="portName">
<el-form-item :label="$t('bas_ContainerManagement.status')" prop="status">
<el-select v-model="form.status" :placeholder="$t('bas_ContainerManagement.placeholderStatus')" clearable>
<el-option
v-for="status in dict.type.stock_status.slice(0, 2)"
@@ -172,10 +176,7 @@
</el-option>
</el-select>
</el-form-item>
<!-- 操作人 -->
<el-form-item :label="$t('bas_ContainerManagement.operationMan')" prop="operationMan">
<el-input v-model="form.operationMan" :placeholder="$t('bas_ContainerManagement.placeholderOperationMan')" />
</el-form-item>
<!-- 操作人字段已移除,由后台自动获取当前登录用户 -->
</el-form>
<div slot="footer" class="dialog-footer">
<!-- 【确定】按钮 -->
@@ -235,6 +236,15 @@ export default {
form: {},
// 表单校验
rules: {
containerId: [
{ required: true, message: this.$t('bas_ContainerManagement.containerIdRequired'), trigger: "blur" } // 容器编号不能为空
],
portName: [
{ required: true, message: this.$t('bas_ContainerManagement.portNameRequired'), trigger: "blur" } // 点位名称不能为空
],
status: [
{ required: true, message: this.$t('bas_ContainerManagement.statusRequired'), trigger: "blur" } // 容器状态不能为空
]
},
// 弹出框容器编号是否可编辑
containerIdIsEnabled: true,
@@ -347,6 +357,8 @@ export default {
if (valid) {
// 标题:修改容器管理
if (this.title === this.$t('bas_ContainerManagement.editContainerItem')) {
// 移除操作人字段,由后台自动获取当前登录用户
delete this.form.operationMan;
updateContainer(this.form).then(response => {
// 提示信息:修改成功
this.$modal.msgSuccess(this.$t('bas_ContainerManagement.editSuccessInfo'))
@@ -357,10 +369,11 @@ export default {
//@@@
this.form.productTypeQuantity = '3';
this.form.capacity = 10;
// 移除操作人字段,由后台自动获取当前登录用户
delete this.form.operationMan;
addContainer(this.form).then(response => {
// 提示信息:新增成功
this.$modal.msgSuccess(this.$t('bas_ContainerManagement.addSuccessInfo'))
// console.log(this.form.containerId + this.form.portName +this.form.operationMan);
this.open = false
this.getList()
})
@@ -389,3 +402,10 @@ export default {
}
}
</script>
<style scoped>
/* 统一表单控件宽度 */
.el-select,
.el-input {
width: 100%;
}
</style>

View File

@@ -323,7 +323,14 @@ export default {
// 表单参数
form: {},
// 表单校验
rules: {}
rules: {
portName: [
{ required: true, message: this.$t('BasPort.portNameRequired'), trigger: "blur" } // 点位名称不能为空
],
portType: [
{ required: true, message: this.$t('BasPort.portTypeRequired'), trigger: "blur" } // 点位分类不能为空
]
}
}
},
created() {

View File

@@ -214,6 +214,12 @@ export default {
form: {},
// 表单校验
rules: {
formatId: [
{ required: true, message: this.$t('traycode.formatIdRequired'), trigger: "blur" } // 条码类型不能为空
],
trayCode: [
{ required: true, message: this.$t('traycode.trayCodeRequired'), trigger: "blur" } // 条码不能为空
]
}
}
},

View File

@@ -178,7 +178,7 @@
<!-- 添加或修改条码生成规则对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-form-item :label="$t('traycodeFormat.barcodeFormat')" prop="barcodeFormat">
<el-input v-model="form.barcodeFormat" :placeholder="$t('traycodeFormat.placeholder.barcodeFormat')" />
</el-form-item>
@@ -446,4 +446,4 @@ export default {
.el-input {
width: 100%;
}
</style>
</style>

View File

@@ -111,6 +111,18 @@ export default {
this.updateChart();
}
,
/** 状态码转换为国际化文本 */
getStatusText(statusCode) {
const statusMap = {
'1': this.$t('KPIAnalysis_CargoSpace.statusEmpty'),
'2': this.$t('KPIAnalysis_CargoSpace.statusFull'),
'3': this.$t('KPIAnalysis_CargoSpace.statusInboundAllocated'),
'4': this.$t('KPIAnalysis_CargoSpace.statusOutboundAllocated'),
'5': this.$t('KPIAnalysis_CargoSpace.statusInboundNeedCheck'),
'6': this.$t('KPIAnalysis_CargoSpace.statusOutboundNeedCheck')
};
return statusMap[statusCode] || statusCode;
},
/** 更新图表数据 */
updateChart() {
console.log('chartData:', this.chartData);
@@ -167,7 +179,7 @@ export default {
},
xAxis: {
type: 'category',
data: this.chartData.data.map(item => item.status),
data: this.chartData.data.map(item => this.getStatusText(item.status)),
axisLabel: {
interval: 0,
rotate: 0