耗材字典新增包装单位字段

prod
anthonywj 2 years ago
parent 68d20627e0
commit a7ef3b0d5d

@ -2,80 +2,91 @@
<div> <div>
<el-card class="el-card"> <el-card class="el-card">
<div> <div>
<el-form :inline="true" :model="unionQuery" size="mini"> <el-form :model="unionQuery" size="mini" label-width="125px">
<el-row style="width: 1000px"> <el-row>
<el-form-item class="query-form-item"> <el-col :span="18">
<el-input v-model="unionQuery.udiCode" <el-form-item class="query-form-item" label="UDI码:">
style="width: 600px" <el-input v-model="unionQuery.udiCode"
placeholder="请扫描或输入UDI码" placeholder="请扫描或输入UDI码"
clearable="true" clearable="true"
@keyup.enter.native="keyup_submit($event)"></el-input> @keyup.enter.native="keyup_submit($event)"></el-input>
</el-form-item> </el-form-item>
</el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-form-item class="query-form-item"> <el-col :span="6">
<el-input <el-form-item label="销售单元产品标识:" class="query-form-item">
v-model="unionQuery.nameCode" clearable="true" <el-input
size="mini" v-model="unionQuery.nameCode" clearable="true"
placeholder="请输入完整DI" placeholder="请输入完整DI"
@keyup.enter.native="keyup_submit($event)" @keyup.enter.native="keyup_submit($event)"
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item class="query-form-item"> </el-col>
<el-select <el-col :span="6">
v-model="unionQuery.ylqxzcrbarmc" <el-form-item label="医疗器械注册人:" class="query-form-item">
filterable <el-select
remote v-model="unionQuery.ylqxzcrbarmc"
clearable="true" filterable
reserve-keyword remote
placeholder="医疗器械注册人" clearable="true"
:remote-method="findMethod" style="width: 100%"
:loading="loading" reserve-keyword
> placeholder="医疗器械注册人"
<el-option :remote-method="findMethod"
v-for="item in fromOptions" :loading="loading"
:key="item.ylqxzcrbarmc"
:label="item.ylqxzcrbarmc"
:value="item.ylqxzcrbarmc"
> >
<span style="float: left">{{ item.ylqxzcrbarmc }}</span> <el-option
</el-option> v-for="item in fromOptions"
</el-select> :key="item.ylqxzcrbarmc"
</el-form-item> :label="item.ylqxzcrbarmc"
<el-form-item class="query-form-item"> :value="item.ylqxzcrbarmc"
<el-input >
:disabled="unionQuery.ylqxzcrbarmc==null || unionQuery.ylqxzcrbarmc==''" <span style="float: left">{{ item.ylqxzcrbarmc }}</span>
v-model="unionQuery.cpmctymc" clearable="true" </el-option>
size="mini" </el-select>
placeholder="器械通用名称" </el-form-item>
></el-input> </el-col>
</el-form-item> <el-col :span="6">
<el-form-item label="器械通用名称:" class="query-form-item">
<el-input
:disabled="unionQuery.ylqxzcrbarmc==null || unionQuery.ylqxzcrbarmc==''"
v-model="unionQuery.cpmctymc" clearable="true"
placeholder="器械通用名称"
></el-input>
</el-form-item>
</el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-form-item class="query-form-item"> <el-col :span="6">
<el-input <el-form-item label="规格型号:" class="query-form-item">
v-model="unionQuery.ggxh" clearable="true" <el-input
:disabled="(unionQuery.cpmctymc=='' && unionQuery.nameCode=='' && (unionQuery.ylqxzcrbarmc==null || unionQuery.ylqxzcrbarmc==''))" v-model="unionQuery.ggxh" clearable="true"
placeholder="规格型号" :disabled="(unionQuery.cpmctymc=='' && unionQuery.nameCode=='' && (unionQuery.ylqxzcrbarmc==null || unionQuery.ylqxzcrbarmc==''))"
size="mini" placeholder="规格型号"
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item class="query-form-item"> </el-col>
<el-input <el-col :span="6">
v-model="unionQuery.zczbhhzbapzbh" clearable="true" <el-form-item label="注册证/备案号:" class="query-form-item">
:disabled="(unionQuery.cpmctymc=='' && unionQuery.nameCode=='' && (unionQuery.ylqxzcrbarmc==null || unionQuery.ylqxzcrbarmc==''))" <el-input
placeholder="注册证/备案号" v-model="unionQuery.zczbhhzbapzbh" clearable="true"
size="mini" :disabled="(unionQuery.cpmctymc=='' && unionQuery.nameCode=='' && (unionQuery.ylqxzcrbarmc==null || unionQuery.ylqxzcrbarmc==''))"
></el-input> placeholder="注册证/备案号"
</el-form-item> ></el-input>
<el-form-item class="query-form-item"> </el-form-item>
</el-col>
<el-form-item>
<el-button-group> <el-button-group>
<el-button <el-button
type="primary" type="primary"
icon="el-icon-refresh" icon="el-icon-refresh"
@click="onReset" @click="onReset"
></el-button> ></el-button>
<el-button type="primary" icon="search" @click="searchList" size="mini" <el-button type="primary" icon="search" @click="searchList" size="mini"
>查询 >查询
@ -97,54 +108,54 @@
</el-form> </el-form>
<el-table <el-table
:data="udidlList" :data="udidlList"
style="width: 100%" style="width: 100%"
v-loading="loading" v-loading="loading"
highlight-current-row="true" highlight-current-row="true"
:row-class-name="tableRowClassName" :row-class-name="tableRowClassName"
@current-change="handleErpChange" @current-change="handleErpChange"
@selection-change="handleSelectionUdiChange" @selection-change="handleSelectionUdiChange"
> >
<el-table-column <el-table-column
v-if="relId==null" v-if="relId==null"
type="selection" type="selection"
:selectable="checkSelectable" :selectable="checkSelectable"
width="55" width="55"
></el-table-column> ></el-table-column>
<el-table-column label="序号" type="index"></el-table-column> <el-table-column label="序号" type="index"></el-table-column>
<el-table-column <el-table-column
label="产品标识" label="产品标识"
prop="nameCode" prop="nameCode"
show-overflow-tooltip show-overflow-tooltip
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
label="产品名称" label="产品名称"
prop="cpmctymc" prop="cpmctymc"
show-overflow-tooltip show-overflow-tooltip
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
label="规格型号" label="规格型号"
prop="ggxh" prop="ggxh"
show-overflow-tooltip show-overflow-tooltip
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
label="医疗器械注册人" label="医疗器械注册人"
prop="ylqxzcrbarmc" prop="ylqxzcrbarmc"
show-overflow-tooltip show-overflow-tooltip
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
label="注册证编号" label="注册证编号"
prop="zczbhhzbapzbh" prop="zczbhhzbapzbh"
show-overflow-tooltip show-overflow-tooltip
></el-table-column> ></el-table-column>
<el-table-column label="操作" fixed="right"> <el-table-column label="操作" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
type="text" type="text"
size="small" size="small"
@click="diDetail(scope.row)" @click="diDetail(scope.row)"
>详情 >详情
</el-button </el-button
> >
@ -153,11 +164,11 @@
</el-table> </el-table>
<el-pagination <el-pagination
:page-size="unionQuery.limit" :page-size="unionQuery.limit"
@current-change="handleCurrentChange" @current-change="handleCurrentChange"
layout="prev, pager, next" layout="prev, pager, next"
:total="total" :total="total"
:current-page="unionQuery.page" :current-page="unionQuery.page"
></el-pagination> ></el-pagination>
</div> </div>
@ -171,11 +182,11 @@
<span>产品名称:&nbsp;</span> <span>产品名称:&nbsp;</span>
</div> </div>
<el-input <el-input
style="width: 60%" style="width: 60%"
size="small" size="small"
splaceholder="请输入内容" splaceholder="请输入内容"
:disabled="true" :disabled="true"
v-model="data.cpmctymc" v-model="data.cpmctymc"
></el-input> ></el-input>
</div> </div>
</el-col> </el-col>
@ -185,11 +196,11 @@
<span>产品标识:&nbsp;</span> <span>产品标识:&nbsp;</span>
</div> </div>
<el-input <el-input
style="width: 60%" style="width: 60%"
:disabled="true" :disabled="true"
size="small" size="small"
splaceholder="请输入内容" splaceholder="请输入内容"
v-model="data.nameCode" v-model="data.nameCode"
></el-input> ></el-input>
</div> </div>
</el-col> </el-col>
@ -205,11 +216,11 @@
<span>规格型号:&nbsp;</span> <span>规格型号:&nbsp;</span>
</div> </div>
<el-input <el-input
style="width: 60%" style="width: 60%"
:disabled="true" :disabled="true"
size="small" size="small"
splaceholder="请输入内容" splaceholder="请输入内容"
v-model="data.ggxh" v-model="data.ggxh"
></el-input> ></el-input>
</div> </div>
</el-col> </el-col>
@ -219,11 +230,11 @@
<span>医疗器械注册人:&nbsp;</span> <span>医疗器械注册人:&nbsp;</span>
</div> </div>
<el-input <el-input
style="width: 60%" style="width: 60%"
:disabled="true" :disabled="true"
size="small" size="small"
splaceholder="ylqxzcrbarmc" splaceholder="ylqxzcrbarmc"
v-model="data.ylqxzcrbarmc" v-model="data.ylqxzcrbarmc"
></el-input> ></el-input>
</div> </div>
</el-col> </el-col>
@ -237,11 +248,11 @@
<span>注册人英文名称:&nbsp;</span> <span>注册人英文名称:&nbsp;</span>
</div> </div>
<el-input <el-input
style="width: 60%" style="width: 60%"
:disabled="true" :disabled="true"
size="small" size="small"
splaceholder="请输入内容" splaceholder="请输入内容"
v-model="data.ylqxzcrbarywmc" v-model="data.ylqxzcrbarywmc"
></el-input> ></el-input>
</div> </div>
</el-col> </el-col>
@ -251,11 +262,11 @@
<span>器械类别:&nbsp;</span> <span>器械类别:&nbsp;</span>
</div> </div>
<el-input <el-input
style="width: 60%" style="width: 60%"
:disabled="true" :disabled="true"
size="small" size="small"
splaceholder="请输入内容" splaceholder="请输入内容"
v-model="data.qxlb" v-model="data.qxlb"
></el-input> ></el-input>
</div> </div>
</el-col> </el-col>
@ -267,11 +278,11 @@
<span>产品类别:&nbsp;</span> <span>产品类别:&nbsp;</span>
</div> </div>
<el-input <el-input
style="width: 60%" style="width: 60%"
:disabled="true" :disabled="true"
size="small" size="small"
splaceholder="请输入内容" splaceholder="请输入内容"
v-model="data.cplb" v-model="data.cplb"
></el-input> ></el-input>
</div> </div>
</el-col> </el-col>
@ -281,11 +292,11 @@
<span>分类编码:&nbsp;</span> <span>分类编码:&nbsp;</span>
</div> </div>
<el-input <el-input
style="width: 60%" style="width: 60%"
:disabled="true" :disabled="true"
size="small" size="small"
splaceholder="请输入内容" splaceholder="请输入内容"
v-model="data.flbm" v-model="data.flbm"
></el-input> ></el-input>
</div> </div>
</el-col> </el-col>
@ -300,11 +311,11 @@
<span>商品条码:&nbsp;</span> <span>商品条码:&nbsp;</span>
</div> </div>
<el-input <el-input
style="width: 60%" style="width: 60%"
:disabled="true" :disabled="true"
size="small" size="small"
splaceholder="请输入内容" splaceholder="请输入内容"
v-model="data.sptm" v-model="data.sptm"
></el-input> ></el-input>
</div> </div>
</el-col> </el-col>
@ -314,11 +325,11 @@
<span>医保编码:&nbsp;</span> <span>医保编码:&nbsp;</span>
</div> </div>
<el-input <el-input
style="width: 60%" style="width: 60%"
:disabled="true" :disabled="true"
size="small" size="small"
splaceholder="请输入内容" splaceholder="请输入内容"
v-model="data.ybbm" v-model="data.ybbm"
></el-input> ></el-input>
</div> </div>
</el-col> </el-col>
@ -331,11 +342,11 @@
<span>统一社会信用号:&nbsp;</span> <span>统一社会信用号:&nbsp;</span>
</div> </div>
<el-input <el-input
style="width: 60%" style="width: 60%"
:disabled="true" :disabled="true"
size="small" size="small"
splaceholder="请输入内容" splaceholder="请输入内容"
v-model="data.tyshxydm" v-model="data.tyshxydm"
></el-input> ></el-input>
</div> </div>
</el-col> </el-col>
@ -345,11 +356,11 @@
<span>注册证/备案号:&nbsp;</span> <span>注册证/备案号:&nbsp;</span>
</div> </div>
<el-input <el-input
style="width: 60%" style="width: 60%"
:disabled="true" :disabled="true"
size="small" size="small"
splaceholder="请输入内容" splaceholder="请输入内容"
v-model="data.zczbhhzbapzbh" v-model="data.zczbhhzbapzbh"
></el-input> ></el-input>
</div> </div>
</el-col> </el-col>
@ -357,13 +368,13 @@
</div> </div>
</el-card> </el-card>
<el-dialog <el-dialog
title="器械信息详情" title="器械信息详情"
:close-on-click-modal="false" :close-on-click-modal="false"
:close-on-press-escape="false" :close-on-press-escape="false"
:visible.sync="selectDialog" :visible.sync="selectDialog"
width="65%" width="65%"
append-to-body append-to-body
v-if="selectDialog" v-if="selectDialog"
> >
<selectDiDetail :editQuery="diDetails" <selectDiDetail :editQuery="diDetails"
></selectDiDetail> ></selectDiDetail>
@ -459,7 +470,7 @@ export default {
zczbhhzbapzbh: "", zczbhhzbapzbh: "",
isCheck: 1 isCheck: 1
}, },
this.actDateRange = []; this.actDateRange = [];
// this.getList(); // this.getList();
}, },
@ -470,12 +481,12 @@ export default {
getList() { getList() {
if ( if (
this.unionQuery.udiCode == "" && this.unionQuery.udiCode == "" &&
this.unionQuery.nameCode == "" && this.unionQuery.nameCode == "" &&
this.unionQuery.cpmctymc == "" && this.unionQuery.cpmctymc == "" &&
this.unionQuery.ylqxzcrbarmc == "" && this.unionQuery.ylqxzcrbarmc == "" &&
this.unionQuery.ggxh == "" && this.unionQuery.ggxh == "" &&
this.unionQuery.zczbhhzbapzbh == "" this.unionQuery.zczbhhzbapzbh == ""
) { ) {
this.$message.warning("请输入查询条件"); this.$message.warning("请输入查询条件");
return; return;
@ -483,22 +494,22 @@ export default {
this.loading = true; this.loading = true;
// this.unionQuery.page = 1; // this.unionQuery.page = 1;
getUdiInfos(this.unionQuery) getUdiInfos(this.unionQuery)
.then((response) => { .then((response) => {
this.loading = false; this.loading = false;
if (response.code == 20000) { if (response.code == 20000) {
this.udidlList = response.data.list || []; this.udidlList = response.data.list || [];
this.total = response.data.total || 0; this.total = response.data.total || 0;
} else { } else {
this.$message.error(response.message); this.$message.error(response.message);
} }
}) })
.catch(() => { .catch(() => {
this.loading = false; this.loading = false;
this.udidlList = []; this.udidlList = [];
this.total = 0; this.total = 0;
}); });
}, },
combineUdiAll() { combineUdiAll() {
@ -507,22 +518,22 @@ export default {
cancelButtonText: "取消", cancelButtonText: "取消",
type: "warning", type: "warning",
}) })
.then(() => { .then(() => {
combineAllUdi(this.unionQuery) combineAllUdi(this.unionQuery)
.then((response) => { .then((response) => {
this.loading = false; this.loading = false;
if (response.code == 20000) { if (response.code == 20000) {
this.$message.success(response.data); this.$message.success(response.data);
this.$emit("closeUdi", true); this.$emit("closeUdi", true);
} else { } else {
this.$message.error(response.message); this.$message.error(response.message);
} }
}) })
.catch(() => { .catch(() => {
}); });
}) })
.catch(() => { .catch(() => {
}); });
}, },
@ -586,51 +597,51 @@ export default {
} }
this.combineLoading = true; this.combineLoading = true;
checkExitUdi(this.combineQuery) checkExitUdi(this.combineQuery)
.then((response) => { .then((response) => {
this.combineLoading = false; this.combineLoading = false;
if (response.code == 20000) { if (response.code == 20000) {
this.combine(); this.combine();
// combineUdi(this.combineQuery) // combineUdi(this.combineQuery)
// .then((response) => { // .then((response) => {
// this.combineLoading = false; // this.combineLoading = false;
// if (response.code == 20000) { // if (response.code == 20000) {
// this.$emit("closeUdi", true); // this.$emit("closeUdi", true);
// } else { // } else {
// this.$emit("closeUdi", false); // this.$emit("closeUdi", false);
// } // }
// }) // })
// .catch(() => { // .catch(() => {
// this.combineLoading = false; // this.combineLoading = false;
// this.$emit("closeUdi", false); // this.$emit("closeUdi", false);
// }); // });
} else if (response.code == 499) { } else if (response.code == 499) {
this.$confirm(response.message, {type: "warning"}) this.$confirm(response.message, {type: "warning"})
.then(_ => { .then(_ => {
this.combine(); this.combine();
// combineUdi(this.combineQuery) // combineUdi(this.combineQuery)
// .then((response) => { // .then((response) => {
// this.combineLoading = false; // this.combineLoading = false;
// if (response.code == 20000) { // if (response.code == 20000) {
// this.$emit("closeUdi", true); // this.$emit("closeUdi", true);
// } else { // } else {
// this.$emit("closeUdi", false); // this.$emit("closeUdi", false);
// } // }
// }) // })
// .catch(() => { // .catch(() => {
// this.combineLoading = false; // this.combineLoading = false;
// this.$emit("closeUdi", false); // this.$emit("closeUdi", false);
// }); // });
}) })
.catch(_ => { .catch(_ => {
this.combineQuery.keys = []; this.combineQuery.keys = [];
}); });
} }
}) })
.catch(() => { .catch(() => {
this.combineLoading = false; this.combineLoading = false;
this.$emit("closeUdi", false); this.$emit("closeUdi", false);
}); });
}, },
@ -642,20 +653,20 @@ export default {
this.combineQuery.erpName = this.data.thirdName; this.combineQuery.erpName = this.data.thirdName;
} }
combineUdi(this.combineQuery) combineUdi(this.combineQuery)
.then((response) => { .then((response) => {
this.combineLoading = false; this.combineLoading = false;
if (response.code == 20000) { if (response.code == 20000) {
this.$emit("closeUdi", true); this.$emit("closeUdi", true);
} else { } else {
this.$message.error(response.message); this.$message.error(response.message);
this.$emit("closeUdi", false); this.$emit("closeUdi", false);
} }
}) })
.catch(() => { .catch(() => {
this.combineLoading = false; this.combineLoading = false;
this.$emit("closeUdi", false); this.$emit("closeUdi", false);
}); });
}, },
handleSelectionUdiChange(val) { handleSelectionUdiChange(val) {
@ -668,14 +679,14 @@ export default {
limit: 10, limit: 10,
}; };
filterCompany(cQuery) filterCompany(cQuery)
.then((response) => { .then((response) => {
this.loading = false; this.loading = false;
this.fromOptions = response.data || []; this.fromOptions = response.data || [];
}) })
.catch(() => { .catch(() => {
this.loading = false; this.loading = false;
this.fromOptions = []; this.fromOptions = [];
}); });
}, },
}, },
components: { components: {

@ -432,6 +432,23 @@
</el-row> </el-row>
<el-row :gutter="20" class="el-row" type="flex"> <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="请输入内容"
type="number"
:disabled="true"
v-model="editQuery.packUnit"
></el-input>
</div>
</el-col>
<el-col :span="12" class="el-col"> <el-col :span="12" class="el-col">
<div class="text item"> <div class="text item">
<div class="itemTag"> <div class="itemTag">
@ -447,7 +464,6 @@
></el-input> ></el-input>
</div> </div>
</el-col> </el-col>
</el-row> </el-row>
</el-collapse-item> </el-collapse-item>

@ -175,40 +175,66 @@
></el-input> ></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-form-item label="包装单位:">
<el-input
style="width: 80%"
size="small"
splaceholder="请输入内容"
v-model="editQuery.packUnit"
></el-input>
</el-form-item>
</el-col>
</el-row> </el-row>
<el-row type="flex"> <el-row type="flex">
<el-col :span="24"> <el-col :span="24">
<div style="margin-bottom: 18px;margin-left: 25px"> <div style="margin-bottom: 18px;margin-left: 25px">
<el-checkbox v-model="editQuery.isDisable" class="" <el-checkbox v-model="editQuery.isDisable" class=""
@change="diableChange" @change="diableChange"
style="width: 180px"
border
>是否禁用 >是否禁用
</el-checkbox> </el-checkbox>
<el-checkbox v-model="editQuery.isAdavence" class="" <el-checkbox v-model="editQuery.isAdavence" class=""
border
style="width: 180px"
>是否寄售 >是否寄售
</el-checkbox> </el-checkbox>
<el-checkbox v-model="editQuery.allowNoBatch" class="" <el-checkbox v-model="editQuery.allowNoBatch" class=""
border
style="width: 180px"
>允许无批次号 >允许无批次号
</el-checkbox> </el-checkbox>
<el-checkbox v-model="editQuery.allowNoExpire" class="" <el-checkbox v-model="editQuery.allowNoExpire" class=""
border
style="width: 180px"
>允许无失效日期 >允许无失效日期
</el-checkbox> </el-checkbox>
<el-checkbox v-model="editQuery.allowNoProduct" class=""
>允许无生产日期
</el-checkbox>
</div> </div>
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="20" class="el-row" type="flex"> <el-row :gutter="20" class="el-row" type="flex">
<el-col :span="24" class="el-col"> <el-col :span="24" class="el-col">
<div style="margin-bottom: 18px;margin-left: 25px"> <div style="margin-bottom: 18px;margin-left: 25px">
<el-checkbox v-model="editQuery.allowNoProduct" class=""
border
style="width: 180px"
>允许无生产日期
</el-checkbox>
<el-checkbox v-model="checked" class="" <el-checkbox v-model="checked" class=""
:disabled="!isUseDyCheck || editQuery.useMuti==true " :disabled="!isUseDyCheck || editQuery.useMuti==true "
@change="useDyCheckChange" @change="useDyCheckChange"
style="width: 180px"
border
>启用使用单元 >启用使用单元
</el-checkbox> </el-checkbox>
<el-checkbox v-model="editQuery.useMuti" class="" <el-checkbox v-model="editQuery.useMuti" class=""
:disabled="checked" :disabled="checked"
@change="useMutiChange" @change="useMutiChange"
style="width: 180px"
border
>允许科室多次使用出库 >允许科室多次使用出库
</el-checkbox> </el-checkbox>
</div> </div>

Loading…
Cancel
Save