Uploaded by adrianzhaos

源代码

advertisement
<template>
<div id="DayCost">
<Row :gutter="16" class-name="DayCost-warp">
<!--内容区域 1-->
<Col span="16" class-name="DayCost-warp">
<Row class="listTitle">
<Form :label-width="90" inline>
<!--
<Col span="5" style="padding: 0" class="titleZY">-->
<Col span="6">
<FormItem label="住院信息:">
<Select v-model="EnterType" @on-change="loadList" style="width:
1.2rem;">
<Option value="0">全部</Option>
<Option value="1">住院</Option>
<Option value="2">门诊</Option>
</Select>
</FormItem>
</Col>
<Col span="6">
<FormItem label="医保类型:">
<Select v-model="YbType" @on-change="loadList" style="width:
1.2rem;">
<Option value="0">全部</Option>
<Option value="1">省医保</Option>
<Option value="2">市医保</Option>
<Option value="3">居民医保</Option>
<Option value="4">农合医保</Option>
</Select>
</FormItem>
</Col>
<Col span="6">
<FormItem label="透析时间:">
<Select v-model="WordType" @on-change="loadList" style="width:
1.2rem;">
<Option value="0">全部</Option>
<Option v-for="item in
shiftsList" :value="item.id" :key="item.id">{{item.name}}</Option>
</Select>
</FormItem>
</Col>
<Col span="6">
<FormItem label="选择时间:">
<DatePicker v-model="dateData" type="date" style="width: 1.2rem;"
placeholder="请选择日期" @on-change="loadList"
ref="datas" :clearable="false"></DatePicker>
</FormItem>
</Col>
</Form>
</Row>
<Row class="myTable">
<Table :columns="columns1" :data="dataList1" :class="active1Color" nodata-text="暂无数据" :height="tableHeight"
@on-row-click="getList" highlight-row></Table>
</Row>
</Col>
<!--内容区域 2-->
<Col span="8" class-name="DayCost-warp">
<Row class="listTitle">
<Col span="8" style="font-size: 0.15rem;padding: 0">
<span v-if="EnterType==0">治疗费明细:全部</span>
<span v-else-if="EnterType==1">治疗费明细:住院</span>
<span v-else-if="EnterType==2">治疗费明细:门诊</span>
</Col>
<Col span="12">
<Form :label-width="90" inline>
<FormItem label="选择模式:">
<Select v-model="priceType" @on-change="detailList" style="width:
1.2rem;">
<Option value="0">全部</Option>
<Option value="1">计费</Option>
<Option value="2">自费</Option>
<Option value="3">免费</Option>
<Option value="4">代管</Option>
</Select>
</FormItem>
</Form>
</Col>
</Row>
<Row class="myTable">
<Table :columns="columns2" :data="dataList2" no-data-text="暂无数据
" :height="tableHeight"></Table>
<!--@on-row-click="gotoReCode"-->
</Row>
</Col>
</Row>
</div>
</template>
<script type='text/ecmascript-6'>
export default {
name: "DayCost",
data() {
return {
id:null,
shiftsList: [], //班次列表
tableHeight: "",
EnterType: "0",
YbType: "0",
WordType: "0",
dateData: "",
priceType:"0",
columns1: [
{
title: '姓名',
align: "center",
key: 'patientName',
render: (h, params) => {
return h('Tooltip', {
props: {
content: params.row.patientName,
placement: "right"
},
attrs: {
style: 'width:100%;overflow: hidden;text-overflow:
ellipsis;white-space: nowrap;'
},
},params.row.patientName
)
}
}, {
title: '医保类型',
align: "center",
key: 'payModel',
render: (h, params) => {
let name = "";
if(params.row.payModel == '农村合作医疗'){
name = "新农合"
}else{
name = params.row.payModel
}
return h('span', {}, name)
}
},
{
title: '总费用',
align: "center",
key: 'totalFee',
},
{
title: '透析治疗',
align: "center",
key: 'dialysisTreatmentFee',
},
{
title: '透析耗材',
align: "center",
key: 'dialysisSupplyFee',
},
{
title: '透析用药',
align: "center",
key: 'drugFee',
},
{
title: '常规耗材',
align: "center",
key: 'genericSupplyFee',
},
{
title: '常规治疗',
align: "center",
key: 'genericTreatmentFee',
},
{
title: '常规用药',
align: "center",
key: 'drugFee',
},
{
title: '化验',
align: "center",
key: 'assayFee',
},
{
title: '检查',
align: "center",
key: 'checkFee',
},
{
title: '其他',
align: "center",
key: 'quantity',
},
],
dataList1: [],
columns2: [
{
title: '项目名称',
align: "center",
key: 'productName',
},
{
title: '计数',
align: "center",
render: (h, params) => {
return h('span', {}, params.row.num + " " + params.row.unit)
}
},
{
title: '计费模式',
align: "center",
key: 'payModelStr',
render: (h, params) => {
let name = "";
if (params.row.payModel == 1) {
name = "计费"
}
if (params.row.payModel == 2) {
name = "自费"
}
if (params.row.payModel == 3) {
name = "免费"
}
if (params.row.payModel == 4) {
name = "代管"
}
return h('span', {}, name)
}
},
{
title: '金额/元',
align: "center",
key: 'productMoney',
},
{
title: '实施者',
align: "center",
key: 'operationName',
}
],
dataList2: [],
active1Color:'patient-list-content_active',
}
},
created: function () {
this.dateData = new Date()
},
mounted: function () {
//判断登录者设置颜色
var user=JSON.parse(localStorage.getItem('userState'));
if(user.user.identityOrder==2){
this.active1Color = 'patient-list-content_active1';
}
//设置 table 高度
var rem = parseInt($("html").css("fontSize"));
this.tableHeight = $(window).height() - 2.2 * rem;
this.loadList();
this.loadShiftsList() //获取班次列表
},
methods: {
loadList() {
this.dataList1 = [];//初始化左表格
this.dataList2 = [];//初始化右表格
var _this = this;
this.getData('patientFee/queryByDay', {
treatmentModel: _this.EnterType,
payModel: _this.YbType,
dialysisTime: _this.WordType,
date: _this.$refs.datas.visualValue,
}, function (data) {
_this.dataList1 = data;
if (data.length != 0) {
_this.id = data[0].id;
_this.detailList();
_this.dataList1[0]._highlight = true;//默认第一行高亮
}
}, true)
},
detailList() {
var _this = this;
if (this.dataList1.length != 0) {
this.getData('patientFee/detailForDay', {
feeId: _this.id,
chargingModel:_this.priceType,
}, function (data) {
_this.dataList2 = data;
// console.log(data)
}, true)
}
},
getList(row) {
this.id = row.id;
this.detailList();
},
loadShiftsList() {
var _this = this;
this.getData('settingIntegration/getClassAndClassTime.do', {}, function
(data) {
if (data.length != 0) {
_this.shiftsList = data
}
}, true)
}
},
}
</script>
<style>
#DayCost .ivu-tooltip-rel{
width: 100%;
overflow: hidden ;
text-overflow: ellipsis;
white-space: nowrap;
}
#DayCost .listTitle {
background: #fff;
line-height: 0.5rem;
padding: 0 0.2rem;
}
#DayCost .ivu-form-item {
margin-bottom: 0 !important;
vertical-align: middle;
}
#DayCost .myTable {
padding: 0 0.2rem;
background-color:#fff ;
}
#DayCost .titleZY .ivu-form-item-label {
text-align: left;
}
#DayCost .patient-list-content_active .ivu-table-row-highlight td{
background-color: #cbede5;
color: #5c6166;
font-size: 0.14rem;
}
#DayCost
.patient-list-content_active1 .ivu-table-row-highlight td{
background-color: #c9d0e7;
color: #5c6166;
font-size: 0.14rem;
}
</style>
<template>
<div id="MonthCost">
<Row :gutter="16" class-name="MonthCost-warp">
<!--内容区域 1-->
<Col span="16" class-name="MonthCost-warp">
<Row class="listTitle">
<Form :label-width="100" inline>
<!--
<Col span="5" style="padding: 0">-->
<Col span="5">
<FormItem label="患者:" :label-width="60">
<Input type="text" icon="ios-search-strong" vmodel="searchPatient" placeholder="搜索患者"
@on-change="search" style="width: 1.2rem;"></Input>
</FormItem>
</Col>
<Col span="6">
<FormItem label="住院信息:">
<Select v-model="EnterType" @on-change="loadList" style="width:
1.2rem;">
<Option value="0">全部</Option>
<Option value="1">住院</Option>
<Option value="2">门诊</Option>
</Select>
</FormItem>
</Col>
<Col span="6">
<FormItem label="医保类型:">
<Select v-model="YbType" @on-change="loadList" style="width:
1.2rem;">
<Option value="1">省医保</Option>
<Option value="2">市医保</Option>
<Option value="3">居民医保</Option>
<Option value="4">农合医保</Option>
<Option value="0">全部</Option>
</Select>
</FormItem>
</Col>
<Col span="6">
<FormItem label="选择日期:">
<DatePicker v-model="dateData" type="month" style="width: 1.2rem"
placeholder="请选择日期"
@on-change="loadList"
ref="datas" :clearable="false"></DatePicker>
</FormItem>
</Col>
</Form>
</Row>
<Row class="myTable">
<Table :columns="columns1" :data="dataList1" :class="active1Color" nodata-text="暂无数据" :height="tableHeight"
@on-row-click="tabType" highlight-row></Table>
</Row>
</Col>
<!--内容区域 2-->
<Col span="8" class-name="MonthCost-warp">
<Row class="listTitle" type="flex" align="middle">
<Col span="8" style="font-size: 0.15rem" class="titleZY">
治疗费明细:{{EnterType==0?'全部':EnterType==1?'住院':'门诊'}}
</Col>
<Col span="12">
<Form :label-width="90" inline>
<FormItem label="选择模式:">
<Select v-model="priceType" @on-change="detailList" style="width:
1.2rem;">
<Option value="0">全部</Option>
<Option value="1">计费</Option>
<Option value="2">自费</Option>
<Option value="3">免费</Option>
<Option value="4">代管</Option>
</Select>
</FormItem>
</Form>
</Col>
</Row>
<Row class="myTable">
<Table :columns="columns2" :data="dataList2" no-data-text="暂无数据
" :height="tableHeight"></Table>
</Row>
</Col>
</Row>
</div>
</template>
<script type='text/ecmascript-6'>
export default {
name: "MonthCost",
data() {
return {
id: null,
tableHeight: "",
modal1: false,
EnterType: "0",
YbType: "0",
dateData: "",
priceType: "0",
oldList: [],
searchFlag: true,
searchPatient: "",
MonthCostModes: [
{
text: 'HD',
value: '1',
checked: false
},
{
text: 'HDF',
value: '2',
checked: false
},
{
text: 'HD+HP',
value: '3',
checked: false
},
{
text: 'HDF+HP',
value: '4',
checked: false
},
{
text: 'HP',
value: '5',
checked: false
},
{
text: 'CHDF',
value: '6',
checked: false
},
{
text: 'CHDF+HP',
value: '7',
checked: false
},
{
text: 'HF',
value: '8',
checked: false
},
{
text: 'HFHD',
value: '9',
checked: false
},
{
text: 'HFHD+HP',
value: '10',
checked: false
},
{
text: 'SUCF',
value: '11',
checked: false
},
{
text: 'ISO',
value: '12',
checked: false
},
{
text: 'CRRT',
value: '13',
checked: false
}
],
columns1: [
{
title: '姓名',
align: "center",
key: 'patientName',
render: (h, params) => {
return h('Tooltip', {
props: {
content: params.row.patientName,
placement: "right"
},
attrs: {
style: 'width:100%;overflow: hidden;text-overflow:
ellipsis;white-space: nowrap;'
},
},params.row.patientName
)
}
}, {
title: '医保类型',
align: "center",
key: 'payModel',
render: (h, params) => {
let name = "";
if (params.row.payModel == '农村合作医疗') {
name = "新农合"
} else {
name = params.row.payModel
}
return h('span', {}, name)
}
},
{
title: '透析治疗',
align: "center",
key: 'dialysisTreatmentFee',
},
{
title: '透析耗材',
align: "center",
key: 'dialysisSupplyFee',
},
{
title: '常规耗材',
align: "center",
key: 'genericSupplyFee',
},
{
title: '常规治疗',
align: "center",
key: 'genericTreatmentFee',
},
{
title: '常规用药',
align: "center",
key: 'drugFee',
},
{
title: '其他',
align: "center",
key: 'quantity',
render: (h, params) => {
let name = params.row.assayFee + params.row.checkFee;
return h('span', {}, name)
}
},
{
title: '医保支付',
align: "center",
key: 'insuranceMoneyTotal',
},
{
title: '个人负担',
align: "center",
key: 'realPaymentMoneyTotal',
},
{
title: '总费用',
align: "center",
key: 'totalFee',
},
],
dataList1: [],
columns2: [
{
title: '项目名称',
align: "center",
key: 'itemFee',
render: (h, params) => {
return h('span', {}, params.row.itemFee.productName)
}
},
{
title: '计数',
align: "center",
key: 'suppliesType',
render: (h, params) => {
return h('span', {}, params.row.count + " " +
params.row.itemFee.unit)
}
},
{
title: '种类',
align: "center",
key: 'insuranceModel',
render: (h, params) => {
let name = "";
if (params.row.itemFee.payModel == 1) {
name = "计费"
}
if (params.row.itemFee.payModel == 2) {
name = "自费"
}
if (params.row.itemFee.payModel == 3) {
name = "免费"
}
if (params.row.itemFee.payModel == 4) {
name = "代管"
}
return h('span', {}, name)
}
},
{
title: '医保支付',
align: "center",
key: 'insurancePrice',
},
{
title: '个人负担',
align: "center",
key: 'personalPrice',
}
],
dataList2: [],
active1Color: 'patient-list-content_active',
}
},
created: function () {
this.dateData = new Date()
},
mounted: function () {
//判断登录者设置颜色
var user = JSON.parse(localStorage.getItem('userState'));
if (user.user.identityOrder == 2) {
this.active1Color = 'patient-list-content_active1';
}
//设置 table 高度
var rem = parseInt($("html").css("fontSize"));
this.tableHeight = $(window).height() - 2.2 * rem;
this.loadList();
},
methods: {
loadList() {
this.dataList2 = [];//初始化右表格
var _this = this;
this.getData('patientFee/queryByMonth', {
treatmentModel: _this.EnterType,
payModel: _this.YbType,
date: _this.$refs.datas.visualValue + '-01',
}, function (data) {
_this.dataList1 = data;
if (data.length != 0) {
_this.id = data[0].patientId;
_this.detailList();
_this.dataList1[0]._highlight = true;//默认第一行高亮
}
}, true)
},
tabType(row) {
this.id = row.patientId;
this.detailList();
},
detailList() {
var _this = this;
if (this.dataList1.length != 0) { //判断是否需要发送请求
this.getData('patientFee/detailForMonth', {
patientId: _this.id,
treatmentModel: _this.EnterType,
payModel: _this.YbType,
date: _this.$refs.datas.visualValue + '-01',
chargingModel: _this.priceType,
}, function (data) {
_this.dataList2 = data;
}, true)
}
},
//模糊查找
search() {
let list = this.dataList1;
let name = this.searchPatient;
let newList = [];
if (this.searchFlag) {
//第一次拷贝原始数组
this.oldList = this.dataList1.concat();
this.searchFlag = false;
}
if (this.dataList1.length != this.oldList.length) {
//判断数据是否变化
list = this.oldList
}
for (var i = 0; i < list.length; i++) {
if (list[i].patientName.indexOf(name) >= 0 || name == ' ' ||
list[i].patientNamePinYin.toLocaleLowerCase().indexOf(name.toLowerCase()) >= 0) {
newList.push(list[i]);
}
}
this.dataList1 = newList;
}
}
}
</script>
<style>
#MonthCost .ivu-tooltip-rel{
width: 100%;
overflow: hidden ;
text-overflow: ellipsis;
white-space: nowrap;
}
#MonthCost .listTitle {
background: #fff;
line-height: 0.5rem;
padding: 0 0.2rem;
}
#MonthCost .ivu-form-item {
margin-bottom: 0 !important;
vertical-align: middle;
}
#MonthCost .dragInfoMan {
width: 0.9rem;
height: 0.3rem;
font-size: 0.14rem;
text-align: center;
line-height: 0.3rem;
cursor: pointer;
}
/*#MonthCost .ivu-table-row-highlight td {*/
/* background: #cbede5 !important;*/
/*}*/
#MonthCost .patient-list-content_active .ivu-table-row-highlight td {
background-color: #cbede5;
color: #5c6166;
font-size: 0.14rem;
}
#MonthCost .patient-list-content_active1 .ivu-table-row-highlight td {
background-color: #c9d0e7;
color: #5c6166;
font-size: 0.14rem;
}
#MonthCost .myTable {
padding: 0 0.2rem;
background-color: #fff;
}
#MonthCost .titleZY .ivu-form-item-label {
text-align: left;
}
#MonthCost .titleZY {
padding: 0;
}
</style>
<template>
<div id="SetCost">
<Row :gutter="20" class-name="record-warp">
<!--项目分类列表-->
<Col span="6" class-name="record-warp leftHeight">
<!--打包-->
<div class="record-list" style="margin-bottom:0.24rem;overflow-y:
auto;height:40%">
<Row class-name="record-list-top">
<Col span="24">
<span>打包报销</span>
</Col>
</Row>
<Row class-name="record-list-title bgcolorComm">
<Col span="9" class="overall_align_left">
<span>报销名称</span>
</Col>
<Col span="10" class="overall_align_left">
<span>次/方式</span>
</Col>
<Col span="5" class="overall_align_left">
<span>操作</span>
</Col>
</Row>
<div class="record-list-bottom">
<Row class-name="record-list-content"
v-for="(item,index) in leftData1" :key="item.id">
<Col span="9">
<span>{{item.name}}</span>
</Col>
<Col span="10">
<span v-if="item.useTag==0">{{item.countLimit}}次/不打包</span>
<span v-if="item.useTag==1">{{item.countLimit}}次
/{{item.rate*100}}%</span>
<span v-if="item.useTag==2">{{item.countLimit}}次/
¥{{item.priceLimit}}</span>
</Col>
<Col span="5" class="limit_list">
<span @click="YbModal(index)">
<!--修改-->
<Tooltip content="修改" placement="left" vif="item.hasNext==!0">
<img src="../../../assets/images/edit.png"
class="overall_detail_icon"/>
</Tooltip>
<Tooltip content="添加" placement="left" v-else>
<Icon type="ios-plus-empty"
class="overall_add_icon"></Icon>
</Tooltip>
</span>
</Col>
</Row>
</div>
</div>
<!--分类-->
<div class="record-list" style="height:57%">
<Row class-name="record-list-top">
<Col span="24">
<span>医疗项目分类</span>
</Col>
</Row>
<Row class-name="record-list-title bgcolorComm">
<Col span="9" class="overall_align_left">
<span>分类名称</span>
</Col>
<Col span="10" class="overall_align_left">
<span>省/市/居/农</span>
</Col>
<Col span="5" class="overall_align_left">
<span>操作</span>
</Col>
</Row>
<div class="record-list-bottom">
<Row class-name="record-list-content" :class="infoIndex ===
index?active1Color:''"
v-for="(item,index) in leftData" :key="item.id">
<Col span="8" @click.native="showInfo(index)"
class="overall_align_left">
<span>{{item.name}}</span>
</Col>
<Col span="12" @click.native="showInfo(index)"
class="overall_align_left">
<span>{{item.provinceDabao==1?'':(item.provinceUseTag==1)?item.provinceRate*100+'%':'-'}}/{{item.cityDabao==1?'':(item.cityUseTag==1)?item.cityRate*100+'%':'-'}}/{{item.residentsDabao==1?'':(item.residentsUseTag==1)?item.residentsRate*100+'%':''}}/{{item.ruralDabao==1?'-':(item.ruralUseTag==1)?item.ruralRate*100+'%':''}}</span>
</Col>
<Col span="4" class="limit_list">
<span @click="TypemModal(index)">
<Tooltip content="添加" placement="left">
<Icon type="ios-plus-empty"
class="overall_add_icon"></Icon>
</Tooltip>
</span>
</Col>
</Row>
</div>
</div>
</Col>
<!--内容区域-->
<Col span="18">
<!--项目价格列表-->
<Row class="listTitle clear">
<p style="font-size: 0.15rem" class="fl">项目价格列表</p>
<span @click="addCost" class="fr" style="margin-right: 0.24rem;">
<Tooltip content="添加" placement="left">
<Icon type="ios-plus-empty" class="overall_add_icon"></Icon>
</Tooltip>
</span>
</Row>
<Row class="myTable">
<Table :columns="columns1" :data="dataList1" no-data-text="暂无数据
" :height="tableHeight"></Table>
</Row>
</Col>
<!--打包弹框-->
<Modal id="modalSupplies2" v-model="modal2" :styles="{width:'7.4rem'}" @oncancel="cancleClick">
<div slot="header">
<span>打包类型设置</span>
</div>
<div>
<Form
ref="formDbModal" :model="formDbModal" :rules="ruleValidate1" :label-width="100">
<div class="borderBottomComm" style="margin-bottom: 0.24rem">
<Row style="margin-bottom: 0.12rem">
<Col span="4">当前使用</Col>
<Col span="9">启用日期:{{formDbModal.nowDateData}}</Col>
<Col span="6" v-if="formDbModal.nowtype==0">方式:不打包</Col>
<Col span="6" v-if="formDbModal.nowtype==1">方式:比例
  {{formDbModal.nowDbscale}}</Col>
