业务单据功能界面修改,单据类型修改

master
anthonywj 3 years ago
parent 1b07355857
commit 4308e3c464

@ -755,7 +755,7 @@ export const asyncRouterMap = [
name: "库存统计", name: "库存统计",
icon: "", icon: "",
meta: { meta: {
authRule: ["inv/invProducts"] authRule: ["inv/invStatistics"]
} }
}, },
{ {
@ -1002,16 +1002,16 @@ export const asyncRouterMap = [
authRule: ["spInv/spInvProducts"] authRule: ["spInv/spInvProducts"]
} }
}, },
{ // {
path: "spInvProducts", // path: "spInvProducts",
component: supInvProducts, // component: supInvProducts,
name: "库存统计", // name: "库存统计",
icon: "", // icon: "",
hidden: false, // hidden: false,
meta: { // meta: {
authRule: ["spInv/spInvProducts"] // authRule: ["spInv/spInvProducts"]
} // }
}, // },
{ {
path: "spInvPreProducts", path: "spInvPreProducts",
component: supInvPreProducts, component: supInvPreProducts,

@ -1,365 +1,374 @@
<template> <template>
<div> <div>
<el-card> <el-card>
<el-form :inline="true" :model="filterQuery" class="query-form" size="mini"> <el-form :inline="true" :model="filterQuery" class="query-form" size="mini">
<el-form-item class="query-form-item"> <el-form-item class="query-form-item">
<el-input <el-input
v-model="filterQuery.action" v-model="filterQuery.action"
placeholder="业务类型" placeholder="业务类型"
style="width: 400px" style="width: 400px"
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item class="query-form-item"> <el-form-item class="query-form-item">
<el-select v-model="filterQuery.enabled" placeholder="状态"> <el-select v-model="filterQuery.enabled" placeholder="状态">
<el-option label="全部" value=""></el-option> <el-option label="全部" value=""></el-option>
<el-option label="已启用" value=1></el-option> <el-option label="已启用" value=1></el-option>
<el-option label="未启用" value=0></el-option> <el-option label="未启用" value=0></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button-group style="margin-left: 10px;display:flex;"> <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="el-icon-refresh" @click="onReset"></el-button>
<el-button type="primary" icon="search" @click="getList"></el-button> <el-button type="primary" icon="search" @click="getList"></el-button>
<el-button type="primary" icon="search" @click="handleAddClick" <el-button type="primary" icon="search" @click="handleAddClick"
>新增 >新增
</el-button </el-button
> >
<el-upload <el-upload
:action="uploadFileUrl" :action="uploadFileUrl"
multiple multiple
:limit="3" :limit="3"
:show-file-list="false" :show-file-list="false"
:on-success="handleChange" :on-success="handleChange"
:file-list="fileList" :file-list="fileList"
> >
<el-button size="mini" type="primary">导入单据类型</el-button> <el-button size="mini" type="primary">导入单据类型</el-button>
</el-upload> </el-upload>
</el-button-group> </el-button-group>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-table v-loading="loading" :data="list" style="width: 100%"> <el-table v-loading="loading" :data="list" style="width: 100%">
<el-table-column label="序号" type="index" width="120" fixed></el-table-column> <el-table-column label="序号" type="index" width="120" fixed></el-table-column>
<el-table-column label="扫码单据类型" prop="name" fixed></el-table-column> <el-table-column label="扫码单据类型" prop="name" fixed></el-table-column>
<!-- <el-table-column label="出入库类型代码" prop="mainAction" fixed></el-table-column>--> <!-- <el-table-column label="出入库类型代码" prop="mainAction" fixed></el-table-column>-->
<el-table-column label="扫码单据类型代码" prop="action" fixed></el-table-column> <el-table-column label="扫码单据类型代码" prop="action" fixed></el-table-column>
<el-table-column label="是否启用" prop="enable" fixed> <el-table-column label="是否启用" prop="enable" fixed>
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ enableMap[scope.row.enable] }}</span> <span>{{ enableMap[scope.row.enable] }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="必须选择业务单据校验" prop="checkEnable" fixed> <el-table-column label="必须选择业务单据校验" prop="checkEnable" fixed>
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ enableMap[scope.row.checkEnable] }}</span> <span>{{ enableMap[scope.row.checkEnable] }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="二次核对" prop="secCheckEnable" fixed> <el-table-column label="二次核对" prop="secCheckEnable" fixed>
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ enableMap[scope.row.secCheckEnable] }}</span> <span>{{ enableMap[scope.row.secCheckEnable] }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="关联业务单据" prop="localName" fixed></el-table-column> <el-table-column label="关联业务单据" prop="localName" fixed></el-table-column>
<!-- <el-table-column label="第三方系统" prop="thirdName" fixed></el-table-column>--> <!-- <el-table-column label="第三方系统" prop="thirdName" fixed></el-table-column>-->
<el-table-column label="操作" fixed="right"> <el-table-column label="操作" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
type="text" type="text"
size="small" size="small"
@click.native.stop="handleModifyClick(scope.row)" @click.native.stop="handleModifyClick(scope.row)"
>编辑 >编辑
</el-button </el-button
> >
<el-button <el-button
type="text" type="text"
size="small" size="small"
@click.native.stop="deleteDialog(scope.row)" @click.native.stop="deleteDialog(scope.row)"
>删除 >删除
</el-button </el-button
> >
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-dialog <el-dialog
title="新增业务类型关联" title="新增业务类型关联"
:visible.sync="addDialogVisible" :visible.sync="addDialogVisible"
width="70%" width="70%"
:close-on-click-modal="false" :close-on-click-modal="false"
:close-on-press-escape="false" :close-on-press-escape="false"
v-if="addDialogVisible" v-if="addDialogVisible"
> >
<modifyDialog :inputQuery="inputQuery"></modifyDialog> <modifyDialog :inputQuery="inputQuery"></modifyDialog>
<div style="text-align: center"> <div style="text-align: center">
<el-button type="primary" size="small" icon="search" @click="onAddSubmit" <el-button type="primary" size="small" icon="search" @click="onAddSubmit"
>提交 >提交
</el-button </el-button
> >
<el-button type="primary" size="small" icon="search" @click="cancelDialog" <el-button type="primary" size="small" icon="search" @click="cancelDialog"
>取消 >取消
</el-button </el-button
> >
</div> </div>
</el-dialog> </el-dialog>
<el-dialog <el-dialog
title="编辑扫码单据类型" title="编辑扫码单据类型"
:visible.sync="modifyDialogVisible" :visible.sync="modifyDialogVisible"
width="70%" width="70%"
:close-on-click-modal="false" :close-on-click-modal="false"
:close-on-press-escape="false" :close-on-press-escape="false"
v-if="modifyDialogVisible" v-if="modifyDialogVisible"
> >
<modifyDialog :inputQuery="inputQuery"></modifyDialog> <modifyDialog :inputQuery="inputQuery"></modifyDialog>
<div style="text-align: center"> <div style="text-align: center">
<el-button type="primary" size="small" icon="search" @click="onModifySubmit" <el-button type="primary" size="small" icon="search" @click="onModifySubmit"
>提交 >提交
</el-button </el-button
> >
<el-button type="primary" size="small" icon="search" @click="cancelDialog" <el-button type="primary" size="small" icon="search" @click="cancelDialog"
>取消 >取消
</el-button </el-button
> >
</div> </div>
</el-dialog> </el-dialog>
<el-pagination <el-pagination
:page-size="filterQuery.limit" :page-size="filterQuery.limit"
@current-change="handleCurrentChange" @current-change="handleCurrentChange"
layout="prev, pager, next" layout="prev, pager, next"
:total="total" :total="total"
></el-pagination> ></el-pagination>
</el-card> </el-card>
</div> </div>
</template> </template>
<script> <script>
import { import {
getJoinBussinessType, getJoinBussinessType,
deleteBussinessType, deleteBussinessType,
updateBussinessType, updateBussinessType,
insertBussinessType, insertBussinessType,
} from "../../api/basic/bussinessType"; } from "../../api/basic/bussinessType";
import modifyDialog from "./BussinessTypeModify"; import modifyDialog from "./BussinessTypeModify";
import axios from "axios"; import axios from "axios";
export default { export default {
data() { data() {
return { return {
filterQuery: { filterQuery: {
enabled: "1", enabled: "1",
udiwmsType: "", udiwmsType: "",
thirdType: "", thirdType: "",
page: 1, page: 1,
limit: 20, limit: 20,
}, },
addDialogVisible: false, addDialogVisible: false,
modifyDialogVisible: false, modifyDialogVisible: false,
list: [], list: [],
inputQuery: { inputQuery: {
action: "", action: "",
name: "", name: "",
enable: "", enable: "",
remark: "", remark: "",
mainAction: "", mainAction: "",
thirdSysFk: "", thirdSysFk: "",
id: "", id: "",
localAction: null, localAction: null,
checkEnable: false, checkEnable: false,
genUnit: false, genUnit: false,
innerOrder: false, innerOrder: false,
spUse: null, spUse: null,
secCheckEnable: null, secCheckEnable: null,
checkUdims: null, checkUdims: null,
checkPdaEd: null, checkPdaEd: null,
checkPdaUn: null, checkPdaUn: null,
checkPc: null, checkPc: null,
checkWebNew: null, checkWebNew: null,
checkChange: null, checkChange: null,
secCheckUdims: null, secCheckUdims: null,
secCheckPdaEd: null, secCheckPdaEd: null,
secCheckPdaUn: null, secCheckPdaUn: null,
secCheckPc: null, secCheckPc: null,
secCheckWebNew: null, secCheckWebNew: null,
secCheckChange: null, secCheckChange: null,
corpType: null, corpType: null,
storageCode: null, storageCode: null,
supplementOrderType: null, supplementOrderType: null,
}, },
enableMap: { enableMap: {
true: "是", true: "是",
false: "否", false: "否",
}, },
fileList: [], fileList: [],
total: 0, total: 0,
multipleSelection: [], multipleSelection: [],
uploadFileUrl: null, uploadFileUrl: null,
}; };
},
methods: {
onReset() {
this.$router.push({
path: "",
});
this.filterQuery = {
udiwmsType: "",
thirdType: "",
page: 1,
limit: 20,
};
this.getList();
},
cancelDialog() {
this.modifyDialogVisible = false;
this.addDialogVisible = false;
},
handleChange() {
this.getList();
},
getList() {
this.loading = true;
getJoinBussinessType(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;
});
}, },
methods: {
onReset() {
this.$router.push({
path: "",
});
this.filterQuery = {
udiwmsType: "",
thirdType: "",
page: 1,
limit: 20,
};
this.getList();
},
cancelDialog() {
this.modifyDialogVisible = false;
this.addDialogVisible = false;
},
handleChange() {
this.getList();
},
getList() {
this.loading = true;
getJoinBussinessType(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.inputQuery.enable && this.inputQuery.localAction == "") {
this.$message.error("本地单据不能为空!");
return;
}
if (this.inputQuery.mainAction == "" || this.inputQuery.mainAction == null) {
this.$message.error("出入库类型不能为空!");
return;
}
insertBussinessType(this.inputQuery)
.then((response) => {
this.loading = false;
this.cancelDialog();
this.getList();
})
.catch(() => {
this.loading = false;
this.cancelDialog();
});
},
onAddSubmit() { onModifySubmit() {
if (this.inputQuery.enable && this.inputQuery.localAction == "") { if (this.inputQuery.enable && this.inputQuery.localAction == "") {
this.$message.error("本地单据不能为空!"); this.$message.error("本地单据不能为空!");
return; return;
} }
insertBussinessType(this.inputQuery)
.then((response) => {
this.loading = false;
this.cancelDialog();
this.getList();
})
.catch(() => {
this.loading = false;
this.cancelDialog();
});
},
onModifySubmit() { if (this.inputQuery.mainAction == "" || this.inputQuery.mainAction == null) {
if (this.inputQuery.enable && this.inputQuery.localAction == "") { this.$message.error("出入库类型不能为空!");
this.$message.error("本地单据不能为空!"); return;
return; }
} updateBussinessType(this.inputQuery)
updateBussinessType(this.inputQuery) .then((response) => {
.then((response) => { this.loading = false;
this.loading = false; this.cancelDialog();
this.cancelDialog(); this.getList();
this.getList(); })
}) .catch(() => {
.catch(() => { this.loading = false;
this.loading = false; this.cancelDialog();
this.cancelDialog(); });
}); },
},
handleAddClick() { handleAddClick() {
this.inputQuery = {}; this.inputQuery = {};
this.addDialogVisible = true; this.addDialogVisible = true;
}, },
handleModifyClick(row) { handleModifyClick(row) {
this.inputQuery = { this.inputQuery = {
id: row.id, id: row.id,
remark: row.remark, remark: row.remark,
action: row.action, action: row.action,
name: row.name, name: row.name,
enable: row.enable, enable: row.enable,
mainAction: row.mainAction, mainAction: row.mainAction,
localAction: row.localAction, localAction: row.localAction,
thirdSysFk: row.thirdSysFk, thirdSysFk: row.thirdSysFk,
checkEnable: row.checkEnable, checkEnable: row.checkEnable,
genUnit: row.genUnit, genUnit: row.genUnit,
innerOrder: row.innerOrder, innerOrder: row.innerOrder,
spUse: row.spUse, spUse: row.spUse,
secCheckEnable: row.secCheckEnable, secCheckEnable: row.secCheckEnable,
checkUdims: row.checkUdims, checkUdims: row.checkUdims,
checkPdaEd: row.checkPdaEd, checkPdaEd: row.checkPdaEd,
checkPdaUn: row.checkPdaUn, checkPdaUn: row.checkPdaUn,
checkPc: row.checkPc, checkPc: row.checkPc,
checkWebNew: row.checkWebNew, checkWebNew: row.checkWebNew,
checkChange: row.checkChange, checkChange: row.checkChange,
secCheckUdims: row.secCheckUdims, secCheckUdims: row.secCheckUdims,
secCheckPdaEd: row.secCheckPdaEd, secCheckPdaEd: row.secCheckPdaEd,
secCheckPdaUn: row.secCheckPdaUn, secCheckPdaUn: row.secCheckPdaUn,
secCheckPc: row.secCheckPc, secCheckPc: row.secCheckPc,
secCheckWebNew: row.secCheckWebNew, secCheckWebNew: row.secCheckWebNew,
secCheckChange: row.secCheckChange, secCheckChange: row.secCheckChange,
corpType: row.corpType + "", corpType: row.corpType + "",
storageCode: row.storageCode, storageCode: row.storageCode,
supplementOrderType: row.supplementOrderType, supplementOrderType: row.supplementOrderType,
}; };
this.modifyDialogVisible = true; this.modifyDialogVisible = true;
}, },
deleteDialog(rowId) { deleteDialog(rowId) {
this.$confirm("此操作将永久删除该扫码类型信息, 是否继续?", "提示", { this.$confirm("此操作将永久删除该扫码类型信息, 是否继续?", "提示", {
confirmButtonText: "确定", confirmButtonText: "确定",
cancelButtonText: "取消", cancelButtonText: "取消",
type: "warning", type: "warning",
}) })
.then(() => { .then(() => {
this.deleteOrders(rowId); this.deleteOrders(rowId);
}) })
.catch(() => { .catch(() => {
}); });
}, },
deleteOrders(data) { deleteOrders(data) {
this.loading = true; this.loading = true;
let tquery = { let tquery = {
id: data.id + "", id: data.id + "",
}; };
deleteBussinessType(tquery) deleteBussinessType(tquery)
.then((response) => { .then((response) => {
this.getList(); this.getList();
if (response.code == 20000) { if (response.code == 20000) {
this.$message({ this.$message({
type: "success", type: "success",
message: "删除成功!", message: "删除成功!",
}); });
} else { } else {
this.$message.error(response.message); this.$message.error(response.message);
} }
}) })
.catch(() => { .catch(() => {
}); });
},
init() {
axios.get("./config.json").then(res => {
//
let response = res.data.BASE_URL;
this.uploadFileUrl = response + "/udiwms/busstiness/file/upload";
});
},
},
components: {
modifyDialog,
},
mounted() {
}, },
created() { init() {
this.init(); axios.get("./config.json").then(res => {
this.getList(); //
let response = res.data.BASE_URL;
this.uploadFileUrl = response + "/udiwms/busstiness/file/upload";
});
}, },
},
components: {
modifyDialog,
},
mounted() {
},
created() {
this.init();
this.getList();
},
}; };
</script> </script>

