为库区库位增加二维码显示

This commit is contained in:
yinjinlu-pc\尹金路 2024-09-08 16:25:29 +08:00
parent 7c8fec11d0
commit 622a46a1bb
4 changed files with 165 additions and 102 deletions

View File

@ -571,6 +571,7 @@ export default {
}, },
// //
handleView(row){ handleView(row){
debugger;
this.reset(); this.reset();
const vendorId = row.vendorId || this.ids const vendorId = row.vendorId || this.ids
getVendor(vendorId).then(response => { getVendor(vendorId).then(response => {

View File

@ -172,54 +172,65 @@
<el-dialog :title="title" :visible.sync="open" width="960px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="960px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="120px"> <el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row> <el-row>
<el-col :span="8"> <el-col :span="14">
<el-form-item label="库位编码" prop="areaCode"> <el-row>
<el-input v-model="form.areaCode" placeholder="请输入库位编码" /> <el-col :span="16">
</el-form-item> <el-form-item label="库位编码" prop="areaCode">
<el-input v-model="form.areaCode" placeholder="请输入库位编码" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label-width="80">
<el-switch v-model="autoGenFlag"
active-color="#13ce66"
active-text="自动生成"
@change="handleAutoGenChange(autoGenFlag)" v-if="optType != 'view'">
</el-switch>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="库位名称" prop="areaName">
<el-input v-model="form.areaName" placeholder="请输入库位名称" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="面积" prop="area">
<el-input-number :min="0" :step="1" :percision="2" v-model="form.area" placeholder="请输入面积" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="最大载重量" prop="maxLoa">
<el-input-number v-model="form.maxLoa" :step="1" :percision="2" placeholder="请输入最大载重量" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="是否启用" prop="enableFlag">
<el-radio-group v-model="form.enableFlag" disabled v-if="optType=='view'">
<el-radio
v-for="dict in dict.type.sys_yes_no"
:key="dict.value"
:label="dict.value"
>{{dict.label}}</el-radio>
</el-radio-group>
<el-radio-group v-model="form.enableFlag" v-else>
<el-radio
v-for="dict in dict.type.sys_yes_no"
:key="dict.value"
:label="dict.value"
>{{dict.label}}</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="10">
<el-form-item label-width="80"> <BarcodeImg :bussinessId="form.areaId" :bussinessCode="form.areaCode" barcodeType="AREA"></BarcodeImg>
<el-switch v-model="autoGenFlag"
active-color="#13ce66"
active-text="自动生成"
@change="handleAutoGenChange(autoGenFlag)" v-if="optType != 'view'">
</el-switch>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="库位名称" prop="areaName">
<el-input v-model="form.areaName" placeholder="请输入库位名称" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="面积" prop="area">
<el-input-number :min="0" :step="1" :percision="2" v-model="form.area" placeholder="请输入面积" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="最大载重量" prop="maxLoa">
<el-input-number v-model="form.maxLoa" :step="1" :percision="2" placeholder="请输入最大载重量" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="是否启用" prop="enableFlag">
<el-radio-group v-model="form.enableFlag" disabled v-if="optType=='view'">
<el-radio
v-for="dict in dict.type.sys_yes_no"
:key="dict.value"
:label="dict.value"
>{{dict.label}}</el-radio>
</el-radio-group>
<el-radio-group v-model="form.enableFlag" v-else>
<el-radio
v-for="dict in dict.type.sys_yes_no"
:key="dict.value"
:label="dict.value"
>{{dict.label}}</el-radio>
</el-radio-group>
</el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
@ -259,9 +270,11 @@
<script> <script>
import { listArea, getArea, delArea, addArea, updateArea, changeFrozenState } from "@/api/mes/wm/area"; import { listArea, getArea, delArea, addArea, updateArea, changeFrozenState } from "@/api/mes/wm/area";
import {genCode} from "@/api/system/autocode/rule" import {genCode} from "@/api/system/autocode/rule"
import BarcodeImg from "@/components/barcodeImg/index.vue"
export default { export default {
name: "Area", name: "Area",
dicts: ['sys_yes_no'], dicts: ['sys_yes_no'],
components: { BarcodeImg } ,
data() { data() {
return { return {
// //

View File

@ -116,32 +116,46 @@
<el-dialog :title="title" :visible.sync="open" width="960px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="960px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="140px"> <el-form ref="form" :model="form" :rules="rules" label-width="140px">
<el-row> <el-row>
<el-col :span="8"> <el-col :span="14">
<el-form-item label="库区编码" prop="locationCode"> <el-row>
<el-input v-model="form.locationCode" placeholder="请输入库区编码" /> <el-col :span="16">
</el-form-item> <el-form-item label="库区编码" prop="locationCode">
<el-input v-model="form.locationCode" placeholder="请输入库区编码" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label-width="80">
<el-switch v-model="autoGenFlag"
active-color="#13ce66"
active-text="自动生成"
@change="handleAutoGenChange(autoGenFlag)" v-if="optType != 'view'">
</el-switch>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="库区名称" prop="locationName">
<el-input v-model="form.locationName" placeholder="请输入库区名称" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="面积" prop="area">
<el-input-number :min="0" :step="1" :percision="2" v-model="form.area" placeholder="请输入面积" />
</el-form-item>
</el-col>
</el-row>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="10">
<el-form-item label-width="80"> <BarcodeImg :bussinessId="form.locationId" :bussinessCode="form.locationCode" barcodeType="LOCATION"></BarcodeImg>
<el-switch v-model="autoGenFlag"
active-color="#13ce66"
active-text="自动生成"
@change="handleAutoGenChange(autoGenFlag)" v-if="optType != 'view'">
</el-switch>
</el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-form-item label="库区名称" prop="locationName">
<el-input v-model="form.locationName" placeholder="请输入库区名称" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="面积" prop="area">
<el-input-number :min="0" :step="1" :percision="2" v-model="form.area" placeholder="请输入面积" />
</el-form-item>
</el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
@ -163,9 +177,11 @@
<script> <script>
import { listLocation, getLocation, delLocation, addLocation, updateLocation, changeFrozenState} from "@/api/mes/wm/location"; import { listLocation, getLocation, delLocation, addLocation, updateLocation, changeFrozenState} from "@/api/mes/wm/location";
import {genCode} from "@/api/system/autocode/rule" import {genCode} from "@/api/system/autocode/rule"
import BarcodeImg from "@/components/barcodeImg/index.vue"
export default { export default {
name: "Location", name: "Location",
dicts: ['sys_yes_no'], dicts: ['sys_yes_no'],
components: { BarcodeImg } ,
data() { data() {
return { return {
// //

View File

@ -130,26 +130,50 @@
<el-dialog :title="title" :visible.sync="open" width="960px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="960px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-row> <el-row>
<el-col :span="8"> <el-col :span="14">
<el-form-item label="仓库编码" prop="warehouseCode"> <el-row>
<el-input v-model="form.warehouseCode" placeholder="请输入仓库编码" /> <el-col :span="16">
</el-form-item> <el-form-item label="仓库编码" prop="warehouseCode">
<el-input v-model="form.warehouseCode" placeholder="请输入仓库编码" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label-width="80">
<el-switch v-model="autoGenFlag"
active-color="#13ce66"
active-text="自动生成"
@change="handleAutoGenChange(autoGenFlag)" v-if="optType != 'view'">
</el-switch>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="仓库名称" prop="warehouseName">
<el-input v-model="form.warehouseName" placeholder="请输入仓库名称" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="负责人" prop="charge">
<el-input v-model="form.charge" placeholder="请输入负责人" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="面积" prop="area">
<el-input-number :min="0" :step="1" :percision="2" v-model="form.area" placeholder="请输入面积" />
</el-form-item>
</el-col>
</el-row>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="10">
<el-form-item label-width="80"> <BarcodeImg :bussinessId="form.warehouseId" :bussinessCode="form.warehouseCode" barcodeType="WAREHOUSE"></BarcodeImg>
<el-switch v-model="autoGenFlag"
active-color="#13ce66"
active-text="自动生成"
@change="handleAutoGenChange(autoGenFlag)" v-if="optType != 'view'">
</el-switch>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="仓库名称" prop="warehouseName">
<el-input v-model="form.warehouseName" placeholder="请输入仓库名称" />
</el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="位置" prop="location"> <el-form-item label="位置" prop="location">
@ -157,18 +181,7 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row>
<el-col :span="12">
<el-form-item label="面积" prop="area">
<el-input-number :min="0" :step="1" :percision="2" v-model="form.area" placeholder="请输入面积" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="负责人" prop="charge">
<el-input v-model="form.charge" placeholder="请输入负责人" />
</el-form-item>
</el-col>
</el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="备注" prop="remark"> <el-form-item label="备注" prop="remark">
@ -189,8 +202,10 @@
<script> <script>
import { listWarehouse, getWarehouse, delWarehouse, addWarehouse, updateWarehouse,changeFrozenState } from "@/api/mes/wm/warehouse"; import { listWarehouse, getWarehouse, delWarehouse, addWarehouse, updateWarehouse,changeFrozenState } from "@/api/mes/wm/warehouse";
import {genCode} from "@/api/system/autocode/rule" import {genCode} from "@/api/system/autocode/rule"
import BarcodeImg from "@/components/barcodeImg/index.vue"
export default { export default {
name: "Warehouse", name: "Warehouse",
components: { BarcodeImg } ,
data() { data() {
return { return {
// //
@ -225,7 +240,23 @@ export default {
charge: null, charge: null,
}, },
// //
form: {}, form: {
warehouseId: null,
warehouseCode: null,
warehouseName: null,
location: null,
area: null,
charge: null,
remark: null,
attr1: null,
attr2: null,
attr3: null,
attr4: null,
createBy: null,
createTime: null,
updateBy: null,
updateTime: null
},
// //
rules: { rules: {
warehouseCode: [ warehouseCode: [
@ -302,9 +333,10 @@ export default {
}, },
// //
handleView(row){ handleView(row){
debugger;
this.reset(); this.reset();
const warehouseId = row.warehouseId || this.ids const warehouseId = row.warehouseId || this.ids
getWarehouse(warehouseId).then(response => { getWarehouse(warehouseId).then(response => {
this.form = response.data; this.form = response.data;
this.open = true; this.open = true;
this.title = "查看仓库"; this.title = "查看仓库";
@ -377,6 +409,7 @@ export default {
handleLocation(warehouseId){ handleLocation(warehouseId){
this.$router.push({ path: '/mes/wm/location/index', query: { warehouseId: warehouseId || 0 ,optType: this.optType} }) this.$router.push({ path: '/mes/wm/location/index', query: { warehouseId: warehouseId || 0 ,optType: this.optType} })
}, },
// //
handleAutoGenChange(autoGenFlag){ handleAutoGenChange(autoGenFlag){
if(autoGenFlag){ if(autoGenFlag){