<Col span="6" v-if="formDbModal.nowtype==2">方式:价格
  {{formDbModal.nowDbprice}}</Col>
<Col span="5">数量上限:{{formDbModal.nowDbNum}}</Col>
</Row>
</div>
<Row>
<Col span="12">
<FormItem prop="dateData" label="启用日期:">
<DatePicker :options="birthdays" type="date"
v-model="formDbModal.dateData" placeholder="请选择日
期">
</DatePicker>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule">*</span></Col>
<Col span="11">
<FormItem label="月次数上限:" prop="DbNum">
<Input v-model="formDbModal.DbNum"></Input>
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="选择方式:">
<Select v-model="formDbModal.type" placeholder="请选择">
<Option :value="0">不打包</Option>
<Option :value="1">比例打包</Option>
<Option :value="2">价格打包</Option>
</Select>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule"> </span></Col>
<Col span="11">
<FormItem label="比例报销:" prop="Dbscale" vif="formDbModal.type==1">
<Input vmodel="formDbModal.Dbscale" :disabled="formDbModal.Dbcheck==false"></Input>
</FormItem>
<FormItem label="价格报销:" prop="Dbprice" vif="formDbModal.type==2">
<Input vmodel="formDbModal.Dbprice" :disabled="formDbModal.Dbcheck==false"></Input>
</FormItem>
<FormItem label="打包报销:" prop="Dbprice" vif="formDbModal.type==0">
<Input disabled></Input>
</FormItem>
</Col>
</Row>
</Form>
</div>
<div slot="footer">
<span class="overall_sure_btn" @click="DbsaveClick">保 存</span>
<span class="overall_cancle_btn" @click="cancleClick">取 消</span>
</div>
</Modal>
<!--分类弹框-->
<Modal id="modalSupplies3" v-model="modal3" :styles="{width:'8rem'}" @oncancel="cancleClick2">
<div slot="header">
<span>项目报销设置</span>
</div>
<div>
<Form
ref="formTypeDate" :model="formTypeDate" :rules="ruleValidate1" :labelwidth="110">
<div class="borderBottomComm" style="margin-bottom: 0.24rem;">
<Row style="margin-bottom: 0.12rem">
<Col span="4">当前使用:</Col>
<Col span="8">启用日期:{{formTypeDate.nowDate}}</Col>
<Col span="12">
各项比例:
<span>省:{{formTypeDate.nowprovinceScale}}</span>
<span>市:{{formTypeDate.nowcityScale}}</span>
<span>居民:{{formTypeDate.nowresidentScale}}</span>
<span>农合:{{formTypeDate.nowruralScale}}</span>
</Col>
</Row>
</div>
<Row>
<Col span="12">
<FormItem prop="dateData" label="启用日期:">
<DatePicker :editable="false"
ref="updateDateType" :options="birthdays" type="date"
v-model="formTypeDate.dateData" placeholder="请选择
日期">
</DatePicker>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule">*</span></Col>
</Row>
<Row>
<Col span="12">
<FormItem label="省医保:">
<Select v-model="formTypeDate.provinceType" placeholder="请选择
">
<Option :value="0">不打包</Option>
<Option :value="1">比例打包</Option>
<Option :value="2">价格打包</Option>
</Select>
</FormItem>
</Col>
<Col span="12" v-if="formTypeDate.provinceType==1">
<FormItem label="比例报销:">
<Input vmodel="formTypeDate.provinceScale" :disabled="formTypeDate.provinceCheck==false"><
/Input>
</FormItem>
</Col>
<Col span="12" v-if="formTypeDate.provinceType==2">
<FormItem label="价格报销:">
<Input v-
model="formTypeDate.provinceLimit" :disabled="formTypeDate.provinceCheck==false"><
/Input>
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="市医保:">
<Select v-model="formTypeDate.cityType" placeholder="请选择">
<Option :value="0">不打包</Option>
<Option :value="1">比例打包</Option>
<Option :value="2">价格打包</Option>
</Select>
</FormItem>
</Col>
<Col span="12" v-if="formTypeDate.cityType==1">
<FormItem label="比例报销:">
<Input v-model="formTypeDate.cityScale"></Input>
</FormItem>
</Col>
<Col span="12" v-if="formTypeDate.cityType==2">
<FormItem label="价格报销:">
<Input v-model="formTypeDate.cityLimit"></Input>
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="居民医保:">
<Select v-model="formTypeDate.residentType" placeholder="请选择
">
<Option :value="0">不打包</Option>
<Option :value="1">比例打包</Option>
<Option :value="2">价格打包</Option>
</Select>
</FormItem>
</Col>
<Col span="12" v-if="formTypeDate.residentType==1">
<FormItem label="比例报销:">
<Input v-model="formTypeDate.residentScale"></Input>
</FormItem>
</Col>
<Col span="12" v-if="formTypeDate.residentType==2">
<FormItem label="价格报销:">
<Input v-model="formTypeDate.residentLimit"></Input>
</FormItem>
</Col>
</Row>
<Row>
<Col span="12">
<FormItem label="农合医保:">
<Select v-model="formTypeDate.ruralType" placeholder="请选择">
<Option :value="0">不打包</Option>
<Option :value="1">比例打包</Option>
<Option :value="2">价格打包</Option>
</Select>
</FormItem>
</Col>
<Col span="12" v-if="formTypeDate.ruralType==1">
<FormItem label="比例报销:">
<Input v-model="formTypeDate.ruralScale"></Input>
</FormItem>
</Col>
<Col span="12" v-if="formTypeDate.ruralType==2">
<FormItem label="价格报销:">
<Input v-model="formTypeDate.ruralLimit"></Input>
</FormItem>
</Col>
</Row>
</Form>
</div>
<div slot="footer">
<span class="overall_sure_btn" @click="typeSaveClick('formTypeDate')">保
 存</span>
