Commit a32cab76 authored by yanglilong's avatar yanglilong

Merge branch 'yanglilong' of git.ssish.com:sunhailiang/bims into test

parents c485b1d7 1deab61b
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<title><%= webpackConfig.name %></title> <title><%= webpackConfig.name %></title>
<script <script
type="text/javascript" type="text/javascript"
src="//at.alicdn.com/t/font_3020450_c8k1zo91rcb.js" src="//at.alicdn.com/t/font_3020450_5d4bvzz8pmi.js"
></script> ></script>
</head> </head>
<body> <body>
......
// 收费查询api // 收费查询api
export default { export default {
querySendInfoList: "/backstage/auth/querySendInfoList", //查询寄送列表
deleteReceiptSendInfo:"/backstage/auth/deleteReceiptSendInfo",//删除寄送信息
saveReceipSendInfo:"/backstage/auth/saveReceipSendInfo",//保存理赔件账单寄送信息
querySendReceipList:"/backstage/auth/querySendReceipList",//查询寄送包含账单列表
queryNoSendReceipList:"/backstage/auth/queryNoSendReceipList",//待寄送账单查询
getChargeList: "/backstage/auth/receiptList", getChargeList: "/backstage/auth/receiptList",
getCompanyOptions: "/backstage/auth/payorListNopage", getCompanyOptions: "/backstage/auth/payorListNopage",
getDoctorListNoPage:"/backstage/auth/doctorListNoPage",//医生列表 getDoctorListNoPage:"/backstage/auth/doctorListNoPage",//医生列表
getChargeListDetail:"/backstage/auth/receiptDetailList",//账单明细 getChargeListDetail:"/backstage/auth/receiptDetailList",//账单明细
getReceiptPaymentDetail:"/backstage/auth/receiptPaymentDetail",//账单明细 getReceiptPaymentDetail:"/backstage/auth/receiptPaymentDetail",//账单明细
queryCiReceipSendList:"/backstage/auth/queryCiReceipSendList",//理赔件账单寄送查询 queryCiReceipSendList:"/backstage/auth/queryCiReceipSendList",//理赔件账单寄送查询
saveReceipSendInfo:"/backstage/auth/saveReceipSendInfo",//保存理赔件账单寄送信息
deleteReceiptSendInfo:"/backstage/auth/deleteReceiptSendInfo",//删除寄送信息
}; };
// 核销管理api // 核销管理api
export default { export default {
queryCiReceipSendList: "/backstage/auth/queryEobReceiptList", //EOB待核销账单查询 queryEobList: "/backstage/auth/queryEobList", //EOB列表查询
queryEobReceiptList: "/backstage/auth/queryEobReceiptList", //EOB待核销账单查询
queryEobNeedReceiptList: "/backstage/auth/queryEobNeedReceiptList", //EOB待确认账单列表查询
deleteEobReceiptInfo: "/backstage/auth/deleteEobReceiptInfo", //删除EOB deleteEobReceiptInfo: "/backstage/auth/deleteEobReceiptInfo", //删除EOB
saveEobReceiptInfo: "/backstage/auth/saveEobReceiptInfo", //EOB新建 saveEobReceiptInfo: "/backstage/auth/saveEobReceiptInfo", //EOB新建
queryEobInfoList: "/backstage/auth/queryEobInfoList", //回款EOB列表查询
queryBackMoneyList: "/backstage/auth/queryBackMoneyList", //回款列表
queryBackEobList: "/backstage/auth/queryBackEobList", //回款关联EOB列表查询
queryEobInfoList: "/backstage/auth/queryEobInfoList", //待回款EOB列表查询
saveBackMoney: "/backstage/auth/saveBackMoney", //新建回款 saveBackMoney: "/backstage/auth/saveBackMoney", //新建回款
deleteBackMoney: "/backstage/auth/deleteBackMoney", //删除回款 deleteBackMoney: "/backstage/auth/deleteBackMoney", //删除回款
}; };
// 收费查询函数库 // 收费查询函数库
import apis from "../apis_moudles/"; import apis from "../apis_moudles/";
import req from "../request"; import req from "../request";
// 查询寄送列表
const QUERYSENDINFOLIST = function (data) {
return req.post(apis.querySendInfoList, data);
};
// 删除寄送信息
const DELETERECEIPTSENDINFO= function (data) {
return req.post(apis.deleteReceiptSendInfo, data);
};
// 保存理赔件账单寄送信息
const SAVERECEIPSENDINFO= function (data) {
return req.post(apis.saveReceipSendInfo, data);
};
// 查询寄送包含账单列表
const QUERYSENDRECEIPLIST = function (data) {
return req.post(apis.querySendReceipList, data);
};
// 待寄送账单查询
const QUERYNOSENDRECEIPLIST = function (data) {
return req.post(apis.queryNoSendReceipList, data);
};
// get charge list // get charge list
const GETCHARGELIST = function (data) { const GETCHARGELIST = function (data) {
return req.post(apis.getChargeList, data); return req.post(apis.getChargeList, data);
...@@ -25,22 +45,21 @@ const GETRECEIPTPAYMENTDETAIL= function (data) { ...@@ -25,22 +45,21 @@ const GETRECEIPTPAYMENTDETAIL= function (data) {
const QUERYCIRECEIPSENDLIST= function (data) { const QUERYCIRECEIPSENDLIST= function (data) {
return req.post(apis.queryCiReceipSendList, data); return req.post(apis.queryCiReceipSendList, data);
}; };
// 保存理赔件账单寄送信息
const SAVERECEIPSENDINFO= function (data) {
return req.post(apis.saveReceipSendInfo, data);
};
// 删除寄送信息
const DELETERECEIPTSENDINFO= function (data) {
return req.post(apis.deleteReceiptSendInfo, data);
};
// 对象数组 // 对象数组
export default { export default {
QUERYSENDINFOLIST,
DELETERECEIPTSENDINFO,
SAVERECEIPSENDINFO,
QUERYSENDRECEIPLIST,
QUERYNOSENDRECEIPLIST,
GETCHARGELIST, GETCHARGELIST,
GETCOMPANYOPTIONS, GETCOMPANYOPTIONS,
GETDOCTORlISTNOPAGE, GETDOCTORlISTNOPAGE,
GETCHARGELISTDETAIL, GETCHARGELISTDETAIL,
GETRECEIPTPAYMENTDETAIL, GETRECEIPTPAYMENTDETAIL,
QUERYCIRECEIPSENDLIST, QUERYCIRECEIPSENDLIST,
SAVERECEIPSENDINFO,
DELETERECEIPTSENDINFO,
}; };
...@@ -2,9 +2,17 @@ ...@@ -2,9 +2,17 @@
import apis from "../apis_moudles/verification.js"; import apis from "../apis_moudles/verification.js";
import req from "../request"; import req from "../request";
//EOB列表查询
const QUERYEOBLIST = (data) => {
return req.post(apis.queryEobList, data);
};
//EOB待核销账单查询 //EOB待核销账单查询
const QUERYCIRECEIPSENDLIST = (data) => { const QUERYEOBRECEIPTLIST = (data) => {
return req.post(apis.queryCiReceipSendList, data); return req.post(apis.queryEobReceiptList, data);
};
//EOB待确认账单列表查询
const QUERYEOBNEEDRECEIPTLIST = (data) => {
return req.post(apis.queryEobNeedReceiptList, data);
}; };
//EOB新建 //EOB新建
...@@ -17,8 +25,16 @@ const DELEOBRECEIPTINFO = (data) => { ...@@ -17,8 +25,16 @@ const DELEOBRECEIPTINFO = (data) => {
return req.post(apis.deleteEobReceiptInfo, data); return req.post(apis.deleteEobReceiptInfo, data);
}; };
//回款EOB列表查询 //回款列表
const QUERYEOBRECEIPTINFO = (data) => { const QUERYBACKMONEYLIST = (data) => {
return req.post(apis.queryBackMoneyList, data);
};
//回款关联EOB列表查询
const QUERYBACKEOBLIST = (data) => {
return req.post(apis.queryBackEobList, data);
};
//待回款EOB列表查询
const QUERYEOBINFOLIST = (data) => {
return req.post(apis.queryEobInfoList, data); return req.post(apis.queryEobInfoList, data);
}; };
...@@ -34,10 +50,14 @@ const DELETEBACKMONEY = (data) => { ...@@ -34,10 +50,14 @@ const DELETEBACKMONEY = (data) => {
// 对象数组 // 对象数组
export default { export default {
QUERYCIRECEIPSENDLIST, QUERYEOBLIST,
QUERYEOBRECEIPTLIST,
QUERYEOBNEEDRECEIPTLIST,
SAVEEOBRECEIPTINFO, SAVEEOBRECEIPTINFO,
DELEOBRECEIPTINFO, DELEOBRECEIPTINFO,
QUERYEOBRECEIPTINFO, QUERYBACKMONEYLIST,
QUERYBACKEOBLIST,
QUERYEOBINFOLIST,
SAVEBACKMONEY, SAVEBACKMONEY,
DELETEBACKMONEY, DELETEBACKMONEY,
}; };
\ No newline at end of file
...@@ -19,6 +19,11 @@ export default { ...@@ -19,6 +19,11 @@ export default {
path: "lpjManage", path: "lpjManage",
name: "chargeQueryLpjManage", name: "chargeQueryLpjManage",
component: () => import(/* webpackChunkName: "chargeQuery" */"@/views/charge-query/lpjManage.vue") component: () => import(/* webpackChunkName: "chargeQuery" */"@/views/charge-query/lpjManage.vue")
},
{
path: "lpjManageDetail",
name: "chargeQueryLpjManageDetail",
component: () => import(/* webpackChunkName: "chargeQuery" */"@/views/charge-query/lpjManageDetail.vue")
} }
] ]
}; };
...@@ -68,18 +68,10 @@ export default [ ...@@ -68,18 +68,10 @@ export default [
path: "/verification", path: "/verification",
title: "EOB管理", title: "EOB管理",
}, },
{
path: "/verification/addEOB",
title: "新建EOB数据",
},
{ {
path: "/verification/collection", path: "/verification/collection",
title: "回款管理", title: "回款管理",
}, },
{
path: "/verification/collectionAdd",
title: "新建回款管理",
},
], ],
}, },
{ {
......
...@@ -11,9 +11,9 @@ export default { ...@@ -11,9 +11,9 @@ export default {
component: () => import("@/views/verification/index"), component: () => import("@/views/verification/index"),
}, },
{ {
path: "addEOB", path: "detail",
name: "VerificationAddEOB", name: "VerificationIndexDetail",
component: () => import("@/views/verification/addEOB"), component: () => import("@/views/verification/indexDetail"),
}, },
{ {
path: "collection", path: "collection",
...@@ -21,9 +21,9 @@ export default { ...@@ -21,9 +21,9 @@ export default {
component: () => import("@/views/verification/collection"), component: () => import("@/views/verification/collection"),
}, },
{ {
path: "collectionAdd", path: "collectionDetail",
name: "VerificationCollectionAdd", name: "VerificationCollectionDetail",
component: () => import("@/views/verification/collectionAdd"), component: () => import("@/views/verification/collectionDetail"),
}, },
], ],
}; };
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<a-range-picker format="YYYY年MM月DD日" v-model="form.dateRange" :placeholder="['开始日期', '结束日期']" /> <a-range-picker format="YYYY年MM月DD日" v-model="form.dateRange" :placeholder="['开始日期', '结束日期']" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :lg="4" :sm="12"> <a-col :lg="8" :sm="12">
<a-form-model-item label="保险公司"> <a-form-model-item label="保险公司">
<a-select v-model="form.payorCode" placeholder="请选择保险公司" allowClear> <a-select v-model="form.payorCode" placeholder="请选择保险公司" allowClear>
<a-select-option v-for="item in companyOptions" :key="item.id" :value="item.payorCode"> <a-select-option v-for="item in companyOptions" :key="item.id" :value="item.payorCode">
...@@ -18,65 +18,34 @@ ...@@ -18,65 +18,34 @@
</a-select> </a-select>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :lg="4" :sm="12"> <a-col :lg="8" :sm="12">
<a-form-model-item label="理赔状态">
<a-select v-model="form.sendSts" placeholder="请选择理赔状态" allowClear>
<a-select-option :value="1">已寄送</a-select-option>
<a-select-option :value="2">未寄送</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
</a-row>
<a-row :gutter="30">
<!-- <a-col :lg="7" :sm="12">
<a-form-model-item label="寄送批号"> <a-form-model-item label="寄送批号">
<a-input v-model="form.sendBatchNo" placeholder="请输入寄送批号" allow-clear /> <a-input v-model="form.sendBatchNo" placeholder="请输入寄送批号" allow-clear />
</a-form-model-item> </a-form-model-item>
</a-col> -->
<a-col :lg="6" :sm="12">
<a-form-model-item label="寄送方式">
<a-select v-model="form.sendMode" placeholder="请选择寄送方式" allowClear>
<a-select-option :value="1">快递</a-select-option>
<a-select-option :value="2">邮件</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :lg="4" :sm="12">
<a-form-model-item label="寄送日期">
<a-date-picker format="YYYY年MM月DD日" v-model="form.sendDate" placeholder="选择日期" />
</a-form-model-item>
</a-col> </a-col>
<a-col :lg="4" :sm="12"> </a-row>
<a-row :gutter="30">
<a-col :lg="8" :sm="12">
<a-form-model-item label="快递公司"> <a-form-model-item label="快递公司">
<a-select v-model="form.sendCompany" placeholder="请选择快递公司" showSearch allowClear> <a-select v-model="form.sendCompany" placeholder="请选择快递公司" showSearch allowClear>
<a-select-option v-for="(item) in expressList" :key="item.id" :value="item.descCh">{{item.descCh}}</a-select-option> <a-select-option v-for="(item) in expressList" :key="item.id" :value="item.descCh">{{item.descCh}}</a-select-option>
</a-select> </a-select>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :lg="7" :sm="12"> <a-col :lg="8" :sm="12">
<a-form-model-item label="快递单号"> <a-form-model-item label="快递单号">
<a-input v-model="form.trackingNo" placeholder="请输入快递单号" allow-clear /> <a-input v-model="form.trackingNo" placeholder="请输入快递单号" allow-clear />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :lg="9" :sm="12">
<a-form-model-item label="寄送地址">
<a-input v-model="form.sendAddress" placeholder="请输入寄送地址" allow-clear />
</a-form-model-item>
</a-col>
<a-col :lg="7" :sm="12">
<a-form-model-item label="邮箱">
<a-input v-model="form.sendEmail" placeholder="请输入邮箱" allow-clear />
</a-form-model-item>
</a-col>
<a-col :lg="8" :sm="12"> <a-col :lg="8" :sm="12">
<a-form-model-item label="寄送备注"> <a-form-model-item label="账单编号">
<a-input v-model="form.sendRemark" placeholder="请输入寄送备注" allow-clear /> <a-input v-model="form.receiptNo" placeholder="请输入账单编号" allow-clear />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :sm="24" class="none-label"> <a-col :sm="24" class="none-label">
<div class="btn-div flex"> <div class="btn-div flex">
<a-button>更新数据</a-button> <span></span>
<a-form-model-item label="button"> <a-form-model-item label="button">
<a-button class="mar-left10" type="primary" @click="addNewCharge"> <a-button class="mar-left10" type="primary" @click="addNewCharge">
<Icon name="ssiadd" :size="14" />新建寄送</a-button> <Icon name="ssiadd" :size="14" />新建寄送</a-button>
...@@ -93,61 +62,20 @@ ...@@ -93,61 +62,20 @@
</a-form-model> </a-form-model>
<!-- table --> <!-- table -->
<a-table :columns="columns" :data-source="dataList" :scroll="{ x: true }" :pagination="false" <a-table :columns="columns" :data-source="dataList" :scroll="{ x: true }" :pagination="false">
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }">
<template slot="sendDate" slot-scope="text"> <template slot="sendDate" slot-scope="text">
{{ text? moment(text).format('YYYY-MM-DD'): '' }} {{ text? moment(text).format('YYYY-MM-DD'): '' }}
</template> </template>
<template slot="sendSts" slot-scope="text">
{{ text==1?'已寄送':'未寄送' }}
</template>
<template slot="operation" slot-scope="text, record, index"> <template slot="operation" slot-scope="text, record, index">
<a-button type="link" @click.stop="editEvt(record)">修改</a-button> <a-button type="link" @click.stop="editEvt(record)">编辑</a-button>
<a-button type="link" class="danger" @click.stop="delRecord(index)">删除</a-button> <a-button type="link" class="danger" @click.stop="delRecord(index)">删除</a-button>
</template> </template>
</a-table> </a-table>
<!--分页--> <!--分页-->
<BurtPagination :pagination="pagination" @pageChange="getData" /> <BurtPagination :pagination="pagination" @pageChange="getData" />
<a-modal title="编辑" :visible="dialogShow" width="700px" :maskClosable="false"
okText="确定" cancelText="取消"
@ok="handleEditOK" @cancel="dialogShow = false">
<a-form-model ref="editForm" :model="editFormObj" :rules="editRules">
<a-row :gutter="30">
<a-col :lg="12" :xs="24">
<a-form-model-item label="保险公司" prop="payorCode">
<a-select v-model="editFormObj.payorCode" placeholder="请选择保险公司" allowClear>
<a-select-option v-for="item in companyOptions" :key="item.id" :value="item.payorCode">
{{ item.longName }}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :lg="12" :sm="24">
<a-form-model-item label="寄送状态" prop="sendSts">
<a-select v-model="editFormObj.sendSts" placeholder="请选择寄送状态" allowClear>
<a-select-option :value="1">已寄送</a-select-option>
<a-select-option :value="2">未寄送</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :lg="12" :sm="24">
<a-form-model-item label="寄送日期" prop="sendDate">
<a-date-picker format="YYYY年MM月DD日" v-model="editFormObj.sendDate" placeholder="选择日期" />
</a-form-model-item>
</a-col>
<a-col :lg="12" :xs="24">
<a-form-model-item label="快递单号" prop="trackingNo">
<a-input v-model.trim="editFormObj.trackingNo" placeholder="快递单号" />
</a-form-model-item>
</a-col>
</a-row>
<a-row :gutter="30">
<a-col :lg="12" :xs="24">
<a-form-model-item label="寄送备注" prop="sendRemark">
<a-textarea v-model.trim="editFormObj.sendRemark" placeholder="寄送备注" />
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
</a-modal>
</div> </div>
</template> </template>
...@@ -174,40 +102,22 @@ export default { ...@@ -174,40 +102,22 @@ export default {
]; ];
return { return {
loading: false, loading: false,
dialogShow: false,
columns, columns,
form: { form: {
dateRange: [], dateRange: [],
payorCode: '', payorCode: '',
sendSts: '', sendBatchNo: '',
sendMode: '',
sendDate: '',
sendCompany: '',
trackingNo: '', trackingNo: '',
sendAddress: '', receiptNo: '',
sendEmail: '',
sendRemark: ''
}, },
companyOptions: [], //保险公司 companyOptions: [], //保险公司
expressList: [], //快递列表 expressList: [], //快递列表
selectedRowKeys: [], // Check here to configure the default column
dataList: [], dataList: [],
pagination: { pagination: {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
total: 0, total: 0,
}, },
editFormObj: {
payorCode: '',
sendSts: '',
sendDate: '',
trackingNo: '',
sendRemark: '',
},
editRules: {
sendDate: [{ required: true, message: "请选择寄送日期", trigger: "change" }],
trackingNo: [{ required: true, message: "请输入寄送单号", trigger: "blur" }],
},
}; };
}, },
components: { components: {
...@@ -220,30 +130,17 @@ export default { ...@@ -220,30 +130,17 @@ export default {
}, },
methods: { methods: {
moment, moment,
onSelectChange(selectedRowKeys) {
let arr = [];
for(let i=0; i<selectedRowKeys.length; i++){
let idx = selectedRowKeys[i];
if(this.dataList[idx].sendBatchNo){
this.$msg.destroy();
this.$message.warning('寄送批号已存在')
}else{
arr.push(idx);
}
}
this.selectedRowKeys = arr;
},
// 获取列表数据 // 获取列表数据
getData() { getData() {
this.selectedRowKeys = [];
let filter = { let filter = {
pageNum: this.pagination.pageNum, pageNum: this.pagination.pageNum,
pageSize: this.pagination.pageSize, pageSize: this.pagination.pageSize,
...this.form, ...this.form,
sendDate: this.form.sendDate?moment(this.form.sendDate).format('YYYY-MM-DD 00:00:00'):'' visitTimeStart: this.form.dateRange[0]?moment(this.form.dateRange[0]).format('YYYY-MM-DD 00:00:00'):'',
visitTimeEnd: this.form.dateRange[1]?moment(this.form.dateRange[1]).format('YYYY-MM-DD 00:00:00'):'',
} }
delete filter.dateRange; delete filter.dateRange;
this.$apis.QUERYCIRECEIPSENDLIST(filter) this.$apis.QUERYSENDINFOLIST(filter)
.then((res) => { .then((res) => {
if (res.returnCode == "0000") { if (res.returnCode == "0000") {
let content = res.content || {}; let content = res.content || {};
...@@ -274,58 +171,18 @@ export default { ...@@ -274,58 +171,18 @@ export default {
this.form = { this.form = {
dateRange: [], dateRange: [],
payorCode: '', payorCode: '',
sendSts: '', sendBatchNo: '',
sendMode: '',
sendDate: '',
sendCompany: '',
trackingNo: '', trackingNo: '',
sendAddress: '', receiptNo: '',
sendEmail: '',
sendRemark: ''
} }
}, },
//查看 //编辑
detailEvt(record) {
const { receiptNo } = record;
this.$router.push({
name: "chargeQueryDetail",
query: { receiptNo },
});
},
editEvt(record) { editEvt(record) {
this.editFormObj = { const { sendBatchNo } = record;
ciReceiptSendVos: [ localStorage.setItem('jisongDataDetail', JSON.stringify(record));
{ this.$router.push({
id: record.id, path: "/charge-query/lpjManageDetail",
receiptNo: record.receiptNo, query: { sendBatchNo },
}
],
payorCode: record.payorCode || "",
sendSts: Number(record.sendSts) || "",
sendDate: record.sendDate || "",
trackingNo: record.trackingNo || "",
sendRemark: record.sendRemark || "",
};
this.dialogShow = true;
},
//编辑保存
handleEditOK() {
this.$refs.editForm.validate((valid) => {
if (valid) {
this.$apis.SAVERECEIPSENDINFO({
...this.editFormObj,
sendDate: moment(this.editFormObj.sendDate).format('YYYY-MM-DD 00:00:00')
})
.then((res) => {
if (res.returnCode == "0000") {
this.$message.success("编辑成功");
this.dialogShow = false;
this.getData();
} else {
this.$message.error(res.returnMsg);
}
});
}
}); });
}, },
handlerSearch() { handlerSearch() {
...@@ -356,46 +213,9 @@ export default { ...@@ -356,46 +213,9 @@ export default {
}, },
//新建寄送 //新建寄送
addNewCharge(){ addNewCharge(){
if(!this.form.dateRange[0]){ this.$router.push({
this.$message.warning("请选择就诊日期"); path: '/charge-query/lpjManageDetail'
return;
}
if(!this.form.sendDate){
this.$message.warning("请选择寄送日期");
return;
}
if(this.selectedRowKeys.length == 0){
this.$message.warning("未选择账单");
return;
}
let ciReceiptSendVos = [];
this.dataList.forEach((item,index)=>{
if(this.selectedRowKeys.indexOf(index)!=-1){
ciReceiptSendVos.push({
id: item.id,
receiptNo: item.receiptNo,
})
}
}) })
let formData = {
...this.form,
ciReceiptSendVos: ciReceiptSendVos,
sendDate: moment(this.form.sendDate).format('YYYY-MM-DD 00:00:00'),
visitTimeStart: moment(this.form.dateRange[0]).format('YYYY-MM-DD 00:00:00'),
visitTimeEnd: moment(this.form.dateRange[1]).format('YYYY-MM-DD 00:00:00'),
}
delete formData.dateRange;
this.$apis.SAVERECEIPSENDINFO(formData)
.then((res) => {
if (res.returnCode == "0000") {
this.$message.success("新建成功");
this.handlerReset();
this.selectedRowKeys = [];
this.getData();
} else {
this.$message.error(res.returnMsg);
}
});
} }
}, },
}; };
......
<template>
<!-- 收费查询-账单查询 -->
<div class="white_bg burt-container custom-info">
<!-- form -->
<a-form-model ref="form" layout="vertical" :model="form">
<a-row :gutter="30">
<a-col :lg="8" :sm="12">
<a-form-model-item label="保险公司">
<a-select v-model="form.payorCode" placeholder="请选择保险公司" allowClear>
<a-select-option v-for="item in companyOptions" :key="item.id" :value="item.payorCode">
{{ item.longName }}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :lg="8" :sm="12">
<a-form-model-item label="寄送状态">
<a-select v-model="form.sendSts" placeholder="请选择寄送状态" allowClear>
<a-select-option value="1">已寄送</a-select-option>
<a-select-option value="2">未寄送</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :lg="8" :sm="12">
<a-form-model-item label="快递公司">
<a-select v-model="form.sendCompany" placeholder="请选择快递公司" showSearch allowClear>
<a-select-option v-for="(item) in expressList" :key="item.id" :value="item.descCh">{{item.descCh}}</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :lg="8" :sm="12">
<a-form-model-item label="快递单号">
<a-input v-model="form.trackingNo" placeholder="请输入快递单号" allow-clear />
</a-form-model-item>
</a-col>
<a-col :lg="8" :sm="12">
<a-form-model-item label="寄送方式">
<a-select v-model="form.sendMode" placeholder="请选择寄送方式" allowClear>
<a-select-option value="快递">快递</a-select-option>
<a-select-option value="邮件">邮件</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :lg="8" :sm="12">
<a-form-model-item label="寄送日期">
<a-date-picker format="YYYY年MM月DD日" v-model="form.sendDate" placeholder="选择日期" />
</a-form-model-item>
</a-col>
<a-col :lg="8" :sm="12">
<a-form-model-item label="寄送地址">
<a-input v-model="form.sendAddress" placeholder="请输入寄送地址" allow-clear />
</a-form-model-item>
</a-col>
<a-col :lg="8" :sm="12">
<a-form-model-item label="寄送邮箱">
<a-input v-model="form.sendEmail" placeholder="请输入寄送邮箱" allow-clear />
</a-form-model-item>
</a-col>
<a-col :sm="24" class="none-label">
<div class="btn-div flex">
<span></span>
<a-form-model-item label="button">
<a-button class="mar-left10" type="primary" @click="addNewCharge">
<Icon :name="sendBatchNo?'ssibaocun':'ssiadd'" :size="14" />{{sendBatchNo?'保存寄送':'新建寄送'}}</a-button>
<a-button class="mar-left10" type="primary" @click="handlerSearch">
<Icon name="ssisearch_active" :size="14" />查询
</a-button>
<a-button class="mar-left10" type="primary" @click="addNewBill">
<Icon :name="isEditNewBill?'ssibaocun':'ssiadd'" :size="14" />{{isEditNewBill? '保存账单': '添加账单'}}</a-button>
</a-form-model-item>
</div>
</a-col>
</a-row>
</a-form-model>
<!-- table -->
<a-table :columns="columns" :data-source="dataList" :scroll="{ x: true }" :pagination="false"
:row-selection="isEditNewBill? { selectedRowKeys: selectedRowKeys, onChange: onSelectChange }: null">
<template slot="sendDate" slot-scope="text">
{{ text? moment(text).format('YYYY-MM-DD'): '' }}
</template>
<template slot="sendSts" slot-scope="text">
{{ text==1?'已寄送':'未寄送' }}
</template>
<template slot="operation" slot-scope="text, record, index">
<a-button type="link" @click.stop="editEvt(record)">修改</a-button>
<a-button type="link" class="danger" @click.stop="delRecord(index)">删除</a-button>
</template>
</a-table>
<!--分页-->
<BurtPagination :pagination="pagination" @pageChange="getData" />
<a-modal title="编辑" :visible="dialogShow" width="700px" :maskClosable="false"
okText="确定" cancelText="取消"
@ok="handleEditOK" @cancel="dialogShow = false">
<a-form-model ref="editForm" :model="editFormObj" :rules="editRules">
<a-row :gutter="30">
<a-col :lg="12" :xs="24">
<a-form-model-item label="保险公司" prop="payorCode">
<a-select v-model="editFormObj.payorCode" placeholder="请选择保险公司" allowClear>
<a-select-option v-for="item in companyOptions" :key="item.id" :value="item.payorCode">
{{ item.longName }}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :lg="12" :sm="24">
<a-form-model-item label="寄送状态" prop="sendSts">
<a-select v-model="editFormObj.sendSts" placeholder="请选择寄送状态" allowClear>
<a-select-option :value="1">已寄送</a-select-option>
<a-select-option :value="2">未寄送</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :lg="12" :sm="24">
<a-form-model-item label="寄送日期" prop="sendDate">
<a-date-picker format="YYYY年MM月DD日" v-model="editFormObj.sendDate" placeholder="选择日期" />
</a-form-model-item>
</a-col>
<a-col :lg="12" :xs="24">
<a-form-model-item label="快递单号" prop="trackingNo">
<a-input v-model.trim="editFormObj.trackingNo" placeholder="快递单号" />
</a-form-model-item>
</a-col>
</a-row>
<a-row :gutter="30">
<a-col :lg="12" :xs="24">
<a-form-model-item label="寄送备注" prop="sendRemark">
<a-textarea v-model.trim="editFormObj.sendRemark" placeholder="寄送备注" />
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
</a-modal>
</div>
</template>
<script>
import BurtPagination from "@/components/CUSTOMER/pagation";
import moment from 'moment'
export default {
data() {
const columns = [
{ title: "账单编号", dataIndex: "receiptNo", key:"receiptNo",align:'center', width: 136},
{ title: "病历号", dataIndex: "patientNo", key:"patientNo",align:'center', width: 136},
{ title: "客户姓名", dataIndex: "patientName", width: 98 },
{ title: "保险公司", dataIndex: "payorName", width: 110 },
{ title: "就诊日期", dataIndex: "visitTimeStart", width: 200,scopedSlots: { customRender: "visitTimeStart" } },
{ title: "寄送状态", dataIndex: "sendSts", width: 90,scopedSlots: { customRender: "sendSts" } },
{ title: "寄送日期", dataIndex: "sendDate",width: 130,scopedSlots: { customRender: "sendDate" }},
{ title: "快递单号",dataIndex: "trackingNo",width: 180,},
{ title: "账单金额", dataIndex: "chargeAmount", width: 100, align: 'center' },
{ title: "折后金额", dataIndex: "discountAmount", width: 100, align: 'center' },
{ title: "客户自负", dataIndex: "paidAmount", width: 100, align: 'center' },
{ title: "理赔金额", dataIndex: "paidamount", width: 100, align: 'center' },
{ title: "寄送备注", dataIndex: "sendRemark", width: 100 },
// { title: "操作", key: "operation", width: "175px",fixed: "right",scopedSlots: { customRender: "operation" }},
];
return {
loading: false,
dialogShow: false,
columns,
sendBatchNo: '', //寄送批号
form: {
payorCode: '',
sendSts: '',
sendMode: '',
sendDate: '',
sendCompany: '',
trackingNo: '',
sendAddress: '',
sendEmail: '',
},
companyOptions: [], //保险公司
expressList: [], //快递列表
selectedRowKeys: [], // Check here to configure the default column
dataList: [],
isEditNewBill: false, //是否在新建账单
pagination: {
pageNum: 1,
pageSize: 10,
total: 0,
},
editFormObj: {
payorCode: '',
sendSts: '',
sendDate: '',
trackingNo: '',
sendRemark: '',
},
editRules: {
sendDate: [{ required: true, message: "请选择寄送日期", trigger: "change" }],
trackingNo: [{ required: true, message: "请输入寄送单号", trigger: "blur" }],
},
};
},
components: {
BurtPagination,
},
created() {
this.sendBatchNo = this.$route.query.sendBatchNo;
this._getCompanyOptions();
this.getRefcdByRefgrp();
if(this.sendBatchNo){
let jisongDataDetail = localStorage.getItem('jisongDataDetail');
this.form = jisongDataDetail? JSON.parse(jisongDataDetail): {};
this.getData();
}
},
methods: {
moment,
onSelectChange(selectedRowKeys) {
let arr = [];
for(let i=0; i<selectedRowKeys.length; i++){
let idx = selectedRowKeys[i];
if(this.dataList[idx].sendBatchNo){
this.$msg.destroy();
this.$message.warning('寄送批号已存在')
}else{
arr.push(idx);
}
}
this.selectedRowKeys = arr;
},
// 获取列表数据
getData() {
this.selectedRowKeys = [];
let filter = {
pageNum: this.pagination.pageNum,
pageSize: this.pagination.pageSize,
sendBatchNo: this.sendBatchNo,
}
this.$apis.QUERYSENDRECEIPLIST(filter)
.then((res) => {
if (res.returnCode == "0000") {
let content = res.content || {};
this.pagination.total = content.total || 0;
this.dataList = content.list || [];
} else {
this.$message.error(res.returnMsg);
}
});
},
// 获取保险公司下拉选项
_getCompanyOptions() {
this.$apis.GETCOMPANYOPTIONS().then((res) => {
this.companyOptions = res.content || [];
});
},
// 获取快递列表
getRefcdByRefgrp() {
this.$apis.GETREFCDBYREFGRP({
modid: "CI",
refgrp: "SEND_COMPANY"
}).then((res) => {
this.expressList = res.content || [];
});
},
//查看
detailEvt(record) {
const { receiptNo } = record;
this.$router.push({
name: "chargeQueryDetail",
query: { receiptNo },
});
},
editEvt(record) {
this.editFormObj = {
ciReceiptSendVos: [
{
id: record.id,
receiptNo: record.receiptNo,
}
],
payorCode: record.payorCode || "",
sendSts: Number(record.sendSts) || "",
sendDate: record.sendDate || "",
trackingNo: record.trackingNo || "",
sendRemark: record.sendRemark || "",
};
this.dialogShow = true;
},
//编辑保存
handleEditOK() {
this.$refs.editForm.validate((valid) => {
if (valid) {
this.$apis.SAVERECEIPSENDINFO({
...this.editFormObj,
sendDate: moment(this.editFormObj.sendDate).format('YYYY-MM-DD 00:00:00')
})
.then((res) => {
if (res.returnCode == "0000") {
this.$message.success("编辑成功");
this.dialogShow = false;
this.getData();
} else {
this.$message.error(res.returnMsg);
}
});
}
});
},
handlerSearch() {
this.pagination.pageNum = 1;
this.isEditNewBill = false;
this.getData();
},
//删除
delRecord(index) {
this.$modal.confirm({
title: "删除",
content: "确定删除该条记录?",
okText: "确定",
cancelText: "取消",
onOk: () => {
this.$apis.DELETERECEIPTSENDINFO({
sendBatchNo: this.dataList[index].sendBatchNo,
})
.then((res) => {
if (res.returnCode == "0000") {
this.$message.success("删除成功");
this.dataList.splice(index, 1);
} else {
this.$message.error(res.returnMsg);
}
});
},
});
},
//添加账单
addNewBill(){
this.isEditNewBill = !this.isEditNewBill;
if(!this.isEditNewBill){ //保存
this.addNewCharge()
.then(()=>{
this.isEditNewBill = false;
})
}else{ //查询所有未加入的账单
this.pagination.pageNum = 1;
this.$apis.QUERYNOSENDRECEIPLIST({
pageNum: this.pagination.pageNum,
pageSize: this.pagination.pageSize,
payorCode: this.form.payorCode
})
.then((res) => {
if (res.returnCode == "0000") {
this.selectedRowKeys = [];
let content = res.content || {};
this.pagination.total = content.total || 0;
this.dataList = content.list || [];
} else {
this.$message.error(res.returnMsg);
}
});
}
},
//新建/保存寄送
addNewCharge(){
if(!this.form.trackingNo){
this.$message.warning("请输入快递单号");
return;
}
if(!this.form.sendDate){
this.$message.warning("请选择寄送日期");
return;
}
let ciReceiptSendVos = [];
this.dataList.forEach((item,index)=>{
if(this.selectedRowKeys.indexOf(index)!=-1){
ciReceiptSendVos.push({
id: item.id,
receiptNo: item.receiptNo,
})
}
})
let formData = {
...this.form,
ciReceiptSendVos: ciReceiptSendVos,
sendDate: moment(this.form.sendDate).format('YYYY-MM-DD 00:00:00'),
sendBatchNo: this.sendBatchNo
}
return new Promise((resolve,reject)=>{
this.$apis.SAVERECEIPSENDINFO(formData)
.then((res) => {
if (res.returnCode == "0000") {
this.sendBatchNo = res.content;
this.$message.success("成功");
this.selectedRowKeys = [];
this.getData();
resolve();
} else {
this.$message.error(res.returnMsg);
reject();
}
});
})
}
},
};
</script>
<style lang="less" scoped>
.none-label {
text-align: right;
.ant-form-item-label {
opacity: 0;
}
}
.ant-btn .icon-class {
.mg-r(10);
}
.btn-div{
justify-content: space-between;
}
</style>
<template>
<div>111</div>
</template>
<script>
export default {
data() {
return {};
},
};
</script>
<style lang="less" scoped></style>
...@@ -12,37 +12,13 @@ ...@@ -12,37 +12,13 @@
</a-select> </a-select>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :lg="5" :sm="12">
<a-form-model-item label="回款日期">
<a-date-picker format="YYYY年MM月DD日" v-model="form.backDate" placeholder="选择日期" />
</a-form-model-item>
</a-col>
<a-col :lg="5" :sm="12">
<a-form-model-item label="EOB状态">
<a-select v-model="form.eobSts" placeholder="请选择">
<a-select-option value="1">待回款</a-select-option>
<a-select-option value="2">已回款</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :lg="4" :sm="12">
<a-form-model-item label="回款金额(人民币)">
<a-input type="number" v-model="form.backAmountCny" placeholder="请输入金额"/>
</a-form-model-item>
</a-col>
<a-col :lg="4" :sm="12">
<a-form-model-item label="回款金额(美元)">
<a-input type="number" v-model="form.backAmountUsd" placeholder="请输入金额"/>
</a-form-model-item>
</a-col>
<a-col :lg="6" :sm="12"> <a-col :lg="6" :sm="12">
<a-form-model-item label="汇率差"> <a-form-model-item label="EOB编号">
<a-input v-model="form.backExchangeRate" placeholder="请输入金额" /> <a-input v-model="form.eobNo" placeholder="EOB编号"/>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :md="24" :lg="18" class="none-label"> <a-col :md="12" class="none-label">
<a-form-model-item label="button"> <a-form-model-item label="button">
<a-button type="primary">导出</a-button>
<a-button class="mar-left10" type="primary" @click="addNewEvt"> <a-button class="mar-left10" type="primary" @click="addNewEvt">
<Icon name="ssiadd" :size="14" />新建回款 <Icon name="ssiadd" :size="14" />新建回款
</a-button> </a-button>
...@@ -57,8 +33,7 @@ ...@@ -57,8 +33,7 @@
</a-row> </a-row>
</a-form-model> </a-form-model>
<!-- table --> <!-- table -->
<a-table :columns="columns" :data-source="dataList" :scroll="{ x: true }" :pagination="false" <a-table :columns="columns" :data-source="dataList" :scroll="{ x: true }" :pagination="false" >
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }">
<template slot="eobSts" slot-scope="text"> <template slot="eobSts" slot-scope="text">
{{text==1?'待回款':'已回款'}} {{text==1?'待回款':'已回款'}}
</template> </template>
...@@ -71,52 +46,6 @@ ...@@ -71,52 +46,6 @@
</template> </template>
</a-table> </a-table>
<BurtPagination :pagination="pagination" @pageChange="getData" /> <BurtPagination :pagination="pagination" @pageChange="getData" />
<a-modal title="编辑" :visible="dialogShow" width="700px" :maskClosable="false"
okText="确定" cancelText="取消"
@ok="handleEditOK" @cancel="dialogShow = false">
<a-form-model ref="editForm" :model="editFormObj" :rules="editRules">
<a-row :gutter="30">
<a-col :lg="12" :xs="24">
<a-form-model-item label="保险公司" prop="payorCode">
<a-select v-model="editFormObj.payorCode" placeholder="请选择保险公司" allowClear>
<a-select-option v-for="item in companyOptions" :key="item.id" :value="item.payorCode">
{{ item.longName }}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :lg="12" :sm="24">
<a-form-model-item label="EOB状态" prop="eobSts">
<a-select v-model="editFormObj.eobSts" placeholder="请选择状态" allowClear>
<a-select-option :value="1">待回款</a-select-option>
<a-select-option :value="2">已回款</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :lg="12" :sm="24">
<a-form-model-item label="核销日期" prop="backDate">
<a-date-picker format="YYYY年MM月DD日" v-model="editFormObj.backDate" placeholder="选择日期" />
</a-form-model-item>
</a-col>
<a-col :lg="12" :xs="24">
<a-form-model-item label="回款金额(人民币)" prop="backAmountCny">
<a-input v-model.trim="editFormObj.backAmountCny" placeholder="回款金额(人民币)" />
</a-form-model-item>
</a-col>
<a-col :lg="12" :xs="24">
<a-form-model-item label="回款金额(美元)" prop="backAmountUsd">
<a-input v-model.trim="editFormObj.backAmountUsd" placeholder="回款金额(美元)" />
</a-form-model-item>
</a-col>
<a-col :lg="12" :xs="24">
<a-form-model-item label="银行到账金额(人民币)" prop="backAmount">
<a-input v-model.trim="editFormObj.backAmount" placeholder="银行到账金额(人民币)" />
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
</a-modal>
</div> </div>
</template> </template>
...@@ -124,6 +53,7 @@ ...@@ -124,6 +53,7 @@
import BurtPagination from "@/components/CUSTOMER/pagation"; import BurtPagination from "@/components/CUSTOMER/pagation";
import moment from "moment"; import moment from "moment";
const columns = [ const columns = [
{ title: "回款编号", dataIndex: "backMoneyNo", ellipsis: true, width: 150 },
{ title: "EOB名称", dataIndex: "eobName", ellipsis: true, width: 195 }, { title: "EOB名称", dataIndex: "eobName", ellipsis: true, width: 195 },
{ title: "核销时间", dataIndex: "eobBackDate", ellipsis: true, width: 110, scopedSlots: { customRender: "eobBackDate" }, }, { title: "核销时间", dataIndex: "eobBackDate", ellipsis: true, width: 110, scopedSlots: { customRender: "eobBackDate" }, },
{ title: "保险公司", dataIndex: "payorName", ellipsis: true, width: 110 }, { title: "保险公司", dataIndex: "payorName", ellipsis: true, width: 110 },
...@@ -137,13 +67,9 @@ export default { ...@@ -137,13 +67,9 @@ export default {
data() { data() {
return { return {
columns, columns,
dialogShow: false,
form: { form: {
payorCode: '', payorCode: '',
backDate: '', eobNo: '',
backAmountCny: '',
backAmountUsd: '',
backExchangeRate: ''
}, },
dataList: [], dataList: [],
companyOptions: [], //保险公司 companyOptions: [], //保险公司
...@@ -152,20 +78,6 @@ export default { ...@@ -152,20 +78,6 @@ export default {
pageSize: 10, pageSize: 10,
total: 0, total: 0,
}, },
selectedRowKeys: [], // Check here to configure the default column
editFormObj: {
id: '',
payorCode: '',
eobSts: '',
backDate: '',
backAmountCny: '',
backAmountUsd: '',
backAmount: ''
},
editRules: {
backAmountUsd: [{ required: true, message: "请输入", trigger: "blur" }],
backAmount: [{ required: true, message: "请输入", trigger: "blur" }],
},
}; };
}, },
components: { components: {
...@@ -177,19 +89,6 @@ export default { ...@@ -177,19 +89,6 @@ export default {
}, },
methods: { methods: {
moment, moment,
onSelectChange(selectedRowKeys) {
let arr = [];
for(let i=0; i<selectedRowKeys.length; i++){
let idx = selectedRowKeys[i];
if(this.dataList[idx].backMoneyNo){
this.$msg.destroy();
this.$message.warning('回款编号已存在')
}else{
arr.push(idx);
}
}
this.selectedRowKeys = arr;
},
pageChange(pager) { pageChange(pager) {
const { current } = pager; const { current } = pager;
this.pagination.pageNum = current; this.pagination.pageNum = current;
...@@ -199,10 +98,7 @@ export default { ...@@ -199,10 +98,7 @@ export default {
handlerReset() { handlerReset() {
this.form = { this.form = {
payorCode: '', payorCode: '',
backDate: '', eobNo: '',
eobAmountCny: '',
eobAmountUsd: '',
backExchangeRate: ''
} }
}, },
// 获取保险公司下拉选项 // 获取保险公司下拉选项
...@@ -216,7 +112,8 @@ export default { ...@@ -216,7 +112,8 @@ export default {
this.getData(); this.getData();
}, },
getData() { getData() {
this.$apis.QUERYEOBRECEIPTINFO({ this.$apis.QUERYBACKMONEYLIST({
...this.form,
pageNum: this.pagination.pageNum, pageNum: this.pagination.pageNum,
pageSize: this.pagination.pageSize, pageSize: this.pagination.pageSize,
}) })
...@@ -232,35 +129,20 @@ export default { ...@@ -232,35 +129,20 @@ export default {
}, },
//新建回款 //新建回款
addNewEvt(){ addNewEvt(){
if(this.selectedRowKeys.length == 0){ this.$router.push({
this.$message.warning("未选择EOB"); path: '/verification/collectionDetail'
return;
}
let backMoneyEobList = [];
this.dataList.forEach((item,index)=>{
if(this.selectedRowKeys.indexOf(index)!=-1){
backMoneyEobList.push({
id: item.id,
eobNo: item.eobNo,
}) })
},
//编辑回款
editEvt(record){
const { backMoneyNo } = record;
localStorage.setItem('backMoneyDataDetail', JSON.stringify(record));
this.$router.push({
path: '/verification/collectionDetail',
query: {
backMoneyNo
} }
}) })
let formData = {
...this.form,
backMoneyEobList: backMoneyEobList,
backDate: this.form.backDate? moment(this.form.backDate).format('YYYY-MM-DD 00:00:00'):''
}
this.$apis.SAVEBACKMONEY(formData)
.then((res) => {
if (res.returnCode == "0000") {
this.$message.success("新建成功");
this.handlerReset();
this.selectedRowKeys = [];
this.getData();
} else {
this.$message.error(res.returnMsg);
}
});
}, },
//删除记录 //删除记录
delRecord(index) { delRecord(index) {
...@@ -284,46 +166,7 @@ export default { ...@@ -284,46 +166,7 @@ export default {
}, },
onCancel: () => {}, onCancel: () => {},
}); });
},
editEvt(record) {
this.editFormObj = {
id: record.id,
payorCode: record.payorCode || "",
eobSts: Number(record.eobSts) || "",
backDate: record.backDate || "",
backAmountCny: record.backAmountCny || "",
backAmountUsd: record.backAmountUsd || "",
backAmount: record.backAmount || "",
backMoneyNo: record.backMoneyNo,
backMoneyEobList: [
{
id: record.id,
eobNo: record.eobNo,
} }
]
};
this.dialogShow = true;
},
//编辑保存
handleEditOK() {
this.$refs.editForm.validate((valid) => {
if (valid) {
this.$apis.SAVEBACKMONEY({
...this.editFormObj,
backDate: this.editFormObj.backDate?moment(this.editFormObj.backDate).format('YYYY-MM-DD 00:00:00'):''
})
.then((res) => {
if (res.returnCode == "0000") {
this.$message.success("编辑成功");
this.dialogShow = false;
this.getData();
} else {
this.$message.error(res.returnMsg);
}
});
}
});
},
}, },
}; };
</script> </script>
......
<template>
<div>111</div>
</template>
<script>
export default {
data() {
return {};
},
};
</script>
<style lang="less" scoped></style>
<template>
<div class="white_bg burt-container">
<!-- form -->
<a-form-model ref="form" layout="vertical" :model="form">
<a-row :gutter="30">
<a-col :lg="6" :sm="12">
<a-form-model-item label="保险公司">
<a-select v-model="form.payorCode" placeholder="请选择保险公司" allowClear>
<a-select-option v-for="item in companyOptions" :key="item.id" :value="item.payorCode">
{{ item.longName }}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :lg="5" :sm="12">
<a-form-model-item label="回款日期">
<a-date-picker format="YYYY年MM月DD日" v-model="form.backDate" placeholder="选择日期" />
</a-form-model-item>
</a-col>
<a-col :lg="5" :sm="12">
<a-form-model-item label="回款金额(人民币)">
<a-input type="number" v-model="form.backAmountCny" placeholder="请输入金额"/>
</a-form-model-item>
</a-col>
<a-col :lg="5" :sm="12">
<a-form-model-item label="回款金额(美元)">
<a-input type="number" v-model="form.backAmountUsd" placeholder="请输入金额"/>
</a-form-model-item>
</a-col>
<a-col :lg="6" :sm="12">
<a-form-model-item label="汇率差">
<a-input v-model="form.backExchangeRate" placeholder="请输入金额" />
</a-form-model-item>
</a-col>
<a-col :md="24" :lg="18" class="none-label">
<a-form-model-item label="button">
<a-button class="mar-left10" type="primary" @click="addNewEvt">
<Icon :name="backMoneyNo?'ssibaocun':'ssiadd'" :size="14" />{{backMoneyNo?'保存回款':'新建回款'}}
</a-button>
<a-button class="mar-left10" type="primary" @click="handlerSearch">
<Icon name="ssisearch_active" :size="14" />查询
</a-button>
<a-button class="mar-left10" type="primary" @click="addNewEOB">
<Icon :name="isEditNewEOB?'ssibaocun':'ssiadd'" :size="14" />{{isEditNewEOB? '保存EOB': '添加EOB'}}
</a-button>
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
<!-- table -->
<a-table :columns="columns" :data-source="dataList" :scroll="{ x: true }" :pagination="false"
:row-selection="isEditNewEOB? { selectedRowKeys: selectedRowKeys, onChange: onSelectChange }: null">
<template slot="eobSts" slot-scope="text">
{{text==1?'待回款':'已回款'}}
</template>
<template slot="eobBackDate" slot-scope="text">
{{text?moment(text).format('YYYY-MM-DD'):''}}
</template>
<template slot="operation" slot-scope="text, record">
<a-button type="link" @click.stop="editEvt(record)">修改</a-button>
<!-- <a-button v-if="record.backMoneyNo" type="link" class="danger" @click.stop="delRecord(index)">删除</a-button> -->
</template>
</a-table>
<BurtPagination :pagination="pagination" @pageChange="getData" />
<a-modal title="编辑" :visible="dialogShow" width="700px" :maskClosable="false"
okText="确定" cancelText="取消"
@ok="handleEditOK" @cancel="dialogShow = false">
<a-form-model ref="editForm" :model="editFormObj" :rules="editRules">
<a-row :gutter="30">
<a-col :lg="12" :sm="24">
<a-form-model-item label="EOB状态" prop="eobSts">
<a-select v-model="editFormObj.eobSts" placeholder="请选择状态" allowClear>
<a-select-option value="1">待回款</a-select-option>
<a-select-option value="2">已回款</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :lg="12" :sm="24">
<a-form-model-item label="eob核销时间" prop="eobBackDate">
<a-date-picker format="YYYY年MM月DD日" v-model="editFormObj.eobBackDate" placeholder="选择日期" />
</a-form-model-item>
</a-col>
<a-col :lg="12" :xs="24">
<a-form-model-item label="eob回款(人民币)" prop="eobBackMoneyCny">
<a-input v-model.trim="editFormObj.eobBackMoneyCny" placeholder="eob回款(人民币)" />
</a-form-model-item>
</a-col>
<a-col :lg="12" :xs="24">
<a-form-model-item label="eob回款(美元)" prop="eobBackMoneyUsd">
<a-input v-model.trim="editFormObj.eobBackMoneyUsd" placeholder="eob回款(美元)" />
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
</a-modal>
</div>
</template>
<script>
import BurtPagination from "@/components/CUSTOMER/pagation";
import moment from "moment";
const columns = [
{ title: "EOB编号", dataIndex: "eobNo", ellipsis: true, width: 150 },
{ title: "EOB名称", dataIndex: "eobName", ellipsis: true, width: 195 },
{ title: "核销时间", dataIndex: "eobBackDate", ellipsis: true, width: 110, scopedSlots: { customRender: "eobBackDate" }, },
{ title: "保险公司", dataIndex: "payorName", ellipsis: true, width: 110 },
{ title: "EOB状态", dataIndex: "eobSts", ellipsis: true, width: 110, scopedSlots: { customRender: "eobSts" } },
{ title: "EOB赔付金额(人民币)", dataIndex: "eobAmountCny", ellipsis: true, width: 190,},
{ title: "EOB赔付金额(美元)", dataIndex: "eobAmountUsd", ellipsis: true, width: 190,},
{ title: "汇率差", dataIndex: "backExchangeRate", ellipsis: true, width: 110 },
{ title: "操作", dataIndex: "operation", scopedSlots: { customRender: "operation" },fixed: "right", width: "170px"},
];
export default {
data() {
return {
columns,
dialogShow: false,
form: {
payorCode: '',
backDate: '',
backAmountCny: '',
backAmountUsd: '',
backExchangeRate: ''
},
dataList: [],
isEditNewEOB: false, //是否在新建回款
companyOptions: [], //保险公司
pagination: {
pageNum: 1,
pageSize: 10,
total: 0,
},
selectedRowKeys: [], // Check here to configure the default column
backMoneyNo: '',
editFormObj: {
id: '',
eobNo: '',
eobSts: '',
eobBackDate: '',
eobBackMoneyCny: '',
eobBackMoneyUsd: '',
},
editRules: {
backAmountUsd: [{ required: true, message: "请输入", trigger: "blur" }],
backAmount: [{ required: true, message: "请输入", trigger: "blur" }],
},
};
},
components: {
BurtPagination,
},
created(){
this.backMoneyNo = this.$route.query.backMoneyNo;
this._getCompanyOptions();
if(this.backMoneyNo){
let backMoneyDataDetail = localStorage.getItem('backMoneyDataDetail');
this.form = backMoneyDataDetail? JSON.parse(backMoneyDataDetail): {};
this.getData();
}
},
methods: {
moment,
onSelectChange(selectedRowKeys) {
let arr = [];
for(let i=0; i<selectedRowKeys.length; i++){
let idx = selectedRowKeys[i];
if(this.dataList[idx].backMoneyNo){
this.$msg.destroy();
this.$message.warning('回款编号已存在')
}else{
arr.push(idx);
}
}
this.selectedRowKeys = arr;
},
pageChange(pager) {
const { current } = pager;
this.pagination.pageNum = current;
this.getData();
},
// 获取保险公司下拉选项
_getCompanyOptions() {
this.$apis.GETCOMPANYOPTIONS().then((res) => {
this.companyOptions = res.content || [];
});
},
handlerSearch() {
this.pagination.pageNum = 1;
this.getData();
},
getData() {
this.$apis.QUERYBACKEOBLIST({
pageNum: this.pagination.pageNum,
pageSize: this.pagination.pageSize,
backMoneyNo: this.backMoneyNo
})
.then((res) => {
if (res.returnCode == "0000") {
let content = res.content || {};
this.pagination.total = content.total || 0;
this.dataList = content.list || [];
} else {
this.$message.error(res.returnMsg);
}
});
},
//添加EOB
addNewEOB(){
this.isEditNewEOB = !this.isEditNewEOB;
if(!this.isEditNewEOB){ //保存
this.addNewEvt()
.then(()=>{
this.isEditNewEOB = false;
})
}else{ //查询所有未加入的账单
this.pagination.pageNum = 1;
this.$apis.QUERYEOBINFOLIST({
pageNum: this.pagination.pageNum,
pageSize: this.pagination.pageSize
})
.then((res) => {
if (res.returnCode == "0000") {
this.selectedRowKeys = [];
let content = res.content || {};
this.pagination.total = content.total || 0;
this.dataList = content.list || [];
} else {
this.$message.error(res.returnMsg);
}
});
}
},
//新建/保存回款
addNewEvt(){
let backMoneyEobList = [];
this.dataList.forEach((item,index)=>{
if(this.selectedRowKeys.indexOf(index)!=-1){
backMoneyEobList.push({
id: item.id,
eobNo: item.eobNo,
eobSts: item.eobSts,
eobBackDate: item.eobBackDate?moment(item.eobBackDate).format('YYYY-MM-DD 00:00:00'):'',
eobBackMoneyCny: item.eobBackMoneyCny,
eobBackMoneyUsd: item.eobBackMoneyUsd,
})
}
})
let formData = {
...this.form,
backMoneyEobList: backMoneyEobList,
backDate: this.form.backDate? moment(this.form.backDate).format('YYYY-MM-DD 00:00:00'):'',
backMoneyNo: this.backMoneyNo, //回款编号
}
return new Promise((resolve,reject)=>{
this.$apis.SAVEBACKMONEY(formData)
.then((res) => {
if (res.returnCode == "0000") {
this.backMoneyNo = res.content;
this.$message.success("成功");
this.selectedRowKeys = [];
this.getData();
resolve();
} else {
this.$message.error(res.returnMsg);
reject();
}
});
})
},
//删除记录
delRecord(index) {
this.$modal.confirm({
title: "删除",
content: "确定删除该条记录?",
okText: "确认",
cancelText: "取消",
onOk: () => {
this.$apis.DELETEBACKMONEY({
backMoneyNo: this.dataList[index].backMoneyNo,
})
.then((res) => {
if (res.returnCode == "0000") {
this.$message.success("删除成功");
this.dataList.splice(index, 1);
} else {
this.$message.error(res.returnMsg);
}
});
},
onCancel: () => {},
});
},
editEvt(record) {
this.editFormObj = {
id: record.id,
eobNo: record.eobNo || "",
eobSts: record.eobSts || "",
eobBackDate: record.eobBackDate?moment(record.eobBackDate).format('YYYY-MM-DD 00:00:00'):"",
eobBackMoneyCny: record.eobBackMoneyCny || "",
eobBackMoneyUsd: record.eobBackMoneyUsd || "",
};
this.dialogShow = true;
},
//编辑保存
handleEditOK() {
this.$refs.editForm.validate((valid) => {
if (valid) {
this.$apis.SAVEBACKMONEY({
...this.form,
backMoneyEobList: [this.editFormObj],
backDate: this.form.backDate? moment(this.form.backDate).format('YYYY-MM-DD 00:00:00'):'',
backMoneyNo: this.backMoneyNo, //回款编号
})
.then((res) => {
if (res.returnCode == "0000") {
this.$message.success("编辑成功");
this.dialogShow = false;
this.getData();
} else {
this.$message.error(res.returnMsg);
}
});
}
});
},
},
};
</script>
<style lang="less" scoped>
.none-label {
text-align: right;
.ant-form-item-label {
opacity: 0;
}
}
.ant-btn .icon-class {
.mg-r(10);
}
.success.ant-btn-link {
color: #4cd964;
}
.danger.ant-btn-link {
color: #ff3b30;
}
</style>
...@@ -13,36 +13,13 @@ ...@@ -13,36 +13,13 @@
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :lg="6" :sm="12"> <a-col :lg="6" :sm="12">
<a-form-model-item label="EOB收到日期"> <a-form-model-item label="账单编号">
<a-range-picker format="YYYY年MM月DD日" v-model="form.dateRange" :placeholder="['开始日期', '结束日期']" /> <a-input v-model="form.receiptNo" placeholder="请输入账单编号" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :lg="6" :sm="12"> <a-col :lg="12" :sm="24" class="none-label">
<a-form-model-item label="EOB名称">
<a-input v-model="form.eobName" placeholder="请输入EOB名称" />
</a-form-model-item>
</a-col>
<a-col :lg="6" :sm="12">
<a-form-model-item label="EOB金额(人民币)">
<a-input type="number" v-model="form.eobAmountCny" placeholder="请输入金额"/>
</a-form-model-item>
</a-col>
<a-col :lg="6" :sm="12">
<a-form-model-item label="EOB金额(美元)">
<a-input type="number" v-model="form.eobAmountUsd" placeholder="请输入金额"/>
</a-form-model-item>
</a-col>
<a-col :lg="6" :sm="12">
<a-form-model-item label="EOB状态">
<a-select v-model="form.status" placeholder="请选择">
<a-select-option value="1">已寄送</a-select-option>
<a-select-option value="2">未寄送</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :md="24" :lg="12" class="none-label">
<a-form-model-item label="button"> <a-form-model-item label="button">
<a-button type="primary">导出</a-button> <!-- <a-button type="primary">导出</a-button> -->
<a-button class="mar-left10" type="primary" @click="addNewEvt"> <a-button class="mar-left10" type="primary" @click="addNewEvt">
<Icon name="ssiadd" :size="14" />新建EOB <Icon name="ssiadd" :size="14" />新建EOB
</a-button> </a-button>
...@@ -57,8 +34,7 @@ ...@@ -57,8 +34,7 @@
</a-row> </a-row>
</a-form-model> </a-form-model>
<!-- table --> <!-- table -->
<a-table :columns="columns" :data-source="dataList" :scroll="{ x: true }" :pagination="false" <a-table :columns="columns" :data-source="dataList" :scroll="{ x: true }" :pagination="false">
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }">
<template slot="visitTimeStart" slot-scope="text, record"> <template slot="visitTimeStart" slot-scope="text, record">
<span>{{record.visitTimeStart? moment(record.visitTimeStart).format('YYYY-MM-DD'):''}}</span> ~ <span>{{record.visitTimeStart? moment(record.visitTimeStart).format('YYYY-MM-DD'):''}}</span> ~
<span>{{record.visitTimeEnd? moment(record.visitTimeEnd).format('YYYY-MM-DD'):''}}</span> <span>{{record.visitTimeEnd? moment(record.visitTimeEnd).format('YYYY-MM-DD'):''}}</span>
...@@ -67,7 +43,7 @@ ...@@ -67,7 +43,7 @@
<span>{{text==1?'已寄送':'未寄送'}}</span> <span>{{text==1?'已寄送':'未寄送'}}</span>
</template> </template>
<template slot="operation" slot-scope="text, record, index"> <template slot="operation" slot-scope="text, record, index">
<a-button type="link">修改</a-button> <a-button type="link" @click.stop="editEvt(record)">修改</a-button>
<a-button v-if="record.eobNo" type="link" class="danger" @click.stop="delRecord(index)">删除</a-button> <a-button v-if="record.eobNo" type="link" class="danger" @click.stop="delRecord(index)">删除</a-button>
</template> </template>
</a-table> </a-table>
...@@ -79,7 +55,7 @@ ...@@ -79,7 +55,7 @@
import BurtPagination from "@/components/CUSTOMER/pagation"; import BurtPagination from "@/components/CUSTOMER/pagation";
import moment from "moment"; import moment from "moment";
const columns = [ const columns = [
{ title: "病历号", dataIndex: "patientNo", ellipsis: true, width: 100 }, { title: "EOB编号", dataIndex: "eobNo", ellipsis: true, width: 100 },
{ title: "客户姓名", dataIndex: "patientName", ellipsis: true, width: 85 }, { title: "客户姓名", dataIndex: "patientName", ellipsis: true, width: 85 },
{ title: "保险公司", dataIndex: "payorName", ellipsis: true, width: 80 }, { title: "保险公司", dataIndex: "payorName", ellipsis: true, width: 80 },
{ title: "就诊日期", dataIndex: "visitTimeStart", ellipsis: true, width: 110, scopedSlots: { customRender: "visitTimeStart" } }, { title: "就诊日期", dataIndex: "visitTimeStart", ellipsis: true, width: 110, scopedSlots: { customRender: "visitTimeStart" } },
...@@ -99,12 +75,8 @@ export default { ...@@ -99,12 +75,8 @@ export default {
return { return {
columns, columns,
form: { form: {
dateRange: [],
payorCode: '', payorCode: '',
eobName: '', receiptNo: '',
eobAmountCny: '',
eobAmountUsd: '',
status: ''
}, },
dataList: [], dataList: [],
companyOptions: [], //保险公司 companyOptions: [], //保险公司
...@@ -113,7 +85,6 @@ export default { ...@@ -113,7 +85,6 @@ export default {
pageSize: 10, pageSize: 10,
total: 0, total: 0,
}, },
selectedRowKeys: [], // Check here to configure the default column
}; };
}, },
components: { components: {
...@@ -125,19 +96,6 @@ export default { ...@@ -125,19 +96,6 @@ export default {
}, },
methods: { methods: {
moment, moment,
onSelectChange(selectedRowKeys) {
let arr = [];
for(let i=0; i<selectedRowKeys.length; i++){
let idx = selectedRowKeys[i];
if(this.dataList[idx].eobNo){
this.$msg.destroy();
this.$message.warning('EOB编号已存在')
}else{
arr.push(idx);
}
}
this.selectedRowKeys = arr;
},
handlerSearch() { handlerSearch() {
this.pagination.pageNum = 1; this.pagination.pageNum = 1;
this.getData(); this.getData();
...@@ -145,12 +103,8 @@ export default { ...@@ -145,12 +103,8 @@ export default {
// 重置 // 重置
handlerReset() { handlerReset() {
this.form = { this.form = {
dateRange: [],
payorCode: '', payorCode: '',
eobName: '', receiptNo: '',
eobAmountCny: '',
eobAmountUsd: '',
status: ''
} }
}, },
// 获取保险公司下拉选项 // 获取保险公司下拉选项
...@@ -160,7 +114,7 @@ export default { ...@@ -160,7 +114,7 @@ export default {
}); });
}, },
getData() { getData() {
this.$apis.QUERYCIRECEIPSENDLIST({ this.$apis.QUERYEOBLIST({
pageNum: this.pagination.pageNum, pageNum: this.pagination.pageNum,
pageSize: this.pagination.pageSize, pageSize: this.pagination.pageSize,
}) })
...@@ -199,36 +153,20 @@ export default { ...@@ -199,36 +153,20 @@ export default {
}, },
//新建EOB //新建EOB
addNewEvt(){ addNewEvt(){
if(this.selectedRowKeys.length == 0){ this.$router.push({
this.$message.warning("未选择EOB"); path: '/verification/detail'
return;
}
let eobReceiptList = [];
this.dataList.forEach((item,index)=>{
if(this.selectedRowKeys.indexOf(index)!=-1){
eobReceiptList.push({
id: item.id,
receiptNo: item.receiptNo,
}) })
},
//修改
editEvt(record){
const { eobNo } = record;
localStorage.setItem('EobDataDetail', JSON.stringify(record));
this.$router.push({
path: '/verification/detail',
query: {
eobNo
} }
}) })
let formData = {
...this.form,
eobReceiptList: eobReceiptList,
eobDate: moment(this.form.dateRange[0]).format('YYYY-MM-DD 00:00:00')
}
delete formData.dateRange;
this.$apis.SAVEEOBRECEIPTINFO(formData)
.then((res) => {
if (res.returnCode == "0000") {
this.$message.success("新建成功");
this.handlerReset();
this.selectedRowKeys = [];
this.getData();
} else {
this.$message.error(res.returnMsg);
}
});
} }
}, },
}; };
......
<template>
<div class="white_bg burt-container">
<!-- form -->
<a-form-model ref="form" layout="vertical" :model="form">
<a-row :gutter="30">
<a-col :lg="6" :sm="12">
<a-form-model-item label="保险公司">
<a-select v-model="form.payorCode" placeholder="请选择保险公司" allowClear>
<a-select-option v-for="item in companyOptions" :key="item.id" :value="item.payorCode">
{{ item.longName }}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :lg="6" :sm="12">
<a-form-model-item label="EOB日期">
<a-date-picker format="YYYY年MM月DD日" v-model="form.eobDate" placeholder="选择日期" />
</a-form-model-item>
</a-col>
<a-col :lg="6" :sm="12">
<a-form-model-item label="EOB名称">
<a-input v-model="form.eobName" placeholder="请输入EOB名称" />
</a-form-model-item>
</a-col>
<a-col :lg="6" :sm="12">
<a-form-model-item label="EOB金额(人民币)">
<a-input type="number" v-model="form.eobAmountCny" placeholder="请输入金额"/>
</a-form-model-item>
</a-col>
<a-col :lg="6" :sm="12">
<a-form-model-item label="EOB金额(美元)">
<a-input type="number" v-model="form.eobAmountUsd" placeholder="请输入金额"/>
</a-form-model-item>
</a-col>
<a-col :lg="6" :sm="12">
<a-form-model-item label="EOB状态">
<a-select v-model="form.eobSts" placeholder="请选择">
<a-select-option value="1">待回款</a-select-option>
<a-select-option value="2">已回款</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :md="24" :lg="12" class="none-label">
<a-form-model-item label="button">
<!-- <a-button type="primary">导出</a-button> -->
<a-button class="mar-left10" type="primary" @click="addNewEvt">
<Icon :name="eobNo?'ssibaocun':'ssiadd'" :size="14" />{{eobNo?'保存EOB':'新建EOB'}}
</a-button>
<a-button class="mar-left10" type="primary" @click="handlerSearch">
<Icon name="ssisearch_active" :size="14" />查询
</a-button>
<a-button class="mar-left10" type="primary" @click="addNewBill">
<Icon :name="isEditNewEob?'ssibaocun':'ssiadd'" :size="14" />{{isEditNewEob? '保存账单': '添加账单'}}</a-button>
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
<!-- table -->
<a-table :columns="columns" :data-source="dataList" :scroll="{ x: true }" :pagination="false"
:row-selection="isEditNewEob?{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }:null">
<template slot="visitTimeStart" slot-scope="text, record">
<span>{{record.visitTimeStart? moment(record.visitTimeStart).format('YYYY-MM-DD'):''}}</span> ~
<span>{{record.visitTimeEnd? moment(record.visitTimeEnd).format('YYYY-MM-DD'):''}}</span>
</template>
<template slot="sendSts" slot-scope="record, text">
<span>{{text==1?'已寄送':'未寄送'}}</span>
</template>
<template slot="operation" slot-scope="text, record">
<a-button type="link" @click.stop="editEvt(record)">修改</a-button>
<!-- <a-button v-if="record.eobNo" type="link" class="danger" @click.stop="delRecord(index)">删除</a-button> -->
</template>
</a-table>
<BurtPagination :pagination="pagination" @pageChange="getData" />
<a-modal title="编辑" :visible="dialogShow" width="700px" :maskClosable="false"
okText="确定" cancelText="取消"
@ok="handleEditOK" @cancel="dialogShow = false">
<a-form-model ref="editForm" :model="editFormObj" :rules="editRules">
<a-row :gutter="30">
<a-col :lg="12" :sm="24">
<a-form-model-item label="理赔状态" prop="paidSts">
<a-select v-model="editFormObj.sendSts" placeholder="请选择理赔状态" allowClear>
<a-select-option :value="1">待核销</a-select-option>
<a-select-option :value="2">已核销</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :lg="12" :xs="24">
<a-form-model-item label="账单回款金额" prop="paidAmountEob">
<a-input v-model.trim="editFormObj.paidAmountEob" placeholder="账单回款金额" type="number" />
</a-form-model-item>
</a-col>
<a-col :lg="12" :xs="24">
<a-form-model-item label="未赔付金额" prop="refuseAmountEob">
<a-input v-model.trim="editFormObj.refuseAmountEob" placeholder="未赔付金额" type="number" />
</a-form-model-item>
</a-col>
<a-col :lg="12" :xs="24">
<a-form-model-item label="寄送备注" prop="sendRemark">
<a-textarea v-model.trim="editFormObj.sendRemark" placeholder="寄送备注" />
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
</a-modal>
</div>
</template>
<script>
import BurtPagination from "@/components/CUSTOMER/pagation";
import moment from "moment";
const columns = [
{ title: "账单编号", dataIndex: "receiptNo", ellipsis: true, width: 100 },
{ title: "客户姓名", dataIndex: "patientName", ellipsis: true, width: 85 },
{ title: "保险公司", dataIndex: "payorName", ellipsis: true, width: 80 },
{ title: "就诊日期", dataIndex: "visitTimeStart", ellipsis: true, width: 110, scopedSlots: { customRender: "visitTimeStart" } },
{ title: "理赔状态", dataIndex: "sendSts", ellipsis: true, width: 90, scopedSlots: { customRender: "sendSts" } },
{ title: "账单金额", dataIndex: "receiptAmount", ellipsis: true, width: 85 },
{ title: "自付金额", dataIndex: "selfpaidAmount", ellipsis: true, width: 85 },
{ title: "理赔金额", dataIndex: "eobPaidAmount", ellipsis: true, width: 85 },
{ title: "回款金额", dataIndex: "paidAmountEob", ellipsis: true, width: 85 },
{ title: "未清金额", dataIndex: "refuseAmountEob", ellipsis: true, width: 85 },
{ title: "保险公司欠费", dataIndex: "payorNoPaidAmount", ellipsis: true, width: 110, },
{ title: "个人欠费", dataIndex: "perNoPaidAmount", ellipsis: true, width: 85 },
{ title: "备注", dataIndex: "sendRemark", ellipsis: true, width: 120 },
{ title: "操作", dataIndex: "operation", scopedSlots: { customRender: "operation" }, fixed: "right", width: "170px"},
];
export default {
data() {
return {
dialogShow: false,
columns,
eobNo: '', //eob编号
form: {
eobDate: '',
payorCode: '',
eobName: '',
eobAmountCny: '',
eobAmountUsd: '',
eobSts: ''
},
dataList: [],
isEditNewEob: false, //是否在新建EOB
companyOptions: [], //保险公司
pagination: {
pageNum: 1,
pageSize: 10,
total: 0,
},
selectedRowKeys: [], // Check here to configure the default column
editFormObj: {
receiptNo: '',
paidSts: '',
paidAmountEob: '',
refuseAmountEob: ''
},
editRules: {
},
};
},
components: {
BurtPagination,
},
created(){
this.eobNo = this.$route.query.eobNo;
this._getCompanyOptions();
if(this.eobNo){
let EobDataDetail = localStorage.getItem('EobDataDetail');
this.form = EobDataDetail? JSON.parse(EobDataDetail): {};
this.getData();
}
},
methods: {
moment,
onSelectChange(selectedRowKeys) {
let arr = [];
for(let i=0; i<selectedRowKeys.length; i++){
let idx = selectedRowKeys[i];
if(this.dataList[idx].eobNo){
this.$msg.destroy();
this.$message.warning('EOB编号已存在')
}else{
arr.push(idx);
}
}
this.selectedRowKeys = arr;
},
handlerSearch() {
this.pagination.pageNum = 1;
this.isEditNewEob = false;
this.getData();
},
// 获取保险公司下拉选项
_getCompanyOptions() {
this.$apis.GETCOMPANYOPTIONS().then((res) => {
this.companyOptions = res.content || [];
});
},
getData() {
this.$apis.QUERYEOBRECEIPTLIST({
pageNum: this.pagination.pageNum,
pageSize: this.pagination.pageSize,
eobNo: this.eobNo
})
.then((res) => {
if (res.returnCode == "0000") {
let content = res.content || {};
this.pagination.total = content.total || 0;
this.dataList = content.list || [];
} else {
this.$message.error(res.returnMsg);
}
});
},
//修改单条数据
editEvt(record) {
this.editFormObj = {
receiptNo: record.receiptNo,
refuseAmountEob: record.refuseAmountEob || "",
paidSts: record.paidSts || "",
paidAmountEob: record.paidAmountEob || "",
};
this.dialogShow = true;
},
//编辑保存
handleEditOK() {
this.$refs.editForm.validate((valid) => {
if (valid) {
this.$apis.SAVEEOBRECEIPTINFO({
...this.form,
eobReceiptList: [this.editFormObj],
eobDate: this.form.eobDate?moment(this.form.eobDate).format('YYYY-MM-DD 00:00:00'):''
})
.then((res) => {
if (res.returnCode == "0000") {
this.$message.success("编辑成功");
this.dialogShow = false;
this.getData();
} else {
this.$message.error(res.returnMsg);
}
});
}
});
},
//删除记录
delRecord(index) {
this.$modal.confirm({
title: "删除",
content: "确定删除该条记录?",
okText: "确认",
cancelText: "取消",
onOk: () => {
this.$apis.DELEOBRECEIPTINFO({
eobNo: this.dataList[index].eobNo,
})
.then((res) => {
if (res.returnCode == "0000") {
this.$message.success("删除成功");
this.dataList.splice(index, 1);
} else {
this.$message.error(res.returnMsg);
}
});
},
onCancel: () => {},
});
},
//添加账单
addNewBill(){
this.isEditNewEob = !this.isEditNewEob;
if(!this.isEditNewEob){ //保存
this.addNewEvt()
.then(()=>{
this.isEditNewEob = false;
})
}else{ //查询所有未加入的账单
this.pagination.pageNum = 1;
this.$apis.QUERYEOBNEEDRECEIPTLIST({
pageNum: this.pagination.pageNum,
pageSize: this.pagination.pageSize
})
.then((res) => {
if (res.returnCode == "0000") {
this.selectedRowKeys = [];
let content = res.content || {};
this.pagination.total = content.total || 0;
this.dataList = content.list || [];
} else {
this.$message.error(res.returnMsg);
}
});
}
},
//新建/保存EOB
addNewEvt(){
let eobReceiptList = [];
this.dataList.forEach((item,index)=>{
if(this.selectedRowKeys.indexOf(index)!=-1){
eobReceiptList.push({
receiptNo: item.receiptNo,
refuseAmountEob: item.refuseAmountEob,
paidSts: item.paidSts,
paidAmountEob: item.paidAmountEob,
})
}
})
let formData = {
...this.form,
eobReceiptList: eobReceiptList,
eobDate: this.form.eobDate?moment(this.form.eobDate).format('YYYY-MM-DD 00:00:00'):'',
eobNo: this.eobNo
}
return new Promise((resolve,reject)=>{
this.$apis.SAVEEOBRECEIPTINFO(formData)
.then((res) => {
if (res.returnCode == "0000") {
this.eobNo = res.content;
this.$message.success("成功");
this.selectedRowKeys = [];
this.getData();
resolve();
} else {
this.$message.error(res.returnMsg);
reject();
}
});
})
}
},
};
</script>
<style lang="less" scoped>
.none-label {
text-align: right;
.ant-form-item-label {
opacity: 0;
}
}
.ant-btn .icon-class {
.mg-r(10);
}
.success.ant-btn-link {
color: #4cd964;
}
.danger.ant-btn-link {
color: #ff3b30;
}
</style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment