国际化改造

This commit is contained in:
zhang
2024-12-21 10:23:29 +08:00
parent ab400b409f
commit f762ea48e1
4 changed files with 117 additions and 102 deletions

View File

@@ -5,6 +5,7 @@ export default {
'code': 'Vehicle number', 'code': 'Vehicle number',
'name': 'Vehicle name', 'name': 'Vehicle name',
'type': 'Vehicle type', 'type': 'Vehicle type',
'info': 'Vehicle information',
'num': 'Number of vehicles', 'num': 'Number of vehicles',
'material_code': 'material code', 'material_code': 'material code',
'material_spec': 'material specification', 'material_spec': 'material specification',

View File

@@ -5,6 +5,7 @@ export default {
'code': 'Número de vehículo', 'code': 'Número de vehículo',
'name': 'Nombre del vehículo', 'name': 'Nombre del vehículo',
'type': 'Tipo de vehículo', 'type': 'Tipo de vehículo',
'info': 'Información del vehículo',
'num': 'Número de vehículos', 'num': 'Número de vehículos',
'material_code': 'Codificación de materiales', 'material_code': 'Codificación de materiales',
'material_spec': 'Especificaciones de materiales', 'material_spec': 'Especificaciones de materiales',

View File

@@ -6,6 +6,7 @@ export default {
'name': '载具名称', 'name': '载具名称',
'type': '载具类型', 'type': '载具类型',
'num': '载具数量', 'num': '载具数量',
'info': '载具信息',
'material_code': '物料编码', 'material_code': '物料编码',
'material_spec': '物料规格', 'material_spec': '物料规格',
'pcsn': '批次', 'pcsn': '批次',

View File

@@ -11,36 +11,37 @@
label-width="80px" label-width="80px"
label-suffix=":" label-suffix=":"
> >
<el-form-item label="载具类型"> <el-form-item :label="$t('vehicle.dialog.type')">
<el-select <el-select
v-model="query.vehicle_type" v-model="query.vehicle_type"
clearable clearable
size="mini" size="mini"
placeholder="请选择" :label="$t('vehicle.placeholder.select')"
class="filter-item" class="filter-item"
style="width: 180px;" style="width: 180px;"
@change="hand" @change="hand"
> >
<el-option <el-option
v-for="item in dict.storagevehicle_type" v-for="item in dict.storagevehicle_type"
:key="item.value"
:label="item.label" :label="item.label"
:value="item.value" :value="item.value"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="载具号"> <el-form-item :label="$t('vehicle.placeholder.code')">
<el-input <el-input
v-model="query.vehicle_code" v-model="query.vehicle_code"
clearable clearable
size="mini" size="mini"
placeholder="载具号" :placeholder="$t('vehicle.placeholder.code')"
style="width: 110px;" style="width: 110px;"
class="filter-item" class="filter-item"
@keyup.enter.native="crud.toQuery" @keyup.enter.native="crud.toQuery"
/> />
</el-form-item> </el-form-item>
<rrOperation/> <rrOperation />
</el-form> </el-form>
</div> </div>
@@ -54,103 +55,107 @@
size="mini" size="mini"
@click="printView" @click="printView"
> >
打印 {{ $t('vehicle.placeholder.print_view') }}
</el-button> </el-button>
</crudOperation> </crudOperation>
<!--表单组件--> <!--表单组件-->
<el-dialog <el-dialog
:close-on-click-modal="false" :close-on-click-modal="false"
:visible.sync="dialogVisible" :visible.sync="dialogVisible"
title="载具物料信息" :title="$t('vehicle.placeholder.info')"
width="540px" width="540px"
@close="materiValueCancel()" @close="materiValueCancel()"
> >
<el-form ref="form" :model="materialForm" :rules="rules" size="mini" label-width="110px"> <el-form ref="form" :model="materialForm" :rules="rules" size="mini" label-width="110px">
<el-form-item label="载具编码" prop="vehicle_code"> <el-form-item :label="$t('vehicle.placeholder.code')" prop="vehicle_code">
<el-input v-model="materialForm.vehicle_code" disabled style="width: 370px;"/> <el-input v-model="materialForm.vehicle_code" disabled style="width: 370px;" />
</el-form-item> </el-form-item>
<el-form-item label="物料编码" prop="material_code"> <el-form-item label="$t('vehicle.dialog.material_code')" prop="material_code">
<template slot-scope="scope"> <template slot-scope="">
<el-input v-model="materialForm.material_code" clearable style="width: 370px" <el-input
@clear="materialForm.material_id='',materialForm.material_code='',materialForm.material_name='',materialForm.material_spec=''"> v-model="materialForm.material_code"
<el-button slot="append" icon="el-icon-plus" @click="queryMater"/> clearable
style="width: 370px"
@clear="materialForm.material_id='',materialForm.material_code='',materialForm.material_name='',materialForm.material_spec=''"
>
<el-button slot="append" icon="el-icon-plus" @click="queryMater" />
</el-input> </el-input>
</template> </template>
</el-form-item> </el-form-item>
<el-form-item label="物料规格" prop="material_spec"> <el-form-item :label="$t('vehicle.dialog.material_spec')" prop="material_spec">
<el-input v-model="materialForm.material_spec" disabled style="width: 370px;"/> <el-input v-model="materialForm.material_spec" disabled style="width: 370px;" />
</el-form-item> </el-form-item>
<el-form-item label="批 次" prop="pcsn"> <el-form-item :label="$t('vehicle.dialog.pcsn')" prop="pcsn">
<el-input v-model="materialForm.pcsn" clearable style="width: 370px;"/> <el-input v-model="materialForm.pcsn" clearable style="width: 370px;" />
</el-form-item> </el-form-item>
<el-form-item label="物料数量" prop="qty"> <el-form-item :label="$t('vehicle.dialog.qty')" prop="qty">
<el-input v-model="materialForm.qty" clearable style="width: 370px;"/> <el-input v-model="materialForm.qty" clearable style="width: 370px;" />
</el-form-item> </el-form-item>
<el-form-item label="冻结数量" prop="frozen_qty"> <el-form-item :label="$t('vehicle.dialog.frozen_qty')" prop="frozen_qty">
<el-input v-model="materialForm.frozen_qty" clearable style="width: 370px;"/> <el-input v-model="materialForm.frozen_qty" clearable style="width: 370px;" />
</el-form-item> </el-form-item>
<el-form-item label="流程实例" prop="proc_inst_id"> <el-form-item :label="$t('vehicle.dialog.proc_inst_id')" prop="proc_inst_id">
<el-input v-model="materialForm.proc_inst_id" clearable style="width: 370px;"/> <el-input v-model="materialForm.proc_inst_id" clearable style="width: 370px;" />
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="text" @click="materiValueCancel()">取消</el-button> <el-button type="text" @click="materiValueCancel()">{{ $t('vehicle.dialog.cancel') }}</el-button>
<el-button type="primary" @click="materiValueSubmit()">确认</el-button> <el-button type="primary" @click="materiValueSubmit()">{{ $t('vehicle.dialog.confirm') }}</el-button>
</div> </div>
</el-dialog> </el-dialog>
<el-dialog <el-dialog
:close-on-click-modal="false" :close-on-click-modal="false"
:visible.sync="pointMVisible" :visible.sync="pointMVisible"
title="载具信息" :title="$t('vehicle.dialog.info')"
width="540px" width="540px"
@close="materiValueCancel()" @close="materiValueCancel()"
> >
<el-form ref="form" :model="updateForm" :rules="rules" size="mini" label-width="110px"> <el-form ref="form" :model="updateForm" :rules="rules" size="mini" label-width="110px">
<el-form-item label="载具编号" prop="vehicle_code"> <el-form-item :label="$t('vehicle.dialog.code')" prop="vehicle_code">
<template slot-scope="scope"> <template slot-scope="">
<el-input v-model="updateForm.vehicle_code" clearable/> <el-input v-model="updateForm.vehicle_code" clearable />
</template> </template>
</el-form-item> </el-form-item>
<el-form-item label="载具重量(g)" prop="vehicle_weight"> <el-form-item :label="$t('vehicle.dialog.vehicle_weight')" prop="vehicle_weight">
<el-input-number v-model="updateForm.vehicle_weight" clearable style="width: 370px;"/> <el-input-number v-model="updateForm.vehicle_weight" clearable style="width: 370px;" />
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="text" @click="materiValueCancel()">取消</el-button> <el-button type="text" @click="materiValueCancel()">{{ $t('vehicle.dialog.cancel') }}</el-button>
<el-button type="primary" @click="pointMateriSubmit()">确认</el-button> <el-button type="primary" @click="pointMateriSubmit()">{{ $t('vehicle.dialog.confirm') }}</el-button>
</div> </div>
</el-dialog> </el-dialog>
<el-dialog <el-dialog
:before-close="crud.cancelCU" :before-close="crud.cancelCU"
:close-on-click-modal="false" :close-on-click-modal="false"
title="打印配置" :title="$t('vehicle.dialog.print_set')"
:visible.sync="printVisible" :visible.sync="printVisible"
width="450px" width="450px"
> >
<el-form ref="form" :model="printForm" size="mini" label-width="150px"> <el-form ref="form" :model="printForm" size="mini" label-width="150px">
<el-form-item label="纸张高度(mm)" prop="pageh"> <el-form-item :label="$t('vehicle.dialog.pageh')" prop="pageh">
<el-input v-model="printForm.pageh" :precision="0" style="width: 150px;"/> <el-input v-model="printForm.pageh" :precision="0" style="width: 150px;" />
</el-form-item> </el-form-item>
<el-form-item label="纸张宽度(mm)" prop="pagew"> <el-form-item :label="$t('vehicle.dialog.pagew')" prop="pagew">
<el-input v-model="printForm.pagew" :precision="0" style="width: 150px;"/> <el-input v-model="printForm.pagew" :precision="0" style="width: 150px;" />
</el-form-item> </el-form-item>
<el-form-item label="页边距top(mm)" prop="pagetop"> <el-form-item :label="$t('vehicle.dialog.pagetop')" prop="pagetop">
<el-input v-model="printForm.pagetop" :precision="0" style="width: 150px;"/> <el-input v-model="printForm.pagetop" :precision="0" style="width: 150px;" />
</el-form-item> </el-form-item>
<el-form-item label="页边距right(mm)" prop="pageright"> <el-form-item :label="$t('vehicle.dialog.pageright')" prop="pageright">
<el-input v-model="printForm.pageright" :precision="0" style="width: 150px;"/> <el-input v-model="printForm.pageright" :precision="0" style="width: 150px;" />
</el-form-item> </el-form-item>
<el-form-item label="页边距down(mm)" prop="pagedown"> <el-form-item :label="$t('vehicle.dialog.pagedown')" prop="pagedown">
<el-input v-model="printForm.pagedown" :precision="0" style="width: 150px;"/> <el-input v-model="printForm.pagedown" :precision="0" style="width: 150px;" />
</el-form-item> </el-form-item>
<el-form-item label="页边距left(mm)" prop="pageleft"> <el-form-item :label="$t('vehicle.dialog.pageleft')" prop="pageleft">
<el-input v-model="printForm.pageleft" :precision="0" style="width: 150px;"/> <el-input v-model="printForm.pageleft" :precision="0" style="width: 150px;" />
</el-form-item> </el-form-item>
<br> <br>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="info" @click="printClose">取消</el-button> <el-button type="info" @click="printClose">{{ $t('vehicle.dialog.cancel') }}</el-button>
<el-button :loading="crud.cu === 2" type="primary" @click="print">打印</el-button> <el-button :loading="crud.cu === 2" type="primary" @click="print">{{ $t('vehicle.placeholder.print_view') }}</el-button>
</div> </div>
</el-dialog> </el-dialog>
<el-dialog <el-dialog
@@ -161,49 +166,50 @@
width="450px" width="450px"
> >
<el-form ref="form" :model="form" :rules="rules" size="mini" label-width="100px"> <el-form ref="form" :model="form" :rules="rules" size="mini" label-width="100px">
<el-form-item label="载具类型" prop="vehicle_type"> <el-form-item :label="$t('vehicle.dialog.type')" prop="vehicle_type">
<el-select <el-select
v-model="form.vehicle_type" v-model="form.vehicle_type"
clearable clearable
size="mini" size="mini"
placeholder="请选择" :placeholder="$t('vehicle.placeholder.select')"
class="filter-item" class="filter-item"
style="width: 250px;" style="width: 250px;"
@change="getVehicle" @change="getVehicle"
> >
<el-option <el-option
v-for="item in dict.storagevehicle_type" v-for="item in dict.storagevehicle_type"
:key="item.value"
:label="item.label" :label="item.label"
:value="item.para1" :value="item.para1"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<br> <br>
<el-form-item label="起始载具号" prop="vehicle_code"> <el-form-item :label="$t('vehicle.dialog.code')" prop="vehicle_code">
<el-input v-model="form.vehicle_code" :disabled="true" style="width: 250px;"/> <el-input v-model="form.vehicle_code" :disabled="true" style="width: 250px;" />
</el-form-item> </el-form-item>
<el-form-item label="载具数量" prop="num"> <el-form-item :label="$t('vehicle.dialog.num')" prop="num">
<el-input-number v-model="form.num" :precision="0" style="width: 150px;"/> <el-input-number v-model="form.num" :precision="0" style="width: 150px;" />
</el-form-item> </el-form-item>
<el-form-item label="高度(mm)" prop="h"> <el-form-item :label="$t('vehicle.placeholder.height')" prop="h">
<el-input-number v-model="form.h" :precision="0" style="width: 150px;"/> <el-input-number v-model="form.h" :precision="0" style="width: 150px;" />
</el-form-item> </el-form-item>
<el-form-item label="宽度(mm)" prop="w"> <el-form-item :label="$t('vehicle.placeholder.width')" prop="w">
<el-input-number v-model="form.w" :precision="0" style="width: 150px;"/> <el-input-number v-model="form.w" :precision="0" style="width: 150px;" />
</el-form-item> </el-form-item>
<el-form-item label="深度(mm)" prop="l"> <el-form-item :label="$t('vehicle.placeholder.long')" prop="l">
<el-input-number v-model="form.l" :precision="0" style="width: 150px;"/> <el-input-number v-model="form.l" :precision="0" style="width: 150px;" />
</el-form-item> </el-form-item>
<el-form-item label="重量(g)" prop="weight"> <el-form-item :label="$t('vehicle.dialog.vehicle_weight')" prop="weight">
<el-input-number v-model="form.weight" :precision="0" style="width: 150px;"/> <el-input-number v-model="form.weight" :precision="0" style="width: 150px;" />
</el-form-item> </el-form-item>
<el-form-item label="是否超限" prop="overstruct_type"> <el-form-item :label="$t('vehicle.dialog.isover_limit')" prop="overstruct_type">
<el-select <el-select
v-model="form.overstruct_type" v-model="form.overstruct_type"
style="width: 150px" style="width: 150px"
clearable clearable
size="mini" size="mini"
placeholder="超限类型" :placeholder="$t('vehicle.dialog.limit_type')"
class="filter-item" class="filter-item"
> >
<el-option <el-option
@@ -214,18 +220,18 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item v-if="form.overstruct_type !=='0'" label="超限货位" prop="occupystruct_qty"> <el-form-item v-if="form.overstruct_type !=='0'" :label="$t('vehicle.dialog.overstruct_type')" prop="occupystruct_qty">
<el-input-number v-model="form.occupystruct_qty" :precision="0" style="width: 150px;"/> <el-input-number v-model="form.occupystruct_qty" :precision="0" style="width: 150px;" />
</el-form-item> </el-form-item>
<el-form-item label="是否启用"> <el-form-item label="$t('vehicle.dialog.is_enable')">
<el-radio v-model="form.is_used" label="0"></el-radio> <el-radio v-model="form.is_used" label="0">{{ $t('vehicle.dialog.no') }}</el-radio>
<el-radio v-model="form.is_used" label="1"></el-radio> <el-radio v-model="form.is_used" label="1">{{ $t('vehicle.dialog.yes') }}</el-radio>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="info" @click="crud.cancelCU">取消</el-button> <el-button type="info" @click="crud.cancelCU">{{ $t('vehicle.dialog.cancel') }}</el-button>
<el-button :loading="crud.cu === 2" type="primary" @click="crud.submitCU">生成</el-button> <el-button :loading="crud.cu === 2" type="primary" @click="crud.submitCU">{{ $t('vehicle.dialog.print') }}</el-button>
<el-button type="primary" @click="addAndprint">生成并打印</el-button> <el-button type="primary" @click="addAndprint">{{ $t('vehicle.placeholder.sc_print') }}</el-button>
</div> </div>
</el-dialog> </el-dialog>
<!--表格渲染--> <!--表格渲染-->
@@ -237,22 +243,22 @@
style="width: 100%;" style="width: 100%;"
@selection-change="crud.selectionChangeHandler" @selection-change="crud.selectionChangeHandler"
> >
<el-table-column type="selection" width="55"/> <el-table-column type="selection" width="55" />
<el-table-column prop="vehicle_type" label="载具类型"> <el-table-column prop="vehicle_type" :label="$t('vehicle.dialog.type')">
<template slot-scope="scope"> <template slot-scope="scope">
{{ dict.label.storagevehicle_type[scope.row.vehicle_type] }} {{ dict.label.storagevehicle_type[scope.row.vehicle_type] }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="vehicle_code" label="载具编码"> <el-table-column prop="vehicle_code" :label="$t('vehicle.dialog.code')">
<template slot-scope="scope"> <template slot-scope="scope">
<el-link type="warning" @click="toView(scope.row.vehicle_code)">{{ scope.row.vehicle_code }}</el-link> <el-link type="warning" @click="toView(scope.row.vehicle_code)">{{ scope.row.vehicle_code }}</el-link>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="vehicle_name" label="载具名称"/> <el-table-column prop="vehicle_name" :label="$t('vehicle.dialog.name')" />
<el-table-column prop="l" label="深度"/> <el-table-column prop="l" :label="$t('vehicle.dialog.long')" />
<el-table-column prop="w" label="宽度"/> <el-table-column prop="w" :label="$t('vehicle.dialog.width')" />
<el-table-column prop="h" label="高度"/> <el-table-column prop="h" :label="$t('vehicle.dialog.height')" />
<el-table-column label="是否启用" align="center" prop="is_used"> <el-table-column :label="$t('vehicle.dialog.is_enable')" align="center" prop="is_used">
<template slot-scope="scope"> <template slot-scope="scope">
<el-switch <el-switch
v-model="scope.row.is_used" v-model="scope.row.is_used"
@@ -262,18 +268,23 @@
/> />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="update_name" label="创建人"/> <el-table-column prop="update_name" :label="$t('vehicle.dialog.update_name')" />
<el-table-column prop="update_time" label="创建时间"/> <el-table-column prop="update_time" :label="$t('vehicle.dialog.update_time')" />
<el-table-column <el-table-column
v-permission="['admin','storagevehicleinfo:edit','storagevehicleinfo:del']" v-permission="['admin','storagevehicleinfo:edit','storagevehicleinfo:del']"
label="操作" :label="$t('vehicle.dialog.operate')"
width="200px" width="200px"
align="center" align="center"
fixed="right" fixed="right"
> >
<template slot-scope="scope"> <template slot-scope="scope">
<el-button icon="el-icon-position" type="text" class="filter-item" size="mini" <el-button
@click="updateweight(scope.row)">修改 icon="el-icon-position"
type="text"
class="filter-item"
size="mini"
@click="updateweight(scope.row)"
>{{ $t('vehicle.dialog.update') }}
</el-button> </el-button>
<udOperation <udOperation
@@ -292,20 +303,21 @@
:mater-opt-code="materType" :mater-opt-code="materType"
@setMaterValue="setMaterValue" @setMaterValue="setMaterValue"
/> />
<pagination/> <pagination />
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import crudStoragevehicleinfo from './vehicle' import crudStoragevehicleinfo from './vehicle'
import CRUD, {crud, form, header, presenter} from '@crud/crud' import CRUD, { crud, form, header, presenter } from '@crud/crud'
import rrOperation from '@crud/RR.operation' import rrOperation from '@crud/RR.operation'
import crudOperation from '@crud/CRUD.operation' import crudOperation from '@crud/CRUD.operation'
import udOperation from '@crud/UD.operation' import udOperation from '@crud/UD.operation'
import pagination from '@crud/Pagination' import pagination from '@crud/Pagination'
import {getLodop} from '@/assets/js/lodop/LodopFuncs' import { getLodop } from '@/assets/js/lodop/LodopFuncs'
import MaterDtl from './MaterDialog' import MaterDtl from './MaterDialog'
import i18n from '@/i18n'
const defaultForm = { const defaultForm = {
vehicle_code: null, vehicle_code: null,
@@ -329,16 +341,16 @@ const defaultForm = {
} }
export default { export default {
name: 'Storagevehicleinfo', name: 'Storagevehicleinfo',
dicts: ['storagevehicle_type', "VEHICLE_OVER_TYPE"], dicts: ['storagevehicle_type', 'VEHICLE_OVER_TYPE'],
components: {pagination, crudOperation, rrOperation, udOperation, MaterDtl}, components: { pagination, crudOperation, rrOperation, udOperation, MaterDtl },
mixins: [presenter(), header(), form(defaultForm), crud()], mixins: [presenter(), header(), form(defaultForm), crud()],
cruds() { cruds() {
return CRUD({ return CRUD({
title: '载具', title: i18n.t('vehicle.title'),
url: 'api/bmVehicleInfo', url: 'api/bmVehicleInfo',
idField: 'vehicle_code', idField: 'vehicle_code',
sort: 'vehicle_code,desc', sort: 'vehicle_code,desc',
crudMethod: {...crudStoragevehicleinfo}, crudMethod: { ...crudStoragevehicleinfo },
optShow: { optShow: {
add: true, add: true,
edit: false, edit: false,
@@ -378,23 +390,23 @@ export default {
permission: {}, permission: {},
rules: { rules: {
vehicle_code: [ vehicle_code: [
{required: true, message: '不能为空', trigger: 'blur'} { required: true, message: this.$t('vehicle.msg.isNotEmpty'), trigger: 'blur' }
], ],
is_delete: [ is_delete: [
{required: true, message: '不能为空', trigger: 'blur'} { required: true, message: this.$t('vehicle.msg.isNotEmpty'), trigger: 'blur' }
], ],
is_used: [ is_used: [
{required: true, message: '不能为空', trigger: 'blur'} { required: true, message: this.$t('vehicle.msg.isNotEmpty'), trigger: 'blur' }
], ],
vehicle_type: [ vehicle_type: [
{required: true, message: '不能为空', trigger: 'blur'} { required: true, message: this.$t('vehicle.msg.isNotEmpty'), trigger: 'blur' }
], ],
overstruct_type: [ overstruct_type: [
{required: true, message: '不能为空', trigger: 'blur'} { required: true, message: this.$t('vehicle.msg.isNotEmpty'), trigger: 'blur' }
], ],
num: [ num: [
{required: true, message: '不能为空', trigger: 'blur'}, { required: true, message: this.$t('vehicle.msg.isNotEmpty'), trigger: 'blur' },
{validator: numberOne} { validator: numberOne }
] ]
} }
} }
@@ -459,8 +471,8 @@ export default {
pagedown: '50mm', pagedown: '50mm',
pageright: '30mm', pageright: '30mm',
pageleft: '8mm' pageleft: '8mm'
}, }
this.printVisible = true this.printVisible = true
}, },
printClose() { printClose() {
this.printVisible = false this.printVisible = false