<span class="overall_cancle_btn" @click="cancleClick2">取 消</span>
</div>
</Modal>
<!--新增-->
<Modal id="modalSupplies1" v-model="modal1" :styles="{width:'10rem'}" @oncancel="cancleClick1">
<div slot="header">
<span>{{modTitle}}</span>
</div>
<div>
<Form
ref="formValidate" :model="formValidate" :rules="ruleValidate1" :label-width="90">
<div class="borderBottomComm" style="margin-bottom: 0.24rem;">
<Row>
<Col span="8">
<FormItem prop="dateData" label="启用日期:">
<DatePicker :options="birthdays" type="date" vmodel="formValidate.dateData"
placeholder="请选择日期
" :clearable="false"></DatePicker>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule">*</span></Col>
</Row>
</div>
<Row>
<Col span="7">
<FormItem label="物品分类:">
<Select v-model="formValidate.type" placeholder="请选择" @onchange="loadName"
:disabled="disFlag">
<Option v-for="item in
formValidate.typeList" :value="item.id" :key="item.id+item.name">{{item.name}}</Op
tion>
</Select>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule">*</span></Col>
<Col span="9">
<FormItem prop="name" label="物品名称:">
<Select v-model="formValidate.name" placeholder="请选择" @onchange="loadUnitName()">
<Option v-for="(item ,index) in
formValidate.nameList" :value="item.id" :key="item.id+index">
{{!item.name?item.groupName:item.name}}
</Option>
</Select>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule">*</span></Col>
<Col span="6">
<FormItem label="最小规格:" prop="unit">
<Input v-model="formValidate.units==''?'次':formValidate.units"
disabled></Input>
</FormItem>
</Col>
</Row>
<Row>
<Col span="7">
<FormItem label="省医保:">
<Checkbox v-model="formValidate.provinceState">是否报销
</Checkbox>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule"> </span></Col>
<Col span="7">
<FormItem label="报销比例:">
<Input v-model="formValidate.provinceYb" placeholder="%"
:disabled="formValidate.provinceState==false"></Input>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule"> </span></Col>
<Col span="7">
<FormItem label="月数量上限:" prop="provinceYbTop" :labelwidth="110">
<Input vmodel="formValidate.provinceYbTop" :disabled="formValidate.provinceState==false"><
/Input>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule" style="color:
#000;font-size: 0.14rem;">{{formValidate.unit==undefined?'次
':formValidate.unit}}</span>
</Col>
</Row>
<Row>
<Col span="7">
<FormItem label="市医保:">
<Checkbox v-model="formValidate.cityState">是否报销</Checkbox>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule"> </span></Col>
<Col span="7">
<FormItem label="报销比例:">
<Input v-model="formValidate.cityYb" placeholder="%"
:disabled="formValidate.cityState==false"></Input>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule"> </span></Col>
<Col span="7">
<FormItem label="月数量上限:" prop="cityYbTop" :labelwidth="110">
<Input vmodel="formValidate.cityYbTop" :disabled="formValidate.cityState==false"></Input>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule" style="color:
#000;font-size: 0.14rem;">{{formValidate.unit==undefined?'次
':formValidate.unit}}</span>
</Col>
</Row>
<Row>
<Col span="7">
<FormItem label="居民报销:">
<Checkbox v-model="formValidate.residentState">是否报销
</Checkbox>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule"> </span></Col>
<Col span="7">
<FormItem label="报销比例:">
<Input v-model="formValidate.residentYb" placeholder="%"
:disabled="formValidate.residentState==false"></Input>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule"> </span></Col>
<Col span="7">
<FormItem label="月数量上限:" prop="residentYbTop" :labelwidth="110">
<Input vmodel="formValidate.residentYbTop" :disabled="formValidate.residentState==false"><
/Input>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule" style="color:
#000;font-size: 0.14rem;">{{formValidate.unit==undefined?'次
':formValidate.unit}}</span>
</Col>
</Row>
<Row>
<Col span="7">
<FormItem label="农合医保:">
<Checkbox v-model="formValidate.ruralState">是否报销</Checkbox>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule"> </span></Col>
<Col span="7">
<FormItem label="报销比例:">
<Input v-model="formValidate.ruralYb" placeholder="%"
:disabled="formValidate.ruralState==false"></Input>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule"> </span></Col>
<Col span="7">
<FormItem label="月数量上限:" prop="ruralYbTop" :labelwidth="110">
<Input vmodel="formValidate.ruralYbTop" :disabled="formValidate.ruralState==false"></Input
>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule" style="color:
#000;font-size: 0.14rem;">{{formValidate.unit==undefined?'次
':formValidate.unit}}</span>
</Col>
</Row>
<Row>
<Col span="23">
<FormItem label="备注:" prop="remark">
<Input v-model="formValidate.remark" number placeholder="请输入
"></Input>
</FormItem>
</Col>
</Row>
</Form>
</div>
<div slot="footer">
<span class="overall_sure_btn" @click="saveClick('formValidate',1)">保
 存</span>
