新增委托验收功能
parent
7b901da987
commit
604060ac7e
@ -1,6 +1,6 @@
|
||||
{
|
||||
"UDI_SYNC_SERVER_IP": "http://192.168.0.109:9995/",
|
||||
"BASE_URL":"http://192.168.0.109:9991/",
|
||||
"SERVER_IP": "http://192.168.0.109:9991/",
|
||||
"WEBSOCKET_URL": "ws://192.168.0.109:9991/UDI_WMS_MC/api/websocket/"
|
||||
"UDI_SYNC_SERVER_IP": "http://192.168.0.105:9995/",
|
||||
"BASE_URL":"http://192.168.0.105:9991/",
|
||||
"SERVER_IP": "http://192.168.0.105:9991/",
|
||||
"WEBSOCKET_URL": "ws://192.168.0.105:9991/UDI_WMS_MC/api/websocket/"
|
||||
}
|
||||
|
@ -0,0 +1,44 @@
|
||||
import axios from "../../utils/axios";
|
||||
|
||||
export function getEntrustRece(query) {
|
||||
return axios({
|
||||
url: "/spms/entrust/rece/filter",
|
||||
method: "get",
|
||||
params: query
|
||||
});
|
||||
}
|
||||
|
||||
export function deleteEntrustRece(query) {
|
||||
return axios({
|
||||
url: "/spms/entrust/rece/delete",
|
||||
method: "post",
|
||||
data: query
|
||||
});
|
||||
}
|
||||
|
||||
export function updateEntrustRece(query) {
|
||||
return axios({
|
||||
url: "/spms/entrust/rece/update",
|
||||
method: "post",
|
||||
data: query
|
||||
});
|
||||
}
|
||||
|
||||
export function insertEntrustRece(query) {
|
||||
return axios({
|
||||
url: "/spms/entrust/rece/add",
|
||||
method: "post",
|
||||
data: query
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
export function filterNoUseBusType(query) {
|
||||
return axios({
|
||||
url: "/spms/entrust/rece/filterAllNoUse",
|
||||
method: "get",
|
||||
params: query
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -0,0 +1,302 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-card>
|
||||
<el-form :inline="true" :model="filterQuery" class="query-form" size="mini">
|
||||
<el-form-item class="query-form-item">
|
||||
<el-input
|
||||
v-model="filterQuery.name"
|
||||
style="width: 250px"
|
||||
placeholder="单据类型名称"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button-group style="margin-left: 10px;display:flex;">
|
||||
<el-button type="primary" icon="el-icon-refresh" @click="onReset"></el-button>
|
||||
<el-button type="primary" icon="search" @click="getList">查询</el-button>
|
||||
<el-button type="primary" icon="search" @click="handleAddClick"
|
||||
>新增
|
||||
</el-button
|
||||
>
|
||||
</el-button-group>
|
||||
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
<el-table v-loading="loading" :data="list" style="width: 100%">
|
||||
<el-table-column label="序号" type="index" width="60" fixed></el-table-column>
|
||||
<el-table-column label="扫码单据类型" prop="curName" fixed></el-table-column>
|
||||
<el-table-column label="当前仓库" prop="curInvName" fixed></el-table-column>
|
||||
<el-table-column label="委托验收仓库" prop="entrustInvName" fixed>
|
||||
</el-table-column>
|
||||
<el-table-column label="委托验收人" prop="employeeName" fixed>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" fixed="right">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
type="text"
|
||||
size="small"
|
||||
@click.native.stop="handleModifyClick(scope.row)"
|
||||
>编辑
|
||||
</el-button
|
||||
>
|
||||
<el-button
|
||||
type="text"
|
||||
size="small"
|
||||
@click.native.stop="deleteDialog(scope.row)"
|
||||
>删除
|
||||
</el-button
|
||||
>
|
||||
</template>
|
||||
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<el-dialog
|
||||
title="新增委托验收"
|
||||
:visible.sync="addDialogVisible"
|
||||
width="70%"
|
||||
:close-on-click-modal="false"
|
||||
:close-on-press-escape="false"
|
||||
v-if="addDialogVisible"
|
||||
>
|
||||
<modifyDialog :inputQuery="inputQuery"></modifyDialog>
|
||||
<div style="text-align: center">
|
||||
<el-button type="primary" size="small" icon="search" @click="onAddSubmit"
|
||||
>提交
|
||||
</el-button
|
||||
>
|
||||
<el-button type="primary" size="small" icon="search" @click="cancelDialog"
|
||||
>取消
|
||||
</el-button
|
||||
>
|
||||
</div>
|
||||
</el-dialog>
|
||||
|
||||
<el-dialog
|
||||
title="编辑委托验收"
|
||||
:visible.sync="modifyDialogVisible"
|
||||
width="70%"
|
||||
:close-on-click-modal="false"
|
||||
:close-on-press-escape="false"
|
||||
v-if="modifyDialogVisible"
|
||||
>
|
||||
<modifyDialog :inputQuery="inputQuery"></modifyDialog>
|
||||
<div style="text-align: center">
|
||||
<el-button type="primary" size="small" icon="search" @click="onModifySubmit"
|
||||
>提交
|
||||
</el-button
|
||||
>
|
||||
<el-button type="primary" size="small" icon="search" @click="cancelDialog"
|
||||
>取消
|
||||
</el-button
|
||||
>
|
||||
</div>
|
||||
</el-dialog>
|
||||
<el-pagination
|
||||
:page-size="filterQuery.limit"
|
||||
@current-change="handleCurrentChange"
|
||||
layout="prev, pager, next"
|
||||
:total="total"
|
||||
></el-pagination>
|
||||
</el-card>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import {
|
||||
getEntrustRece,
|
||||
deleteEntrustRece,
|
||||
updateEntrustRece,
|
||||
insertEntrustRece,
|
||||
} from "../../api/basic/EntrustRece";
|
||||
|
||||
import modifyDialog from "./BasicEntrutsReceModify";
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
filterQuery: {
|
||||
name: "",
|
||||
page: 1,
|
||||
limit: 20,
|
||||
},
|
||||
loading: false,
|
||||
addDialogVisible: false,
|
||||
modifyDialogVisible: false,
|
||||
list: [],
|
||||
inputQuery: {
|
||||
action: "",
|
||||
name: "",
|
||||
entrustInv: "",
|
||||
entrustUser: "",
|
||||
entrustAction: null,
|
||||
finishRece: false,
|
||||
curInv: "",
|
||||
},
|
||||
enableMap: {
|
||||
true: "是",
|
||||
false: "否",
|
||||
},
|
||||
mainActionMap: {
|
||||
WareHouseIn: "入库",
|
||||
WareHouseOut: "出库"
|
||||
},
|
||||
fileList: [],
|
||||
total: 0,
|
||||
multipleSelection: [],
|
||||
uploadFileUrl: null,
|
||||
headers: {},
|
||||
|
||||
};
|
||||
},
|
||||
|
||||
methods: {
|
||||
onReset() {
|
||||
this.$router.push({
|
||||
path: "",
|
||||
});
|
||||
this.filterQuery = {
|
||||
name: "",
|
||||
page: 1,
|
||||
limit: 20,
|
||||
};
|
||||
this.getList();
|
||||
},
|
||||
cancelDialog() {
|
||||
this.modifyDialogVisible = false;
|
||||
this.addDialogVisible = false;
|
||||
},
|
||||
handleCurrentChange(val) {
|
||||
this.filterQuery.page = val;
|
||||
this.getList();
|
||||
},
|
||||
getList() {
|
||||
this.loading = true;
|
||||
getEntrustRece(this.filterQuery)
|
||||
.then((response) => {
|
||||
this.loading = false;
|
||||
this.list = response.data.list || [];
|
||||
this.total = response.data.total || 0;
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
this.list = [];
|
||||
this.total = 0;
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
onAddSubmit() {
|
||||
|
||||
if (this.$isBlank(this.inputQuery.action)) {
|
||||
this.$message.error("单据类型不能为空!");
|
||||
return;
|
||||
}
|
||||
if (this.$isBlank(this.inputQuery.curInv)) {
|
||||
this.$message.error("请输入委托仓库!");
|
||||
return;
|
||||
}
|
||||
if (this.$isBlank(this.inputQuery.entrustInv)) {
|
||||
this.$message.error("请输入委托验收人仓库!");
|
||||
return;
|
||||
}
|
||||
if (this.$isBlank(this.inputQuery.entrustInv)) {
|
||||
this.$message.error("请输入委托验收人!");
|
||||
return;
|
||||
}
|
||||
|
||||
insertEntrustRece(this.inputQuery)
|
||||
.then((response) => {
|
||||
this.loading = false;
|
||||
this.cancelDialog();
|
||||
this.getList();
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
this.cancelDialog();
|
||||
});
|
||||
},
|
||||
|
||||
onModifySubmit() {
|
||||
if (this.$isBlank(this.inputQuery.action)) {
|
||||
this.$message.error("单据类型不能为空!");
|
||||
return;
|
||||
}
|
||||
if (this.$isBlank(this.inputQuery.curInv)) {
|
||||
this.$message.error("请输入委托仓库!");
|
||||
return;
|
||||
}
|
||||
if (this.$isBlank(this.inputQuery.entrustInv)) {
|
||||
this.$message.error("请输入委托验收人仓库!");
|
||||
return;
|
||||
}
|
||||
if (this.$isBlank(this.inputQuery.entrustInv)) {
|
||||
this.$message.error("请输入委托验收人!");
|
||||
return;
|
||||
}
|
||||
insertEntrustRece(this.inputQuery)
|
||||
.then((response) => {
|
||||
this.loading = false;
|
||||
this.cancelDialog();
|
||||
this.getList();
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
this.cancelDialog();
|
||||
});
|
||||
},
|
||||
|
||||
handleAddClick() {
|
||||
this.inputQuery = {enable: true, expireTip: true};
|
||||
this.addDialogVisible = true;
|
||||
},
|
||||
|
||||
handleModifyClick(row) {
|
||||
this.inputQuery = row;
|
||||
this.modifyDialogVisible = true;
|
||||
},
|
||||
|
||||
deleteDialog(rowId) {
|
||||
this.$confirm("此操作将永久删除该委托验收信息, 是否继续?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning",
|
||||
})
|
||||
.then(() => {
|
||||
this.deleteOrders(rowId);
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
},
|
||||
|
||||
deleteOrders(data) {
|
||||
this.loading = true;
|
||||
let tquery = {
|
||||
id: data.id + "",
|
||||
};
|
||||
deleteEntrustRece(tquery)
|
||||
.then((response) => {
|
||||
this.getList();
|
||||
if (response.code == 20000) {
|
||||
this.$message({
|
||||
type: "success",
|
||||
message: "删除成功!",
|
||||
});
|
||||
} else {
|
||||
this.$message.error(response.message);
|
||||
}
|
||||
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
},
|
||||
},
|
||||
components: {
|
||||
modifyDialog,
|
||||
},
|
||||
mounted() {
|
||||
},
|
||||
created() {
|
||||
this.getList();
|
||||
},
|
||||
};
|
||||
</script>
|
@ -0,0 +1,310 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-form :model="inputQuery" :rules="formRules" ref="dataForm">
|
||||
|
||||
|
||||
<el-row :gutter="20" class=就这样"el-row" type="flex">
|
||||
<el-col :span="10" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>扫码单据类型: </span>
|
||||
</div>
|
||||
<el-select v-model="inputQuery.action" placeholder="请选择" clearable @change="actionChange">
|
||||
<el-option
|
||||
v-for="item in busTypes"
|
||||
:key="item.localAction"
|
||||
:label="item.name"
|
||||
:value="item.localAction">
|
||||
<span style="float: left">{{ item.localName }}</span>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="10" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>委托仓库: </span>
|
||||
</div>
|
||||
<el-select v-model="inputQuery.curInv" placeholder="当前仓库" @change="invChange" clearable>
|
||||
<el-option
|
||||
v-for="item in storageList"
|
||||
:key="item.code"
|
||||
:label="item.name"
|
||||
:value="item.code">
|
||||
<span style="float: left">{{ item.name }}</span>
|
||||
</el-option>
|
||||
|
||||
</el-select>
|
||||
|
||||
</div>
|
||||
</el-col>
|
||||
|
||||
</el-row>
|
||||
<el-row :gutter="20" class="el-row" type="flex">
|
||||
<el-col :span="10" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>委托验收人仓库: </span>
|
||||
</div>
|
||||
<el-select v-model="inputQuery.entrustInv" placeholder="委托验收人仓库" @change="entrustInvChange" clearable>
|
||||
<el-option
|
||||
v-for="item in entrustStorageList"
|
||||
:key="item.code"
|
||||
:label="item.name"
|
||||
:value="item.code">
|
||||
<span style="float: left">{{ item.name }}</span>
|
||||
</el-option>
|
||||
|
||||
</el-select>
|
||||
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="10" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>委托验收人: </span>
|
||||
</div>
|
||||
<el-select v-model="inputQuery.entrustUser" placeholder="委托验收人" clearable>
|
||||
<el-option
|
||||
v-for="item in entrustUserArray"
|
||||
:key="item.userid"
|
||||
:label="item.employeeName"
|
||||
:value="item.userid">
|
||||
<span style="float: left">{{ item.employeeName }}</span>
|
||||
</el-option>
|
||||
|
||||
</el-select>
|
||||
|
||||
</div>
|
||||
</el-col>
|
||||
|
||||
|
||||
</el-row>
|
||||
|
||||
<el-row :gutter="20" class="el-row" type="flex">
|
||||
|
||||
<el-col :span="10" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>委托生成单据类型: </span>
|
||||
</div>
|
||||
<el-select v-model="inputQuery.entrustAction" placeholder="单据类型" clearable>
|
||||
<el-option
|
||||
v-for="item in entrustBusArray"
|
||||
:key="item.action"
|
||||
:label="item.name"
|
||||
:value="item.action">
|
||||
<span style="float: left">{{ item.name }}</span>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="4" class="el-col">
|
||||
<div class="text item">
|
||||
<el-checkbox v-model="inputQuery.finishRece">是否直接验收完成
|
||||
</el-checkbox>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
import {
|
||||
getBasicThirdSys,
|
||||
} from "../../api/basic/basicThirdSys";
|
||||
|
||||
import {
|
||||
getLocalJoinNoUse
|
||||
} from "../../api/basic/busLocalType";
|
||||
import {filterAll, filterNext, warehouseBussinessTypeList, warehouseUserList} from "@/api/basic/invWarehouse";
|
||||
import {getBasicUnitMaintains} from "@/api/basic/basicUnitMaintain";
|
||||
import {filterNoUseBusType} from "@/ap对i/basic/EntrustRece";
|
||||
|
||||
|
||||
export default {
|
||||
name: "inputQuery",
|
||||
props: {
|
||||
inputQuery: {
|
||||
type: Object,
|
||||
required: true,
|
||||
},
|
||||
},
|
||||
|
||||
data() {
|
||||
return {
|
||||
filterQuery: {
|
||||
enabled: true,
|
||||
isBuType: true,
|
||||
isFilterBind: true,
|
||||
},
|
||||
storageList: [],
|
||||
entrustStorageList: [],
|
||||
orderTypeList: [],
|
||||
fromSpecialOptions: [],
|
||||
thirdSys: [],
|
||||
busTypes: [],
|
||||
entrustBusArray: [],
|
||||
entrustUserArray: [],
|
||||
formRules: {
|
||||
action: [
|
||||
{required: true, message: "请输入扫码单据类型", trigger: "blur"}
|
||||
],
|
||||
curInv: [
|
||||
{required: true, message: "请输入委托仓库", trigger: "blur"}
|
||||
],
|
||||
entrustInv: [
|
||||
{required: true, message: "请输入委托验收人仓库", trigger: "blur"}
|
||||
],
|
||||
entrustUser: [
|
||||
{required: true, message: "请输入委托验收人", trigger: "blur"}
|
||||
],
|
||||
},
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
getList() {
|
||||
getBasicThirdSys(this.filterQuery)
|
||||
.then((response) => {
|
||||
this.thirdSys = response.data.list || [];
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
this.list = [];
|
||||
});
|
||||
let query = {
|
||||
curAction: this.inputQuery.localAction,
|
||||
};
|
||||
getLocalJoinNoUse(query)
|
||||
.then((response) => {
|
||||
this.localTypes = response.data.list || [];
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
this.localTypes = [];
|
||||
});
|
||||
},
|
||||
getStorage() {
|
||||
this.storageList = [];
|
||||
filterAll()
|
||||
.then((response) => {
|
||||
this.storageList = response.data || [];
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
},
|
||||
|
||||
getEntrustStorage() {
|
||||
this.entrustStorageList = [];
|
||||
let nextQuery = {pcode: this.inputQuery.curInv};
|
||||
filterNext(nextQuery)
|
||||
.then((response) => {
|
||||
this.entrustStorageList = response.data || [];
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
},
|
||||
getOrderType() {
|
||||
filterNoUseBusType().then((response) => {
|
||||
this.busTypes = response.data || [];
|
||||
}).catch(() => {
|
||||
|
||||
})
|
||||
},
|
||||
invChange(code) {
|
||||
let query = {
|
||||
code: code
|
||||
}
|
||||
|
||||
this.inputQuery.entrustInv="";
|
||||
//加载用户数据
|
||||
warehouseUserList(query).then((res) => {
|
||||
this.entrustUserArray = res.data;
|
||||
}).catch((error) => {
|
||||
this.$message.error("用户数据加载失败")
|
||||
});
|
||||
|
||||
//加载单据类型数据
|
||||
warehouseBussinessTypeList(query).then((res) => {
|
||||
this.entrustBusArray = res.data;
|
||||
}).catch((error) => {
|
||||
this.$message.error("单据类型数据加载失败")
|
||||
});
|
||||
if (this.$isBlank(this.inputQuery.entrustInv)) {
|
||||
this.inputQuery.entrustUser = null;
|
||||
}
|
||||
this.getEntrustStorage();
|
||||
},
|
||||
|
||||
entrustInvChange(code) {
|
||||
let query = {
|
||||
code: code
|
||||
}
|
||||
|
||||
//加载用户数据
|
||||
warehouseUserList(query).then((res) => {
|
||||
this.entrustUserArray = res.data;
|
||||
}).catch((error) => {
|
||||
this.$message.error("用户数据加载失败")
|
||||
});
|
||||
|
||||
//加载单据类型数据
|
||||
warehouseBussinessTypeList(query).then((res) => {
|
||||
this.entrustBusArray = res.data;
|
||||
}).catch((error) => {
|
||||
this.$message.error("单据类型数据加载失败")
|
||||
});
|
||||
|
||||
},
|
||||
|
||||
actionChange(action) {
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
corpType() {
|
||||
return this.inputQuery.corpType;
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
created() {
|
||||
this.getOrderType();
|
||||
this.getList();
|
||||
this.getStorage();
|
||||
this.getEntrustStorage();
|
||||
if (this.$isNotBlank(this.inputQuery.entrustInv)) {
|
||||
this.entrustInvChange(this.inputQuery.entrustInv);
|
||||
}
|
||||
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.itemTag {
|
||||
float: left;
|
||||
text-align: left;
|
||||
margin-top: 10px;
|
||||
width: 100px;
|
||||
}
|
||||
|
||||
.text {
|
||||
font-size: 13px;
|
||||
font-family: "Microsoft YaHei";
|
||||
}
|
||||
|
||||
.el-row {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.el-col {
|
||||
border-radius: 4px;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
</style>
|
Loading…
Reference in New Issue