10/17 增加单据设置增加单据类型

dev_unify
wangwei 9 months ago
parent c3b0210b20
commit 5d29037a85

@ -59,6 +59,14 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item class="query-form-item" label="单据类型:">
<el-select v-model="filterQuery.productType" style="width: 90%" placeholder="请选择单据类型" clearable>
<el-option label="器械单据" :value="1"></el-option>
<el-option label="药品单据" :value="2"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
@ -168,7 +176,7 @@
top="5vh"
>
<modifyDialog :inputQuery="inputQuery"></modifyDialog>
<div slot="footer" class="dialog-footer">
<div style="text-align: center; margin-top: 12px">
<!-- :disabled="!configParams.typeScan"-->
<el-button type="primary" size="small" @click="onAddSubmit"
>提交
@ -200,7 +208,6 @@
>提交
</el-button>
<el-button
type="primary"
size="small"
icon="search"
@click="cancelDialog"
@ -239,6 +246,7 @@ export default {
filterQuery: {
name: null,
mainAction: null,
productType: null,
enable: "1",
page: 1,
limit: 20,
@ -414,6 +422,10 @@ export default {
this.$message.error("单据类型名称不能为空!");
return;
}
if (isBlank(this.inputQuery.productType)) {
this.$message.error('单据类型不能为空!')
return
}
// if (isBlank(this.inputQuery.actionType)) {
// this.$message.error("");
// return;

@ -230,6 +230,15 @@
</el-row>
<el-row type="flex">
<el-col :span="11">
<el-form-item label="单据类型" prop="productType">
<el-select v-model="inputQuery.productType" style="width: 90%" placeholder="请选择单据类型">
<el-option label="器械单据" :value="1"></el-option>
<el-option label="药品单据" :value="2"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="11">
<el-form-item prop="remark" label="备注">
<el-input v-model="inputQuery.remark" size="small" style="width: 90%" type="textarea" autosize
@ -1256,6 +1265,13 @@ export default {
trigger: 'change'
}
],
productType: [
{
required: true,
message: '请选择单据类型',
trigger: 'change'
}
],
inStock: [
{
required: true,

@ -738,6 +738,7 @@ export default {
let query = {
enabled: true,
vueType: "supDelivery",
productType:2
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -764,19 +764,7 @@ export default {
this.combineLoading = false;
if (response.code == 20000) {
this.combine();
// combineUdi(this.combineQuery)
// .then((response) => {
// this.combineLoading = false;
// if (response.code == 20000) {
// this.$emit("closeUdi", true);
// } else {
// this.$emit("closeUdi", false);
// }
// })
// .catch(() => {
// this.combineLoading = false;
// this.$emit("closeUdi", false);
// });
} else if (response.code == 499) {
this.$confirm(response.message, {type: "warning"})
.then(_ => {

@ -310,6 +310,7 @@ export default {
registerNo: null,
page: 1,
limit: 10,
productType:1
},
thirdSys: [],
thirdSysFk: null,
@ -427,14 +428,15 @@ export default {
ylqxzcrbarmc: null,
ggxh: "",
zczbhhzbapzbh: "",
isCheck: 1
isCheck: 1,
productType:1
};
this.getErpList();
},
serchList() {
this.unionQuery.page = 1;
this.getList();
this.getErpList();
},
getSuperSeaech() {
@ -635,6 +637,7 @@ export default {
},
created() {
this.getBasicThirdSys();
this.getErpList();
},
components: {
selectDiDetail,

@ -639,11 +639,18 @@
highlight-current-row
@current-change="handleDetail"
>
<el-table-column label="序号" type="index"></el-table-column>
<el-table-column
label="产品最小销售标识"
prop="nameCode"
show-overflow-tooltip
width="140"
></el-table-column>
<el-table-column label="标识类型" prop="diType" width="110">
<template slot-scope="scope">
<span>{{ diTypes[scope.row.diType] }}</span>
</template>
</el-table-column>
<el-table-column
label="物资名称"
prop="cpmctymc"
@ -659,6 +666,21 @@
prop="packUnit"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="下级数量"
prop="bhxjsl"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="下级标识"
prop="bhxjcpbm"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="上级标识"
prop="sjcpbm"
show-overflow-tooltip
></el-table-column>
</el-table>
</el-card>
<el-card>
@ -820,8 +842,27 @@
</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-select
v-model="editQuery.destinyType"
disabled
style="width: 65%"
size="small"
>
<el-option
v-for="item in destinyTypeSelectList"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</div>
</el-col>
<el-col :span="12" class="el-col">
<div class="text item">
<div class="itemTag">
@ -838,10 +879,7 @@
</el-select>
</div>
</el-col>
<el-col :span="12" class="el-col">
</el-col>
</el-row>
</el-collapse-item>
<el-collapse-item name="2">
@ -940,7 +978,7 @@
splaceholder="请输入内容"
:disabled="useNumEnable"
type="number"
v-model="editQuery.useNum"
v-model="editQuery.zdcfsycs"
></el-input>
</div>
</el-col>
@ -1246,17 +1284,7 @@
</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%" :disabled="!checked" size="small" splaceholder="请输入内容"
v-model="editQuery.cphhhbh"></el-input>
</div>
</el-col>
</el-row>
<el-row :gutter="20" class="el-row" type="flex">
<el-col
:span="12"
@ -1573,6 +1601,7 @@
<template slot="title">
<p class="form-title">国家DI标识数据库版本信息</p>
</template>
<el-row :gutter="20" class="el-row" type="flex">
<el-col :span="12" class="el-col">
<div class="text item">
@ -1586,27 +1615,15 @@
splaceholder="请输入内容"
v-model="editQuery.versionNumber"
></el-input>
<el-button
type="text"
size="small"
@click.native.stop="selectVersion()"
style="margin-left: 5%"
>切换版本
</el-button>
</div>
</el-col>
<el-col :span="2" class="el-col">
<el-button
type="text"
size="small"
@click.native.stop="selectVersion()"
style="margin-left: 5%"
>切换版本
</el-button>
</el-col>
<el-col :span="2" class="el-col">
<el-button
type="text"
size="small"
@click.native.stop="updateVersion()"
:loading="updateLoading"
style="margin-left: 5%"
>更新为当前发布版本
</el-button>
</el-col>
</el-row>
</el-collapse-item>
</el-collapse>
@ -1957,6 +1974,10 @@ export default {
activeNames: ["1"],
useNumEnable: true,
updateLoading: false,
diTypes: {
1: '最小销售标识',
4: '外包装标识'
},
};
},
filters: {

@ -1190,6 +1190,7 @@ export default {
code: _this.filterQuery.invCode,
enable: true,
vueType: "supInvoice",
productType:1
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -1329,6 +1329,7 @@ export default {
code: _this.filterQuery.invCode,
enabled: true,
vueType: "supDelivery",
productType:1
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -553,6 +553,7 @@ export default {
code: _this.filterQuery.invCode,
enabled: true,
vueType: "supDelivery",
productType:1
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -568,6 +568,7 @@ export default {
code: _this.filterQuery.invCode,
enable: true,
vueType: "supDelivery",
productType:1
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -510,6 +510,7 @@ export default {
code: this.filterQuery.invCode,
enabled: true,
vueType: "supDelivery",
productType:1
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -679,6 +679,7 @@ export default {
code: _this.filterQuery.invCode,
enabled: true,
vueType: "supDelivery",
productType:1
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -1633,6 +1633,7 @@ export default {
code: _this.filterQuery.invCode,
enabled: true,
vueType: "supDelivery",
productType:1
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -1688,6 +1688,7 @@ export default {
let query = {
code: _this.filterQuery.invCode,
enabled: true,
productType:1
// busType: 2,//
};
getLocalJoinByUserOptimize(query)

@ -1135,6 +1135,7 @@ export default {
code: _this.filterQuery.invCode,
enabled: true,
vueType: "supDelivery",
productType:1
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -1340,6 +1340,7 @@ export default {
code: _this.filterQuery.invCode,
enabled: true,
viewType: 'supInout',
productType:1
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -1300,6 +1300,7 @@ export default {
code: this.filterQuery.invCode,
enabled: true,
vueType: "supDelAudit",
productType:1
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -1333,6 +1333,7 @@ export default {
code: _this.filterQuery.invCode,
enabled: true,
vueType: "supDelivery",
productType:2
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -554,6 +554,7 @@ export default {
code: _this.filterQuery.invCode,
enabled: true,
vueType: "supDelivery",
productType:2
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -565,6 +565,7 @@ export default {
code: _this.filterQuery.invCode,
enable: true,
vueType: "supDelivery",
productType:2
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -511,6 +511,7 @@ export default {
code: this.filterQuery.invCode,
enabled: true,
vueType: "supDelivery",
productType:2
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -502,6 +502,7 @@ export default {
code: _this.filterQuery.invCode,
enabled: true,
vueType: "supDelivery",
productType:2
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -1137,6 +1137,7 @@ export default {
code: _this.filterQuery.invCode,
enabled: true,
vueType: "supDelivery",
productType:2
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -1341,6 +1341,7 @@ export default {
code: _this.filterQuery.invCode,
enabled: true,
viewType: 'supInout',
productType:2
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -1301,6 +1301,7 @@ export default {
code: this.filterQuery.invCode,
enabled: true,
vueType: "supDelAudit",
productType:2
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -1638,6 +1638,7 @@ export default {
code: _this.filterQuery.invCode,
enabled: true,
vueType: "supDelivery",
productType:2
};
getLocalJoinByUserOptimize(query)
.then((response) => {

@ -1689,6 +1689,7 @@ export default {
let query = {
code: _this.filterQuery.invCode,
enabled: true,
productType:2
// busType: 2,//
};
getLocalJoinByUserOptimize(query)

@ -524,6 +524,7 @@ export default {
thrPiId: null,
filterType: null,
auditStatus: null,
productType: 1
},
idSpliUdi: false,
newType: 2,
@ -613,6 +614,7 @@ export default {
page: 1,
limit: 20,
addType: 1,
productType:1
};
this.getList();
},

@ -1,89 +1,336 @@
<template>
<div>
<el-card>
<el-table :data="sysList" style="width: 100%; margin-bottom: 8px" key="2" border>
<el-table-column label="序号" type="index"></el-table-column>
<el-table-column label="第三方系统名称" prop="sysName" show-overflow-tooltip></el-table-column>
<el-table-column label="第三方系统物资编码" prop="thirdId" show-overflow-tooltip></el-table-column>
<el-table-column label="第三方系统物资名称" prop="thirdName" show-overflow-tooltip></el-table-column>
<el-table-column label="第三方系统规格型号" prop="spec" show-overflow-tooltip></el-table-column>
<el-table-column label="注册/备案号" prop="registerNo" show-overflow-tooltip></el-table-column>
<el-table-column label="生产企业" prop="manufactory" show-overflow-tooltip></el-table-column>
<el-table-column label="操作">
<template slot-scope="scope">
<el-button type="text" @click="addSelectErp(scope.row)" :disabled="scope.row.thirdId==editQuery.nameCode">
关联
</el-button>
<el-button type="text" @click.native.stop="removeErp(scope.row)"
:disabled="editQuery.flbm==null || scope.row.thirdId==null || scope.row.thirdId==''">解绑
</el-button>
</template>
</el-table-column>
</el-table>
</el-card>
<el-card>
<div style=" float: left;
<el-form
:model="editQuery"
:rules="rules"
ref="editQuery"
border
label-width="130px"
>
<el-card>
<el-table :data="sysList" style="width: 100%; margin-bottom: 8px" key="2" border>
<el-table-column label="序号" type="index"></el-table-column>
<el-table-column label="第三方系统名称" prop="sysName" show-overflow-tooltip></el-table-column>
<el-table-column label="第三方系统物资编码" prop="thirdId" show-overflow-tooltip></el-table-column>
<el-table-column label="第三方系统物资名称" prop="thirdName" show-overflow-tooltip></el-table-column>
<el-table-column label="第三方系统规格型号" prop="spec" show-overflow-tooltip></el-table-column>
<el-table-column label="注册/备案号" prop="registerNo" show-overflow-tooltip></el-table-column>
<el-table-column label="生产企业" prop="manufactory" show-overflow-tooltip></el-table-column>
<el-table-column label="操作">
<template slot-scope="scope">
<el-button type="text" @click="addSelectErp(scope.row)" :disabled="scope.row.thirdId==editQuery.nameCode">
关联
</el-button>
<el-button type="text" @click.native.stop="removeErp(scope.row)"
:disabled="editQuery.flbm==null || scope.row.thirdId==null || scope.row.thirdId==''">解绑
</el-button>
</template>
</el-table-column>
</el-table>
</el-card>
<el-card>
<div style=" float: left;
text-align: left;
font-weight: bold;
margin-bottom: 8px">
<span>产品标识:</span>
</div>
<div style=" float: right;
<span>产品标识:</span>
</div>
<div style=" float: right;
text-align: right;
margin-bottom: 8px;">
<el-button type="primary" size="mini" icon="search" @click="removeDi" v-if="productType!=1"
style="text-align:right">解绑DI器械信息
</el-button>
</div>
<el-table v-loading="loading" :data="detailList" style="width: 100%; " border key="3" highlight-current-row>
<el-table-column label="产品最小销售标识" prop="nameCode" show-overflow-tooltip></el-table-column>
<el-table-column label="物资名称" prop="cpmctymc" show-overflow-tooltip></el-table-column>
<el-table-column label="包装级别" prop="packLevel" show-overflow-tooltip></el-table-column>
<el-table-column label="包装层级" prop="bzcj" show-overflow-tooltip></el-table-column>
</el-table>
</el-card>
<el-card>
<el-form :model="editQuery" :rules="rules" ref="editQuery" border label-width="120px" style="margin-top: 20px; ">
margin-bottom: 8px;"
>
<!-- <el-button type="primary" size="mini" icon="search" @click="addDrugLevel"-->
<!-- style="text-align:right"-->
<!-- >新增药品层级-->
<!-- </el-button>-->
<el-button type="primary" size="mini" icon="search" @click="removeDi" v-if="productType!=1"
style="text-align:right">解绑DI器械信息
</el-button>
</div>
<el-table
v-loading="loading"
:data="detailList"
style="width: 100%;"
border
key="3"
@current-change="handleDetail"
>
<el-table-column label="序号" type="index"></el-table-column>
<el-table-column label="层级标识" prop="nameCode" show-overflow-tooltip width="160">
<template slot-scope="scope">
<el-input size="small" v-model="scope.row.nameCode" style="width: 100%;margin: 4px;"
:disabled="true"
></el-input>
</template>
</el-table-column>
<!-- 1.主标识2使用单元标识3.本体标识4包装标识-->
<el-table-column label="标识类型" prop="diType" show-overflow-tooltip width="160">
<template slot-scope="scope">
<el-select v-model="scope.row.diType"
:disabled="true"
style="width: 90%" placeholder="选择标识类型" clearable>
<el-option label="最小销售标识" :value="1"></el-option>
<!-- <el-option label="使用单元标识" :value="2"></el-option>-->
<!-- <el-option label="本体标识" :value="3"></el-option>-->
<el-option label="外包装标识" :value="4"></el-option>
</el-select>
</template>
</el-table-column>
<el-table-column label="包装级别" prop="packLevel" show-overflow-tooltip width="100">
<template slot-scope="scope">
<el-input size="small" v-model="scope.row.packLevel" style="width: 100%"
type="number"
:disabled="true"
></el-input>
</template>
</el-table-column>
<el-table-column label="层级单位" prop="packUnit" show-overflow-tooltip width="120">
<template slot-scope="scope">
<el-input size="small" v-model="scope.row.packUnit" style="width: 100%"
:disabled="scope.$index !== selectedIndex"
></el-input>
</template>
</el-table-column>
<el-table-column label="下级数量" prop="bhxjsl" show-overflow-tooltip width="100">
<template slot-scope="scope">
<el-input size="small" v-model="scope.row.bhxjsl" style="width: 100%"
type="number"
:disabled="scope.$index !== selectedIndex"
></el-input>
</template>
</el-table-column>
<el-table-column label="下级单位" prop="xjdw" show-overflow-tooltip width="120">
<template slot-scope="scope">
<el-input size="small" v-model="scope.row.xjdw" style="width: 100%"
:disabled="scope.$index !== selectedIndex"
></el-input>
</template>
</el-table-column>
<el-table-column label="下级标识" prop="bhxjcpbm" show-overflow-tooltip width="160">
<template slot-scope="scope">
<el-input size="small" v-model="scope.row.bhxjcpbm" style="width: 100%"
:disabled="scope.$index !== selectedIndex "
></el-input>
</template>
</el-table-column>
<el-table-column label="上级标识" prop="sjcpbm" show-overflow-tooltip width="160">
<template slot-scope="scope">
<el-input size="small" v-model="scope.row.sjcpbm" style="width: 100%"
:disabled="scope.$index !== selectedIndex"
></el-input>
</template>
</el-table-column>
<el-table-column label="操作" width="180px" fixed="right">
<template slot-scope="scope">
<el-button type="text" size="small" v-if="scope.$index == selectedIndex " @click.stop="true"
@click.native="levelSave(scope.row)"
>保存
</el-button>
<el-button
type="text"
size="small"
v-if="scope.$index != selectedIndex "
@click.stop="true"
@click.native="rowChange(scope.$index,scope.row)"
>编辑
</el-button>
<!--:disabled=" scope.row.id != null"-->
<!-- <el-button-->
<!-- type="text"-->
<!-- size="small"-->
<!-- @click.stop="true"-->
<!-- @click.native="deleteLevel(scope.$index, scope.row)"-->
<!-- >删除-->
<!-- </el-button>-->
</template>
</el-table-column>
</el-table>
<template>
<p class="form-title2">流通时采用的计量单位设置</p>
</template>
<el-row :gutter="20">
<el-col :span="11" class="el-col">
<el-form-item label="计量单位:" prop="distributeLevel" label-width="160px">
<el-select v-model="editQuery.distributeLevel" size="small" style="width: 90%"
clearable
@change="distributeLevelDiChange"
placeholder="请选择计量单位"
>
<el-option
v-for="item in levelUnitList"
:key="item.packLevel"
:value="item.packLevel"
:label="item.packUnit"
>
<span style="float: right; color: #8492a6; font-size: 13px">单位:{{ item.packUnit }}</span>
<span style="float: left">层级:{{ item.packLevel }}</span>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="11" class="el-col">
<el-form-item label="允许采集的最大层级:" prop="distributeMaxLevel" label-width="160px">
<el-select v-model="editQuery.distributeMaxLevel" size="small" style="width: 90%"
clearable
placeholder="请选择允许采集的最大层级"
>
<el-option
v-for="item in levelUnitList"
:key="item.packLevel"
:value="item.packLevel"
:label="item.packLevel"
>
<span style="float: right; color: #8492a6; font-size: 13px">单位:{{ item.packUnit }}</span>
<span style="float: left">层级:{{ item.packLevel }}</span>
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-divider></el-divider>
<template>
<p class="form-title2">使用时采用的计量单位设置</p>
</template>
<el-row :gutter="20">
<el-col :span="11" class="el-col">
<el-form-item label="计量单位:" prop="useLevel" label-width="160px">
<el-select v-model="editQuery.useLevel" size="small" style="width: 90%"
clearable
@change="useLevelDiChange"
placeholder="请选择计量单位"
>
<el-option
v-for="item in levelUnitList"
:key="item.packLevel"
:value="item.packLevel"
:label="item.packUnit"
>
<span style="float: right; color: #8492a6; font-size: 13px">单位:{{ item.packUnit }}</span>
<span style="float: left">层级:{{ item.packLevel }}</span>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="11" class="el-col">
<el-form-item label="允许采集的最大层级:" prop="useMaxLevel" label-width="160px">
<el-select v-model="editQuery.useMaxLevel" size="small" style="width: 90%"
clearable
placeholder="请选择允许采集的最大层级"
>
<el-option
v-for="item in levelUnitList"
:key="item.packLevel"
:value="item.packLevel"
:label="item.packLevel"
>
<span style="float: right; color: #8492a6; font-size: 13px">单位:{{ item.packUnit }}</span>
<span style="float: left">层级:{{ item.packLevel }}</span>
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="11" class="el-col">
<el-form-item label="拆包后可用时长(小时):" prop="unpackUseTime" label-width="160px">
<el-input v-model="editQuery.unpackUseTime" size="small" style="width: 90%"
clearable
placeholder="请输入拆包后可用时长(小时)"
>
</el-input>
</el-form-item>
</el-col>
</el-row>
</el-card>
<el-card>
<!--<el-row type="flex" class="edit-row" style="margin-top: 20px">-->
<!-- <el-col :span="12">-->
<!-- <el-form-item label="收费项目编码:">-->
<!-- <el-input-->
<!-- style="width: 60%"-->
<!-- size="small"-->
<!-- placeholder="选择项目收费编码"-->
<!-- v-model="editQuery.payFeeCode"-->
<!-- ></el-input>-->
<!-- <el-button type="primary" size="mini" style="margin-left: 10px" @click="selectPayFeecode"></el-button>-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<!--</el-row>-->
<el-row type="flex" class="edit-row">
<el-col :span="12">
<el-form-item label="商品条码:">
<el-input style="width: 80%" size="small" splaceholder="请输入内容" v-model="editQuery.sptm"></el-input>
<el-form-item label="计量单位:">
<el-input
style="width: 80%"
size="small"
splaceholder="请输入内容"
v-model="editQuery.measname"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="商品名称:">
<el-input style="width: 80%" size="small" splaceholder="请输入内容" v-model="editQuery.spmc"></el-input>
<el-form-item label="生产企业:">
<el-input
style="width: 80%"
size="small"
splaceholder="请输入内容"
v-model="editQuery.manufactory"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row type="flex" class="edit-row">
<el-col :span="12">
<el-form-item label="计量单位:">
<el-input style="width: 80%" size="small" splaceholder="请输入内容" v-model="editQuery.measname"></el-input>
<el-form-item label="商品名称:">
<el-input
style="width: 80%"
size="small"
splaceholder="请输入内容"
v-model="editQuery.spmc"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="生产企业:">
<el-input style="width: 80%" size="small" splaceholder="请输入内容" v-model="editQuery.manufactory"
<el-form-item label="产品描述:">
<el-input
style="width: 80%"
size="small"
splaceholder="请输入内容"
v-model="editQuery.cpms"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row type="flex" class="edit-row">
<el-col :span="12">
<el-form-item label="产品价格:">
<el-input style="width: 80%" size="small" splaceholder="请输入内容" v-model="editQuery.price"></el-input>
<el-form-item label="物资所属分类:">
<treeselect
v-model="editQuery.relCode"
:options="fromDeptOptions"
:normalizer="normalizer"
:show-count="true"
style="width: 80%;"
placeholder="选择物资所属分类"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="医保编码:">
<el-input style="width: 80%"
size="small"
splaceholder="请输入内容"
v-model="editQuery.ybbm"
v-debounce-input:500ms="getYbHcData"
<el-input
style="width: 80%"
size="small"
splaceholder="请输入内容"
v-model="editQuery.ybbm"
v-debounce-input:500ms="getYbHcData"
></el-input>
</el-form-item>
</el-col>
@ -141,34 +388,54 @@
<el-row type="flex" class="edit-row">
<el-col :span="12">
<el-form-item label="采购类型">
<el-select
v-model="editQuery.purType"
placeholder="请选择"
clearable
<el-form-item label="库存积压预警数量:">
<el-input
style="width: 80%"
>
<el-option label="普通入账产品" :value="1"></el-option>
<el-option label="预验收产品" :value="2"></el-option>
<el-option label="寄售产品" :value="3"></el-option>
</el-select>
size="small"
type="number"
oninput="value=value.replace(/[^\d]/g,'')"
splaceholder="请输入内容"
v-model="editQuery.overStockNum"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="产品属性">
<el-select
v-model="editQuery.attributeType"
placeholder="请选择"
clearable
<el-form-item label="低库存预警数量:">
<el-input
style="width: 80%"
>
<el-option label="设备" :value="1"></el-option>
<el-option label="耗材" :value="2"></el-option>
<el-option label="伴随服务费" :value="3"></el-option>
size="small"
type="number"
oninput="value=value.replace(/[^\d]/g,'')"
splaceholder="请输入内容"
v-model="editQuery.lowStockNum"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row type="flex" class="edit-row">
<el-col :span="12">
<el-form-item label="近效期预警时间:">
<el-input
style="width: 80%"
size="small"
type="number"
splaceholder="请输入内容"
v-model="editQuery.recentDateTime"
@change="handleChange"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="预警时间单位:">
<el-select v-model="editQuery.isDateBy" style="width: 80%" placeholder="状态" clearable>
<el-option label="天" :value="1"></el-option>
<el-option label="小时" :value="2"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row type="flex" class="edit-row">
<el-col :span="12" v-if="productRemarkSet.remarkEnable1">
<el-form-item :label="productRemarkSet.remarkTitle1+':'">
@ -226,46 +493,27 @@
</el-col>
<el-col :span="12" v-if="productRemarkSet.remarkEnable6">
<el-form-item :label="productRemarkSet.remarkTitle6+':'">
<el-select
v-model="editQuery.basicPrductRemak6"
placeholder="请选择"
clearable
<el-input
style="width: 80%"
>
<el-option label="扣费" value="1"></el-option>
<el-option label="不扣费" value="0"></el-option>
</el-select>
size="small"
splaceholder="请输入内容"
v-model="editQuery.basicPrductRemak6"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row type="flex" class="edit-row">
<el-col :span="12" v-if="productRemarkSet.remarkEnable7">
<el-form-item :label="productRemarkSet.remarkTitle7+':'">
<el-select
v-model="editQuery.basicPrductRemak7"
filterable
remote
clearable="true"
reserve-keyword
placeholder="请选择物资类别"
:remote-method="findThrTypeMethod"
<el-input
style="width: 80%"
>
<el-option
v-for="item in thrTypeOptions"
:key="item.code"
:label="item.name"
:value="item.code"
>
<span style="float: left">{{ item.name }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.code }}</span>
</el-option>
</el-select>
size="small"
splaceholder="请输入内容"
v-model="editQuery.basicPrductRemak7"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row type="flex" class="edit-row">
<el-col :span="12" v-if="productRemarkSet.remarkEnable8==true && editQuery.basicPrductRemak6=='1'">
<el-col :span="12" v-if="productRemarkSet.remarkEnable8">
<el-form-item :label="productRemarkSet.remarkTitle8+':'">
<el-select
v-model="editQuery.basicPrductRemak8"
@ -275,6 +523,7 @@
reserve-keyword
placeholder="请选择物价类别"
:remote-method="findHsflMethod"
:loading="loading"
style="width: 80%"
>
<el-option
@ -284,62 +533,14 @@
:value="item.hsbm"
>
<span style="float: left">{{ item.hsmc }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.hsbm }}</span>
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row type="flex" class="edit-row">
<el-col :span="12">
<el-form-item label="产品描述:">
<el-input style="width: 80%" size="small" splaceholder="请输入内容" v-model="editQuery.cpms"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="是否可集采:"
prop="spUse"
class="query-form-item"
>
<el-radio-group v-model="editQuery.groupBuy">
<el-radio :label="true"></el-radio>
<el-radio :label="false"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
<el-row type="flex" class="edit-row">
<el-col :span="12">
<el-form-item
label="耗材类别:"
prop="hcType"
class="query-form-item"
>
<el-radio-group v-model="editQuery.hcType">
<el-radio :label=1>高值耗材</el-radio>
<el-radio :label=2>普通耗材</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="是否组套:"
prop="isStack"
class="query-form-item"
>
<el-radio-group v-model="editQuery.isStack">
<el-radio :label="true"></el-radio>
<el-radio :label="false"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
<el-row type="flex" class="edit-row">
<el-row>
<el-col :span="12">
<el-form-item label="分类编码:"
prop="flbm"
class="query-form-item">
<el-form-item label="分类编码:" prop="require">
<el-select
v-model="editQuery.flbm"
filterable
@ -360,26 +561,64 @@
<span>{{ item.name }}</span>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="包装规格:">
<el-input
style="width: 80%"
size="small"
splaceholder="请输入内容"
v-model="editQuery.bzgg"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row class="edit-row">
<el-button-group style="display: flex">
<el-button type="primary" @click.native="submitUpload()" style="margin: 0 60px 10px auto; height: 35px"
:loading="loading"
>提交
</el-button>
</el-button-group>
<el-row>
<el-col :span="12">
<el-form-item label="工位预警数量:">
<el-input
type="number"
style="width: 80%"
min="1"
size="small"
splaceholder="请输入内容"
v-model="editQuery.workPlaceCount"
></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
</el-card>
</el-card>
<!-- <div style="text-align: center; margin-top: 12px">
<el-button
type="primary"
size="small"
icon="search"
@click="onAddSubmit(false)"
:loading="onAddLoading"
>提交
</el-button>
<el-button
size="small"
icon="search"
@click="cancelSubmit"
>取消
</el-button>
</div> -->
</el-form>
<el-dialog
title="耗材字典-从指定系统添加器械信息"
:visible.sync="selectErpDialogVisible"
:close-on-click-modal="false"
:close-on-press-escape="false"
width="80%"
width="85%"
append-to-body
v-if="selectErpDialogVisible"
>
@ -390,11 +629,58 @@
:isImport="isImport"
:data="thisData"
:defaultSys="defaultSys"
@closeUdi="closeUdi2"
@closeUdi="closeUdi"
:supEnable="false"
></selectErp>
</el-dialog>
<el-dialog
title="耗材字典-编辑"
:visible.sync="editSingleDiDialogVisible"
:close-on-click-modal="false"
:close-on-press-escape="false"
width="45%"
v-if="editSingleDiDialogVisible"
append-to-body
>
<product-single-edit
:editQuery="editSingleFormat"
></product-single-edit>
<div style="text-align: center;margin-top: 12px">
<el-button type="primary" size="small" icon="search" @click="onAddSingleSubmit(false)" :loading="addLoading"
>提交
</el-button>
<el-button type="primary" size="small" icon="search" @click="cancelDialog"
>取消
</el-button>
</div>
</el-dialog>
<el-dialog
title="收费项目选入"
:visible.sync="tollProjectDialogVisible"
:close-on-click-modal="false"
:close-on-press-escape="false"
width="70%"
v-if="tollProjectDialogVisible"
append-to-body
>
<!--<product-single-edit-->
<!-- :editQuery="editSingleFormat"-->
<!--&gt;</product-single-edit>-->
<selectmedicalSuppliesDialog
:getData="getData"
>
</selectmedicalSuppliesDialog>
<!--<div style="text-align: center;margin-top: 12px">-->
<!-- <el-button type="primary" size="small" icon="search" @click="onAddSingleSubmit(false)" :loading="addLoading"-->
<!-- >提交-->
<!-- </el-button>-->
<!-- <el-button type="primary" size="small" icon="search" @click="cancelDialog"-->
<!-- >取消-->
<!-- </el-button>-->
<!--</div>-->
</el-dialog>
</div>
</template>
@ -406,6 +692,8 @@ import selectErp from "./udiInfoselectErpUdi";
import selectUdiVersion from '@/views/basic/product/UdiinfoSelectVersion'
import {getHslbs, getThrProductType} from "@/api/thrsys/thrHsfl";
import {filterClassify} from '@/api/purchase/classifyCode'
import { calculateDistCount } from '@/api/basic/product/drugUdiinfos'
import { levelByUuid } from '@/api/basic/product/udiInfo'
export default {
name: 'productEdit',
@ -433,7 +721,7 @@ export default {
sysList: {},
relId: null,
defaultSys: null,
detailList: {},
// detailList: {},
isImport: null,
thisData: {
nameCode: null,
@ -455,10 +743,62 @@ export default {
hsflOptions: [],
thrTypeOptions: [],
classifyList: [],
selectedIndex: null,
detailList: [
//
{
productId: null,
nameCode: '',
packLevel: null,
bhxjsl: null,
isDisabled: false,
isUpDisabled: true,
rowDisabled: false
}
],
levelUnitList: [],
}
},
methods: {
distributeLevelDiChange(val) {
const matchingItem = this.detailList.find(item => item.nameCode == val);
if (matchingItem) {
this.editQuery.distributeLevelUnit = matchingItem.packUnit;
this.editQuery.distributeLevel = matchingItem.packLevel
}
calculateDistCount(matchingItem).then((res) => {
this.editQuery = {
...this.editQuery,
distributeLevelCount: res.data.distributeLevelCount,
}
})
},
getDiLevel() {
let query = {
id: this.editQuery.rlId
}
this.loading = true
levelByUuid(query)
.then((response) => {
this.loading = false
this.levelUnitList = response.data || []
this.findMaxLevelObject()
})
.catch(() => {
this.loading = false
this.levelUnitList = []
})
},
findMaxLevelObject() {
this.maxLevel = 1;
for (const obj of this.levelUnitList) {
if (obj.packLevel > this.maxLevel) {
this.maxLevel = Number(obj.packLevel);
}
}
},
classifyChange() {
this.classifySearch(this.editQuery.flbm)
let item = this.classifyList.find(item => item.code == this.editQuery.flbm)
@ -689,6 +1029,7 @@ export default {
selectErp
},
created() {
this.getDiLevel()
this.getThirdSysDetail();
var ttquery = {
id: this.editQuery.rlId,
@ -721,6 +1062,27 @@ export default {
</script>
<style scoped>
.vue-treeselect--searchable:not(.vue-treeselect--disabled) .vue-treeselect__value-container {
cursor: text;
width: 500px;
}
.form-title2 {
font-size: 16px;
font-family: Noto Sans SC;
font-weight: bold;
color: #303133;
}
.el-divider {
margin: 6px 0px 8px 0px;
background: 0 0;
border-top: 1px solid #E6EBF5;
}
.sptext {
font-size: 13px;
font-weight: normal;
}
</style>

@ -352,7 +352,7 @@
<el-dialog
title="药品信息编辑"
:title="titleMap[type]"
:visible.sync="editDialogVisible"
width="80%"
:close-on-click-modal="false"
@ -377,29 +377,29 @@
<!--</selectDrugProductsEdit>-->
</el-dialog>
<el-dialog
title="药品信息详情"
:visible.sync="detailDialogVisible"
width="70%"
:close-on-click-modal="false"
:close-on-press-escape="false"
v-if="detailDialogVisible"
>
<basicProductEdit
:productRemarkSet="productRemarkSet"
:editQuery="editQuery"
:closeDialog="closeDialog"
:type="type"
>
</basicProductEdit>
<!--<el-dialog-->
<!-- title="药品信息详情"-->
<!-- :visible.sync="detailDialogVisible"-->
<!-- width="70%"-->
<!-- :close-on-click-modal="false"-->
<!-- :close-on-press-escape="false"-->
<!-- v-if="detailDialogVisible"-->
<!--&gt;-->
<!-- <basicProductEdit-->
<!-- :productRemarkSet="productRemarkSet"-->
<!-- :editQuery="editQuery"-->
<!-- :closeDialog="closeDialog"-->
<!-- :type="type"-->
<!-- >-->
<!-- </basicProductEdit>-->
<!--<basicProductDetail-->
<!-- :productRemarkSet="productRemarkSet"-->
<!-- :editQuery="editQuery"-->
<!-- :closeDialog="closeDialog">-->
<!-- >-->
<!--</basicProductDetail>-->
</el-dialog>
<!-- &lt;!&ndash;<basicProductDetail&ndash;&gt;-->
<!-- &lt;!&ndash; :productRemarkSet="productRemarkSet"&ndash;&gt;-->
<!-- &lt;!&ndash; :editQuery="editQuery"&ndash;&gt;-->
<!-- &lt;!&ndash; :closeDialog="closeDialog">&ndash;&gt;-->
<!-- &lt;!&ndash; >&ndash;&gt;-->
<!-- &lt;!&ndash;</basicProductDetail>&ndash;&gt;-->
<!--</el-dialog>-->
<el-dialog
title="关联选入耗材信息"
:visible.sync="selectUdiDialogVisible"
@ -619,7 +619,11 @@ export default {
isUseDyCheck: false,
loading: false,
activeNames: ['1'],
type: null
type: null,
titleMap:{
1 : '药品信息编辑',
2 : '药品信息详情',
}
};
},
@ -919,17 +923,24 @@ export default {
this.getList();
},
handleDetailClick(row) {
this.thisData = row;
this.type = 2
this.detailDialogVisible = true;
this.editQuery = row;
this.fromName = 'edit'
this.uuid = row.uuid;
this.relId = row.rlId;
this.isImport = false;
this.thisData = row;
this.pId = row.rlId;
this.relevanceEdit = {
id: row.rlId,
isUseDy: row.isUseDy,
isDisable: row.isDisable,
isLock: row.isLock,
isAdavence: row.isAdavence,
useMuti: row.useMuti
};
this.editFormat = JSON.parse(JSON.stringify(row));
this.rowData = row
this.editQuery = row;
this.editDialogVisible = true;
},
sumitLockStatus(row) {
let postQuery = {
@ -954,8 +965,6 @@ export default {
},
handleModifyClick(row) {
this.fromName = 'edit'
this.type = 2
this.uuid = row.uuid;
this.relId = row.rlId;
this.isImport = false;

@ -15,7 +15,7 @@
<el-table-column label="第三方系统包装规格" prop="spec" show-overflow-tooltip></el-table-column>
<el-table-column label="注册号" prop="registerNo" show-overflow-tooltip></el-table-column>
<el-table-column label="生产企业" prop="manufactory" show-overflow-tooltip></el-table-column>
<el-table-column label="操作">
<el-table-column label="操作" v-if="type != 2">
<template slot-scope="scope">
<el-button type="text" @click="addSelectErp(scope.row)" :disabled="scope.row.thirdId==rowData.nameCode">
关联
@ -35,6 +35,7 @@
<div style=" float: right;
text-align: right;
margin-bottom: 8px;"
v-if="type != 2"
>
<el-button type="primary" size="mini" icon="search" @click="addDrugLevel"
style="text-align:right"
@ -115,7 +116,7 @@
</template>
</el-table-column>
<el-table-column label="操作" width="180px" fixed="right">
<el-table-column label="操作" width="180px" fixed="right" v-if="type != 2">
<template slot-scope="scope">
<el-button type="text" size="small" v-if="scope.$index == selectedIndex " @click.stop="true"
@click.native="levelSave(scope.row)"
@ -606,7 +607,7 @@
</el-collapse-item>
</el-collapse>
</el-form>
<div style="text-align: center; margin-top: 20px;">
<div style="text-align: center; margin-top: 20px;" v-if="type != 2">
<el-button type="primary" @click="saveNewProduct" :loading="saveLoading">提交</el-button>
<el-button @click="closeAddDialog"></el-button>
</div>
@ -1000,12 +1001,13 @@ export default {
sjcpbm: row.sjcpbm,
bhxjcpbm: row.bhxjcpbm,
bhxjsl: row.bhxjsl,
relId: this.newProductData.id,
relId: this.newProductData.rlId,
uuid: this.newProductData.uuid,
productId: row.productId,
diType: row.diType,
xjdw: row.xjdw
}
updateLevelDrug(editQuery).then(res => {
this.saveLoading = false
if (res.code == 20000) {

@ -839,6 +839,7 @@ export default {
created() {
this.getBasicThirdSys()
this.findBasicProductSet()
this.findThrTypeMethod("")
},
components: {
selectDiDetail

@ -55,7 +55,7 @@
<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="search"></el-button>
<el-button type="primary" icon="el-icon-plus" @click="addProductVisible=true"
<el-button type="primary" icon="el-icon-plus" @click="addProduct"
:disabled="!configParms.basicThirdProducts">新增
</el-button>
</el-button-group>
@ -119,6 +119,7 @@
top="5vh"
>
<ThrProductsAdd
:thrSysId="thrSysId"
:newType="newType"
:closeAddDialog="closeAddDialog"></ThrProductsAdd>
</el-dialog>
@ -183,6 +184,7 @@ export default {
thrProductsEditVisible: false,
thisData: null,
loading: false,
thrSysId: "",
addProductVisible: false,
newProductData: {
name: '',
@ -366,6 +368,10 @@ export default {
.catch(() => {
});
},
addProduct(){
this.thrSysId = this.filterQuery.thirdSys
this.addProductVisible = true
}
},
components: {
thrProductsDetail, ThrProductsAdd, thrProductsEdit

@ -136,6 +136,10 @@ export default {
type: Object,
required: true,
},
thrSysId: {
type: Object,
required: true,
},
closeAddDialog: {
type: Function,
required: true,
@ -170,7 +174,11 @@ export default {
methods: {
saveNewProduct() {
this.addProductVisible = false;
if (this.$isBlank(this.newProductData.thirdSysFk)) {
// if (this.$isBlank(this.newProductData.thirdSysFk)) {
// this.$message.warning("");
// return;
// }
if (this.$isBlank(this.thrSysId)) {
this.$message.warning("第三方系统不能为空!");
return;
}
@ -200,7 +208,7 @@ export default {
return;
}
this.newProductData.thirdSysFk = this.thrSysId
if (this.newType == 1) {
saveNewProduct(this.newProductData).then((res) => {
if (res.code == 20000) {

Loading…
Cancel
Save