<span class="overall_cancle_btn" @click="cancleClick1">取 消</span>
</div>
</Modal>
<!-- 修改-->
<Modal id="modalSupplies" v-model="modal" :styles="{width:'10rem'}" @oncancel="cancleClick3">
<div slot="header">
<span>{{modTitle}}</span>
</div>
<div>
<Form :model="formValidate" :label-width="90">
<div class="borderBottomComm" style="margin-bottom: 0.24rem;">
<Row>
<Col span="9">
<FormItem label="启用日期:">
<DatePicker :options="birthdays" type="date" vmodel="formValidate.dateData"
placeholder="请选择日期"></DatePicker>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule">*</span></Col>
</Row>
</div>
<Row>
<Col span="7">
<FormItem label="物品分类:">
<Input v-model="formValidate.type" disabled></Input>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule">*</span></Col>
<Col span="9">
<FormItem label="物品名称:">
<Input v-model="formValidate.names" disabled></Input>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule">*</span></Col>
<Col span="6">
<FormItem label="最小规格:">
<Input v-model="formValidate.units==''?'次':formValidate.units"
disabled></Input>
</FormItem>
</Col>
</Row>
<Row>
<Col span="7">
<FormItem label="省医保:">
<Checkbox v-model="formValidate.provinceState">是否报销
</Checkbox>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule"> </span></Col>
<Col span="7">
<FormItem label="报销比例:">
<Input v-model="formValidate.provinceYb" placeholder="%"
:disabled="formValidate.provinceState==false"></Input>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule"> </span></Col>
<Col span="7">
<FormItem label="月数量上限:" :label-width="100">
<Input vmodel="formValidate.provinceYbTop" :disabled="formValidate.provinceState==false"><
/Input>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule" style="color:
#000;font-size: 0.14rem;">{{formValidate.unit==undefined?'次
':formValidate.unit}}</span>
</Col>
</Row>
<Row>
<Col span="7">
<FormItem label="市医保:">
<Checkbox v-model="formValidate.cityState">是否报销</Checkbox>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule"> </span></Col>
<Col span="7">
<FormItem label="报销比例:">
<Input v-model="formValidate.cityYb" placeholder="%"
:disabled="formValidate.cityState==false"></Input>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule"> </span></Col>
<Col span="7">
<FormItem label="月数量上限:" :label-width="100">
<Input vmodel="formValidate.cityYbTop" :disabled="formValidate.cityState==false"></Input>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule" style="color:
#000;font-size: 0.14rem;">{{formValidate.unit==undefined?'次
':formValidate.unit}}</span>
</Col>
</Row>
<Row>
<Col span="7">
<FormItem label="居民报销:">
<Checkbox v-model="formValidate.residentState">是否报销
</Checkbox>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule"> </span></Col>
<Col span="7">
<FormItem label="报销比例:">
<Input v-model="formValidate.residentYb" placeholder="%"
:disabled="formValidate.residentState==false"></Input>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule"> </span></Col>
<Col span="7">
<FormItem label="月数量上限:" :label-width="100">
<Input vmodel="formValidate.residentYbTop" :disabled="formValidate.residentState==false"><
/Input>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule" style="color:
#000;font-size: 0.14rem;">{{formValidate.unit==undefined?'次
':formValidate.unit}}</span>
</Col>
</Row>
<Row>
<Col span="7">
<FormItem label="农合医保:">
<Checkbox v-model="formValidate.ruralState">是否报销</Checkbox>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule"> </span></Col>
<Col span="7">
<FormItem label="报销比例:">
<Input v-model="formValidate.ruralYb" placeholder="%"
:disabled="formValidate.ruralState==false"></Input>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule"> </span></Col>
<Col span="7">
<FormItem label="月数量上限:" :label-width="100">
<Input v-
model="formValidate.ruralYbTop" :disabled="formValidate.ruralState==false"></Input
>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule" style="color:
#000;font-size: 0.14rem;">{{formValidate.unit==undefined?'次
':formValidate.unit}}</span>
</Col>
</Row>
<Row>
<Col span="23">
<FormItem label="备注:">
<Input v-model="formValidate.remark" number placeholder="请输入
"></Input>
</FormItem>
</Col>
</Row>
</Form>
</div>
<div slot="footer">
<span class="overall_sure_btn" @click="saveClick('formValidate',2)">更
 新</span>
<span class="overall_cancle_btn" @click="cancleClick3">取 消</span>
</div>
</Modal>
</Row>
</div>
</template>
<script type='text/ecmascript-6'>
import deleteimg from "@/assets/images/delete.png";
import editimg from "@/assets/images/edit.png";
import expandRow from './SetCostData.vue';
export default {
data() {
return {
nameType: 0,
requ: true, //请求判断
addFlag: false,
deleteimg: deleteimg,
editimg: editimg,
modal: false, //修改药品弹框
modal1: false, //新增药品弹框
modal2: false, //打包弹框
modal3: false, //分类修改弹框
tableHeight: "",
modTitle: "",
birthdays: {
disabledDate(date) {
return date && date.valueOf() < Date.now();
}
},
openInfo: [], //展开数据
formValidate: {
id: '',
dateData: "",
type: "",
provinceYb: 100,
provinceYbTop: "",
provinceFlag: true,
provinceState: true,
name: "",
names: "",
nameId: 0,
cityYb: 100,
cityYbTop: "",
cityState: true,
cityFlag: true,
unit: "",
units: "",
residentYb: 100,
residentYbTop: "",
residentFlag: true,
residentState: true,
price: "",
ruralYb: 100,
ruralYbTop: "",
ruralFlag: true,
ruralState: true,
remark: "",
typeList: [],
nameList: [],
firstNameList: [], //储存第一次名称列表
firstNameFlag: true,
}, //新增项目
formDbModal: {
id: 0,
dateData: "",
type: 0,
DbNum: "",
Dbscale: "",
Dbprice: "",
// 当前
nowDateData: "",
nowTypeName: "",
nowType: 0,
nowDbNum: "",
nowDbscale: "",
nowDbprice: "",
}, //修改打包报销
formTypeDate: {
id: '',
dateData: "",
provinceType: "",
provinceScale: "",
provinceLimit: "",
cityType: "",
cityScale: "",
cityLimit: "",
residentType: "",
residentScale: "",
residentLimit: "",
ruralType: "",
ruralScale: "",
ruralLimit: "",
// now
nowDate: "",
nowprovinceScale: "",
nowcityScale: "",
nowresidentScale: "",
nowruralScale: "",
},//修改项目类别报销
infoIndex: 0,
infoId: 0,
disFlag: false,
//药品分类
drugType: [],
//透析耗材分类
regularDialysiType: [
{
name: "透析器",
id: 1,
}, {
name: "灌流器",
id: 2,
},
{
name: "血路管",
id: 3,
},
{
name: "穿刺针",
id: 4,
},
{
name: "透析液",
id: 5,
},
{
name: "护理包",
id: 6,
}],
userIndex: 0,
tableList: true,
leftData: [], //左表格数据
leftData1: [], //打包列表
columns1: [ // 表头
{
type: 'expand',
width: 35,
render: (h, params) => {
return h(expandRow, {
props: {
row: params.row,
},
})
}
},
{
title: '名称',
align: "left",
key: 'name',
width: 90,
},
{
title: '规格/单位',
align: "center",
key: 'unitName'
},
{
title: '市医保',
align: "center",
key: 'cityRate',
render: (h, params) => {
return h('span', {}, params.row.cityRate < 0 ? '-' :
params.row.cityRate * 100 + '%')
}
},
{
title: '省医保',
align: "center",
key: 'provinceRate',
render: (h, params) => {
return h('span', {}, params.row.provinceRate < 0 ? '-' :
params.row.provinceRate * 100 + '%')
}
},
{
title: '居民医保',
align: "center",
key: 'residentsRate',
render: (h, params) => {
return h('span', {}, params.row.residentsRate < 0 ? '-' :
params.row.residentsRate * 100 + '%')
}
},
{
title: '新农合',
align: "center",
key: 'ruralRate',
render: (h, params) => {
return h('span', {}, params.row.ruralRate < 0 ? '-' :
params.row.ruralRate * 100 + '%')
}
},
{
title: '备注',
align: "center",
key: 'remark',
},
{
title: '签名',
align: "center",
key: 'operationName',
},
{
title: '状态',
align: "left",
key: 'useTag',
render: (h, params) => {
if (params.row.useTag == -1) {
return h('span', {}, '已废弃')
} else if (params.row.useTag == 0) {
return h('span', {}, '未启用')
} else {
return h('span', {}, '已启用')
}
}
},
{
title: '操作',
key: 'edit',
align: "center",
render: (h, params) => {
return h('div', [
h('Tooltip', {
props: {
content: '修改',
placement: "left"
}
}, [
h('img', {
props: {
type: 'text',
size: 'large'
},
attrs: {
src: this.editimg,
style: 'width: 13px;margin-right: 10px;cursor: pointer;'
},
on: {
click: () => {
// this.addCost();
this.disFlag = true;
this.modTitle = '修改费用设置';
this.getCurrentData(params);
this.modal = true;
}
}
}, '')
]
),
h('Tooltip', {
props: {
content: '删除',
placement: "right"
}
}, [
h('img', {
props: {
type: 'text',
size: 'large'
},
attrs: {
src: this.deleteimg,
style: 'width: 13px;margin-left: 10px;cursor: pointer;'
},
on: {
click: () => {
this.confir(params);
}
}
}, '')
]
)
]);
}
}
],
dataList1: [], //右表格数据
ruleValidate1: {
//验证
name: [
{required: true, type: 'number', message: '请选择名称', trigger:
'change'}
],
dateData: [
{required: true, type: "date", message: '请选择启用日期', trigger:
'blur', pattern: /.+/}
],
provinceYbTop: [
{validator: this.$store.state.valNumberInt, name: "上限"}
],
cityYbTop: [
{validator: this.$store.state.valNumberInt, name: "上限"}
],
residentYbTop: [
{validator: this.$store.state.valNumberInt, name: "上限"}
],
ruralYbTop: [
{validator: this.$store.state.valNumberInt, name: "上限"}
],
provinceYb: [
{validator: this.$store.state.valNumberFloat, name: "省"}
],
cityYb: [
{validator: this.$store.state.valNumberFloat, name: "市"}
],
residentYb: [
{validator: this.$store.state.valNumberFloat, name: "居民"}
],
ruralYb: [
{validator: this.$store.state.valNumberFloat, name: "农合"}
],
remark: [
{validator: this.$store.state.valMaxString50, name: "备注"}
],
// 打包
DbNum: [
{validator: this.$store.state.valNumberInt, name: "次数"}
],
Dbprice: [
{validator: this.$store.state.valNumberInt, max: 9999, name: "次数"}
],
Dbscale: [
{validator: this.$store.state.valNumberFloat, max: 100, name: "次数"}
],
},
active1Color:'patient-list-content_active',
}
},
mounted: function () {
//判断登录者设置颜色
var user=JSON.parse(localStorage.getItem('userState'));
if(user.user.identityOrder==2){
this.active1Color = 'patient-list-content_active1';
}
var rem = parseInt($("html").css("fontSize"));
//设置 table 高度
this.tableHeight = $(window).height() - 2.2 * rem;
$('.leftHeight').height($(window).height() - 1.7 * rem);
this.moveModel("modalSetCost1");
},
created: function () {
this.loadData();//
获取药品分类
this.loadData1();//获取打包列表
this.queryDrugClassify()
},
methods: {
//获取打包列表
loadData1() {
var _this = this;
this.getData("overView/queryAll", {}, function (data) {
_this.leftData1 = data;
// console.log(data)
}, true)
},
//获取项目分类
loadData() {
var _this = this;
this.getData("insuranceMenus/getAllMenus", {}, function (data) {
_this.leftData = data;
// console.log(data)
_this.infoId = data[0].nameType;
_this.showInfo(0)
}, true)
},
showInfo(index) {
this.infoIndex = index;
this.infoId = this.leftData[index].nameType;
// 请求单挑数据
var _this = this;
this.getData("insuranceItem/queryByMenusId", {
menusId: _this.infoId,
pageNum: 1,
pageSize: 50
}, function (data) {
_this.dataList1 = data;
// console.log(data)
}, true);
this.disFlag = false; //分类初始化
this.formValidate.nameList = []; //物品分类初始化
},
addCost() {
this.$refs['formValidate'].resetFields();
//清空验证
let data = new Date();
data.setDate(data.getDate() + 1);
this.formValidate.dateData = data;
this.formValidate.type = "";
this.formValidate.provinceYb = 100;
this.formValidate.provinceYbTop = "";
this.formValidate.provinceState = true;
this.formValidate.name = "";
this.formValidate.names = "";
this.formValidate.cityYb = 100;
this.formValidate.cityYbTop = "";
this.formValidate.cityState = true;
this.formValidate.unit = "";
this.formValidate.units = "";
this.formValidate.residentYb = 100;
this.formValidate.residentYbTop = "";
this.formValidate.residentState = true;
this.formValidate.ruralYb = 100;
this.formValidate.ruralYbTop = "";
this.formValidate.ruralState = true;
this.formValidate.remark = "";
this.formValidate.typeList = [];
this.formValidate.nameList = [];
this.requ = false;
let id = this.infoId;
let _this = this;
// 分类数据处理
if (id == 4) {
this.formValidate.typeList = this.regularDialysiType;
} else if (id == 6) {
this.formValidate.typeList = this.drugType;
} else {
this.disFlag = true;
// 获取物品名称数据
this.getData("insuranceMenus/queryById", {
menusId: _this.infoId
}, function (data) {
_this.formValidate.nameList = data.resultList;
}, true)
}
this.modTitle = "新增费用设置";
this.modal1 = true;
},
cancleClick() {
this.formDbModal.type = 0;
this.formDbModal.DbNum = '';
this.formDbModal.Dbscale = '';
this.formDbModal.Dbprice = '';
this.formDbModal.nowTypeName = '';
this.formDbModal.nowDbNum = '';
this.formDbModal.nowDbscale = '';
this.formDbModal.nowDbprice = '';
this.formDbModal.dateData = new Date();
this.modal2 = false;
this.requ = true;
},
cancleClick2() {
//分类清空
this.formTypeDate.dateData = "";
this.formTypeDate.provinceType = 0;
this.formTypeDate.provinceScale = "";
this.formTypeDate.provinceLimit = "";
this.formTypeDate.cityType = 0;
this.formTypeDate.cityScale = "";
this.formTypeDate.cityLimit = "";
this.formTypeDate.residentType = 0;
this.formTypeDate.residentScale = "";
this.formTypeDate.residentLimit = "";
this.formTypeDate.ruralType = 0;
this.formTypeDate.ruralScale = "";
this.formTypeDate.ruralLimit = "";
this.modal3 = false;
},
cancleClick1() {
this.modal1 = false;
},
cancleClick3() {
this.modal = false;
},
//新增保存
saveClick(name, flag) {
var _this = this;
let provinceName = ""; //省
if(!_this.formValidate.provinceState){
provinceName = 0;
}else if(_this.formValidate.provinceYb == ''){
provinceName = 0
}else{
provinceName =_this.formValidate.provinceYb;
}
let cityName = ""; //省
if(!_this.formValidate.cityState){
cityName = 0;
}else if(_this.formValidate.cityYb == ''){
cityName = 0
}else{
cityName = _this.formValidate.cityYb;
}
let residentsName = ""; //省
if(!_this.formValidate.residentState){
residentsName = 0;
}else if(_this.formValidate.residentYb == ''){
residentsName = 0
}else{
residentsName = _this.formValidate.residentYb;
}
let ruralName = ""; //省
if(!_this.formValidate.ruralState){
ruralName = 0;
}else if(_this.formValidate.ruralYb == ''){
ruralName = 0
}else{
ruralName = _this.formValidate.ruralYb;
}
if (flag == 1) {
this.$refs[name].validate((valid) => {
if (valid) {
this.getData("insuranceItem/add", {
insuranceMenu: _this.infoId,
useFromTime: _this.formValidate.dateData.getFullYear() + '-' +
(_this.formValidate.dateData.getMonth() + 1) + '-' +
_this.formValidate.dateData.getDate(),
categoryName: _this.formValidate.type,
typeId: this.formValidate.name,
remark: _this.formValidate.remark,
provinceLimit: _this.formValidate.provinceYbTop == '' ? 10000 :
_this.formValidate.provinceYbTop,
provinceRate: provinceName,
cityLimit: _this.formValidate.cityYbTop == '' ? 10000 :
_this.formValidate.cityYbTop,
cityRate: cityName,
residentsLimit: _this.formValidate.residentYbTop == '' ? 10000 :
_this.formValidate.residentYbTop,
residentsRate: residentsName,
ruralLimit: _this.formValidate.ruralYbTop == '' ? 10000 :
_this.formValidate.ruralYbTop,
ruralRate: ruralName,
}, function (data) {
_this.showInfo(_this.infoIndex);
_this.modal1 = false;
}, true)
}
})
}
if (flag == 2) {
let date = "";
let type = typeof(this.formValidate.dateData)
if(type == 'string'){
date = this.formValidate.dateData;
}else{
date = this.formValidate.dateData.getFullYear() + '-' +
(this.formValidate.dateData.getMonth() + 1) + '-' +
this.formValidate.dateData.getDate();
}
this.getData("insuranceItem/update", {
insuranceMenu: _this.infoId,
useFromTime: date,
categoryName: _this.formValidate.type,
typeId: this.formValidate.nameId,
remark: _this.formValidate.remark,
provinceLimit: _this.formValidate.provinceYbTop == '' ? 10000 :
_this.formValidate.provinceYbTop,
provinceRate: provinceName,
cityLimit: _this.formValidate.cityYbTop == '' ? 10000 :
_this.formValidate.cityYbTop,
cityRate: cityName,
residentsLimit: _this.formValidate.residentYbTop == '' ? 10000 :
_this.formValidate.residentYbTop,
residentsRate: residentsName,
ruralLimit: _this.formValidate.ruralYbTop == '' ? 10000 :
_this.formValidate.ruralYbTop,
ruralRate: ruralName,
}, function (data) {
_this.showInfo(_this.infoIndex);
_this.modal = false;
}, true)
}
},
getCurrentData(data) {
this.$refs['formValidate'].resetFields();
//清空验证
let row = "";
//判断有无预设,是否启用
if (data.row.otherVersions.length != 0) {
row = data.row.otherVersions[0];
} else if (data.row.useTag == 0) {
row = data.row;
} else {
// 无数据
// console.log(data)
this.formValidate.type = data.row.categoryName;
this.formValidate.names = data.row.name;
this.formValidate.nameId = data.row.typeId;
let aa = new Date();
aa.setDate(aa.getDate() + 1);//data.getTime() + 24*60*60*1000
this.formValidate.dateData = aa;
return;
}
this.formValidate.dateData = row.useFromTime;
this.formValidate.type = row.categoryName;
this.formValidate.provinceYb = row.provinceRate == 1 ? 100 :
row.provinceRate * 100
this.formValidate.provinceYbTop = row.provinceLimit;
this.formValidate.names = row.name;
this.formValidate.nameId = row.typeId;
this.formValidate.cityYb = row.cityRate == 1 ? 100 : row.cityRate * 100
this.formValidate.cityYbTop = row.cityLimit;
this.formValidate.unit = row.unitName;
this.formValidate.residentYb = row.residentsRate == 1 ? 100 :
row.residentsRate * 100
this.formValidate.residentYbTop = row.residentsLimit;
this.formValidate.price = row.price;
this.formValidate.ruralYb = row.ruralRate == 1 ? 100 : row.ruralRate * 100
this.formValidate.ruralYbTop = row.ruralLimit;
this.formValidate.remark = row.remark;
},
confir(index) {
//删除一条费用
this.agent = index.row.id;
let _this = this;
this.showConFirm("确定删除该条信息?<br/>如果想恢复需手动添加", function
() {
_this.getData("insuranceItem/delete", {
itemId: _this.agent
}, function (data) {
_this.showInfo(_this.infoIndex);
});
});
},
// 获取药品分类
queryDrugClassify() {
let _this = this;
this.getData("drugCategory/queryAll.do", {}, function (data) {
_this.drugType = data;
}, true);
},
// 物品分类改变获取物品名称
loadName() {
this.requ = true;
if (this.requ) {
let _this = this;
let id = this.formValidate.type;
this.getData("insuranceMenus/queryById", {
menusId: _this.infoId,
// categoryId: _this.formValidate.type
categoryId: id,
}, function (data) {
_this.formValidate.nameList = data.resultList;
}, true)
}
},
// 查找规格单位
loadUnitName(index) {
let nameId = this.formValidate.name;
let nameList = this.formValidate.nameList;
for (let i in nameList) {
if (nameList[i].id == nameId) {
if (nameList[i].drugPackingSpecificationName != undefined) {
this.formValidate.unit = nameList[i].drugPackingSpecificationName;
if (nameList[i].value != '') {
this.formValidate.units = nameList[i].value + nameList[i].unitName
+ '/' + nameList[i].drugPackingSpecificationName;
}
} else {
this.formValidate.unit = nameList[i].unitName
}
break;
}
}
},
// 打包弹框
YbModal(index) {
//根据 ID 获取 name
if (this.leftData1[index].name == "省医保") {
this.formDbModal.id = 1;
}
if (this.leftData1[index].name == "市医保") {
this.formDbModal.id = 2;
}
if (this.leftData1[index].name == "城镇居民医保") {
this.formDbModal.id = 3;
}
if (this.leftData1[index].name == "农村合作医疗") {
this.formDbModal.id = 4;
}
//当前数据赋值
this.formDbModal.nowtype = this.leftData1[index].useTag;
this.formDbModal.nowDbNum = this.leftData1[index].countLimit;
this.formDbModal.nowDbscale = this.leftData1[index].rate * 100;
this.formDbModal.nowDbprice = this.leftData1[index].priceLimit;
this.formDbModal.nowTypeName = this.leftData1[index].name;
this.formDbModal.nowDateData = this.leftData1[index].useFromTime;
//未来版本赋值
if (this.leftData1[index].hasNext != null) {
this.formDbModal.type = this.leftData1[index].hasNext.useTag;
this.formDbModal.DbNum = this.leftData1[index].hasNext.countLimit;
this.formDbModal.Dbscale = this.leftData1[index].hasNext.rate * 100;
this.formDbModal.Dbprice = this.leftData1[index].hasNext.priceLimit;
this.formDbModal.dateData = this.leftData1[index].hasNext.useFromTime;
} else {
let data = new Date();
data.setDate(data.getDate() + 1);//data.getTime() + 24*60*60*1000
this.formDbModal.dateData = data;
}
this.modal2 = true;
},
// 打包修改保存
DbsaveClick(name) {
var _this = this;
let time = typeof (_this.formDbModal.dateData);
if (time == 'string') {
time = _this.formDbModal.dateData
} else {
time = _this.formDbModal.dateData.getFullYear() + '-' +
(_this.formDbModal.dateData.getMonth() + 1) + '-' +
_this.formDbModal.dateData.getDate();
}
this.getData("overView/modify", {
nameType: _this.formDbModal.id,
useTag: _this.formDbModal.type,
countLimit: _this.formDbModal.DbNum,
rate: _this.formDbModal.Dbscale,
priceLimit: _this.formDbModal.Dbprice,
useFromTime: time,
}, function (data) {
_this.loadData1();
_this.loadData();
_this.modal2 = false;
}, true)
},
// 分类修改弹框
TypemModal(index) {
this.infoId = this.leftData[index].nameType;
//设置当前各项比例
this.formTypeDate.nowDate = this.leftData[index].useFromTime;
if (this.leftData[index].provinceDabao == 1) {
this.formTypeDate.nowprovinceScale = "-";
} else {
this.formTypeDate.nowprovinceScale = this.leftData[index].provinceRate *
100
}
if (this.leftData[index].cityDabao == 1) {
this.formTypeDate.nowcityScale = "-";
} else {
this.formTypeDate.nowcityScale = this.leftData[index].cityRate * 100
}
if (this.leftData[index].residentsDabao == 1) {
this.formTypeDate.nowresidentScale = "-";
} else {
this.formTypeDate.nowresidentScale = this.leftData[index].residentsRate
* 100
}
if (this.leftData[index].ruralDabao == 1) {
this.formTypeDate.nowruralScale = "-";
} else {
this.formTypeDate.nowruralScale = this.leftData[index].ruralRate * 100
}
if (this.leftData[index].hasNext != null) {
this.formTypeDate.provinceType =
this.leftData[index].hasNext.provinceUseTag;
this.formTypeDate.provinceScale =
this.leftData[index].hasNext.provinceRate * 100;
this.formTypeDate.provinceLimit =
this.leftData[index].hasNext.provinceLimit;
this.formTypeDate.cityType = this.leftData[index].hasNext.cityUseTag;
this.formTypeDate.cityScale = this.leftData[index].hasNext.cityRate *
100;
this.formTypeDate.cityLimit = this.leftData[index].hasNext.cityLimit;
this.formTypeDate.residentType =
this.leftData[index].hasNext.residentsUseTag;
this.formTypeDate.residentScale =
this.leftData[index].hasNext.residentsRate * 100;
this.formTypeDate.residentLimit =
this.leftData[index].hasNext.residentsLimit;
this.formTypeDate.ruralType = this.leftData[index].hasNext.ruralUseTag;
this.formTypeDate.ruralScale = this.leftData[index].hasNext.ruralRate *
100;
this.formTypeDate.ruralLimit = this.leftData[index].hasNext.ruralLimit;
this.formTypeDate.dateData = this.leftData[index].hasNext.useFromTime;
} else {
let data = new Date();
data.setDate(data.getDate() + 1);
this.formTypeDate.dateData = data;
}
this.modal3 = true;
},
//分类修改
typeSaveClick(name) {
this.$refs[name].validate((valid) => {
if (valid) {
var _this = this;
this.getData("insuranceMenus/modify", {
nameType: _this.infoId,
useFromTime: _this.$refs.updateDateType.visualValue,
provinceUseTag: _this.formTypeDate.provinceType == '' ? 0 :
_this.formTypeDate.provinceType,
provinceRate: _this.formTypeDate.provinceScale == '' ? 100 :
_this.formTypeDate.provinceScale,
provinceLimit: _this.formTypeDate.provinceLimit == '' ? 0 :
_this.formTypeDate.provinceLimit,
cityUseTag: _this.formTypeDate.cityType == '' ? 0 :
_this.formTypeDate.cityType,
cityRate: _this.formTypeDate.cityScale == '' ? 100 :
_this.formTypeDate.cityScale,
cityLimit: _this.formTypeDate.cityLimit == '' ? 0 :
_this.formTypeDate.cityLimit,
residentsUseTag: _this.formTypeDate.residentType == '' ? 0 :
_this.formTypeDate.residentType,
residentsRate: _this.formTypeDate.residentScale == '' ? 100 :
_this.formTypeDate.residentScale,
residentsLimit: _this.formTypeDate.residentLimit = '' ? 0 :
_this.formTypeDate.residentLimit,
ruralUseTag: _this.formTypeDate.ruralType == '' ? 0 :
_this.formTypeDate.ruralType,
ruralRate: _this.formTypeDate.ruralScale == '' ? 100 :
_this.formTypeDate.ruralScale,
ruralLimit: _this.formTypeDate.ruralLimit == '' ? 0 :
_this.formTypeDate.ruralLimit
}, function (data) {
_this.loadData();
_this.cancleClick2();
_this.modal3 = false;
}, true)
}
})
},
},
}
</script>
<style>
#SetCost .record-list, .record-list1, #SetCost .record-content {
background: #fff;
border-radius: 0.05rem;
}
#SetCost .record-list .record-list-top {
line-height: 0.5rem;
height: 0.5rem;
font-size: 0.15rem;
color: #45494c;
padding: 0 0.1rem;
}
#SetCost .record-list .record-list-top .add_user {
text-align: right;
font-size: 0.3rem;
cursor: pointer;
}
#SetCost .record-list .record-list-title {
line-height: 0.36rem;
height: 0.36rem;
font-size: 0.14rem;
color: #fff;
padding: 0 0.1rem;
}
#SetCost .record-list .record-list-content {
line-height: 0.43rem;
font-size: 0.14rem;
color: #5c6166;
padding: 0 0.1rem;
cursor: pointer;
border-bottom: 1px solid #f0f0f2;
}
/*#SetCost .record-list .record_list_content_active {*/
/* background-color: #cbede5;*/
/*}*/
#SetCost .patient-list-content_active{
background-color: #cbede5;
color: #5c6166;
font-size: 0.14rem;
}
#SetCost
.patient-list-content_active1{
background-color: #c9d0e7;
color: #5c6166;
font-size: 0.14rem;
}
#SetCost .limit_list {
text-align: center;
}
#SetCost .limit_list span {
margin: 0 0.1rem;
}
#SetCost .listTitle {
background: #fff;
line-height: 0.5rem;
padding: 0 0.2rem;
}
.overall_basic_rule {
line-height: 0.34rem;
}
#SetCost .record-list .record-list-bottom {
overflow-y: auto;
}
#SetCost .ivu-table-expanded-cell {
padding: 0 !important;
}
#SetCost .myTable {
padding: 0 0.2rem;
background-color:#fff ;
overflow: auto;
overflow-x: hidden;
}
</style>
<template>
<div id="SetCostData">
<Table :columns="columns11" :data="row.otherVersions" no-data-text="暂无数据"
v-if="row.otherVersions!=''"></Table>
<div class="tab" v-if="row.otherVersions==''">暂无修改记录</div>
</div>
</template>
<script>
export default {
data(){
return {
columns11: [ // 表头
{
title: '名称',
align: "left",
key: 'name',
},
{
title: '省比例',
align: "left",
key: 'provinceRate',
render: (h,params)=>{
return h('span',{
},params.row.provinceRate<0?'-':params.row.provinceRate*100+'%')
}
},
{
title: '市比例',
align: "left",
key: 'cityRate',
render: (h,params)=>{
return h('span',{
},params.row.cityRate<0?'-':params.row.cityRate*100+'%')
}
},
{
title: '居民比例',
align: "left",
key: 'residentsRate',
render: (h,params)=>{
return h('span',{
},params.row.residentsRate<0?'-':params.row.residentsRate*100+'%')
}
},
{
title: '农合比例',
align: "left",
key: 'ruralRate',
render: (h,params)=>{
return h('span',{
},params.row.ruralRate<0?'-':params.row.ruralRate*100+'%')
}
},
{
title: '省上限',
align: "left",
key: 'provinceLimit'
},
{
title: '市上限',
align: "left",
key: 'cityLimit'
},
{
title: '居民上限',
align: "left",
key: 'residentsLimit'
},
{
title: '农合上限',
align: "left",
key: 'ruralLimit'
},
{
title: '备注',
align: "left",
key: 'remark',
},
{
title: '创建时间',
align: "left",
key: 'createTime'
},
{
title: '更新时间',
align: "left",
key: 'updateTime',
},
{
title: '状态',
align: "left",
key: 'useTag',
render:(h,params)=>{
// const text = '已废弃'
if(params.row.useTag == -1){
return h('span',{
},'已废弃')
}else if(params.row.useTag == 0){
return h('span',{
},'未启用')
}else{
return h('span',{
},'已启用')
}
}
},
{
title: '操作人',
align: "left",
key: 'operationName',
},
],
// dataList11: [], //右表格数据
}
},
props: {
row: Object
}
}
</script>
<style>
#SetCostData .tab{
text-align: center;
font-size: 0.12rem;
}
#SetCostData .expand-row {
line-height: 0.4rem;
margin: 0.2rem;
}
#SetCostData .ivu-table-expanded-cell{
padding: 0 !important;
}
#SetCostData .ivu-table th{
color: #000 !important;
background: none !important;
font-size: 0.12rem;
}
#SetCostData .ivu-table td{
background: rgb(247,249,250);
font-size: 0.12rem;
}
#SetCostData .ivu-table{
background: rgb(247,249,250);
}
</style>
<template>
<div id="YbReport">
<div class="yulanFixedDiv2 colorTextComm" style="cursor: pointer;;right:
0.2rem;" @click="yunlanPrintBtn1">
<span>
<img style="vertical-align: middle"
src="../../../assets/images/export.png" class="overall_export_icon"
v-show="showIcon"/>
<img style="vertical-align: middle"
src="../../../assets/images/export1.png" class="overall_export_icon"
v-show="!showIcon"/>
</span> <span style="vertical-align: bottom">导出详情</span>
</div>
<div class="yulanFixedDiv2 colorTextComm" style="cursor: pointer;;right:
1.1rem;margin-right: 0.1rem" @click="yunlanPrintBtn">
<span>
<img style="vertical-align: middle"
src="../../../assets/images/export.png" class="overall_export_icon"
v-show="showIcon"/>
<img style="vertical-align: middle"
src="../../../assets/images/export1.png" class="overall_export_icon"
v-show="!showIcon"/>
</span> <span style="vertical-align: bottom">导出</span>
</div>
<Row :gutter="16" class-name="YbReport-warp">
<!--内容区域 1-->
<Col span="16" class-name="YbReport-warp">
<Row class="listTitle">
<Form :label-width="100" inline>
<!--
<Col span="5" style="padding: 0">-->
<FormItem label="患者:" :label-width="60">
<Input type="text" icon="ios-search-strong" v-
model="searchPatient" placeholder="搜索患者"
@on-change="search" style="width: 1.2rem;"></Input>
</FormItem>
<!--
</Col>-->
<FormItem label="医保类型:">
<Select v-model="YbType" style="width: 1.2rem;" @on-
change="loadList">
<Option value="1">省医保</Option>
<Option value="2">市医保</Option>
<Option value="3">居民医保</Option>
<Option value="4">农合医保</Option>
<Option value="0">全部</Option>
</Select>
</FormItem>
<FormItem label="选择日期:">
<DatePicker v-model="dateData" style="width: 1.2rem" type="month"
ref="datas" placeholder="请选择日期"
:clearable="false" @on-change="loadList"></DatePicker>
</FormItem>
</Form>
</Row>
<Row class="myTable">
<Table :columns="columns1" :data="dataList1" :class="active1Color" nodata-text="暂无数据" :height="tableHeight"
@on-row-click="detailList" highlight-row></Table>
</Row>
</Col>
<!--内容区域 2-->
<Col span="8" class-name="YbReport-warp">
<Row class="listTitle" type="flex" align="middle" style="padding: 0
0.2rem">
<Col span="12" style="font-size: 0.15rem" class="titleZY">
预设治疗:
</Col>
<Col span="4">
<section class="dragInfoMan colorTextComm borderComm" @click="grasp">
抓取</section>
</Col>
<Col span="4">
<section class="dragInfoMan colorTextComm borderComm" @click="addPro">
添加</section>
</Col>
<Col span="4">
<section class="dragInfoMan colorTextComm borderComm"
@click="submits">确定</section>
</Col>
</Row>
<Row class="myTable">
<Table :columns="columns2" :data="dataList2" no-data-text="暂无数据
" :height="tableHeight/2"
style="border-bottom: 1px solid green"></Table>
<Table :columns="columns3" :data="dataList3" no-data-text="暂无数据
" :height="tableHeight/2"
:show-header="false"></Table>
</Row>
</Col>
</Row>
<!--新增/编辑常规耗材弹框-->
<Modal id="modalSupplies1" v-model="modal1" :styles="{width:'8.22rem'}" classname="overall_modal"
@on-cancel="cancleClick('formValidate')">
<div slot="header">
<span>{{modTitle}}</span>
</div>
<div>
<Form
ref="formValidate" :model="formValidate" :rules="ruleValidate" :label-width="110">
<div class="borderBottomComm colorTextComm">
<Row>
<Col span="8">
<FormItem style="margin: 0 0 0.24rem -1rem;" prop="dateData">
<DatePicker v-model="formValidate.dateData" ref="data"
style="width: 2rem" type="date"
placeholder="请选择日期
" :options="options1"></DatePicker>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule">*</span></Col>
</Row>
</div>
<Row style="margin-top: 0.24rem">
<Col span="11">
<FormItem label="项目分类:" prop="proType">
<Select v-model="formValidate.proType" placeholder="请选择" @onchange="loadUnitName">
<Option v-for="item in
formValidate.typeList" :value="item.id" :key="item.id">{{item.name}}</Option>
</Select>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule">*</span></Col>
<Col span="11">
<FormItem label="规格单位:">
<Input v-model="formValidate.unit" disabled></Input>
</FormItem>
</Col>
</Row>
<Row>
<Col span="11">
<FormItem label="项目名称:">
<Select v-model="formValidate.name" placeholder="请选择" @onchange="loadUnit">
<Option v-for="item in
formValidate.nameList" :value="item.typeId" :key="item.id">
{{item.name==undefined?item.groupName:item.name}}
</Option>
</Select>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule"> </span></Col>
<Col span="11">
<FormItem label="项目计数:" prop="num">
<Input v-model="formValidate.num" number placeholder="请输入
"></Input>
</FormItem>
</Col>
<Col span="1"><span class="overall_basic_rule">*</span></Col>
</Row>
</Form>
</div>
<div slot="footer">
<span class="overall_sure_btn" @click="saveClick('formValidate')" vif="updateFlag==false">保 存</span>
<span class="overall_sure_btn" @click="updateClick('formValidate')" velse>更 新</span>
<span class="overall_cancle_btn" @click="cancleClick('formValidate')">取
 消</span>
</div>
</Modal>
</div>
</template>
<script type='text/ecmascript-6'>
import Vue from "vue";
import Vuex from "vuex";
import deleteimg from "@/assets/images/delete.png";
import editimg from "@/assets/images/edit.png";
Vue.use(Vuex);
export default {
name: "YbReport",
data() {
return {
index:null,
topFlag: 0,
//判断是哪个修改
updateId: 0,
updateFlag: false,
modTitle: "",
deleteimg: deleteimg,
editimg: editimg,
formValidate: {
dateData: "",
proType: "",
name: "",
num: "",
unit: "",
categoryName:"",
typeList: [
{
id: 1,
name: "透析治疗"
},
{
id: 2,
name: "常规治疗"
},
{
id: 3,
name: "常规耗材"
},
{
id: 4,
name: "透析耗材"
},
{
id: 5,
name: "化验"
},
{
id: 6,
name: "药品"
},
{
id: 7,
name: "检查"
},
],
nameList: [],
// 请求所需字段
names: "",
price: "",
},
cacalFlag: true,
//新增时间限制
detailId: 0,
startTime: "",
endTime: "",
options1: {
disabledDate(date) {
let data = new Date();
let new_data = new Date(data.getFullYear(), data.getMonth() + 1, 0);
let start = data.getDate(); //获取当前日
let end = new_data.getDate() - start; //结束天数
return date && date.valueOf() < Date.now() - 86400000 * start ||
date.valueOf() > Date.now() + 86400000 * end;
}
},
searchFlag: true,
oldList: [],
showIcon: true,
tableHeight: "",
modal1: false,
EnterType: "",
YbType: "0",
WordType: "",
dateData: "",
searchPatient: "",
columns1: [
{
title: '姓名',
align: "center",
key: 'patientName',
render: (h, params) => {
return h('Tooltip', {
props: {
content: params.row.patientName,
placement: "right"
},
attrs: {
style: 'width:100%;overflow: hidden;text-overflow:
ellipsis;white-space: nowrap;'
},
},params.row.patientName
)
}
}, {
title: '医保类型',
align: "center",
key: 'paymentModelStr',
render: (h, params) => {
let name = "";
if(params.row.paymentModelStr == '农村合作医疗'){
name = "新农合"
}else{
name = params.row.paymentModelStr
}
return h('span', {}, name)
}
},
{
title: 'HD / 次',
align: "center",
key: 'countHd',
},
{
title: 'HDF / 次',
align: "center",
key: 'countHdf',
},
{
title: 'HP / 次',
align: "center",
key: 'countHp',
},
{
title: '充值金额',
align: "center",
key: 'rechargeFee',
},
{
title: '透析项目',
align: "center",
key: 'dialysisTreatmentFee',
},
{
title: '透析耗材',
align: "center",
key: 'dialysisSupplyFee',
},
{
title: '药费',
align: "center",
key: 'drugFee',
},
{
title: '费用金额',
align: "center",
key: 'totalFee',
},
{
title: '医保支付',
align: "center",
key: 'insuranceFee',
},
{
title: '个人自费',
align: "center",
key: 'persionalFee',
},
],
dataList1: [],
columns2: [
{
title: '日期',
align: "center",
key: 'dialysisDate',
width:120
},
{
title: '项目',
align: "center",
key: 'productName',
},
{
title: '计数',
align: "center",
key: 'count',
},
{
title: '操作',
key: 'edit',
align: "center",
render: (h, params) => {
return h('div', [
h('Tooltip', {
props: {
content: '修改',
placement: "left"
}
}, [
h('img', {
props: {
type: 'text',
size: 'large'
},
attrs: {
src: this.editimg,
style: 'width: 13px;margin-right: 10px;cursor: pointer;'
},
on: {
click: () => {
this.topFlag = 1;
this.modTitle = '修改项目';
this.cacalFlag = true;
this.updateFlag = true;
this.getCurrentData(params.row);
this.modal1 = true;
}
}
}, '')
]
),
h('Tooltip', {
props: {
content: '删除',
placement: "right"
}
}, [
h('img', {
props: {
type: 'text',
size: 'large'
},
attrs: {
src: this.deleteimg,
style: 'width: 13px;margin-left: 10px;cursor: pointer;'
},
on: {
click: () => {
this.confir(params);
}
}
}, '')
]
)
]);
}
}
],
dataList2: [],
columns3: [
{
title: '日期',
align: "center",
key: 'dialysisDate',
width:120
},
{
title: '项目',
align: "center",
key: 'productName',
},
{
title: '计数',
align: "center",
key: 'count',
},
{
title: '操作',
key: 'edit',
align: "center",
render: (h, params) => {
return h('div', [
h('Tooltip', {
props: {
content: '修改',
placement: "left"
}
}, [
h('img', {
props: {
type: 'text',
size: 'large'
},
attrs: {
src: this.editimg,
style: 'width: 13px;margin-right: 10px;cursor: pointer;'
},
on: {
click: () => {
this.topFlag = 2;
this.modTitle = '修改项目';
this.cacalFlag = true;
this.updateFlag = true;
this.getCurrentData(params.row);
this.modal1 = true;
}
}
}, '')
]
),
h('Tooltip', {
props: {
content: '删除',
placement: "right"
}
}, [
h('img', {
props: {
type: 'text',
size: 'large'
},
attrs: {
src: this.deleteimg,
style: 'width: 13px;margin-left: 10px;cursor: pointer;'
},
on: {
click: () => {
this.confir(params);
}
}
}, '')
]
)
]);
}
}
],
dataList3: [],
ruleValidate: {
dateData: [
{required: true, type: "date", message: '请选择日期', trigger:
'change'}
],
proType: [
{required: true, type: 'number', message: '项目分类不能为空', trigger:
'blur'}
],
// name: [
// {validator: this.$store.state.valNumberIntRquire, name: "项目名称"}
// ],
num: [
{validator: this.$store.state.valNumberIntRquire, name: "项目计数"}
],
},
active1Color:'patient-list-content_active',
}
},
created: function () {
this.dateData = new Date()
},
mounted: function () {
//判断登录者设置颜色
var user=JSON.parse(localStorage.getItem('userState'));
if(user.user.identityOrder==2){
this.active1Color = 'patient-list-content_active1';
}
//设置 table 高度
var rem = parseInt($("html").css("fontSize"));
this.tableHeight = $(window).height() - 2.2 * rem;
// this.loadHz();
// 导出
var user = JSON.parse(localStorage.getItem('userState'));
if (user.user.identityOrder == 2) {
this.showIcon = false;
}
this.loadList();
},
methods: {
loadList() {
this.dataList2 = [];//初始化右表格
this.dataList3 = [];//初始化右表格
var _this = this;
this.getData('insuranceReport/queryAll', {
paymentModel: _this.YbType,
date: _this.$refs.datas.visualValue + '-01',
}, function (data) {
_this.dataList1 = data;
if (data.length != 0) {
_this.detailId = data[0].id;
_this.dataList1[0]._highlight = true;//默认第一行高亮
_this.detailList()
}
}, true)
},
//查找详情列表
detailList(index) {
if (index != undefined) {
this.detailId = index.id;
}
let _this = this;
this.getData('insuranceReport/getPresetById', {
reportId: _this.detailId,
}, function (data) {
_this.dataList2 = data.presetList;
_this.dataList3 = data.historyList;
// console.log(data)
}, true)
},
addPro() {
this.$refs['formValidate'].resetFields();
//清空验证
this.modTitle = "新增项目"
this.modal1 = true;
this.cacalFlag = true;
this.formValidate.dateData = "";
this.formValidate.proType = "";
this.formValidate.name = "";
this.formValidate.num = "";
this.formValidate.unit = "";
this.formValidate.nameList = [];
},
//新增保存
saveClick(name) {
this.$refs[name].validate((valid) => {
if (valid) {
var _this = this
this.getData("insuranceReport/addPreset", {
reportId: _this.detailId,
dialysisDate: _this.$refs.data.visualValue,
menuId: _this.formValidate.proType,
count: _this.formValidate.num,
productId: _this.formValidate.name,
productName: _this.formValidate.names,
productPrice: _this.formValidate.price,
productUnit: _this.formValidate.unit,
categoryName: _this.formValidate.categoryName,
}, function (data) {
_this.detailList();
_this.cancleClick();
}, true)
}
})
},
//修改保存
updateClick(name) {
this.$refs[name].validate((valid) => {
if (valid) {
var _this = this;
this.getData("insuranceReport/modifyPreset", {
id: _this.updateId,
reportId: _this.detailId,
dialysisDate: _this.$refs.data.visualValue,
menuId: _this.formValidate.proType,
count: _this.formValidate.num,
productId: _this.formValidate.name,
productName: _this.formValidate.names,
productPrice: _this.formValidate.price,
productUnit: _this.formValidate.unit,
categoryName: _this.formValidate.categoryName,
}, function (data) {
if (_this.topFlag == 1) {
_this.detailList();
}
if (_this.topFlag == 2) {
_this.grasp();
}
_this.cancleClick();
}, true)
}
})
},
cancleClick(name) {
this.updateFlag = false;
this.cacalFlag = false;
// this.handleReset(name);
this.modal1 = false;
},
//下载
yunlanPrintBtn() {
let data = "date=" + this.$refs.datas.visualValue + '-01';
if(this.YbType != 0){
data+='&payment='+this.YbType;
}
let api = this.$store.state.hdmsHost;
window.open(api + "insuranceReport/downloadExcel?"+data);
},
yunlanPrintBtn1() {
let data = "date=" + this.$refs.datas.visualValue + '-01';
let api = this.$store.state.hdmsHost;
window.open(api + "insuranceReport/downloadExcelDetail?"+data);
},
search() {
let list = this.dataList1;
let name = this.searchPatient;
let newList = [];
if (this.searchFlag) {
//第一次拷贝原始数组
this.oldList = this.dataList1.concat();
this.searchFlag = false;
}
if (this.dataList1.length != this.oldList.length) {
//判断数据是否变化
list = this.oldList
}
for (var i = 0; i < list.length; i++) {
if (list[i].patientName.indexOf(name) >= 0 || name == ' ' ||
list[i].patientNamePinYin.toLocaleLowerCase().indexOf(name.toLowerCase()) >= 0) {
newList.push(list[i]);
}
}
this.dataList1 = newList;
},
// 查找分类名称
loadUnitName() {
// debugger
if(this.formValidate.proType!=undefined){
let id = this.formValidate.proType;
let _this = this;
if (this.cacalFlag) {
this.getData("insuranceItem/queryByMenusId", {
menusId: id,
pageNum: 1,
pageSize: 50,
}, function (data) {
_this.formValidate.nameList = data;
// console.log(data)
}, true)
}
}
},
//获取项目名称规格
loadUnit(index) {
for (let i in this.formValidate.nameList) {
if (this.formValidate.nameList[i].typeId == index) {
this.formValidate.unit = this.formValidate.nameList[i].unitName;
this.formValidate.names = this.formValidate.nameList[i].name;
this.formValidate.price = this.formValidate.nameList[i].price;
this.formValidate.categoryName =
this.formValidate.nameList[i].categoryName;
break;
}
}
},
//抓取
grasp() {
let _this = this;
this.getData('insuranceReport/grabPreset', {
reportId: _this.detailId,
}, function (data) {
_this.dataList3 = data;
}, true)
},
//删除一条费用
confir(index) {
let id = index.row.id;
let _this = this;
this.showConFirm("确定删除该条信息?<br/>如果想恢复需手动添加", function
() {
_this.getData("insuranceReport/deletePreset", {
id: id
}, function (data) {
_this.detailList();
});
},true);
},
// 修改赋值
getCurrentData(data) {
this.updateId = data.id;
//获取分类名称
this.formValidate.proType = data.menuId
this.loadUnitName();
this.formValidate.dateData = data.dialysisDate
this.formValidate.proType = data.menuId;
this.formValidate.name = data.productId;
this.formValidate.num = data.count;
this.formValidate.unit = data.productUnit;
this.formValidate.categoryName = data.categoryName;
},
//确认
submits() {
let id = this.detailId;
let _this = this;
this.getData('insuranceReport/confirm', {
reportId: id,
}, function (data) {
_this.dataList2 = [];
_this.dataList3 = [];
_this.loadList();
}, true)
}
}
}
</script>
<style>
#YbReport .ivu-tooltip-rel{
width: 100%;
overflow: hidden ;
text-overflow: ellipsis;
white-space: nowrap;
}
#YbReport .listTitle {
background: #fff;
line-height: 0.5rem;
padding: 0 0.2rem;
}
#YbReport .ivu-form-item {
margin-bottom: 0 !important;
vertical-align: middle;
}
#YbReport .dragInfoMan {
width: 0.6rem;
height: 0.25rem;
font-size: 0.14rem;
text-align: center;
line-height: 0.25rem;
cursor: pointer;
}
/*导出*/
#YbReport .yulanFixedDiv2 {
position: fixed;
z-index: 999;
top: 1.07rem;
font-size: 0.14rem;
padding-right: 20px;
}
/*#YbReport .ivu-table-row-highlight td {*/
/* background: #cbede5 !important;*/
/*}*/
#YbReport .patient-list-content_active .ivu-table-row-highlight td{
background-color: #cbede5;
color: #5c6166;
font-size: 0.14rem;
}
#YbReport
.patient-list-content_active1 .ivu-table-row-highlight td{
background-color: #c9d0e7;
color: #5c6166;
font-size: 0.14rem;
}
#YbReport .myTable {
padding: 0 0.2rem;
background-color:#fff ;
}
#YbReport .titleZY .ivu-form-item-label {
text-align: left;
}
#YbReport .titleZY {
padding: 0;
}
</style>
Download