Merge branch '20231126-yw' into dev_ksck
commit
5a9cda84a3
@ -0,0 +1,66 @@
|
||||
import axios from '@/utils/request'
|
||||
|
||||
/**
|
||||
* 获取单据列表
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
export function getThrInvOrders(query) {
|
||||
return axios({
|
||||
url: '/udiwms/thrsys/getThrInvOrders',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取单据明细列表
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
export function getThrInvOrderDetails(query) {
|
||||
return axios({
|
||||
url: '/udiwms/thrsys/getThrInvOrderDetails',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除明细行
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
export function delThrInvOrderDetail(query) {
|
||||
return axios({
|
||||
url: '/udiwms/thrsys/delThrInvOrderDetail',
|
||||
method: 'post',
|
||||
data: query
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除单据
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
export function delThrInvOrder(query) {
|
||||
return axios({
|
||||
url: '/udiwms/thrsys/delThrInvOrder',
|
||||
method: 'post',
|
||||
data: query
|
||||
})
|
||||
}
|
||||
/**
|
||||
* 生成单据
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
export function generateOrder(query) {
|
||||
return axios({
|
||||
url: '/udiwms/thrsys/generateOrder',
|
||||
method: 'post',
|
||||
data: query
|
||||
})
|
||||
}
|
||||
|
@ -0,0 +1,488 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-card>
|
||||
<el-form :model="filterQuery" size="mini" label-width="100px" v-if="showSearch">
|
||||
<el-row>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="单据号:">
|
||||
<el-input v-model="filterQuery.billNo" style="width: 90%" placeholder="请输入单据号" clearable></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="外部系统:">
|
||||
<el-select v-model="filterQuery.thirdSysFk" style="width: 90%" placeholder="请选择第三方系统"
|
||||
clearable="true" @change="thirdSysChange">
|
||||
<el-option
|
||||
v-for="item in thirdSys"
|
||||
:key="item.thirdId"
|
||||
:label="item.thirdName"
|
||||
:value="item.thirdId">
|
||||
<span style="float: left;font-size: 13px">{{ item.thirdName }}</span>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="单据类型:">
|
||||
<el-select v-model="filterQuery.billType" style="width: 90%" placeholder="请选择第三方系统单据类型"
|
||||
clearable="true">
|
||||
<el-option
|
||||
v-for="item in originTypes"
|
||||
:key="item.name"
|
||||
:label="item.name"
|
||||
:value="item.action">
|
||||
<span style="float: left;font-size: 13px">{{ item.name }}</span>
|
||||
<span style="float: right; color: #8492a6; font-size: 13px;margin-left: 10px">{{
|
||||
item.thirdSysName
|
||||
}}</span>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="单据日期:">
|
||||
<el-date-picker
|
||||
:picker-options="pickerOptions"
|
||||
v-model="actDateRange"
|
||||
type="daterange"
|
||||
format="yyyy 年 MM 月 dd 日"
|
||||
value-format="yyyy-MM-dd"
|
||||
range-separator="至"
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期"
|
||||
>
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
|
||||
<div class="top-right-btn">
|
||||
<el-button-group style="display:flex;">
|
||||
<el-button icon="el-icon-view" type="primary" @click="hideSearch">显示/隐藏搜索栏</el-button>
|
||||
<el-button type="primary" icon="el-icon-refresh" @click="onReset">重置</el-button>
|
||||
<el-button type="primary" icon="el-icon-search" @click="getList">查询</el-button>
|
||||
</el-button-group>
|
||||
</div>
|
||||
|
||||
<el-divider style="margin: 15px"></el-divider>
|
||||
<el-table v-loading="loading" :data="list" style="width: 100%" border highlight-current-row
|
||||
@current-change="handleDetail">
|
||||
<el-table-column label="序号" type="index" width="60"></el-table-column>
|
||||
<el-table-column label="单据号" prop="billNo"></el-table-column>
|
||||
<el-table-column label="单据时间" prop="billDate"></el-table-column>
|
||||
<el-table-column label="出入库类型" prop="mainAction"></el-table-column>
|
||||
<el-table-column label="第三方单据类型" prop="billType"></el-table-column>
|
||||
<el-table-column label="外部系统" prop="thirdSysFk"></el-table-column>
|
||||
<el-table-column label="单据状态" prop="status"></el-table-column>
|
||||
<el-table-column label="操作" width="160">
|
||||
<template slot-scope="scope">
|
||||
<el-button type="text" @click.native.stop="deleteDialog(scope.row)"
|
||||
>删除
|
||||
</el-button>
|
||||
<el-button type="text" @click.native.stop="generateBill(scope.row)"
|
||||
>生成单据
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<pagination
|
||||
v-show="total>0"
|
||||
:total="total"
|
||||
:page.sync="filterQuery.page"
|
||||
:limit.sync="filterQuery.limit"
|
||||
@pagination="getList"
|
||||
/>
|
||||
</el-card>
|
||||
<el-card class="el-card">
|
||||
<el-table v-loading="loading" :data="detailList" style="width: 100%" border highlight-current-row>
|
||||
<el-table-column label="序号" type="index" width="120"></el-table-column>
|
||||
<el-table-column label="物资编码" prop="relId"></el-table-column>
|
||||
<el-table-column label="第三方项目编码" prop="thrCode"></el-table-column>
|
||||
<el-table-column label="产品通用名" prop="cpmctymc" show-overflow-tooltip="true"></el-table-column>
|
||||
<el-table-column label="DI" prop="nameCode" show-overflow-tooltip="true"></el-table-column>
|
||||
<el-table-column label="规格型号" prop="ggxh" show-overflow-tooltip="true"></el-table-column>
|
||||
<el-table-column label="批次号" prop="batchNo"></el-table-column>
|
||||
<el-table-column label="计量单位" prop="measname"></el-table-column>
|
||||
<el-table-column label="价格" prop="price"></el-table-column>
|
||||
<el-table-column label="生产日期" prop="productDate"></el-table-column>
|
||||
<el-table-column label="失效日期" prop="expireDate"></el-table-column>
|
||||
|
||||
<el-table-column label="医疗器械注册备案人" prop="ylqxzcrbarmc"></el-table-column>
|
||||
<el-table-column label="注册/备案号" prop="zczbhhzbapzbh"></el-table-column>
|
||||
|
||||
<el-table-column label="入库数量" prop="inCount"></el-table-column>
|
||||
<el-table-column label="出库数量" prop="outCount"></el-table-column>
|
||||
<el-table-column label="实际数量" prop="reCount"></el-table-column>
|
||||
<el-table-column label="操作" width="60">
|
||||
<template slot-scope="scope">
|
||||
<el-button type="text" @click.native.stop="deleteDetailDialog(scope.row)"
|
||||
>删除
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</el-card>
|
||||
|
||||
<el-dialog
|
||||
:close-on-click-modal="false"
|
||||
:close-on-press-escape="false"
|
||||
title="生成单据"
|
||||
:visible.sync="thrInvOrderGenerateVisible"
|
||||
width="60%"
|
||||
v-if="thrInvOrderGenerateVisible"
|
||||
:close="closeAddDialog"
|
||||
class="dialog-two"
|
||||
top="5vh"
|
||||
>
|
||||
|
||||
<thrInvOrderGenerate
|
||||
:generateOrderDate=thisData
|
||||
:originTypes=originTypes
|
||||
:closeAddDialog="closeAddDialog">
|
||||
</thrInvOrderGenerate>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import {delThrInvOrder, getThrInvOrders, getThrInvOrderDetails,delThrInvOrderDetail} from "@/api/thrsys/thrInvOrder";
|
||||
import {getBussinessType} from "@/api/basic/bussinessType";
|
||||
import {getOriginBusType} from "@/api/basic/busOriginType";
|
||||
import {getBasicThirdSys, filterDetailByKey} from "@/api/basic/basicThirdSys";
|
||||
import {selectIp} from "@/api/param/systemParamConfig";
|
||||
import thrInvOrderGenerate from "@/views/thirdSys/invOrder/thrInvOrderGenerate";
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
thisData:null,
|
||||
showSearch: true,
|
||||
filterQuery: {
|
||||
billType: null,
|
||||
billNo: "",
|
||||
// originType: null,
|
||||
thirdSysFk: "",
|
||||
page: 1,
|
||||
limit: 10,
|
||||
// corpName: null,
|
||||
},
|
||||
thrInvOrderGenerateVisible: false,
|
||||
total: 0,
|
||||
thirdSys: [],
|
||||
thirdSysDetail: null,
|
||||
busTypes: [],
|
||||
originTypes: [],
|
||||
list: [],
|
||||
detailList: [],
|
||||
uploadFileUrl: null,
|
||||
fileList: [],
|
||||
uploadData: {
|
||||
thirdSys: "thirdId",
|
||||
},
|
||||
loading: false,
|
||||
actDateRange: [],
|
||||
pickerOptions: {
|
||||
shortcuts: [
|
||||
{
|
||||
text: "最近一周",
|
||||
onClick(picker) {
|
||||
const end = new Date();
|
||||
const start = new Date();
|
||||
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
|
||||
picker.$emit("pick", [start, end]);
|
||||
},
|
||||
},
|
||||
{
|
||||
text: "最近一个月",
|
||||
onClick(picker) {
|
||||
const end = new Date();
|
||||
const start = new Date();
|
||||
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
|
||||
picker.$emit("pick", [start, end]);
|
||||
},
|
||||
},
|
||||
{
|
||||
text: "最近三个月",
|
||||
onClick(picker) {
|
||||
const end = new Date();
|
||||
const start = new Date();
|
||||
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
|
||||
picker.$emit("pick", [start, end]);
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
onReset() {
|
||||
this.$router.push({
|
||||
path: "",
|
||||
});
|
||||
this.filterQuery = {
|
||||
billNo: "",
|
||||
thirdSysFk: "",
|
||||
// billFlag: null,
|
||||
billType: null,
|
||||
startDate: null,
|
||||
endDate: null,
|
||||
page: 1,
|
||||
limit: 10,
|
||||
// corpName: null,
|
||||
};
|
||||
this.actDateRange = [];
|
||||
this.getList();
|
||||
},
|
||||
hideSearch() {
|
||||
this.showSearch = !this.showSearch;
|
||||
},
|
||||
getList() {
|
||||
if (this.filterQuery.thirdSysFk == null) {
|
||||
this.$message.warning("请先选择第三方系统!")
|
||||
return;
|
||||
}
|
||||
if (this.actDateRange != null) {
|
||||
this.filterQuery.startDate = this.actDateRange[0];
|
||||
this.filterQuery.endDate = this.actDateRange[1];
|
||||
} else {
|
||||
this.filterQuery.startDate = null;
|
||||
this.filterQuery.endDate = null;
|
||||
}
|
||||
this.loading = true;
|
||||
getThrInvOrders(this.filterQuery)
|
||||
.then((response) => {
|
||||
if (response.code == 20000) {
|
||||
this.list = response.data.list || [];
|
||||
this.total = response.data.total || 0;
|
||||
} else {
|
||||
this.$message.error(response.message);
|
||||
}
|
||||
this.loading = false;
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
this.list = [];
|
||||
this.total = 0;
|
||||
});
|
||||
},
|
||||
handleDetail(row) {
|
||||
if (row ==null) return;
|
||||
let query = {orderIdFk: row.billNo};
|
||||
getThrInvOrderDetails(query)
|
||||
.then((response) => {
|
||||
if (response.code == 20000) {
|
||||
this.detailList = response.data.list || [];
|
||||
} else {
|
||||
this.$message.error(response.message);
|
||||
}
|
||||
this.loading = false;
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
});
|
||||
|
||||
},
|
||||
generateBill(row){
|
||||
this.thisData = row;
|
||||
this.thrInvOrderGenerateVisible = true;
|
||||
},
|
||||
deleteDialog(row) {
|
||||
this.$confirm("此操作将永久删除该单据, 是否继续?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning",
|
||||
})
|
||||
.then(() => {
|
||||
let dQuery = {
|
||||
billNo: row.billNo,
|
||||
};
|
||||
delThrInvOrder(dQuery)
|
||||
.then((response) => {
|
||||
this.loading = false;
|
||||
if (response.code == 20000) {
|
||||
this.$message.success("删除成功");
|
||||
this.getList();
|
||||
} else {
|
||||
this.$message.error(response.message);
|
||||
}
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
});
|
||||
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
},
|
||||
deleteDetailDialog(row){
|
||||
this.$confirm("此操作将永久删除该单据明细行, 是否继续?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning",
|
||||
})
|
||||
.then(() => {
|
||||
let dQuery = {
|
||||
id: row.id,
|
||||
};
|
||||
delThrInvOrderDetail(dQuery)
|
||||
.then((response) => {
|
||||
this.loading = false;
|
||||
if (response.code == 20000) {
|
||||
this.$message.success("删除成功");
|
||||
row.billNo = row.orderIdFk;
|
||||
this.handleDetail(row);
|
||||
} else {
|
||||
this.$message.error(response.message);
|
||||
}
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
});
|
||||
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
},
|
||||
getBasicThirdSys() {
|
||||
let query = {
|
||||
enabled: true,
|
||||
};
|
||||
getBasicThirdSys(query)
|
||||
.then((response) => {
|
||||
this.thirdSys = response.data.list || [];
|
||||
this.filterQuery.thirdSysFk = this.thirdSys[0].thirdId;
|
||||
this.uploadData.thirdSys = this.filterQuery.thirdSysFk;
|
||||
this.selectSysParam();
|
||||
this.getThirdSysDetail();
|
||||
this.getBusType();
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
this.list = [];
|
||||
});
|
||||
},
|
||||
handleChange(response, files, fileList) {
|
||||
console.log(response);
|
||||
if (response.code != 20000) {
|
||||
this.$message.error(response.message);
|
||||
} else {
|
||||
console.log(files[0] + "\n" + this.fileList[0] + "\n" + fileList[0]);
|
||||
this.$message.success("文件上传成功,请稍后刷新查看!");
|
||||
}
|
||||
},
|
||||
selectSysParam() {
|
||||
let query = {
|
||||
key: "thirdIpUrl",
|
||||
thirdSysFk: this.filterQuery.thirdSysFk
|
||||
};
|
||||
selectIp(query).then((response) => {
|
||||
if (response.code == 20000) {
|
||||
this.uploadFileUrl = response.data.thridUrl + "/udiwms/erp/pi/upload";
|
||||
}
|
||||
});
|
||||
},
|
||||
thirdSysChange() {
|
||||
this.uploadData.thirdSys = this.filterQuery.thirdSysFk;
|
||||
this.getThirdSysDetail();
|
||||
this.filterQuery.billAction = "";
|
||||
this.getBusType();
|
||||
},
|
||||
getThirdSysDetail() {
|
||||
let query = {
|
||||
thirdSysFk: this.filterQuery.thirdSysFk,
|
||||
key: "orderQueryUrl",
|
||||
};
|
||||
filterDetailByKey(query)
|
||||
.then((response) => {
|
||||
this.thirdSysDetail = response.data;
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
this.list = [];
|
||||
});
|
||||
|
||||
},
|
||||
|
||||
getActionName(action) {
|
||||
for (let i = 0; i < this.busTypes.length; i++) {
|
||||
if (this.busTypes[i].action === action) {
|
||||
return this.busTypes[i].name;
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
getlocalName(action) {
|
||||
for (let i = 0; i < this.busTypes.length; i++) {
|
||||
if (this.busTypes[i].action === action) {
|
||||
return this.busTypes[i].localName;
|
||||
}
|
||||
}
|
||||
},
|
||||
getBusType() {
|
||||
let query = {
|
||||
enabled: true,
|
||||
thirdSys: this.filterQuery.thirdSysFk,
|
||||
};
|
||||
getBussinessType(query)
|
||||
.then((response) => {
|
||||
this.busTypes = response.data.list || [];
|
||||
this.getList();
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
getOriginBusType(query)
|
||||
.then((response) => {
|
||||
this.originTypes = response.data.list || [];
|
||||
// this.filterQuery.originType = this.originTypes[0].action;
|
||||
// this.getList();
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
},
|
||||
closeAddDialog(val) {
|
||||
this.thrInvOrderGenerateVisible = false;
|
||||
if (val) {
|
||||
this.getList();
|
||||
}
|
||||
},
|
||||
},
|
||||
components: {thrInvOrderGenerate},
|
||||
mounted() {
|
||||
},
|
||||
created() {
|
||||
this.getBasicThirdSys();
|
||||
let end = new Date();
|
||||
let start = new Date();
|
||||
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
|
||||
this.actDateRange = [start, end];
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style scoped>
|
||||
.itemTag {
|
||||
float: left;
|
||||
text-align: left;
|
||||
margin-top: 10px;
|
||||
width: 25%;
|
||||
}
|
||||
|
||||
.text {
|
||||
font-size: 13px;
|
||||
font-family: "Microsoft YaHei";
|
||||
}
|
||||
|
||||
.el-row {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.el-col {
|
||||
border-radius: 4px;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
</style>
|
||||
|
@ -0,0 +1,278 @@
|
||||
<template>
|
||||
<el-form :model="generateOrderDate" label-width="120px">
|
||||
<el-row type="flex">
|
||||
<el-col :span="11" type="flex">
|
||||
<el-form-item label="来源单据号:" prop="code">
|
||||
<el-input style="width: 90%" size="small" placeholder="请输入来源单据号"
|
||||
disabled
|
||||
v-model.trim="generateOrderDate.billNo"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="11">
|
||||
<el-form-item prop="invCode" label="当前仓库:">
|
||||
<el-select
|
||||
v-model="generateOrderDate.invCode"
|
||||
placeholder="当前仓库"
|
||||
style="width: 90%"
|
||||
:disabled="corpOrderIdDisabled"
|
||||
@change="changeInv"
|
||||
filterable
|
||||
>
|
||||
<el-option
|
||||
v-for="item in curInvOptions"
|
||||
:key="item.name"
|
||||
:label="item.name"
|
||||
:value="item.code"
|
||||
>
|
||||
<span style="float: left">{{ item.name }}</span>
|
||||
<span style="float: right; color: #8492a6; font-size: 13px">{{
|
||||
item.warehouseName
|
||||
}}</span>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="11">
|
||||
<el-form-item prop="action" label="单据类型:">
|
||||
<el-select
|
||||
v-model="generateOrderDate.action"
|
||||
placeholder="请选择单据类型"
|
||||
:disabled="corpOrderIdDisabled"
|
||||
style="width: 90%"
|
||||
filterable
|
||||
@change="actionChange"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in busTypeOptions"
|
||||
:key="item.name"
|
||||
:label="item.name"
|
||||
:value="item.action"
|
||||
>
|
||||
<span style="float: left">{{ item.name }}</span>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row type="flex">
|
||||
<el-form-item
|
||||
prop="fromCorp"
|
||||
label="往来信息:">
|
||||
<el-select
|
||||
v-model="generateOrderDate.fromCorp"
|
||||
filterable
|
||||
remote
|
||||
clearable
|
||||
reserve-keyword
|
||||
style="width: 90%"
|
||||
placeholder="请输入往来信息"
|
||||
:remote-method="findMethod"
|
||||
:loading="loading"
|
||||
:disabled="corpOrderIdDisabled"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in fromOptions"
|
||||
:key="item.erpId"
|
||||
:label="item.name"
|
||||
:value="item.erpId"
|
||||
>
|
||||
<span style="float: left">{{ item.name }}</span>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
|
||||
<div style='text-align: center; margin-bottom: 10px;'>
|
||||
<el-button type="primary" @click="generateOrder">提交</el-button>
|
||||
<el-button type="primary" @click="closeAddDialog">取消</el-button>
|
||||
</div>
|
||||
|
||||
</el-form>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {generateOrder} from "@/api/thrsys/thrInvOrder";
|
||||
import { findByFrom, findInvByUser } from '../../../api/system/invSubWarehouse'
|
||||
import { parseTime } from '../../../utils/coTools'
|
||||
import {findByInvUser, getBusTypeList} from "@/api/basic/busType";
|
||||
import { getBasicUnitMaintains } from '../../../api/basic/basicUnitMaintain'
|
||||
|
||||
export default {
|
||||
name: 'thrInvOrderGenerate',
|
||||
props: {
|
||||
generateOrderDate: {
|
||||
type: Object,
|
||||
required: true,
|
||||
},
|
||||
closeAddDialog: {
|
||||
type: Function,
|
||||
required: true,
|
||||
},
|
||||
originTypes: {
|
||||
type: Object,
|
||||
required: true,
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
thirdSys: [],
|
||||
options: [{
|
||||
value: 1,
|
||||
label: '客户信息'
|
||||
}, {
|
||||
value: 2,
|
||||
label: '供应商信息'
|
||||
},
|
||||
{
|
||||
value: 3,
|
||||
label: '内部科室'
|
||||
}, {
|
||||
value: 4,
|
||||
label: '特殊往来'
|
||||
}],
|
||||
|
||||
curInvOptions: [],
|
||||
fromOptions: [],
|
||||
busTypeOptions: [],
|
||||
fromInvOptions: [],
|
||||
curPreInInvOptions: [], //预验收仓库
|
||||
curPreInSpaceOptions: [], //预验收货位
|
||||
curPreSpaceOptions: [], //寄售货位
|
||||
curSpaceOptions: [], //当前货位
|
||||
curAction: {
|
||||
corpType: 0,
|
||||
genUnit: false,
|
||||
checkWebNew: null,
|
||||
mainAction: null,
|
||||
}
|
||||
}
|
||||
|
||||
},
|
||||
methods:{
|
||||
//提交
|
||||
generateOrder(){
|
||||
generateOrder(this.generateOrderDate).then((res) => {
|
||||
if (res.code == 20000) {
|
||||
this.$message.success("生成成功!");
|
||||
} else
|
||||
this.$message.error(res.message);
|
||||
}).catch((error) => {
|
||||
this.$message.error(error.message);
|
||||
})
|
||||
},
|
||||
//获取用户仓库列表
|
||||
findInvListByUser() {
|
||||
this.curInvOptions = [];
|
||||
findInvByUser()
|
||||
.then((response) => {
|
||||
this.curInvOptions = response.data || [];
|
||||
if (
|
||||
this.curInvOptions != null &&
|
||||
this.curInvOptions.length > 0 &&
|
||||
this.generateOrderDate.invWarehouseCode == null
|
||||
) {
|
||||
//this.orderFormData.invCode = this.curInvOptions[0].code;
|
||||
this.getBusTypeByInv();
|
||||
}
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
},
|
||||
//仓库改变
|
||||
changeInv(row) {
|
||||
this.generateOrderDate.action = null;
|
||||
this.generateOrderDate.checkPreInOrders = null;
|
||||
this.checkPreInArray = [];
|
||||
if (this.documentShow) {
|
||||
this.documentShow = false;
|
||||
}
|
||||
|
||||
this.curSpaceShow = false;
|
||||
this.preInSpaceShow = false;
|
||||
this.preSpaceShow = false;
|
||||
this.generateOrderDate.curSpaceCode = false;
|
||||
this.generateOrderDate.checkPreInSpaceCode = false;
|
||||
this.generateOrderDate.preCurSpaceCode = false;
|
||||
this.getBusTypeByInv();
|
||||
},
|
||||
//单据类型改变
|
||||
actionChange(item) {
|
||||
this.generateOrderDate.checkPreInOption = null;
|
||||
this.generateOrderDate.checkPreInOrders = null;
|
||||
this.checkPreInArray = [];
|
||||
this.curAction = this.getActionItem(item);
|
||||
this.bizShow = false;
|
||||
//2. 切换往来仓库
|
||||
this.generateOrderDate.fromInvCode = null;
|
||||
this.findMethod();
|
||||
},
|
||||
//根据仓库,用户获取单据类型
|
||||
getBusTypeByInv() {
|
||||
let query = {
|
||||
code: this.generateOrderDate.invCode,
|
||||
editType: 2 //可编辑
|
||||
};
|
||||
findByInvUser(query)
|
||||
.then((response) => {
|
||||
this.busTypeOptions = response.data || [];
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
},
|
||||
//获取当前单据类型
|
||||
getActionItem(action) {
|
||||
for (let i = 0; i < this.busTypeOptions.length; i++) {
|
||||
if (this.busTypeOptions[i].action == action) {
|
||||
return this.busTypeOptions[i];
|
||||
}
|
||||
}
|
||||
},
|
||||
//获取往来单位候选列表
|
||||
findMethod(query) {
|
||||
this.fromOptions = [];
|
||||
let cQuery = {
|
||||
key: query,
|
||||
corpType: 4,
|
||||
outType: null,
|
||||
page: 1,
|
||||
limit: 20,
|
||||
};
|
||||
getBasicUnitMaintains(cQuery)
|
||||
.then((response) => {
|
||||
this.loading = false;
|
||||
this.fromOptions = response.data.list || [];
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
});
|
||||
},
|
||||
|
||||
},
|
||||
created() {
|
||||
//页面初始化
|
||||
this.generateOrderDate.code = "";
|
||||
this.generateOrderDate.orderType = this.viewType;
|
||||
//新增页面
|
||||
this.corpOrderIdDisabled = false;
|
||||
let date = new Date();
|
||||
this.generateOrderDate.createTime = parseTime(
|
||||
date,
|
||||
"{y}-{m}-{d} {h}:{i}:{s}"
|
||||
);
|
||||
this.generateOrderDate.corpOrderId =
|
||||
parseTime(date, "{y}{m}{d}{h}{i}{s}") +
|
||||
Math.ceil(Math.random() * 89 + 10);
|
||||
this.generateOrderDate.deptCode = this.$store.getters.deptCode;
|
||||
this.generateOrderDate.invCode = this.$store.getters.locInvCode;
|
||||
this.findInvListByUser();
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
Loading…
Reference in New Issue