Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
B
bims
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
孙海亮
bims
Commits
77e494f8
Commit
77e494f8
authored
Feb 18, 2022
by
yanglilong
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'test' of git.ssish.com:sunhailiang/bims
parents
37e60316
73f63c16
Changes
53
Show whitespace changes
Inline
Side-by-side
Showing
53 changed files
with
4212 additions
and
1238 deletions
+4212
-1238
index.html
public/index.html
+1
-1
base.js
src/api/apis_moudles/base.js
+1
-0
charge-query.js
src/api/apis_moudles/charge-query.js
+8
-0
customer.js
src/api/apis_moudles/customer.js
+6
-4
verification.js
src/api/apis_moudles/verification.js
+13
-1
welfare.js
src/api/apis_moudles/welfare.js
+13
-0
base.js
src/api/funcs_modules/base.js
+6
-0
charge-query.js
src/api/funcs_modules/charge-query.js
+35
-1
customer.js
src/api/funcs_modules/customer.js
+11
-0
verification.js
src/api/funcs_modules/verification.js
+60
-3
welfare.js
src/api/funcs_modules/welfare.js
+69
-1
request.js
src/api/request.js
+5
-0
state_code.js
src/api/state_code.js
+4
-1
common.less
src/assets/style/common.less
+3
-0
reset.less
src/assets/style/reset.less
+3
-1
index.js
src/components/Antd/index.js
+4
-2
index.vue
src/components/CUSTOMER/pagation/index.vue
+2
-2
icon.vue
src/components/Icon/icon.vue
+5
-1
charge-query.js
src/router/modules/charge-query.js
+10
-0
customer.js
src/router/modules/customer.js
+3
-3
menu.js
src/router/modules/menu.js
+16
-11
verification.js
src/router/modules/verification.js
+6
-6
welfare.js
src/router/modules/welfare.js
+13
-2
index.js
src/utils/index.js
+60
-2
login.vue
src/views/author/login.vue
+13
-7
detail.vue
src/views/charge-query/detail.vue
+65
-162
index.vue
src/views/charge-query/index.vue
+88
-132
lpjManage.vue
src/views/charge-query/lpjManage.vue
+229
-0
lpjManageDetail.vue
src/views/charge-query/lpjManageDetail.vue
+419
-0
index.vue
src/views/customer/edit/index.vue
+131
-112
index.vue
src/views/customer/info/index.vue
+56
-80
company.vue
src/views/info/company.vue
+37
-3
companyDiscount.vue
src/views/info/components/companyDiscount.vue
+1
-1
companyInfo.vue
src/views/info/components/companyInfo.vue
+20
-6
index.vue
src/views/info/index.vue
+54
-49
index.js
src/views/layout/components/menu/index.js
+1
-1
subMenu.vue
src/views/layout/components/menu/subMenu.vue
+3
-0
addEOB.vue
src/views/verification/addEOB.vue
+0
-13
collection.vue
src/views/verification/collection.vue
+90
-94
collectionAdd.vue
src/views/verification/collectionAdd.vue
+0
-13
collectionDetail.vue
src/views/verification/collectionDetail.vue
+355
-0
index.vue
src/views/verification/index.vue
+93
-88
indexDetail.vue
src/views/verification/indexDetail.vue
+357
-0
index.vue
src/views/welfare/edit/components/benefits/index.vue
+243
-0
index.vue
src/views/welfare/edit/components/condition/index.vue
+257
-0
index.vue
src/views/welfare/edit/components/coverages/index.vue
+243
-0
index.vue
src/views/welfare/edit/index.vue
+398
-0
index.vue
src/views/welfare/index.vue
+7
-435
PolicyInfo.vue
src/views/welfare/info/components/PolicyInfo.vue
+46
-0
index.vue
src/views/welfare/info/components/benefits/index.vue
+97
-0
index.vue
src/views/welfare/info/components/condition/index.vue
+70
-0
index.vue
src/views/welfare/info/components/coverages/index.vue
+179
-0
index.vue
src/views/welfare/info/index.vue
+303
-0
No files found.
public/index.html
View file @
77e494f8
...
...
@@ -8,7 +8,7 @@
<title><
%=
webpackConfig
.
name
%
></title>
<script
type=
"text/javascript"
src=
"//at.alicdn.com/t/font_3020450_
c8k1zo91rcb
.js"
src=
"//at.alicdn.com/t/font_3020450_
5d4bvzz8pmi
.js"
></script>
</head>
<body>
...
...
src/api/apis_moudles/base.js
View file @
77e494f8
...
...
@@ -7,4 +7,5 @@ export default {
uploadImg
:
"
/common/upload
"
,
specialtyList
:
"
/backstage/auth/specialtyList
"
,
coverageCode
:
"
/backstage/auth/coverageMasterList
"
,
getRefcdByRefgrp
:
"
/common/getRefcdByRefgrp
"
,
// 公共获取码表接口
};
src/api/apis_moudles/charge-query.js
View file @
77e494f8
// 收费查询api
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
"
,
getCompanyOptions
:
"
/backstage/auth/payorListNopage
"
,
getDoctorListNoPage
:
"
/backstage/auth/doctorListNoPage
"
,
//医生列表
getChargeListDetail
:
"
/backstage/auth/receiptDetailList
"
,
//账单明细
getReceiptPaymentDetail
:
"
/backstage/auth/receiptPaymentDetail
"
,
//账单明细
queryCiReceipSendList
:
"
/backstage/auth/queryCiReceipSendList
"
,
//理赔件账单寄送查询
};
src/api/apis_moudles/customer.js
View file @
77e494f8
// 客户管理api
export
default
{
getCustomerList
:
"
/backstage/auth/patientList
"
,
updateCustomList
:
"
/backstage/auth/updatePatientPolicy
"
,
createCustomer
:
"
/backstage/auth/createPatient
"
,
customerDetail
:
"
/backstage/auth/patientDetail
"
,
getCustomerList
:
"
/backstage/auth/patientList
"
,
// 获取用户信息列表
updateCustomList
:
"
/backstage/auth/updatePatientPolicy
"
,
// 修改用户信息
createCustomer
:
"
/backstage/auth/createPatient
"
,
// 新建用户信息
customerDetail
:
"
/backstage/auth/patientDetail
"
,
// 获取用户详细信息
createClaimPdf
:
"
/backstage/auth/createClaimPdf
"
,
// 获取用户理赔申请书
deleteCustom
:
"
/backstage/auth/patientDelete
"
// 删除客户
};
src/api/apis_moudles/verification.js
View file @
77e494f8
// 核销管理api
export
default
{};
export
default
{
queryEobList
:
"
/backstage/auth/queryEobList
"
,
//EOB列表查询
queryEobReceiptList
:
"
/backstage/auth/queryEobReceiptList
"
,
//EOB待核销账单查询
queryEobNeedReceiptList
:
"
/backstage/auth/queryEobNeedReceiptList
"
,
//EOB待确认账单列表查询
deleteEobReceiptInfo
:
"
/backstage/auth/deleteEobReceiptInfo
"
,
//删除EOB
saveEobReceiptInfo
:
"
/backstage/auth/saveEobReceiptInfo
"
,
//EOB新建
queryBackMoneyList
:
"
/backstage/auth/queryBackMoneyList
"
,
//回款列表
queryBackEobList
:
"
/backstage/auth/queryBackEobList
"
,
//回款关联EOB列表查询
queryEobInfoList
:
"
/backstage/auth/queryEobInfoList
"
,
//待回款EOB列表查询
saveBackMoney
:
"
/backstage/auth/saveBackMoney
"
,
//新建回款
deleteBackMoney
:
"
/backstage/auth/deleteBackMoney
"
,
//删除回款
};
src/api/apis_moudles/welfare.js
View file @
77e494f8
// 福利管理api
export
default
{
benefitType
:
"
/backstage/auth/benefitMasterList
"
,
planList
:
"
/backstage/auth/planListPage
"
,
editPlan
:
"
/backstage/auth/planEdit
"
,
coverageCode
:
"
/backstage/auth/coverageMasterList
"
,
coverageList
:
"
/backstage/auth/coverageList
"
,
addCoverage
:
"
/backstage/auth/createCoverage
"
,
editCoverage
:
"
/backstage/auth/coverageEdit
"
,
conditionList
:
"
/backstage/auth/conditionList
"
,
addCondition
:
"
/backstage/auth/conditionCreate
"
,
editCondition
:
"
/backstage/auth/conditionEdit
"
,
benefitList
:
"
/backstage/auth/benefitList
"
,
addBenefit
:
"
/backstage/auth/createBenefit
"
,
editBenefit
:
"
/backstage/auth/benefitEdit
"
,
getFrequencyCode
:
"
/backstage/auth/frequencyList
"
,
getLimitCode
:
"
/backstage/auth/limitList
"
,
};
src/api/funcs_modules/base.js
View file @
77e494f8
...
...
@@ -41,6 +41,11 @@ const GETCOVERAGECODE = (data) => {
return
req
.
post
(
apis
.
coverageCode
,
data
);
};
// 公共获取码表列表
const
GETREFCDBYREFGRP
=
(
data
)
=>
{
return
req
.
post
(
apis
.
getRefcdByRefgrp
,
data
);
};
// 对象数组
export
default
{
GETUSERINFO
,
...
...
@@ -50,4 +55,5 @@ export default {
GETSPECIALTYLIST
,
UPLOADIMG
,
GETCOVERAGECODE
,
GETREFCDBYREFGRP
,
};
src/api/funcs_modules/charge-query.js
View file @
77e494f8
// 收费查询函数库
import
apis
from
"
../apis_moudles/
"
;
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
const
GETCHARGELIST
=
function
(
data
)
{
return
req
.
post
(
apis
.
getChargeList
,
data
);
...
...
@@ -21,11 +41,25 @@ const GETCHARGELISTDETAIL = function (data) {
const
GETRECEIPTPAYMENTDETAIL
=
function
(
data
)
{
return
req
.
post
(
apis
.
getReceiptPaymentDetail
,
data
);
};
// 理赔件账单寄送查询
const
QUERYCIRECEIPSENDLIST
=
function
(
data
)
{
return
req
.
post
(
apis
.
queryCiReceipSendList
,
data
);
};
// 对象数组
export
default
{
QUERYSENDINFOLIST
,
DELETERECEIPTSENDINFO
,
SAVERECEIPSENDINFO
,
QUERYSENDRECEIPLIST
,
QUERYNOSENDRECEIPLIST
,
GETCHARGELIST
,
GETCOMPANYOPTIONS
,
GETDOCTORlISTNOPAGE
,
GETCHARGELISTDETAIL
,
GETRECEIPTPAYMENTDETAIL
GETRECEIPTPAYMENTDETAIL
,
QUERYCIRECEIPSENDLIST
,
};
src/api/funcs_modules/customer.js
View file @
77e494f8
...
...
@@ -21,10 +21,21 @@ const UPDATECUSTOMDATA = function (data) {
const
CREATENEWCUSTOMER
=
function
(
data
)
{
return
req
.
post
(
apis
.
createCustomer
,
data
);
};
// 删除客户
const
DELETECUSTOM
=
function
(
data
)
{
return
req
.
post
(
apis
.
deleteCustom
,
data
);
};
// 获取用户理赔申请书
const
CREATECUSTOMERCLAIMPGF
=
function
(
data
)
{
return
req
.
post
(
apis
.
createClaimPdf
,
data
,
{
responseType
:
"
blob
"
});
};
export
default
{
GETCUSTOMERLIST
,
GETCUSTOMERDETAIL
,
UPDATECUSTOMDATA
,
CREATENEWCUSTOMER
,
DELETECUSTOM
,
CREATECUSTOMERCLAIMPGF
};
src/api/funcs_modules/verification.js
View file @
77e494f8
// 核销管理函数库
// import apis from "../apis_moudles/index";
// import req from "../request";
import
apis
from
"
../apis_moudles/verification.js
"
;
import
req
from
"
../request
"
;
//EOB列表查询
const
QUERYEOBLIST
=
(
data
)
=>
{
return
req
.
post
(
apis
.
queryEobList
,
data
);
};
//EOB待核销账单查询
const
QUERYEOBRECEIPTLIST
=
(
data
)
=>
{
return
req
.
post
(
apis
.
queryEobReceiptList
,
data
);
};
//EOB待确认账单列表查询
const
QUERYEOBNEEDRECEIPTLIST
=
(
data
)
=>
{
return
req
.
post
(
apis
.
queryEobNeedReceiptList
,
data
);
};
//EOB新建
const
SAVEEOBRECEIPTINFO
=
(
data
)
=>
{
return
req
.
post
(
apis
.
saveEobReceiptInfo
,
data
);
};
//删除EOB
const
DELEOBRECEIPTINFO
=
(
data
)
=>
{
return
req
.
post
(
apis
.
deleteEobReceiptInfo
,
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
);
};
//新建回款
const
SAVEBACKMONEY
=
(
data
)
=>
{
return
req
.
post
(
apis
.
saveBackMoney
,
data
);
};
//删除回款
const
DELETEBACKMONEY
=
(
data
)
=>
{
return
req
.
post
(
apis
.
deleteBackMoney
,
data
);
};
// 对象数组
export
default
{};
export
default
{
QUERYEOBLIST
,
QUERYEOBRECEIPTLIST
,
QUERYEOBNEEDRECEIPTLIST
,
SAVEEOBRECEIPTINFO
,
DELEOBRECEIPTINFO
,
QUERYBACKMONEYLIST
,
QUERYBACKEOBLIST
,
QUERYEOBINFOLIST
,
SAVEBACKMONEY
,
DELETEBACKMONEY
,
};
\ No newline at end of file
src/api/funcs_modules/welfare.js
View file @
77e494f8
...
...
@@ -6,9 +6,77 @@ const GETBENEGITTYPE = () => {
return
req
.
post
(
apis
.
benefitType
);
};
const
GETPLANLIST
=
(
data
)
=>
{
return
req
.
post
(
apis
.
planList
,
data
);
};
const
EDITPLANDATE
=
(
data
)
=>
{
return
req
.
post
(
apis
.
editPlan
,
data
);
};
const
GETCOVERAGELIST
=
(
data
)
=>
{
return
req
.
post
(
apis
.
coverageList
,
data
);
};
const
GETCONDITIONLIST
=
(
data
)
=>
{
return
req
.
post
(
apis
.
conditionList
,
data
);
};
const
ADDCONDITIONDATA
=
(
data
)
=>
{
return
req
.
post
(
apis
.
addCondition
,
data
);
};
const
EDITCONDITIONDATA
=
(
data
)
=>
{
return
req
.
post
(
apis
.
editCondition
,
data
);
};
const
GETBENEFITLIST
=
(
data
)
=>
{
return
req
.
post
(
apis
.
benefitList
,
data
);
};
const
ADDBENEFITLIST
=
(
data
)
=>
{
return
req
.
post
(
apis
.
addBenefit
,
data
);
};
const
EDITBENEFITLIST
=
(
data
)
=>
{
return
req
.
post
(
apis
.
editBenefit
,
data
);
};
const
GETCOVERAGECODE
=
(
data
)
=>
{
return
req
.
post
(
apis
.
coverageCode
,
data
);
};
const
ADDCOVERAGEDATA
=
(
data
)
=>
{
return
req
.
post
(
apis
.
addCoverage
,
data
);
};
const
EDITCOVERAGEDATA
=
(
data
)
=>
{
return
req
.
post
(
apis
.
editCoverage
,
data
);
};
const
GETFREQUENCYCODE
=
(
data
)
=>
{
return
req
.
post
(
apis
.
getFrequencyCode
,
data
);
};
const
GETLIMITCODE
=
(
data
)
=>
{
return
req
.
post
(
apis
.
getLimitCode
,
data
);
};
// 对象数组
export
default
{
GETBENEGITTYPE
,
GETCOVERAGELIST
};
export
default
{
GETBENEGITTYPE
,
GETPLANLIST
,
EDITPLANDATE
,
GETCOVERAGELIST
,
GETCONDITIONLIST
,
ADDCONDITIONDATA
,
EDITCONDITIONDATA
,
GETBENEFITLIST
,
ADDBENEFITLIST
,
EDITBENEFITLIST
,
GETCOVERAGECODE
,
ADDCOVERAGEDATA
,
EDITCOVERAGEDATA
,
GETFREQUENCYCODE
,
GETLIMITCODE
,
};
src/api/request.js
View file @
77e494f8
...
...
@@ -60,6 +60,11 @@ service.interceptors.response.use(
const
PUBSTATE
=
code
.
PUB_ERR
(
returnCode
,
returnMsg
,
response
.
config
);
// 请求成功,但逻辑或者业务有错,返回具体数据,根据业务决定是否要提示 有token失效全局异常不返回
if
(
TOKENSTATE
&&
PUBSTATE
)
{
const
{
config
}
=
response
if
(
config
&&
config
.
responseType
===
'
blob
'
)
{
resolve
(
response
)
return
true
}
resolve
(
response
.
data
);
}
}
...
...
src/api/state_code.js
View file @
77e494f8
...
...
@@ -14,9 +14,12 @@ const TOKEN_INVLIDE_TO_LOGIN = (code) => {
});
}
// 清除个人数据
store
.
commit
(
"
user
/setUserInfo
"
,
""
);
store
.
commit
(
"
common
/setUserInfo
"
,
""
);
route
.
replace
({
path
:
"
/login
"
,
query
:
{
redirect
:
route
.
currentRoute
.
fullPath
,
},
});
return
false
;
}
else
{
...
...
src/assets/style/common.less
View file @
77e494f8
...
...
@@ -31,6 +31,9 @@ button::-moz-focus-inner {
.mar-left10 {
.mg-l(30);
}
.mar-bottom10 {
.mg-b(20);
}
// 媒体查询
// 文本超长
...
...
src/assets/style/reset.less
View file @
77e494f8
...
...
@@ -238,7 +238,8 @@ select {
font-family: PingFangSC-Medium, PingFang SC;
}
}
.ant-calendar-picker {
.ant-calendar-picker,
.ant-input-number {
width: 100%;
}
// .ant-table,
...
...
@@ -271,6 +272,7 @@ select {
}
.ant-input,
.ant-input-number,
.ant-select-selection {
border: none;
background-color: #f8fafb;
...
...
src/components/Antd/index.js
View file @
77e494f8
...
...
@@ -19,7 +19,8 @@ import {
popconfirm
,
Modal
,
modal
,
Spin
Spin
,
Collapse
,
}
from
"
ant-design-vue
"
;
export
default
()
=>
{
...
...
@@ -43,7 +44,8 @@ export default () => {
popconfirm
,
Modal
,
modal
,
Spin
Spin
,
Collapse
,
];
// 注册
els
.
forEach
((
item
)
=>
{
...
...
src/components/CUSTOMER/pagation/index.vue
View file @
77e494f8
...
...
@@ -67,12 +67,12 @@ export default {
this
.
jumpPage
=
this
.
jumpPage
<
0
?
0
:
this
.
jumpPage
;
this
.
jumpPage
=
this
.
jumpPage
>
pages
?
pages
:
this
.
jumpPage
;
this
.
pagination
.
pageNum
=
this
.
jumpPage
;
this
.
$emit
(
"
pageChange
"
);
this
.
$emit
(
"
pageChange
"
,
{
pageNum
:
this
.
jumpPage
}
);
},
//改变分页
pageChange
(
pager
)
{
this
.
pagination
.
pageNum
=
pager
;
this
.
$emit
(
"
pageChange
"
);
this
.
$emit
(
"
pageChange
"
,
{
pageNum
:
pager
}
);
},
},
};
...
...
src/components/Icon/icon.vue
View file @
77e494f8
<
template
>
<div
class=
"icon-class"
:style=
"`font-size:$
{size}px`" @click="clickEvent">
<div
class=
"icon-class"
:style=
"`font-size:$
{size}px`"
@click="clickEvent"
>
<svg
class=
"icon"
aria-hidden=
"true"
>
<use
:xlink:href=
"iconName"
/>
</svg>
...
...
src/router/modules/charge-query.js
View file @
77e494f8
...
...
@@ -14,6 +14,16 @@ export default {
path
:
"
detail
"
,
name
:
"
chargeQueryDetail
"
,
component
:
()
=>
import
(
/* webpackChunkName: "chargeQuery" */
"
@/views/charge-query/detail.vue
"
)
},
{
path
:
"
lpjManage
"
,
name
:
"
chargeQueryLpjManage
"
,
component
:
()
=>
import
(
/* webpackChunkName: "chargeQuery" */
"
@/views/charge-query/lpjManage.vue
"
)
},
{
path
:
"
lpjManageDetail
"
,
name
:
"
chargeQueryLpjManageDetail
"
,
component
:
()
=>
import
(
/* webpackChunkName: "chargeQuery" */
"
@/views/charge-query/lpjManageDetail.vue
"
)
}
]
};
src/router/modules/customer.js
View file @
77e494f8
// 客户信息路由表,分包名称:customer
export
default
{
path
:
"
/
customer
"
,
path
:
"
/
"
,
redirect
:
"
customerInfo
"
,
component
:
()
=>
{
return
import
(
/* webpackChunkName: "customer" */
"
@/views/customer
"
);
},
children
:
[
{
path
:
""
,
path
:
"
customer
"
,
name
:
"
customerInfo
"
,
component
:
()
=>
import
(
"
@/views/customer/info
"
),
},
{
path
:
"
edit
"
,
path
:
"
customer/
edit
"
,
name
:
"
customerEdit
"
,
component
:
()
=>
import
(
"
@/views/customer/edit
"
),
},
...
...
src/router/modules/menu.js
View file @
77e494f8
...
...
@@ -16,9 +16,18 @@ export default [
},
{
icon
:
"
ssimanage_msg
"
,
path
:
"
2
"
,
title
:
"
福利信息管理
"
,
children
:
[
{
path
:
"
/welfare
"
,
title
:
"
福利信息明细
"
,
},
{
path
:
"
/welfare/edit
"
,
title
:
"
福利信息管理
"
,
children
:
[],
},
],
},
{
icon
:
"
ssimanage
"
,
...
...
@@ -44,6 +53,10 @@ export default [
path
:
"
/charge-query
"
,
title
:
"
账单查询
"
,
},
{
path
:
"
/charge-query/lpjManage
"
,
title
:
"
理赔件管理
"
,
},
],
},
{
...
...
@@ -55,18 +68,10 @@ export default [
path
:
"
/verification
"
,
title
:
"
EOB管理
"
,
},
{
path
:
"
/verification/addEOB
"
,
title
:
"
新建EOB数据
"
,
},
{
path
:
"
/verification/collection
"
,
title
:
"
回款管理
"
,
},
{
path
:
"
/verification/collectionAdd
"
,
title
:
"
新建回款管理
"
,
},
],
},
{
...
...
@@ -87,7 +92,7 @@ export default [
{
icon
:
"
ssiscan
"
,
path
:
"
/bi
"
,
title
:
"
报
销
"
,
title
:
"
报
表
"
,
children
:
[],
},
];
src/router/modules/verification.js
View file @
77e494f8
...
...
@@ -11,9 +11,9 @@ export default {
component
:
()
=>
import
(
"
@/views/verification/index
"
),
},
{
path
:
"
addEOB
"
,
name
:
"
Verification
AddEOB
"
,
component
:
()
=>
import
(
"
@/views/verification/
addEOB
"
),
path
:
"
detail
"
,
name
:
"
Verification
IndexDetail
"
,
component
:
()
=>
import
(
"
@/views/verification/
indexDetail
"
),
},
{
path
:
"
collection
"
,
...
...
@@ -21,9 +21,9 @@ export default {
component
:
()
=>
import
(
"
@/views/verification/collection
"
),
},
{
path
:
"
collection
Add
"
,
name
:
"
VerificationCollection
Add
"
,
component
:
()
=>
import
(
"
@/views/verification/collection
Add
"
),
path
:
"
collection
Detail
"
,
name
:
"
VerificationCollection
Detail
"
,
component
:
()
=>
import
(
"
@/views/verification/collection
Detail
"
),
},
],
};
src/router/modules/welfare.js
View file @
77e494f8
// 福利管理路由表,分包名称:welfare
export
default
{
path
:
"
/welfare
"
,
name
:
"
welfare
"
,
path
:
"
/
"
,
component
:
()
=>
{
return
import
(
/* webpackChunkName: "Welfare" */
"
@/views/welfare
"
);
},
children
:
[
{
path
:
"
welfare
"
,
name
:
"
welfareInfo
"
,
component
:
()
=>
import
(
"
@/views/welfare/info
"
),
},
{
path
:
"
welfare/edit
"
,
name
:
"
welfareEdit
"
,
component
:
()
=>
import
(
"
@/views/welfare/edit
"
),
},
],
};
src/utils/index.js
View file @
77e494f8
// 统一暴露工具,供其他地方调用
// 数组转对象
function
arrToObj
(
arr
)
{
export
function
arrToObj
(
arr
)
{
// 参数必须是一个数组
if
(
!
Array
.
isArray
(
arr
))
{
throw
new
Error
(
"
type err: arr 必须是一个数组
"
);
...
...
@@ -13,4 +13,62 @@ function arrToObj(arr) {
});
return
obj
;
}
export
default
{
arrToObj
};
/*
* 文件流转换为url
* @params file 文件流
* @return url
*/
export
function
getObjectURL
(
file
)
{
console
.
log
(
file
)
let
url
=
null
;
if
(
window
.
createObjectURL
!=
undefined
)
{
// basic
url
=
window
.
createObjectURL
(
file
);
}
else
if
(
window
.
webkitURL
!=
undefined
)
{
// webkit or chrome
url
=
window
.
webkitURL
.
createObjectURL
(
file
);
}
else
if
(
window
.
URL
!=
undefined
)
{
// mozilla(firefox)
url
=
window
.
URL
.
createObjectURL
(
file
);
}
return
url
;
}
/**
* @description 文件下载(兼容IE)
* @param {Object} response options 接口响应的数据 包括文件流及保文信息
* @param {String} file_name 文件名称
* @returns {undefined} undefined
*/
export
function
downloadFile
(
response
,
file_name
=
"
ExportFile
"
)
{
const
fileType
=
response
.
headers
[
"
content-type
"
]
||
"
application/pdf
"
;
const
disposition
=
response
.
headers
[
"
content-disposition
"
]
if
(
disposition
)
{
file_name
=
disposition
.
split
(
"
filename=
"
)[
1
]
}
const
blob
=
new
Blob
([
response
.
data
],
{
type
:
`
${
fileType
}
;charset=utf-8`
});
const
ie
=
navigator
.
userAgent
.
match
(
/MSIE
\s([\d
.
]
+
)
/
),
ie11
=
navigator
.
userAgent
.
match
(
/Trident
\/
7.0/
)
&&
navigator
.
userAgent
.
match
(
/rv:11/
),
ieEDGE
=
navigator
.
userAgent
.
match
(
/Edge/g
),
ieVer
=
ie
?
ie
[
1
]
:
ie11
?
11
:
ieEDGE
?
12
:
-
1
;
if
(
ie
&&
ieVer
<
10
)
{
this
.
message
.
error
(
'
No blobs on IE<10
'
);
return
;
}
if
(
ieVer
>
-
1
)
{
window
.
navigator
.
msSaveBlob
(
blob
,
file_name
);
return
{}
}
else
{
const
url
=
window
.
URL
.
createObjectURL
(
blob
);
return
{
url
,
file_name
}
// let link = document.createElement('a');
// link.setAttribute('href', url);
// link.setAttribute('download', file_name);
// document.body.appendChild(link);
// link.click();
// document.body.removeChild(link);
}
}
\ No newline at end of file
src/views/author/login.vue
View file @
77e494f8
<
template
>
<div
class=
"login"
>
<h2
class=
"title"
>
{{
title
}}
</h2>
<h2
class=
"title"
>
{{
title
}}
</h2>
<div
class=
"content"
>
<p
class=
"module-title"
>
<span>
密码登录
</span>
...
...
@@ -33,7 +33,9 @@
</a-input>
</a-form-model-item>
<a-form-model-item>
<a-button
type=
"primary"
block
@
click.stop=
"handlerLogin"
>
登录
</a-button>
<a-button
type=
"primary"
block
@
click.stop=
"handlerLogin"
>
登录
</a-button
>
</a-form-model-item>
</a-form-model>
</div>
...
...
@@ -42,6 +44,7 @@
<
script
>
import
{
title
}
from
"
@/settings
"
;
import
{
downloadFile
}
from
'
@/utils/index
'
export
default
{
data
()
{
return
{
...
...
@@ -49,7 +52,7 @@ export default {
form
:
{
userName
:
process
.
env
.
VUE_APP_USER
||
""
,
passWord
:
process
.
env
.
VUE_APP_PWD
||
""
,
verificationCode
:
""
verificationCode
:
""
,
},
formRules
:
{
userName
:
[{
required
:
true
,
message
:
"
请输入用户名
"
}],
...
...
@@ -73,7 +76,7 @@ export default {
},
_getVerifyImg
()
{
this
.
$apis
.
GETVERIFYIMG
().
then
((
res
)
=>
{
const
url
=
window
.
URL
.
createObjectURL
(
res
);
const
{
url
}
=
downloadFile
(
res
);
this
.
verifyImg
=
url
||
""
;
});
},
...
...
@@ -81,7 +84,8 @@ export default {
this
.
$apis
.
LOGIN
(
this
.
form
).
then
((
res
)
=>
{
if
(
res
.
returnCode
===
"
0000
"
)
{
this
.
$store
.
commit
(
"
common/setUserInfo
"
,
res
.
content
);
this
.
$router
.
replace
(
"
/customer
"
);
const
path
=
this
.
$route
.
query
&&
this
.
$route
.
query
.
redirect
||
"
/customer
"
;
this
.
$router
.
replace
(
path
);
}
else
{
this
.
$message
.
error
(
res
.
returnMsg
||
"
出现错误
"
);
this
.
form
.
verificationCode
=
""
;
...
...
@@ -115,11 +119,11 @@ export default {
.bd-b(solid, 31, transparent);
}
&::before {
.l(-
20
);
.l(-
18.8
);
.bd-r(solid, 20, #2b63ff);
}
&::after {
.r(-
20
);
.r(-
18.8
);
.bd-l(solid, 20, #2b63ff);
}
}
...
...
@@ -142,6 +146,8 @@ export default {
.mg-t(13);
}
.verify-img {
.w(110px);
height: 100%;
cursor: pointer;
}
}
...
...
src/views/charge-query/detail.vue
View file @
77e494f8
<
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
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"病历号"
>
<a-input
v-model=
"form.patientNo"
placeholder=
"请输入病历号"
allow-clear
></a-input>
<a-input
v-model=
"form.patientNo"
placeholder=
"请输入病历号"
allow-clear
/>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"客户姓名"
>
<a-input
v-model=
"form.patientName"
placeholder=
"请输入客户姓名"
allow-clear
></a-input>
<a-input
v-model=
"form.patientName"
placeholder=
"请输入客户姓名"
allow-clear
/>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"客户类型"
>
<a-select
v-model=
"form.patientType"
placeholder=
"请选择客户类型"
allowClear
>
<a-select-option
v-for=
"item in patientTypeOptions"
:key=
"item.code"
:value=
"item.code"
>
<a-select
v-model=
"form.patientType"
placeholder=
"请选择客户类型"
allowClear
>
<a-select-option
v-for=
"item in patientTypeOptions"
:key=
"item.code"
:value=
"item.code"
>
{{
item
.
name
}}
</a-select-option>
</a-select>
...
...
@@ -41,16 +24,8 @@
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保险公司"
>
<a-select
v-model=
"form.payorId"
placeholder=
"请选择保险公司"
allowClear
>
<a-select-option
v-for=
"item in companyOptions"
:key=
"item.corpCode"
:value=
"item.id"
>
<a-select
v-model=
"form.payorId"
placeholder=
"请选择保险公司"
allowClear
>
<a-select-option
v-for=
"item in companyOptions"
:key=
"item.corpCode"
:value=
"item.id"
>
{{
item
.
longName
}}
</a-select-option>
</a-select>
...
...
@@ -58,16 +33,8 @@
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"看诊医生"
>
<a-select
v-model=
"form.doctorCode"
placeholder=
"请选择看诊医生"
allowClear
>
<a-select-option
v-for=
"item in doctorOptions"
:key=
"item.doctorCode"
:value=
"item.doctorCode"
>
<a-select
v-model=
"form.doctorCode"
placeholder=
"请选择看诊医生"
allowClear
>
<a-select-option
v-for=
"item in doctorOptions"
:key=
"item.doctorCode"
:value=
"item.doctorCode"
>
{{
item
.
doctorDesc
}}
</a-select-option>
</a-select>
...
...
@@ -75,38 +42,24 @@
</a-col>
<a-col
:xl=
"5"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"就诊时间"
>
<a-range-picker
format=
"YYYY-MM-DD"
v-model=
"form.dateRange"
:placeholder=
"['开始时间', '结束时间']"
@
change=
"onSelectVisitTime"
/>
<a-range-picker
format=
"YYYY-MM-DD"
v-model=
"form.dateRange"
:placeholder=
"['开始时间', '结束时间']"
@
change=
"onSelectVisitTime"
/>
</a-form-model-item>
</a-col>
<a-col
:xl=
"3"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"支付方式"
>
<a-select
v-model=
"form.paymentCode"
placeholder=
"请选择支付方式"
allowClear
>
<a-select-option
v-for=
"item in paymentOptions"
:key=
"item.code"
:value=
"item.code"
allow-clear
>
<a-select
v-model=
"form.paymentCode"
placeholder=
"请选择支付方式"
allowClear
>
<a-select-option
v-for=
"item in paymentOptions"
:key=
"item.code"
:value=
"item.code"
allow-clear
>
{{
item
.
name
}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:xl=
"1
2
"
:lg=
"12"
:sm=
"12"
class=
"none-label"
>
<a-col
:xl=
"1
6
"
:lg=
"12"
:sm=
"12"
class=
"none-label"
>
<a-form-model-item
label=
"button"
>
<a-button>
更新数据
</a-button>
<
!--
<
a-button>
更新数据
</a-button>
<a-button
class=
"mar-left10"
type=
"primary"
@
click=
"addNewCharge"
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
新建预授权
</a-button
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
新建预授权
</a-button>
-->
<a-button
class=
"mar-left10"
type=
"primary"
@
click=
"handlerReset"
>
<Icon
name=
"ssireset"
:size=
"14"
/>
重置
</a-button>
...
...
@@ -118,52 +71,35 @@
</a-row>
</a-form-model>
<!-- table -->
<a-table
:columns=
"columns"
:data-source=
"dataList"
row-key=
"id"
:scroll=
"
{ x: true }"
:customRow="handlerRowClick"
:pagination="true"
>
<a-table
:columns=
"columns"
:data-source=
"dataList"
:scroll=
"
{ x: true }" :pagination="false">
<template
slot=
"operation"
slot-scope=
"record"
>
<a-button
v-if=
"record.isEdit"
type=
"link"
@
click.stop=
"saveChange(record)"
>
保存
</a-button
>
<a-button
v-else
type=
"link"
@
click.stop=
"changeDataStatus(record)"
>
修改
</a-button
>
<!--
<a-button
type=
"link"
class=
"success"
>
查看
</a-button>
-->
<a-popconfirm
title=
"你确定要关闭吗?"
ok-text=
"确定"
cancel-text=
"取消"
@
confirm=
"deleteData"
>
<a-button
type=
"link"
@
click.stop=
"editEvt(record)"
>
修改
</a-button>
<a-popconfirm
title=
"你确定要关闭吗?"
ok-text=
"确定"
cancel-text=
"取消"
@
confirm=
"deleteData"
>
<a-button
type=
"link"
class=
"danger"
>
删除
</a-button>
</a-popconfirm>
</
template
>
</a-table>
<!--分页-->
<BurtPagination
:pagination=
"pag
er
"
@
pageChange=
"_getChargeListDetail"
/>
<BurtPagination
:pagination=
"pag
ination
"
@
pageChange=
"_getChargeListDetail"
/>
<div
class=
"title-div"
>
费用支付明细
</div>
<a-table
:columns=
"payColumns"
:data-source=
"payDataList"
row-key=
"id"
:scroll=
"{ x: true }"
:pagination=
"false"
class=
"payTable"
>
<a-table
:columns=
"payColumns"
:data-source=
"payDataList"
:scroll=
"{ x: true }"
:pagination=
"false"
class=
"payTable"
>
<
template
slot=
"paymentType"
slot-scope=
"text"
>
<a-button
class=
"danger"
>
{{
text
|
payStyleFilters
}}
</a-button>
</
template
>
</a-table>
<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-col>
</a-row>
</a-form-model>
</a-modal>
</div>
</template>
...
...
@@ -174,16 +110,8 @@ export default {
data
()
{
const
columns
=
[
{
title
:
"
项目
"
,
dataIndex
:
"
itemcatDesc
"
,
width
:
180
},
{
title
:
"
项目明细
"
,
dataIndex
:
"
itemDesc
"
,
width
:
180
,
},
{
title
:
"
单价
"
,
dataIndex
:
"
itemPrice
"
,
width
:
120
,
},
{
title
:
"
项目明细
"
,
dataIndex
:
"
itemDesc
"
,
width
:
180
},
{
title
:
"
单价
"
,
dataIndex
:
"
itemPrice
"
,
width
:
120
},
{
title
:
"
数量
"
,
dataIndex
:
"
itemQty
"
,
width
:
180
},
{
title
:
"
单位
"
,
dataIndex
:
"
itemUnit
"
,
width
:
180
},
{
title
:
"
金额
"
,
dataIndex
:
"
chargeAmount
"
,
width
:
180
},
...
...
@@ -191,18 +119,11 @@ export default {
{
title
:
"
折后金额
"
,
dataIndex
:
"
actualAmount
"
,
width
:
180
},
{
title
:
"
减免金额
"
,
dataIndex
:
"
reduceAmount
"
,
width
:
180
},
{
title
:
"
实际金额
"
,
dataIndex
:
"
paidAmount
"
,
width
:
180
},
{
title
:
"
免赔额
"
,
dataIndex
:
"
deductible
"
,
width
:
180
},
{
title
:
"
自付额
"
,
dataIndex
:
"
selfPaid
"
,
width
:
180
},
{
title
:
"
其他费用
"
,
dataIndex
:
"
otherPaid
"
,
width
:
180
},
{
title
:
"
实际金额
"
,
dataIndex
:
"
actualPaid
"
,
width
:
180
},
{
title
:
"
操作
"
,
key
:
"
operation
"
,
width
:
"
175px
"
,
fixed
:
"
right
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
},
{
title
:
"
操作
"
,
key
:
"
operation
"
,
width
:
"
175px
"
,
fixed
:
"
right
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
align
:
"
center
"
},
];
const
payColumns
=
[
{
title
:
"
免赔额
"
,
dataIndex
:
"
deductible
"
,
width
:
180
},
...
...
@@ -210,14 +131,10 @@ export default {
{
title
:
"
其他费用
"
,
dataIndex
:
"
otherPaid
"
,
width
:
180
},
{
title
:
"
个人支付
"
,
dataIndex
:
"
personalPaid
"
,
width
:
180
},
{
title
:
"
商保支付
"
,
dataIndex
:
"
ciPaid
"
,
width
:
180
},
{
title
:
"
支付方式
"
,
dataIndex
:
"
paymentType
"
,
width
:
180
,
scopedSlots
:
{
customRender
:
"
paymentType
"
},
},
{
title
:
"
支付方式
"
,
dataIndex
:
"
paymentType
"
,
width
:
180
,
scopedSlots
:
{
customRender
:
"
paymentType
"
}},
];
return
{
dialogShow
:
false
,
receiptNo
:
""
,
columns
,
payColumns
,
...
...
@@ -251,12 +168,20 @@ export default {
pageSize
:
10
,
},
payDataList
:
[],
payPager
:
[
{
pagination
:
{
pageNum
:
1
,
pageSize
:
10
,
total
:
0
,
},
editFormObj
:
{
id
:
""
,
patientNo
:
''
,
patientName
:
''
,
},
editRules
:
{
patientNo
:
[{
required
:
true
,
message
:
"
病历号
"
,
trigger
:
"
blur
"
}],
patientName
:
[{
required
:
true
,
message
:
"
客户姓名
"
,
trigger
:
"
blur
"
}],
},
],
};
},
components
:
{
...
...
@@ -350,46 +275,24 @@ export default {
handlerReset
()
{
this
.
form
=
{};
},
//设置行属性
handlerRowClick
(
record
)
{
const
{
receiptNo
}
=
record
;
console
.
log
(
"
receiptNo=
"
,
receiptNo
);
return
{
style
:
{
color
:
record
.
isEdit
?
"
#2B63FF
"
:
"
#252631
"
,
editEvt
(
record
)
{
this
.
editFormObj
=
{
id
:
record
.
id
||
""
,
};
this
.
dialogShow
=
true
;
},
on
:
{
// 点击行
click
:
(
)
=>
{
if
(
record
.
isEdit
)
{
return
true
;
//编辑保存
handleEditOK
()
{
this
.
$refs
.
editForm
.
validate
((
valid
)
=>
{
if
(
valid
)
{
console
.
log
(
11
)
}
this
.
$router
.
push
({
name
:
"
chargeQueryDetail
"
,
query
:
{
receiptNo
},
});
},
},
};
},
// 修改按钮
changeDataStatus
(
record
)
{
this
.
$set
(
record
,
"
isEdit
"
,
true
);
},
saveChange
(
record
)
{
record
.
isEdit
=
undefined
;
record
.
isNew
=
undefined
;
},
handlerSearch
()
{
this
.
$refs
.
form
.
validate
((
valid
)
=>
{
if
(
!
valid
)
{
return
false
;
}
this
.
pager
.
pageNum
=
1
;
this
.
pagination
.
pageNum
=
1
;
this
.
pageForm
=
this
.
$lodash
.
cloneDeep
(
this
.
form
);
this
.
_getChargeListDetail
();
});
},
deleteData
()
{
this
.
$message
.
success
(
"
删除成功
"
);
...
...
src/views/charge-query/index.vue
View file @
77e494f8
...
...
@@ -6,30 +6,18 @@
<a-row
:gutter=
"30"
>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"病历号"
>
<a-input
v-model=
"form.patientNo"
placeholder=
"请输入病历号"
allow-clear
></a-input>
<a-input
v-model=
"form.patientNo"
placeholder=
"请输入病历号"
allow-clear
/>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"客户姓名"
>
<a-input
v-model=
"form.patientName"
placeholder=
"请输入客户姓名"
allow-clear
></a-input>
<a-input
v-model=
"form.patientName"
placeholder=
"请输入客户姓名"
allow-clear
/>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"客户类型"
>
<a-select
v-model=
"form.patientType"
placeholder=
"请选择客户类型"
allowClear
>
<a-select-option
v-for=
"item in patientTypeOptions"
:key=
"item.code"
:value=
"item.code"
>
<a-select-option
v-for=
"item in patientTypeOptions"
:key=
"item.code"
:value=
"item.code"
>
{{
item
.
name
}}
</a-select-option>
</a-select>
...
...
@@ -38,11 +26,7 @@
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保险公司"
>
<a-select
v-model=
"form.payorId"
placeholder=
"请选择保险公司"
allowClear
>
<a-select-option
v-for=
"item in companyOptions"
:key=
"item.corpCode"
:value=
"item.id"
>
<a-select-option
v-for=
"item in companyOptions"
:key=
"item.corpCode"
:value=
"item.id"
>
{{
item
.
longName
}}
</a-select-option>
</a-select>
...
...
@@ -51,11 +35,7 @@
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"看诊医生"
>
<a-select
v-model=
"form.doctorCode"
placeholder=
"请选择看诊医生"
allowClear
>
<a-select-option
v-for=
"item in doctorOptions"
:key=
"item.doctorCode"
:value=
"item.doctorCode"
>
<a-select-option
v-for=
"item in doctorOptions"
:key=
"item.doctorCode"
:value=
"item.doctorCode"
>
{{
item
.
doctorDesc
}}
</a-select-option>
</a-select>
...
...
@@ -69,23 +49,17 @@
<a-col
:xl=
"3"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"支付方式"
>
<a-select
v-model=
"form.paymentCode"
placeholder=
"请选择支付方式"
allowClear
>
<a-select-option
v-for=
"item in paymentOptions"
:key=
"item.code"
:value=
"item.code"
allow-clear
>
<a-select-option
v-for=
"item in paymentOptions"
:key=
"item.code"
:value=
"item.code"
allow-clear
>
{{
item
.
name
}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:xl=
"1
2
"
:lg=
"12"
:sm=
"12"
class=
"none-label"
>
<a-col
:xl=
"1
6
"
:lg=
"12"
:sm=
"12"
class=
"none-label"
>
<a-form-model-item
label=
"button"
>
<a-button>
更新数据
</a-button>
<a-button
class=
"mar-left10"
type=
"primary"
@
click=
"addNewCharge"
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
新建预授权
</a-button
>
<!--
<a-button>
更新数据
</a-button>
-->
<!--
<a-button
class=
"mar-left10"
type=
"primary"
@
click=
"addNewCharge"
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
新建预授权
</a-button>
-->
<a-button
class=
"mar-left10"
type=
"primary"
@
click=
"handlerReset"
>
<Icon
name=
"ssireset"
:size=
"14"
/>
重置
</a-button>
...
...
@@ -98,37 +72,39 @@
</a-form-model>
<!-- table -->
<a-table
:columns=
"columns"
:data-source=
"dataList"
row-key=
"id"
:scroll=
"
{ x: true }"
:customRow="handlerRowClick"
:pagination="true"
>
<a-table
:columns=
"columns"
:data-source=
"dataList"
:scroll=
"
{ x: true }" :pagination="false">
<template
slot=
"index"
slot-scope=
"text, record, index"
>
{{
index
+
1
}}
</
template
>
<
template
slot=
"operation"
slot-scope=
"record"
>
<a-button
v-if=
"record.isEdit"
type=
"link"
@
click.stop=
"saveChange(record)"
>
保存
</a-button
>
<a-button
v-else
type=
"link"
@
click.stop=
"changeDataStatus(record)"
>
修改
</a-button
>
<a-button
type=
"link"
class=
"success"
>
查看
</a-button>
<a-popconfirm
title=
"你确定要关闭吗?"
ok-text=
"确定"
cancel-text=
"取消"
@
confirm=
"deleteData"
>
<a-button
type=
"link"
@
click.stop=
"editEvt(record)"
>
修改
</a-button>
<a-button
type=
"link"
class=
"success"
@
click.stop=
"detailEvt(record)"
>
查看
</a-button>
<a-popconfirm
title=
"你确定要关闭吗?"
ok-text=
"确定"
cancel-text=
"取消"
@
confirm=
"deleteData"
>
<a-button
type=
"link"
class=
"danger"
>
删除
</a-button>
</a-popconfirm>
</
template
>
</a-table>
<!--分页-->
<BurtPagination
:pagination=
"pager"
@
pageChange=
"_getChargeList"
/>
<BurtPagination
:pagination=
"pagination"
@
pageChange=
"_getChargeList"
/>
<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=
"patientNo"
>
<a-input
v-model.trim=
"editFormObj.patientNo"
placeholder=
"病历号"
/>
</a-form-model-item>
</a-col>
<a-col
:lg=
"12"
:xs=
"24"
>
<a-form-model-item
label=
"客户姓名"
prop=
"patientName"
>
<a-input
v-model.trim=
"editFormObj.patientName"
placeholder=
"客户姓名"
/>
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
</a-modal>
</div>
</template>
...
...
@@ -138,46 +114,16 @@ import { mapState } from "vuex"
export
default
{
data
()
{
const
columns
=
[
{
title
:
"
序号
"
,
dataIndex
:
"
index
"
,
key
:
"
index
"
,
align
:
'
center
'
,
width
:
80
,
customRender
:
(
text
,
record
,
index
)
=>
{
return
`
${
index
+
1
}
`
},
},
{
title
:
"
序号
"
,
dataIndex
:
"
index
"
,
key
:
"
index
"
,
align
:
'
center
'
,
width
:
80
,
scopedSlots
:
{
customRender
:
"
index
"
}},
{
title
:
"
收费时间
"
,
dataIndex
:
"
receiptDate
"
,
width
:
180
},
{
title
:
"
病历号
"
,
dataIndex
:
"
patientNo
"
,
width
:
180
,
customRender
:
(
val
,
row
)
=>
{
if
(
row
.
isEdit
)
{
return
<
a
-
input
v
-
model
=
{
row
.
patientNo
}
><
/a-input>
;
}
return
val
;
},
},
{
title
:
"
客户姓名
"
,
dataIndex
:
"
patientName
"
,
width
:
120
,
customRender
:
(
val
,
row
)
=>
{
if
(
row
.
isEdit
)
{
return
<
a
-
input
v
-
model
=
{
row
.
patientName
}
><
/a-input>
;
}
return
val
;
},
},
{
title
:
"
病历号
"
,
dataIndex
:
"
patientNo
"
,
width
:
180
},
{
title
:
"
客户姓名
"
,
dataIndex
:
"
patientName
"
,
width
:
120
,},
{
title
:
"
客户类型
"
,
dataIndex
:
"
patientType
"
,
width
:
180
},
{
title
:
"
保险公司
"
,
dataIndex
:
"
payorName
"
,
width
:
180
},
{
title
:
"
就诊时间
"
,
dataIndex
:
"
visitTime
"
,
width
:
180
},
{
title
:
"
就诊医生
"
,
dataIndex
:
"
doctorName
"
,
width
:
180
},
{
title
:
"
账单金额
"
,
dataIndex
:
"
chargeAmount
"
,
width
:
180
},
{
title
:
"
折扣(%)
"
,
dataIndex
:
"
discountAmount
"
,
width
:
180
},
{
title
:
"
折后金额
"
,
dataIndex
:
"
actualAmount
"
,
width
:
180
},
{
title
:
"
客户自付
"
,
dataIndex
:
"
paidAmount
"
,
width
:
180
},
{
title
:
"
减免金额
"
,
dataIndex
:
"
reduceamount
"
,
width
:
180
},
...
...
@@ -187,15 +133,10 @@ export default {
{
title
:
"
保险欠费
"
,
dataIndex
:
"
insuranceArrearsAmount
"
,
width
:
180
},
{
title
:
"
个人欠费
"
,
dataIndex
:
"
personalArrearsAmount
"
,
width
:
180
},
{
title
:
"
发票号码
"
,
dataIndex
:
"
receiptNo
"
,
width
:
180
},
{
title
:
"
操作
"
,
key
:
"
operation
"
,
width
:
"
175px
"
,
fixed
:
"
right
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
},
{
title
:
"
操作
"
,
key
:
"
operation
"
,
width
:
"
175px
"
,
fixed
:
"
right
"
,
scopedSlots
:
{
customRender
:
"
operation
"
}},
];
return
{
dialogShow
:
false
,
columns
,
form
:
{},
pageForm
:
{
...
...
@@ -222,9 +163,19 @@ export default {
},
],
//支付方式
dataList
:
[],
pag
er
:
{
pag
ination
:
{
pageNum
:
1
,
pageSize
:
10
,
total
:
0
,
},
editFormObj
:
{
id
:
""
,
patientNo
:
''
,
patientName
:
''
,
},
editRules
:
{
patientNo
:
[{
required
:
true
,
message
:
"
病历号
"
,
trigger
:
"
blur
"
}],
patientName
:
[{
required
:
true
,
message
:
"
客户姓名
"
,
trigger
:
"
blur
"
}],
},
};
},
...
...
@@ -246,11 +197,12 @@ export default {
_getChargeList
()
{
const
data
=
{
...
this
.
pageForm
,
...
this
.
pag
er
,
...
this
.
pag
ination
,
};
this
.
$apis
.
GETCHARGELIST
(
data
).
then
((
res
)
=>
{
this
.
dataList
=
(
res
.
content
&&
res
.
content
.
list
)
||
[];
// this.pager.total = (res.content && res.content.total) || 0;
let
content
=
res
.
content
||
{};
this
.
dataList
=
content
.
list
||
[];
this
.
pagination
.
total
=
content
.
total
||
0
;
});
},
// 获取保险公司下拉选项
...
...
@@ -278,42 +230,46 @@ export default {
handlerReset
()
{
this
.
form
=
{}
},
//设置行属性
handlerRowClick
(
record
)
{
//查看
detailEvt
(
record
)
{
const
{
receiptNo
}
=
record
;
return
{
style
:
{
color
:
record
.
isEdit
?
"
#2B63FF
"
:
"
#252631
"
,
},
on
:
{
// 点击行
click
:
()
=>
{
if
(
record
.
isEdit
)
{
return
true
;
}
this
.
$router
.
push
({
name
:
"
chargeQueryDetail
"
,
query
:
{
receiptNo
},
});
},
},
editEvt
(
record
)
{
this
.
editFormObj
=
{
id
:
record
.
id
||
""
,
patientNo
:
record
.
patientNo
||
""
,
patientName
:
record
.
patientName
||
""
,
};
this
.
dialogShow
=
true
;
},
// 修改按钮
changeDataStatus
(
record
)
{
this
.
$set
(
record
,
"
isEdit
"
,
true
);
},
saveChange
(
record
)
{
record
.
isEdit
=
undefined
;
record
.
isNew
=
undefined
;
//编辑保存
handleEditOK
()
{
this
.
$refs
.
editForm
.
validate
((
valid
)
=>
{
if
(
valid
)
{
//下面接口没有给到
this
.
$apis
.
DOCTORUPDATE
(
this
.
editFormObj
)
.
then
((
res
)
=>
{
if
(
res
.
returnCode
==
"
0000
"
)
{
this
.
$message
.
success
(
"
编辑成功
"
);
this
.
dialogShow
=
false
;
this
.
_getChargeList
();
}
else
{
this
.
$message
.
error
(
res
.
returnMsg
);
}
});
}
});
},
handlerSearch
()
{
this
.
$refs
.
form
.
validate
((
valid
)
=>
{
if
(
!
valid
)
{
return
false
;
}
this
.
pag
er
.
pageNum
=
1
;
this
.
pag
ination
.
pageNum
=
1
;
this
.
pageForm
=
this
.
$lodash
.
cloneDeep
(
this
.
form
);
this
.
_getChargeList
();
});
...
...
src/views/charge-query/lpjManage.vue
0 → 100644
View file @
77e494f8
<
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-range-picker
format=
"YYYY年MM月DD日"
v-model=
"form.dateRange"
:placeholder=
"['开始日期', '结束日期']"
/>
</a-form-model-item>
</a-col>
<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-input
v-model=
"form.sendBatchNo"
placeholder=
"请输入寄送批号"
allow-clear
/>
</a-form-model-item>
</a-col>
</a-row>
<a-row
:gutter=
"30"
>
<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-input
v-model=
"form.receiptNo"
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=
"handlerSearch"
>
<Icon
name=
"ssisearch_active"
:size=
"14"
/>
查询
</a-button>
<a-button
class=
"mar-left10"
type=
"primary"
@
click=
"handlerReset"
>
<Icon
name=
"ssireset"
:size=
"14"
/>
重置
</a-button>
<a-button
class=
"mar-left10"
type=
"primary"
@
click=
"addNewCharge"
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
新建寄送
</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">
<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"
/>
</div>
</template>
<
script
>
import
BurtPagination
from
"
@/components/CUSTOMER/pagation
"
;
import
moment
from
'
moment
'
export
default
{
data
()
{
const
columns
=
[
{
title
:
"
寄送批号
"
,
dataIndex
:
"
sendBatchNo
"
,
key
:
"
sendBatchNo
"
,
align
:
'
center
'
,
width
:
136
},
{
title
:
"
保险公司
"
,
dataIndex
:
"
payorName
"
,
width
:
110
},
{
title
:
"
寄送状态
"
,
dataIndex
:
"
sendSts
"
,
width
:
90
,
scopedSlots
:
{
customRender
:
"
sendSts
"
}
},
{
title
:
"
寄送日期
"
,
dataIndex
:
"
sendDate
"
,
width
:
130
,
scopedSlots
:
{
customRender
:
"
sendDate
"
}},
{
title
:
"
快递单号
"
,
dataIndex
:
"
trackingNo
"
,
width
:
180
,},
{
title
:
"
寄送备注
"
,
dataIndex
:
"
sendRemark
"
,
width
:
100
},
{
title
:
"
操作
"
,
key
:
"
operation
"
,
width
:
"
200px
"
,
fixed
:
"
right
"
,
scopedSlots
:
{
customRender
:
"
operation
"
}},
];
return
{
loading
:
false
,
columns
,
form
:
{
dateRange
:
[],
payorCode
:
''
,
sendBatchNo
:
''
,
trackingNo
:
''
,
receiptNo
:
''
,
},
companyOptions
:
[],
//保险公司
expressList
:
[],
//快递列表
dataList
:
[],
pagination
:
{
pageNum
:
1
,
pageSize
:
10
,
total
:
0
,
},
};
},
components
:
{
BurtPagination
,
},
created
()
{
this
.
getData
();
this
.
_getCompanyOptions
();
this
.
getRefcdByRefgrp
();
},
methods
:
{
moment
,
// 获取列表数据
getData
()
{
let
filter
=
{
pageNum
:
this
.
pagination
.
pageNum
,
pageSize
:
this
.
pagination
.
pageSize
,
...
this
.
form
,
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
;
this
.
$apis
.
QUERYSENDINFOLIST
(
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
||
[];
});
},
// 重置
handlerReset
()
{
this
.
form
=
{
dateRange
:
[],
payorCode
:
''
,
sendBatchNo
:
''
,
trackingNo
:
''
,
receiptNo
:
''
,
}
},
//编辑
editEvt
(
record
)
{
const
{
sendBatchNo
}
=
record
;
localStorage
.
setItem
(
'
jisongDataDetail
'
,
JSON
.
stringify
(
record
));
this
.
$router
.
push
({
path
:
"
/charge-query/lpjManageDetail
"
,
query
:
{
sendBatchNo
},
});
},
handlerSearch
()
{
this
.
pagination
.
pageNum
=
1
;
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
);
}
});
},
});
},
//新建寄送
addNewCharge
(){
this
.
$router
.
push
({
path
:
'
/charge-query/lpjManageDetail
'
})
}
},
};
</
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
>
src/views/charge-query/lpjManageDetail.vue
0 → 100644
View file @
77e494f8
<
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=
"8"
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-form-model-item>
</div>
</a-col>
</a-row>
<a-row
:gutter=
"30"
>
<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=
"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
:
"
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: "操作", 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
>
src/views/customer/edit/index.vue
View file @
77e494f8
...
...
@@ -5,149 +5,101 @@
<a-row
:gutter=
"30"
>
<a-col
:xl=
"6"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"病历号码"
prop=
"mrnNo"
>
<a-input
v-model=
"form.mrnNo"
placeholder=
"请输入病历号"
allow-clear
></a-input>
<a-input
v-model=
"form.mrnNo"
placeholder=
"请输入病历号"
allow-clear
></a-input>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"客户姓名"
prop=
"patientName"
>
<a-input
v-model=
"form.patientName"
allow-clear
placeholder=
"请输入客户姓名"
></a-input>
<a-input
v-model=
"form.patientName"
allow-clear
placeholder=
"请输入客户姓名"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"出生日期"
prop=
"birthday"
>
<a-date-picker
v-model=
"form.birthday"
allow-clear
placeholder=
"请选择出生日期"
value-format=
"YYYY-MM-DD 00:00:00"
></a-date-picker>
<a-date-picker
v-model=
"form.birthday"
allow-clear
placeholder=
"请选择出生日期"
value-format=
"YYYY-MM-DD 00:00:00"
></a-date-picker>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保险公司"
prop=
"payorId"
>
<a-select
v-model=
"form.payorId"
placeholder=
"请选择保险公司"
show-search
allow-clear
@
filterOption=
"filterCode"
@
change=
"payorChange"
>
<a-select-option
v-for=
"item in companyCode"
:key=
"item.id"
:value=
"item.id"
:label=
"item.longName"
>
{{
item
.
longName
}}
</a-select-option>
<a-form-model-item
label=
"性别"
prop=
"sex"
>
<a-radio-group
v-model=
"form.sex"
:default-value=
"form.sex"
button-style=
"solid"
>
<a-radio-button
value=
"M"
>
男
</a-radio-button>
<a-radio-button
class=
"mar-left10"
value=
"F"
>
女
</a-radio-button>
</a-radio-group>
</a-form-model-item>
</a-col>
<a-col
:xl=
"6"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"证件类型"
prop=
"idType"
>
<a-select
v-model=
"form.idType"
placeholder=
"请选择证件类型"
show-search
allow-clear
@
filterOption=
"filterCode"
>
<a-select-option
v-for=
"item in typeCode"
:key=
"item.refcd"
:value=
"item.refcd"
:label=
"item.descCh"
>
{{
item
.
descCh
}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:xl=
"6"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"证件号码"
prop=
"idNo"
>
<a-input
v-model=
"form.idNo"
allow-clear
placeholder=
"请输入证件号码"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保险公司"
prop=
"payorId"
>
<a-select
v-model=
"form.payorId"
placeholder=
"请选择保险公司"
show-search
allow-clear
@
filterOption=
"filterCode"
@
change=
"payorChange"
>
<a-select-option
v-for=
"item in companyCode"
:key=
"item.id"
:value=
"item.id"
:label=
"item.longName"
>
{{
item
.
longName
}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"客户公司名称"
prop=
"corpName"
>
<a-select
v-model=
"form.corpName"
placeholder=
"请选择客户公司名称"
show-search
allow-clear
@
filterOption=
"filterCode"
@
change=
"corpChange"
@
search=
"corpSearch"
>
<a-select-option
v-for=
"item in comCorpCode"
:key=
"item.id"
:value=
"item.id + '$_' + item.longName"
>
<a-select
v-model=
"form.corpName"
placeholder=
"请选择客户公司名称"
show-search
allow-clear
@
filterOption=
"filterCode"
@
change=
"corpChange"
@
search=
"corpSearch"
>
<a-select-option
v-for=
"item in comCorpCode"
:key=
"item.id"
:value=
"item.id + '$_' + item.longName"
>
{{
item
.
longName
}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:xl=
"6"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保单卡号"
prop=
"policyNo"
>
<a-input
allow-clear
v-model=
"form.policyNo"
placeholder=
"请输入保单卡号"
></a-input>
<a-form-model-item
label=
"保险卡号"
prop=
"cardNo"
>
<a-input
allow-clear
v-model=
"form.cardNo"
placeholder=
"请输入保险卡号"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:xl=
"6"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保单号码"
prop=
"policyNo"
>
<a-input
allow-clear
v-model=
"form.policyNo"
placeholder=
"请输入保单号码"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"首次入保时间"
prop=
"firstEnrollmentTime"
>
<a-date-picker
allow-clear
v-model=
"form.firstEnrollmentTime"
placeholder=
"请选择首次入保时间"
value-format=
"YYYY-MM-DD 00:00:00"
></a-date-picker>
<a-date-picker
allow-clear
v-model=
"form.firstEnrollmentTime"
placeholder=
"请选择首次入保时间"
value-format=
"YYYY-MM-DD 00:00:00"
></a-date-picker>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保单生效日期"
prop=
"startDate"
>
<a-date-picker
allow-clear
v-model=
"form.startDate"
placeholder=
"请选择保单生效日期"
value-format=
"YYYY-MM-DD 00:00:00"
></a-date-picker>
<a-date-picker
allow-clear
v-model=
"form.startDate"
placeholder=
"请选择保单生效日期"
value-format=
"YYYY-MM-DD 00:00:00"
></a-date-picker>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保单终止日期"
prop=
"endDate"
>
<a-date-picker
allow-clear
v-model=
"form.endDate"
placeholder=
"请选择保单终止日期"
value-format=
"YYYY-MM-DD 00:00:00"
></a-date-picker>
<a-date-picker
allow-clear
v-model=
"form.endDate"
placeholder=
"请选择保单终止日期"
value-format=
"YYYY-MM-DD 00:00:00"
></a-date-picker>
</a-form-model-item>
</a-col>
<a-col
:xl=
"6"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保险计划"
prop=
"planName"
>
<a-select
v-model=
"form.planName"
placeholder=
"请选择保险计划"
show-search
allow-clear
@
filterOption=
"filterCode"
@
search=
"codeSearch"
>
<a-select-option
v-for=
"item in comPlanCode"
:key=
"item.id + '_' + item.longName"
:vlaue=
"item.longName"
<a-select
v-model=
"form.planName"
placeholder=
"请选择保险计划"
show-search
allow-clear
@
filterOption=
"filterCode"
@
search=
"codeSearch"
>
<a-select-option
v-for=
"item in comPlanCode"
:key=
"item.id + '_' + item.longName"
:vlaue=
"item.longName"
>
{{
item
.
longName
}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:xl=
"6"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"其他备注"
prop=
"remark"
>
<a-input
allow-clear
v-model=
"form.remark"
placeholder=
"请输入备注信息"
></a-input>
<a-form-model-item
label=
"保单直付区域"
prop=
"policyDircetArea"
>
<a-select
v-model=
"form.policyDircetArea"
placeholder=
"请选择保单直付区域"
show-search
allow-clear
@
filterOption=
"filterCode"
>
<a-select-option
v-for=
"item in areaCode"
:key=
"item.refcd"
:value=
"item.refcd"
:label=
"item.descCh"
>
{{
item
.
descCh
}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"等待期"
prop=
"waitingPeriod"
>
<a-radio-group
v-model=
"form.waitingPeriod"
:default-value=
"form.waitingPeriod"
button-style=
"solid"
>
<a-radio-group
v-model=
"form.waitingPeriod"
:default-value=
"form.waitingPeriod"
button-style=
"solid"
>
<a-radio-button
value=
"Y"
>
是
</a-radio-button>
<a-radio-button
class=
"mar-left10"
value=
"N"
>
否
</a-radio-button>
</a-radio-group>
...
...
@@ -155,16 +107,17 @@
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"是否承担既往症"
prop=
"isUndertakeAnamnesis"
>
<a-radio-group
v-model=
"form.isUndertakeAnamnesis"
:default-value=
"form.isUndertakeAnamnesis"
button-style=
"solid"
>
<a-radio-group
v-model=
"form.isUndertakeAnamnesis"
:default-value=
"form.isUndertakeAnamnesis"
button-style=
"solid"
>
<a-radio-button
value=
"Y"
>
是
</a-radio-button>
<a-radio-button
class=
"mar-left10"
value=
"N"
>
否
</a-radio-button>
</a-radio-group>
</a-form-model-item>
</a-col>
<a-col
:xl=
"6"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"其他备注"
prop=
"remark"
>
<a-input
allow-clear
v-model=
"form.remark"
placeholder=
"请输入备注信息"
></a-input>
</a-form-model-item>
</a-col>
</a-row>
<a-row>
<a-col
:xl=
"9"
:sm=
"12"
>
...
...
@@ -212,16 +165,13 @@
<a-row>
<a-col
:xl=
"24"
:lg=
"18"
:sm=
"12"
class=
"none-label clearfix"
>
<a-form-model-item
label=
"button"
>
<a-button
type=
"primary"
>
<
!--
<
a-button
type=
"primary"
>
<Icon
name=
"ssiprint"
:size=
"14"
/>
打印理赔申请书
</a-button>
-->
<a-button
class=
"mar-left10 text-r"
type=
"primary"
@
click=
"handlerSave"
>
<Icon
name=
"ssidownload"
:size=
"14"
/>
保存
</a-button>
<a-button
class=
"mar-left10 text-r"
type=
"primary"
@
click=
"handlerSave"
><Icon
name=
"ssidownload"
:size=
"14"
/>
保存
</a-button>
<a-button
type=
"primary"
class=
"text-r"
@
click=
"handlerReset"
>
<a-button
type=
"primary"
class=
"mar-left10 text-r"
@
click=
"handlerReset"
>
<Icon
name=
"ssireset"
:size=
"14"
/>
重置
</a-button>
</a-form-model-item>
...
...
@@ -236,10 +186,15 @@
<
script
>
export
default
{
beforeRouteUpdate
(
to
,
from
,
next
)
{
this
.
$refs
.
form
.
resetFields
();
next
();
},
data
()
{
return
{
previewVisible
:
false
,
form
:
{
sex
:
'
U
'
,
payorId
:
undefined
,
corpName
:
undefined
,
planName
:
undefined
,
...
...
@@ -257,10 +212,16 @@ export default {
planCode
:
[],
comPlanCode
:
[],
formRules
:
{},
typeCode
:
[],
areaCode
:
[]
};
},
mounted
()
{
if
(
this
.
$route
.
query
&&
this
.
$route
.
query
.
id
)
{
this
.
getCustomerDetail
(
this
.
$route
.
query
);
}
this
.
_getPayorCode
();
this
.
initCodeData
();
},
methods
:
{
handlerSave
()
{
...
...
@@ -268,17 +229,18 @@ export default {
if
(
!
valid
)
{
return
false
;
}
this
.
$apis
.
CREATENEWCUSTOMER
(
this
.
form
).
then
((
res
)
=>
{
const
fn
=
this
.
form
.
id
||
this
.
form
.
id
===
0
?
this
.
$apis
.
UPDATECUSTOMDATA
:
this
.
$apis
.
CREATENEWCUSTOMER
fn
(
this
.
form
).
then
((
res
)
=>
{
if
(
res
.
returnCode
===
"
0000
"
)
{
this
.
$message
.
success
(
"
新建
成功
"
);
this
.
$message
.
success
(
"
操作
成功
"
);
const
{
id
,
patientPolicyId
}
=
res
.
content
||
{};
this
.
$router
.
push
({
name
:
"
welfare
"
,
query
:
{
id
,
patientPolicyId
},
name
:
"
welfare
Info
"
,
query
:
{
id
:
id
||
this
.
form
.
id
,
patientPolicyId
:
patientPolicyId
||
this
.
form
.
patientPolicyId
},
});
// this.$router.push("/customer");
}
else
{
this
.
$message
.
success
(
res
.
returnMsg
||
"
新建
失败
"
);
this
.
$message
.
success
(
res
.
returnMsg
||
"
操作
失败
"
);
}
});
});
...
...
@@ -315,6 +277,40 @@ export default {
];
}
},
getCustomerDetail
(
params
)
{
// this.queryForm = this.$lodash.cloneDeep(this.form);
const
{
id
,
patientPolicyId
}
=
params
;
const
data
=
{
id
:
id
&&
id
*
1
,
patientPolicyId
:
patientPolicyId
*
1
,
};
this
.
$apis
.
GETCUSTOMERDETAIL
(
data
).
then
((
res
)
=>
{
if
(
res
.
returnCode
===
"
0000
"
)
{
this
.
form
=
res
.
content
||
{};
this
.
_getCorporateCode
(
this
.
form
.
payorCode
);
this
.
_getPlanCode
(
this
.
form
.
corpCode
);
const
medCardCopeFiles
=
this
.
form
.
medCardCopeFiles
||
[];
const
idCardCopeFiles
=
this
.
form
.
idCardCopeFiles
||
[];
medCardCopeFiles
.
forEach
((
item
)
=>
{
this
.
medCardCopeFiles
.
push
({
url
:
item
.
fileUrl
,
uid
:
item
.
fileUrl
,
name
:
item
.
fileName
,
})
})
idCardCopeFiles
.
forEach
((
item
)
=>
{
this
.
idCardCopeFiles
.
push
({
url
:
item
.
fileUrl
,
uid
:
item
.
fileUrl
,
name
:
item
.
fileName
,
})
})
}
// this.dataList = (res.content && res.content.list) || [];
// this.total = (res.content && res.content.total) || 0;
});
},
codeSearch
(
val
)
{
if
(
!
val
)
{
this
.
comPlanCode
=
this
.
planCode
;
...
...
@@ -410,6 +406,21 @@ export default {
handleClose
()
{
this
.
previewVisible
=
false
;
},
initCodeData
()
{
const
params
=
{
typeCode
:
{
modid
:
"
CI
"
,
refgrp
:
"
ID_TYPE
"
},
areaCode
:
{
modid
:
"
CI
"
,
refgrp
:
"
POLICY_DIRECT_AREA
"
},
}
for
(
let
i
in
params
)
{
this
.
_getRefcdByRefgrp
(
params
[
i
],
i
)
}
},
// 选择框筛选
filterCode
(
input
,
option
)
{
return
(
...
...
@@ -445,6 +456,14 @@ export default {
this
.
comPlanCode
=
res
.
content
||
[];
});
},
_getRefcdByRefgrp
(
data
,
prop
)
{
if
(
this
[
prop
]
&&
this
[
prop
].
length
)
{
return
true
}
this
.
$apis
.
GETREFCDBYREFGRP
(
data
).
then
((
res
)
=>
{
this
[
prop
]
=
res
.
content
||
[];
});
},
},
};
</
script
>
...
...
src/views/customer/info/index.vue
View file @
77e494f8
...
...
@@ -5,51 +5,34 @@
<a-row
:gutter=
"30"
>
<a-col
:xl=
"6"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"病历号码"
>
<a-input
v-model=
"form.mrnNo"
placeholder=
"请输入病历号"
></a-input>
<a-input
v-model=
"form.mrnNo"
placeholder=
"请输入病历号"
allow-clear
></a-input>
</a-form-model-item>
</a-col>
<a-col
:xl=
"6"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"客户姓名"
>
<a-input
v-model=
"form.patientName"
placeholder=
"请输入客户姓名"
></a-input>
<a-input
v-model=
"form.patientName"
placeholder=
"请输入客户姓名"
allow-clear
></a-input>
</a-form-model-item>
</a-col>
<a-col
:xl=
"5"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"出生日期"
>
<a-date-picker
v-model=
"form.birthday"
placeholder=
"请选择出生日期"
></a-date-picker>
<a-date-picker
v-model=
"form.birthday"
placeholder=
"请选择出生日期"
value-format=
"YYYY-MM-DD 00:00:00"
allow-clear
></a-date-picker>
</a-form-model-item>
</a-col>
<a-col
:xl=
"5"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保险公司"
>
<a-select
v-model=
"form.payorId"
placeholder=
"请选择保险公司"
>
<a-select-option
v-for=
"item in companyCode"
:key=
"item.corpCode"
:value=
"item.id"
>
{{
item
.
longName
}}
</a-select-option>
<a-select
v-model=
"form.payorId"
placeholder=
"请选择保险公司"
allow-clear
>
<a-select-option
v-for=
"item in companyCode"
:key=
"item.corpCode"
:value=
"item.id"
>
{{
item
.
longName
}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:xl=
"6"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保单号码"
>
<a-input
v-model=
"form.policyNo"
placeholder=
"请输入保单号码"
></a-input>
<a-input
v-model=
"form.policyNo"
placeholder=
"请输入保单号码"
allow-clear
></a-input>
</a-form-model-item>
</a-col>
<a-col
:xl=
"18"
:lg=
"18"
:sm=
"12"
class=
"none-label"
>
<a-form-model-item
label=
"button"
>
<a-button
type=
"primary"
@
click=
"addNewCustom"
><Icon
name=
"ssiadd"
:size=
"14"
/>
新建客户信息
</a-button
>
<a-button
type=
"primary"
@
click=
"addNewCustom"
><Icon
name=
"ssiadd"
:size=
"14"
/>
新建客户信息
</a-button>
<a-button
class=
"mar-left10"
type=
"primary"
@
click=
"handlerSearch"
>
<Icon
name=
"ssisearch_active"
:size=
"14"
/>
查询
</a-button>
...
...
@@ -68,23 +51,11 @@
:customRow="handlerRowClick"
>
<template
slot=
"operation"
slot-scope=
"record"
>
<a-button
v-if=
"record.isEdit"
type=
"link"
@
click.stop=
"saveChange(record)"
>
保存
</a-button
>
<a-button
v-else
type=
"link"
@
click.stop=
"changeDataStatus(record)"
>
修改
</a-button
>
<a-button
type=
"link"
class=
"success"
>
新增
</a-button>
<a-popconfirm
title=
"你确定要关闭吗?"
ok-text=
"确定"
cancel-text=
"取消"
@
confirm=
"deleteData"
>
<a-button
type=
"link"
class=
"danger"
>
删除
</a-button>
<a-button
type=
"link"
@
click.stop=
"changeDataStatus(record)"
>
修改
</a-button>
<a-button
type=
"link"
@
click.stop=
"printClaimPdf(record)"
>
打印理赔申请书
</a-button>
<!--
<a-button
type=
"link"
class=
"success"
>
新增
</a-button>
-->
<a-popconfirm
title=
"你确定要删除吗?"
ok-text=
"确定"
cancel-text=
"取消"
@
confirm=
"deleteData(record)"
>
<a-button
type=
"link"
class=
"danger"
@
click
.
stop
>
删除
</a-button>
</a-popconfirm>
</
template
>
</a-table>
...
...
@@ -95,44 +66,24 @@
<
script
>
import
BurtPagination
from
"
@/components/CUSTOMER/pagation
"
;
import
{
downloadFile
}
from
'
@/utils/index
'
import
moment
from
'
moment
'
export
default
{
data
()
{
const
columns
=
[
{
title
:
"
病历号
"
,
dataIndex
:
"
mrnNo
"
,
width
:
180
,
customRender
:
(
val
,
row
)
=>
{
if
(
row
.
isEdit
)
{
return
<
a
-
input
v
-
model
=
{
row
.
mrnNo
}
><
/a-input>
;
const
dateFormat
=
(
val
)
=>
{
return
val
&&
moment
(
val
).
format
(
'
YYYY-MM-DD
'
)
}
return
val
;
},
},
{
title
:
"
客户姓名
"
,
dataIndex
:
"
patientName
"
,
width
:
120
,
customRender
:
(
val
,
row
)
=>
{
if
(
row
.
isEdit
)
{
return
<
a
-
input
v
-
model
=
{
row
.
patientName
}
><
/a-input>
;
}
return
val
;
},
},
{
title
:
"
出生日期
"
,
dataIndex
:
"
birthday
"
,
width
:
180
},
const
columns
=
[
{
title
:
"
病历号
"
,
dataIndex
:
"
mrnNo
"
,
width
:
180
,
},
{
title
:
"
客户姓名
"
,
dataIndex
:
"
patientName
"
,
width
:
120
,},
{
title
:
"
出生日期
"
,
dataIndex
:
"
birthday
"
,
width
:
170
,
customRender
:
dateFormat
},
{
title
:
"
性别
"
,
dataIndex
:
"
sex
"
,
width
:
80
},
{
title
:
"
保险公司
"
,
dataIndex
:
"
payorName
"
,
width
:
180
},
{
title
:
"
保单号码
"
,
dataIndex
:
"
policyNo
"
,
width
:
190
},
{
title
:
"
保险有效日期
"
,
dataIndex
:
"
startDate
"
,
width
:
180
},
{
title
:
"
保险终止日期
"
,
dataIndex
:
"
endDate
"
,
width
:
180
},
{
title
:
"
操作
"
,
key
:
"
operation
"
,
width
:
"
175px
"
,
fixed
:
"
right
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
},
{
title
:
"
保险有效日期
"
,
dataIndex
:
"
startDate
"
,
width
:
170
,
customRender
:
dateFormat
},
{
title
:
"
保险终止日期
"
,
dataIndex
:
"
endDate
"
,
width
:
170
,
customRender
:
dateFormat
},
{
title
:
"
操作
"
,
key
:
"
operation
"
,
width
:
"
260px
"
,
fixed
:
"
right
"
,
scopedSlots
:
{
customRender
:
"
operation
"
}},
];
return
{
columns
,
...
...
@@ -143,12 +94,12 @@ export default {
pager
:
{
pageNum
:
1
,
pageSize
:
10
,
total
:
0
}
total
:
0
,
}
,
};
},
components
:
{
BurtPagination
BurtPagination
,
},
created
()
{
this
.
_getCustomerList
();
...
...
@@ -167,7 +118,7 @@ export default {
return
true
;
}
this
.
$router
.
push
({
name
:
"
welfare
"
,
name
:
"
welfare
Info
"
,
query
:
{
id
,
patientPolicyId
},
});
},
...
...
@@ -176,7 +127,11 @@ export default {
},
// 修改按钮
changeDataStatus
(
record
)
{
this
.
$set
(
record
,
"
isEdit
"
,
true
);
const
{
id
,
patientPolicyId
}
=
record
;
this
.
$router
.
push
({
name
:
"
customerEdit
"
,
query
:
{
id
,
patientPolicyId
},
});
},
saveChange
(
record
)
{
record
.
isEdit
=
undefined
;
...
...
@@ -192,8 +147,29 @@ export default {
this
.
_getCustomerList
();
});
},
deleteData
()
{
this
.
$message
.
success
(
"
删除成功
"
);
printClaimPdf
(
data
)
{
this
.
$apis
.
CREATECUSTOMERCLAIMPGF
(
data
).
then
(
res
=>
{
const
{
url
,
file_name
}
=
downloadFile
(
res
);
console
.
log
(
url
,
file_name
)
let
link
=
document
.
createElement
(
'
a
'
);
link
.
setAttribute
(
'
href
'
,
url
);
// link.setAttribute('download', file_name);
link
.
setAttribute
(
'
target
'
,
"
_blank
"
);
link
.
setAttribute
(
'
alt
'
,
file_name
);
document
.
body
.
appendChild
(
link
);
link
.
click
();
document
.
body
.
removeChild
(
link
);
})
},
deleteData
(
data
)
{
this
.
$apis
.
DELETECUSTOM
({
id
:
data
.
id
}).
then
(
res
=>
{
if
(
res
.
returnCode
===
"
0000
"
)
{
this
.
$message
.
success
(
res
.
returnMsg
||
"
操作成功
"
);
this
.
_getCustomerList
();
}
else
{
this
.
$message
.
error
(
res
.
returnMsg
||
"
操作失败
"
);
}
})
},
// 新建客户信息
addNewCustom
()
{
...
...
src/views/info/company.vue
View file @
77e494f8
<
template
>
<div
class=
"white_bg burt-container"
>
<div
class=
"title-div"
>
保险公司信息
</div>
<div
class=
"flex title-div"
>
<span>
保险公司信息
</span>
<a-button
type=
"primary"
@
click.stop=
"addCompany"
>
新建保险公司
</a-button>
</div>
<a-table
:columns=
"columns"
:data-source=
"dataList"
:scroll=
"
{ x: 'max-content' }" :pagination="false">
<div
v-for=
"col in columns"
:slot=
"col.dataIndex"
slot-scope=
"text, record, index"
:key=
"col.dataIndex"
>
<template
v-if=
"col.dataIndex == 'operation'"
>
<a-button
type=
"link"
@
click.stop=
"editEvt(record)"
>
修改
</a-button>
<a-button
type=
"link"
@
click.stop=
"detailEvt(record)"
>
查看
</a-button>
<a-button
type=
"link"
class=
"success"
@
click.stop=
"detailEvt(record)"
>
查看
</a-button>
<a-button
type=
"link"
class=
"danger"
@
click.stop=
"delRecord(index)"
>
删除
</a-button>
</
template
>
<
template
v-else
>
...
...
@@ -67,7 +70,7 @@ const columns = [
{
title
:
"
联系地址
"
,
dataIndex
:
"
address
"
,
ellipsis
:
true
,
scopedSlots
:
{
customRender
:
"
address
"
},
width
:
180
},
{
title
:
"
Protal链接
"
,
dataIndex
:
"
portalUrl
"
,
ellipsis
:
true
,
scopedSlots
:
{
customRender
:
"
portalUrl
"
},
width
:
155
},
{
title
:
"
联系人
"
,
dataIndex
:
"
contactPerson
"
,
ellipsis
:
true
,
scopedSlots
:
{
customRender
:
"
contactPerson
"
},
width
:
100
},
{
title
:
"
操作
"
,
dataIndex
:
"
operation
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
fixed
:
"
right
"
,
width
:
"
17
0px
"
,
align
:
"
center
"
},
{
title
:
"
操作
"
,
dataIndex
:
"
operation
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
fixed
:
"
right
"
,
width
:
"
20
0px
"
,
align
:
"
center
"
},
];
export
default
{
data
()
{
...
...
@@ -80,6 +83,7 @@ export default {
total
:
0
,
},
dataList
:
[],
countyList
:
[],
editFormObj
:
{
id
:
""
,
longName
:
""
,
...
...
@@ -99,8 +103,18 @@ export default {
},
created
()
{
this
.
getData
();
this
.
getRefcdByRefgrp
();
},
methods
:
{
// 获取国家列表
getRefcdByRefgrp
()
{
this
.
$apis
.
GETREFCDBYREFGRP
({
modid
:
"
CI
"
,
refgrp
:
"
COUNTRY_MAPPING
"
}).
then
((
res
)
=>
{
this
.
countyList
=
res
.
content
||
[];
});
},
//获取列表
getData
()
{
this
.
$apis
...
...
@@ -118,6 +132,25 @@ export default {
}
});
},
//新增保险公司
addCompany
(){
this
.
$apis
.
CREATEPAY
({
...
this
.
detailObj
})
.
then
((
res
)
=>
{
if
(
res
.
returnCode
==
"
0000
"
)
{
this
.
$message
.
success
(
"
新增成功
"
);
this
.
$router
.
push
({
path
:
'
/info/companyDetail
'
,
query
:
{
id
:
res
.
content
}
})
}
else
{
this
.
$message
.
error
(
res
.
returnMsg
);
}
});
},
//编辑
editEvt
(
record
)
{
this
.
editFormObj
=
{
...
...
@@ -206,5 +239,6 @@ export default {
line-height: 52px;
color: #252631;
font-weight: bold;
justify-content: space-between;
}
</
style
>
src/views/info/components/companyDiscount.vue
View file @
77e494f8
...
...
@@ -30,7 +30,7 @@
</a-table>
<!--分页-->
<BurtPagination
:pagination=
"pagination"
@
pageChange=
"getTableList"
/>
<a-modal
title=
"编辑
"
:visible=
"dialogShow"
width=
"60%"
:maskClosable=
"false"
<a-modal
:title=
"editFormObj.id?'编辑':'新增'
"
:visible=
"dialogShow"
width=
"60%"
:maskClosable=
"false"
okText=
"确定"
cancelText=
"取消"
@
ok=
"handleEditOK"
@
cancel=
"dialogShow = false"
>
<a-form-model
layout=
"vertical"
ref=
"editForm"
:model=
"editFormObj"
:rules=
"editRules"
>
<a-row
:gutter=
"30"
>
...
...
src/views/info/components/companyInfo.vue
View file @
77e494f8
...
...
@@ -14,14 +14,16 @@
</a-col>
<a-col
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"国家"
>
<a-input
v-model=
"detailObj.country"
placeholder=
"国家"
/>
<a-select
v-model=
"detailObj.country"
placeholder=
"请选择"
>
<a-select-option
v-for=
"(item) in countyList"
:value=
"item.descCh"
:key=
"item.id"
>
{{
item
.
descCh
}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
</a-row>
<a-row
:gutter=
"30"
>
<a-col
:lg=
"3"
:sm=
"12"
>
<a-form-model-item
label=
"有效"
>
<a-select
v-model=
"detailObj.status"
placeholder=
"请选择"
disabled
>
<a-select
v-model=
"detailObj.status"
placeholder=
"请选择"
>
<a-select-option
value=
"1"
>
有效
</a-select-option>
<a-select-option
value=
"2"
>
无效
</a-select-option>
</a-select>
...
...
@@ -111,7 +113,7 @@
<a-col
:sm=
"24"
class=
"none-label"
>
<a-form-model-item
label=
"button"
>
<a-button
type=
"primary"
@
click=
"handlerSava"
>
<Icon
name=
"ssi
add"
:size=
"14"
/>
新建
<Icon
name=
"ssi
baocun"
:size=
"14"
/>
保存
</a-button>
</a-form-model-item>
</a-col>
...
...
@@ -127,18 +129,30 @@ export default {
},
data
()
{
return
{
countyList
:
[],
}
},
created
(){
this
.
getRefcdByRefgrp
();
},
methods
:
{
// 获取国家列表
getRefcdByRefgrp
()
{
this
.
$apis
.
GETREFCDBYREFGRP
({
modid
:
"
CI
"
,
refgrp
:
"
COUNTRY_MAPPING
"
}).
then
((
res
)
=>
{
this
.
countyList
=
res
.
content
||
[];
});
},
//新建保存
handlerSava
(){
this
.
$apis
.
CREATEPAY
({
this
.
$apis
.
PAYORUPDATE
({
...
this
.
detailObj
})
.
then
((
res
)
=>
{
if
(
res
.
returnCode
==
"
0000
"
)
{
this
.
$message
.
success
(
"
新建
成功
"
);
this
.
$message
.
success
(
"
保存
成功
"
);
}
else
{
this
.
$message
.
error
(
res
.
returnMsg
);
}
...
...
src/views/info/index.vue
View file @
77e494f8
...
...
@@ -3,22 +3,17 @@
<div
class=
"title-div"
>
申请日期
</div>
<a-form-model
ref=
"form"
layout=
"vertical"
>
<a-row
:gutter=
"30"
>
<a-col
:lg=
"
6
"
:sm=
"12"
>
<a-col
:lg=
"
8
"
:sm=
"12"
>
<a-form-model-item
label=
"医疗机构名称"
>
<a-input
v-model=
"detailObj.longName"
placeholder=
"医疗机构名称"
/>
</a-form-model-item>
</a-col>
<a-col
:lg=
"
6
"
:sm=
"12"
>
<a-col
:lg=
"
8
"
:sm=
"12"
>
<a-form-model-item
label=
"医疗机构英文名"
>
<a-input
v-model=
"detailObj.englishName"
placeholder=
"医疗机构英文名"
/>
</a-form-model-item>
</a-col>
<a-col
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"营业时间"
>
<a-date-picker
v-model=
"detailObj.businessHours"
format=
"YYYY年MM月DD日"
placeholder=
"选择日期"
/>
</a-form-model-item>
</a-col>
<a-col
:lg=
"6"
:sm=
"12"
>
<a-col
:lg=
"8"
:sm=
"12"
>
<a-form-model-item
label=
"联系电话"
>
<a-input
v-model=
"detailObj.telNo1"
placeholder=
"请输入联系电话"
/>
</a-form-model-item>
...
...
@@ -33,6 +28,11 @@
<a-input
v-model=
"detailObj.englishAddr"
placeholder=
"诊所地址(英文)"
/>
</a-form-model-item>
</a-col>
<a-col
:sm=
"12"
>
<a-form-model-item
label=
"营业时间"
>
<a-textarea
v-model=
"detailObj.businessHours"
placeholder=
"请输入营业时间"
:auto-size=
"
{ minRows: 3, maxRows: 5 }" />
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
<div
class=
"title-div"
>
账户信息-人民币账户
</div>
...
...
@@ -59,8 +59,8 @@
<a-form-model
layout=
"vertical"
>
<a-row
:gutter=
"30"
>
<a-col
:lg=
"8"
:sm=
"12"
>
<a-form-model-item
label=
"Benefici
iary Name 账号
"
>
<a-input
v-model=
"detailObj.accountNameEng"
placeholder=
"Benefici
iary Name 账号
"
/>
<a-form-model-item
label=
"Benefici
ary账户名称
"
>
<a-input
v-model=
"detailObj.accountNameEng"
placeholder=
"Benefici
ary账户名称
"
/>
</a-form-model-item>
</a-col>
<a-col
:lg=
"6"
:sm=
"12"
>
...
...
@@ -97,22 +97,37 @@
<span>
{{
filterSpecialty
(
record
.
specialtyList
)
}}
</span>
</
template
>
<
template
slot=
"operation"
slot-scope=
"text, record, index"
>
<a-button
type=
"link"
@
click.stop=
"editEvt(record)"
>
{{
record
.
edit
?
"
保存
"
:
"
修改
"
}}
</a-button>
<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=
"getDoctorList"
/>
<a-modal
title=
"编辑"
:visible=
"dialogShow"
width=
"
700px
"
:maskClosable=
"false"
<a-modal
title=
"编辑"
:visible=
"dialogShow"
width=
"
60%
"
:maskClosable=
"false"
okText=
"确定"
cancelText=
"取消"
@
ok=
"handleEditOK"
@
cancel=
"dialogShow = false"
>
<a-form-model
ref=
"editForm"
:model=
"editFormObj"
:rules=
"editRules"
:label-col=
"labelCol"
:wrapper-col=
"wrapperCol"
>
<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=
"doctorDescLang1"
>
<a-input
v-model.trim=
"editFormObj.doctorDescLang1"
placeholder=
"医生英文名"
/>
</a-form-model-item>
</a-col>
<a-col
:lg=
"12"
:sm=
"24"
>
<a-form-model-item
label=
"国家"
prop=
"country"
>
<a-select
v-model=
"editFormObj.country"
placeholder=
"请选择"
showSearch
allowClear
>
<a-select-option
v-for=
"(item) in countyList"
:value=
"item.descCh"
:key=
"item.id"
>
{{item.descCh}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:lg=
"12"
:sm=
"24"
>
<a-form-model-item
label=
"科室"
prop=
"specialtyList"
>
<a-select
v-model=
"editFormObj.specialtyList"
placeholder=
"请选择"
mode=
"multiple"
>
<a-select
v-model=
"editFormObj.specialtyList"
placeholder=
"请选择"
mode=
"multiple"
showSearch
allowClear
>
<a-select-option
:value=
"item.id"
v-for=
"item in specialtyList"
:key=
"item.id"
>
{{ item.specialtyDesc }}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
</a-modal>
</div>
...
...
@@ -124,41 +139,16 @@ const columns = [
{
title
:
"
序号
"
,
dataIndex
:
"
id
"
,
ellipsis
:
true
,
width
:
150
},
{
title
:
"
工号
"
,
dataIndex
:
"
doctorCode
"
,
ellipsis
:
true
,
width
:
95
},
{
title
:
"
医生姓名
"
,
dataIndex
:
"
doctorDesc
"
,
ellipsis
:
true
,
width
:
125
},
{
title
:
"
医生英文名
"
,
dataIndex
:
"
doctorDescLang1
"
,
ellipsis
:
true
,
width
:
135
,
},
{
title
:
"
科室
"
,
dataIndex
:
"
specialtyList
"
,
ellipsis
:
true
,
scopedSlots
:
{
customRender
:
"
specialtyList
"
},
width
:
155
,
},
{
title
:
"
国籍
"
,
dataIndex
:
"
country
"
,
ellipsis
:
true
,
width
:
110
,
},
{
title
:
"
医生英文名
"
,
dataIndex
:
"
doctorDescLang1
"
,
ellipsis
:
true
,
width
:
135
,},
{
title
:
"
科室
"
,
dataIndex
:
"
specialtyList
"
,
ellipsis
:
true
,
scopedSlots
:
{
customRender
:
"
specialtyList
"
},
width
:
155
,},
{
title
:
"
国籍
"
,
dataIndex
:
"
country
"
,
ellipsis
:
true
,
width
:
110
,
},
{
title
:
"
语言
"
,
dataIndex
:
"
language
"
,
ellipsis
:
true
,
width
:
120
},
{
title
:
"
操作
"
,
dataIndex
:
"
operation
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
fixed
:
"
right
"
,
width
:
"
120px
"
,
align
:
"
center
"
,
},
{
title
:
"
操作
"
,
dataIndex
:
"
operation
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
fixed
:
"
right
"
,
width
:
"
200px
"
,
align
:
"
center
"
,
},
];
export
default
{
data
()
{
return
{
dialogShow
:
false
,
labelCol
:
{
span
:
4
},
wrapperCol
:
{
span
:
20
},
columns
,
dataList
:
[],
detailObj
:
{},
//详细信息
...
...
@@ -169,8 +159,11 @@ export default {
},
specialtyList
:
[],
//科室列表
specialtyObj
:
{},
//科室对象
countyList
:
[],
editFormObj
:
{
id
:
""
,
doctorDescLang1
:
''
,
country
:
''
,
specialtyList
:
[],
},
editRules
:
{
...
...
@@ -187,6 +180,7 @@ export default {
this
.
getSpecialtyList
();
await
this
.
getDetail
();
this
.
getDoctorList
();
this
.
getRefcdByRefgrp
();
},
methods
:
{
filterSpecialty
(
val
)
{
...
...
@@ -199,6 +193,15 @@ export default {
this
.
pagination
.
pageNum
=
1
;
this
.
getData
();
},
// 获取国家列表
getRefcdByRefgrp
()
{
this
.
$apis
.
GETREFCDBYREFGRP
({
modid
:
"
CI
"
,
refgrp
:
"
COUNTRY_MAPPING
"
}).
then
((
res
)
=>
{
this
.
countyList
=
res
.
content
||
[];
});
},
//获取科室
getSpecialtyList
()
{
this
.
$apis
.
GETSPECIALTYLIST
().
then
((
res
)
=>
{
...
...
@@ -257,6 +260,8 @@ export default {
editEvt
(
record
)
{
this
.
editFormObj
=
{
id
:
record
.
id
||
""
,
doctorDescLang1
:
record
.
doctorDescLang1
||
""
,
country
:
record
.
country
||
""
,
specialtyList
:
record
.
specialtyList
||
[],
};
this
.
dialogShow
=
true
;
...
...
@@ -267,7 +272,7 @@ export default {
if
(
valid
)
{
this
.
$apis
.
DOCTORUPDATE
({
id
:
this
.
editFormObj
.
id
,
...
this
.
editFormObj
,
specialtyList
:
this
.
editFormObj
.
specialtyList
.
map
((
item
)
=>
{
return
{
specialtyId
:
item
,
...
...
src/views/layout/components/menu/index.js
View file @
77e494f8
...
...
@@ -61,7 +61,7 @@ export default {
}
}
else
if
(
item
.
path
&&
item
.
path
===
key
)
{
console
.
log
(
item
,
key
);
menuStack
.
push
(
item
);
menuStack
.
unshift
(
item
);
this
.
$store
.
commit
(
"
common/setMenuStack
"
,
menuStack
);
return
true
;
}
...
...
src/views/layout/components/menu/subMenu.vue
View file @
77e494f8
...
...
@@ -48,6 +48,9 @@ export default {
<
style
lang=
"less"
scoped
>
.sub-menu {
width: 100%;
overflow-x: auto;
white-space: nowrap;
.mg-b(16);
.btn {
.fs(14);
...
...
src/views/verification/addEOB.vue
deleted
100644 → 0
View file @
37e60316
<
template
>
<div>
111
</div>
</
template
>
<
script
>
export
default
{
data
()
{
return
{};
},
};
</
script
>
<
style
lang=
"less"
scoped
></
style
>
src/views/verification/collection.vue
View file @
77e494f8
...
...
@@ -5,81 +5,41 @@
<a-row
:gutter=
"30"
>
<a-col
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保险公司"
>
<a-select
v-model=
"form.payorId"
placeholder=
"请选择"
>
<a-select-option
value=
"1"
>
待核销
</a-select-option>
<a-select-option
value=
"2"
>
已核销
</a-select-option>
<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.date"
placeholder=
"选择日期"
/>
</a-form-model-item>
</a-col>
<a-col
:lg=
"5"
:sm=
"12"
>
<a-form-model-item
label=
"银行状态"
>
<a-select
v-model=
"form.payorId"
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.mrnNo"
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.mrnNo"
placeholder=
"请输入金额"
/>
</a-form-model-item>
</a-col>
<a-col
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"
汇率差
"
>
<a-input
v-model=
"form.
mrnNo"
placeholder=
"请输入金额"
/>
<a-form-model-item
label=
"
EOB编号
"
>
<a-input
v-model=
"form.
eobNo"
placeholder=
"EOB编号"
/>
</a-form-model-item>
</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-button
type=
"primary"
>
导出
</a-button>
<a-button
class=
"mar-left10"
type=
"primary"
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
新建回款
<a-button
class=
"mar-left10"
type=
"primary"
@
click=
"handlerSearch"
>
<Icon
name=
"ssisearch_active"
:size=
"14"
/>
查询
</a-button>
<a-button
class=
"mar-left10"
type=
"primary"
>
<a-button
class=
"mar-left10"
type=
"primary"
@
click.stop=
"handlerReset"
>
<Icon
name=
"ssireset"
:size=
"14"
/>
重置
</a-button>
<a-button
class=
"mar-left10"
type=
"primary"
@
click=
"
handlerSearch
"
>
<Icon
name=
"ssi
search_active"
:size=
"14"
/>
查询
<a-button
class=
"mar-left10"
type=
"primary"
@
click=
"
addNewEvt
"
>
<Icon
name=
"ssi
add"
:size=
"14"
/>
新建回款
</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"
>
<template
slot=
"operation"
slot-scope=
"record, index"
>
<a-button
type=
"link"
>
修改
</a-button>
<a-button
type=
"link"
class=
"success"
>
新增
</a-button>
<a-button
type=
"link"
class=
"danger"
@
click.stop=
"delRecord(index)"
>
删除
</a-button
>
<a-table
:columns=
"columns"
:data-source=
"dataList"
:scroll=
"
{ x: true }" :pagination="false" >
<template
slot=
"eobSts"
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
v-if=
"record.backMoneyNo"
type=
"link"
class=
"danger"
@
click.stop=
"delRecord(index)"
>
删除
</a-button>
</
template
>
</a-table>
<BurtPagination
:pagination=
"pagination"
@
pageChange=
"getData"
/>
...
...
@@ -88,41 +48,25 @@
<
script
>
import
BurtPagination
from
"
@/components/CUSTOMER/pagation
"
;
import
moment
from
"
moment
"
;
const
columns
=
[
{
title
:
"
序号
"
,
dataIndex
:
"
mrnNo
"
,
ellipsis
:
true
,
width
:
72
},
{
title
:
"
EOB名称
"
,
dataIndex
:
"
patientName
"
,
ellipsis
:
true
,
width
:
195
},
{
title
:
"
核销时间
"
,
dataIndex
:
"
patientName2
"
,
ellipsis
:
true
,
width
:
110
},
{
title
:
"
保险公司
"
,
dataIndex
:
"
patientName3
"
,
ellipsis
:
true
,
width
:
110
},
{
title
:
"
EOB状态
"
,
dataIndex
:
"
patientName9
"
,
ellipsis
:
true
,
width
:
110
},
{
title
:
"
EOB赔付金额(人民币)
"
,
dataIndex
:
"
patientName4
"
,
ellipsis
:
true
,
width
:
190
,
},
{
title
:
"
EOB赔付金额(美元)
"
,
dataIndex
:
"
patientName5
"
,
ellipsis
:
true
,
width
:
190
,
},
{
title
:
"
汇率差
"
,
dataIndex
:
"
patientName10
"
,
ellipsis
:
true
,
width
:
110
},
{
title
:
"
操作
"
,
dataIndex
:
"
operation
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
fixed
:
"
right
"
,
width
:
"
170px
"
,
},
{
title
:
"
回款编号
"
,
dataIndex
:
"
backMoneyNo
"
,
ellipsis
:
true
,
width
:
150
},
{
title
:
"
保险公司
"
,
dataIndex
:
"
payorName
"
,
ellipsis
:
true
,
width
:
110
},
{
title
:
"
回款金额(人民币)
"
,
dataIndex
:
"
backAmountCny
"
,
ellipsis
:
true
,
width
:
190
,},
{
title
:
"
回款金额(美元)
"
,
dataIndex
:
"
backAmountUsd
"
,
ellipsis
:
true
,
width
:
190
,},
{
title
:
"
汇率差
"
,
dataIndex
:
"
backExchangeRate
"
,
ellipsis
:
true
,
width
:
110
},
{
title
:
"
操作
"
,
dataIndex
:
"
operation
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
fixed
:
"
right
"
,
width
:
"
200px
"
},
];
export
default
{
data
()
{
return
{
columns
,
form
:
{
dateRange
:
[],
payorCode
:
''
,
eobNo
:
''
,
},
dataList
:
[],
companyOptions
:
[],
//保险公司
pagination
:
{
pageNum
:
1
,
pageSize
:
10
,
...
...
@@ -133,17 +77,67 @@ export default {
components
:
{
BurtPagination
,
},
created
(){
this
.
getData
();
this
.
_getCompanyOptions
();
},
methods
:
{
moment
,
pageChange
(
pager
)
{
const
{
current
}
=
pager
;
this
.
pagination
.
pageNum
=
current
;
this
.
getData
();
},
// 重置
handlerReset
()
{
this
.
form
=
{
payorCode
:
''
,
eobNo
:
''
,
}
},
// 获取保险公司下拉选项
_getCompanyOptions
()
{
this
.
$apis
.
GETCOMPANYOPTIONS
().
then
((
res
)
=>
{
this
.
companyOptions
=
res
.
content
||
[];
});
},
handlerSearch
()
{
this
.
pagination
.
pageNum
=
1
;
this
.
getData
();
},
getData
()
{},
getData
()
{
this
.
$apis
.
QUERYBACKMONEYLIST
({
...
this
.
form
,
pageNum
:
this
.
pagination
.
pageNum
,
pageSize
:
this
.
pagination
.
pageSize
,
})
.
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
);
}
});
},
//新建回款
addNewEvt
(){
this
.
$router
.
push
({
path
:
'
/verification/collectionDetail
'
})
},
//编辑回款
editEvt
(
record
){
const
{
backMoneyNo
}
=
record
;
localStorage
.
setItem
(
'
backMoneyDataDetail
'
,
JSON
.
stringify
(
record
));
this
.
$router
.
push
({
path
:
'
/verification/collectionDetail
'
,
query
:
{
backMoneyNo
}
})
},
//删除记录
delRecord
(
index
)
{
this
.
$modal
.
confirm
({
...
...
@@ -152,19 +146,21 @@ export default {
okText
:
"
确认
"
,
cancelText
:
"
取消
"
,
onOk
:
()
=>
{
this
.
$store
.
dispatch
(
"
medicinal/delMedicine
"
,
{
id
:
this
.
dataList
[
index
].
id
,
status
:
-
1
,
this
.
$apis
.
DELETEBACKMONEY
({
backMoneyNo
:
this
.
dataList
[
index
].
backMoneyNo
,
})
.
then
(()
=>
{
.
then
((
res
)
=>
{
if
(
res
.
returnCode
==
"
0000
"
)
{
this
.
$message
.
success
(
"
删除成功
"
);
this
.
dataList
.
splice
(
index
,
1
);
}
else
{
this
.
$message
.
error
(
res
.
returnMsg
);
}
});
},
onCancel
:
()
=>
{},
});
}
,
}
},
};
</
script
>
...
...
src/views/verification/collectionAdd.vue
deleted
100644 → 0
View file @
37e60316
<
template
>
<div>
111
</div>
</
template
>
<
script
>
export
default
{
data
()
{
return
{};
},
};
</
script
>
<
style
lang=
"less"
scoped
></
style
>
src/views/verification/collectionDetail.vue
0 → 100644
View file @
77e494f8
<
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-form-model-item>
</a-col>
</a-row>
<a-row
:gutter=
"30"
>
<a-col
:md=
"24"
class=
"none-label"
>
<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-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
:
"
EOB回款金额(人民币)
"
,
dataIndex
:
"
eobBackMoneyCny
"
,
ellipsis
:
true
,
width
:
190
,},
{
title
:
"
EOB回款金额(美元)
"
,
dataIndex
:
"
eobBackMoneyUsd
"
,
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
>
src/views/verification/index.vue
View file @
77e494f8
...
...
@@ -4,82 +4,43 @@
<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.payorId"
placeholder=
"请选择"
>
<a-select-option
value=
"1"
>
待核销
</a-select-option>
<a-select-option
value=
"2"
>
已核销
</a-select-option>
<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-range-picker
format=
"YYYY年MM月DD日"
v-model=
"form.dateRange"
:placeholder=
"['开始日期', '结束日期']"
/>
<a-form-model-item
label=
"账单编号"
>
<a-input
v-model=
"form.receiptNo"
placeholder=
"请输入账单编号"
/>
</a-form-model-item>
</a-col>
<a-col
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"EOB名称"
>
<a-input
v-model=
"form.mrnNo"
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.mrnNo"
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.mrnNo"
placeholder=
"请输入金额"
/>
</a-form-model-item>
</a-col>
<a-col
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"EOB状态"
>
<a-select
v-model=
"form.payorId"
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-col
:lg=
"12"
:sm=
"24"
class=
"none-label"
>
<a-form-model-item
label=
"button"
>
<a-button
type=
"primary"
>
导出
</a-button>
<a-button
class=
"mar-left10"
type=
"primary"
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
新建EOB
<a-button
class=
"mar-left10"
type=
"primary"
@
click=
"handlerSearch"
>
<Icon
name=
"ssisearch_active"
:size=
"14"
/>
查询
</a-button>
<a-button
class=
"mar-left10"
type=
"primary"
>
<a-button
class=
"mar-left10"
type=
"primary"
@
click.stop=
"handlerReset"
>
<Icon
name=
"ssireset"
:size=
"14"
/>
重置
</a-button>
<a-button
class=
"mar-left10"
type=
"primary"
@
click=
"handlerSearch"
>
<Icon
name=
"ssisearch_active"
:size=
"14"
/>
查询
<!--
<a-button
type=
"primary"
>
导出
</a-button>
-->
<a-button
class=
"mar-left10"
type=
"primary"
@
click=
"addNewEvt"
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
新建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"
>
<template
slot=
"operation"
slot-scope=
"record, index"
>
<a-button
type=
"link"
>
修改
</a-button>
<a-button
type=
"link"
class=
"success"
>
新增
</a-button>
<a-button
type=
"link"
class=
"danger"
@
click.stop=
"delRecord(index)"
>
删除
</a-button
>
<a-table
:columns=
"columns"
:data-source=
"dataList"
:scroll=
"
{ x: true }" :pagination="false">
<template
slot=
"sendSts"
slot-scope=
"record, text"
>
<span>
{{
text
==
1
?
'
已寄送
'
:
'
未寄送
'
}}
</span>
</
template
>
<
template
slot=
"operation"
slot-scope=
"text, record, index"
>
<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"
/>
...
...
@@ -88,41 +49,26 @@
<
script
>
import
BurtPagination
from
"
@/components/CUSTOMER/pagation
"
;
import
moment
from
"
moment
"
;
const
columns
=
[
{
title
:
"
病历号
"
,
dataIndex
:
"
mrnNo
"
,
ellipsis
:
true
,
width
:
100
},
{
title
:
"
客户姓名
"
,
dataIndex
:
"
patientName
"
,
ellipsis
:
true
,
width
:
85
},
{
title
:
"
保险公司
"
,
dataIndex
:
"
patientName2
"
,
ellipsis
:
true
,
width
:
80
},
{
title
:
"
就诊日期
"
,
dataIndex
:
"
patientName3
"
,
ellipsis
:
true
,
width
:
110
},
{
title
:
"
理赔状态
"
,
dataIndex
:
"
patientName0
"
,
ellipsis
:
true
,
width
:
90
},
{
title
:
"
账单金额
"
,
dataIndex
:
"
patientName4
"
,
ellipsis
:
true
,
width
:
85
},
{
title
:
"
自付金额
"
,
dataIndex
:
"
patientName5
"
,
ellipsis
:
true
,
width
:
85
},
{
title
:
"
理赔金额
"
,
dataIndex
:
"
patientName6
"
,
ellipsis
:
true
,
width
:
85
},
{
title
:
"
回款金额
"
,
dataIndex
:
"
patientName7
"
,
ellipsis
:
true
,
width
:
85
},
{
title
:
"
未清金额
"
,
dataIndex
:
"
patientName8
"
,
ellipsis
:
true
,
width
:
85
},
{
title
:
"
保险公司欠费
"
,
dataIndex
:
"
patientName9
"
,
ellipsis
:
true
,
width
:
110
,
},
{
title
:
"
个人欠费
"
,
dataIndex
:
"
patientName9
"
,
ellipsis
:
true
,
width
:
85
},
{
title
:
"
备注
"
,
dataIndex
:
"
patientName10
"
,
ellipsis
:
true
,
width
:
120
},
{
title
:
"
操作
"
,
dataIndex
:
"
operation
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
fixed
:
"
right
"
,
width
:
"
170px
"
,
},
{
title
:
"
EOB编号
"
,
dataIndex
:
"
eobNo
"
,
ellipsis
:
true
,
width
:
100
},
{
title
:
"
保险公司
"
,
dataIndex
:
"
payorName
"
,
ellipsis
:
true
,
width
:
80
},
{
title
:
"
理赔状态
"
,
dataIndex
:
"
sendSts
"
,
ellipsis
:
true
,
width
:
90
,
scopedSlots
:
{
customRender
:
"
sendSts
"
}
},
{
title
:
"
EOB赔付金额(人民币)
"
,
dataIndex
:
"
eobAmountCny
"
,
ellipsis
:
true
,
width
:
85
},
{
title
:
"
EOB赔付金额(美元)
"
,
dataIndex
:
"
eobAmountUsd
"
,
ellipsis
:
true
,
width
:
85
},
{
title
:
"
备注
"
,
dataIndex
:
"
sendRemark
"
,
ellipsis
:
true
,
width
:
120
},
{
title
:
"
操作
"
,
dataIndex
:
"
operation
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
fixed
:
"
right
"
,
width
:
"
200px
"
},
];
export
default
{
data
()
{
return
{
columns
,
form
:
{
dateRange
:
[],
payorCode
:
''
,
receiptNo
:
''
,
},
dataList
:
[],
companyOptions
:
[],
//保险公司
pagination
:
{
pageNum
:
1
,
pageSize
:
10
,
...
...
@@ -133,12 +79,44 @@ export default {
components
:
{
BurtPagination
,
},
created
(){
this
.
getData
();
this
.
_getCompanyOptions
();
},
methods
:
{
moment
,
handlerSearch
()
{
this
.
pagination
.
pageNum
=
1
;
this
.
getData
();
},
getData
()
{},
// 重置
handlerReset
()
{
this
.
form
=
{
payorCode
:
''
,
receiptNo
:
''
,
}
},
// 获取保险公司下拉选项
_getCompanyOptions
()
{
this
.
$apis
.
GETCOMPANYOPTIONS
().
then
((
res
)
=>
{
this
.
companyOptions
=
res
.
content
||
[];
});
},
getData
()
{
this
.
$apis
.
QUERYEOBLIST
({
pageNum
:
this
.
pagination
.
pageNum
,
pageSize
:
this
.
pagination
.
pageSize
,
})
.
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
);
}
});
},
//删除记录
delRecord
(
index
)
{
this
.
$modal
.
confirm
({
...
...
@@ -147,11 +125,38 @@ export default {
okText
:
"
确认
"
,
cancelText
:
"
取消
"
,
onOk
:
()
=>
{
console
.
log
(
index
,
111
)
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
:
()
=>
{},
});
},
//新建EOB
addNewEvt
(){
this
.
$router
.
push
({
path
:
'
/verification/detail
'
})
},
//修改
editEvt
(
record
){
const
{
eobNo
}
=
record
;
localStorage
.
setItem
(
'
EobDataDetail
'
,
JSON
.
stringify
(
record
));
this
.
$router
.
push
({
path
:
'
/verification/detail
'
,
query
:
{
eobNo
}
})
}
},
};
</
script
>
...
...
src/views/verification/indexDetail.vue
0 → 100644
View file @
77e494f8
<
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-form-model-item>
</a-col>
</a-row>
<a-row
:gutter=
"30"
>
<a-col
:md=
"24"
class=
"none-label"
>
<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=
"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
>
src/views/welfare/edit/components/benefits/index.vue
0 → 100644
View file @
77e494f8
<
template
>
<div
class=
"benefits"
>
<div
class=
"none-label mar-bottom10"
>
<a-button
type=
"primary"
@
click=
"editBenefitData(null)"
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
新增福利
</a-button>
</div>
<a-table
:columns=
"columns"
:locale=
"
{ emptyText: 'No Data' }"
:data-source="benefitData"
row-key="benefitCode"
:pagination="false"
>
<template
slot=
"operation"
slot-scope=
"record"
>
<a-button
type=
"link"
@
click.stop=
"editBenefitData(record)"
>
修改
</a-button>
<a-popconfirm
title=
"你确定要删除吗?"
ok-text=
"确定"
cancel-text=
"取消"
@
confirm=
"deleteData(record)"
>
<a-button
type=
"link"
class=
"danger"
>
删除
</a-button>
</a-popconfirm>
</
template
>
<
template
slot=
"expandedRowRender"
slot-scope=
"record"
>
<condition
:form-data=
"
{ ...record, conditionType: '01' }" />
</
template
>
</a-table>
<a-modal
title=
"福利管理"
v-model=
"isBenefitEditShow"
:footer=
"null"
width=
"500px"
@
cancel=
"isBenefitEditShow = false"
>
<a-form-model
ref=
"editForm"
layout=
"vertical"
:model=
"editForm"
:rules=
"editRule"
>
<a-row
:gutter=
"20"
>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"客户公司名称"
prop=
"corpCode"
>
<a-input
disabled
v-model=
"editForm.corpCode"
>
</a-input>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"保险计划"
prop=
"planCode"
>
<a-input
disabled
v-model=
"editForm.planCode"
>
</a-input>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"保险责任"
prop=
"coverageCode"
>
<a-input
disabled
v-model=
"editForm.coverageCode"
>
</a-input>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"福利项目"
prop=
"benefitCode"
>
<a-select
v-model=
"editForm.benefitCode"
show-search
allow-clear
@
filterOption=
"filterCode"
>
<a-select-option
v-for=
"item in benefitCode"
:key=
"item.benefitCode"
:vlaue=
"item.benefitCode"
>
{{ item.description }}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"开始时间"
prop=
"startDate"
>
<a-date-picker
v-model=
"editForm.startDate"
placeholder=
"请选择开始时间"
value-format=
"YYYY-MM-DD 00:00:00"
></a-date-picker>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"结束时间"
prop=
"endDate"
>
<a-date-picker
v-model=
"editForm.endDate"
placeholder=
"请选择结束时间"
value-format=
"YYYY-MM-DD 00:00:00"
></a-date-picker>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"等待期"
>
<a-input-number
v-model=
"editForm.waitingPeriod"
>
</a-input-number>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"是否天数"
>
<a-input-number
v-model=
"editForm.isdays"
></a-input-number>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"英文描述"
>
<a-input
v-model=
"editForm.englishDesc"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"描述"
>
<a-input
v-model=
"editForm.loaDesc"
>
</a-input>
</a-form-model-item>
</a-col>
<!-- <a-col :md="12">
<a-form-model-item label="状态">
<a-select
v-model="editForm.status"
show-search
allow-clear
@filterOption="filterCode"
>
<a-select-option
v-for="item in statusCode"
:key="item.code"
:vlaue="item.code"
>
{{ item.name }}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col> -->
</a-row>
<a-form-model-item
label=
"备注"
>
<a-textarea
v-model=
"editForm.remarks"
:autoSize=
"{ minRows: 2, maxRows: 5 }"
></a-textarea>
</a-form-model-item>
<a-form-model-item>
<a-button
type=
"primary"
@
click=
"saveBenefitData"
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
保存
</a-button>
<a-button
class=
"mar-left10"
@
click=
"isBenefitEditShow = false"
>
取消
</a-button>
</a-form-model-item>
</a-form-model>
</a-modal>
</div>
</template>
<
script
>
import
condition
from
"
../condition
"
;
export
default
{
props
:
{
formData
:
{
type
:
Object
,
required
:
true
,
},
},
components
:
{
condition
,
},
data
()
{
const
columns
=
[
{
title
:
"
责任项目明细
"
,
dataIndex
:
"
benefitCode
"
},
// { title: "预授权申请", dataIndex: "index" },
{
title
:
"
更新日期
"
,
dataIndex
:
"
modifierDate
"
},
{
title
:
"
开始日期
"
,
dataIndex
:
"
startDate
"
},
{
title
:
"
结束日期
"
,
dataIndex
:
"
endDate
"
},
{
title
:
"
备注
"
,
dataIndex
:
"
remark
"
},
{
title
:
"
操作
"
,
key
:
"
operation
"
,
width
:
"
175px
"
,
fixed
:
"
right
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
},
];
return
{
columns
,
isBenefitEditShow
:
false
,
benefitData
:
[],
benefitCode
:
[],
editForm
:
{},
editRule
:
{
benefitCode
:
[{
required
:
true
,
message
:
"
请选择福利项
"
}],
startDate
:
[{
required
:
true
,
message
:
"
请选择开始时间
"
}],
endDate
:
[{
required
:
true
,
message
:
"
请选择结束时间
"
}],
},
};
},
mounted
()
{
this
.
_getBenefitList
();
},
methods
:
{
// 选择框筛选
filterCode
(
input
,
option
)
{
return
(
option
.
componentOptions
.
children
[
0
].
text
.
toLowerCase
().
indexOf
(
input
.
toLowerCase
())
>=
0
);
},
// 新增或编辑benefit数据
editBenefitData
(
data
)
{
data
=
data
||
{
payorCode
:
this
.
formData
.
payorCode
,
corpCode
:
this
.
formData
.
corpCode
,
planCode
:
this
.
formData
.
planCode
,
coverageCode
:
this
.
formData
.
coverageCode
,
isDirect
:
"
N
"
,
status
:
"
1
"
,
};
this
.
_getBenefitCode
();
this
.
editForm
=
this
.
$lodash
.
cloneDeep
(
data
);
this
.
isBenefitEditShow
=
true
;
},
deleteData
(
record
)
{
const
data
=
this
.
$lodash
.
cloneDeep
(
record
);
data
.
status
=
"
2
"
;
// 置为无效状态即删除
this
.
_editBenefitData
(
data
);
},
saveBenefitData
()
{
this
.
$refs
.
editForm
.
validate
((
valid
)
=>
{
if
(
!
valid
)
{
return
false
;
}
});
this
.
_editBenefitData
(
this
.
editForm
);
},
_editBenefitData
(
data
)
{
const
fn
=
data
.
id
||
data
.
id
===
0
?
this
.
$apis
.
EDITBENEFITLIST
:
this
.
$apis
.
ADDBENEFITLIST
;
fn
(
data
).
then
((
res
)
=>
{
if
(
res
.
returnCode
===
"
0000
"
)
{
this
.
$message
.
success
(
res
.
returnMsg
||
"
操作成功
"
);
this
.
_getBenefitList
();
this
.
isBenefitEditShow
=
false
;
}
else
{
this
.
$message
.
error
(
res
.
returnMsg
||
"
操作失败
"
);
}
});
},
_getBenefitList
()
{
const
{
corpCode
,
coverageCode
,
payorCode
,
planCode
}
=
this
.
formData
;
const
data
=
{
corpCode
,
coverageCode
,
payorCode
,
planCode
};
this
.
$apis
.
GETBENEFITLIST
(
data
).
then
((
res
)
=>
{
this
.
benefitData
=
res
.
content
||
[];
});
},
_getBenefitCode
()
{
if
(
this
.
benefitCode
&&
this
.
benefitCode
.
length
)
{
return
true
;
}
this
.
$apis
.
GETBENEGITTYPE
().
then
((
res
)
=>
{
this
.
benefitCode
=
res
.
content
||
[];
});
},
},
};
</
script
>
<
style
lang=
"less"
scoped
>
.benefits {
.pa(0, 20, 10, 20);
background-color: #fff;
}
</
style
>
src/views/welfare/edit/components/condition/index.vue
0 → 100644
View file @
77e494f8
<
template
>
<div
class=
"condition"
>
<div
class=
"none-label mar-bottom10"
>
<a-button
type=
"primary"
@
click=
"editConditionData(null)"
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
新增条件
</a-button>
</div>
<a-table
:columns=
"columns"
:locale=
"
{ emptyText: 'No Data' }"
:data-source="conditionList"
row-key="id"
:pagination="false"
>
<template
slot=
"operation"
slot-scope=
"record"
>
<a-button
type=
"link"
@
click.stop=
"editConditionData(record)"
>
修改
</a-button>
<a-popconfirm
title=
"你确定要删除吗?"
ok-text=
"确定"
cancel-text=
"取消"
@
confirm=
"deleteData(record)"
>
<a-button
type=
"link"
class=
"danger"
>
删除
</a-button>
</a-popconfirm>
</
template
>
</a-table>
<a-modal
title=
"条件管理"
v-model=
"isConditionEditShow"
:footer=
"null"
@
cancel=
"isConditionEditShow = false"
>
<a-form-model
ref=
"editForm"
layout=
"vertical"
:model=
"editForm"
:rules=
"editRule"
>
<a-form-model-item
label=
"频率"
prop=
"frequencyCode"
>
<a-select
v-model=
"editForm.frequencyCode"
show-search
allow-clear
@
filterOption=
"filterCode"
>
<a-select-option
v-for=
"item in frequencyCode"
:key=
"item.frequencyCode"
:vlaue=
"item.frequencyCode"
>
{{ item.frequencyDesc }}
</a-select-option>
</a-select>
</a-form-model-item>
<a-form-model-item
label=
"条件"
prop=
"limitCode"
>
<a-select
v-model=
"editForm.limitCode"
show-search
allow-clear
@
filterOption=
"limitCode"
>
<a-select-option
v-for=
"item in limitCode"
:key=
"item.limitCode"
:vlaue=
"item.limitCode"
>
{{ item.limitDesc }}
</a-select-option>
</a-select>
</a-form-model-item>
<a-form-model-item
label=
"开始时间"
prop=
"startDate"
>
<a-date-picker
v-model=
"editForm.startDate"
placeholder=
"请选择开始时间"
value-format=
"YYYY-MM-DD 00:00:00"
></a-date-picker>
</a-form-model-item>
<a-form-model-item
label=
"结束时间"
prop=
"endDate"
>
<a-date-picker
v-model=
"editForm.endDate"
placeholder=
"请选择结束时间"
value-format=
"YYYY-MM-DD 00:00:00"
></a-date-picker>
</a-form-model-item>
<a-row
:gutter=
"10"
>
<a-col
:span=
"8"
>
<a-form-model-item
label=
"最小值"
>
<a-input-number
v-model=
"editForm.minValue"
>
</a-input-number>
</a-form-model-item>
</a-col>
<a-col
:span=
"8"
>
<a-form-model-item
label=
"最大值"
>
<a-input-number
v-model=
"editForm.maxValue"
>
</a-input-number>
</a-form-model-item>
</a-col>
<a-col
:span=
"8"
>
<a-form-model-item
label=
"家庭最大值"
>
<a-input-number
v-model=
"editForm.familyMaxValue"
>
</a-input-number>
</a-form-model-item>
</a-col>
</a-row>
<a-form-model-item
label=
"币种"
>
<a-select
v-model=
"editForm.currency"
show-search
allow-clear
@
filterOption=
"filterCode"
>
<a-select-option
v-for=
"item in currencyCode"
:key=
"item.code"
:vlaue=
"item.code"
>
{{ item.name }}
</a-select-option>
</a-select>
</a-form-model-item>
<!-- <a-form-model-item label="状态">
<a-select
v-model="editForm.status"
show-search
allow-clear
@filterOption="filterCode"
>
<a-select-option
v-for="item in statusCode"
:key="item.code"
:vlaue="item.code"
>
{{ item.name }}
</a-select-option>
</a-select>
</a-form-model-item> -->
<a-form-model-item
label=
"备注"
prop=
"remarks"
>
<a-textarea
v-model=
"editForm.remarks"
:autoSize=
"{ minRows: 2, maxRows: 5 }"
></a-textarea>
</a-form-model-item>
<a-form-model-item
class=
"text-r"
>
<a-button
type=
"primary"
@
click=
"saveConditionData"
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
保存
</a-button>
<a-button
class=
"mar-left10"
@
click=
"isConditionEditShow = false"
>
取消
</a-button>
</a-form-model-item>
</a-form-model>
</a-modal>
</div>
</template>
<
script
>
export
default
{
props
:
{
formData
:
{
type
:
Object
,
required
:
true
,
},
},
data
()
{
const
columns
=
[
{
title
:
"
频率
"
,
dataIndex
:
"
frequencyCode
"
},
{
title
:
"
条件
"
,
dataIndex
:
"
limitCode
"
},
{
title
:
"
开始时间
"
,
dataIndex
:
"
startDate
"
},
{
title
:
"
结束时间
"
,
dataIndex
:
"
endDate
"
},
{
title
:
"
有效
"
,
dataIndex
:
"
status
"
},
// { title: "限额或限次", dataIndex: "index" },
{
title
:
"
最大值
"
,
dataIndex
:
"
maxValue
"
},
{
title
:
"
操作
"
,
key
:
"
operation
"
,
width
:
"
175px
"
,
fixed
:
"
right
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
},
];
return
{
columns
,
conditionList
:
[],
isConditionEditShow
:
false
,
editForm
:
{},
frequencyCode
:
[],
limitCode
:
[],
currencyCode
:
[
{
code
:
"
RMB
"
,
name
:
"
人民币
"
},
{
code
:
"
US
"
,
name
:
"
美金
"
},
],
statusCode
:
[
{
code
:
"
1
"
,
name
:
"
有效
"
},
{
code
:
"
2
"
,
name
:
"
无效
"
},
],
editRule
:
{
frequencyCode
:
[{
required
:
true
,
message
:
"
请选择频率
"
}],
limitCode
:
[{
required
:
true
,
message
:
"
请选择条件
"
}],
startDate
:
[{
required
:
true
,
message
:
"
请选择开始时间
"
}],
endDate
:
[{
required
:
true
,
message
:
"
请选择结束时间
"
}],
},
};
},
mounted
()
{
this
.
_getConditionList
();
},
methods
:
{
// 选择框筛选
filterCode
(
input
,
option
)
{
return
(
option
.
componentOptions
.
children
[
0
].
text
.
toLowerCase
()
.
indexOf
(
input
.
toLowerCase
())
>=
0
);
},
editConditionData
(
data
)
{
const
{
planCode
,
payorCode
,
coverageCode
,
corpCode
,
benefitCode
,
conditionType
}
=
this
.
formData
;
data
=
data
||
{
planCode
,
payorCode
,
coverageCode
,
corpCode
,
benefitCode
,
conditionType
,
currency
:
"
RMB
"
,
status
:
"
1
"
,
};
this
.
editForm
=
this
.
$lodash
.
cloneDeep
(
data
);
this
.
_getFrequencyCode
();
this
.
_getLimitCode
();
this
.
isConditionEditShow
=
true
;
},
saveConditionData
()
{
this
.
$refs
.
editForm
.
validate
((
valid
)
=>
{
if
(
!
valid
)
{
return
false
;
}
if
(
this
.
editForm
.
id
||
this
.
editForm
.
id
===
0
)
{
this
.
_editConditionData
(
this
.
editForm
);
}
else
{
this
.
_addConditionData
(
this
.
editForm
);
}
});
},
deleteData
(
record
)
{
const
data
=
this
.
$lodash
.
cloneDeep
(
record
);
data
.
status
=
"
2
"
;
// 置为无效状态即删除
this
.
_editConditionData
(
data
);
},
_getConditionList
()
{
const
{
planCode
,
payorCode
,
coverageCode
,
corpCode
,
benefitCode
,
conditionType
}
=
this
.
formData
;
const
data
=
{
planCode
,
payorCode
,
coverageCode
,
corpCode
,
benefitCode
,
conditionType
};
this
.
$apis
.
GETCONDITIONLIST
(
data
).
then
((
res
)
=>
{
this
.
conditionList
=
res
.
content
||
[];
});
},
_getFrequencyCode
()
{
if
(
this
.
frequencyCode
&&
this
.
frequencyCode
.
length
)
{
return
true
;
}
this
.
$apis
.
GETFREQUENCYCODE
().
then
((
res
)
=>
{
this
.
frequencyCode
=
res
.
content
||
[];
});
},
_getLimitCode
()
{
if
(
this
.
limitCode
&&
this
.
limitCode
.
length
)
{
return
true
;
}
this
.
$apis
.
GETLIMITCODE
().
then
((
res
)
=>
{
this
.
limitCode
=
res
.
content
||
[];
});
},
_addConditionData
(
data
)
{
this
.
$apis
.
ADDCONDITIONDATA
(
data
).
then
((
res
)
=>
{
if
(
res
.
returnCode
===
"
0000
"
)
{
this
.
_getConditionList
();
this
.
$message
.
success
(
res
.
returnMsg
||
"
操作成功
"
);
this
.
isConditionEditShow
=
false
;
}
else
{
this
.
$message
.
error
(
res
.
returnMsg
||
"
操作失败
"
);
}
});
},
_editConditionData
(
data
)
{
this
.
$apis
.
EDITCONDITIONDATA
(
data
).
then
((
res
)
=>
{
if
(
res
.
returnCode
===
"
0000
"
)
{
this
.
_getConditionList
();
this
.
$message
.
success
(
res
.
returnMsg
||
"
操作成功
"
);
this
.
isConditionEditShow
=
false
;
}
else
{
this
.
$message
.
error
(
res
.
returnMsg
||
"
操作失败
"
);
}
});
},
},
};
</
script
>
<
style
lang=
"less"
scoped
>
.condition {
.pa(0, 20, 10, 20);
background-color: #fff;
}
</
style
>
src/views/welfare/edit/components/coverages/index.vue
0 → 100644
View file @
77e494f8
<
template
>
<div
class=
"coverage"
>
<div
class=
"none-label mar-bottom10"
>
<a-button
type=
"primary"
@
click=
"editCoverageData(null)"
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
新增责任
</a-button>
</div>
<a-table
:columns=
"columns"
:locale=
"
{ emptyText: 'No Data' }"
:data-source="coverageData"
row-key="coverageCode"
:pagination="false"
>
<template
slot=
"operation"
slot-scope=
"record"
>
<a-button
type=
"link"
@
click.stop=
"editCoverageData(record)"
>
修改
</a-button>
<a-popconfirm
title=
"你确定要删除吗?"
ok-text=
"确定"
cancel-text=
"取消"
@
confirm=
"deleteData(record)"
>
<a-button
type=
"link"
class=
"danger"
>
删除
</a-button>
</a-popconfirm>
</
template
>
<
template
slot=
"expandedRowRender"
slot-scope=
"record"
>
<condition
class=
"mar-bottom10"
:form-data=
"
{ ...record, conditionType: '02' }"/>
<benefits
:formData=
"record"
/>
</
template
>
</a-table>
<a-modal
title=
"责任管理"
v-model=
"isCoverageEditShow"
:footer=
"null"
width=
"500px"
@
cancel=
"isCoverageEditShow = false"
>
<a-form-model
ref=
"editForm"
layout=
"vertical"
:model=
"editForm"
:rules=
"editRule"
>
<a-row
:gutter=
"20"
>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"客户公司名称"
prop=
"corpCode"
>
<a-input
disabled
v-model=
"editForm.corpCode"
>
</a-input>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"保险计划"
prop=
"planCode"
>
<a-input
disabled
v-model=
"editForm.planCode"
>
</a-input>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"保险责任"
prop=
"coverageCode"
>
<a-select
v-model=
"editForm.coverageCode"
show-search
allow-clear
@
filterOption=
"filterCode"
>
<a-select-option
v-for=
"item in coverageCode"
:key=
"item.coverageCode"
:vlaue=
"item.coverageCode"
>
{{ item.coverageDesc }}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"等待期"
>
<a-input-number
v-model=
"editForm.waitingPeriod"
></a-input-number>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"英文描述"
>
<a-input
v-model=
"editForm.englishDesc"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"描述"
>
<a-input
v-model=
"editForm.loaDesc"
>
</a-input>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"是否直付"
>
<a-radio-group
v-model=
"editForm.isDirect"
:default-value=
"editForm.isDirect"
button-style=
"solid"
>
<a-radio-button
value=
"Y"
>
是
</a-radio-button>
<a-radio-button
class=
"mar-left10"
value=
"N"
>
否
</a-radio-button>
</a-radio-group>
</a-form-model-item>
</a-col>
<!-- <a-col :md="12">
<a-form-model-item label="状态">
<a-select
v-model="editForm.status"
show-search
allow-clear
@filterOption="filterCode"
>
<a-select-option
v-for="item in statusCode"
:key="item.code"
:vlaue="item.code"
>
{{ item.name }}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col> -->
</a-row>
<!-- <a-form-model-item label="保险公司" prop="payorCode">
<a-input disabled v-model="editForm.payorCode"> </a-input>
</a-form-model-item> -->
<a-form-model-item
label=
"备注"
>
<a-textarea
v-model=
"editForm.remarks"
:autoSize=
"{ minRows: 2, maxRows: 5 }"
></a-textarea>
</a-form-model-item>
<a-form-model-item>
<a-button
type=
"primary"
@
click=
"saveCoverageData"
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
保存
</a-button>
<a-button
class=
"mar-left10"
@
click=
"isCoverageEditShow = false"
>
取消
</a-button>
</a-form-model-item>
</a-form-model>
</a-modal>
</div>
</template>
<
script
>
import
benefits
from
"
../benefits
"
;
import
condition
from
"
../condition
"
;
export
default
{
props
:
{
formData
:
{
required
:
true
,
type
:
Object
,
},
},
components
:
{
benefits
,
condition
,
},
data
()
{
const
columns
=
[
{
title
:
"
门诊责任
"
,
dataIndex
:
"
coverageCode
"
,
width
:
150
},
{
title
:
"
是否直付
"
,
dataIndex
:
"
isDirect
"
,
width
:
120
},
{
title
:
"
等待期
"
,
dataIndex
:
"
waitingPeriod
"
,
width
:
120
},
// { title: "预授权", dataIndex: "sex", width: 80 },
// { title: "预授权期限", dataIndex: "payorName", width: 180 },
{
title
:
"
状态
"
,
dataIndex
:
"
status
"
,
width
:
180
},
{
title
:
"
备注
"
,
dataIndex
:
"
remark
"
},
{
title
:
"
操作
"
,
key
:
"
operation
"
,
width
:
"
175px
"
,
fixed
:
"
right
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
},
];
return
{
isCoverageEditShow
:
false
,
columns
,
coverageData
:
[],
editForm
:
{},
coverageCode
:
[],
statusCode
:
[
{
code
:
"
1
"
,
name
:
"
有效
"
},
{
code
:
"
2
"
,
name
:
"
无效
"
},
],
editRule
:
{
coverageCode
:
[{
required
:
true
,
message
:
"
请选择保险责任
"
}],
},
};
},
mounted
()
{
this
.
_getCoverageList
();
},
methods
:
{
// 新增或编辑coverage数据
editCoverageData
(
data
)
{
data
=
data
||
{
payorCode
:
this
.
formData
.
payorCode
,
corpCode
:
this
.
formData
.
corpCode
,
planCode
:
this
.
formData
.
planCode
,
isDirect
:
"
N
"
,
status
:
"
1
"
,
};
this
.
_getCoverageCode
();
this
.
editForm
=
this
.
$lodash
.
cloneDeep
(
data
);
this
.
isCoverageEditShow
=
true
;
},
// 选择框筛选
filterCode
(
input
,
option
)
{
return
(
option
.
componentOptions
.
children
[
0
].
text
.
toLowerCase
().
indexOf
(
input
.
toLowerCase
())
>=
0
);
},
saveCoverageData
()
{
this
.
$refs
.
editForm
.
validate
((
valid
)
=>
{
if
(
!
valid
)
{
return
false
;
}
this
.
_editCoverageData
(
this
.
editForm
);
});
},
deleteData
(
record
)
{
const
data
=
this
.
$lodash
.
cloneDeep
(
record
);
data
.
status
=
"
2
"
;
// 置为无效状态即删除
this
.
_editCoverageData
(
data
);
},
_editCoverageData
(
data
)
{
const
fn
=
data
.
id
||
data
.
id
===
0
?
this
.
$apis
.
EDITCOVERAGEDATA
:
this
.
$apis
.
ADDCOVERAGEDATA
;
fn
(
data
).
then
((
res
)
=>
{
if
(
res
.
returnCode
===
"
0000
"
)
{
this
.
$message
.
success
(
res
.
returnMsg
||
"
操作成功
"
);
this
.
_getCoverageList
();
this
.
isCoverageEditShow
=
false
;
}
else
{
this
.
$message
.
error
(
res
.
returnMsg
||
"
操作失败
"
);
}
});
},
_getCoverageCode
()
{
if
(
this
.
coverageCode
&&
this
.
coverageCode
.
length
)
{
return
true
;
}
this
.
$apis
.
GETCOVERAGECODE
().
then
((
res
)
=>
{
this
.
coverageCode
=
res
.
content
||
[];
});
},
_getCoverageList
()
{
const
{
corpCode
,
payorCode
,
planCode
}
=
this
.
formData
;
this
.
$apis
.
GETCOVERAGELIST
({
corpCode
,
payorCode
,
planCode
,
specialtyCode
:
""
,
}).
then
((
res
)
=>
{
this
.
coverageData
=
res
.
content
||
[];
});
},
},
};
</
script
>
<
style
lang=
"less"
scoped
>
.coverage {
.pa(0, 20, 10, 20);
background-color: #fff;
}
</
style
>
src/views/welfare/edit/index.vue
0 → 100644
View file @
77e494f8
<
template
>
<div
class=
"welfare"
>
<!-- form -->
<a-form-model
ref=
"form"
layout=
"vertical"
:model=
"form"
:rules=
"formRules"
>
<a-row
:gutter=
"30"
>
<a-col
:xl=
"5"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保险公司"
prop=
"payorCode"
>
<a-select
v-model=
"form.payorCode"
placeholder=
"请选择保险公司"
show-search
allow-clear
@
change=
"payorChange"
@
filterOption=
"filterCode"
>
<a-select-option
v-for=
"item in companyCode"
:key=
"item.payorCode"
:value=
"item.payorCode"
>
{{
item
.
longName
}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:xl=
"5"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"客户公司名称"
prop=
"corpCode"
>
<a-select
v-model=
"form.corpCode"
placeholder=
"请选择客户公司名称"
show-search
allow-clear
@
filterOption=
"filterCode"
@
change=
"corpChange"
>
<a-select-option
v-for=
"item in corpCode"
:key=
"item.corpCode"
:value=
"item.corpCode"
>
{{
item
.
longName
}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:xl=
"5"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保险计划"
prop=
"planCode"
>
<a-select
v-model=
"form.planCode"
placeholder=
"请选择保险计划"
show-search
allow-clear
@
filterOption=
"filterCode"
>
<a-select-option
v-for=
"item in planCode"
:key=
"item.planCode"
:vlaue=
"item.planCode"
>
{{
item
.
longName
}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:xl=
"9"
:lg=
"6"
:sm=
"12"
class=
"none-label"
>
<a-form-model-item
label=
"button"
>
<a-button
type=
"primary"
class=
"mar-left10"
@
click=
"handlerSearch"
>
<Icon
name=
"ssisearch_active"
:size=
"14"
/>
查询
</a-button>
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
<div>
<!--
<div
class=
"none-label mar-bottom10"
>
<a-button
type=
"primary"
@
click=
"editPlanData(null)"
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
新增计划
</a-button>
</div>
-->
<a-table
:columns=
"columns"
:locale=
"
{ emptyText: 'No Data' }"
:data-source="planData"
row-key="coverageCode"
:pagination="false"
>
<template
slot=
"operation"
slot-scope=
"record"
>
<a-button
type=
"link"
@
click.stop=
"editPlanData(record)"
>
修改
</a-button>
<!--
<a-popconfirm
title=
"你确定要删除吗?"
ok-text=
"确定"
cancel-text=
"取消"
@
confirm=
"deleteData"
>
<a-button
type=
"link"
class=
"danger"
>
删除
</a-button>
</a-popconfirm>
-->
</
template
>
<
template
slot=
"expandedRowRender"
slot-scope=
"record"
>
<condition
class=
"mar-bottom10"
:form-data=
"
{...record, conditionType: '03'}"/>
<coverages
:formData=
"
{ ...record }" />
</
template
>
</a-table>
<BurtPagination
:pagination=
"{ ...pager, total }"
@
pageChange=
"pageChange"
/>
</div>
<a-modal
title=
"计划管理"
v-model=
"isPlanEditShow"
:footer=
"null"
width=
"50%"
@
cancel=
"isPlanEditShow = false"
>
<a-form-model
ref=
"editForm"
layout=
"vertical"
:model=
"editForm"
:rules=
"editRule"
>
<!-- <a-form-model-item label="保险公司" prop="payorCode">
<a-input disabled v-model="editForm.payorCode"> </a-input>
</a-form-model-item>
<a-col :md="12">
<a-form-model-item label="客户公司名称" prop="corpCode">
<a-input disabled v-model="editForm.corpCode"> </a-input>
</a-form-model-item> -->
<a-row
:gutter=
"20"
>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"保险计划"
prop=
"planCode"
>
<a-input
v-model=
"editForm.planCode"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"英文名称"
prop=
"englishName"
>
<a-input
v-model=
"editForm.englishName"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"计划全称"
prop=
"longName"
>
<a-input
v-model=
"editForm.longName"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"计划简称"
prop=
"shortName"
>
<a-input
v-model=
"editForm.shortName"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"公司名称"
prop=
"corpName"
>
<a-input
v-model=
"editForm.corpName"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"生效日期"
prop=
"effectiveDate"
>
<a-date-picker
v-model=
"editForm.effectiveDate"
placeholder=
"请选择生效日期"
value-format=
"YYYY-MM-DD 00:00:00"
></a-date-picker>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"失效日期"
prop=
"terminationDate"
>
<a-date-picker
v-model=
"editForm.terminationDate"
placeholder=
"请选择失效日期"
value-format=
"YYYY-MM-DD 00:00:00"
></a-date-picker>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"等待期(天)"
prop=
"waitingPeriod"
>
<a-input-number
v-model=
"editForm.waitingPeriod"
></a-input-number>
</a-form-model-item>
</a-col>
<!-- <a-col :md="12">
<a-form-model-item label="地区限制" prop="idType">
<a-select v-model="form.idType" placeholder="请选择地区限制" show-search allow-clear @filterOption="filterCode">
<a-select-option v-for="item in companyCode" :key="item.id" :value="item.id" :label="item.longName">{{ item.longName }}</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :md="12">
<a-form-model-item label="医院限制" prop="idType">
<a-select v-model="form.idType" placeholder="请选择医院限制" show-search allow-clear @filterOption="filterCode">
<a-select-option v-for="item in companyCode" :key="item.id" :value="item.id" :label="item.longName">{{ item.longName }}</a-select-option>
</a-select>
</a-form-model-item>
</a-col> -->
<a-col
:md=
"12"
>
<a-form-model-item
label=
"状态"
prop=
"idType"
>
<a-select
v-model=
"form.idType"
placeholder=
"请选择计划状态"
show-search
allow-clear
@
filterOption=
"filterCode"
>
<a-select-option
v-for=
"item in statusCode"
:key=
"item.code"
:value=
"item.code"
:label=
"item.name"
>
{{ item.name }}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:md=
"12"
>
<a-form-model-item
label=
"备注"
prop=
"remarks"
>
<a-textarea
v-model=
"editForm.remarks"
:autoSize=
"{ minRows: 2, maxRows: 5 }"
></a-textarea>
</a-form-model-item>
</a-col>
</a-row>
<a-form-model-item
class=
"text-r"
>
<a-button
type=
"primary"
@
click=
"savePlanData"
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
保存
</a-button>
<a-button
class=
"mar-left10"
@
click=
"isPlanEditShow = false"
>
取消
</a-button>
</a-form-model-item>
</a-form-model>
</a-modal>
</div>
</template>
<
script
>
import
BurtPagination
from
"
@/components/CUSTOMER/pagation
"
;
import
condition
from
"
./components/condition
"
;
import
coverages
from
"
./components/coverages
"
;
import
moment
from
'
moment
'
export
default
{
components
:
{
BurtPagination
,
condition
,
coverages
,
},
data
()
{
const
dateFormat
=
(
val
)
=>
{
return
val
&&
moment
(
val
).
format
(
'
YYYY-MM-DD
'
)
}
const
columns
=
[
// { title: "计划责任", dataIndex: "planCode", width: 180 },
{
title
:
"
计划全称
"
,
dataIndex
:
"
longName
"
,
width
:
180
},
{
title
:
"
简称
"
,
dataIndex
:
"
shortName
"
,
width
:
180
},
{
title
:
"
起始日期
"
,
dataIndex
:
"
effectiveDate
"
,
width
:
180
,
customRender
:
dateFormat
},
{
title
:
"
终止日期
"
,
dataIndex
:
"
terminationDate
"
,
width
:
180
,
customRender
:
dateFormat
},
{
title
:
"
计划状态
"
,
dataIndex
:
"
status
"
,
width
:
180
,
customRender
:
(
val
)
=>
{
for
(
let
i
=
0
;
i
<
this
.
statusCode
.
length
;
i
++
)
{
if
(
val
===
this
.
statusCode
[
i
].
code
)
{
return
this
.
statusCode
[
i
].
name
}
}
return
val
;
}
},
// { title: "医院限制", dataIndex: "status", width: 180 },
// { title: "计划限额", dataIndex: "status", width: 180 },
// { title: "限额消耗", dataIndex: "waitingPeriod" },
{
title
:
"
等待期
"
,
dataIndex
:
"
waitingPeriod
"
,
width
:
120
},
{
title
:
"
更新日期
"
,
dataIndex
:
"
modifierDate
"
,
width
:
180
},
{
title
:
"
备注
"
,
dataIndex
:
"
remarks
"
,
width
:
180
},
{
title
:
"
操作
"
,
key
:
"
operation
"
,
width
:
"
120px
"
,
fixed
:
"
right
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
},
// { title: "保单号码", dataIndex: "policyNo", width: 190 },
// { title: "保险有效日期", dataIndex: "startDate", width: 180 },
// { title: "保险终止日期", dataIndex: "endDate", width: 180 },
];
return
{
isPlanEditShow
:
false
,
columns
,
form
:
{
payorCode
:
undefined
,
corpCode
:
undefined
,
planCode
:
undefined
,
},
searchForm
:
{},
detailForm
:
{},
editForm
:
{},
planData
:
[],
companyCode
:
[],
corpCode
:
[],
planCode
:
[],
statusCode
:
[
{
code
:
"
1
"
,
name
:
"
有效
"
},
{
code
:
"
2
"
,
name
:
"
无效
"
}
],
queryForm
:
{},
pager
:
{
pageNum
:
1
,
pageSize
:
10
,
},
total
:
0
,
formRules
:
{
payorCode
:
[{
required
:
true
,
message
:
"
请选择保险公司
"
}],
corpCode
:
[{
required
:
true
,
message
:
"
请选择客户公司名称
"
}],
// planCode: [{ required: true, message: "请选择保险计划" }],
},
editRule
:
{
planCode
:
[{
required
:
true
,
message
:
"
请输入保险计划内容
"
}],
longName
:
[{
required
:
true
,
message
:
"
请输入保险计划全称
"
}],
// shortName: [{ required: true, message: "请输入保险计划简称" }],
effectiveDate
:
[{
required
:
true
,
message
:
"
请选择生效日期
"
}],
terminationDate
:
[{
required
:
true
,
message
:
"
请选择失效日期
"
}],
},
};
},
mounted
()
{
if
(
this
.
$route
.
query
&&
this
.
$route
.
query
.
id
)
{
this
.
detailForm
=
this
.
$route
.
query
;
}
this
.
_getPayorCode
();
},
methods
:
{
handlerSearch
()
{
this
.
$refs
.
form
.
validate
((
valid
)
=>
{
if
(
!
valid
)
{
return
false
;
}
this
.
searchForm
=
this
.
$lodash
.
cloneDeep
(
this
.
form
);
this
.
pager
.
pageNum
=
1
;
this
.
_getPlanList
();
});
},
pageChange
(
page
)
{
const
{
pageNum
}
=
page
;
this
.
pager
.
pageNum
=
pageNum
;
this
.
_getPlanList
();
},
payorChange
(
val
)
{
this
.
form
.
corpCode
=
undefined
;
this
.
form
.
planCode
=
undefined
;
if
(
!
val
)
{
return
false
;
}
this
.
_getCorporateCode
(
val
);
},
corpChange
(
val
)
{
this
.
form
.
planCode
=
undefined
;
if
(
!
val
)
{
return
false
;
}
this
.
_getPlanCode
(
val
);
},
// 选择框筛选
filterCode
(
input
,
option
)
{
return
(
option
.
componentOptions
.
children
[
0
].
text
.
toLowerCase
()
.
indexOf
(
input
.
toLowerCase
())
>=
0
);
},
deleteData
(
record
)
{
const
data
=
this
.
$lodash
.
cloneDeep
(
record
);
data
.
status
=
"
2
"
;
// 置为无效状态即删除
this
.
_editPlanData
(
data
);
},
editPlanData
(
data
)
{
if
(
data
)
{
this
.
editForm
=
this
.
$lodash
.
cloneDeep
(
data
);
this
.
isPlanEditShow
=
true
;
}
else
{
this
.
$refs
.
form
.
validateField
([
"
payorCode
"
,
"
corpCode
"
],
(
error
)
=>
{
if
(
error
)
{
return
false
;
}
data
=
{
payorCode
:
this
.
form
.
payorCode
,
corpCode
:
this
.
form
.
corpCode
,
};
this
.
editForm
=
this
.
$lodash
.
cloneDeep
(
data
);
this
.
isPlanEditShow
=
true
;
});
}
// data = data || {};
},
savePlanData
()
{
this
.
$refs
.
editForm
.
validate
((
valid
)
=>
{
if
(
!
valid
)
{
return
false
;
}
this
.
_editPlanData
(
this
.
editForm
);
});
},
_editPlanData
(
data
)
{
this
.
$apis
.
EDITPLANDATE
(
data
).
then
((
res
)
=>
{
if
(
res
.
returnCode
===
"
0000
"
)
{
this
.
_getPlanList
();
this
.
$message
.
success
(
res
.
returnMsg
||
"
操作成功
"
);
this
.
isPlanEditShow
=
false
;
}
else
{
this
.
$message
.
error
(
res
.
returnMsg
||
"
操作失败
"
);
}
});
},
_getPayorCode
()
{
this
.
$apis
.
GETPAYORCODE
({}).
then
((
res
)
=>
{
this
.
companyCode
=
res
.
content
||
[];
});
},
_getCorporateCode
(
val
)
{
this
.
$apis
.
GETCORPORATECODEBYPAYOR
({
longName
:
""
,
payorCode
:
val
,
}).
then
((
res
)
=>
{
this
.
corpCode
=
res
.
content
||
[];
});
},
_getPlanCode
(
val
)
{
this
.
$apis
.
GETPLANCODEBYCORP
({
longName
:
""
,
corpCode
:
val
,
}).
then
((
res
)
=>
{
this
.
planCode
=
res
.
content
||
[];
});
},
_getPlanList
()
{
const
data
=
{
...
this
.
searchForm
,
...
this
.
pager
,
};
this
.
$apis
.
GETPLANLIST
(
data
).
then
((
res
)
=>
{
this
.
planData
=
(
res
.
content
&&
res
.
content
.
list
)
||
[];
this
.
total
=
(
res
.
content
&&
res
.
content
.
total
)
||
0
;
});
},
},
};
</
script
>
<
style
lang=
"less"
scoped
>
.welfare {
.pa(30, 36, 50, 39);
background-color: #fff;
.none-label {
text-align: right;
}
.classify {
.pa(10, 20, 10, 20);
.mg-t(10);
.mg-b(10);
background-color: #f8fafb;
.ant-btn:not(:first-child) {
.mg-l(30);
}
.save-btn {
float: right;
}
}
.icon-class {
.mg-r(10);
}
}
</
style
>
src/views/welfare/index.vue
View file @
77e494f8
<
template
>
<div
class=
"welfare"
>
<!-- form -->
<a-form-model
ref=
"form"
layout=
"vertical"
:model=
"form"
>
<a-row
:gutter=
"30"
>
<a-col
:xl=
"6"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"客户姓名"
prop=
"patientName"
>
<a-input
v-model=
"form.patientName"
placeholder=
"请输入客户姓名"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"出生日期"
prop=
"birthday"
>
<a-date-picker
v-model=
"form.birthday"
placeholder=
"请选择出生日期"
value-format=
"YYYY-MM-DD"
></a-date-picker>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保险公司"
prop=
"payorId"
>
<a-select
v-model=
"form.payorId"
placeholder=
"请选择保险公司"
show-search
allow-clear
@
change=
"payorChange"
@
filterOption=
"filterCode"
>
<a-select-option
v-for=
"item in companyCode"
:key=
"item.id"
:value=
"item.id"
>
{{
item
.
longName
}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:xl=
"7"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"客户公司名称"
prop=
"corpName"
>
<a-select
v-model=
"form.corpName"
placeholder=
"请选择客户公司名称"
show-search
allow-clear
@
filterOption=
"filterCode"
@
change=
"corpChange"
>
<a-select-option
v-for=
"item in corpCode"
:key=
"item.id"
:value=
"item.id + '$_' + item.longName"
>
{{
item
.
longName
}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:xl=
"6"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保单卡号"
prop=
"policyNo"
>
<a-input
v-model=
"form.policyNo"
allow-clear
placeholder=
"请输入保单卡号"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"首次入保时间"
prop=
"firstEnrollmentTime"
>
<a-date-picker
v-model=
"form.firstEnrollmentTime"
placeholder=
"请选择首次入保时间"
value-format=
"YYYY-MM-DD"
></a-date-picker>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保单生效日期"
prop=
"startDate"
>
<a-date-picker
v-model=
"form.startDate"
placeholder=
"请选择保单生效日期"
value-format=
"YYYY-MM-DD"
></a-date-picker>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保单终止日期"
prop=
"endDate"
>
<a-date-picker
v-model=
"form.endDate"
placeholder=
"请选择保单终止日期"
value-format=
"YYYY-MM-DD"
></a-date-picker>
</a-form-model-item>
</a-col>
<a-col
:xl=
"6"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保险计划"
prop=
"planName"
>
<a-select
v-model=
"form.planName"
placeholder=
"请选择保险计划"
show-search
allow-clear
@
filterOption=
"filterCode"
>
<a-select-option
v-for=
"item in planCode"
:key=
"item.id"
:vlaue=
"item.longName"
>
{{
item
.
longName
}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:xl=
"6"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"其他备注"
prop=
"remark"
>
<a-input
v-model=
"form.remark"
allow-clear
placeholder=
"请输入备注信息"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"等待期"
prop=
"waitingPeriod"
>
<a-radio-group
v-model=
"form.waitingPeriod"
:default-value=
"form.waitingPeriod"
button-style=
"solid"
>
<a-radio-button
value=
"Y"
>
是
</a-radio-button>
<a-radio-button
class=
"mar-left10"
value=
"N"
>
否
</a-radio-button>
</a-radio-group>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"等待期时间"
prop=
"waitingPeriodTime"
>
<a-date-picker
v-model=
"form.waitingPeriodTime"
placeholder=
"请选择等待期时间"
value-format=
"YYYY-MM-DD"
></a-date-picker>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"是否承担既往症"
prop=
"isUndertakeAnamnesis"
>
<a-radio-group
v-model=
"form.isUndertakeAnamnesis"
:default-value=
"form.isUndertakeAnamnesis"
button-style=
"solid"
>
<a-radio-button
value=
"Y"
>
是
</a-radio-button>
<a-radio-button
class=
"mar-left10"
value=
"N"
>
否
</a-radio-button>
</a-radio-group>
</a-form-model-item>
</a-col>
<a-col
:xl=
"6"
:lg=
"18"
:sm=
"12"
class=
"none-label"
>
<a-form-model-item
label=
"button"
>
<a-button
type=
"primary"
class=
"text-r"
@
click=
"handlerReset"
>
<Icon
name=
"ssireset"
:size=
"14"
/>
重置
</a-button>
<a-button
type=
"primary"
class=
"mar-left10"
@
click=
"handlerSearch"
><Icon
name=
"ssisearch_active"
:size=
"14"
/>
查询
</a-button>
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
<a-table
v-if=
"customList && customList.length"
:columns=
"customColumns"
:data-source=
"customList"
row-key=
"mrnNo"
:scroll=
"
{ x: true }"
:pagination="cusPagination"
:customRow="handlerRowClick"
@change="onCustomChange"
>
</a-table>
<coverages
:coverageForm=
"coverageForm"
v-if=
"isShowCoverageData"
></coverages>
<div
class=
"index"
>
<router-view></router-view>
</div>
</
template
>
<
script
>
import
coverages
from
"
./components/coverages
"
;
export
default
{
components
:
{
coverages
,
},
data
()
{
const
customColumns
=
[
{
title
:
"
病历号
"
,
dataIndex
:
"
mrnNo
"
,
width
:
180
},
{
title
:
"
客户姓名
"
,
dataIndex
:
"
patientName
"
,
width
:
120
},
{
title
:
"
出生日期
"
,
dataIndex
:
"
birthday
"
,
width
:
180
},
{
title
:
"
性别
"
,
dataIndex
:
"
sex
"
,
width
:
80
},
{
title
:
"
保险公司
"
,
dataIndex
:
"
payorName
"
,
width
:
180
},
{
title
:
"
保单号码
"
,
dataIndex
:
"
policyNo
"
,
width
:
190
},
{
title
:
"
保险有效日期
"
,
dataIndex
:
"
startDate
"
,
width
:
180
},
{
title
:
"
保险终止日期
"
,
dataIndex
:
"
endDate
"
,
width
:
180
},
];
return
{
isShowCoverageData
:
false
,
customColumns
,
form
:
{
patientName
:
undefined
,
payorId
:
undefined
,
corpName
:
undefined
,
planName
:
undefined
,
birthday
:
undefined
,
policyNo
:
undefined
,
firstEnrollmentTime
:
undefined
,
startDate
:
undefined
,
endDate
:
undefined
,
remark
:
undefined
,
waitingPeriod
:
"
N
"
,
isUndertakeAnamnesis
:
"
N
"
,
},
detailForm
:
{},
coverageForm
:
{},
customList
:
[],
companyCode
:
[],
corpCode
:
[],
planCode
:
[],
queryForm
:
{},
cusPager
:
{
pageNum
:
1
,
pageSize
:
10
,
},
cusTotal
:
0
,
};
},
computed
:
{
cusPagination
()
{
return
this
.
initPageConfig
(
{
...
this
.
cusPager
,
total
:
this
.
cusTotal
},
this
.
onCustomSizeChange
);
},
},
mounted
()
{
if
(
this
.
$route
.
query
&&
this
.
$route
.
query
.
id
)
{
console
.
log
(
this
.
$route
);
this
.
detailForm
=
this
.
$route
.
query
;
this
.
getCustomerDetail
();
}
this
.
_getPayorCode
();
},
methods
:
{
initPageConfig
(
pager
,
sizeChange
)
{
const
{
pageNum
,
pageSize
,
total
}
=
pager
;
const
pages
=
Math
.
ceil
(
total
/
pageSize
);
return
{
current
:
pageNum
,
pageSize
,
size
:
"
large
"
,
position
:
"
bottom
"
,
align
:
"
right
"
,
total
:
this
.
total
,
hideOnSinglePage
:
false
,
itemRender
:
(
current
,
type
,
originalElement
)
=>
{
if
(
type
===
"
prev
"
)
{
originalElement
.
children
=
undefined
;
originalElement
.
text
=
"
上一页
"
;
}
if
(
type
===
"
page
"
)
{
if
(
current
!==
pageNum
)
{
return
undefined
;
}
return
(
<
p
>
<
span
class
=
"
current-page
"
>
{
current
}
<
/span> /
{
pages
}
<
/p
>
);
}
if
(
type
===
"
next
"
)
{
originalElement
.
children
=
undefined
;
originalElement
.
text
=
"
下一页
"
;
return
(
<
div
>
{
originalElement
}
<
a
-
input
-
number
onblur
=
{
sizeChange
}
class
=
"
size-change
"
><
/a-input-number
>
<
/div
>
);
}
return
originalElement
;
},
};
},
onCustomChange
(
pager
)
{
const
{
current
}
=
pager
;
// console.log(pager);
this
.
cusPager
.
pageNum
=
current
;
this
.
_getCustomerList
();
},
onCustomSizeChange
(
e
)
{
e
&&
e
.
stopPropagation
();
const
val
=
e
.
target
.
value
*
1
;
if
(
!
val
||
val
<
0
)
{
return
false
;
}
this
.
cusPager
.
pageSize
=
val
;
this
.
_getCustomerList
();
},
handlerRowClick
(
record
)
{
const
{
id
,
patientPolicyId
}
=
record
;
return
{
on
:
{
click
:
()
=>
{
this
.
detailForm
=
{
id
,
patientPolicyId
};
this
.
getCustomerDetail
();
},
},
};
},
getCustomerDetail
()
{
// this.queryForm = this.$lodash.cloneDeep(this.form);
const
{
id
,
patientPolicyId
}
=
this
.
detailForm
;
const
data
=
{
id
:
id
&&
id
*
1
,
patientPolicyId
:
patientPolicyId
*
1
,
};
this
.
$apis
.
GETCUSTOMERDETAIL
(
data
).
then
((
res
)
=>
{
if
(
res
.
returnCode
===
"
0000
"
)
{
const
data
=
res
.
content
||
{};
for
(
let
i
in
this
.
form
)
{
this
.
form
[
i
]
=
data
[
i
];
}
this
.
coverageForm
=
res
.
content
||
{};
this
.
isShowCoverageData
=
true
;
}
// this.dataList = (res.content && res.content.list) || [];
// this.total = (res.content && res.content.total) || 0;
});
},
handlerReset
()
{
this
.
$refs
.
form
.
resetFields
();
},
handlerSearch
()
{
console
.
log
(
this
.
$refs
.
form
.
validate
);
this
.
$refs
.
form
.
validate
((
valid
)
=>
{
if
(
!
valid
)
{
return
false
;
}
this
.
cusPager
.
pageNum
=
1
;
this
.
queryForm
=
this
.
$lodash
.
cloneDeep
(
this
.
form
);
this
.
_getCustomerList
();
});
},
payorChange
(
val
)
{
this
.
form
.
corpName
=
undefined
;
this
.
form
.
planName
=
undefined
;
if
(
!
val
)
{
return
false
;
}
this
.
_getCorporateCode
(
val
);
},
corpChange
(
val
)
{
// 因为接口要name 但是查计划要用id
this
.
form
.
planName
=
undefined
;
if
(
!
val
)
{
return
false
;
}
console
.
log
(
val
);
this
.
form
.
corpName
=
val
.
split
(
"
$_
"
)[
1
];
val
=
val
.
split
(
"
$_
"
)[
0
];
this
.
_getPlanCode
(
val
);
},
// 选择框筛选
filterCode
(
input
,
option
)
{
return
(
option
.
componentOptions
.
children
[
0
].
text
.
toLowerCase
()
.
indexOf
(
input
.
toLowerCase
())
>=
0
);
},
_getPayorCode
()
{
this
.
$apis
.
GETPAYORCODE
({}).
then
((
res
)
=>
{
this
.
companyCode
=
res
.
content
||
[];
});
},
_getCorporateCode
(
val
)
{
this
.
$apis
.
GETCORPORATECODEBYPAYOR
({
longName
:
""
,
payorId
:
val
,
})
.
then
((
res
)
=>
{
this
.
corpCode
=
res
.
content
||
[];
});
},
_getPlanCode
(
val
)
{
this
.
$apis
.
GETPLANCODEBYCORP
({
longName
:
""
,
corpId
:
val
,
})
.
then
((
res
)
=>
{
this
.
planCode
=
res
.
content
||
[];
});
},
_getCustomerList
()
{
const
data
=
{
...
this
.
queryForm
,
...
this
.
cusPager
,
};
this
.
$apis
.
GETCUSTOMERLIST
(
data
).
then
((
res
)
=>
{
this
.
customList
=
(
res
.
content
&&
res
.
content
.
list
)
||
[];
this
.
cusTotal
=
(
res
.
content
&&
res
.
content
.
total
)
||
0
;
});
},
return
{};
},
computed
:
{},
watch
:
{},
methods
:
{},
};
</
script
>
<
style
lang=
"less"
scoped
>
.welfare {
.pa(30, 36, 50, 39);
background-color: #fff;
.none-label {
text-align: right;
}
.classify {
.pa(10, 20, 10, 20);
.mg-t(10);
.mg-b(10);
background-color: #f8fafb;
.ant-btn:not(:first-child) {
.mg-l(30);
}
.save-btn {
float: right;
}
}
.icon-class {
.mg-r(10);
}
}
</
style
>
<
style
lang=
"less"
scoped
></
style
>
src/views/welfare/info/components/PolicyInfo.vue
0 → 100644
View file @
77e494f8
<
template
>
<div>
<a-collapse
v-model=
"activeKeys"
expand-icon-position=
"right"
:bordered=
"false"
>
<a-collapse-panel
key=
"1"
header=
"保单信息"
>
<a-row
class=
"policy_line"
:gutter=
"10"
>
<a-col
:span=
"6"
>
保险卡号:
</a-col>
<a-col
:span=
"6"
>
保单号码:
</a-col>
<a-col
:span=
"6"
>
保险计划:
</a-col>
<a-col
:span=
"6"
>
客户公司名称:
</a-col>
<a-col
:span=
"6"
>
首次入保日期:
</a-col>
<a-col
:span=
"6"
>
保单生效日期:
</a-col>
<a-col
:span=
"6"
>
保单终止日期:
</a-col>
<a-col
:span=
"6"
>
是否承担既往症:
</a-col>
<a-col
:span=
"6"
>
保单直付区域:
</a-col>
<a-col
:span=
"6"
>
剩余等待期天数
</a-col>
<a-col
:span=
"6"
>
其他备注
</a-col>
</a-row>
</a-collapse-panel>
</a-collapse>
</div>
</
template
>
<
script
>
export
default
{
props
:
{
policyData
:
{
default
:
{},
},
},
data
()
{
return
{
activeKeys
:
"
1
"
,
};
},
};
</
script
>
<
style
lang=
"less"
scoped
>
.policy_line {
.pa(0, 30, 0, 30);
line-height: 60px;
.ant-col{
border-bottom: 1px solid #f8fafb;
}
}
</
style
>
src/views/welfare/components/benefits/index.vue
→
src/views/welfare/
info/
components/benefits/index.vue
View file @
77e494f8
<
template
>
<div
class=
"benefits"
>
<div>
<div
class=
"text-r"
>
<a-button
type=
"danger"
class=
"save-btn"
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
新增
</a-button>
<a-table
:pagination=
"false"
:columns=
"considtionColumns"
:data-source=
"conditionData"
>
<template
slot=
"operation"
slot-scope=
"text, record"
>
<a-button
v-if=
"record.isEdit"
type=
"link"
>
保存
</a-button>
<a-button
v-else
type=
"link"
>
修改
</a-button>
<a-button
type=
"link"
class=
"success"
>
新增
</a-button>
<a-popconfirm
title=
"你确定要关闭吗?"
ok-text=
"确定"
cancel-text=
"取消"
>
<a-button
type=
"link"
class=
"danger"
>
删除
</a-button>
</a-popconfirm>
</
template
>
</a-table>
</div>
</div>
<div>
<!--
<div>
<div
class=
"text-r"
>
<a-button
type=
"danger"
class=
"save-btn"
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
新增
...
...
@@ -49,47 +24,54 @@
</
template
>
</a-table>
</div>
</div>
-->
<a-collapse
v-model=
"activeKeys"
expand-icon-position=
"right"
:bordered=
"false"
>
<a-collapse-panel
v-for=
"item in benefitData"
:key=
"item.benefitCode"
:header=
"item.benefitCode"
>
<div>
<a-row
class=
"policy_line"
:gutter=
"10"
>
<a-col
:span=
"6"
>
事先授权:
</a-col>
<a-col
:span=
"6"
>
等待期:{{ item.waitingPeriod }}
</a-col>
<a-col
:span=
"6"
>
年限额:
</a-col>
<a-col
:span=
"6"
>
赔付比例:
</a-col>
</a-row>
</div>
<condition
:formData=
"{ ...item, conditionType: '01' }"
/>
</a-collapse-panel>
</a-collapse>
</div>
</template>
<
script
>
import
condition
from
"
../condition
"
;
export
default
{
props
:
{
coverageForm
:
{
formData
:
{
type
:
Object
,
required
:
true
,
},
},
data
()
{
const
considtionColumns
=
[
{
title
:
"
限额
"
,
dataIndex
:
"
index
"
},
{
title
:
"
操作
"
,
key
:
"
operation
"
,
width
:
"
175px
"
,
fixed
:
"
right
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
},
];
const
benefitColumns
=
[
{
title
:
"
责任列表
"
,
dataIndex
:
"
index
"
},
{
title
:
"
操作
"
,
key
:
"
operation
"
,
width
:
"
175px
"
,
fixed
:
"
right
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
components
:
{
condition
,
},
];
data
()
{
return
{
considtionColumns
,
benefitColumns
,
conditionData
:
[{
index
:
"
900
"
}],
benefitData
:
[{
index
:
"
测试
"
}],
benefitData
:
[],
activeKeys
:
""
,
};
},
methods
:
{},
mounted
()
{
this
.
_getBenefitData
();
},
methods
:
{
_getBenefitData
()
{
const
{
corpCode
,
coverageCode
,
payorCode
,
planCode
}
=
this
.
formData
;
const
data
=
{
corpCode
,
coverageCode
,
payorCode
,
planCode
};
this
.
$apis
.
GETBENEFITLIST
(
data
).
then
((
res
)
=>
{
this
.
benefitData
=
res
.
content
||
[];
});
},
},
};
</
script
>
...
...
@@ -105,4 +87,11 @@ export default {
}
}
}
.policy_line {
.pa(0, 30, 0, 30);
line-height: 60px;
// &:not(:last-child) {
border-bottom: 1px solid #f8fafb;
// }
}
</
style
>
src/views/welfare/info/components/condition/index.vue
0 → 100644
View file @
77e494f8
<
template
>
<div>
<a-table
class=
"mar-bottom10"
:columns=
"columns"
:locale=
"
{ emptyText: 'No Data' }"
:data-source="conditionList"
row-key="mrnNo"
:pagination="false"
>
</a-table>
</div>
</
template
>
<
script
>
export
default
{
props
:
{
formData
:
{
default
:
{},
},
},
data
()
{
const
columns
=
[
{
title
:
"
频率
"
,
dataIndex
:
"
frequencyCode
"
},
{
title
:
"
条件
"
,
dataIndex
:
"
limitCode
"
},
{
title
:
"
最小值
"
,
dataIndex
:
"
minValue
"
},
{
title
:
"
最大值
"
,
dataIndex
:
"
maxValue
"
},
{
title
:
"
家庭最大值
"
,
dataIndex
:
"
familyMaxValue
"
},
{
title
:
"
操作
"
,
key
:
"
operation
"
,
width
:
"
175px
"
,
fixed
:
"
right
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
},
];
return
{
columns
,
conditionList
:
[],
};
},
mounted
()
{
this
.
_getConditionList
();
},
methods
:
{
_getConditionList
()
{
const
{
planCode
,
payorCode
,
coverageCode
,
corpCode
,
benefitCode
,
conditionType
,
}
=
this
.
formData
;
const
data
=
{
planCode
,
payorCode
,
coverageCode
,
corpCode
,
benefitCode
,
conditionType
,
};
this
.
$apis
.
GETCONDITIONLIST
(
data
).
then
((
res
)
=>
{
this
.
conditionList
=
res
.
content
||
[];
});
},
},
};
</
script
>
<
style
></
style
>
src/views/welfare/components/coverages/index.vue
→
src/views/welfare/
info/
components/coverages/index.vue
View file @
77e494f8
...
...
@@ -2,144 +2,63 @@
<div>
<!-- 分类 -->
<div
class=
"classify clearfix"
>
<a-button
:type=
"!type ? 'primary' : ''"
>
全部
</a-button>
<a-button
:type=
"item.code === type ? 'primary' : ''"
v-for=
"item in welfareType"
:key=
"item.code"
>
{{
item
.
name
}}
<a-button
@
click=
"specialtyChange('')"
:type=
"!type ? 'primary' : ''"
>
全部
</a-button>
<a-button
@
click=
"specialtyChange(item.specialtyCode)"
:type=
"item.specialtyCode === type ? 'primary' : ''"
v-for=
"item in welfareType"
:key=
"item.specialtyCode"
>
{{
item
.
specialtyDesc
}}
</a-button>
<div
class=
"save-btn"
>
<
a-button
type=
"danger
"
@
click=
"addNew"
>
<
!--
<a-button
type=
"primary
"
@
click=
"addNew"
>
<Icon
name=
"ssiadd"
:size=
"14"
/>
新增
</a-button>
</a-button>
-->
<a-button
type=
"primary"
>
<Icon
name=
"ssidownload"
:size=
"14"
/>
保存
</a-button>
</div>
</div>
<!-- table -->
<a-table
:columns=
"columns"
:data-source=
"dataList"
row-key=
"coverageCode"
:scroll=
"
{ x: true }"
:pagination="pagination"
:expanded-row-keys.sync="expandedRowKeys"
@change="onWelfareChange"
@expand="handleExpand"
>
<template
slot=
"operation"
slot-scope=
"text, record, index"
>
<a-button
v-if=
"record.isEdit"
type=
"link"
@
click.stop=
"saveEditData(record)"
>
保存
</a-button>
<a-button
v-else
type=
"link"
@
click.stop=
"editData(record, index)"
>
修改
</a-button>
<a-button
type=
"link"
class=
"success"
>
新增
</a-button>
<a-popconfirm
title=
"你确定要关闭吗?"
ok-text=
"确定"
cancel-text=
"取消"
@
confirm=
"deleteData(record, index)"
>
<a-button
type=
"link"
class=
"danger"
>
删除
</a-button>
</a-popconfirm>
</
template
>
<
template
slot=
"expandedRowRender"
slot-scope=
"record"
>
<benefits
:coverageForm=
"record"
/>
</
template
>
</a-table>
<a-collapse
v-model=
"activeKeys"
expand-icon-position=
"right"
:bordered=
"false"
>
<a-collapse-panel
v-for=
"item in coverageData"
:key=
"item.coverageCode"
:header=
"item.coverageCode"
>
<div>
<a-row
class=
"policy_line"
:gutter=
"10"
>
<a-col
:span=
"6"
>
是否开放直付:
{{
item
.
isDirect
}}
</a-col>
<a-col
:span=
"6"
>
直付刷卡上限:
</a-col>
<a-col
:span=
"6"
>
事先授权:
</a-col>
<a-col
:span=
"6"
>
等待期:
{{
item
.
waitingPeriod
}}
</a-col>
</a-row>
<a-row
class=
"policy_line"
:gutter=
"10"
>
<a-col
:span=
"6"
>
年限额:
</a-col>
<a-col
:span=
"6"
>
限次:
</a-col>
<a-col
:span=
"6"
>
免赔额:
</a-col>
<a-col
:span=
"6"
>
赔付比例:
</a-col>
</a-row>
</div>
<condition
:formData=
"
{ ...item, conditionType: '02' }" />
<benefits
:formData=
"item"
/>
</a-collapse-panel>
</a-collapse>
</div>
</
template
>
<
script
>
import
benefits
from
"
../benefits
"
;
import
condition
from
"
../condition
"
;
export
default
{
props
:
{
coverageForm
:
{
formData
:
{
type
:
Object
,
required
:
true
,
},
},
components
:
{
condition
,
benefits
,
},
data
()
{
const
columns
=
[
{
title
:
"
责任项目
"
,
dataIndex
:
"
coverageCode
"
,
width
:
180
,
customRender
:
(
val
,
row
)
=>
{
if
(
row
.
isEdit
)
{
return
(
<
a
-
select
v
-
model
=
{
row
.
coverageCode
}
placeholder
=
"
请选择责任项目
"
show
-
search
allow
-
clear
v
-
on
:
filterOption
=
{
this
.
filterCode
}
>
{
this
.
coverageCode
.
map
((
item
)
=>
{
return
(
<
a
-
select
-
option
value
=
{
item
.
coverageCode
}
>
{
item
.
coverageDesc
}
<
/a-select-option
>
);
})}
<
/a-select
>
);
}
return
val
;
},
},
{
title
:
"
责任项目列表
"
,
dataIndex
:
"
patientName
"
,
width
:
120
},
{
title
:
"
是否直付
"
,
dataIndex
:
"
isdirect
"
,
width
:
180
,
customRender
:
(
val
,
row
)
=>
{
if
(
row
.
isEdit
)
{
return
(
<
a
-
radio
-
group
v
-
model
=
{
row
.
isdirect
}
default
-
value
=
{
row
.
isdirect
}
button
-
style
=
"
solid
"
>
<
a
-
radio
-
button
value
=
"
Y
"
>
是
<
/a-radio-button
>
<
a
-
radio
-
button
class
=
"
mar-left10
"
value
=
"
N
"
>
否
<
/a-radio-button
>
<
/a-radio-group
>
);
}
return
val
;
},
},
{
title
:
"
单位
"
,
dataIndex
:
"
sex
"
,
width
:
80
},
{
title
:
"
年限额
"
,
dataIndex
:
"
payorName
"
,
width
:
180
},
{
title
:
"
剩余额度(¥)
"
,
dataIndex
:
"
policyNo
"
,
width
:
190
},
{
title
:
"
次限额(¥)
"
,
dataIndex
:
"
startDate
"
,
width
:
180
},
// { title: "次免赔额(¥)", dataIndex: "endDate", width: 180 },
// { title: "自付比例", dataIndex: "endDate", width: 180 },
// { title: "备注", dataIndex: "endDate", width: 180 },
{
title
:
"
操作
"
,
key
:
"
operation
"
,
width
:
"
175px
"
,
fixed
:
"
right
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
},
];
return
{
columns
,
dataList
:
[{
coverageCode
:
22
}
],
activeKeys
:
""
,
coverageData
:
[
],
expandedRowKeys
:
[],
type
:
""
,
welfareType
:
[],
...
...
@@ -152,7 +71,8 @@ export default {
};
},
watch
:
{
coverageForm
:
{
formData
:
{
immediate
:
true
,
deep
:
true
,
handler
:
function
()
{
this
.
type
=
""
;
...
...
@@ -160,24 +80,16 @@ export default {
},
},
},
moun
ted
()
{
crea
ted
()
{
this
.
_getSpecialtyCode
();
// this._getCoverageList();
},
computed
:
{
pagination
()
{
return
this
.
initPageConfig
(
{
...
this
.
pager
,
total
:
this
.
total
},
this
.
onWelfareSizeChange
);
},
},
methods
:
{
addNew
()
{
const
item
=
{
isEdit
:
true
,
isNew
:
true
};
this
.
pager
.
pageSize
++
;
this
.
_getCoverageCode
();
// 获取责任项目码表
this
.
dataList
.
unshift
(
item
);
this
.
coverageData
.
unshift
(
item
);
},
editData
(
record
)
{
this
.
_getCoverageCode
();
// 获取责任项目码表
...
...
@@ -193,67 +105,14 @@ export default {
},
deleteData
(
record
,
index
)
{
if
(
record
.
isNew
)
{
this
.
dataList
.
splice
(
index
,
1
);
this
.
coverageData
.
splice
(
index
,
1
);
return
true
;
}
this
.
dataList
.
splice
(
index
,
1
);
this
.
coverageData
.
splice
(
index
,
1
);
},
initPageConfig
(
pager
,
sizeChange
)
{
const
{
pageNum
,
pageSize
,
total
}
=
pager
;
const
pages
=
Math
.
ceil
(
total
/
pageSize
);
return
{
current
:
pageNum
,
pageSize
,
size
:
"
large
"
,
position
:
"
bottom
"
,
align
:
"
right
"
,
total
:
this
.
total
,
hideOnSinglePage
:
false
,
itemRender
:
(
current
,
type
,
originalElement
)
=>
{
if
(
type
===
"
prev
"
)
{
originalElement
.
children
=
undefined
;
originalElement
.
text
=
"
上一页
"
;
}
if
(
type
===
"
page
"
)
{
if
(
current
!==
pageNum
)
{
return
undefined
;
}
return
(
<
p
>
<
span
class
=
"
current-page
"
>
{
current
}
<
/span> /
{
pages
}
<
/p
>
);
}
if
(
type
===
"
next
"
)
{
originalElement
.
children
=
undefined
;
originalElement
.
text
=
"
下一页
"
;
return
(
<
div
>
{
originalElement
}
<
a
-
input
-
number
onblur
=
{
sizeChange
}
class
=
"
size-change
"
><
/a-input-number
>
<
/div
>
);
}
return
originalElement
;
},
};
},
onWelfareChange
(
pager
)
{
const
{
current
}
=
pager
;
// console.log(pager);
this
.
pager
.
pageNum
=
current
;
// this._getCustomerList();
},
onWelfareSizeChange
(
e
)
{
e
&&
e
.
stopPropagation
();
const
val
=
e
.
target
.
value
*
1
;
if
(
!
val
||
val
<
0
)
{
return
false
;
}
this
.
pager
.
pageSize
=
val
;
specialtyChange
(
code
)
{
this
.
type
=
code
;
this
.
_getCoverageList
();
},
// 选择框筛选
filterCode
(
input
,
option
)
{
...
...
@@ -263,29 +122,20 @@ export default {
.
indexOf
(
input
.
toLowerCase
())
>=
0
);
},
handleExpand
(
expended
,
record
)
{
console
.
log
(
expended
);
if
(
record
.
isEdit
&&
expended
)
{
console
.
log
(
this
.
expandedRowKeys
);
return
false
;
}
},
_getSpecialtyCode
()
{
this
.
$apis
.
GETSPECIALTYLIST
().
then
((
res
)
=>
{
this
.
welfareType
=
res
.
content
||
[];
});
},
_getCoverageList
()
{
const
{
corpCode
,
payorCode
,
planCode
}
=
this
.
coverageForm
;
this
.
$apis
.
GETCOVERAGELIST
({
const
{
corpCode
,
payorCode
,
planCode
}
=
this
.
formData
;
this
.
$apis
.
GETCOVERAGELIST
({
corpCode
,
payorCode
,
planCode
,
specialtyCode
:
this
.
type
,
})
.
then
((
res
)
=>
{
this
.
dataList
=
res
.
content
||
[];
}).
then
((
res
)
=>
{
this
.
coverageData
=
res
.
content
||
[];
});
},
_getCoverageCode
()
{
...
...
@@ -304,6 +154,13 @@ export default {
.none-label {
text-align: right;
}
.policy_line {
.pa(0, 30, 0, 30);
line-height: 60px;
// &:not(:last-child) {
border-bottom: 1px solid #f8fafb;
// }
}
.classify {
.pa(10, 20, 10, 20);
.mg-t(30);
...
...
src/views/welfare/info/index.vue
0 → 100644
View file @
77e494f8
<
template
>
<div
class=
"welfare"
>
<!-- form -->
<a-form-model
ref=
"form"
layout=
"vertical"
:model=
"form"
>
<a-row
:gutter=
"30"
>
<a-col
:xl=
"6"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"病历号码"
prop=
"mrnNo"
>
<a-input
v-model=
"form.mrnNo"
placeholder=
"请输入客户号码"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"客户姓名"
prop=
"patientName"
>
<a-input
v-model=
"form.patientName"
placeholder=
"请输入客户姓名"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"出生日期"
prop=
"birthday"
>
<a-date-picker
v-model=
"form.birthday"
placeholder=
"请选择出生日期"
value-format=
"YYYY-MM-DD"
></a-date-picker>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"性别"
prop=
"sex"
>
<a-radio-group
v-model=
"form.sex"
:default-value=
"form.sex"
button-style=
"solid"
>
<a-radio-button
value=
"M"
>
男
</a-radio-button>
<a-radio-button
class=
"mar-left10"
value=
"F"
>
女
</a-radio-button>
</a-radio-group>
</a-form-model-item>
</a-col>
<a-col
:xl=
"6"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"证件号码"
prop=
"idNo"
>
<a-input
v-model=
"form.idNo"
allow-clear
placeholder=
"请输入证件号码"
></a-input>
</a-form-model-item>
</a-col>
<a-col
:xl=
"6"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"保险公司"
prop=
"payorId"
>
<a-select
v-model=
"form.payorId"
placeholder=
"请选择保险公司"
show-search
allow-clear
@
change=
"payorChange"
@
filterOption=
"filterCode"
>
<a-select-option
v-for=
"item in companyCode"
:key=
"item.id"
:value=
"item.id"
>
{{
item
.
longName
}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:xl=
"4"
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"是否直付"
prop=
"idType"
>
<a-select
v-model=
"form.idType"
placeholder=
"请选择保单直付区域"
show-search
allow-clear
@
filterOption=
"filterCode"
>
<a-select-option
v-for=
"item in companyCode"
:key=
"item.id"
:value=
"item.id"
:label=
"item.longName"
>
{{
item
.
longName
}}
</a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col
:xl=
"14"
:lg=
"12"
:sm=
"24"
class=
"none-label"
>
<a-form-model-item
label=
"button"
>
<a-button
type=
"primary"
class=
"text-r"
@
click=
"handlerReset"
>
<Icon
name=
"ssireset"
:size=
"14"
/>
重置
</a-button>
<a-button
type=
"primary"
class=
"mar-left10"
@
click=
"handlerSearch"
>
<Icon
name=
"ssisearch_active"
:size=
"14"
/>
查询
</a-button>
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
<div
v-if=
"customList && customList.length"
>
<a-table
:columns=
"customColumns"
:data-source=
"customList"
row-key=
"mrnNo"
:scroll=
"
{ x: true }"
:pagination="false"
:customRow="handlerRowClick"
>
</a-table>
<BurtPagination
:pagination=
"
{ ...cusPager, total: cusTotal }" @pageChange="onCustomChange"
/>
</div>
<div
v-if=
"isShowCoverageData"
>
<PolicyInfo
:policyData=
"coverageForm"
/>
<coverages
:formData=
"coverageForm"
></coverages>
</div>
</div>
</
template
>
<
script
>
import
BurtPagination
from
"
@/components/CUSTOMER/pagation
"
;
import
coverages
from
"
./components/coverages
"
;
import
PolicyInfo
from
"
./components/PolicyInfo
"
;
export
default
{
beforeRouteUpdate
(
to
,
from
,
next
)
{
this
.
handlerReset
();
next
();
},
components
:
{
BurtPagination
,
coverages
,
PolicyInfo
,
},
data
()
{
const
customColumns
=
[
{
title
:
"
病历号
"
,
dataIndex
:
"
mrnNo
"
,
width
:
180
},
{
title
:
"
客户姓名
"
,
dataIndex
:
"
patientName
"
,
width
:
120
},
{
title
:
"
出生日期
"
,
dataIndex
:
"
birthday
"
,
width
:
180
},
{
title
:
"
性别
"
,
dataIndex
:
"
sex
"
,
width
:
80
},
{
title
:
"
保险公司
"
,
dataIndex
:
"
payorName
"
,
width
:
180
},
{
title
:
"
保单号码
"
,
dataIndex
:
"
policyNo
"
,
width
:
190
},
{
title
:
"
保险有效日期
"
,
dataIndex
:
"
startDate
"
,
width
:
180
},
{
title
:
"
保险终止日期
"
,
dataIndex
:
"
endDate
"
,
width
:
180
},
];
return
{
isShowCoverageData
:
false
,
customColumns
,
form
:
{
mrnNo
:
undefined
,
patientName
:
undefined
,
birthday
:
undefined
,
sex
:
undefined
,
idNo
:
undefined
,
payorId
:
undefined
,
idType
:
undefined
},
detailForm
:
{},
coverageForm
:
{},
customList
:
[],
companyCode
:
[],
corpCode
:
[],
planCode
:
[],
queryForm
:
{},
cusPager
:
{
pageNum
:
1
,
pageSize
:
10
,
},
cusTotal
:
0
,
};
},
mounted
()
{
if
(
this
.
$route
.
query
&&
this
.
$route
.
query
.
id
)
{
this
.
detailForm
=
this
.
$route
.
query
;
this
.
getCustomerDetail
();
}
this
.
_getPayorCode
();
},
methods
:
{
onCustomChange
(
pager
)
{
const
{
pageNum
}
=
pager
;
// console.log(pager);
this
.
cusPager
.
pageNum
=
pageNum
;
this
.
_getCustomerList
();
},
onCustomSizeChange
(
e
)
{
e
&&
e
.
stopPropagation
();
const
val
=
e
.
target
.
value
*
1
;
if
(
!
val
||
val
<
0
)
{
return
false
;
}
this
.
cusPager
.
pageSize
=
val
;
this
.
_getCustomerList
();
},
handlerRowClick
(
record
)
{
const
{
id
,
patientPolicyId
}
=
record
;
return
{
on
:
{
click
:
()
=>
{
this
.
detailForm
=
{
id
,
patientPolicyId
};
this
.
getCustomerDetail
();
},
},
};
},
getCustomerDetail
()
{
// this.queryForm = this.$lodash.cloneDeep(this.form);
const
{
id
,
patientPolicyId
}
=
this
.
detailForm
;
const
data
=
{
id
:
id
&&
id
*
1
,
patientPolicyId
:
patientPolicyId
*
1
,
};
this
.
$apis
.
GETCUSTOMERDETAIL
(
data
).
then
((
res
)
=>
{
if
(
res
.
returnCode
===
"
0000
"
)
{
const
data
=
res
.
content
||
{};
for
(
let
i
in
this
.
form
)
{
this
.
form
[
i
]
=
data
[
i
];
}
this
.
customList
=
[];
this
.
coverageForm
=
res
.
content
||
{};
this
.
isShowCoverageData
=
true
;
this
.
_getCorporateCode
(
this
.
coverageForm
.
payorId
);
this
.
_getPlanCode
(
this
.
coverageForm
.
corpId
);
}
// this.dataList = (res.content && res.content.list) || [];
// this.total = (res.content && res.content.total) || 0;
});
},
handlerReset
()
{
this
.
$refs
.
form
.
resetFields
();
this
.
customList
=
[];
this
.
isShowCoverageData
=
false
;
this
.
coverageForm
=
{};
},
handlerSearch
()
{
console
.
log
(
this
.
$refs
.
form
.
validate
);
this
.
$refs
.
form
.
validate
((
valid
)
=>
{
if
(
!
valid
)
{
return
false
;
}
this
.
cusPager
.
pageNum
=
1
;
this
.
queryForm
=
this
.
$lodash
.
cloneDeep
(
this
.
form
);
this
.
_getCustomerList
();
});
},
payorChange
(
val
)
{
this
.
form
.
corpName
=
undefined
;
this
.
form
.
planName
=
undefined
;
if
(
!
val
)
{
return
false
;
}
this
.
_getCorporateCode
(
val
);
},
corpChange
(
val
)
{
// 因为接口要name 但是查计划要用id
this
.
form
.
planName
=
undefined
;
if
(
!
val
)
{
return
false
;
}
console
.
log
(
val
);
this
.
form
.
corpName
=
val
.
split
(
"
$_
"
)[
1
];
val
=
val
.
split
(
"
$_
"
)[
0
];
this
.
_getPlanCode
(
val
);
},
// 选择框筛选
filterCode
(
input
,
option
)
{
return
(
option
.
componentOptions
.
children
[
0
].
text
.
toLowerCase
().
indexOf
(
input
.
toLowerCase
())
>=
0
);
},
_getPayorCode
()
{
this
.
$apis
.
GETPAYORCODE
({}).
then
((
res
)
=>
{
this
.
companyCode
=
res
.
content
||
[];
});
},
_getCorporateCode
(
val
)
{
this
.
$apis
.
GETCORPORATECODEBYPAYOR
({
longName
:
""
,
payorId
:
val
,
}).
then
((
res
)
=>
{
this
.
corpCode
=
res
.
content
||
[];
});
},
_getPlanCode
(
val
)
{
this
.
$apis
.
GETPLANCODEBYCORP
({
longName
:
""
,
corpId
:
val
,
}).
then
((
res
)
=>
{
this
.
planCode
=
res
.
content
||
[];
});
},
_getCustomerList
()
{
const
data
=
{
...
this
.
queryForm
,
...
this
.
cusPager
,
};
this
.
$apis
.
GETCUSTOMERLIST
(
data
).
then
((
res
)
=>
{
this
.
customList
=
(
res
.
content
&&
res
.
content
.
list
)
||
[];
this
.
cusTotal
=
(
res
.
content
&&
res
.
content
.
total
)
||
0
;
});
},
},
};
</
script
>
<
style
lang=
"less"
scoped
>
.welfare {
.pa(30, 36, 50, 39);
background-color: #fff;
.none-label {
text-align: right;
}
.classify {
.pa(10, 20, 10, 20);
.mg-t(10);
.mg-b(10);
background-color: #f8fafb;
.ant-btn:not(:first-child) {
.mg-l(30);
}
.save-btn {
float: right;
}
}
.icon-class {
.mg-r(10);
}
}
/deep/.ant-collapse-item {
border: none !important;
.ant-collapse-header {
font-weight: bold;
background-color: #f8fafb;
}
.ant-collapse-content {
background-color: #fff !important;
.ant-collapse-content-box {
padding: 0;
}
}
}
</
style
>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment