Commit d77d3f44 authored by 周留芳's avatar 周留芳

Merge branch 'func-eccs-2045' into test

parents 17ad2fab 194b83c0
...@@ -62,10 +62,10 @@ export default [ ...@@ -62,10 +62,10 @@ export default [
path: "verification", path: "verification",
title: "核销管理", title: "核销管理",
children: [ children: [
{ // {
path: "/verification", // path: "/verification",
title: "EOB管理", // title: "EOB管理",
}, // },
{ {
path: "/verification/collection", path: "/verification/collection",
title: "回款管理", title: "回款管理",
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
<a-row :gutter="30"> <a-row :gutter="30">
<a-col :lg="6" :sm="12"> <a-col :lg="6" :sm="12">
<a-form-model-item label="保险公司"> <a-form-model-item label="保险公司">
<a-select v-model="form.payorCode" placeholder="请选择保险公司" allow-clear :disabled="!isEdit"> <a-select v-model="form.payorCode" placeholder="请选择保险公司" allow-clear :disabled="!isEdit" @change="_getNewEOBList">
<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">
{{ item.longName }} {{ item.longName }}
</a-select-option> </a-select-option>
...@@ -55,71 +55,24 @@ ...@@ -55,71 +55,24 @@
<Icon :name="backMoneyNo?'ssibaocun':'ssiadd'" :size="14" />暂存 <Icon :name="backMoneyNo?'ssibaocun':'ssiadd'" :size="14" />暂存
</a-button> </a-button>
<a-button class="mar-left10" type="primary" @click="addNewEvt(1)"> <a-button class="mar-left10" type="primary" @click="addNewEvt(1)">
<Icon :name="backMoneyNo?'ssibaocun':'ssiadd'" :size="14" />{{backMoneyNo?'结案':'新建回款'}} <Icon :name="backMoneyNo?'ssibaocun':'ssiadd'" :size="14" />结案
</a-button>
</a-form-model-item>
</a-col>
<a-col :md="24" class="none-label" v-if="isEdit">
<a-form-model-item label="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-button>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row> </a-row>
</a-form-model> </a-form-model>
<!-- table --> <!-- 已关联账单 -->
<a-table :columns="columns" :data-source="dataList" :scroll="{ x: true }" :pagination="false" <template v-if="selectedRows.length > 0">
:row-selection="isEditNewEOB? { selectedRowKeys: selectedRowKeys, onChange: onSelectChange }: null"> <div class="table-title">已关联账单</div>
<template slot="eobNo" slot-scope="text,record"> <a-table class="table-content" :columns="selectedColumns" :data-source="selectedRows" :scroll="{ x: true }" :pagination="false">
<a @click="toEOBDetail(record)">{{text}}</a> </a-table>
</template>
<template slot="eobSts" slot-scope="text">
{{text | formatEOBStatus}}
</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> </template>
<!-- table -->
<div class="table-title">账单列表</div>
<a-table :columns="columns" :data-source="dataList" :scroll="{ x: true }" :pagination="false" :rowKey="'id'"
:row-selection="{ selectedRowKeys: selectedRowKeys, onSelect: onSelectChange, onSelectAll: onSelectAll }">
</a-table> </a-table>
<BurtPagination :pagination="pagination" @pageChange="pageChange" /> <BurtPagination :pagination="pagination" @pageChange="pageChange" />
<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="请选择状态" allow-clear>
<a-select-option v-for="(item,i) in EOBStatusOptions" :key="i" :value="item.value">{{item.name}}</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> </div>
</template> </template>
...@@ -145,7 +98,6 @@ export default { ...@@ -145,7 +98,6 @@ export default {
}, },
fileList: [], // 上传文件列表 fileList: [], // 上传文件列表
dataList: [], dataList: [],
backEobList: [], // eob回款列表
isEditNewEOB: false, //是否在新建回款 isEditNewEOB: false, //是否在新建回款
companyOptions: [], //保险公司 companyOptions: [], //保险公司
pagination: { pagination: {
...@@ -154,15 +106,8 @@ export default { ...@@ -154,15 +106,8 @@ export default {
total: 0, total: 0,
}, },
selectedRowKeys: [], // Check here to configure the default column selectedRowKeys: [], // Check here to configure the default column
selectedRows: [], // Check here to configure the default column
backMoneyNo: '', backMoneyNo: '',
editFormObj: {
id: '',
eobNo: '',
eobSts: '',
eobBackDate: null,
eobBackMoneyCny: '',
eobBackMoneyUsd: '',
},
editRules: { editRules: {
backAmountUsd: [{ required: true, message: "请输入", trigger: "blur" }], backAmountUsd: [{ required: true, message: "请输入", trigger: "blur" }],
backAmount: [{ required: true, message: "请输入", trigger: "blur" }], backAmount: [{ required: true, message: "请输入", trigger: "blur" }],
...@@ -177,23 +122,24 @@ export default { ...@@ -177,23 +122,24 @@ export default {
computed: { computed: {
columns() { columns() {
const base = [ const base = [
{ title: "账单编号", dataIndex: "receiptNo", scopedSlots: { customRender: 'eobNo' }, ellipsis: true, width: 150 }, { title: "账单编号", dataIndex: "receiptNo", ellipsis: true, width: 150 },
// { title: "病历号", dataIndex: "mrnNo", ellipsis: true, width: 195 }, // { title: "病历号", dataIndex: "mrnNo", ellipsis: true, width: 195 },
{ title: "客户姓名",dataIndex: "patientName", ellipsis: true, width: 110 }, { title: "客户姓名",dataIndex: "patientName", ellipsis: true, width: 110 },
// { title: "保险公司", dataIndex: "payorName", ellipsis: true, width: 160 }, // { title: "保险公司", dataIndex: "payorName", ellipsis: true, width: 160 },
{ title: "账单日期", dataIndex: "receiptDate", ellipsis: true, width: 150 }, { title: "账单日期", dataIndex: "createDate", ellipsis: true, width: 150 },
{ title: "收银", dataIndex: "receiptTellerName", ellipsis: true, width: 120,}, { title: "收银", dataIndex: "receiptTellerName", ellipsis: true, width: 120,},
{ title: "账单金额", dataIndex: "actualAmount", ellipsis: true, width: 150,}, { title: "账单金额", dataIndex: "actualAmount", ellipsis: true, width: 150,},
{ title: "回款金额", dataIndex: "backAmount", ellipsis: true, width: 150,}, { title: "回款金额", dataIndex: "backAmount", ellipsis: true, width: 150},
{ title: "余额", dataIndex: "residueBackAmount", ellipsis: true, width: 150,},
{ title: "回款日期", dataIndex: "receiptDate", ellipsis: true, width: 150,}, { title: "回款日期", dataIndex: "receiptDate", ellipsis: true, width: 150,},
// { title: "EOB号", dataIndex: "eobNo", ellipsis: true, width: 190 },
// { title: "EOB名称", dataIndex: "eobName", ellipsis: true, width: 160 },
]; ];
// if(this.backMoneyNo && !this.isEditNewEOB && this.isEdit){ // 编辑状态下已经保存的数据才可进行操作 return base
// return base.concat([ },
// { title: "操作", dataIndex: "operation", scopedSlots: { customRender: "operation" },fixed: "right", width: "170px", align: "center"}, selectedColumns() {
// ]) const base = JSON.parse(JSON.stringify(this.columns))
// } base[5] = { title: "回款金额", dataIndex: "backAmount", ellipsis: true, width: 150, customRender: (val, row) => {
return <a-input-number v-model={row.backAmount} allow-clear />
} }
return base return base
} }
}, },
...@@ -219,50 +165,41 @@ export default { ...@@ -219,50 +165,41 @@ export default {
return file return file
}) })
} }
this.getData(); this.getData();
} }
this._getNewEOBList();
}, },
methods: { methods: {
moment, moment,
// 查看的超链点击时链接已经生成好了,所以要点击的时候才set值才是对应的,不然存的都是最后一条数据 onSelectChange(selectedRow, selected) {
setData(record){ if(selected) {
localStorage.setItem('EobDataDetail', JSON.stringify(record)); this.selectedRowKeys.push(selectedRow.id)
}, this.selectedRows.push(selectedRow)
// EOB添加去查看的超链 } else {
toEOBDetail(record){ const index = this.selectedRowKeys.findIndex(item => item === selectedRow.id)
const { eobNo } = record; this.selectedRowKeys.splice(index, 1)
localStorage.setItem('EobDataDetail', JSON.stringify(record)); this.selectedRows.splice(index, 1)
this.$router.push({
path: '/verification/detail',
query: {
eobNo
} }
})
}, },
onSelectChange(selectedRowKeys) { onSelectAll(selected, selectedRows, changeRows) {
let arr = []; console.log(selected, selectedRows, changeRows)
for(let i=0; i<selectedRowKeys.length; i++){ if(selected) {
let idx = selectedRowKeys[i]; this.selectedRowKeys = this.selectedRowKeys.concat(changeRows.map(item => item.id))
if(this.dataList[idx].backMoneyNo){ this.selectedRows = this.selectedRows.concat(changeRows)
this.$msg.destroy(); } else {
this.$message.warning('回款编号已存在') changeRows.forEach(item => {
}else{ const findIndex = this.selectedRowKeys.findIndex(rowId => rowId === item.id)
arr.push(idx); this.selectedRowKeys.splice(findIndex, 1)
} this.selectedRows.splice(findIndex, 1)
})
} }
this.selectedRowKeys = arr;
}, },
pageChange(pager) { pageChange(pager) {
this.pagination = { this.pagination = {
...this.pagination, ...this.pagination,
...pager ...pager
} }
if(this.isEditNewEOB) { // 点击添加EOB之后 分页数据查询就应该调EOB数据
this._getNewEOBList() this._getNewEOBList()
return true;
}
this.getData();
}, },
// 获取保险公司下拉选项 // 获取保险公司下拉选项
_getCompanyOptions() { _getCompanyOptions() {
...@@ -270,48 +207,33 @@ export default { ...@@ -270,48 +207,33 @@ export default {
this.companyOptions = res.content || []; this.companyOptions = res.content || [];
}); });
}, },
handlerSearch() { // 获取已关联的账单
this.pagination.pageNum = 1;
this.getData();
},
getData() { getData() {
this.$apis.QUERYBACKRECEIPTLIST({ this.$apis.QUERYBACKRECEIPTLIST({
pageNum: this.pagination.pageNum, pageNum: 1,
pageSize: this.pagination.pageSize, pageSize: 999,
backMoneyNo: this.backMoneyNo backMoneyNo: this.backMoneyNo,
payorCode: this.form.payorCode
}) })
.then((res) => { .then((res) => {
if (res.returnCode == "0000") { if (res.returnCode == "0000") {
let content = res.content || {}; const list = res.content.list || [];
this.pagination.total = content.total || 0; this.selectedRowKeys = list.map(d => d.id)
this.dataList = content.list || []; this.selectedRows = list
this.backEobList = this.dataList.map(d => d)
} else { } else {
this.$message.error(res.returnMsg); this.$message.error(res.returnMsg);
} }
}); });
}, },
//添加EOB // 获取所有账单
addNewEOB(){
this.isEditNewEOB = !this.isEditNewEOB;
if(!this.isEditNewEOB){ //保存
this.addNewEvt(1)
.then(()=>{
this.isEditNewEOB = false;
})
}else{ //查询所有未加入的账单
this.pagination.pageNum = 1;
this._getNewEOBList()
}
},
_getNewEOBList(){ _getNewEOBList(){
this.$apis.QUERYBACKRECEIPTINFOLIST({ this.$apis.QUERYBACKRECEIPTINFOLIST({
pageNum: this.pagination.pageNum, pageNum: this.pagination.pageNum,
pageSize: this.pagination.pageSize pageSize: this.pagination.pageSize,
payorCode: this.form.payorCode
}) })
.then((res) => { .then((res) => {
if (res.returnCode == "0000") { if (res.returnCode == "0000") {
this.selectedRowKeys = [];
let content = res.content || {}; let content = res.content || {};
this.pagination.total = content.total || 0; this.pagination.total = content.total || 0;
this.dataList = content.list || []; this.dataList = content.list || [];
...@@ -323,33 +245,30 @@ export default { ...@@ -323,33 +245,30 @@ export default {
//新建/保存回款 //新建/保存回款
addNewEvt(backStatus){ addNewEvt(backStatus){
return new Promise((resolve,reject)=>{ return new Promise((resolve,reject)=>{
console.log(this.selectedRows)
if(!this.form.backAmountCny){ if(!this.form.backAmountCny){
this.$message.warning("请输入回款金额"); this.$message.warning("请输入回款金额");
reject(); reject();
return; return;
} }
let receiptVoList = this.selectedRows.map(item => {
let backMoneyEobList = []; return {
if(!this.isEditNewEOB) {
backMoneyEobList = this.backEobList
} else {
this.dataList.forEach((item,index)=>{
if(this.selectedRowKeys.indexOf(index)!=-1){
backMoneyEobList.push({
id: item.id, id: item.id,
eobNo: item.eobNo, backAmount: item.backAmount,
eobSts: item.eobSts,
eobBackDate: item.eobBackDate?moment(item.eobBackDate).format('YYYY-MM-DD 00:00:00'):'',
eobBackMoneyCny: item.eobBackMoneyCny,
eobBackMoneyUsd: item.eobBackMoneyUsd,
})
} }
}) })
const valid = receiptVoList.some(item => {
return !item.backAmount
})
if(valid) {
this.$message.warning("存在关联账单未输入回款金额");
reject();
return;
} }
const formData = { const formData = {
...this.form, ...this.form,
backMoneyEobList: backMoneyEobList, receiptVoList,
backDate: this.form.backDate? moment(this.form.backDate).format('YYYY-MM-DD 00:00:00'):'', backDate: this.form.backDate? moment(this.form.backDate).format('YYYY-MM-DD 00:00:00'):'',
backMoneyNo: this.backMoneyNo, //回款编号 backMoneyNo: this.backMoneyNo, //回款编号
backStatus // 0暂存 1结案 backStatus // 0暂存 1结案
...@@ -381,66 +300,6 @@ export default { ...@@ -381,66 +300,6 @@ export default {
}); });
}) })
}, },
//删除记录
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) {
let editFormObj = {
...this.editFormObj,
eobBackDate: this.editFormObj.eobBackDate?moment(this.editFormObj.eobBackDate).format('YYYY-MM-DD 00:00:00'):"",
}
this.$apis.SAVEBACKMONEY({
...this.form,
backMoneyEobList: [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);
}
});
}
});
},
/* ======== 上传区域 ======== */ /* ======== 上传区域 ======== */
// 上传之前 // 上传之前
...@@ -492,6 +351,13 @@ export default { ...@@ -492,6 +351,13 @@ export default {
opacity: 0; opacity: 0;
} }
} }
.table-title {
font-size: 15px;
margin: 12px 0 6px;
}
.table-content {
margin-bottom: 8px;
}
.ant-btn .icon-class { .ant-btn .icon-class {
.mg-r(10); .mg-r(10);
} }
......
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