@ -40,7 +40,7 @@
<span>{{ enableMap[scope.row.enable] }}</span> <span>{{ enableMap[scope.row.enable] }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="是否预入库" prop="advanceType" fixed> <el-table-column label="是否寄售" prop="advanceType" fixed>
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ enableMap[scope.row.advanceType] }}</span> <span>{{ enableMap[scope.row.advanceType] }}</span>
</template> </template>

@ -37,7 +37,7 @@
<span>出入库类型:&nbsp;</span> <span>出入库类型:&nbsp;</span>
</div> </div>
<el-select v-model="inputQuery.mainAction" placeholder="出入库类型"> <el-select v-model="inputQuery.mainAction" placeholder="出入库类型" @change="getOrderType">
<el-option label="入库" value="WareHouseIn"></el-option> <el-option label="入库" value="WareHouseIn"></el-option>
<el-option label="出库" value="WareHouseOut"></el-option> <el-option label="出库" value="WareHouseOut"></el-option>
</el-select> </el-select>
@ -138,7 +138,9 @@
<div class="itemTag"> <div class="itemTag">
<span>补单单据类型:&nbsp;</span> <span>补单单据类型:&nbsp;</span>
</div> </div>
<el-select :disabled="inputQuery.orderTypeEnable" v-model="inputQuery.supplementOrderType" <el-select :disabled="inputQuery.corpType !=1"
v-model="inputQuery.supplementOrderType"
clearable
placeholder="单据类型"> placeholder="单据类型">
<el-option <el-option
v-for="item in orderTypeList" v-for="item in orderTypeList"
@ -373,7 +375,7 @@ export default {
getOrderType() { getOrderType() {
this.orderTypeList = []; this.orderTypeList = [];
let query = { let query = {
id: this.inputQuery.id mainAction: this.inputQuery.mainAction
}; };
getCandidateBussinessType(query).then((response) => { getCandidateBussinessType(query).then((response) => {
this.orderTypeList = response.data || []; this.orderTypeList = response.data || [];
@ -399,9 +401,12 @@ export default {
}, },
created() { created() {
if (this.inputQuery.mainAction != null && this.inputQuery.mainAction != "") {
this.getOrderType();
}
this.getList(); this.getList();
this.getStorage(); this.getStorage();
this.getOrderType();
}, },
}; };
</script> </script>

@ -38,7 +38,7 @@
</el-table-column> </el-table-column>
<el-table-column type="index" label="序号" width="50"></el-table-column> <el-table-column type="index" label="序号" width="50"></el-table-column>
<el-table-column label="单据号" prop="billNo" width="250"></el-table-column> <el-table-column label="单据号" prop="billNo" width="250"></el-table-column>
<el-table-column label="供应商名称" prop="corpName" width="250"></el-table-column> <el-table-column label="往来单位" prop="corpName" width="250"></el-table-column>
<el-table-column label="单据日期" prop="billdate" width="100"></el-table-column> <el-table-column label="单据日期" prop="billdate" width="100"></el-table-column>
<el-table-column label="单据状态" width="100"> <el-table-column label="单据状态" width="100">
<template slot-scope="scope"> <template slot-scope="scope">

@ -68,7 +68,7 @@
</el-table-column> </el-table-column>
<el-table-column type="index" label="序号" width="50"></el-table-column> <el-table-column type="index" label="序号" width="50"></el-table-column>
<el-table-column label="单据号" prop="billNo" show-overflow-tooltip></el-table-column> <el-table-column label="单据号" prop="billNo" show-overflow-tooltip></el-table-column>
<el-table-column label="供应商名称" prop="corpName" show-overflow-tooltip></el-table-column> <el-table-column label="往来单位" prop="corpName" show-overflow-tooltip></el-table-column>
<el-table-column label="单据来源" prop="sourceType" width="150"> <el-table-column label="单据来源" prop="sourceType" width="150">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ sourceMap[scope.row.sourceType] }}</span> <span>{{ sourceMap[scope.row.sourceType] }}</span>
@ -348,6 +348,9 @@ export default {
data() { data() {
return { return {
query: { query: {
billType:null,
corpName:null,
locStorageCode:null,
billNo: "", billNo: "",
status: "3", status: "3",
page: 1, page: 1,

@ -54,7 +54,7 @@
</el-table-column> </el-table-column>
<el-table-column type="index" label="序号" width="50"></el-table-column> <el-table-column type="index" label="序号" width="50"></el-table-column>
<el-table-column label="单据号" prop="billNo" show-overflow-tooltip></el-table-column> <el-table-column label="单据号" prop="billNo" show-overflow-tooltip></el-table-column>
<el-table-column label="供应商名称" prop="corpName" show-overflow-tooltip></el-table-column> <el-table-column label="往来单位" prop="corpName" show-overflow-tooltip></el-table-column>
<el-table-column label="单据来源" prop="sourceType" width="150"> <el-table-column label="单据来源" prop="sourceType" width="150">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ sourceMap[scope.row.sourceType] }}</span> <span>{{ sourceMap[scope.row.sourceType] }}</span>

@ -9,7 +9,33 @@
> >
<el-row> <el-row>
<el-form-item class="query-form-item"> <el-form-item class="query-form-item">
<el-input v-model="query.billNo" placeholder="单据号"></el-input> <el-input v-model="query.billNo" placeholder="单据号" clearable></el-input>
</el-form-item>
<el-form-item class="query-form-item">
<el-select v-model="query.billType" placeholder="请选择业务类型" clearable="true" size="mini">
<el-option
v-for="item in busTypes"
:key="item.localName"
:label="item.localName"
:value="item.localAction">
<span style="float: left">{{ item.localName }}</span>
</el-option>
</el-select>
</el-form-item>
<el-form-item class="query-form-item">
<el-input v-model="query.corpName" placeholder="往来单位" clearable></el-input>
</el-form-item>
<el-form-item class="query-form-item">
<el-select v-model="query.locStorageCode" placeholder="请选择当前仓库" clearable="true" size="mini">
<el-option
v-for="item in storageList"
:key="item.name"
:label="item.name"
:value="item.code">
<span style="float: left">{{ item.name }}</span>
</el-option>
</el-select>
</el-form-item> </el-form-item>
<el-form-item class="query-form-item"> <el-form-item class="query-form-item">
<span style="color: #000; margin-left: 10px; margin-right: 6px">单据日期:</span> <span style="color: #000; margin-left: 10px; margin-right: 6px">单据日期:</span>
@ -476,6 +502,9 @@ export default {
data() { data() {
return { return {
query: { query: {
billType:null,
corpName:null,
locStorageCode:null,
billNo: "", billNo: "",
status: "2", status: "2",
startTime: "", startTime: "",

@ -27,7 +27,7 @@
@row-click="getStockOrderDetailList"> @row-click="getStockOrderDetailList">
<el-table-column type="index" label="序号" width="50"></el-table-column> <el-table-column type="index" label="序号" width="50"></el-table-column>
<el-table-column label="单据号" prop="billNo" width="250"></el-table-column> <el-table-column label="单据号" prop="billNo" width="250"></el-table-column>
<el-table-column label="供应商名称" prop="corpName" width="250"></el-table-column> <el-table-column label="往来单位" prop="corpName" width="250"></el-table-column>
<el-table-column label="单据日期" prop="billdate" width="100"></el-table-column> <el-table-column label="单据日期" prop="billdate" width="100"></el-table-column>
<el-table-column label="单据状态" width="100"> <el-table-column label="单据状态" width="100">
<template slot-scope="scope"> <template slot-scope="scope">

@ -46,7 +46,7 @@
</el-table-column> </el-table-column>
<el-table-column type="index" label="序号" width="50"></el-table-column> <el-table-column type="index" label="序号" width="50"></el-table-column>
<el-table-column label="单据号" prop="billNo"></el-table-column> <el-table-column label="单据号" prop="billNo"></el-table-column>
<el-table-column label="供应商名称" prop="corpName"></el-table-column> <el-table-column label="往来单位" prop="corpName"></el-table-column>
<el-table-column label="单据来源" prop="sourceType" width="150"> <el-table-column label="单据来源" prop="sourceType" width="150">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ sourceMap[scope.row.sourceType] }}</span> <span>{{ sourceMap[scope.row.sourceType] }}</span>

@ -9,7 +9,33 @@
> >
<el-row> <el-row>
<el-form-item class="query-form-item"> <el-form-item class="query-form-item">
<el-input v-model="query.billNo" placeholder="单据号"></el-input> <el-input v-model="query.billNo" placeholder="单据号" clearable></el-input>
</el-form-item>
<el-form-item class="query-form-item">
<el-select v-model="query.billType" placeholder="请选择业务类型" clearable="true" size="mini">
<el-option
v-for="item in busTypes"
:key="item.localName"
:label="item.localName"
:value="item.localAction">
<span style="float: left">{{ item.localName }}</span>
</el-option>
</el-select>
</el-form-item>
<el-form-item class="query-form-item">
<el-input v-model="query.corpName" placeholder="往来单位" clearable></el-input>
</el-form-item>
<el-form-item class="query-form-item">
<el-select v-model="query.locStorageCode" placeholder="请选择当前仓库" clearable="true" size="mini">
<el-option
v-for="item in storageList"
:key="item.name"
:label="item.name"
:value="item.code">
<span style="float: left">{{ item.name }}</span>
</el-option>
</el-select>
</el-form-item> </el-form-item>
<el-form-item class="query-form-item"> <el-form-item class="query-form-item">
<span style="color: #000; margin-left: 10px; margin-right: 6px">单据日期:</span> <span style="color: #000; margin-left: 10px; margin-right: 6px">单据日期:</span>
@ -47,7 +73,7 @@
</el-table-column> </el-table-column>
<el-table-column type="index" label="序号" width="50"></el-table-column> <el-table-column type="index" label="序号" width="50"></el-table-column>
<el-table-column label="单据号" prop="billNo" show-overflow-tooltip></el-table-column> <el-table-column label="单据号" prop="billNo" show-overflow-tooltip></el-table-column>
<el-table-column label="供应商名称" prop="corpName" show-overflow-tooltip></el-table-column> <el-table-column label="往来单位" prop="corpName" show-overflow-tooltip></el-table-column>
<el-table-column label="单据来源" prop="sourceType" width="150"> <el-table-column label="单据来源" prop="sourceType" width="150">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ sourceMap[scope.row.sourceType] }}</span> <span>{{ sourceMap[scope.row.sourceType] }}</span>
@ -430,6 +456,9 @@ export default {
data() { data() {
return { return {
query: { query: {
billType:null,
corpName:null,
locStorageCode:null,
billNo: "", billNo: "",
status: "1", status: "1",
page: 1, page: 1,

@ -552,30 +552,27 @@ export default {
this.$message.warning('未添加产品'); this.$message.warning('未添加产品');
return; return;
} }
for (let i = 0; i < this.codeArray.length; i++) { for (let i = 0; i < this.codeArray.length; i++) {
if (!this.$isBlank(this.codeArray[i].productDate && this.codeArray[i].productDate.length != 6)) { if (!this.$isBlank(this.codeArray[i].productDate) && this.codeArray[i].productDate.length != 6) {
return this.$message.error('生产日期格式错误'); return this.$message.error('生产日期格式错误');
} }
if (!this.$isBlank(this.codeArray[i].expireDate && this.codeArray[i].expireDate.length != 6)) { if (!this.$isBlank(this.codeArray[i].expireDate) && this.codeArray[i].expireDate.length != 6) {
return this.$message.error('失效日期格式错误'); return this.$message.error('失效日期格式错误');
} }
} }
if (status === '3') { if (status === '3') {
for (let i = 0; i < this.codeArray.length; i++) { for (let i = 0; i < this.codeArray.length; i++) {
if (this.$isBlank(this.codeArray[i].count) || this.codeArray[i].count == "0") {
return this.$message.error('单据数量不能为0');
}
if (this.$isBlank(this.codeArray[i].batchNo)) { if (this.$isBlank(this.codeArray[i].batchNo)) {
return this.$message.error('批次号不能为空'); return this.$message.error('批次号不能为空');
} }
if (this.$isBlank(this.codeArray[i].productDate)) { if (this.$isBlank(this.codeArray[i].productDate) && this.$isBlank(this.codeArray[i].expireDate)) {
return this.$message.error('生产日期不能为空'); return this.$message.error('生产日期与失效日期不能全部为空');
} }
if (this.$isBlank(this.codeArray[i].expireDate)) {
return this.$message.error('失效日期不能为空');
}
if (this.$isBlank(this.codeArray[i].count) || this.codeArray[i].count === '0') {
return this.$message.error('单据数量不能小于0');
}
} }
} }

@ -263,12 +263,11 @@ export default {
return; return;
} }
let ids = []; let ids = [];
selection.forEach((obj, index) => { selection.forEach((obj, index) => {
console.log("obj:===" + obj + "==" + obj.relIdFk)
let data = { let data = {
relId: obj.relIdFk, relId: obj.rlId,
batchNo: obj.batchNo,
productDate: obj.productionDate,
expireDate: obj.expireDate,
} }
ids.push(data); ids.push(data);
}); });

@ -37,7 +37,7 @@
</el-table-column> </el-table-column>
<el-table-column type="index" label="序号" width="50"></el-table-column> <el-table-column type="index" label="序号" width="50"></el-table-column>
<el-table-column label="单据号" prop="billNo"></el-table-column> <el-table-column label="单据号" prop="billNo"></el-table-column>
<el-table-column label="供应商名称" prop="corpName"></el-table-column> <el-table-column label="往来单位" prop="corpName"></el-table-column>
<el-table-column label="单据日期" prop="billdate"></el-table-column> <el-table-column label="单据日期" prop="billdate"></el-table-column>
<el-table-column label="单据状态"> <el-table-column label="单据状态">
<template slot-scope="scope"> <template slot-scope="scope">

@ -54,7 +54,7 @@
</el-table-column> </el-table-column>
<el-table-column type="index" label="序号" width="50"></el-table-column> <el-table-column type="index" label="序号" width="50"></el-table-column>
<el-table-column label="单据号" prop="billNo" show-overflow-tooltip></el-table-column> <el-table-column label="单据号" prop="billNo" show-overflow-tooltip></el-table-column>
<el-table-column label="供应商名称" prop="corpName" show-overflow-tooltip></el-table-column> <el-table-column label="往来单位" prop="corpName" show-overflow-tooltip></el-table-column>
<el-table-column label="单据来源" prop="sourceType" width="150" show-overflow-tooltip> <el-table-column label="单据来源" prop="sourceType" width="150" show-overflow-tooltip>
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ sourceMap[scope.row.sourceType] }}</span> <span>{{ sourceMap[scope.row.sourceType] }}</span>

@ -12,6 +12,32 @@
<el-form-item class="query-form-item"> <el-form-item class="query-form-item">
<el-input v-model="query.billNo" placeholder="单据号"></el-input> <el-input v-model="query.billNo" placeholder="单据号"></el-input>
</el-form-item> </el-form-item>
<el-form-item class="query-form-item">
<el-select v-model="query.billType" placeholder="请选择业务类型" clearable="true" size="mini">
<el-option
v-for="item in busTypes"
:key="item.localName"
:label="item.localName"
:value="item.localAction">
<span style="float: left">{{ item.localName }}</span>
</el-option>
</el-select>
</el-form-item>
<el-form-item class="query-form-item">
<el-input v-model="query.corpName" placeholder="往来单位" clearable></el-input>
</el-form-item>
<el-form-item class="query-form-item">
<el-select v-model="query.locStorageCode" placeholder="请选择当前仓库" clearable="true" size="mini">
<el-option
v-for="item in storageList"
:key="item.name"
:label="item.name"
:value="item.code">
<span style="float: left">{{ item.name }}</span>
</el-option>
</el-select>
</el-form-item>
<el-form-item class="query-form-item"> <el-form-item class="query-form-item">
<span style="color: #000; margin-left: 10px; margin-right: 6px">单据日期:</span> <span style="color: #000; margin-left: 10px; margin-right: 6px">单据日期:</span>
<el-date-picker <el-date-picker
@ -46,7 +72,7 @@
</el-table-column> </el-table-column>
<el-table-column type="index" label="序号" width="50"></el-table-column> <el-table-column type="index" label="序号" width="50"></el-table-column>
<el-table-column label="单据号" prop="billNo" show-overflow-tooltip></el-table-column> <el-table-column label="单据号" prop="billNo" show-overflow-tooltip></el-table-column>
<el-table-column label="供应商名称" prop="corpName" show-overflow-tooltip></el-table-column> <el-table-column label="往来单位" prop="corpName" show-overflow-tooltip></el-table-column>
<el-table-column label="单据来源" prop="sourceType" width="150"> <el-table-column label="单据来源" prop="sourceType" width="150">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ sourceMap[scope.row.sourceType] }}</span> <span>{{ sourceMap[scope.row.sourceType] }}</span>
@ -321,6 +347,9 @@ export default {
data() { data() {
return { return {
query: { query: {
billType:null,
corpName:null,
locStorageCode:null,
billNo: "", billNo: "",
status: "3", status: "3",
page: 1, page: 1,

Loading…
Cancel
Save