阳光编码对照
parent
a3c43a9989
commit
a3d8697369
@ -0,0 +1,33 @@
|
||||
import request from "@/utils/request";
|
||||
|
||||
export function GetList(param) {
|
||||
return request({
|
||||
url: "/udplat/goodsMatch/list",
|
||||
method: "post",
|
||||
data: param
|
||||
});
|
||||
}
|
||||
|
||||
export function GetProductlist(key) {
|
||||
return request({
|
||||
url: "/udplat/goodsMatch/productlist",
|
||||
method: "post",
|
||||
params: {key}
|
||||
});
|
||||
}
|
||||
|
||||
export function GetProductDetail(uuid) {
|
||||
return request({
|
||||
url: "/udplat/goodsMatch/productDetail",
|
||||
method: "post",
|
||||
params: {uuid}
|
||||
});
|
||||
}
|
||||
|
||||
export function Save(param) {
|
||||
return request({
|
||||
url: "/udplat/goodsMatch/save",
|
||||
method: "post",
|
||||
data: param
|
||||
})
|
||||
}
|
@ -0,0 +1,142 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-dialog
|
||||
:close-on-click-modal="false"
|
||||
width="900px"
|
||||
title="选择对照"
|
||||
:visible.sync="visible"
|
||||
append-to-body>
|
||||
<el-card class="el-card">
|
||||
<el-form
|
||||
:inline="true"
|
||||
:model="queryParams"
|
||||
size="mini">
|
||||
<el-form-item label="名称">
|
||||
<el-input
|
||||
v-model="queryParams.name"
|
||||
size="mini"
|
||||
placeholder="请输入名称"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<span style="color: #000; margin-left: 10px; margin-right: 6px"
|
||||
>日期:</span
|
||||
>
|
||||
<el-date-picker
|
||||
:picker-options="pickerOptions"
|
||||
v-model="dateRange"
|
||||
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>
|
||||
<el-button-group>
|
||||
<el-button
|
||||
type="primary"
|
||||
icon="el-icon-refresh"
|
||||
@click="onReset"
|
||||
></el-button>
|
||||
<el-button type="primary" icon="search" @click="onSubmit"
|
||||
>查询
|
||||
</el-button
|
||||
>
|
||||
|
||||
</el-button-group>
|
||||
</el-form-item>
|
||||
|
||||
</el-form>
|
||||
<el-table
|
||||
v-loading="loading"
|
||||
:data="list"
|
||||
style="width: 100%"
|
||||
@row-click="rowClick"
|
||||
>
|
||||
<el-table-column label="选择" width="50px">
|
||||
<template slot-scope="scope">
|
||||
<el-radio :label="scope.row.deliveryGoodId" v-model="selectValue.deliveryGoodId"> </el-radio>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="ID" prop="deliveryGoodId"/>
|
||||
<el-table-column label="产品名称" prop="productName"/>
|
||||
<el-table-column label="目录编码" prop="deliveryGoodsCode"/>
|
||||
<el-table-column label="医保编码" prop="medicalCode"/>
|
||||
|
||||
</el-table>
|
||||
<el-pagination
|
||||
:current-page="queryParams.page"
|
||||
:page-size="queryParams.limit"
|
||||
@current-change="handleCurrentChange"
|
||||
layout="prev, pager, next"
|
||||
:total="total"
|
||||
></el-pagination>
|
||||
|
||||
|
||||
</el-card>
|
||||
<select-goods/>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">取 消</el-button>
|
||||
<el-button type="primary" @click="selectAction">选好了</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {GetList} from "@/api/udplat/udplatGoods";
|
||||
import myMinix from './minixs/commMinixs';
|
||||
export default {
|
||||
name: "selectGoods",
|
||||
props:{
|
||||
dialogVisible:Boolean
|
||||
},
|
||||
data(){
|
||||
return{
|
||||
selectValue:{
|
||||
deliveryGoodId:"",
|
||||
medicalCode:""
|
||||
}
|
||||
}
|
||||
},
|
||||
computed:{
|
||||
visible:{
|
||||
get(){return this.dialogVisible},
|
||||
set(val){
|
||||
this.$emit("updateVisible",val);
|
||||
}
|
||||
}
|
||||
},
|
||||
mixins:[myMinix],
|
||||
methods:{
|
||||
getList() {
|
||||
this.loading = true;
|
||||
GetList(this.addDateRange(this.queryParams, this.dateRange)).then(res => {
|
||||
this.loading = false;
|
||||
this.list = res.data.list || [];
|
||||
this.total = res.data.total || 0;
|
||||
}).catch(error => {
|
||||
this.$message.error(error);
|
||||
this.loading = false;
|
||||
})
|
||||
},
|
||||
rowClick(row){
|
||||
console.log(row);
|
||||
this.selectValue.deliveryGoodId = row.deliveryGoodId;
|
||||
this.selectValue.medicalCode = row.medicalCode;
|
||||
},
|
||||
selectAction(){
|
||||
this.$emit("selectAction",this.selectValue);
|
||||
this.visible = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
@ -0,0 +1,345 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-card class="el-card">
|
||||
<el-form
|
||||
:inline="true"
|
||||
:model="queryParams"
|
||||
size="mini"
|
||||
>
|
||||
<el-form-item label="名称">
|
||||
<el-input
|
||||
v-model="queryParams.name"
|
||||
size="mini"
|
||||
placeholder="请输入名称"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="阳光编码对照">
|
||||
<el-select
|
||||
v-model="queryParams.goodsMatchType"
|
||||
placeholder="类型"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in matchTypeOption"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="医保编码对照">
|
||||
<el-select
|
||||
v-model="queryParams.medicalMatchType"
|
||||
placeholder="类型"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in matchTypeOption"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<span style="color: #000; margin-left: 10px; margin-right: 6px"
|
||||
>日期:</span
|
||||
>
|
||||
<el-date-picker
|
||||
:picker-options="pickerOptions"
|
||||
v-model="dateRange"
|
||||
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>
|
||||
<el-button-group>
|
||||
<el-button
|
||||
type="primary"
|
||||
icon="el-icon-refresh"
|
||||
@click="onReset"
|
||||
></el-button>
|
||||
<el-button type="primary" icon="search" @click="onSubmit"
|
||||
>查询
|
||||
</el-button
|
||||
>
|
||||
|
||||
</el-button-group>
|
||||
</el-form-item>
|
||||
|
||||
</el-form>
|
||||
<el-table
|
||||
v-loading="loading"
|
||||
:data="list"
|
||||
style="width: 100%"
|
||||
>
|
||||
<el-table-column label="产品标识" prop="nameCode"/>
|
||||
<el-table-column label="产品名称" prop="cpmctymc"/>
|
||||
<el-table-column label="规格型号" prop="ggxh"/>
|
||||
<el-table-column label="注册/备案人名称" prop="ylqxzcrbarmc"/>
|
||||
<el-table-column label="注册/备案证号" prop="zczbhhzbapzbh"/>
|
||||
<!-- <el-table-column label="产品描述" prop="cpms"/>-->
|
||||
<el-table-column label="产品key" prop="deviceRecordKey"/>
|
||||
<el-table-column label="阳光编码" prop="deliveryGoodId"/>
|
||||
<el-table-column label="医保编码" prop="medicalCode"/>
|
||||
<el-table-column label="操作" fixed="right" width="80">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
type="text"
|
||||
size="small"
|
||||
@click.native.stop="showDetail(scope.row)"
|
||||
>详情</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-pagination
|
||||
:current-page="queryParams.page"
|
||||
:page-size="queryParams.limit"
|
||||
@current-change="handleCurrentChange"
|
||||
layout="prev, pager, next"
|
||||
:total="total"
|
||||
></el-pagination>
|
||||
</el-card>
|
||||
|
||||
<el-dialog title="详情" :close-on-click-modal="false"
|
||||
:visible.sync="dialog.visible" width="1000px">
|
||||
|
||||
<el-card class="el-card">
|
||||
<div slot="header" style="font-weight:bold;">
|
||||
<span>产品标识</span>
|
||||
</div>
|
||||
<el-table :data="dialog.productlist" style="width: 100%">
|
||||
<el-table-column label="序号" type="index"></el-table-column>
|
||||
<el-table-column prop="nameCode" label="产品标识"></el-table-column>
|
||||
<el-table-column prop="cpmctymc" label="产品通用名称"></el-table-column>
|
||||
<el-table-column prop="packLevel" label="包装级别"></el-table-column>
|
||||
<el-table-column prop="bzcj" label="包装层级"></el-table-column>
|
||||
</el-table>
|
||||
</el-card>
|
||||
<el-card>
|
||||
<el-form :model="dialog.productDetail" label-position="left" label-width="100px">
|
||||
<el-row :gutter="25">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="产品名称" prop="cpmctymc">
|
||||
<el-input v-model="dialog.productDetail.cpmctymc" :disabled="true" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="产品标识">
|
||||
<el-input v-model="dialog.productDetail.nameCode" :disabled="true"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-row :gutter="25">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="规格型号">
|
||||
<el-input v-model="dialog.productDetail.ggxh" :disabled="true"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="器械类别">
|
||||
<el-input v-model="dialog.productDetail.qxlb" :disabled="true"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="25">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="产品类别">
|
||||
<el-input v-model="dialog.productDetail.cplb" :disabled="true"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="分类编码">
|
||||
<el-input v-model="dialog.productDetail.flbm" :disabled="true"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="25">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="注册人名称">
|
||||
<el-input v-model="dialog.productDetail.ylqxzcrbarmc" :disabled="true"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="英文名称">
|
||||
<el-input v-model="dialog.productDetail.ylqxzcrbarywmc" :disabled="true"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="25">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="信用代码">
|
||||
<el-input v-model="dialog.productDetail.tyshxydm" :disabled="true"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="备案证号">
|
||||
<el-input v-model="dialog.productDetail.zczbhhzbapzbh" :disabled="true"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="25">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="上级产品编码">
|
||||
<el-input v-model="dialog.productDetail.sjcpbm" :disabled="true"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="包装级别">
|
||||
<el-input v-model="dialog.productDetail.packLevel" :disabled="true"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="25">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="包含下级产品编码">
|
||||
<el-input v-model="dialog.productDetail.bhxjcpbm" :disabled="true"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="包含最小销售包装数量">
|
||||
<el-input v-model="dialog.productDetail.bhzxxsbzsl" :disabled="true"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="25">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="最小销售标识包含使用单元数量">
|
||||
<el-input v-model="dialog.productDetail.zxxsbzbhsydysl" :disabled="true"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="包含最小销售包装数量">
|
||||
<el-input v-model="dialog.productDetail.bhzxxsbzsl" :disabled="true"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="25">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="产品对照码">
|
||||
<el-input v-model="dialog.productDetail.deliveryGoodId">
|
||||
<el-button style="padding-right:10px" slot="suffix" type="text" @click="select">选择</el-button>
|
||||
</el-input>
|
||||
|
||||
</el-form-item>
|
||||
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="医保编码">
|
||||
<el-input v-model="dialog.productDetail.medicalCode" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</el-card>
|
||||
<select-goods :dialog-visible="dialog2.visible" @selectAction="selectAction" @updateVisible="updateVisible"/>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button @click="dialog.visible = false">取 消</el-button>
|
||||
<el-button type="primary" @click="save">保存对照</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {GetList,GetProductlist,GetProductDetail,Save} from "@/api/udplat/udplatGoodsMatch";
|
||||
import myMinix from './minixs/commMinixs';
|
||||
import selectGoods from "./selectGoods";
|
||||
import SelectGoods from "./selectGoods";
|
||||
export default {
|
||||
name: "udplatGoodsMatch",
|
||||
components: {SelectGoods},
|
||||
comments:[selectGoods],
|
||||
mixins:[myMinix],
|
||||
created() {
|
||||
this.formReset();
|
||||
},
|
||||
data(){
|
||||
return{
|
||||
matchTypeOption:[{value:0,label:"全部"},{value:1,label:"已对照"},{value:2,label:"未对照"}],
|
||||
queryParams: {
|
||||
page: 1,
|
||||
limit: 10,
|
||||
name:"",
|
||||
goodsMatchType: 0,
|
||||
medicalMatchType: 0
|
||||
},
|
||||
dialog: {
|
||||
visible: false,
|
||||
productlist:null,
|
||||
productDetail: null,
|
||||
},
|
||||
dialog2:{
|
||||
visible: false
|
||||
}
|
||||
}
|
||||
},
|
||||
methods:{
|
||||
getList() {
|
||||
this.loading = true;
|
||||
GetList(this.addDateRange(this.queryParams, this.dateRange)).then(res => {
|
||||
//console.log(res);
|
||||
this.loading = false;
|
||||
this.list = res.data.list || [];
|
||||
this.total = res.data.total || 0;
|
||||
}).catch(error => {
|
||||
this.$message.error(error);
|
||||
this.loading = false;
|
||||
})
|
||||
},
|
||||
showDetail(row){
|
||||
let key=row.deviceRecordKey;
|
||||
let uuid=row.uuid;
|
||||
GetProductlist(key).then(res=>{
|
||||
this.dialog.productlist = res.data;
|
||||
});
|
||||
GetProductDetail(uuid).then(res => {
|
||||
this.dialog.productDetail = res.data;
|
||||
});
|
||||
this.dialog.visible = true;
|
||||
},
|
||||
select(){
|
||||
this.dialog2.visible = true;
|
||||
},
|
||||
formReset(){
|
||||
this.dialog.productDetail={
|
||||
cpmctymc:"",
|
||||
nameCode:''
|
||||
}
|
||||
},
|
||||
selectAction(value){
|
||||
console.log(value);
|
||||
if(value.deliveryGoodId && value.deliveryGoodId != ''){
|
||||
this.dialog.productDetail.deliveryGoodId = value.deliveryGoodId;
|
||||
}
|
||||
if(value.medicalCode && value.medicalCode != '')
|
||||
this.dialog.productDetail.medicalCode = value.medicalCode;
|
||||
},
|
||||
updateVisible(val){
|
||||
this.dialog2.visible = val;
|
||||
},
|
||||
save(){
|
||||
let param={
|
||||
deviceRecordKey: this.dialog.productDetail.deviceRecordKey,
|
||||
deliveryGoodId: this.dialog.productDetail.deliveryGoodId,
|
||||
medicalCode: this.dialog.productDetail.medicalCode
|
||||
}
|
||||
Save(param).then(result => {
|
||||
if(result.code == 20000){
|
||||
this.dialog.visible = false;
|
||||
this.getList();
|
||||
}else
|
||||
this.$message.error(result.message);
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
Loading…
Reference in New Issue