This commit is contained in:
朱文强 2023-10-25 16:44:11 +08:00
父節點 d51328c836
當前提交 60c6131cfe
共有 21 個文件被更改,包括 195 次插入107 次删除

查看文件

@ -2,7 +2,7 @@
# @Author: zwq
# @Date: 2023-08-17 15:10:53
# @LastEditors: zwq
# @LastEditTime: 2023-10-11 13:40:44
# @LastEditTime: 2023-10-25 13:59:56
# @Description:
###
# 开发环境配置
@ -12,8 +12,8 @@ ENV = 'development'
VUE_APP_TITLE = 南京锂膜管理系统
# 南京锂膜管理系统/开发环境
# VUE_APP_BASE_API = 'http://192.168.1.23:48080'
VUE_APP_BASE_API = 'http://192.168.0.31:48081'
VUE_APP_BASE_API = 'http://192.168.1.23:48080'
# VUE_APP_BASE_API = 'http://192.168.0.31:48081'
# 路由懒加载
VUE_CLI_BABEL_TRANSPILE_MODULES = true

查看文件

@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2023-08-22 15:31:37
* @LastEditors: zwq
* @LastEditTime: 2023-10-11 10:02:27
* @LastEditTime: 2023-10-20 15:16:19
* @Description:
*/
import request from '@/utils/request'
@ -24,7 +24,14 @@ export function updateWarehouseStorehouse(data) {
data: data
})
}
// 手动入库
export function inWarehouseStorehouse(data) {
return request({
url: '/asrs/warehouse-storehouse/in',
method: 'post',
data: data
})
}
// 删除立库库位
export function deleteWarehouseStorehouse(id) {
return request({

查看文件

@ -38,14 +38,24 @@ const tableProps = [
prop: 'mainTaskCode',
label: '任务编码',
},
{
prop: 'inOutWarehouseName',
label: '出入移库库位',
},
{
prop: 'relocationWarehouseName',
label: '移库终点库位',
},
{
prop: 'mainTaskType',
label: '任务类型',
filter: codeFilter('mainTaskType'),
width:100
},
{
prop: 'stacker',
label: '堆垛机',
width:110
},
{
prop: 'agv',
@ -55,16 +65,19 @@ const tableProps = [
prop: 'mainTaskState',
label: '状态',
filter: codeFilter('mainTaskState'),
width:110
},
{
prop: 'taskSource',
label: '任务来源',
filter: codeFilter('taskSource'),
width:100
},
{
prop: 'createTime',
label: '创建时间',
filter: parseTime,
width:150
},
];
const mainTaskType = [

查看文件

@ -31,14 +31,24 @@ const tableProps = [
prop: 'mainTaskCode',
label: '任务编码',
},
{
prop: 'inOutWarehouseName',
label: '出入移库库位',
},
{
prop: 'relocationWarehouseName',
label: '移库终点库位',
},
{
prop: 'mainTaskType',
label: '任务类型',
filter: codeFilter('mainTaskType'),
width:100
},
{
prop: 'stacker',
label: '堆垛机',
width:110
},
{
prop: 'agv',
@ -48,21 +58,25 @@ const tableProps = [
prop: 'mainTaskState',
label: '状态',
filter: codeFilter('mainTaskState'),
width:110
},
{
prop: 'taskSource',
label: '任务来源',
filter: codeFilter('taskSource'),
width:100
},
{
prop: 'createTime',
label: '创建时间',
filter: parseTime,
width:150
},
{
prop: 'cancellation',
label: '是否取消',
filter: codeFilter('cancellation'),
width:90
},
];
const mainTaskType = [

查看文件

@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2022-08-24 11:19:43
* @LastEditors: zwq
* @LastEditTime: 2023-10-08 10:44:25
* @LastEditTime: 2023-10-18 16:22:53
* @Description:
*/
export default {
@ -30,15 +30,15 @@ export default {
activated() {
},
methods: {
init(id,bPage) {
init(id, bPage) {
this.dataForm.id = id || "";
this.visible = true;
if (this.urlOptions.getOption) {
this.getArr()
}
if(bPage){
if (bPage) {
this.dataForm.warehouseId = this.bId;
}else{
} else {
this.dataForm.warehouseId = this.aId;
}
this.$nextTick(() => {
@ -90,24 +90,28 @@ export default {
// 修改的提交
if (this.dataForm.id) {
this.urlOptions.updateURL(this.dataForm).then(response => {
if(response.data){
if (response.data === -1) {
this.$modal.msgWarning('排、列、层不能重复');
} else if (response.data === 0) {
this.$modal.msgWarning('名称或编码不能重复');
} else {
this.$modal.msgSuccess("修改成功");
this.visible = false;
this.$emit("refreshDataList");
}else{
this.$modal.msgWarning('名称或编码不能重复');;
}
});
return;
}
// 添加的提交
this.urlOptions.createURL(this.dataForm).then(response => {
if(response.data){
if (response.data === -1) {
this.$modal.msgWarning('排、列、层不能重复');
} else if (response.data === 0) {
this.$modal.msgWarning('名称或编码不能重复');
} else {
this.$modal.msgSuccess("新增成功");
this.visible = false;
this.$emit("refreshDataList");
}else{
this.$modal.msgWarning('名称或编码不能重复');;
}
});
});

查看文件

@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2023-08-24 14:47:58
* @LastEditors: zwq
* @LastEditTime: 2023-10-09 16:20:11
* @LastEditTime: 2023-10-25 14:08:18
* @Description:
-->
<template>
@ -86,7 +86,7 @@ export default {
data() {
return {
urlOptions: {
getDataListURL: this.propType!==3?getWarehouseStorehouseGoodsSpecificationPage:getWarehouseStorehouseStorageGoodsSpecificationPage,
getDataListURL: this.propType!=='3'?getWarehouseStorehouseGoodsSpecificationPage:getWarehouseStorehouseStorageGoodsSpecificationPage,
},
tableProps,
tableProps1,
@ -102,7 +102,8 @@ export default {
},
components: {
},
created() {},
created() {
},
methods: {
},
};

查看文件

@ -32,7 +32,7 @@
width="50%">
<add-or-update
ref="addOrUpdate"
@refreshDataList="successSubmit"></add-or-update>
@refreshDataList="successSubmit"/>
</base-dialog>
</div>
</template>

查看文件

@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2023-08-21 14:26:23
* @LastEditors: zwq
* @LastEditTime: 2023-10-12 15:12:25
* @LastEditTime: 2023-10-20 16:21:39
* @Description:
-->
<template>
@ -25,13 +25,14 @@
class="dashboard-layout-item"
v-for="a in wareData.one.slice((i - 1) * 10, i * 10)"
:key="a.id + a.warehouseStorehouseCode"
:title="a.warehouseStorehouseName"
style="background: #fff8e8; float: left">
<div
class="dashboard-layout-item-cricle"
:style="{
background: bgColor[a.warehouseStorehouseState],
}" />
{{ a.warehouseStorehouseName }}
<p class="p-name">{{ a.warehouseStorehouseName }}</p>
</div>
</el-row>
<el-row type="flex" class="flex-warp">
@ -39,13 +40,14 @@
class="dashboard-layout-item"
v-for="b in wareData.two.slice((i - 1) * 10, i * 10)"
:key="b.id + b.warehouseStorehouseCode"
:title="b.warehouseStorehouseName"
style="background: #fff8e8; float: left">
<div
class="dashboard-layout-item-cricle"
:style="{
background: bgColor[b.warehouseStorehouseState],
}" />
{{ b.warehouseStorehouseName }}
<p class="p-name">{{ b.warehouseStorehouseName }}</p>
</div>
</el-row>
</el-col>
@ -58,13 +60,14 @@
class="dashboard-layout-item"
v-for="c in wareData.there.slice((i - 1) * 10, i * 10)"
:key="c.id + c.warehouseStorehouseCode"
:title="c.warehouseStorehouseName"
style="background: #fff8e8; float: left">
<div
class="dashboard-layout-item-cricle"
:style="{
background: bgColor[c.warehouseStorehouseState],
}" />
{{ c.warehouseStorehouseName }}
<p class="p-name">{{ c.warehouseStorehouseName }}</p>
</div>
</el-row>
<el-row type="flex" class="flex-warp">
@ -72,13 +75,14 @@
class="dashboard-layout-item"
v-for="d in wareData.four.slice((i - 1) * 10, i * 10)"
:key="d.id + d.warehouseStorehouseCode"
:title="d.warehouseStorehouseName"
style="background: #fff8e8; float: left">
<div
class="dashboard-layout-item-cricle"
:style="{
background: bgColor[d.warehouseStorehouseState],
}" />
{{ d.warehouseStorehouseName }}
<p class="p-name">{{ d.warehouseStorehouseName }}</p>
</div>
</el-row>
</el-col>
@ -233,11 +237,17 @@ export default {
border-radius: 6px;
position: absolute;
top: 10px;
left: 5px;
left: 3px;
}
.p-name {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
margin-left: 15px;
}
&:hover {
cursor: pointer;
z-index: 10;
z-index: 10;
transform: scale(1.3) translateZ(0);
}
&:nth-child(2n) {

查看文件

@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2023-08-21 14:26:23
* @LastEditors: zwq
* @LastEditTime: 2023-10-12 15:11:54
* @LastEditTime: 2023-10-20 16:23:13
* @Description:
-->
<template>
@ -25,13 +25,14 @@
class="dashboard-layout-item"
v-for="a in wareData.one.slice((i - 1) * 10, i * 10)"
:key="a.id + a.warehouseStorehouseCode"
:title="a.warehouseStorehouseName"
style="background: #fff8e8; float: left">
<div
class="dashboard-layout-item-cricle"
:style="{
background: bgColor[a.warehouseStorehouseState],
}" />
{{ a.warehouseStorehouseName }}
<p class="p-name">{{ a.warehouseStorehouseName }}</p>
</div>
</el-row>
<el-row type="flex" class="flex-warp">
@ -39,13 +40,14 @@
class="dashboard-layout-item"
v-for="b in wareData.two.slice((i - 1) * 10, i * 10)"
:key="b.id + b.warehouseStorehouseCode"
:title="b.warehouseStorehouseName"
style="background: #fff8e8; float: left">
<div
class="dashboard-layout-item-cricle"
:style="{
background: bgColor[b.warehouseStorehouseState],
}" />
{{ b.warehouseStorehouseName }}
<p class="p-name">{{ b.warehouseStorehouseName }}</p>
</div>
</el-row>
</el-col>
@ -58,13 +60,14 @@
class="dashboard-layout-item"
v-for="c in wareData.there.slice((i - 1) * 10, i * 10)"
:key="c.id + c.warehouseStorehouseCode"
:title="c.warehouseStorehouseName"
style="background: #fff8e8; float: left">
<div
class="dashboard-layout-item-cricle"
:style="{
background: bgColor[c.warehouseStorehouseState],
}" />
{{ c.warehouseStorehouseName }}
<p class="p-name">{{ c.warehouseStorehouseName }}</p>
</div>
</el-row>
<el-row type="flex" class="flex-warp">
@ -72,13 +75,14 @@
class="dashboard-layout-item"
v-for="d in wareData.four.slice((i - 1) * 10, i * 10)"
:key="d.id + d.warehouseStorehouseCode"
:title="d.warehouseStorehouseName"
style="background: #fff8e8; float: left">
<div
class="dashboard-layout-item-cricle"
:style="{
background: bgColor[d.warehouseStorehouseState],
}" />
{{ d.warehouseStorehouseName }}
<p class="p-name">{{ d.warehouseStorehouseName }}</p>
</div>
</el-row>
</el-col>
@ -235,7 +239,13 @@ export default {
border-radius: 6px;
position: absolute;
top: 10px;
left: 5px;
left: 3px;
}
.p-name {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
margin-left: 15px;
}
&:hover {
cursor: pointer;

查看文件

@ -29,7 +29,7 @@
<el-form-item label="库位编码" prop="warehouseStorehouseCode">
<el-input
v-model="dataForm.warehouseStorehouseCode"
readonly
disabled
placeholder="请输入库位编码" />
</el-form-item>
</el-col>
@ -37,10 +37,18 @@
<el-form-item label="库位名" prop="warehouseStorehouseName">
<el-input
v-model="dataForm.warehouseStorehouseName"
readonly
disabled
placeholder="请输入库位名" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="托盘编码" prop="trayCode">
<el-input
v-model="dataForm.trayCode"
@input="$forceUpdate()"
placeholder="请输入托盘编码" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="工序" prop="process">
<el-select
@ -56,14 +64,6 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="托盘编码" prop="trayCode">
<el-input
v-model="dataForm.trayCode"
@input="$forceUpdate()"
placeholder="请输入托盘编码" />
</el-form-item>
</el-col>
</el-row>
</el-form>

查看文件

@ -22,7 +22,7 @@
<el-form-item label="库位编码" prop="warehouseStorehouseCode">
<el-input
v-model="dataForm.warehouseStorehouseCode"
readonly
disabled
placeholder="请输入库位编码" />
</el-form-item>
</el-col>
@ -30,10 +30,37 @@
<el-form-item label="库位名" prop="warehouseStorehouseName">
<el-input
v-model="dataForm.warehouseStorehouseName"
readonly
disabled
placeholder="请输入库位名" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="8">
<el-form-item label="托盘编码" prop="trayCode">
<el-input
v-model="dataForm.trayCode"
@input="$forceUpdate()"
placeholder="请输入托盘编码" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item
label="选择起点位置"
prop="startInfo">
<el-select
v-model="dataForm.startInfo"
style="width: 100%"
@change="$forceUpdate()"
placeholder="请选择起点位置">
<el-option
v-for="item in potArr"
:key="item.id"
:label="item.lineEdgeLibraryCode"
:value="item.lineEdgeLibraryCode+'-'+item.agvGroundCode" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="工序" prop="process">
<el-select
@ -49,31 +76,6 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="托盘编码" prop="trayCode">
<el-input
v-model="dataForm.trayCode"
@input="$forceUpdate()"
placeholder="请输入托盘编码" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item
label="选择起点位置"
prop="inWarehouseStorehouseName">
<el-select
v-model="dataForm.inWarehouseStorehouseName"
style="width: 100%"
@change="$forceUpdate()"
placeholder="请选择起点位置">
<el-option
v-for="item in potArr"
:key="item.id"
:label="item.lineEdgeLibraryCode"
:value="item.id" />
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
@ -124,13 +126,11 @@
</template>
<script>
import { updateProduct } from '@/api/core/base/product';
import { getWarehouseStorehouseGoodsSpecificationPage } from '@/api/asrs/warehouseStorehouseGoodsSpecification';
import {
getWarehouseStorehouseGoodsSpecificationPage,
deleteWarehouseStorehouseGoodsSpecification,
} from '@/api/asrs/warehouseStorehouseGoodsSpecification';
import { getLineList } from '@/api/asrs/warehouseStorehouse';
getLineList,
inWarehouseStorehouse,
} from '@/api/asrs/warehouseStorehouse';
import productAttrAdd from './attr-add';
import inputArea from '../mixins/inputArea';
import selectQuality from '../mixins/selectQuality';
@ -218,21 +218,30 @@ export default {
warehouseStorehouseName: '',
warehouseStorehouseCode: '',
process: '',
inWarehouseStorehouseName: '',
trayCode: '',
startInfo: '',
},
updata: {},
listQuery: {
pageSize: 10,
pageNo: 1,
total: 0,
},
dataRule: {
// name: [
// {
// required: true,
// message: '',
// trigger: 'blur',
// },
// ],
trayCode: [
{
required: true,
message: '托盘编码不能为空',
trigger: 'blur',
},
],
startInfo: [
{
required: true,
message: '起点位置不能为空',
trigger: 'change',
},
],
},
};
},
@ -241,7 +250,13 @@ export default {
this.productAttributeList.splice(0);
},
init(val) {
this.dataForm = val;
this.updata = val;
this.dataForm.id = val.id;
this.dataForm.warehouseStorehouseName = val.warehouseStorehouseName;
this.dataForm.warehouseStorehouseCode = val.warehouseStorehouseCode;
this.dataForm.process = val.process;
this.dataForm.trayCode = val.trayCode;
this.dataForm.startInfo = ''
this.initData();
this.visible = true;
getLineList().then((response) => {
@ -316,12 +331,18 @@ export default {
item.warehouseStorehouseId = this.dataForm.id;
item.warehouseId = '';
});
this.updata.process = this.dataForm.process;
this.updata.trayCode = this.dataForm.trayCode;
this.updata.lineEdgeLibraryCode =
this.dataForm.startInfo.split('-')[0];
this.updata.agvGroundCode =
this.dataForm.startInfo.split('-')[1];
this.$refs['dataForm'].validate((valid) => {
if (valid) {
//
this.dataForm.list = this.productAttributeList;
this.updata.list = this.productAttributeList;
if (this.dataForm.id) {
updateProduct(this.dataForm).then((response) => {
inWarehouseStorehouse(this.updata).then((response) => {
this.$modal.msgSuccess('修改成功');
this.visible = false;
this.$emit('refreshDataList');

查看文件

@ -286,7 +286,7 @@ export default {
this.addOrUpdateVisible = true;
this.addOrEditTitle = '移库';
this.$nextTick(() => {
this.$refs.addOrUpdate.init(val.data.id, 1);
this.$refs.addOrUpdate.init(val.data.id, 1,this.listQuery.warehouseId);
});
} else if (val.type === 'in') {
this.drawerVisible = true;
@ -297,6 +297,7 @@ export default {
const dataForm = {
id: val.data.id.id,
deactivate: 1,
trayCode:val.data.id.trayCode?val.data.id.trayCode:''
};
updateWarehouseStorehouse(dataForm).then((response) => {
this.$modal.msgSuccess('启用成功');

查看文件

@ -288,7 +288,7 @@ export default {
this.addOrUpdateVisible = true;
this.addOrEditTitle = '移库';
this.$nextTick(() => {
this.$refs.addOrUpdate.init(val.data.id, 1);
this.$refs.addOrUpdate.init(val.data.id, 1,this.listQuery.warehouseId);
});
} else if (val.type === 'in') {
this.drawerVisible = true;
@ -299,6 +299,7 @@ export default {
const dataForm = {
id: val.data.id.id,
deactivate: 1,
trayCode:val.data.id.trayCode?val.data.id.trayCode:''
};
updateWarehouseStorehouse(dataForm).then((response) => {
this.$modal.msgSuccess('启用成功');

查看文件

@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2021-11-18 14:16:25
* @LastEditors: zwq
* @LastEditTime: 2023-10-11 13:45:45
* @LastEditTime: 2023-10-20 15:36:19
* @Description:
-->
<template>
@ -56,14 +56,14 @@ export default {
};
},
methods: {
init(id, type) {
init(id, type,wId) {
this.dataForm.sourceId = id || '';
this.type = type;
this.visible = true;
this.$nextTick(() => {
this.$refs['dataForm'].resetFields();
if (this.type) {
getWarehouseStorehouseList().then((response) => {
getWarehouseStorehouseList({warehouseId:wId}).then((response) => {
this.potArr = response.data;
});
return;

查看文件

@ -1,6 +1,7 @@
<template>
<div class="app-container">
<search-bar
:isFold="true"
:formConfigs="formConfig"
ref="searchBarForm"
@headBtnClick="buttonClick" />
@ -16,7 +17,7 @@
ref="dataList">
<el-table-column type="expand">
<template slot-scope="scope">
<product :warehouse-id="scope.row.id" :prop-type="'2'"></product>
<product :warehouse-id="scope.row.id" :prop-type="'3'"></product>
</template>
</el-table-column>
<el-table-column prop="warehouseName" label="仓库名"></el-table-column>

查看文件

@ -1,6 +1,7 @@
<template>
<div class="app-container">
<search-bar
:isFold="true"
:formConfigs="formConfig"
ref="searchBarForm"
@headBtnClick="buttonClick" />
@ -16,7 +17,7 @@
ref="dataList">
<el-table-column type="expand">
<template slot-scope="scope">
<product :warehouse-id="scope.row.id" :prop-type="2"></product>
<product :warehouse-id="scope.row.id" :prop-type="'3'"></product>
</template>
</el-table-column>
<el-table-column prop="warehouseName" label="仓库名"></el-table-column>

查看文件

@ -22,7 +22,7 @@
<el-form-item label="库位编码" prop="finishProductCode">
<el-input
v-model="dataForm.finishProductCode"
readonly
disabled
placeholder="请输入库位编码" />
</el-form-item>
</el-col>
@ -30,7 +30,7 @@
<el-form-item label="库位名" prop="finishProductName">
<el-input
v-model="dataForm.finishProductName"
readonly
disabled
placeholder="请输入库位名" />
</el-form-item>
</el-col>

查看文件

@ -252,6 +252,7 @@ export default {
const dataForm = {
id: val.data.id.id,
deactivate: 1,
trayCode:val.data.id.trayCode?val.data.id.trayCode:''
};
updateFinishProductWarehouse(dataForm).then((response) => {
this.$modal.msgSuccess('启用成功');

查看文件

@ -1,6 +1,7 @@
<template>
<div class="app-container">
<search-bar
:isFold="true"
:formConfigs="formConfig"
ref="searchBarForm"
@headBtnClick="buttonClick" />

查看文件

@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2023-08-21 14:26:23
* @LastEditors: zwq
* @LastEditTime: 2023-10-13 15:27:53
* @LastEditTime: 2023-10-20 16:36:31
* @Description:
-->
<template>
@ -23,13 +23,14 @@
class="dashboard-layout-item"
v-for="a in wareData.slice((i - 1) * 20, i * 20)"
:key="a.id + a.finishProductCode"
:title="a.finishProductName"
style="background: #fff8e8; float: left">
<div
class="dashboard-layout-item-cricle"
:style="{
background: bgColor[a.finishProductWarehouseState],
}" />
{{ a.finishProductName }}
<p class="p-name">{{ a.finishProductName }}</p>
</div>
</el-row>
</div>
@ -94,12 +95,7 @@ export default {
//
getDataList() {
this.dataListLoading = true;
(this.wareData = {
one: [],
two: [],
there: [],
four: [],
}),
this.wareData = [],
this.urlOptions.getDataListURL(this.listQuery).then((response) => {
this.wareData = response.data
this.listQuery.total = Math.ceil(response.data.length / 20);
@ -140,7 +136,7 @@ export default {
.dashboard-layout-item {
width: 60px;
text-align: center;
height: 62px;
height: 40px;
box-shadow: 1px 1px 4px 1px rgba(166, 174, 190, 0.8);
border-radius: 4px;
margin-bottom: 8px;
@ -154,8 +150,14 @@ export default {
height: 12px;
border-radius: 6px;
position: absolute;
top: 5px;
left: 5px;
top: 3px;
left: 24px;
}
.p-name {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
margin-bottom: 5px;
}
&:hover {
cursor: pointer;

查看文件

@ -33,7 +33,7 @@
</span>
</template>
</el-table-column>
<el-table-column label="操作">
<el-table-column label="操作" width="120">
<template v-slot="scope">
<el-popconfirm
@confirm="setShipment(scope.row.id)"