feat: 新增入院药品
parent
249a6e83f4
commit
1aaf32b96c
@ -0,0 +1,674 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-card>
|
||||
<div style="
|
||||
float: left;
|
||||
text-align: left;
|
||||
font-weight: bold;
|
||||
margin-bottom: 8px;
|
||||
">
|
||||
<span>产品标识:</span>
|
||||
</div>
|
||||
|
||||
<el-table :data="detailList" style="width: 100%" border key="3" highlight-current-row @current-change="handleDetail">
|
||||
<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="packUnit" show-overflow-tooltip></el-table-column>
|
||||
</el-table>
|
||||
</el-card>
|
||||
<el-card>
|
||||
<el-form :model="editQuery" :rules="rules" ref="editQuery" label-width="150px" style="margin-top: 20px">
|
||||
|
||||
<el-row v-if="editQuery.isAudit!=null && editQuery.isAudit==2" type="flex" justify="end">
|
||||
<el-button-group style="display: flex;margin-bottom: 15px; margin-right: 50px;margin-top: -10px">
|
||||
<el-button type="primary" @click="checkPass(2)">通过</el-button>
|
||||
<el-button type="primary" @click="checkPass(3)">不通过</el-button>
|
||||
</el-button-group>
|
||||
</el-row>
|
||||
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="审核意见:">
|
||||
<el-input style="width: 65%" size="small" :disabled="editQuery.isAudit!=2" splaceholder="请输入审核意见"
|
||||
v-model="remark"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="商品条码:">
|
||||
<el-input style="width: 65%" size="small" :disabled="true" splaceholder="请输入内容"
|
||||
v-model="editQuery.sptm"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="医保编码:">
|
||||
<el-input style="width: 65%" size="small" :disabled="true" splaceholder="请输入内容" v-model="editQuery.ybbm"
|
||||
@input="change($event)"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="计量单位:">
|
||||
<el-input style="width: 65%" size="small" :disabled="true" splaceholder="请输入内容"
|
||||
v-model="editQuery.measname"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="生产企业:">
|
||||
<el-input style="width: 65%" size="small" :disabled="true" v-model="editQuery.manufactory"
|
||||
splaceholder="请输入内容" @input="change($event)"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="商品名称:">
|
||||
<el-input style="width: 65%" size="small" :disabled="true" splaceholder="请输入内容"
|
||||
v-model="editQuery.spmc"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="产品描述:">
|
||||
<el-input style="width: 65%" size="small" :disabled="true" splaceholder="请输入内容"
|
||||
v-model="editQuery.cpms"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="产品价格:">
|
||||
<el-input style="width: 65%" size="small" :disabled="true" splaceholder="请输入内容" type="number" step="0.01"
|
||||
v-model="editQuery.price"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="采购类型">
|
||||
<el-select
|
||||
v-model="editQuery.purType"
|
||||
placeholder="请选择"
|
||||
clearable
|
||||
:disabled="true"
|
||||
style="width: 65%"
|
||||
>
|
||||
<el-option label="普通入账产品" :value="1"></el-option>
|
||||
<el-option label="预验收产品" :value="2"></el-option>
|
||||
<el-option label="寄售产品" :value="3"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="产品属性">
|
||||
<el-select
|
||||
v-model="editQuery.attributeType"
|
||||
placeholder="请选择"
|
||||
clearable
|
||||
:disabled="true"
|
||||
style="width: 65%"
|
||||
>
|
||||
<el-option label="设备" :value="1"></el-option>
|
||||
<el-option label="耗材" :value="2"></el-option>
|
||||
<el-option label="伴随服务费" :value="3"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="耗材类别">
|
||||
<el-select
|
||||
v-model="editQuery.hcType"
|
||||
placeholder="请选择"
|
||||
clearable
|
||||
:disabled="true"
|
||||
style="width: 65%"
|
||||
>
|
||||
<el-option label="高值耗材" :value="1"></el-option>
|
||||
<el-option label="普通耗材" :value="2"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" v-if="productRemarkSet.remarkEnable1">
|
||||
<el-form-item :label="productRemarkSet.remarkTitle1 ">
|
||||
<el-input style="width: 65%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="editQuery.basicPrductRemak1"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="12" v-if="productRemarkSet.remarkEnable2">
|
||||
<el-form-item :label="productRemarkSet.remarkTitle2 ">
|
||||
<el-input style="width: 65%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="editQuery.basicPrductRemak2"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" v-if="productRemarkSet.remarkEnable3">
|
||||
<el-form-item :label="productRemarkSet.remarkTitle3 ">
|
||||
<el-input style="width: 65%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="editQuery.basicPrductRemak3"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="12" v-if="productRemarkSet.remarkEnable4">
|
||||
<el-form-item :label="productRemarkSet.remarkTitle4 ">
|
||||
<el-input style="width: 65%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="editQuery.basicPrductRemak4"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" v-if="productRemarkSet.remarkEnable5">
|
||||
<el-form-item :label="productRemarkSet.remarkTitle5 ">
|
||||
<el-input style="width: 65%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="editQuery.basicPrductRemak5"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="12" v-if="productRemarkSet.remarkEnable6">
|
||||
<el-form-item :label="productRemarkSet.remarkTitle6 ">
|
||||
<el-input style="width: 65%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="editQuery.basicPrductRemak6"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" v-if="productRemarkSet.remarkEnable7">
|
||||
<el-form-item :label="productRemarkSet.remarkTitle7 ">
|
||||
<el-input style="width: 65%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="editQuery.basicPrductRemak7"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="12" v-if="productRemarkSet.remarkEnable8">
|
||||
<el-form-item :label="productRemarkSet.remarkTitle8">
|
||||
<el-input style="width: 65%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="editQuery.basicPrductRemak8"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-collapse v-model="activeNames">
|
||||
<el-collapse-item name="1">
|
||||
<template slot="title">
|
||||
<p class="form-title">产品标识基本信息</p>
|
||||
</template>
|
||||
<el-row :gutter="20" class="el-row" type="flex">
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>产品标识: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" size="small" splaceholder="请输入内容"
|
||||
v-model="editQuery.nameCode"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>最小包装单元内包含使用单元数量: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" size="small" splaceholder="请输入内容"
|
||||
v-model="editQuery.zxxsbzbhsydysl"></el-input>
|
||||
</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>包含下级产品编码: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" size="small" :disabled="true" splaceholder="请输入内容"
|
||||
v-model="editQuery.bhxjcpbm"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>包含最小销售包装数量: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" size="small" :disabled="true" splaceholder="请输入内容"
|
||||
v-model="editQuery.bhzxxsbzsl"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
</el-collapse-item>
|
||||
|
||||
<el-collapse-item name="2">
|
||||
<template slot="title">
|
||||
<p class="form-title">产品基本信息</p>
|
||||
</template>
|
||||
|
||||
<el-row :gutter="20" class="el-row" type="flex">
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>物资名称: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="editQuery.cpmctymc"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>规格型号: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" size="small" splaceholder="请输入内容"
|
||||
v-model="editQuery.ggxh"></el-input>
|
||||
</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>产品类别: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" size="small" splaceholder="请输入内容"
|
||||
v-model="editQuery.cplb"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>分类编码: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" size="small" splaceholder="请输入内容"
|
||||
v-model="editQuery.flbm"></el-input>
|
||||
</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>医疗器械注册人: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" size="small" splaceholder="ylqxzcrbarmc"
|
||||
v-model="editQuery.ylqxzcrbarmc"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>注册人英文名称: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" size="small" splaceholder="请输入内容"
|
||||
v-model="editQuery.ylqxzcrbarywmc"></el-input>
|
||||
</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>器械类别: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" size="small" splaceholder="请输入内容"
|
||||
v-model="editQuery.qxlb"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>生产企业: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" size="small" splaceholder="请输入内容"
|
||||
v-model="editQuery.manufactory"></el-input>
|
||||
</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>商品条码: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" size="small" :disabled="true" splaceholder="请输入内容"
|
||||
v-model="editQuery.sptm"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>医保编码: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" size="small" splaceholder="请输入内容"
|
||||
v-model="editQuery.ybbm"></el-input>
|
||||
</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>一级分类名称: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" size="small" :disabled="true" splaceholder="请输入内容"
|
||||
v-model="editQuery.catalogname1"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>二级分类名称: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" size="small" splaceholder="请输入内容"
|
||||
v-model="editQuery.catalogname2"></el-input>
|
||||
</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>三级分类名称: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" size="small" :disabled="true" splaceholder="请输入内容"
|
||||
v-model="editQuery.catalogname3"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>耗材材质: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" size="small" splaceholder="请输入内容"
|
||||
v-model="editQuery.matrial"></el-input>
|
||||
</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>统一社会信用号: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" size="small" splaceholder="请输入内容"
|
||||
v-model="editQuery.tyshxydm"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>注册证/备案号: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" size="small" splaceholder="请输入内容"
|
||||
v-model="editQuery.zczbhhzbapzbh"></el-input>
|
||||
</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>产品描述: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="!checked" size="small" splaceholder="请输入内容"
|
||||
v-model="editQuery.cpms"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>产品货号或编号: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="!checked" size="small" splaceholder="请输入内容"
|
||||
v-model="editQuery.cphhhbh"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-collapse-item>
|
||||
|
||||
|
||||
<el-collapse-item name="3">
|
||||
<template slot="title">
|
||||
<p class="form-title">生产标识基本信息</p>
|
||||
</template>
|
||||
|
||||
<el-row :gutter="20" class="el-row" type="flex">
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>是否包含批号: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" size="small" splaceholder="请输入内容"
|
||||
v-model="editQuery.scbssfbhph"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>是否包含序列号: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" size="small" v-model="editQuery.scbssfbhxlh"
|
||||
splaceholder="请输入内容"></el-input>
|
||||
</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>是否包含生产日期: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" size="small" splaceholder="请输入内容"
|
||||
v-model="editQuery.scbssfbhscrq"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>是否包含失效日期: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" v-model="editQuery.scbssfbhsxrq" size="small"
|
||||
splaceholder="请输入内容"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-collapse-item>
|
||||
|
||||
<el-collapse-item name="4">
|
||||
<template slot="title">
|
||||
<p class="form-title">包装标识信息</p>
|
||||
</template>
|
||||
|
||||
<el-row :gutter="20" class="el-row" type="flex">
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>上级产品编码: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" :disabled="true" size="small" splaceholder="请输入内容"
|
||||
v-model="editQuery.sjcpbm"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>包装级别: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="editQuery.packLevel"></el-input>
|
||||
</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>包装级别: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" size="small" splaceholder="请输入内容" v-model="editQuery.bzcj"
|
||||
:disabled="true"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="12" class="el-col">
|
||||
<div class="text item">
|
||||
<div class="itemTag">
|
||||
<span>包含下级包装数量: </span>
|
||||
</div>
|
||||
<el-input style="width: 65%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="editQuery.bhxjsl"></el-input>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-collapse-item>
|
||||
|
||||
</el-collapse>
|
||||
|
||||
</el-form>
|
||||
</el-card>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
import {updateDiProduct} from '@/api/supplier/supProductsAddDi'
|
||||
import {finProductSet} from '@/api/param/systemParamConfig'
|
||||
import {selectOriginuuid} from '@/api/basic/product/udiInfo'
|
||||
|
||||
export default {
|
||||
name: "SelectDIDetailDialog",
|
||||
props: {
|
||||
editQuery: {
|
||||
type: Object,
|
||||
required: true,
|
||||
},
|
||||
close: {
|
||||
type: Function,
|
||||
required: true,
|
||||
},
|
||||
editDate: {
|
||||
type: Object,
|
||||
required: true,
|
||||
},
|
||||
remark: {
|
||||
type: Object,
|
||||
required: true,
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
activeNames: ['1'],
|
||||
remark: "",
|
||||
detailList: [],
|
||||
pQuery: {},
|
||||
productRemarkSet: {}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
handleDetail(row) {
|
||||
this.editQuery = {...this.pQuery,...row};
|
||||
},
|
||||
checkPass(val) {
|
||||
let query = {
|
||||
id: this.editDate.id,
|
||||
status: val,
|
||||
uuid: this.editDate.uuid,
|
||||
customerId: this.editDate.customerId,
|
||||
remark: this.remark
|
||||
}
|
||||
updateDiProduct(query).then((res) => {
|
||||
if (res.code === 20000) {
|
||||
this.close();
|
||||
} else {
|
||||
this.$message.error(res.message)
|
||||
}
|
||||
}).catch((error) => {
|
||||
this.$message.error(error.message)
|
||||
})
|
||||
},
|
||||
findBasicProductSet() {
|
||||
finProductSet().then((response) => {
|
||||
if (response.code == 20000) {
|
||||
this.productRemarkSet = response.data
|
||||
} else {
|
||||
//出错了
|
||||
}
|
||||
})
|
||||
},
|
||||
getDetailList(detailQuery) {
|
||||
selectOriginuuid(detailQuery)
|
||||
.then((response) => {
|
||||
this.detailList = response.data || [];
|
||||
this.editQuery = { ...this.pQuery,...this.detailList[0]};
|
||||
})
|
||||
.catch(() => {
|
||||
this.detailList = [];
|
||||
});
|
||||
},
|
||||
},
|
||||
|
||||
created() {
|
||||
this.findBasicProductSet()
|
||||
//获取产品标识列表
|
||||
let ttquery = {
|
||||
originUuid: this.editQuery.uuid,
|
||||
};
|
||||
this.pQuery = this.editQuery
|
||||
this.getDetailList(ttquery);
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
.form-title {
|
||||
font-size: 16px;
|
||||
font-family: Noto Sans SC;
|
||||
font-weight: bold;
|
||||
color: #303133;
|
||||
padding-bottom: 17px;
|
||||
padding-top: 17px;
|
||||
}
|
||||
|
||||
.itemTag {
|
||||
float: left;
|
||||
text-align: right;
|
||||
margin-top: 5px;
|
||||
padding-right: 10px;
|
||||
width: 35%;
|
||||
}
|
||||
|
||||
.text {
|
||||
font-size: 13px;
|
||||
font-family: "Microsoft YaHei";
|
||||
}
|
||||
|
||||
.query-form-item {
|
||||
display: block !important;
|
||||
margin-right: 10px;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
.edit-row {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
|
||||
/* .el-col {
|
||||
border-radius: 4px;
|
||||
flex-wrap: wrap;
|
||||
} */
|
||||
|
||||
.el-table .cell.el-tooltip {
|
||||
white-space: pre-wrap;
|
||||
}
|
||||
|
||||
.form-title {
|
||||
font-size: 16px;
|
||||
font-family: Noto Sans SC;
|
||||
font-weight: bold;
|
||||
color: #303133;
|
||||
padding-bottom: 17px;
|
||||
padding-top: 17px;
|
||||
}
|
||||
</style>
|
@ -0,0 +1,641 @@
|
||||
<template>
|
||||
<!-- 物资入院申请 -->
|
||||
<div>
|
||||
<el-card class="el-card">
|
||||
<el-form v-if="queryList && queryList.length > 0" :model="filterQuery" label-width="100px" v-show="showSearch">
|
||||
<!-- <el-row>-->
|
||||
<!-- <el-col :span="8">-->
|
||||
<!-- <el-form-item label="DI产品标识:">-->
|
||||
<!-- <el-input-->
|
||||
<!-- v-model="filterQuery.code"-->
|
||||
<!-- style="width: 90%"-->
|
||||
<!-- placeholder="请输入DI产品标识"-->
|
||||
<!-- clearable-->
|
||||
<!-- @keyup.enter.native="keyupErp_submit($event)"-->
|
||||
<!-- ></el-input>-->
|
||||
<!-- </el-form-item>-->
|
||||
<!-- </el-col>-->
|
||||
<!-- <el-col :span="8">-->
|
||||
<!-- <el-form-item label="物资名称:">-->
|
||||
<!-- <el-input-->
|
||||
<!-- v-model="filterQuery.name"-->
|
||||
<!-- style="width: 90%"-->
|
||||
<!-- clearable-->
|
||||
<!-- placeholder="请输入物资名称"-->
|
||||
<!-- ></el-input>-->
|
||||
<!-- </el-form-item>-->
|
||||
<!-- </el-col>-->
|
||||
<!-- <el-col :span="8">-->
|
||||
<!-- <el-form-item label="规格型号:">-->
|
||||
<!-- <el-input-->
|
||||
<!-- v-model="filterQuery.spec"-->
|
||||
<!-- style="width: 90%"-->
|
||||
<!-- clearable-->
|
||||
<!-- placeholder="请输入规格型号"-->
|
||||
<!-- ></el-input>-->
|
||||
<!-- </el-form-item>-->
|
||||
<!-- </el-col>-->
|
||||
<!-- </el-row>-->
|
||||
<!-- <el-row>-->
|
||||
<!-- <el-col :span="8">-->
|
||||
<!-- <el-form-item label="注册证编号:">-->
|
||||
<!-- <el-input-->
|
||||
<!-- v-model="filterQuery.registerNo"-->
|
||||
<!-- style="width: 90%"-->
|
||||
<!-- clearable-->
|
||||
<!-- placeholder="请输入注册证编号"-->
|
||||
<!-- ></el-input>-->
|
||||
<!-- </el-form-item>-->
|
||||
<!-- </el-col>-->
|
||||
<!-- <el-col :span="8">-->
|
||||
<!-- <el-form-item label="审核状态:">-->
|
||||
<!-- <el-select-->
|
||||
<!-- v-model="filterQuery.checkStatus"-->
|
||||
<!-- style="width: 90%"-->
|
||||
<!-- placeholder="请选择审核状态"-->
|
||||
<!-- >-->
|
||||
<!-- <el-option label="全部" value=""></el-option>-->
|
||||
<!-- <el-option label="已审核" value="2"></el-option>-->
|
||||
<!-- <el-option label="未审核" value="1"></el-option>-->
|
||||
<!-- <el-option label="未通过" value="3"></el-option>-->
|
||||
<!-- </el-select>-->
|
||||
<!-- </el-form-item>-->
|
||||
<!-- </el-col>-->
|
||||
<!-- </el-row>-->
|
||||
<el-row style=" display:flex; flex-wrap: wrap; ">
|
||||
<template v-for="(item, index) in queryList">
|
||||
<el-form-item
|
||||
v-if="item.columnType == 'input' && item.columnName !='queryName' && executeEval(row,item.expression,true)"
|
||||
:label="item.columnDesc+`:`" :key="item.id">
|
||||
<el-input
|
||||
v-model="filterQuery[item.columnName]"
|
||||
:placeholder="item.columnDesc"
|
||||
:disabled="executeEval(null,item.disabledFuc,false)"
|
||||
@keyup.enter.native="executeFuc($event,'5',item.clickFuc)"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
v-if="item.columnType == 'input' && item.columnName =='queryName' && executeEval(row,item.expression,true)"
|
||||
:label="item.columnDesc+`:`" :key="item.id">
|
||||
<el-autocomplete
|
||||
class="inline-input"
|
||||
style="width: 90%"
|
||||
v-model="queryName"
|
||||
:fetch-suggestions="queryProductName"
|
||||
placeholder="请输入内容"
|
||||
clearable
|
||||
@select="handleSelect"
|
||||
@clear="clearQueryProduct"
|
||||
></el-autocomplete>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="item.columnType == 'select' && executeEval(row,item.expression,true)"
|
||||
:label="item.columnDesc+`:`">
|
||||
<el-select v-model="filterQuery[item.columnName]"
|
||||
:placeholder="item.columnDesc"
|
||||
@change="executeFuc($event,'5',item.checkRules)"
|
||||
:disabled="executeEval(null,item.disabledFuc,false)"
|
||||
clearable>
|
||||
<el-option
|
||||
v-for="dict in item.lableRuleObj"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
/>
|
||||
<span style="float: left">{{ item.name }}</span>
|
||||
<span v-if="item.isShowXx == '1'" style="float: right; color: #8492a6; font-size: 13px">{{
|
||||
item.code
|
||||
}}</span>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="item.columnType == 'selectServer' && executeEval(row,item.expression,true)"
|
||||
:label="item.columnDesc+`:`">
|
||||
<el-select
|
||||
v-model="filterQuery[item.columnName]"
|
||||
:placeholder="item.columnDesc"
|
||||
:disabled="executeEval(null,item.disabledFuc,false)"
|
||||
filterable
|
||||
remote
|
||||
@change="executeFuc($event,'5',item.checkRules)"
|
||||
:remote-method="(query) => executeFuc(query,'5',item.clickFuc)"
|
||||
clearable>
|
||||
<el-option
|
||||
v-for="item in options[item.clickFuc]"
|
||||
:key="item.code"
|
||||
:label="item.label"
|
||||
:value="item.code"
|
||||
/>
|
||||
<span style="float: left">{{ item.name }}</span>
|
||||
<span v-if="item.isShowXx == '1'" style="float: right; color: #8492a6; font-size: 13px">{{
|
||||
item.code
|
||||
}}</span>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="item.columnType == 'datePicker' && executeEval(row,item.expression,true)"
|
||||
:label="item.columnDesc+`:`">
|
||||
<el-date-picker
|
||||
:picker-options="pickerOptions"
|
||||
v-model="actDateRange"
|
||||
type="daterange"
|
||||
format="yyyy 年 MM 月 dd 日"
|
||||
value-format="yyyy-MM-dd"
|
||||
range-separator="至"
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期"
|
||||
></el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="item.columnType == 'date' && executeEval(row,item.expression,true)"
|
||||
:label="item.columnDesc+`:`">
|
||||
<el-date-picker
|
||||
v-model="filterQuery[item.columnName]"
|
||||
:style="`width:${item.width+'px'}`"
|
||||
value-format="yyyy-MM-dd"
|
||||
:disabled="executeEval(null,item.disabledFuc,false)"
|
||||
type="date"
|
||||
:placeholder="item.columnDesc"
|
||||
></el-date-picker>
|
||||
</el-form-item>
|
||||
</template>
|
||||
</el-row>
|
||||
</el-form>
|
||||
|
||||
<div class="top-right-btn">
|
||||
<el-button-group style="display: flex">
|
||||
<el-button icon="el-icon-view" type="primary" @click="hideSearch"
|
||||
>显示/隐藏搜索栏
|
||||
</el-button
|
||||
>
|
||||
<el-button type="primary" icon="el-icon-refresh" @click="onReset"
|
||||
>重置
|
||||
</el-button
|
||||
>
|
||||
<el-button type="primary" icon="el-icon-search" @click="search"
|
||||
>查询
|
||||
</el-button
|
||||
>
|
||||
<!-- <el-button-->
|
||||
<!-- type="primary"-->
|
||||
<!-- icon="el-icon-check"-->
|
||||
<!-- @click="addDiProductVisible = true"-->
|
||||
<!-- >选入DI信息-->
|
||||
<!-- </el-button-->
|
||||
<!-- >-->
|
||||
<el-button
|
||||
type="primary"
|
||||
icon="el-icon-plus"
|
||||
@click="addProductVisible = true"
|
||||
>添加院内药品字典
|
||||
</el-button
|
||||
>
|
||||
|
||||
<el-upload
|
||||
:action="uploadFileUrl"
|
||||
multiple
|
||||
:limit="1"
|
||||
:headers="headers"
|
||||
:data="uploadData"
|
||||
:show-file-list="false"
|
||||
accept=".xls,.xlsx"
|
||||
:on-success="handleChange"
|
||||
:file-list="fileList"
|
||||
>
|
||||
<el-button icon="el-icon-upload2" type="primary">Excel导入</el-button>
|
||||
</el-upload>
|
||||
</el-button-group>
|
||||
</div>
|
||||
<el-divider style="margin: 15px"></el-divider>
|
||||
|
||||
<el-table
|
||||
:data="list"
|
||||
style="width: 100%"
|
||||
v-loading="loading"
|
||||
border
|
||||
highlight-current-row="true"
|
||||
>
|
||||
<!-- <el-table-column label="序号" type="index"></el-table-column>-->
|
||||
<!-- <el-table-column-->
|
||||
<!-- label="产品标识"-->
|
||||
<!-- prop="code"-->
|
||||
<!-- show-overflow-tooltip-->
|
||||
<!-- ></el-table-column>-->
|
||||
<!-- <el-table-column-->
|
||||
<!-- label="物资名称"-->
|
||||
<!-- prop="name"-->
|
||||
<!-- show-overflow-tooltip-->
|
||||
<!-- ></el-table-column>-->
|
||||
<!-- <el-table-column-->
|
||||
<!-- label="规格型号"-->
|
||||
<!-- prop="spec"-->
|
||||
<!-- show-overflow-tooltip-->
|
||||
<!-- ></el-table-column>-->
|
||||
<!-- <el-table-column-->
|
||||
<!-- label="医疗器械注册人"-->
|
||||
<!-- prop="ylqxzcrbarmc"-->
|
||||
<!-- show-overflow-tooltip-->
|
||||
<!-- ></el-table-column>-->
|
||||
<!-- <el-table-column-->
|
||||
<!-- label="注册证编号"-->
|
||||
<!-- prop="registerNo"-->
|
||||
<!-- show-overflow-tooltip-->
|
||||
<!-- ></el-table-column>-->
|
||||
<!-- <el-table-column label="审核状态" prop="status" show-overflow-tooltip>-->
|
||||
<!-- <template slot-scope="scope">-->
|
||||
<!-- <span>{{ checkMap[scope.row.status] }}</span>-->
|
||||
<!-- </template>-->
|
||||
<!-- </el-table-column>-->
|
||||
<!-- <el-table-column label="操作" width="120">-->
|
||||
<!-- <template slot-scope="scope">-->
|
||||
<!-- <el-button type="text" size="small" @click="detail(scope.row)"-->
|
||||
<!-- >详情</el-button-->
|
||||
<!-- >-->
|
||||
<!-- <el-button-->
|
||||
<!-- type="text"-->
|
||||
<!-- size="small"-->
|
||||
<!-- :disabled="scope.row.status == 2"-->
|
||||
<!-- @click="deleteProduct(scope.row.id)"-->
|
||||
<!-- >-->
|
||||
<!-- 删除-->
|
||||
<!-- </el-button>-->
|
||||
<!-- </template>-->
|
||||
<!-- </el-table-column>-->
|
||||
<template v-for="(item, index) in tableHeader">
|
||||
<el-table-column
|
||||
v-if="item.columnType == 'id' && executeEval(row,item.expression,true)"
|
||||
type="index" :label="item.columnDesc"></el-table-column>
|
||||
<el-table-column
|
||||
v-if="item.columnType == 'selection'"
|
||||
type="selection"
|
||||
:width="item.width"
|
||||
:selectable="(row,number) => executeFuc(row,'3',item.clickFuc)"
|
||||
></el-table-column>
|
||||
|
||||
<el-table-column
|
||||
v-if="item.columnType == 'radio' && executeEval(row,item.expression,true)"
|
||||
:prop="item.columnName"
|
||||
:label="item.columnDesc"
|
||||
:sortable="item.sort"
|
||||
:width="item.width"
|
||||
:show-overflow-tooltip="item.tooltip"
|
||||
:key="item.columnName"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-radio :label="scope.row.id" v-model="radioCheck"><span></span></el-radio>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
v-if="item.columnType == 'laber' && executeEval(row,item.expression,true)"
|
||||
:prop="item.columnName"
|
||||
:label="item.columnDesc"
|
||||
:sortable="item.sort"
|
||||
:width="item.width"
|
||||
:show-overflow-tooltip="item.tooltip"
|
||||
:key="item.columnName"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span :style="{color: executeFuc(scope.row,'4',item.lableRuleObj[scope.row[item.columnName]])}">{{
|
||||
item.lableRuleObj[scope.row[item.columnName]]
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
v-if="item.columnType == 'eltag' && executeEval(row,item.expression,true)"
|
||||
:prop="item.columnName"
|
||||
:label="item.columnDesc"
|
||||
:sortable="item.sort"
|
||||
:width="item.width"
|
||||
:show-overflow-tooltip="item.tooltip"
|
||||
:key="item.columnName"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-tag
|
||||
:type="executeFuc(scope.row,'4',item,item.lableRuleObj?item.lableRuleObj[scope.row[item.columnName]]:scope.row[item.columnName])">
|
||||
<span>{{
|
||||
item.lableRuleObj ? item.lableRuleObj[scope.row[item.columnName]] : scope.row[item.columnName]
|
||||
}}</span>
|
||||
</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
v-if="item.columnType == 'button' && executeEval(row,item.expression,true)"
|
||||
:prop="item.columnName"
|
||||
:label="item.columnDesc"
|
||||
:width="item.width"
|
||||
:key="item.columnName"
|
||||
fixed="right"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-button v-for="(buttonItem, buttonIndex) in item.buttonRulObj"
|
||||
:type="buttonItem.type"
|
||||
:size="buttonItem.size"
|
||||
:style="buttonItem.style"
|
||||
:key="buttonItem"
|
||||
v-if="executeEval(scope.row,buttonItem.hasPermi,true)"
|
||||
:disabled="executeEval(scope.row,buttonItem.disabledFuc,false)"
|
||||
@click.native.stop="executeFuc(scope.row,'1',buttonItem.clickFuc)"
|
||||
>{{ buttonItem.name }}
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
v-if="item.columnType == 'text' && executeEval(row,item.expression,true)"
|
||||
:prop="item.columnName"
|
||||
:label="item.columnDesc"
|
||||
:sortable="item.sort"
|
||||
:width="item.width"
|
||||
:show-overflow-tooltip="item.tooltip"
|
||||
:key="item.columnName"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span :style="{color: executeFuc(scope.row,'4',item,scope.row[item.columnName])}">{{
|
||||
scope.row[item.columnName]
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</template>
|
||||
</el-table>
|
||||
|
||||
<pagination
|
||||
v-show="total > 0"
|
||||
:total="total"
|
||||
:limit.sync="filterQuery.limit"
|
||||
:page.sync="filterQuery.page"
|
||||
@pagination="handleCurrentChange"
|
||||
></pagination>
|
||||
</el-card>
|
||||
|
||||
<el-dialog
|
||||
title="选入配送产品"
|
||||
:close-on-click-modal="false"
|
||||
:close-on-press-escape="false"
|
||||
:visible.sync="addDiProductVisible"
|
||||
width="85%"
|
||||
append-to-body
|
||||
v-if="addDiProductVisible"
|
||||
>
|
||||
<thrAddDiProductSelectUdi
|
||||
:closeDialog="closeDialog"
|
||||
:relId="relId"
|
||||
:isImportUdi="isImportUdi"
|
||||
:data="thisData"
|
||||
@closeUdi="closeUdi"
|
||||
>
|
||||
</thrAddDiProductSelectUdi>
|
||||
</el-dialog>
|
||||
|
||||
<el-dialog
|
||||
title="新增配送产品"
|
||||
:close-on-click-modal="false"
|
||||
:close-on-press-escape="false"
|
||||
:visible.sync="addProductVisible"
|
||||
width="85%"
|
||||
append-to-body
|
||||
v-if="addProductVisible"
|
||||
>
|
||||
<thrAddProductSelectUdi
|
||||
:closeAddDialog="closeDialog"
|
||||
:newType="newType"
|
||||
@closeUdi="closeUdi"
|
||||
>
|
||||
</thrAddProductSelectUdi>
|
||||
</el-dialog>
|
||||
|
||||
<el-dialog
|
||||
title="器械信息详情"
|
||||
:close-on-click-modal="false"
|
||||
:close-on-press-escape="false"
|
||||
:visible.sync="detailDialog"
|
||||
width="60%"
|
||||
append-to-body
|
||||
v-if="detailDialog"
|
||||
>
|
||||
<selectDiDetail :editQuery="diDetails" :remark="delect.remark">
|
||||
</selectDiDetail>
|
||||
</el-dialog>
|
||||
|
||||
<el-dialog
|
||||
:close-on-click-modal="false"
|
||||
:close-on-press-escape="false"
|
||||
title="产品信息详情"
|
||||
:visible.sync="thrProductsDetailVisible"
|
||||
width="80%"
|
||||
v-if="thrProductsDetailVisible"
|
||||
>
|
||||
<thrProductsDetail :data="thisDetail"></thrProductsDetail>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import {
|
||||
getThrDiProducts,
|
||||
delThrDiProducts,
|
||||
getDiProductDetail,
|
||||
} from "@/api/supplier/supProductsAddDi";
|
||||
import thrAddDiProductSelectUdi from "@/views/supplier/products/supAddDiProductSelectUdi";
|
||||
import thrAddProductSelectUdi from "@/views/supplier/products/supProductsAdd";
|
||||
import selectDiDetail from "./selectDIDetailDialog";
|
||||
import thrProductsDetail from "@/views/supplier/products/supProductsDetail";
|
||||
import {
|
||||
getHead, executeFuc
|
||||
} from "@/utils/customConfig";
|
||||
import store from "@/store";
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
showSearch: true,
|
||||
thisDetail: null,
|
||||
filterQuery: {
|
||||
sourceType: 1,
|
||||
code: null,
|
||||
name: null,
|
||||
spec: null,
|
||||
registerNo: null,
|
||||
manufactory: null,
|
||||
checkStatus: null,
|
||||
page: 1,
|
||||
limit: 20,
|
||||
},
|
||||
total: 0,
|
||||
tableHeader: [],
|
||||
queryList: [],
|
||||
fromList: [],
|
||||
tableHeader2: [],
|
||||
queryList2: [],
|
||||
fromList2: [],
|
||||
options: {},
|
||||
thirdSys: [],
|
||||
delect: null,
|
||||
thirdSysDetail: null,
|
||||
list: [],
|
||||
addDiProductVisible: false,
|
||||
addProductVisible: false,
|
||||
checkVisible: false,
|
||||
newType: 2,
|
||||
thrProductsDetailVisible: false,
|
||||
isImportUdi: false,
|
||||
relId: null,
|
||||
thisData: {
|
||||
nameCode: null,
|
||||
cpmctymc: null,
|
||||
ggxh: null,
|
||||
},
|
||||
loading: false,
|
||||
checkMap: {
|
||||
1: "未审核",
|
||||
2: "已审核",
|
||||
3: "未通过",
|
||||
},
|
||||
curRow: null,
|
||||
diDetails: null,
|
||||
detailDialog: false,
|
||||
uploadFileUrl: null,
|
||||
uploadData: {
|
||||
thirdSys: "thirdId",
|
||||
},
|
||||
fileList: [],
|
||||
headers: {},
|
||||
};
|
||||
},
|
||||
|
||||
methods: {
|
||||
onReset() {
|
||||
this.$router.push({
|
||||
path: "",
|
||||
});
|
||||
this.filterQuery = {
|
||||
sourceType: 1,
|
||||
code: null,
|
||||
spec: null,
|
||||
registerNo: null,
|
||||
manufactory: null,
|
||||
checkStatus: null,
|
||||
name: null,
|
||||
page: 1,
|
||||
limit: 20,
|
||||
};
|
||||
this.getList();
|
||||
},
|
||||
search() {
|
||||
this.filterQuery.page = 1;
|
||||
this.getList();
|
||||
},
|
||||
checDialog(row) {
|
||||
this.checkVisible = true;
|
||||
this.curRow = row;
|
||||
},
|
||||
hideSearch() {
|
||||
this.showSearch = !this.showSearch;
|
||||
},
|
||||
getList() {
|
||||
this.loading = true;
|
||||
getThrDiProducts(this.filterQuery)
|
||||
.then((response) => {
|
||||
if (response.code == 20000) {
|
||||
this.list = response.data.list || [];
|
||||
this.total = response.data.total || 0;
|
||||
} else {
|
||||
this.$message.error(response.message);
|
||||
}
|
||||
this.loading = false;
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
this.list = [];
|
||||
this.total = 0;
|
||||
});
|
||||
},
|
||||
handleCurrentChange(val) {
|
||||
this.filterQuery.page = val.page;
|
||||
this.getList();
|
||||
},
|
||||
detail(_this, row) {
|
||||
if (row.type == 1) {
|
||||
let query = {devKey: row.deviceRecordKey}
|
||||
getDiProductDetail(query).then((res) => {
|
||||
if (res.code === 20000) {
|
||||
_this.delect = row;
|
||||
_this.diDetails = res.data;
|
||||
_this.detailDialog = true;
|
||||
} else {
|
||||
_this.$message.error("参数错误");
|
||||
}
|
||||
});
|
||||
} else {
|
||||
_this.thisDetail = row;
|
||||
_this.thrProductsDetailVisible = true;
|
||||
}
|
||||
},
|
||||
deleteProduct(_this, row) {
|
||||
let query = {
|
||||
id: row.id,
|
||||
};
|
||||
delThrDiProducts(query).then((res) => {
|
||||
if (res.code === 20000) {
|
||||
_this.$message.success("删除成功");
|
||||
_this.getList();
|
||||
} else {
|
||||
_this.$message.error("删除失败");
|
||||
}
|
||||
});
|
||||
},
|
||||
closeDialog() {
|
||||
this.selectErpDialogVisible = false;
|
||||
this.selectLocalVisible = false;
|
||||
this.selectVersionVisible = false;
|
||||
this.addProductVisible = false;
|
||||
this.getList();
|
||||
},
|
||||
closeUdi(val) {
|
||||
this.addDiProductVisible = false;
|
||||
if (val) {
|
||||
this.getList();
|
||||
}
|
||||
},
|
||||
executeFuc(row, type, clickFuc, value) {
|
||||
return executeFuc(this, row, type, clickFuc, value);
|
||||
},
|
||||
executeEval(row, expression, defaultRet) {
|
||||
if (expression) {
|
||||
return eval(expression);
|
||||
}
|
||||
return defaultRet;
|
||||
},
|
||||
handleChange(response, files, fileList) {
|
||||
console.log(response);
|
||||
if (response.code != 20000) {
|
||||
this.$message.error(response.message);
|
||||
} else {
|
||||
this.$message.success(response.data);
|
||||
this.getList();
|
||||
}
|
||||
},
|
||||
},
|
||||
components: {
|
||||
thrAddDiProductSelectUdi,
|
||||
selectDiDetail,
|
||||
thrAddProductSelectUdi,
|
||||
thrProductsDetail,
|
||||
},
|
||||
mounted() {
|
||||
},
|
||||
created() {
|
||||
getHead("supDrugProductsAddDi", "1").then((re) => {
|
||||
// 处理返回的数据
|
||||
this.tableObj = re.data;
|
||||
this.tableHeader = re.data.tableList;
|
||||
this.queryList = re.data.queryList;
|
||||
this.fromList = re.data.fromList;
|
||||
this.getList();
|
||||
});
|
||||
this.uploadFileUrl = process.env.VUE_APP_BASE_API + "/spms/thrAddDi/excel/upload";
|
||||
this.headers = {
|
||||
ADMIN_ID: this.$store.getters.adminId,
|
||||
ADMIN_TOKEN: this.$store.getters.token,
|
||||
};
|
||||
console.log(this.headers);
|
||||
console.log(this.$store.getters);
|
||||
|
||||
console.log(this.uploadFileUrl);
|
||||
},
|
||||
};
|
||||
</script>
|
@ -0,0 +1,244 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-card class="el-card">
|
||||
<div v-if="!isImport" style="margin-bottom: 20px">
|
||||
<el-form :model="data" size="mini" label-width="150px">
|
||||
|
||||
<el-row v-if="data.isAudit!=null && data.isAudit==2" type="flex" justify="end">
|
||||
<el-button-group style="display: flex;margin-bottom: 15px; margin-right: 50px;margin-top: -10px">
|
||||
<el-button type="primary" @click="checkPass(2)">通过</el-button>
|
||||
<el-button type="primary" @click="checkPass(3)">不通过</el-button>
|
||||
</el-button-group>
|
||||
</el-row>
|
||||
|
||||
<div style="margin-bottom: 20px">
|
||||
<el-row>
|
||||
<el-col :span="12" class="el-col">
|
||||
<el-form-item label="产品编码:">
|
||||
<el-input style="width: 90%" size="small" :disabled="true" placeholder="请输入内容"
|
||||
v-model="data.code"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<el-form-item label="物资名称:">
|
||||
<el-input style="width: 90%" size="small" :disabled="true" placeholder="请输入内容"
|
||||
v-model.trim="data.name"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<el-form-item label="规格型号:">
|
||||
<el-input style="width: 90%" size="small" :disabled="true" placeholder="请输入内容"
|
||||
v-model.trim="data.spec"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<el-form-item label="计量单位:">
|
||||
<el-input style="width: 90%" size="small" :disabled="true" placeholder="请输入内容"
|
||||
v-model.trim="data.measname"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<el-form-item label="生产企业:">
|
||||
<el-input style="width: 90%" size="small" :disabled="true" placeholder="请输入内容"
|
||||
v-model.trim="data.manufactory"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<el-form-item label="注册证号:">
|
||||
<el-input style="width: 90%" size="small" :disabled="true" placeholder="请输入内容"
|
||||
v-model.trim="data.registerNo"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<el-form-item label="医疗器械注册人:">
|
||||
<el-input style="width: 90%" size="small" :disabled="true" placeholder="请输入内容"
|
||||
v-model.trim="data.ylqxzcrbarmc"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<el-form-item label="注册人英文名称:">
|
||||
<el-input style="width: 90%" size="small" :disabled="true" placeholder="请输入内容"
|
||||
v-model.trim="data.ylqxzcrbarywmc"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<el-form-item label="产品类别:">
|
||||
<el-input style="width: 90%" size="small" :disabled="true" placeholder="请输入内容"
|
||||
v-model.trim="data.cplb"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<el-form-item label="分类编码:">
|
||||
<el-input style="width: 90%" size="small" :disabled="true" placeholder="请输入内容"
|
||||
v-model.trim="data.flbm"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<el-form-item label="商品条码:">
|
||||
<el-input style="width: 90%" size="small" :disabled="true" placeholder="请输入内容"
|
||||
v-model.trim="data.sptm"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<el-form-item label="医保编码:">
|
||||
<el-input style="width: 90%" size="small" :disabled="true" placeholder="请输入内容"
|
||||
v-model.trim="data.ybbm"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<el-form-item label="统一社会信用号:">
|
||||
<el-input style="width: 90%" size="small" :disabled="true" placeholder="请输入内容"
|
||||
v-model.trim="data.tyshxydm"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<el-form-item label="器械类别:">
|
||||
<el-input style="width: 90%" size="small" :disabled="true" placeholder="请输入内容"
|
||||
v-model.trim="data.qxlb"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="产品价格:">
|
||||
<el-input style="width: 90%" size="small" :disabled="true" splaceholder="请输入内容" type="number"
|
||||
step="0.01"
|
||||
v-model="data.price"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" v-if="productRemarkSet.remarkEnable1">
|
||||
<el-form-item :label="productRemarkSet.remarkTitle1 ">
|
||||
<el-input style="width: 90%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="data.basicPrductRemak1"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="12" v-if="productRemarkSet.remarkEnable2">
|
||||
<el-form-item :label="productRemarkSet.remarkTitle2 ">
|
||||
<el-input style="width: 90%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="data.basicPrductRemak2"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" v-if="productRemarkSet.remarkEnable3">
|
||||
<el-form-item :label="productRemarkSet.remarkTitle3 ">
|
||||
<el-input style="width: 90%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="data.basicPrductRemak3"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="12" v-if="productRemarkSet.remarkEnable4">
|
||||
<el-form-item :label="productRemarkSet.remarkTitle4 ">
|
||||
<el-input style="width: 90%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="data.basicPrductRemak4"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" v-if="productRemarkSet.remarkEnable5">
|
||||
<el-form-item :label="productRemarkSet.remarkTitle5 ">
|
||||
<el-input style="width: 90%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="data.basicPrductRemak5"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="12" v-if="productRemarkSet.remarkEnable6">
|
||||
<el-form-item :label="productRemarkSet.remarkTitle6 ">
|
||||
<el-input style="width: 90%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="data.basicPrductRemak6"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" v-if="productRemarkSet.remarkEnable7">
|
||||
<el-form-item :label="productRemarkSet.remarkTitle7 ">
|
||||
<el-input style="width: 90%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="data.basicPrductRemak7"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="12" v-if="productRemarkSet.remarkEnable8">
|
||||
<el-form-item :label="productRemarkSet.remarkTitle8">
|
||||
<el-input style="width: 90%" size="small" splaceholder="请输入内容" :disabled="true"
|
||||
v-model="data.basicPrductRemak8"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
|
||||
<el-row v-if="data.isAudit==2">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="审核意见:">
|
||||
<el-input style="width: 90%" size="small" splaceholder="请输入审核意见" v-model="remark"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" class="el-col">
|
||||
<el-form-item label="产品描述:">
|
||||
<el-input style="width: 90%" :disabled="true" type="textarea" size="small" rows="1"
|
||||
placeholder="请输入内容" v-model.trim="data.cpms"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
</div>
|
||||
</el-card>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {updateDiProduct} from '@/api/supplier/supProductsAddDi'
|
||||
import {finProductSet} from "@/api/param/systemParamConfig";
|
||||
|
||||
export default {
|
||||
name: "ThrProductsDetail",
|
||||
props: {
|
||||
data: {
|
||||
type: Object,
|
||||
required: true,
|
||||
},
|
||||
close: {
|
||||
type: Function,
|
||||
required: true,
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
remark: "",
|
||||
productRemarkSet: {}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
||||
checkPass(val) {
|
||||
let query = {
|
||||
id: this.data.id,
|
||||
status: val,
|
||||
uuid: this.data.uuid,
|
||||
customerId: this.data.customerId,
|
||||
remark: this.remark
|
||||
}
|
||||
updateDiProduct(query).then((res) => {
|
||||
if (res.code === 20000) {
|
||||
this.$message.success("操作成功!")
|
||||
this.close();
|
||||
} else {
|
||||
this.$message.error(res.message)
|
||||
}
|
||||
}).catch((error) => {
|
||||
this.$message.error(error.message)
|
||||
})
|
||||
},
|
||||
findBasicProductSet() {
|
||||
finProductSet().then((response) => {
|
||||
if (response.code == 20000) {
|
||||
this.productRemarkSet = response.data
|
||||
} else {
|
||||
//出错了
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
},
|
||||
created() {
|
||||
this.findBasicProductSet()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
@ -0,0 +1,640 @@
|
||||
<template>
|
||||
<!-- 物资入院申请 -->
|
||||
<div>
|
||||
<el-card class="el-card">
|
||||
<el-form v-if="queryList && queryList.length > 0" :model="filterQuery" label-width="100px" v-show="showSearch">
|
||||
<!-- <el-row>-->
|
||||
<!-- <el-col :span="8">-->
|
||||
<!-- <el-form-item label="DI产品标识:">-->
|
||||
<!-- <el-input-->
|
||||
<!-- v-model="filterQuery.code"-->
|
||||
<!-- style="width: 90%"-->
|
||||
<!-- placeholder="请输入DI产品标识"-->
|
||||
<!-- clearable-->
|
||||
<!-- @keyup.enter.native="keyupErp_submit($event)"-->
|
||||
<!-- ></el-input>-->
|
||||
<!-- </el-form-item>-->
|
||||
<!-- </el-col>-->
|
||||
<!-- <el-col :span="8">-->
|
||||
<!-- <el-form-item label="物资名称:">-->
|
||||
<!-- <el-input-->
|
||||
<!-- v-model="filterQuery.name"-->
|
||||
<!-- style="width: 90%"-->
|
||||
<!-- clearable-->
|
||||
<!-- placeholder="请输入物资名称"-->
|
||||
<!-- ></el-input>-->
|
||||
<!-- </el-form-item>-->
|
||||
<!-- </el-col>-->
|
||||
<!-- <el-col :span="8">-->
|
||||
<!-- <el-form-item label="规格型号:">-->
|
||||
<!-- <el-input-->
|
||||
<!-- v-model="filterQuery.spec"-->
|
||||
<!-- style="width: 90%"-->
|
||||
<!-- clearable-->
|
||||
<!-- placeholder="请输入规格型号"-->
|
||||
<!-- ></el-input>-->
|
||||
<!-- </el-form-item>-->
|
||||
<!-- </el-col>-->
|
||||
<!-- </el-row>-->
|
||||
<!-- <el-row>-->
|
||||
<!-- <el-col :span="8">-->
|
||||
<!-- <el-form-item label="注册证编号:">-->
|
||||
<!-- <el-input-->
|
||||
<!-- v-model="filterQuery.registerNo"-->
|
||||
<!-- style="width: 90%"-->
|
||||
<!-- clearable-->
|
||||
<!-- placeholder="请输入注册证编号"-->
|
||||
<!-- ></el-input>-->
|
||||
<!-- </el-form-item>-->
|
||||
<!-- </el-col>-->
|
||||
<!-- <el-col :span="8">-->
|
||||
<!-- <el-form-item label="审核状态:">-->
|
||||
<!-- <el-select-->
|
||||
<!-- v-model="filterQuery.checkStatus"-->
|
||||
<!-- style="width: 90%"-->
|
||||
<!-- placeholder="请选择审核状态"-->
|
||||
<!-- >-->
|
||||
<!-- <el-option label="全部" value=""></el-option>-->
|
||||
<!-- <el-option label="已审核" value="2"></el-option>-->
|
||||
<!-- <el-option label="未审核" value="1"></el-option>-->
|
||||
<!-- <el-option label="未通过" value="3"></el-option>-->
|
||||
<!-- </el-select>-->
|
||||
<!-- </el-form-item>-->
|
||||
<!-- </el-col>-->
|
||||
<!-- </el-row>-->
|
||||
<el-row style=" display:flex; flex-wrap: wrap; ">
|
||||
<template v-for="(item, index) in queryList">
|
||||
<el-form-item
|
||||
v-if="item.columnType == 'input' && item.columnName !='queryName' && executeEval(row,item.expression,true)"
|
||||
:label="item.columnDesc+`:`" :key="item.id">
|
||||
<el-input
|
||||
v-model="filterQuery[item.columnName]"
|
||||
:placeholder="item.columnDesc"
|
||||
:disabled="executeEval(null,item.disabledFuc,false)"
|
||||
@keyup.enter.native="executeFuc($event,'5',item.clickFuc)"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
v-if="item.columnType == 'input' && item.columnName =='queryName' && executeEval(row,item.expression,true)"
|
||||
:label="item.columnDesc+`:`" :key="item.id">
|
||||
<el-autocomplete
|
||||
class="inline-input"
|
||||
style="width: 90%"
|
||||
v-model="queryName"
|
||||
:fetch-suggestions="queryProductName"
|
||||
placeholder="请输入内容"
|
||||
clearable
|
||||
@select="handleSelect"
|
||||
@clear="clearQueryProduct"
|
||||
></el-autocomplete>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="item.columnType == 'select' && executeEval(row,item.expression,true)"
|
||||
:label="item.columnDesc+`:`">
|
||||
<el-select v-model="filterQuery[item.columnName]"
|
||||
:placeholder="item.columnDesc"
|
||||
@change="executeFuc($event,'5',item.checkRules)"
|
||||
:disabled="executeEval(null,item.disabledFuc,false)"
|
||||
clearable>
|
||||
<el-option
|
||||
v-for="dict in item.lableRuleObj"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
/>
|
||||
<span style="float: left">{{ item.name }}</span>
|
||||
<span v-if="item.isShowXx == '1'" style="float: right; color: #8492a6; font-size: 13px">{{
|
||||
item.code
|
||||
}}</span>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="item.columnType == 'selectServer' && executeEval(row,item.expression,true)"
|
||||
:label="item.columnDesc+`:`">
|
||||
<el-select
|
||||
v-model="filterQuery[item.columnName]"
|
||||
:placeholder="item.columnDesc"
|
||||
:disabled="executeEval(null,item.disabledFuc,false)"
|
||||
filterable
|
||||
remote
|
||||
@change="executeFuc($event,'5',item.checkRules)"
|
||||
:remote-method="(query) => executeFuc(query,'5',item.clickFuc)"
|
||||
clearable>
|
||||
<el-option
|
||||
v-for="item in options[item.clickFuc]"
|
||||
:key="item.code"
|
||||
:label="item.label"
|
||||
:value="item.code"
|
||||
/>
|
||||
<span style="float: left">{{ item.name }}</span>
|
||||
<span v-if="item.isShowXx == '1'" style="float: right; color: #8492a6; font-size: 13px">{{
|
||||
item.code
|
||||
}}</span>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="item.columnType == 'datePicker' && executeEval(row,item.expression,true)"
|
||||
:label="item.columnDesc+`:`">
|
||||
<el-date-picker
|
||||
:picker-options="pickerOptions"
|
||||
v-model="actDateRange"
|
||||
type="daterange"
|
||||
format="yyyy 年 MM 月 dd 日"
|
||||
value-format="yyyy-MM-dd"
|
||||
range-separator="至"
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期"
|
||||
></el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="item.columnType == 'date' && executeEval(row,item.expression,true)"
|
||||
:label="item.columnDesc+`:`">
|
||||
<el-date-picker
|
||||
v-model="filterQuery[item.columnName]"
|
||||
:style="`width:${item.width+'px'}`"
|
||||
value-format="yyyy-MM-dd"
|
||||
:disabled="executeEval(null,item.disabledFuc,false)"
|
||||
type="date"
|
||||
:placeholder="item.columnDesc"
|
||||
></el-date-picker>
|
||||
</el-form-item>
|
||||
</template>
|
||||
</el-row>
|
||||
</el-form>
|
||||
|
||||
<div class="top-right-btn">
|
||||
<el-button-group style="display: flex">
|
||||
<el-button icon="el-icon-view" type="primary" @click="hideSearch"
|
||||
>显示/隐藏搜索栏
|
||||
</el-button
|
||||
>
|
||||
<el-button type="primary" icon="el-icon-refresh" @click="onReset"
|
||||
>重置
|
||||
</el-button
|
||||
>
|
||||
<el-button type="primary" icon="el-icon-search" @click="search"
|
||||
>查询
|
||||
</el-button
|
||||
>
|
||||
<el-button
|
||||
type="primary"
|
||||
icon="el-icon-check"
|
||||
@click="addDiProductVisible = true"
|
||||
>选入DI信息
|
||||
</el-button
|
||||
>
|
||||
<!-- <el-button-->
|
||||
<!-- type="primary"-->
|
||||
<!-- icon="el-icon-plus"-->
|
||||
<!-- @click="addProductVisible = true"-->
|
||||
<!-- >添加院内字典-->
|
||||
<!-- </el-button-->
|
||||
<!-- >-->
|
||||
|
||||
<!-- <el-upload-->
|
||||
<!-- :action="uploadFileUrl"-->
|
||||
<!-- multiple-->
|
||||
<!-- :limit="1"-->
|
||||
<!-- :headers="headers"-->
|
||||
<!-- :data="uploadData"-->
|
||||
<!-- :show-file-list="false"-->
|
||||
<!-- accept=".xls,.xlsx"-->
|
||||
<!-- :on-success="handleChange"-->
|
||||
<!-- :file-list="fileList"-->
|
||||
<!-- >-->
|
||||
<!-- <el-button icon="el-icon-upload2" type="primary">Excel导入</el-button>-->
|
||||
<!-- </el-upload>-->
|
||||
</el-button-group>
|
||||
</div>
|
||||
<el-divider style="margin: 15px"></el-divider>
|
||||
|
||||
<el-table
|
||||
:data="list"
|
||||
style="width: 100%"
|
||||
v-loading="loading"
|
||||
border
|
||||
highlight-current-row="true"
|
||||
>
|
||||
<!-- <el-table-column label="序号" type="index"></el-table-column>-->
|
||||
<!-- <el-table-column-->
|
||||
<!-- label="产品标识"-->
|
||||
<!-- prop="code"-->
|
||||
<!-- show-overflow-tooltip-->
|
||||
<!-- ></el-table-column>-->
|
||||
<!-- <el-table-column-->
|
||||
<!-- label="物资名称"-->
|
||||
<!-- prop="name"-->
|
||||
<!-- show-overflow-tooltip-->
|
||||
<!-- ></el-table-column>-->
|
||||
<!-- <el-table-column-->
|
||||
<!-- label="规格型号"-->
|
||||
<!-- prop="spec"-->
|
||||
<!-- show-overflow-tooltip-->
|
||||
<!-- ></el-table-column>-->
|
||||
<!-- <el-table-column-->
|
||||
<!-- label="医疗器械注册人"-->
|
||||
<!-- prop="ylqxzcrbarmc"-->
|
||||
<!-- show-overflow-tooltip-->
|
||||
<!-- ></el-table-column>-->
|
||||
<!-- <el-table-column-->
|
||||
<!-- label="注册证编号"-->
|
||||
<!-- prop="registerNo"-->
|
||||
<!-- show-overflow-tooltip-->
|
||||
<!-- ></el-table-column>-->
|
||||
<!-- <el-table-column label="审核状态" prop="status" show-overflow-tooltip>-->
|
||||
<!-- <template slot-scope="scope">-->
|
||||
<!-- <span>{{ checkMap[scope.row.status] }}</span>-->
|
||||
<!-- </template>-->
|
||||
<!-- </el-table-column>-->
|
||||
<!-- <el-table-column label="操作" width="120">-->
|
||||
<!-- <template slot-scope="scope">-->
|
||||
<!-- <el-button type="text" size="small" @click="detail(scope.row)"-->
|
||||
<!-- >详情</el-button-->
|
||||
<!-- >-->
|
||||
<!-- <el-button-->
|
||||
<!-- type="text"-->
|
||||
<!-- size="small"-->
|
||||
<!-- :disabled="scope.row.status == 2"-->
|
||||
<!-- @click="deleteProduct(scope.row.id)"-->
|
||||
<!-- >-->
|
||||
<!-- 删除-->
|
||||
<!-- </el-button>-->
|
||||
<!-- </template>-->
|
||||
<!-- </el-table-column>-->
|
||||
<template v-for="(item, index) in tableHeader">
|
||||
<el-table-column
|
||||
v-if="item.columnType == 'id' && executeEval(row,item.expression,true)"
|
||||
type="index" :label="item.columnDesc"></el-table-column>
|
||||
<el-table-column
|
||||
v-if="item.columnType == 'selection'"
|
||||
type="selection"
|
||||
:width="item.width"
|
||||
:selectable="(row,number) => executeFuc(row,'3',item.clickFuc)"
|
||||
></el-table-column>
|
||||
|
||||
<el-table-column
|
||||
v-if="item.columnType == 'radio' && executeEval(row,item.expression,true)"
|
||||
:prop="item.columnName"
|
||||
:label="item.columnDesc"
|
||||
:sortable="item.sort"
|
||||
:width="item.width"
|
||||
:show-overflow-tooltip="item.tooltip"
|
||||
:key="item.columnName"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-radio :label="scope.row.id" v-model="radioCheck"><span></span></el-radio>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
v-if="item.columnType == 'laber' && executeEval(row,item.expression,true)"
|
||||
:prop="item.columnName"
|
||||
:label="item.columnDesc"
|
||||
:sortable="item.sort"
|
||||
:width="item.width"
|
||||
:show-overflow-tooltip="item.tooltip"
|
||||
:key="item.columnName"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span :style="{color: executeFuc(scope.row,'4',item.lableRuleObj[scope.row[item.columnName]])}">{{
|
||||
item.lableRuleObj[scope.row[item.columnName]]
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
v-if="item.columnType == 'eltag' && executeEval(row,item.expression,true)"
|
||||
:prop="item.columnName"
|
||||
:label="item.columnDesc"
|
||||
:sortable="item.sort"
|
||||
:width="item.width"
|
||||
:show-overflow-tooltip="item.tooltip"
|
||||
:key="item.columnName"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-tag
|
||||
:type="executeFuc(scope.row,'4',item,item.lableRuleObj?item.lableRuleObj[scope.row[item.columnName]]:scope.row[item.columnName])">
|
||||
<span>{{
|
||||
item.lableRuleObj ? item.lableRuleObj[scope.row[item.columnName]] : scope.row[item.columnName]
|
||||
}}</span>
|
||||
</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
v-if="item.columnType == 'button' && executeEval(row,item.expression,true)"
|
||||
:prop="item.columnName"
|
||||
:label="item.columnDesc"
|
||||
:width="item.width"
|
||||
:key="item.columnName"
|
||||
fixed="right"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-button v-for="(buttonItem, buttonIndex) in item.buttonRulObj"
|
||||
:type="buttonItem.type"
|
||||
:size="buttonItem.size"
|
||||
:style="buttonItem.style"
|
||||
:key="buttonItem"
|
||||
v-if="executeEval(scope.row,buttonItem.hasPermi,true)"
|
||||
:disabled="executeEval(scope.row,buttonItem.disabledFuc,false)"
|
||||
@click.native.stop="executeFuc(scope.row,'1',buttonItem.clickFuc)"
|
||||
>{{ buttonItem.name }}
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
v-if="item.columnType == 'text' && executeEval(row,item.expression,true)"
|
||||
:prop="item.columnName"
|
||||
:label="item.columnDesc"
|
||||
:sortable="item.sort"
|
||||
:width="item.width"
|
||||
:show-overflow-tooltip="item.tooltip"
|
||||
:key="item.columnName"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span :style="{color: executeFuc(scope.row,'4',item,scope.row[item.columnName])}">{{
|
||||
scope.row[item.columnName]
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</template>
|
||||
</el-table>
|
||||
|
||||
<pagination
|
||||
v-show="total > 0"
|
||||
:total="total"
|
||||
:limit.sync="filterQuery.limit"
|
||||
:page.sync="filterQuery.page"
|
||||
@pagination="handleCurrentChange"
|
||||
></pagination>
|
||||
</el-card>
|
||||
|
||||
<el-dialog
|
||||
title="选入配送产品"
|
||||
:close-on-click-modal="false"
|
||||
:close-on-press-escape="false"
|
||||
:visible.sync="addDiProductVisible"
|
||||
width="85%"
|
||||
append-to-body
|
||||
v-if="addDiProductVisible"
|
||||
>
|
||||
<thrAddDiProductSelectUdi
|
||||
:closeDialog="closeDialog"
|
||||
:relId="relId"
|
||||
:isImportUdi="isImportUdi"
|
||||
:data="thisData"
|
||||
@closeUdi="closeUdi"
|
||||
>
|
||||
</thrAddDiProductSelectUdi>
|
||||
</el-dialog>
|
||||
|
||||
<el-dialog
|
||||
title="新增配送产品"
|
||||
:close-on-click-modal="false"
|
||||
:close-on-press-escape="false"
|
||||
:visible.sync="addProductVisible"
|
||||
width="85%"
|
||||
append-to-body
|
||||
v-if="addProductVisible"
|
||||
>
|
||||
<thrAddProductSelectUdi
|
||||
:closeAddDialog="closeDialog"
|
||||
:newType="newType"
|
||||
@closeUdi="closeUdi"
|
||||
>
|
||||
</thrAddProductSelectUdi>
|
||||
</el-dialog>
|
||||
|
||||
<el-dialog
|
||||
title="器械信息详情"
|
||||
:close-on-click-modal="false"
|
||||
:close-on-press-escape="false"
|
||||
:visible.sync="detailDialog"
|
||||
width="60%"
|
||||
append-to-body
|
||||
v-if="detailDialog"
|
||||
>
|
||||
<selectDiDetail :editQuery="diDetails" :remark="delect.remark">
|
||||
</selectDiDetail>
|
||||
</el-dialog>
|
||||
|
||||
<el-dialog
|
||||
:close-on-click-modal="false"
|
||||
:close-on-press-escape="false"
|
||||
title="产品信息详情"
|
||||
:visible.sync="thrProductsDetailVisible"
|
||||
width="80%"
|
||||
v-if="thrProductsDetailVisible"
|
||||
>
|
||||
<thrProductsDetail :data="thisDetail"></thrProductsDetail>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import {
|
||||
getThrDiProducts,
|
||||
delThrDiProducts,
|
||||
getDiProductDetail,
|
||||
} from "@/api/supplier/supProductsAddDi";
|
||||
import thrAddDiProductSelectUdi from "@/views/supplier/products/supAddDiProductSelectUdi";
|
||||
import thrAddProductSelectUdi from "@/views/supplier/products/supProductsAdd";
|
||||
import selectDiDetail from "./selectDIDetailDialog";
|
||||
import thrProductsDetail from "@/views/supplier/products/supProductsDetail";
|
||||
import {
|
||||
getHead, executeFuc
|
||||
} from "@/utils/customConfig";
|
||||
import store from "@/store";
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
showSearch: true,
|
||||
thisDetail: null,
|
||||
filterQuery: {
|
||||
sourceType: 0,
|
||||
code: null,
|
||||
name: null,
|
||||
spec: null,
|
||||
registerNo: null,
|
||||
manufactory: null,
|
||||
checkStatus: null,
|
||||
page: 1,
|
||||
limit: 20,
|
||||
},
|
||||
total: 0,
|
||||
tableHeader: [],
|
||||
queryList: [],
|
||||
fromList: [],
|
||||
tableHeader2: [],
|
||||
queryList2: [],
|
||||
fromList2: [],
|
||||
options: {},
|
||||
thirdSys: [],
|
||||
delect: null,
|
||||
thirdSysDetail: null,
|
||||
list: [],
|
||||
addDiProductVisible: false,
|
||||
addProductVisible: false,
|
||||
checkVisible: false,
|
||||
newType: 2,
|
||||
thrProductsDetailVisible: false,
|
||||
isImportUdi: false,
|
||||
relId: null,
|
||||
thisData: {
|
||||
nameCode: null,
|
||||
cpmctymc: null,
|
||||
ggxh: null,
|
||||
},
|
||||
loading: false,
|
||||
checkMap: {
|
||||
1: "未审核",
|
||||
2: "已审核",
|
||||
3: "未通过",
|
||||
},
|
||||
curRow: null,
|
||||
diDetails: null,
|
||||
detailDialog: false,
|
||||
uploadFileUrl: null,
|
||||
uploadData: {
|
||||
thirdSys: "thirdId",
|
||||
},
|
||||
fileList: [],
|
||||
headers: {},
|
||||
};
|
||||
},
|
||||
|
||||
methods: {
|
||||
onReset() {
|
||||
this.$router.push({
|
||||
path: "",
|
||||
});
|
||||
this.filterQuery = {
|
||||
code: null,
|
||||
spec: null,
|
||||
registerNo: null,
|
||||
manufactory: null,
|
||||
checkStatus: null,
|
||||
name: null,
|
||||
page: 1,
|
||||
limit: 20,
|
||||
};
|
||||
this.getList();
|
||||
},
|
||||
search() {
|
||||
this.filterQuery.page = 1;
|
||||
this.getList();
|
||||
},
|
||||
checDialog(row) {
|
||||
this.checkVisible = true;
|
||||
this.curRow = row;
|
||||
},
|
||||
hideSearch() {
|
||||
this.showSearch = !this.showSearch;
|
||||
},
|
||||
getList() {
|
||||
this.loading = true;
|
||||
getThrDiProducts(this.filterQuery)
|
||||
.then((response) => {
|
||||
if (response.code == 20000) {
|
||||
this.list = response.data.list || [];
|
||||
this.total = response.data.total || 0;
|
||||
} else {
|
||||
this.$message.error(response.message);
|
||||
}
|
||||
this.loading = false;
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
this.list = [];
|
||||
this.total = 0;
|
||||
});
|
||||
},
|
||||
handleCurrentChange(val) {
|
||||
this.filterQuery.page = val.page;
|
||||
this.getList();
|
||||
},
|
||||
detail(_this, row) {
|
||||
if (row.type == 1) {
|
||||
let query = {devKey: row.deviceRecordKey}
|
||||
getDiProductDetail(query).then((res) => {
|
||||
if (res.code === 20000) {
|
||||
_this.delect = row;
|
||||
_this.diDetails = res.data;
|
||||
_this.detailDialog = true;
|
||||
} else {
|
||||
_this.$message.error("参数错误");
|
||||
}
|
||||
});
|
||||
} else {
|
||||
_this.thisDetail = row;
|
||||
_this.thrProductsDetailVisible = true;
|
||||
}
|
||||
},
|
||||
deleteProduct(_this, row) {
|
||||
let query = {
|
||||
id: row.id,
|
||||
};
|
||||
delThrDiProducts(query).then((res) => {
|
||||
if (res.code === 20000) {
|
||||
_this.$message.success("删除成功");
|
||||
_this.getList();
|
||||
} else {
|
||||
_this.$message.error("删除失败");
|
||||
}
|
||||
});
|
||||
},
|
||||
closeDialog() {
|
||||
this.selectErpDialogVisible = false;
|
||||
this.selectLocalVisible = false;
|
||||
this.selectVersionVisible = false;
|
||||
this.addProductVisible = false;
|
||||
this.getList();
|
||||
},
|
||||
closeUdi(val) {
|
||||
this.addDiProductVisible = false;
|
||||
if (val) {
|
||||
this.getList();
|
||||
}
|
||||
},
|
||||
executeFuc(row, type, clickFuc, value) {
|
||||
return executeFuc(this, row, type, clickFuc, value);
|
||||
},
|
||||
executeEval(row, expression, defaultRet) {
|
||||
if (expression) {
|
||||
return eval(expression);
|
||||
}
|
||||
return defaultRet;
|
||||
},
|
||||
handleChange(response, files, fileList) {
|
||||
console.log(response);
|
||||
if (response.code != 20000) {
|
||||
this.$message.error(response.message);
|
||||
} else {
|
||||
this.$message.success(response.data);
|
||||
this.getList();
|
||||
}
|
||||
},
|
||||
},
|
||||
components: {
|
||||
thrAddDiProductSelectUdi,
|
||||
selectDiDetail,
|
||||
thrAddProductSelectUdi,
|
||||
thrProductsDetail,
|
||||
},
|
||||
mounted() {
|
||||
},
|
||||
created() {
|
||||
getHead("supProductsOptinDi", "1").then((re) => {
|
||||
// 处理返回的数据
|
||||
this.tableObj = re.data;
|
||||
this.tableHeader = re.data.tableList;
|
||||
this.queryList = re.data.queryList;
|
||||
this.fromList = re.data.fromList;
|
||||
this.getList();
|
||||
});
|
||||
this.uploadFileUrl = process.env.VUE_APP_BASE_API + "/spms/thrAddDi/excel/upload";
|
||||
this.headers = {
|
||||
ADMIN_ID: this.$store.getters.adminId,
|
||||
ADMIN_TOKEN: this.$store.getters.token,
|
||||
};
|
||||
console.log(this.headers);
|
||||
console.log(this.$store.getters);
|
||||
|
||||
console.log(this.uploadFileUrl);
|
||||
},
|
||||
};
|
||||
</script>
|
@ -0,0 +1,388 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-card class="el-card">
|
||||
<el-form :model="filterQuery" label-width="100px" v-show="showSearch">
|
||||
<el-row>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="产品编码:">
|
||||
<el-input v-model="filterQuery.code" style="width: 90%" placeholder="请输入产品编码/商品条码/医保编码" clearable @keyup.enter.native="keyupErp_submit($event)"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="产品名称:">
|
||||
<el-input v-model="filterQuery.name" style="width: 90%" clearable placeholder="请输入产品名称"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="规格型号:">
|
||||
<el-input v-model="filterQuery.spec" style="width: 90%" clearable placeholder="请输入规格型号"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="注册人:">
|
||||
<el-input v-model="filterQuery.registerNo" clearable style="width: 90%" placeholder="请输入注册/备案号"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="审核状态:">
|
||||
<el-select v-model="filterQuery.checkStatus" style="width: 90%" placeholder="请选择审核状态">
|
||||
<el-option label="全部" value=""></el-option>
|
||||
<el-option label="已审核" value="2"></el-option>
|
||||
<el-option label="未审核" value="1"></el-option>
|
||||
<el-option label="未通过" value="3"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="外部系统:">
|
||||
<el-select v-model="filterQuery.thirdSys" style="width: 90%" placeholder="请选择第三方系统" @change="thirdSysChange">
|
||||
<el-option
|
||||
v-for="item in thirdSys"
|
||||
:key="item.value"
|
||||
:label="item.thirdName"
|
||||
:value="item.thirdId">
|
||||
<span style="float: left">{{ item.thirdName }}</span>
|
||||
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.thirdId }}</span>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
|
||||
<div class="top-right-btn">
|
||||
<el-button-group style="display:flex;">
|
||||
<el-button icon="el-icon-view" type="primary" @click="hideSearch">显示/隐藏搜索栏</el-button>
|
||||
<el-button type="primary" icon="el-icon-refresh" @click="onReset">重置</el-button>
|
||||
<el-button type="primary" icon="el-icon-search" @click="search">查询</el-button>
|
||||
<el-button type="primary" icon="el-icon-plus" @click="addProductVisible=true">新增</el-button>
|
||||
</el-button-group>
|
||||
</div>
|
||||
|
||||
<el-divider style="margin: 15px"></el-divider>
|
||||
|
||||
<el-table v-loading="loading" :data="list" style="width: 100%" border highlight-current-row>
|
||||
<el-table-column label="序号" type="index" width="80"></el-table-column>
|
||||
<el-table-column label="产品编码" prop="code"></el-table-column>
|
||||
<el-table-column label="产品名称" prop="name" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="规格型号" 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="registerNo" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="生产企业" prop="manufactory" show-overflow-tooltip></el-table-column>
|
||||
|
||||
<el-table-column label="审核状态" prop="checkStatus" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
<span>{{ checkMap[scope.row.checkStatus] }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" width="120">
|
||||
<template slot-scope="scope">
|
||||
<el-button type="text" size="small" @click.native.stop="detailDialog(scope.row)">详情</el-button>
|
||||
<el-button type="text" size="small" @click.native.stop="deleteDialog(scope.row)" v-if="thirdSysDetail.fromType!=0">删除</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<pagination
|
||||
v-show="total>0"
|
||||
:total="total"
|
||||
:limit.sync="filterQuery.limit"
|
||||
:page.sync="filterQuery.page"
|
||||
@pagination="handleCurrentChange"
|
||||
></pagination>
|
||||
</el-card>
|
||||
|
||||
<el-dialog
|
||||
:close-on-click-modal="false"
|
||||
:close-on-press-escape="false"
|
||||
title="产品信息详情"
|
||||
:visible.sync="thrProductsDetailVisible"
|
||||
width="80%"
|
||||
v-if="thrProductsDetailVisible"
|
||||
>
|
||||
<thrProductsDetail
|
||||
:data="thisData"
|
||||
></thrProductsDetail>
|
||||
</el-dialog>
|
||||
<el-dialog
|
||||
:close-on-click-modal="false"
|
||||
:close-on-press-escape="false"
|
||||
title="审核"
|
||||
:visible.sync="checkVisible"
|
||||
width="45%"
|
||||
v-if="checkVisible">
|
||||
<el-button @click="checkVisible = false">取消</el-button>
|
||||
<el-button type="primary" @click="checkPass(2)">通过</el-button>
|
||||
<el-button type="primary" @click="checkPass(3)">不通过</el-button>
|
||||
</el-dialog>
|
||||
<el-dialog
|
||||
:close-on-click-modal="false"
|
||||
:close-on-press-escape="false"
|
||||
title="手动添加第三方产品信息关联"
|
||||
:visible.sync="addProductVisible"
|
||||
width="85%"
|
||||
v-if="addProductVisible"
|
||||
@close="closeAddDialog"
|
||||
>
|
||||
|
||||
<ThrProductsAdd
|
||||
:newType="newType"
|
||||
:closeAddDialog="closeAddDialog"></ThrProductsAdd>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import {getThrProducts, delThrProducts, updateProduct} from "../../../api/thrsys/thrProductsAdd";
|
||||
import {getBasicThirdSys, filterDetailByKey} from "../../../api/basic/basicThirdSys";
|
||||
import {selectIp} from "@/api/system/systemParamConfig";
|
||||
import thrProductsDetail from "./supProductsDetail";
|
||||
import ThrProductsAdd from "@/views/supplier/products/supProductsAdd";
|
||||
|
||||
export default {
|
||||
|
||||
data() {
|
||||
return {
|
||||
showSearch: true,
|
||||
filterQuery: {
|
||||
code: null,
|
||||
name: "",
|
||||
spec: null,
|
||||
registerNo: null,
|
||||
manufactory: null,
|
||||
thirdSys: "",
|
||||
page: 1,
|
||||
limit: 20,
|
||||
},
|
||||
mainThirdSys:'',
|
||||
total: 0,
|
||||
thirdSys: [],
|
||||
thirdSysDetail: null,
|
||||
list: [],
|
||||
uploadFileUrl: null,
|
||||
fileList: [],
|
||||
uploadData: {
|
||||
thirdSys: "thirdId",
|
||||
},
|
||||
addProductVisible: false,
|
||||
checkVisible: false,
|
||||
newType: 2,
|
||||
thrProductsDetailVisible: false,
|
||||
thisData: null,
|
||||
loading: false,
|
||||
checkMap: {
|
||||
1: "未审核",
|
||||
2: "已审核",
|
||||
3: "未通过",
|
||||
},
|
||||
curRow: null,
|
||||
};
|
||||
},
|
||||
|
||||
methods: {
|
||||
onReset() {
|
||||
this.$router.push({
|
||||
path: "",
|
||||
});
|
||||
this.filterQuery = {
|
||||
code: null,
|
||||
spec: null,
|
||||
registerNo: null,
|
||||
manufactory: null,
|
||||
name: "",
|
||||
thirdSys: null,
|
||||
page: 1,
|
||||
limit: 20,
|
||||
};
|
||||
this.getList();
|
||||
},
|
||||
hideSearch() {
|
||||
this.showSearch = !this.showSearch;
|
||||
},
|
||||
search() {
|
||||
this.filterQuery.page = 1;
|
||||
this.getList();
|
||||
},
|
||||
checDialog(row) {
|
||||
this.checkVisible = true;
|
||||
this.curRow = row;
|
||||
},
|
||||
getList() {
|
||||
if (this.filterQuery.thirdSys == null) {
|
||||
this.$message.warning("请先选择第三方系统!")
|
||||
return;
|
||||
}
|
||||
this.loading = true;
|
||||
getThrProducts(this.filterQuery)
|
||||
.then((response) => {
|
||||
// this.loading = false;
|
||||
if (response.code == 20000) {
|
||||
this.list = response.data.list || [];
|
||||
this.total = response.data.total || 0;
|
||||
} else {
|
||||
this.$message.error(response.message);
|
||||
}
|
||||
this.loading = false;
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
this.list = [];
|
||||
this.total = 0;
|
||||
});
|
||||
},
|
||||
getAllList(){
|
||||
getThrProducts(this.filterQuery)
|
||||
.then((response) => {
|
||||
// this.loading = false;
|
||||
if (response.code == 20000) {
|
||||
this.list = response.data.list || [];
|
||||
this.total = response.data.total || 0;
|
||||
} else {
|
||||
this.$message.error(response.message);
|
||||
}
|
||||
this.loading = false;
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
this.list = [];
|
||||
this.total = 0;
|
||||
});
|
||||
},
|
||||
deleteDialog(row) {
|
||||
this.$confirm("此操作将永久删除该产品信息, 是否继续?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning",
|
||||
})
|
||||
.then(() => {
|
||||
let dQuery = {
|
||||
id: row.id,
|
||||
};
|
||||
delThrProducts(dQuery)
|
||||
.then((response) => {
|
||||
this.loading = false;
|
||||
if (response.code == 20000) {
|
||||
this.$message.success("删除成功");
|
||||
this.getList();
|
||||
} else {
|
||||
this.$message.success(response.message);
|
||||
}
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
});
|
||||
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
},
|
||||
|
||||
detailDialog(row) {
|
||||
this.thisData = row;
|
||||
this.thrProductsDetailVisible = true;
|
||||
},
|
||||
getBasicThirdSys() {
|
||||
let query = {
|
||||
enabled: true,
|
||||
};
|
||||
getBasicThirdSys(query)
|
||||
.then((response) => {
|
||||
this.thirdSys = response.data.list || [];
|
||||
for(var i=0;i<this.thirdSys.length;i++){
|
||||
if(this.thirdSys[i].mainSys){
|
||||
this.filterQuery.thirdSys = this.thirdSys[i].thirdId;
|
||||
this.mainThirdSys = this.thirdSys[i].thirdId;
|
||||
}
|
||||
}
|
||||
this.uploadData.thirdSys = this.filterQuery.thirdSys;
|
||||
this.getThirdSysDetail();
|
||||
this.selectSysParam();
|
||||
// this.getList();
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
this.list = [];
|
||||
});
|
||||
},
|
||||
getThirdSysDetail() {
|
||||
let query = {
|
||||
thirdSysFk: this.filterQuery.thirdSys,
|
||||
key: "piQueryUrl",
|
||||
};
|
||||
filterDetailByKey(query)
|
||||
.then((response) => {
|
||||
this.thirdSysDetail = response.data;
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
this.list = [];
|
||||
});
|
||||
|
||||
},
|
||||
handleCurrentChange(val) {
|
||||
this.filterQuery.page = val.page;
|
||||
this.getList();
|
||||
},
|
||||
handleChange(response, files, fileList) {
|
||||
console.log(response);
|
||||
if (response.code != 20000) {
|
||||
this.$message.error(response.message);
|
||||
} else {
|
||||
console.log(files[0] + "\n" + this.fileList[0] + "\n" + fileList[0]);
|
||||
this.$message.success("文件上传成功,请稍后刷新查看!");
|
||||
}
|
||||
},
|
||||
selectSysParam() {
|
||||
let query = {
|
||||
key: "thirdIpUrl",
|
||||
thirdSysFk: this.filterQuery.thirdSys
|
||||
};
|
||||
selectIp(query).then((response) => {
|
||||
if (response.code == 20000) {
|
||||
this.uploadFileUrl = response.data.thridUrl + "/udiwms/erp/pi/upload";
|
||||
}
|
||||
});
|
||||
},
|
||||
thirdSysChange() {
|
||||
this.uploadData.thirdSys = this.filterQuery.thirdSysFk;
|
||||
this.getThirdSysDetail();
|
||||
},
|
||||
closeAddDialog(val) {
|
||||
if (val) {
|
||||
this.getList();
|
||||
}
|
||||
this.addProductVisible = false;
|
||||
},
|
||||
checkPass(val) {
|
||||
let query = {
|
||||
id: this.curRow.id,
|
||||
checkStatus: val
|
||||
}
|
||||
updateProduct(query).then((res) => {
|
||||
if (res.code == 20000) {
|
||||
this.getList();
|
||||
this.checkVisible = false;
|
||||
} else {
|
||||
this.$message.error(error.message);
|
||||
}
|
||||
}).catch((error) => {
|
||||
this.$message.error(error.message);
|
||||
})
|
||||
},
|
||||
},
|
||||
components: {
|
||||
thrProductsDetail, ThrProductsAdd
|
||||
},
|
||||
mounted() {
|
||||
},
|
||||
created() {
|
||||
this.getAllList();
|
||||
this.getBasicThirdSys();
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style scoped>
|
||||
.el-form-item--mini.el-form-item {
|
||||
margin-bottom: 9px;
|
||||
}
|
||||
</style>
|
Loading…
Reference in New Issue