单据流转设置改动,采购管理优化,bug处理

tagView
anthonywj 3 years ago
parent 2df6975db9
commit a5afc83cd3

@ -7,6 +7,13 @@ export function getChangeBusType(query) {
params: query
});
}
export function filterAll(query) {
return axios({
url: "/spms/busTypeChange/filter",
method: "get",
params: query
});
}
export function addChangeBusType(query) {

@ -65,6 +65,7 @@ import stockDeliveryOrder from "../views/warehouse/stockDeliveryOrder";
import BussinessType from "../views/basic/BussinessType.vue";
import BussinessTypeLocl from "../views/basic/BussinessTypeLocl.vue";
import bussinessTypeThird from "../views/basic/BussinessTypeThird.vue";
import otherTypeChange from "../views/basic/OtherTypeChange.vue";
import bussinessTypeChange from "../views/basic/BusTypeChange.vue";
//基础数据维护
@ -383,7 +384,6 @@ export const asyncRouterMap = [
authRule: ["product/BussinessTypeLocl"]
}
},
{
path: "bussinessTypeChange",
name: "单据流转设置",
@ -393,6 +393,15 @@ export const asyncRouterMap = [
}
},
{
path: "otherTypeChange",
name: "耗材领用设置",
component: otherTypeChange,
meta: {
authRule: ["admin/otherTypeChange"]
}
},
]
},

@ -16,12 +16,6 @@
style="width: 200px"
></el-input>
</el-form-item>
<el-form-item class="query-form-item">
<el-select v-model="filterQuery.type">
<el-option v-for="(item,index) in typeMap" :key="index" :label="item" :value="index">
</el-option>
</el-select>
</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>
@ -37,21 +31,17 @@
<el-table v-loading="loading" :data="list" style="width: 100%">
<el-table-column label="序号" type="index" width="55"></el-table-column>
<el-table-column label="单据类型名称" prop="originName"></el-table-column>
<el-table-column label="单据类型代码" prop="originAction"></el-table-column>
<el-table-column label="目标单据类型" prop="targetBusName"></el-table-column>
<el-table-column label="类型" prop="type">
<el-table-column label="原单据类型" prop="originName"></el-table-column>
<el-table-column label="目标单据类型" prop="targetName"></el-table-column>
<el-table-column label="目标当前仓库" prop="locSubInvName"></el-table-column>
<el-table-column label="目标往来仓库" prop="defautSubInvName"></el-table-column>
<el-table-column label="时间推移(小时)" prop="beforeTime"></el-table-column>
<el-table-column label="补单方式" prop="supplementAll">
<template slot-scope="scope">
<span>{{ typeMap[scope.row.type] }}</span>
<span>{{ enableMap[scope.row.supplementAll] }}</span>
</template>
</el-table-column>
<el-table-column label="状态" prop="enable">
<template slot-scope="scope">
<span>{{ enableMap[scope.row.enable] }}</span>
</template>
</el-table-column>
<el-table-column label="备注" prop="remark"></el-table-column>
<el-table-column label="备注" prop="intro"></el-table-column>
<el-table-column label="操作" width="100" fixed="right">
<template slot-scope="scope">
<el-button
@ -105,14 +95,10 @@
</div>
</template>
<script>
import {
getBusChange,
updateBusChange, delBusChange,
insertBusChange
} from "../../api/basic/busTypeChange";
import modifyDialog from "./BusTypeChangeModify";
import axios from "axios";
import {addChangeBusType, filterAll, updateChangeBusType, removeBusChange} from "@/api/basic/busChangeType";
export default {
data() {
@ -126,13 +112,8 @@ export default {
list: [],
inputQuery: {},
enableMap: {
true: "禁用",
false: "启用",
},
typeMap: {
1: "耗材领用",
2: "产品申购",
3: "采购计划",
true: "全量补单",
false: "自动补单",
},
total: 0,
loading: false,
@ -167,7 +148,7 @@ export default {
},
getList() {
this.loading = true;
getBusChange(this.filterQuery)
filterAll(this.filterQuery)
.then((response) => {
this.loading = false;
this.list = response.data.list || [];
@ -185,35 +166,34 @@ export default {
},
onAddSubmit() {
if (this.$isBlank(this.inputQuery.originName)) {
this.$message.error("单据类型名称不能为空!");
return;
}
if (this.$isBlank(this.inputQuery.originAction)) {
this.$message.error("单据类型代码不能为空!");
this.$message.error("原单据类型不能为空!");
return;
}
if (this.$isBlank(this.inputQuery.targetBusAction)) {
if (this.$isBlank(this.inputQuery.action)) {
this.$message.error("目标单据类型不能为空!");
return;
}
if (this.$isBlank(this.inputQuery.type)) {
this.$message.error("请选择设置类型");
if (this.$isBlank(this.inputQuery.locSubInv)) {
this.$message.error("目标所在仓库不能为空");
return;
}
if (this.$isBlank(this.inputQuery.enable)) {
this.$message.error("请选择启用状态");
if (this.$isBlank(this.inputQuery.action)) {
this.$message.error("原单据类型不能为空");
return;
}
if (this.formName == "add") {
if (this.formName == "add") {
let numRegExp = '^[0-9]*$';
let numReg = new RegExp(numRegExp);
if (numReg.test(this.inputQuery.name)) {
this.$message.error("单据类型名称不得为纯数字类型!");
return;
}
insertBusChange(this.inputQuery)
this.inputQuery.type = 1; //
addChangeBusType(this.inputQuery)
.then((response) => {
if (response.code == 20000) {
this.loading = false;
@ -228,7 +208,7 @@ export default {
this.cancelDialog();
});
} else {
updateBusChange(this.inputQuery)
updateChangeBusType(this.inputQuery)
.then((response) => {
this.loading = false;
this.cancelDialog();
@ -272,9 +252,13 @@ export default {
let query = {
id: rowId,
}
delBusChange(query)
removeBusChange(query)
.then((response) => {
this.getList();
if (response.code == 20000) {
this.$message.success("删除成功!");
this.getList();
} else
this.$message.error(response.message);
})
.catch(() => {
});

@ -1,115 +1,155 @@
<template>
<div>
<el-row :gutter="20" class="el-row" type="flex">
<el-col :span="10" class="el-col">
<div class="text item">
<div class="itemTag">
<span>单据类型名称:&nbsp;</span>
</div>
<el-input
style="width: 200px"
size="small"
splaceholder="请输入内容"
:disabled="!isAdd"
v-model.trim="inputQuery.originName"
></el-input>
<el-col :span="3">
<div class="ao-text">
<span>原单据类型</span>
</div>
</el-col>
<el-col :span="10" class="el-col">
<div class="text item">
<div class="itemTag">
<span>单据类型代码:&nbsp;</span>
</div>
<el-input
style="width: 200px"
:disabled="!isAdd"
size="small"
splaceholder="请输入内容"
v-model.trim="inputQuery.originAction"
></el-input>
<el-col :span="7" class="el-col">
<el-select v-model="inputQuery.originAction" placeholder="请选择" clearable="true" style="width: 80%">
<el-option
v-for="item in originBusTypes"
:key="item.localAction"
:label="item.localName"
:value="item.localAction">
<span style="float: left">{{ item.localName }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.localAction }}</span>
</el-option>
</el-select>
</el-col>
<el-col :span="3">
<div class="ao-text">
<span>目标单据类型</span>
</div>
</el-col>
<el-col :span="7" class="el-col">
<el-select v-model="inputQuery.action" placeholder="请选择" clearable="true" style="width: 80%">
<el-option
v-for="item in targetBusTypes"
:key="item.localAction"
:label="item.localName"
:value="item.localAction">
<span style="float: left">{{ item.localName }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.localAction }}</span>
</el-option>
</el-select>
</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>目标单据类型:&nbsp;</span>
</div>
<el-select v-model="inputQuery.targetBusAction" placeholder="请选择" clearable="true">
<el-option
v-for="item in busTypes"
:key="item.localAction"
:label="item.localName"
:value="item.localAction">
<span style="float: left">{{ item.localName }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.localAction }}</span>
</el-option>
</el-select>
<el-col :span="3">
<div class="ao-text">
<span>目标所在仓库</span>
</div>
</el-col>
<el-col :span="10" class="el-col">
<div class="text item">
<div class="itemTag">
<span>设置类型:&nbsp;</span>
</div>
<el-select
size="small"
:disabled="inputQuery.systemDefault"
v-model="inputQuery.type"
placeholder="设置类型"
>
<el-option label="耗材领用" :value="1"></el-option>
<el-option label="采购计划" :value="3"></el-option>
</el-select>
<el-col :span="7" class="el-col">
<el-select v-model="inputQuery.locSubInv" placeholder="目标所在仓库" clearable="true"
@change="invChange" style="width: 80%"
size="small">
<el-option
v-for="item in locInvs"
:key="item.name"
:label="item.name"
:value="item.code">
<span style="float: left">{{ item.name }}</span>
</el-option>
</el-select>
</el-col>
<el-col :span="3">
<div class="ao-text">
<span>目标往来仓库</span>
</div>
</el-col>
<el-col :span="7" class="el-col">
<el-select v-model="inputQuery.defaultSubInv" placeholder="目标往来仓库" clearable="true" style="width: 80%"
@change="invChange"
size="small">
<el-option
v-for="item in fromInvs"
:key="item.name"
:label="item.name"
:value="item.code">
<span style="float: left">{{ item.name }}</span>
</el-option>
</el-select>
</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>启用状态:&nbsp;</span>
</div>
<el-select
size="small"
:disabled="inputQuery.systemDefault"
v-model="inputQuery.enable"
placeholder="启用状态"
>
<el-option label="启用" :value="false"></el-option>
<el-option label="禁用" :value="true"></el-option>
</el-select>
<el-col :span="3">
<div class="ao-text">
<span>推移时间(小时)</span>
</div>
</el-col>
<el-col :span="10" class="el-col">
<div class="text item">
<div class="itemTag">
<span>备注:&nbsp;</span>
</div>
<el-input
style="width: 200px"
size="small"
splaceholder="请输入内容"
v-model="inputQuery.remark"
></el-input>
<el-col :span="7" class="el-col">
<el-input
style="width: 80%"
size="small"
type="number"
splaceholder="请输入内容"
v-model="inputQuery.beforeTime"
></el-input>
</el-col>
<el-col :span="3">
<div class="ao-text">
<span>流转方式</span>
</div>
</el-col>
<el-col :span="7" class="el-col">
<el-select v-model="inputQuery.supplementAll" placeholder="流转方式" style="width: 80%">
<el-option label="全量补单" :value="true"></el-option>
<el-option label="自动补单" :value="false"></el-option>
</el-select>
</el-col>
</el-row>
<el-row :gutter="20" class="el-row" type="flex">
<el-col :span="3">
<div class="ao-text">
<span>备注</span>
</div>
</el-col>
<el-col :span="7" class="el-col">
<el-input
style="width: 80%"
size="small"
splaceholder="请输入内容"
v-model="inputQuery.remark"
></el-input>
</el-col>
</el-row>
<el-divider></el-divider>
</div>
</template>
<script>
import {
getBasicThirdSys,
} from "../../api/basic/basicThirdSys";
import {
getLocalBusType, getLocalJoinBusType,
getLocalJoinByUser, getLocalJoinBusType,
} from "../../api/basic/busLocalType";
import {filterSubAll, filterSubByInv} from "@/api/basic/invSubWarehouse";
export default {
name: "BusTypeChangeModify",
@ -126,71 +166,87 @@ export default {
enabled: true,
isBuType: true,
},
busTypes: [],
originBusTypes: [],
targetBusTypes: [],
locInvs: [],
fromInvs: [],
isAdd: false,
rules: {
originName: [
{
required: true,
message: "单据类型名称不能为空",
trigger: "blur"
}
],
originAction: [
{
required: true,
message: "单据类型代码不能为空",
trigger: "blur"
}
],
targetBusAction: [
{
required: true,
message: "目标单据类型不能为空",
trigger: "blur"
}
],
type: [
{
required: true,
message: "请选择设置类型",
trigger: "blur"
}
],
enable: [
{
required: true,
message: "请选择启用状态",
trigger: "blur"
}
],
},
}
},
methods: {
getBusType() {
getOriginBusType() {
let query = {
enabled: true,
corpType: 1,
};
getLocalJoinBusType(query)
.then((response) => {
this.busTypes = response.data.list || [];
this.originBusTypes = response.data.list || [];
})
.catch(() => {
});
}
},
getTargetBusType() {
let query = {
invWarehouseCode: this.inputQuery.locSubInv,
enabled: true,
};
getLocalJoinByUser(query)
.then((response) => {
this.targetBusTypes = response.data.list || [];
})
.catch(() => {
});
},
getLocalInv() {
let subQuery = {}
filterSubAll(subQuery).then((res) => {
if (res.code == 20000) {
this.locInvs = res.data;
}
}).catch((error) => {
});
},
invChange(){
this.getTargetBusType();
this.getFromInv();
},
getFromInv() {
let subQuery = {
code:this.inputQuery.locSubInv,
}
filterSubByInv(subQuery).then((res) => {
if (res.code == 20000) {
this.fromInvs = res.data;
}
}).catch((error) => {
});
},
},
created() {
if (this.inputQuery.originAction == null) {
this.isAdd = true;
}else {
this.getFromInv();
this.getTargetBusType();
}
this.getBusType();
}
,
this.getOriginBusType();
this.getLocalInv();
},
}
;
</script>

@ -116,38 +116,34 @@
</el-checkbox>
</div>
</el-col>
<el-col :span="4" class="el-col">
<div class="text item">
<el-checkbox v-model="inputQuery.changeEnable" @change="isChangeOrder"
:disabled="!changeEnable || inputQuery.mainAction=='WareHouseIn'
|| inputQuery.id == null || inputQuery.mainAction==null ||inputQuery.preIn ">
自动补单
</el-checkbox>
</div>
</el-col>
<el-col :span="4" class="el-col">
<div class="text item">
<el-checkbox v-model="inputQuery.supplementAll"
@change="supplementChange"
:disabled="!inputQuery.changeEnable ">全量补单
</el-checkbox>
</div>
</el-col>
<!-- <el-col :span="4" class="el-col">-->
<!-- <div class="text item">-->
<!-- <el-checkbox v-model="inputQuery.changeEnable" @change="isChangeOrder"-->
<!-- :disabled="!changeEnable || inputQuery.mainAction=='WareHouseIn'-->
<!-- || inputQuery.id == null || inputQuery.mainAction==null ||inputQuery.preIn ">-->
<!-- 自动补单-->
<!-- </el-checkbox>-->
<!-- </div>-->
<!-- </el-col>-->
<!-- <el-col :span="4" class="el-col">-->
<!-- <div class="text item">-->
<!-- <el-checkbox v-model="inputQuery.supplementAll"-->
<!-- @change="supplementChange"-->
<!-- :disabled="!inputQuery.changeEnable ">全量补单-->
<!-- </el-checkbox>-->
<!-- </div>-->
<!-- </el-col>-->
</el-row>
<div v-if="visibleChange">
<el-table border style="margin-bottom: 20px;margin-top: 10px" :data="changeList">
<el-table-column label="序号" type="index" width="55"></el-table-column>
<el-table-column label="补单说明" prop="intro"></el-table-column>
<el-table-column label="补单扫码单据类型" prop="name"></el-table-column>
<el-table-column label="推前时长(小时)" prop="beforeTime"></el-table-column>
<el-table-column label="补单默认仓库" prop="defautInvName"></el-table-column>
<el-table-column label="补单默认分库" prop="defautSubInvName"></el-table-column>
<el-table-column label="备注" prop="remark"></el-table-column>
<el-table-column label="操作" fixed="right">
<template slot-scope="scope">
<el-button
@ -434,12 +430,12 @@ export default {
updateChangeBusType(this.editQuery)
.then((response) => {
if(response.code==999){
this.$message.error(response.message);
}else{
this.editChangeTypeVisible = false;
this.getList();
}
if (response.code == 999) {
this.$message.error(response.message);
} else {
this.editChangeTypeVisible = false;
this.getList();
}
})
.catch(() => {
});

@ -202,7 +202,7 @@
</el-checkbox>
<el-checkbox v-model="inputQuery.genUnit" :disabled="inputQuery.corpType !=2">
</el-checkbox>
<el-checkbox v-model="inputQuery.useDyCount" :disabled="true">使
<el-checkbox v-model="inputQuery.useDyCount" :disabled="inputQuery.corpType !=2">使
</el-checkbox>
<span style="margin-left: 15px">单据详情展示方式:</span>
@ -221,12 +221,13 @@
<el-row :gutter="20" class="el-row" type="flex">
<el-col :span="24" class="el-col">
<div class="text item" >
<div class="text item">
<el-checkbox v-model="inputQuery.ullageFill" :disabled="!inputQuery.changeEnable">
</el-checkbox>
<el-checkbox v-model="inputQuery.scanPreIn" :disabled="inputQuery.corpType!='2'">
</el-checkbox>
<el-checkbox v-model="inputQuery.vailInv" :disabled="inputQuery.mainAction=='WareHouseIn'">
<el-checkbox v-model="inputQuery.vailInv" :disabled="inputQuery.mainAction=='WareHouseIn'">
是否只允许有库存产品出库
</el-checkbox>
<el-checkbox v-model="inputQuery.codeFillCheck">UDI
</el-checkbox>

@ -0,0 +1,304 @@
<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.originName"
placeholder="单据类型名称"
style="width: 200px"
></el-input>
</el-form-item>
<el-form-item class="query-form-item">
<el-input
v-model="filterQuery.originAction"
placeholder="单据类型代码"
style="width: 200px"
></el-input>
</el-form-item>
<!-- <el-form-item class="query-form-item">-->
<!-- <el-select v-model="filterQuery.type">-->
<!-- <el-option v-for="(item,index) in typeMap" :key="index" :label="item" :value="index">-->
<!-- </el-option>-->
<!-- </el-select>-->
<!-- </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="search"></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="55"></el-table-column>
<el-table-column label="领用类型名称" prop="originName"></el-table-column>
<el-table-column label="领用类型代码" prop="originAction"></el-table-column>
<el-table-column label="目标业务单据类型" prop="targetBusName"></el-table-column>
<el-table-column label="类型" prop="type">
<template slot-scope="scope">
<span>{{ typeMap[scope.row.type] }}</span>
</template>
</el-table-column>
<el-table-column label="状态" prop="enable">
<template slot-scope="scope">
<span>{{ enableMap[scope.row.enable] }}</span>
</template>
</el-table-column>
<el-table-column label="备注" prop="remark"></el-table-column>
<el-table-column label="操作" width="100" 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"
:disabled="scope.row.systemDefault"
@click.native.stop="handleDeleteClick(scope.row)"
>删除
</el-button
>
</template>
</el-table-column>
</el-table>
<el-dialog
:title="formMap[formName]"
: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-pagination
:page-size="filterQuery.limit"
@current-change="handleCurrentChange"
layout="prev, pager, next"
:total="total"
:current-page="filterQuery.page"
></el-pagination>
</el-card>
</div>
</template>
<script>
import {
getBusChange,
updateBusChange, delBusChange,
insertBusChange
} from "../../api/basic/busTypeChange";
import modifyDialog from "./OtherTypeChangeModify";
import axios from "axios";
export default {
data() {
return {
filterQuery: {
name: "",
page: 1,
limit: 20,
},
addDialogVisible: false,
list: [],
inputQuery: {},
enableMap: {
true: "禁用",
false: "启用",
},
typeMap: {
1: "耗材领用",
2: "产品申购",
3: "采购计划",
},
total: 0,
loading: false,
configParms: {},
formMap: {
add: "新增单据流转设置",
update: "编辑单据流转设置",
},
formName: "add",
};
},
methods: {
onReset() {
this.$router.push({
path: "",
});
this.filterQuery = {
name: null,
enable: null,
page: 1,
limit: 20,
};
this.getList();
},
cancelDialog() {
this.addDialogVisible = false;
},
search() {
this.filterQuery.page = 1;
this.getList();
},
getList() {
this.loading = true;
getBusChange(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;
});
},
handleCurrentChange(val) {
this.filterQuery.page = val;
this.getList();
},
onAddSubmit() {
if (this.$isBlank(this.inputQuery.originName)) {
this.$message.error("单据类型名称不能为空!");
return;
}
if (this.$isBlank(this.inputQuery.originAction)) {
this.$message.error("单据类型代码不能为空!");
return;
}
if (this.$isBlank(this.inputQuery.targetBusAction)) {
this.$message.error("目标单据类型不能为空!");
return;
}
// if (this.$isBlank(this.inputQuery.type)) {
// this.$message.error("");
// return;
// }
if (this.$isBlank(this.inputQuery.enable)) {
this.$message.error("请选择启用状态!");
return;
}
if (this.formName == "add") {
let numRegExp = '^[0-9]*$';
let numReg = new RegExp(numRegExp);
if (numReg.test(this.inputQuery.name)) {
this.$message.error("单据类型名称不得为纯数字类型!");
return;
}
this.inputQuery.type = 1; //
insertBusChange(this.inputQuery)
.then((response) => {
if (response.code == 20000) {
this.loading = false;
this.cancelDialog();
this.getList();
} else {
this.$message.error(response.message);
}
})
.catch(() => {
this.loading = false;
this.cancelDialog();
});
} else {
updateBusChange(this.inputQuery)
.then((response) => {
this.loading = false;
this.cancelDialog();
this.getList();
})
.catch(() => {
this.loading = false;
this.cancelDialog();
});
}
},
handleAddClick() {
this.inputQuery = {};
this.formName = "add";
this.addDialogVisible = true;
},
handleModifyClick(row) {
this.inputQuery = row;
this.formName = "update";
this.addDialogVisible = true;
},
handleDeleteClick(row) {
this.deleteDialog(row.id)
},
deleteDialog(rowId) {
this.$confirm("此操作将永久删除该单据类型信息, 是否继续?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
let query = {
id: rowId,
}
delBusChange(query)
.then((response) => {
this.getList();
})
.catch(() => {
});
})
.catch(() => {
});
},
thirdSysChange() {
this.getList();
},
},
components: {
modifyDialog,
},
mounted() {
},
created() {
this.getList();
},
};
</script>

@ -0,0 +1,224 @@
<template>
<div>
<el-row :gutter="20" class="el-row" type="flex">
<el-col :span="10" class="el-col">
<div class="text item">
<div class="itemTag">
<span>领用类型名称:&nbsp;</span>
</div>
<el-input
style="width: 200px"
size="small"
splaceholder="请输入内容"
:disabled="!isAdd"
v-model.trim="inputQuery.originName"
></el-input>
</div>
</el-col>
<el-col :span="10" class="el-col">
<div class="text item">
<div class="itemTag">
<span>领用类型代码:&nbsp;</span>
</div>
<el-input
style="width: 200px"
:disabled="!isAdd"
size="small"
splaceholder="请输入内容"
v-model.trim="inputQuery.originAction"
></el-input>
</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>目标单据类型:&nbsp;</span>
</div>
<el-select v-model="inputQuery.targetBusAction" placeholder="请选择" clearable="true">
<el-option
v-for="item in busTypes"
:key="item.localAction"
:label="item.localName"
:value="item.localAction">
<span style="float: left">{{ item.localName }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.localAction }}</span>
</el-option>
</el-select>
</div>
</el-col>
<el-col :span="10" class="el-col">
<div class="text item">
<div class="itemTag">
<span>启用状态:&nbsp;</span>
</div>
<el-select
size="small"
:disabled="inputQuery.systemDefault"
v-model="inputQuery.enable"
placeholder="启用状态"
>
<el-option label="启用" :value="false"></el-option>
<el-option label="禁用" :value="true"></el-option>
</el-select>
</div>
</el-col>
<!-- <el-col :span="10" class="el-col">-->
<!-- <div class="text item">-->
<!-- <div class="itemTag">-->
<!-- <span>设置类型:&nbsp;</span>-->
<!-- </div>-->
<!-- <el-select-->
<!-- size="small"-->
<!-- :disabled="inputQuery.systemDefault"-->
<!-- v-model="inputQuery.type"-->
<!-- placeholder="设置类型"-->
<!-- >-->
<!-- <el-option label="耗材领用" :value="1"></el-option>-->
<!-- <el-option label="采购计划" :value="3"></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>备注:&nbsp;</span>
</div>
<el-input
style="width: 200px"
size="small"
splaceholder="请输入内容"
v-model="inputQuery.remark"
></el-input>
</div>
</el-col>
</el-row>
<el-divider></el-divider>
</div>
</template>
<script>
import {
getBasicThirdSys,
} from "../../api/basic/basicThirdSys";
import {
getLocalBusType, getLocalJoinBusType,
} from "../../api/basic/busLocalType";
export default {
name: "BusTypeChangeModify",
props: {
inputQuery: {
type: Object,
required: true,
},
},
data() {
return {
filterQuery: {
enabled: true,
isBuType: true,
},
busTypes: [],
isAdd: false,
rules: {
originName: [
{
required: true,
message: "单据类型名称不能为空",
trigger: "blur"
}
],
originAction: [
{
required: true,
message: "单据类型代码不能为空",
trigger: "blur"
}
],
targetBusAction: [
{
required: true,
message: "目标单据类型不能为空",
trigger: "blur"
}
],
// type: [
// {
// required: true,
// message: "",
// trigger: "blur"
// }
// ],
enable: [
{
required: true,
message: "请选择启用状态",
trigger: "blur"
}
],
},
}
},
methods: {
getBusType() {
let query = {
enabled: true,
corpType: 1,
};
getLocalJoinBusType(query)
.then((response) => {
this.busTypes = response.data.list || [];
})
.catch(() => {
});
}
},
created() {
if (this.inputQuery.originAction == null) {
this.isAdd = true;
}
this.getBusType();
}
,
}
;
</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>

@ -517,7 +517,7 @@
<el-col :span="12" class="el-col">
<el-form-item prop="name">
<el-checkbox v-model="checked" class="text item itemTag"
>以使用单元数量入库
>允许科室多次使用多人份耗材
</el-checkbox>
</el-form-item>
</el-col>

@ -478,11 +478,7 @@
<el-row :gutter="20" class="el-row" type="flex">
<el-col :span="24" class="el-col">
<div style="margin-top: 18px;margin-bottom: 18px">
<el-checkbox v-model="checked" class=""
:disabled="!isUseDyCheck"
>以使用单元数量入库
</el-checkbox>
<div style="margin-top: 18px;margin-bottom: 10px">
<el-checkbox v-model="editQuery.isDisable" class=""
@change="diableChange"
>是否禁用
@ -502,6 +498,27 @@
</div>
</el-col>
</el-row>
<el-row :gutter="20" class="el-row" type="flex">
<el-col :span="24" class="el-col">
<div style="margin-bottom: 18px">
<el-checkbox v-model="checked" class=""
:disabled="!isUseDyCheck || editQuery.useMuti==true "
@change="useDyCheckChange"
>启用使用单元
</el-checkbox>
<!-- <el-checkbox v-model="editQuery.useDyCount" class=""-->
<!-- :disabled="!isUseDyCheck|| checked || editQuery.useMuti==true"-->
<!-- @change="useDyCountChange"-->
<!-- >以使用单元计数-->
<!-- </el-checkbox>-->
<el-checkbox v-model="editQuery.useMuti" class=""
:disabled="checked"
@change="useMutiChange"
>允许科室多次使用出库
</el-checkbox>
</div>
</el-col>
</el-row>
<el-divider></el-divider>
@ -529,7 +546,7 @@
<el-col :span="12" class="el-col">
<div class="text item">
<div class="itemTag">
<span>最小包装单元内包含使用单元数量:&nbsp;</span>
<span>最小包装内包含使用单元数量:&nbsp;</span>
</div>
<el-input
style="width: 65%"
@ -549,7 +566,6 @@
<div class="itemTag">
<span>包含下级产品编码:&nbsp;</span>
</div>
<el-input
style="width: 65%"
size="small"
@ -576,6 +592,25 @@
</div>
</el-col>
</el-row>
<el-row :gutter="20" class="el-row" type="flex">
<el-col :span="12" class="el-col">
<div class="text item">
<div class="itemTag">
<span>最小包装可使用次数:&nbsp;</span>
</div>
<el-input
style="width: 65%"
size="small"
splaceholder="请输入内容"
:disabled="useNumEnable"
type="number"
v-model="editQuery.useNum"
></el-input>
</div>
</el-col>
</el-row>
</el-collapse-item>
<el-collapse-item name="2">
@ -1064,7 +1099,8 @@ export default {
isUseDyCheck: false,
lockStatusMap: {1: "未提交", 2: "已提交", 3: "已锁定"},
configParms: {},
activeNames: ['1']
activeNames: ['1'],
useNumEnable: true,
};
},
@ -1123,6 +1159,27 @@ export default {
this.detailList = [];
});
},
useDyCheckChange(val) {
this.editQuery.useNum = 0;
},
useDyCountChange(val) {
if (val) {
this.editQuery.useNum = this.editQuery.zxxsbzbhsydysl;
} else {
this.editQuery.useNum = 0;
}
},
useMutiChange(val) {
if (val) {
this.useNumEnable = false;
this.editQuery.useNum = this.editQuery.zxxsbzbhsydysl;
} else {
this.useNumEnable = true;
this.editQuery.useNum = 0;
}
},
keyup_submit(event) {
this.filterQuery.page = 1;
this.getList();
@ -1568,7 +1625,7 @@ export default {
float: left;
text-align: left;
margin-top: 10px;
width: 25%;
width: 35%;
}
.text {

@ -695,7 +695,7 @@
<el-col :span="24" class="el-col">
<div style="margin-top: 18px;margin-bottom: 18px">
<el-checkbox v-model="checked" disabled
>以使用单元数量入库
>启用使用单元
</el-checkbox>
<el-checkbox v-model="editQuery.isDisable" disabled
>是否禁用

@ -360,7 +360,7 @@
<el-form-item prop="name">
<el-checkbox v-model="checked" class="text item itemTag"
disabled
>以使用单元数量入库
>启用使用单元
</el-checkbox>
</el-form-item>
</el-col>

@ -485,7 +485,7 @@
<el-col :span="24" class="el-col">
<div style="margin-top: 18px;margin-bottom: 18px">
<el-checkbox v-model="checked" disabled
>以使用单元数量入库
>启用使用单元
</el-checkbox>
<el-checkbox v-model="editQuery.isDisable" disabled
>是否禁用

@ -327,7 +327,7 @@
<el-col :span="24" class="el-col">
<div style="margin-top: 18px;margin-bottom: 18px">
<el-checkbox v-model="checked" :disabled="!isUseDyCheck"
>以使用单元数量入库
>启用使用单元
</el-checkbox>
<el-checkbox v-model="editQuery.isDisable" disabled
>是否禁用

@ -46,7 +46,7 @@
<span>{{ parseTime(scope.row.billDate, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="创建人" prop="createByName"></el-table-column>
<el-table-column label="申购人" prop="createByName"></el-table-column>
<el-table-column label="申购仓库" prop="invName"></el-table-column>
<el-table-column label="申购分库" prop="subInvName"></el-table-column>
<el-table-column label="申购说明" prop="remark"></el-table-column>
@ -91,9 +91,13 @@
<!-- <el-table-column label="产品编码" prop="productId"></el-table-column> -->
<el-table-column label="产品通用名" prop="productName" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="规格型号" prop="spec" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="生产企业" prop="manufactory" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="计量单位" prop="measname" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="申购数量" prop="count"></el-table-column>
<el-table-column label="注册/备案凭证号" prop="zczbhhzbapzbh" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="生产企业" prop="manufactory" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="医疗器械注册人" prop="ylqxzcrbarmc" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="供应商" prop="supName" show-overflow-tooltip="true"></el-table-column>
<!-- <el-table-column label="计量单位" prop="measname" show-overflow-tooltip="true"></el-table-column>-->
</el-table>
</el-card>
@ -245,7 +249,7 @@ export default {
listApplyDetail(query) //
.then((response) => {
this.detailList = response.data.list || [];
this.loading = false;
})
.catch(() => {

@ -85,7 +85,7 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="3" >
<el-col :span="3">
<div class="ao-text">
<span>申购说明</span>
</div>
@ -96,7 +96,7 @@
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20" style="margin-top: -10px" v-show="formData.status==4">
<el-col :span="3">
<div class="ao-text">
@ -104,7 +104,7 @@
</div>
</el-col>
<el-col :span="7">
<el-form-item >
<el-form-item>
<el-input v-model="formData.auditRemark" auto-complete="off" :disabled="true"></el-input>
</el-form-item>
</el-col>
@ -140,18 +140,7 @@
prop="spec"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="计量单位"
prop="measname"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="生产厂家"
prop="manufactory"
show-overflow-tooltip
></el-table-column>
<el-table-column width="150" label="单据数量">
<el-table-column width="150" label="申购数量">
<template slot-scope="scope">
<el-input size="small" v-model="scope.row.count"
placeholder="请输入数量" style="width: 80%"
@ -161,6 +150,27 @@
oninput="value=value.replace(/[^\d]/g,'')"></el-input>
</template>
</el-table-column>
<el-table-column
label="供应商"
prop="supName"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="注册/备案凭证号"
prop="zczbhhzbapzbh"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="生产厂家"
prop="manufactory"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="医疗器械注册人"
prop="ylqxzcrbarmc"
show-overflow-tooltip
></el-table-column>
<el-table-column label="操作" fixed="right" width="150">
<template slot-scope="scope">
@ -199,6 +209,7 @@
<stockOrderNewSelectProduct
:closeDialog="closeDialogC2"
:data="thisData"
:purType="1"
></stockOrderNewSelectProduct>
</el-dialog>
</div>
@ -280,7 +291,7 @@ export default {
},
methods: {
saveOrder(status) {
this.$refs["dataForm"].validate(valid => {
if (valid) {
if (this.codeArray.length < 1) {
@ -288,13 +299,13 @@ export default {
return;
}
if (status === '2') {
if(this.formData.billDate=="" || this.formData.billDate==null){
if (this.formData.billDate == "" || this.formData.billDate == null) {
return this.$message.error("单据日期不能为空!");
}
if(this.formData.locStorageCode=="" || this.formData.locStorageCode==null){
if (this.formData.locStorageCode == "" || this.formData.locStorageCode == null) {
return this.$message.error("仓库不能为空!");
}
if(this.formData.invWarehouseCode=="" || this.formData.invWarehouseCode==null){
if (this.formData.invWarehouseCode == "" || this.formData.invWarehouseCode == null) {
return this.$message.error("分库不能为空!");
}
@ -349,7 +360,7 @@ export default {
this.thisData.stockOrderLists = this.codeArray;
},
closeDialogC2(rData) {
this.selectProductVisible = false;
this.thisData = {};
if (this.$isNotBlank(rData)) {

@ -30,7 +30,7 @@
<el-button type="primary" icon="el-icon-refresh" @click="onReset"></el-button>
<el-button type="primary" icon="search" @click="onSubmitFind"></el-button>
<el-button type="primary" icon="search" @click="newDistributionForm()" :loading="loading">
新增单据
新增采购计划
</el-button>
</el-button-group>
@ -91,9 +91,11 @@
<!-- <el-table-column label="产品编码" prop="productId"></el-table-column> -->
<el-table-column label="产品通用名" prop="productName" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="规格型号" prop="spec" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="生产企业" prop="manufactory" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="计量单位" prop="measname" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="申购数量" prop="count"></el-table-column>
<el-table-column label="注册/备案凭证号" prop="zczbhhzbapzbh" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="生产企业" prop="manufactory" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="医疗器械注册人" prop="ylqxzcrbarmc" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="供应商" prop="supName" show-overflow-tooltip="true"></el-table-column>
</el-table>
</el-card>

@ -43,7 +43,8 @@
<span>{{ parseTime(scope.row.billDate, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="采购员" prop="createByName"></el-table-column>
<el-table-column label="创建人" prop="createByName"></el-table-column>
<el-table-column label="审核人" prop="auditByName"></el-table-column>
<el-table-column label="采购仓库" prop="invName"></el-table-column>
<el-table-column label="采购分库" prop="subInvName"></el-table-column>
<el-table-column label="采购说明" prop="remark"></el-table-column>
@ -86,9 +87,11 @@
<!-- <el-table-column label="产品编码" prop="productId"></el-table-column> -->
<el-table-column label="产品通用名" prop="productName" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="规格型号" prop="spec" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="生产企业" prop="manufactory" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="计量单位" prop="measname" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="申购数量" prop="count"></el-table-column>
<el-table-column label="注册/备案凭证号" prop="zczbhhzbapzbh" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="生产企业" prop="manufactory" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="医疗器械注册人" prop="ylqxzcrbarmc" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="供应商" prop="supName" show-overflow-tooltip="true"></el-table-column>
</el-table>
</el-card>

@ -87,30 +87,88 @@
</el-col>
<el-col :span="3">
<div class="ao-text">
<span>采购说明</span>
<span>审核说明</span>
</div>
</el-col>
<el-col :span="7">
<el-form-item prop="billNo">
<el-input v-model="formData.remark" :disabled="true" auto-complete="off" type="textarea"
<el-input v-model="formData.auditRemark" auto-complete="off" type="textarea"
autosize></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-row :gutter="20">
<el-col :span="3">
<div class="ao-text">
<span>审核说明</span>
<span>采购说明</span>
</div>
</el-col>
<el-col :span="7">
<el-form-item prop="billNo">
<el-input v-model="formData.auditRemark" auto-complete="off" type="textarea"
<el-input v-model="formData.remark" :disabled="true" auto-complete="off" type="textarea"
autosize></el-input>
</el-form-item>
</el-col>
<el-col :span="3">
</el-col>
<el-col :span="7">
<el-form-item>
<el-checkbox v-model="formData.autoPurchase"></el-checkbox>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20" style="margin-top: -10px" v-show="formData.autoPurchase">
<el-col :span="3">
<div class="ao-text">
<span>入库仓库</span>
</div>
</el-col>
<el-col :span="7">
<el-form-item prop="locStorageCode">
<el-select v-model="formData.targetSubInv" placeholder="入库仓库信息" style="width: 100%"
@change="targetInvChange"
clearable>
<el-option
v-for="item in tarSubList"
:key="item.name"
:label="item.name"
:value="item.code">
<span style="float: left">{{ item.name }}</span>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="3">
<div class="ao-text">
<span>入库单据类型</span>
</div>
</el-col>
<el-col :span="7">
<el-form-item class="query-form-item" prop="targetBillAction">
<el-select v-model="formData.targetBillAction" placeholder="请选择单据类型"
style="width: 100%"
>
<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-col>
</el-row>
</el-card>
<el-card>
@ -199,6 +257,7 @@
<stockOrderNewSelectProduct
:closeDialog="closeDialogC2"
:data="thisData"
:purType="1"
></stockOrderNewSelectProduct>
</el-dialog>
</div>
@ -210,6 +269,7 @@ import stockOrderNewSelectProduct from "../warehouse/stockOrderNewSelectProduct"
import {auditOrder, delApplyDetail, listApplyDetail} from "@/api/purchase/purPlan";
import {filterAllByUser} from "@/api/basic/invWarehouse";
import {filterSubByInv} from "@/api/basic/invSubWarehouse";
import {getLocalJoinByUser} from "@/api/basic/busLocalType";
export default {
name: "idQuery",
@ -244,6 +304,10 @@ export default {
locStorageCode: null,
invWarehouseCode: null,
auditRemark: null,
autoPurchase: false,
targetInv: 1000,
targetSubInv: null,
targetBillAction: null,
},
formRules: {},
codeArray: [],
@ -275,8 +339,10 @@ export default {
thisData: {},
storageList: [],
subInvList: [],
tarSubList: [],
invQueryData: {},
};
},
components: {
@ -446,6 +512,38 @@ export default {
.catch(() => {
});
},
findTargetSubInvs() {
this.tarSubList = [];
let query = {
pcode: 1000
};
filterSubByInv(query)
.then((response) => {
this.tarSubList = response.data || [];
if (this.tarSubList != null && this.tarSubList.length == 1) {
this.formData.targetSubInv = this.tarSubList[0].code;
this.targetInvChange();
}
})
.catch(() => {
});
},
targetInvChange() {
let query = {
code: this.formData.targetSubInv,
enabled: true,
spUse: true,
};
getLocalJoinByUser(query)
.then((response) => {
this.busTypes = response.data.list || [];
// this.formData.targetBillAction = this.busTypes[0].localAction;
})
.catch(() => {
});
},
locInChange(item) {
if (this.formData.invWarehouseCode != null) {
this.formData.invWarehouseCode = "";
@ -467,6 +565,7 @@ export default {
this.query.limit = 100;
this.query.orderIdFk = this.idQuery.id;
this.formData = this.idQuery.formData;
this.formData.targetInv = 1000;
this.orderEditor = true;
this.sValue = this.formData.corpName;
this.getStockOrderDetailList();
@ -479,10 +578,16 @@ export default {
deptCode: null,
locStorageCode: null,
invWarehouseCode: null,
auditRemark: null,
autoPurchase: false,
targetInv: 1000,
targetSubInv: null,
targetBillAction: null,
};
this.orderEditor = false;
}
this.getStorage();
this.findTargetSubInvs();
this.codeArray = [];
},
};

@ -55,25 +55,25 @@
<el-row :gutter="20" style="margin-top: -10px">
<el-col :span="3">
<div class="ao-text">
<span>采购类型</span>
</div>
</el-col>
<el-col :span="7">
<el-form-item prop="billType">
<el-select v-model="formData.billType" placeholder="请选择采购类型" style="width: 100%"
clearable>
<el-option
v-for="item in busTypes"
:key="item.originAction"
:label="item.originName"
:value="item.originAction">
<span style="float: left">{{ item.originName }}</span>
</el-option>
</el-select>
</el-form-item>
</el-col>
<!-- <el-col :span="3">-->
<!-- <div class="ao-text">-->
<!-- <span>采购类型</span>-->
<!-- </div>-->
<!-- </el-col>-->
<!-- <el-col :span="7">-->
<!-- <el-form-item prop="billType">-->
<!-- <el-select v-model="formData.billType" placeholder="请选择采购类型" style="width: 100%"-->
<!-- clearable>-->
<!-- <el-option-->
<!-- v-for="item in busTypes"-->
<!-- :key="item.originAction"-->
<!-- :label="item.originName"-->
<!-- :value="item.originAction">-->
<!-- <span style="float: left">{{ item.originName }}</span>-->
<!-- </el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<el-col :span="3">
<div class="ao-text">
@ -107,9 +107,7 @@
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20" style="margin-top: -10px">
<el-col :span="3">
<div class="ao-text">
<span>采购说明</span>
@ -120,35 +118,49 @@
<el-input v-model="formData.remark" auto-complete="off" type="textarea" autosize></el-input>
</el-form-item>
</el-col>
  <el-col :span="3" v-show="formData.status==4">
<div class="ao-text">
                            <span>拒绝原因</span>
                        </div>
                    </el-col>
                    <el-col :span="7" v-show="formData.status==4">
                        <el-form-item >
                            <el-input v-model="formData.auditRemark" auto-complete="off" :disabled="true"></el-input>
                        </el-form-item>
                    </el-col>
<el-col :span="3" v-show="formData.status==4">
<div class="ao-text">
<span>拒绝原因</span>
</div>
</el-col>
<el-col :span="7" v-show="formData.status==4">
<el-form-item>
<el-input v-model="formData.auditRemark" auto-complete="off" :disabled="true"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20" style="margin-top: -10px">
</el-row>
</el-card>
<el-card>
<el-button-group style="display: flex">
<el-button
type="primary"
size="small"
@click.native.stop="selectProductFunction()"
style="margin: 0px 60px 10px auto; height: 35px"
:loading="loading"
>产品录入
</el-button
>
</el-button-group>
<el-row type="flex" justify="end">
<el-button-group style="display: flex">
<el-button-group style="display: flex;margin-bottom: 15px; margin-right: 50px">
<el-button
type="primary"
@click.native.stop="selectProductFunction()"
:loading="loading"
>产品录入
</el-button
>
<el-button
type="primary"
:loading="loading"
>选入申购单
</el-button
>
</el-button-group>
</el-button-group>
</el-row>
<el-table v-loading="loading" :data="codeArray" style="width: 100%;"
:row-class-name="tableRowClassName"
max-height="300" height="300" ref="multipleTable">
@ -163,18 +175,7 @@
prop="spec"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="计量单位"
prop="measname"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="生产厂家"
prop="manufactory"
show-overflow-tooltip
></el-table-column>
<el-table-column width="150" label="单据数量">
<el-table-column width="150" label="申购数量">
<template slot-scope="scope">
<el-input size="small" v-model="scope.row.count"
placeholder="请输入数量" style="width: 80%"
@ -184,6 +185,33 @@
oninput="value=value.replace(/[^\d]/g,'')"></el-input>
</template>
</el-table-column>
<!-- <el-table-column-->
<!-- label="计量单位"-->
<!-- prop="measname"-->
<!-- show-overflow-tooltip-->
<!-- ></el-table-column>-->
<el-table-column
label="供应商"
prop="supName"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="注册/备案凭证号"
prop="zczbhhzbapzbh"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="生产厂家"
prop="manufactory"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="医疗器械注册人"
prop="ylqxzcrbarmc"
show-overflow-tooltip
></el-table-column>
<el-table-column label="操作" fixed="right" width="150">
<template slot-scope="scope">
@ -221,6 +249,7 @@
>
<stockOrderNewSelectProduct
:closeDialog="closeDialogC2"
:purType="1"
:data="thisData"
></stockOrderNewSelectProduct>
</el-dialog>
@ -312,17 +341,17 @@ export default {
return;
}
if (status === '2') {
if(this.formData.billDate=="" || this.formData.billDate==null){
if (this.formData.billDate == "" || this.formData.billDate == null) {
return this.$message.error("单据日期不能为空!");
}
if(this.formData.billType=="" || this.formData.billType==null){
return this.$message.error("采购类型不能为空!");
}
if(this.formData.locStorageCode=="" || this.formData.locStorageCode==null){
// if (this.formData.billType == "" || this.formData.billType == null) {
// return this.$message.error("");
// }
if (this.formData.locStorageCode == "" || this.formData.locStorageCode == null) {
return this.$message.error("采购仓库不能为空!");
}
if(this.formData.invWarehouseCode=="" || this.formData.invWarehouseCode==null){
if (this.formData.invWarehouseCode == "" || this.formData.invWarehouseCode == null) {
return this.$message.error("采购分库不能为空!");
}
for (let i = 0; i < this.codeArray.length; i++) {

@ -43,7 +43,8 @@
<span>{{ parseTime(scope.row.billDate, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="采购员" prop="createByName"></el-table-column>
<el-table-column label="创建人" prop="createByName"></el-table-column>
<el-table-column label="审核人" prop="auditByName"></el-table-column>
<el-table-column label="采购仓库" prop="invName"></el-table-column>
<el-table-column label="采购分库" prop="subInvName"></el-table-column>
<el-table-column label="采购说明" prop="remark"></el-table-column>
@ -85,9 +86,11 @@
<!-- <el-table-column label="产品编码" prop="productId"></el-table-column> -->
<el-table-column label="产品通用名" prop="productName" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="规格型号" prop="spec" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="生产企业" prop="manufactory" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="计量单位" prop="measname" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="申购数量" prop="count"></el-table-column>
<el-table-column label="注册/备案凭证号" prop="zczbhhzbapzbh" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="生产企业" prop="manufactory" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="医疗器械注册人" prop="ylqxzcrbarmc" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="供应商" prop="supName" show-overflow-tooltip="true"></el-table-column>
</el-table>
</el-card>
@ -242,7 +245,7 @@ export default {
listApplyDetail(query) //
.then((response) => {
this.detailList = response.data.list || [];
this.loading = false;
})
.catch(() => {

@ -52,10 +52,14 @@
<span>{{ parseTime(scope.row.billDate, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="创建人" prop="createByName"></el-table-column>
<el-table-column label="申购人" prop="createByName"></el-table-column>
<el-table-column label="审核人" prop="auditByName"></el-table-column>
<el-table-column label="申购仓库" prop="invName"></el-table-column>
<el-table-column label="申购分库" prop="subInvName"></el-table-column>
<el-table-column label="申购说明" prop="remark"></el-table-column>
<el-table-column label="状态" prop="status">
<template slot-scope="scope">
<el-tag :type="(scope.row.status) | statusFilterType">
@ -95,9 +99,11 @@
<!-- <el-table-column label="产品编码" prop="productId"></el-table-column> -->
<el-table-column label="产品通用名" prop="productName" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="规格型号" prop="spec" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="生产企业" prop="manufactory" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="计量单位" prop="measname" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="申购数量" prop="count"></el-table-column>
<el-table-column label="注册/备案凭证号" prop="zczbhhzbapzbh" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="生产企业" prop="manufactory" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="医疗器械注册人" prop="ylqxzcrbarmc" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="供应商" prop="supName" show-overflow-tooltip="true"></el-table-column>
</el-table>
</el-card>

@ -89,35 +89,47 @@
</el-col>
<!-- <el-col :span="3">-->
<!-- <div class="ao-text">-->
<!-- <span>当前仓库</span>-->
<!-- </div>-->
<!-- </el-col>-->
<!-- <el-col :span="7">-->
<!-- <el-form-item prop="targetInv">-->
<!-- <el-select v-model="formData.targetInv" placeholder="当前仓库信息" @change="locInChange"-->
<!-- style="width: 50%"-->
<!-- clearable>-->
<!-- <el-option-->
<!-- v-for="item in targetInvList"-->
<!-- :key="item.name"-->
<!-- :label="item.name"-->
<!-- :value="item.code">-->
<!-- <span style="float: left">{{ item.name }}</span>-->
<!-- </el-option>-->
<!-- </el-select>-->
<!-- <el-select v-model="formData.targetSubInv" placeholder="当前分库信息" style="width: 50%"-->
<!-- clearable>-->
<!-- <el-option-->
<!-- v-for="item in targetSubInvList"-->
<!-- :key="item.name"-->
<!-- :label="item.name"-->
<!-- :value="item.code">-->
<!-- <span style="float: left">{{ item.name }}</span>-->
<!-- </el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<el-col :span="3">
<div class="ao-text">
<span>当前仓库</span>
<span>申购说明</span>
</div>
</el-col>
<el-col :span="7">
<el-form-item prop="targetInv">
<el-select v-model="formData.targetInv" placeholder="当前仓库信息" @change="locInChange"
style="width: 50%"
clearable>
<el-option
v-for="item in targetInvList"
:key="item.name"
:label="item.name"
:value="item.code">
<span style="float: left">{{ item.name }}</span>
</el-option>
</el-select>
<el-select v-model="formData.targetSubInv" placeholder="当前分库信息" style="width: 50%"
clearable>
<el-option
v-for="item in targetSubInvList"
:key="item.name"
:label="item.name"
:value="item.code">
<span style="float: left">{{ item.name }}</span>
</el-option>
</el-select>
<el-form-item prop="billNo">
<el-input v-model="formData.remark" auto-complete="off" type="textarea"
disabled
autosize></el-input>
</el-form-item>
</el-col>
@ -128,25 +140,25 @@
<el-row :gutter="20" style="margin-top: -10px">
<el-col :span="3">
<div class="ao-text">
<span>生成采购计划</span>
</div>
</el-col>
<el-col :span="7">
<el-form-item prop="billType">
<el-select v-model="formData.targetBillType" placeholder="请选择采购类型" style="width: 100%"
clearable>
<el-option
v-for="item in busTypes"
:key="item.originAction"
:label="item.originName"
:value="item.originAction">
<span style="float: left">{{ item.originName }}</span>
</el-option>
</el-select>
</el-form-item>
</el-col>
<!-- <el-col :span="3">-->
<!-- <div class="ao-text">-->
<!-- <span>生成采购计划</span>-->
<!-- </div>-->
<!-- </el-col>-->
<!-- <el-col :span="7">-->
<!-- <el-form-item prop="billType">-->
<!-- <el-select v-model="formData.targetBillType" placeholder="请选择采购类型" style="width: 100%"-->
<!-- clearable>-->
<!-- <el-option-->
<!-- v-for="item in busTypes"-->
<!-- :key="item.originAction"-->
<!-- :label="item.originName"-->
<!-- :value="item.originAction">-->
<!-- <span style="float: left">{{ item.originName }}</span>-->
<!-- </el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<el-col :span="3">
<div class="ao-text">
@ -159,6 +171,14 @@
autosize></el-input>
</el-form-item>
</el-col>
<el-col :span="2">
</el-col>
<el-col :span="7">
<el-form-item>
<el-checkbox v-model="formData.audtoPlan"></el-checkbox>
</el-form-item>
</el-col>
</el-row>
@ -180,10 +200,11 @@
prop="spec"
show-overflow-tooltip
></el-table-column>
<el-table-column width="150" label="单据数量" prop="count">
</el-table-column>
<el-table-column
label="计量单位"
prop="measname"
label="注册/备案凭证号"
prop="zczbhhzbapzbh"
show-overflow-tooltip
></el-table-column>
<el-table-column
@ -191,8 +212,12 @@
prop="manufactory"
show-overflow-tooltip
></el-table-column>
<el-table-column width="150" label="单据数量" prop="count">
</el-table-column>
<el-table-column
label="医疗器械注册人"
prop="ylqxzcrbarmc"
show-overflow-tooltip
></el-table-column>
<!-- <el-table-column label="操作" fixed="right" width="150">
<template slot-scope="scope">
@ -230,6 +255,7 @@
>
<stockOrderNewSelectProduct
:closeDialog="closeDialogC2"
:purType="1"
:data="thisData"
></stockOrderNewSelectProduct>
</el-dialog>
@ -280,8 +306,9 @@ export default {
invWarehouseCode: null,
targetInv: null,
targetSubInv: null,
targetBillType:null,
auditRemark:"",
targetBillType: null,
auditRemark: "",
audtoPlan: false,
},
formRules: {},
codeArray: [],

@ -44,6 +44,7 @@
</template>
</el-table-column>
<el-table-column label="创建人" prop="createByName"></el-table-column>
<el-table-column label="审核人" prop="auditByName"></el-table-column>
<el-table-column label="申购仓库" prop="invName"></el-table-column>
<el-table-column label="申购分库" prop="subInvName"></el-table-column>
<el-table-column label="申购说明" prop="remark"></el-table-column>
@ -85,9 +86,11 @@
<!-- <el-table-column label="产品编码" prop="productId"></el-table-column> -->
<el-table-column label="产品通用名" prop="productName" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="规格型号" prop="spec" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="生产企业" prop="manufactory" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="计量单位" prop="measname" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="申购数量" prop="count"></el-table-column>
<el-table-column label="注册/备案凭证号" prop="zczbhhzbapzbh" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="生产企业" prop="manufactory" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="医疗器械注册人" prop="ylqxzcrbarmc" show-overflow-tooltip="true"></el-table-column>
<el-table-column label="供应商" prop="supName" show-overflow-tooltip="true"></el-table-column>
</el-table>
</el-card>
@ -243,7 +246,7 @@ export default {
listApplyDetail(query) //
.then((response) => {
this.detailList = response.data.list || [];
this.loading = false;
})
.catch(() => {

@ -454,7 +454,7 @@
<el-col :span="24" class="el-col">
<div style="margin-top: 18px;margin-bottom: 18px">
<el-checkbox v-model="checked" disabled
>以使用单元数量入库
>启用使用单元启用使用单元
</el-checkbox>
<el-checkbox v-model="editQuery.isDisable" disabled
>是否禁用

@ -86,7 +86,7 @@
<el-col :span="3">
<div class="ao-text">
<span>是否以使用单元数量入库</span>
<span>是否以使用单元数量入库</span>
</div>
</el-col>
<el-col :span="7">

@ -1,426 +1,431 @@
<template>
<div>
<el-card class="el-card">
<div>
<el-form :inline="true" :model="listQuery" size="mini">
<el-row style="margin-top: 15px;width: 1000px">
<el-form-item class="query-form-item">
<el-input v-model="listQuery.udiCode"
style="width: 600px"
placeholder="请扫描或输入UDI码"
clearable="true"
@keyup.enter.native="keyup_submit($event)"></el-input>
</el-form-item>
</el-row>
<div>
<el-card class="el-card">
<div>
<el-form :inline="true" :model="listQuery" size="mini">
<el-row style="margin-top: 15px;width: 1000px">
<el-form-item class="query-form-item">
<el-input v-model="listQuery.udiCode"
style="width: 600px"
placeholder="请扫描或输入UDI码"
clearable="true"
@keyup.enter.native="keyup_submit($event)"></el-input>
</el-form-item>
</el-row>
<el-row>
<el-form-item class="query-form-item">
<el-input v-model="listQuery.unionCode" placeholder="DI/医保编码/商品条码"
clearable="true"></el-input>
</el-form-item>
<el-form-item class="query-form-item">
<el-input v-model="listQuery.cpmctymc" placeholder="产品通用名" clearable="true"></el-input>
</el-form-item>
<el-form-item class="query-form-item">
<el-input v-model="listQuery.ggxh" placeholder="规格型号" clearable="true"></el-input>
</el-form-item>
</el-row>
<el-row>
<el-form-item class="query-form-item">
<el-input v-model="listQuery.unionCode" placeholder="DI/医保编码/商品条码"
clearable="true"></el-input>
</el-form-item>
<el-form-item class="query-form-item">
<el-input v-model="listQuery.cpmctymc" placeholder="产品通用名" clearable="true"></el-input>
</el-form-item>
<el-form-item class="query-form-item">
<el-input v-model="listQuery.ggxh" placeholder="规格型号" clearable="true"></el-input>
</el-form-item>
</el-row>
<el-row>
<el-form-item class="query-form-item">
<el-input v-model="listQuery.ylqxzcrbarmc" placeholder="生产企业/注册备案人"
clearable="true"></el-input>
</el-form-item>
<el-form-item class="query-form-item">
<el-input v-model="listQuery.thrPiId" placeholder="第三方产品编码" clearable="true"></el-input>
</el-form-item>
<el-row>
<el-form-item class="query-form-item">
<el-input v-model="listQuery.ylqxzcrbarmc" placeholder="生产企业/注册备案人"
clearable="true"></el-input>
</el-form-item>
<el-form-item class="query-form-item">
<el-input v-model="listQuery.thrPiId" placeholder="第三方产品编码" clearable="true"></el-input>
</el-form-item>
<el-form-item>
<el-button-group>
<el-button type="primary" icon="el-icon-refresh" @click="onReset"></el-button>
<el-button type="primary" icon="search" @click="search"></el-button>
<el-button type="primary" icon="search" @click="confirmSelect"></el-button>
</el-button-group>
</el-form-item>
</el-row>
</el-form>
<el-form-item>
<el-button-group>
<el-button type="primary" icon="el-icon-refresh" @click="onReset"></el-button>
<el-button type="primary" icon="search" @click="search"></el-button>
<el-button type="primary" icon="search" @click="confirmSelect"></el-button>
</el-button-group>
</el-form-item>
</el-row>
</el-form>
<el-table
:data="dataList"
style="width: 100%"
highlight-current-row="false"
v-loading="loading"
:row-class-name="tableRowClassName"
@current-change="handleChange"
ref="multipleTable"
>
<!-- <el-table-column-->
<!-- type="selection"-->
<!-- width="55">-->
<!-- </el-table-column>-->
<el-table-column label width="45">
<template slot-scope="scope">
<el-radio :label="scope.row.id" v-model="radioCheck"><span></span></el-radio>
</template>
</el-table-column>
<el-table-column label="序号" type="index"></el-table-column>
<el-table-column
label="最小销售产品标识"
prop="nameCode"
width="140"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="产品编码"
prop="thirdId"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="医疗器械注册人"
prop="ylqxzcrbarmc"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="产品通用名"
prop="cpmctymc"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="规格型号"
prop="ggxh"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="注册/备案凭证"
prop="zczbhhzbapzbh"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="器械类别"
prop="qxlb"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="配送企业"
prop="companyName"
show-overflow-tooltip
></el-table-column>
<el-table-column label="操作" fixed="right" width="160">
<template slot-scope="scope">
<el-button
type="text"
size="small"
@click.native.stop="handleDetailClick(scope.row)"
>详情
</el-button
>
</template>
</el-table-column>
</el-table>
<el-pagination
:page-size="listQuery.limit"
@current-change="handleErpPageChange"
layout="prev, pager, next"
:total="pageTotal"
:current-page="listQuery.page"
></el-pagination>
</div>
</el-card>
<el-dialog
title="耗材字典详情"
:visible.sync="udiRlDetailVisible"
width="85%"
:close-on-click-modal="false"
:close-on-press-escape="false"
append-to-body
v-if="udiRlDetailVisible"
<el-table
:data="dataList"
style="width: 100%"
highlight-current-row="false"
v-loading="loading"
:row-class-name="tableRowClassName"
@current-change="handleChange"
ref="multipleTable"
>
<udiRlDetailDialog :editQuery="currentRow"></udiRlDetailDialog>
</el-dialog>
<!-- <el-table-column-->
<!-- type="selection"-->
<!-- width="55">-->
<!-- </el-table-column>-->
<el-table-column label width="45">
<template slot-scope="scope">
<el-radio :label="scope.row.id" v-model="radioCheck"><span></span></el-radio>
</template>
</el-table-column>
<el-table-column label="序号" type="index"></el-table-column>
<el-table-column
label="最小销售产品标识"
prop="nameCode"
width="140"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="产品编码"
prop="thirdId"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="医疗器械注册人"
prop="ylqxzcrbarmc"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="产品通用名"
prop="cpmctymc"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="规格型号"
prop="ggxh"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="注册/备案凭证"
prop="zczbhhzbapzbh"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="器械类别"
prop="qxlb"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="配送企业"
prop="companyName"
show-overflow-tooltip
></el-table-column>
<el-table-column label="操作" fixed="right" width="160">
<template slot-scope="scope">
<el-button
type="text"
size="small"
@click.native.stop="handleDetailClick(scope.row)"
>详情
</el-button
>
</template>
</el-table-column>
</el-table>
<el-pagination
:page-size="listQuery.limit"
@current-change="handleErpPageChange"
layout="prev, pager, next"
:total="pageTotal"
:current-page="listQuery.page"
></el-pagination>
</div>
</el-card>
<el-dialog
title="耗材字典详情"
:visible.sync="udiRlDetailVisible"
width="85%"
:close-on-click-modal="false"
:close-on-press-escape="false"
append-to-body
v-if="udiRlDetailVisible"
>
<udiRlDetailDialog :editQuery="currentRow"></udiRlDetailDialog>
</el-dialog>
<el-dialog title="请选择对应的资质证书" :visible.sync="dialogFormVisible" append-to-body width="40%">
<el-form :model="form">
<el-form-item label="" prop="isGive">
<el-radio-group v-model="currentCert">
<el-radio :label="item" :key="item" v-for="item in certList">{{ item }}</el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="selectCert"> </el-button>
<el-button @click="dialogFormVisible = false"> </el-button>
</div>
</el-dialog>
<el-dialog title="请选择对应的资质证书" :visible.sync="dialogFormVisible" append-to-body width="40%">
<el-form :model="form">
<el-form-item label="" prop="isGive">
<el-radio-group v-model="currentCert">
<el-radio :label="item" :key="item" v-for="item in certList">{{ item }}</el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="selectCert"> </el-button>
<el-button @click="dialogFormVisible = false"> </el-button>
</div>
</el-dialog>
</div>
</div>
</template>
<script>
import {
getStockOrderDetailInstrumentById,
stockOrderDetailFilterProduct
getStockOrderDetailInstrumentById,
stockOrderDetailFilterProduct
} from "../../api/warehouse/stockOrder";
import store from "../../store";
import udiRlDetailDialog from "./../basic/UdiRlDetailDialog";
export default {
name: "stockOrderNewSelectProduct",
props: {
data: {
type: Object,
required: true,
},
closeDialog: {
type: Function,
required: true,
},
name: "stockOrderNewSelectProduct",
props: {
data: {
type: Object,
required: true,
},
closeDialog: {
type: Function,
required: true,
},
purType: {
type: Object,
required: true,
},
data() {
return {
listQuery: {
billNo: "",
page: 1,
limit: 10,
},
data() {
return {
listQuery: {
purType: null,
billNo: "",
page: 1,
limit: 10,
},
combineQuery: {
thirdId: "",
relId: "",
erpName: "",
keys: [],
},
ids: [],
radioCheck: null,
dataList: [],
pageTotal: 1,
total: 1,
currentRow: null,
loading: false,
udiRlDetailVisible: false,
thirdSys: [],
thirdSysFk: null,
busTypes: [],
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]);
},
combineQuery: {
thirdId: "",
relId: "",
erpName: "",
keys: [],
},
{
text: "最近一个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit("pick", [start, end]);
},
ids:[],
radioCheck: null,
dataList: [],
pageTotal: 1,
total: 1,
currentRow: null,
loading: false,
udiRlDetailVisible: false,
thirdSys: [],
thirdSysFk: null,
busTypes: [],
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]);
},
},
],
},
{
text: "最近三个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
orderEditor: false,
orderId: "",
currentCert: null,
certList: [],
dialogFormVisible: false,
multipleSelection: null,
};
},
],
},
orderEditor: false,
orderId: "",
currentCert: null,
certList: [],
dialogFormVisible: false,
multipleSelection: null,
};
},
methods: {
onReset() {
this.$router.push({
path: "",
});
this.listQuery.udiCode = null
this.listQuery.unionCode = null
this.listQuery.cpmctymc = null
this.listQuery.ggxh = null
this.listQuery.ylqxzcrbarmc = null
this.listQuery.thrPiId = null
this.getList();
},
methods: {
onReset() {
this.$router.push({
path: "",
});
this.listQuery.udiCode=null
this.listQuery.unionCode=null
this.listQuery.cpmctymc=null
this.listQuery.ggxh=null
this.listQuery.ylqxzcrbarmc=null
this.listQuery.thrPiId=null
this.getList();
},
tableRowClassName({row}) {
if (row.checked) return "warning-row";
return "";
},
checkSelectable(row) {
return !row.check;
},
handleCurrentChange(val) {
this.unionQuery.page = val;
this.getList();
},
handleChange(val) {
this.radioCheck = val.id;
this.currentRow = val;
this.multipleSelection = val
},
handleDetailClick(row) {
this.currentRow = row;
this.udiRlDetailVisible = true;
tableRowClassName({row}) {
if (row.checked) return "warning-row";
return "";
},
checkSelectable(row) {
return !row.check;
},
handleCurrentChange(val) {
this.unionQuery.page = val;
this.getList();
},
handleChange(val) {
this.radioCheck = val.id;
this.currentRow = val;
this.multipleSelection = val
},
handleDetailClick(row) {
this.currentRow = row;
this.udiRlDetailVisible = true;
},
handleErpPageChange(val) {
this.listQuery.page = val;
this.getList();
},
keyup_submit(event) {
this.listQuery.page = 1;
this.getList();
event.target.select();
},
search() {
this.listQuery.page = 1;
this.getList();
},
getList() {
this.loading = true;
this.listQuery.customerId = store.getters.customerId;
stockOrderDetailFilterProduct(this.listQuery)
.then((response) => {
this.loading = false;
if (response.code === 20000) {
this.dataList = response.data.list || [];
this.pageTotal = response.data.total || 0;
} else {
this.$message.error(response.message);
this.dataList = [];
this.pageTotal = 0;
}
})
.catch(() => {
this.loading = false;
this.dataList = [];
this.pageTotal = 0;
});
},
intentBack() {
this.closeDialog();
},
},
handleErpPageChange(val) {
this.listQuery.page = val;
this.getList();
},
keyup_submit(event) {
this.listQuery.page = 1;
this.getList();
event.target.select();
},
search() {
this.listQuery.page = 1;
this.getList();
},
getList() {
this.loading = true;
this.listQuery.customerId = store.getters.customerId;
stockOrderDetailFilterProduct(this.listQuery)
.then((response) => {
this.loading = false;
if (response.code === 20000) {
this.dataList = response.data.list || [];
this.pageTotal = response.data.total || 0;
} else {
this.$message.error(response.message);
this.dataList = [];
this.pageTotal = 0;
}
})
.catch(() => {
this.loading = false;
this.dataList = [];
this.pageTotal = 0;
});
},
intentBack() {
this.closeDialog();
},
confirmSelect() {
if (this.multipleSelection == null) {
this.$message.error('未选择产品');
return;
}
if(this.ids.length>0){
for(var i=0;i<this.ids.length;i++){
if(this.ids[i]==this.multipleSelection.rlId){
this.$message.error("该产品已录入!");
return
}
}
}
confirmSelect() {
if (this.multipleSelection == null) {
this.$message.error('未选择产品');
return;
}
let str = this.multipleSelection.zczbhhzbapzbh;
if (str.search(",") != -1) {
this.currentCert = null;
this.certList = str.split(',');
this.dialogFormVisible = true;
} else {
this.combine();
}
},
if (this.ids.length > 0) {
for (var i = 0; i < this.ids.length; i++) {
if (this.ids[i] == this.multipleSelection.rlId) {
this.$message.error("该产品已录入!");
return
}
}
}
combine() {
let ids = [];
let data = {
relId: this.multipleSelection.rlId,
supId: this.multipleSelection.customerId
let str = this.multipleSelection.zczbhhzbapzbh;
if (str.search(",") != -1) {
this.currentCert = null;
this.certList = str.split(',');
this.dialogFormVisible = true;
} else {
this.combine();
}
},
}
ids.push(data);
this.loading = true;
let tQuery = {
datas: ids,
stockOrderLists: this.data.stockOrderLists,
zczbhhzbapzbh: this.multipleSelection.zczbhhzbapzbh
};
getStockOrderDetailInstrumentById(tQuery).then((response) => {
this.loading = false;
if (response.code === 20000) {
this.closeDialog(response.data);
} else {
if (response.code == 601) {
this.$alert(response.message, "提示", {
confirmButtonText: "确定",
});
} else
this.$message.error(response.message);
}
}).catch(() => {
this.loading = false;
combine() {
let ids = [];
let data = {
relId: this.multipleSelection.rlId,
supId: this.multipleSelection.customerId
}
ids.push(data);
this.loading = true;
let tQuery = {
datas: ids,
stockOrderLists: this.data.stockOrderLists,
zczbhhzbapzbh: this.multipleSelection.zczbhhzbapzbh,
purType: this.purType
};
getStockOrderDetailInstrumentById(tQuery).then((response) => {
this.loading = false;
if (response.code === 20000) {
this.closeDialog(response.data);
} else {
if (response.code == 601) {
this.$alert(response.message, "提示", {
confirmButtonText: "确定",
});
} else
this.$message.error(response.message);
}
}).catch(() => {
this.loading = false;
});
},
},
selectCert() {
if (this.currentCert == null) {
this.$message.error("请先选择对应的注册证!");
} else {
this.multipleSelection.zczbhhzbapzbh = this.currentCert;
this.combine();
}
selectCert() {
if (this.currentCert == null) {
this.$message.error("请先选择对应的注册证!");
}else{
this.multipleSelection.zczbhhzbapzbh = this.currentCert;
this.combine();
}
},
},
components: {udiRlDetailDialog},
},
components: {udiRlDetailDialog},
created() {
if (this.$isNotBlank(this.data)) {
// this.listQuery.nameCode = this.data.udi;
// if (this.data.billType != null) {
// this.listQuery.billType = this.data.billType;
// } else
// this.listQuery.billType = this.data.formData.billType;
created() {
if (this.$isNotBlank(this.data)) {
// if (this.data.formData != null) {
// this.listQuery.corpId = this.data.formData.corpId;
// }
// this.orderEditor = this.data.orderEditor;
// this.orderId = this.data.orderId;
this.ids=[];
if(this.data.stockOrderLists.length>0){
for(var i=0;i<this.data.stockOrderLists.length;i++){
this.ids.push(this.data.stockOrderLists[i].productId);
}
}
// this.listQuery.nameCode = this.data.udi;
// if (this.data.billType != null) {
// this.listQuery.billType = this.data.billType;
// } else
// this.listQuery.billType = this.data.formData.billType;
// if (this.data.formData != null) {
// this.listQuery.corpId = this.data.formData.corpId;
// }
// this.orderEditor = this.data.orderEditor;
// this.orderId = this.data.orderId;
this.ids = [];
if (this.data.stockOrderLists.length > 0) {
for (var i = 0; i < this.data.stockOrderLists.length; i++) {
this.ids.push(this.data.stockOrderLists[i].productId);
}
this.getList();
},
}
}
this.getList();
},
};
</script>
<style scoped>
.query-form-item {
display: block !important;
margin-right: 10px;
margin-bottom: 5px;
display: block !important;
margin-right: 10px;
margin-bottom: 5px;
}
div /deep/ .el-table .warning-row {
background: #bebebe;
background: #bebebe;
}
div /deep/ .el-table .success-row {
background: #ffffff;
background: #ffffff;
}
</style>

Loading…
Cancel
Save