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
cc694ddf
Commit
cc694ddf
authored
Jan 05, 2022
by
yanglilong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
'医疗机构'
parent
6ba1d797
Changes
11
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
576 additions
and
27 deletions
+576
-27
info.js
src/api/apis_moudles/info.js
+6
-1
info.js
src/api/funcs_modules/info.js
+29
-4
index.js
src/components/Antd/index.js
+4
-2
Loading.vue
src/components/Loading/Loading.vue
+43
-0
index.js
src/components/Loading/index.js
+0
-0
info.js
src/router/modules/info.js
+14
-3
menu.js
src/router/modules/menu.js
+1
-1
company.vue
src/views/info/company.vue
+19
-0
index.vue
src/views/info/index.vue
+451
-8
index.vue
src/views/layout/index.vue
+2
-1
collection.vue
src/views/verification/collection.vue
+7
-7
No files found.
src/api/apis_moudles/info.js
View file @
cc694ddf
// 信息管理api
export
default
{};
export
default
{
providerDetail
:
"
/backstage/auth/providerDetail
"
,
//医疗机构列表
doctorList
:
"
/backstage/auth/doctorList
"
,
//医生列表
doctorDelete
:
"
/backstage/auth/doctorDelete
"
,
//删除医生
doctorUpdate
:
"
/backstage/auth/doctorUpdate
"
,
//修改医生
};
src/api/funcs_modules/info.js
View file @
cc694ddf
// 信息维护函数库
// import apis from "../apis_moudles/index";
// import req from "../request";
// 医疗机构函数库
import
apis
from
"
../apis_moudles/index
"
;
import
req
from
"
../request
"
;
//医疗机构列表
const
PROVIDERDETAIL
=
()
=>
{
return
req
.
post
(
apis
.
providerDetail
);
};
//医生列表
const
DOCTORLIST
=
(
data
)
=>
{
return
req
.
post
(
apis
.
doctorList
,
data
);
};
//删除医生
const
DOCTORDELETE
=
(
data
)
=>
{
return
req
.
post
(
apis
.
doctorDelete
,
data
);
};
//修改医生
const
DOCTORUPDATE
=
(
data
)
=>
{
return
req
.
post
(
apis
.
doctorUpdate
,
data
);
};
// 对象数组
export
default
{};
export
default
{
PROVIDERDETAIL
,
DOCTORLIST
,
DOCTORDELETE
,
DOCTORUPDATE
};
src/components/Antd/index.js
View file @
cc694ddf
...
...
@@ -17,8 +17,9 @@ import {
Button
,
notification
,
popconfirm
,
Modal
Modal
,
modal
,
Spin
}
from
"
ant-design-vue
"
;
export
default
()
=>
{
...
...
@@ -40,8 +41,9 @@ export default () => {
Button
,
notification
,
popconfirm
,
Modal
Modal
,
modal
,
Spin
];
// 注册
els
.
forEach
((
item
)
=>
{
...
...
src/components/Loading/Loading.vue
0 → 100644
View file @
cc694ddf
<
template
>
<div
class=
"flex loading-container"
>
<a-spin
/>
<span
class=
"txt"
>
正在查询
</span>
</div>
</
template
>
<
script
>
export
default
{
name
:
'
Loading
'
,
data
(){
return
{
isShow
:
false
}
}
}
</
script
>
<
style
lang=
"less"
scoped
>
.loading-container{
width: 159px;
height: 44px;
background: #F8FAFF;
box-shadow: 0px 2px 4px 0px rgba(208,220,254,1);
border-radius: 22px;
justify-content: center;
position: absolute;
z-index: 10;
top: 22px;
left: 50%;
transform: translateX(-50%);
.txt{
font-size: 16px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #252631;
line-height: 22px;
margin-left: 12px;
}
.ant-spin{
margin-top: 4px;
}
}
</
style
>
src/components/Loading/index.js
0 → 100644
View file @
cc694ddf
src/router/modules/info.js
View file @
cc694ddf
import
Layout
from
'
@/layout
'
// 信息管理路由表,分包名称:info
export
default
{
path
:
"
/info
"
,
name
:
"
Info
"
,
component
:
()
=>
{
return
import
(
/* webpackChunkName: "info" */
"
@/views/info
"
);
component
:
Layout
,
children
:
[
{
path
:
""
,
name
:
"
InfoMedical
"
,
component
:
()
=>
import
(
"
@/views/info/index
"
)
},
{
path
:
"
company
"
,
name
:
"
InfoCompany
"
,
component
:
()
=>
import
(
"
@/views/info/company
"
)
}
]
};
src/router/modules/menu.js
View file @
cc694ddf
...
...
@@ -74,7 +74,7 @@ export default [
title
:
"
医疗机构信息
"
,
},
{
path
:
"
/info
"
,
path
:
"
/info
/company
"
,
title
:
"
保险公司信息
"
,
},
],
...
...
src/views/info/company.vue
0 → 100644
View file @
cc694ddf
<
template
>
<div
class=
"index"
>
<!-- 保险公司信息 -->
保险公司信息
</div>
</
template
>
<
script
>
export
default
{
data
()
{
return
{};
},
computed
:
{},
watch
:
{},
methods
:
{},
};
</
script
>
<
style
lang=
"less"
scoped
></
style
>
src/views/info/index.vue
View file @
cc694ddf
<
template
>
<div
class=
"index"
>
<!-- 信息维护 -->
信息维护
<div
class=
"white_bg burt-container"
>
<div
class=
"title-div"
>
申请日期
</div>
<a-form-model
ref=
"form"
layout=
"vertical"
>
<a-row
:gutter=
"30"
>
<a-col
:lg=
"6"
: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-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-form-model-item
label=
"联系电话"
>
<a-input
v-model=
"detailObj.telNo1"
placeholder=
"请输入联系电话"
/>
</a-form-model-item>
</a-col>
<a-col
:lg=
"10"
:sm=
"12"
>
<a-form-model-item
label=
"诊所地址(中文)"
>
<a-input
v-model=
"detailObj.address"
placeholder=
"诊所地址(中文)"
/>
</a-form-model-item>
</a-col>
<a-col
:lg=
"10"
:sm=
"12"
>
<a-form-model-item
label=
"诊所地址(英文)"
>
<a-input
v-model=
"detailObj.englishAddr"
placeholder=
"诊所地址(英文)"
/>
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
<div
class=
"title-div"
>
账户信息-人民币账户
</div>
<a-form-model
layout=
"vertical"
>
<a-row
:gutter=
"30"
>
<a-col
:lg=
"8"
:sm=
"12"
>
<a-form-model-item
label=
"账户名称"
>
<a-input
v-model=
"detailObj.accountName"
placeholder=
"账户名称"
/>
</a-form-model-item>
</a-col>
<a-col
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"银行名称"
>
<a-input
v-model=
"detailObj.bankName"
placeholder=
"银行名称"
/>
</a-form-model-item>
</a-col>
<a-col
:lg=
"8"
:sm=
"12"
>
<a-form-model-item
label=
"银行账号"
>
<a-input
v-model=
"detailObj.bankAccount"
type=
"number"
placeholder=
"银行账号"
/>
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
<div
class=
"title-div"
>
财务信息-美金币账户
</div>
<a-form-model
layout=
"vertical"
>
<a-row
:gutter=
"30"
>
<a-col
:lg=
"8"
:sm=
"12"
>
<a-form-model-item
label=
"Beneficiiary Name 账号"
>
<a-input
v-model=
"detailObj.accountNameEng"
placeholder=
"Beneficiiary Name 账号"
/>
</a-form-model-item>
</a-col>
<a-col
:lg=
"6"
:sm=
"12"
>
<a-form-model-item
label=
"Bank Account No 银行账号"
>
<a-input
v-model=
"detailObj.bankAccountEng"
placeholder=
"Bank Account No 银行账号"
/>
</a-form-model-item>
</a-col>
<a-col
:lg=
"8"
:sm=
"12"
>
<a-form-model-item
label=
"Bank Name 银行名称"
>
<a-input
v-model=
"detailObj.bankAddrEng"
type=
"number"
placeholder=
"Bank Name 银行名称"
/>
</a-form-model-item>
</a-col>
<a-col
:sm=
"12"
>
<a-form-model-item
label=
"Bank Address 银行地址"
>
<a-input
v-model=
"detailObj.bankAddr"
type=
"number"
placeholder=
"Bank Address 银行地址"
/>
</a-form-model-item>
</a-col>
<a-col
:sm=
"12"
>
<a-form-model-item
label=
"Swift Code 国际电汇代码"
>
<a-input
v-model=
"detailObj.telegraphicTransferCode"
type=
"number"
placeholder=
"Swift Code 国际电汇代码"
/>
</a-form-model-item>
</a-col>
</a-row>
</a-form-model>
<!-- 暂时不用
<div
class=
"flex borderBox upload-div"
>
<a-upload
name=
"file"
>
<a-button
type=
"primary"
>
上传价目表文件
</a-button>
</a-upload>
</div>
-->
<div
class=
"title-div"
>
医生信息
</div>
<a-table
:columns=
"columns"
:data-source=
"dataList"
:scroll=
"
{ x: true }"
:pagination="false"
>
<template
slot=
"specialtyList"
slot-scope=
"text, record"
>
<a-select
v-if=
"record.edit"
v-model=
"record.specialtyList2"
placeholder=
"请选择"
mode=
"multiple"
>
<a-select-option
:value=
"item.id"
v-for=
"item in specialtyList"
:key=
"item.id"
>
{{
item
.
specialtyDesc
}}
</a-select-option
>
</a-select>
<span
v-else
>
{{
filterSpecialty
(
record
.
specialtyList2
)
}}
</span>
</
template
>
<
template
slot=
"operation"
slot-scope=
"text, record, index"
>
<a-button
type=
"link"
@
click.stop=
"editEvt(record, index)"
>
{{
record
.
edit
?
"
保存
"
:
"
修改
"
}}
</a-button>
<a-button
type=
"link"
class=
"success"
>
新增
</a-button>
<a-button
type=
"link"
class=
"danger"
@
click.stop=
"delRecord(index)"
>
删除
</a-button
>
</
template
>
</a-table>
<!--分页-->
<div
class=
"flex my-pagination"
v-if=
"pagination.total > pagination.pageSize"
>
<a-pagination
v-model=
"pagination.pageNum"
:total=
"pagination.total"
:page-size=
"pagination.pageSize"
:item-render=
"itemRender"
@
change=
"pageChange"
/>
<a-input
v-model.trim=
"jumpPage"
class=
"jump-page"
type=
"number"
:min=
"0"
@
blur=
"inputPageChange"
/>
</div>
</div>
</template>
<
script
>
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
:
"
language
"
,
ellipsis
:
true
,
width
:
120
},
{
title
:
"
操作
"
,
dataIndex
:
"
operation
"
,
scopedSlots
:
{
customRender
:
"
operation
"
},
fixed
:
"
right
"
,
width
:
"
170px
"
,
},
];
export
default
{
data
()
{
return
{};
return
{
columns
,
dataList
:
[],
detailObj
:
{},
//详细信息
pagination
:
{
pageNum
:
1
,
pageSize
:
10
,
total
:
100
,
},
jumpPage
:
""
,
specialtyList
:
[],
//科室列表
specialtyObj
:
{},
//科室对象
};
},
async
created
()
{
this
.
getSpecialtyList
();
await
this
.
getDetail
();
this
.
getDoctorList
();
},
methods
:
{
itemRender
(
current
,
type
,
originalElement
)
{
if
(
type
===
"
prev
"
)
{
return
<
li
class
=
"
page pre
"
>
上一页
<
/li>
;
}
else
if
(
type
===
"
next
"
)
{
return
<
li
class
=
"
page next
"
>
下一页
<
/li>
;
}
else
if
(
type
===
"
page
"
)
{
//当前页面
if
(
current
==
this
.
pagination
.
pageNum
)
{
return
(
<
div
class
=
"
cur-page page
"
>
<
span
class
=
"
cur
"
>
{
current
}
<
/span>/
<
span
class
=
"
total
"
>
{
Math
.
ceil
(
this
.
pagination
.
total
/
this
.
pagination
.
pageSize
)}
<
/span
>
<
/div
>
);
}
else
{
return
null
;
}
}
else
if
(
type
==
"
jump-prev
"
)
{
return
null
;
}
else
if
(
type
==
"
jump-next
"
)
{
return
null
;
}
return
originalElement
;
},
filterSpecialty
(
val
)
{
let
txt
=
(
val
||
[]).
map
((
item
)
=>
{
return
this
.
specialtyObj
[
item
]
||
""
;
});
return
txt
.
join
(
"
,
"
);
},
inputPageChange
()
{
this
.
jumpPage
=
parseInt
(
this
.
jumpPage
);
let
pages
=
Math
.
ceil
(
this
.
pagination
.
total
/
this
.
pagination
.
pageSize
);
this
.
jumpPage
=
this
.
jumpPage
<
0
?
0
:
this
.
jumpPage
;
this
.
jumpPage
=
this
.
jumpPage
>
pages
?
pages
:
this
.
jumpPage
;
this
.
pagination
.
pageNum
=
this
.
jumpPage
;
this
.
getDoctorList
();
},
pageChange
(
pager
)
{
this
.
pagination
.
pageNum
=
pager
;
this
.
getDoctorList
();
},
handlerSearch
()
{
this
.
pagination
.
pageNum
=
1
;
this
.
getData
();
},
//获取科室
getSpecialtyList
()
{
this
.
$apis
.
GETSPECIALTYLIST
().
then
((
res
)
=>
{
if
(
res
.
returnCode
==
"
0000
"
)
{
this
.
specialtyList
=
res
.
content
||
[];
(
res
.
content
||
[]).
forEach
((
item
)
=>
{
this
.
specialtyObj
[
item
.
id
]
=
item
.
specialtyDesc
;
});
}
else
{
this
.
$message
.
error
(
res
.
returnMsg
);
}
});
},
//获取详细信息
getDetail
()
{
return
new
Promise
((
resolve
,
reject
)
=>
{
this
.
$apis
.
PROVIDERDETAIL
().
then
((
res
)
=>
{
if
(
res
.
returnCode
==
"
0000
"
)
{
this
.
detailObj
=
res
.
content
||
{};
resolve
();
}
else
{
this
.
$message
.
error
(
res
.
returnMsg
);
reject
();
}
});
});
},
//获取医生列表
getDoctorList
()
{
this
.
$apis
.
DOCTORLIST
({
providerId
:
this
.
detailObj
.
id
,
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
||
[]).
map
((
item
)
=>
{
let
specialtyList2
=
(
item
.
specialtyList
||
[]).
map
(
(
innerItem
)
=>
{
return
innerItem
.
specialtyId
;
}
);
return
{
...
item
,
specialtyList2
:
specialtyList2
||
[],
edit
:
false
,
};
});
}
else
{
this
.
$message
.
error
(
res
.
returnMsg
);
}
});
},
//编辑
editEvt
(
record
,
index
)
{
this
.
dataList
.
forEach
((
item
,
i
)
=>
{
if
(
index
!=
i
)
{
item
.
edit
=
false
;
}
});
record
.
edit
=
!
record
.
edit
;
//保存
if
(
!
record
.
edit
)
{
this
.
$apis
.
DOCTORUPDATE
({
id
:
record
.
id
,
specialtyList
:
record
.
specialtyList2
.
map
((
item
)
=>
{
return
{
specialtyId
:
item
,
};
}),
})
.
then
((
res
)
=>
{
if
(
res
.
returnCode
==
"
0000
"
)
{
this
.
$message
.
success
(
"
编辑成功
"
);
}
else
{
this
.
$message
.
error
(
res
.
returnMsg
);
}
});
}
},
//删除医生
delRecord
(
index
)
{
this
.
$modal
.
confirm
({
title
:
"
删除
"
,
content
:
"
确定删除该条记录?
"
,
okText
:
"
确定
"
,
cancelText
:
"
取消
"
,
onOk
:
()
=>
{
this
.
$apis
.
DOCTORDELETE
({
id
:
this
.
dataList
[
index
].
id
,
})
.
then
((
res
)
=>
{
if
(
res
.
returnCode
==
"
0000
"
)
{
this
.
$message
.
success
(
"
删除成功
"
);
this
.
dataList
.
splice
(
index
,
1
);
}
else
{
this
.
$message
.
error
(
res
.
returnMsg
);
}
});
},
});
},
},
computed
:
{},
watch
:
{},
methods
:
{},
};
</
script
>
<
style
lang=
"less"
scoped
></
style
>
<
style
lang=
"less"
scoped
>
.ant-form {
margin-top: 30px;
}
.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;
}
.title-div {
line-height: 56px;
color: #252631;
font-weight: bold;
border-bottom: 1px solid #eee;
}
.upload-div {
height: 60px;
background: #f8fafb;
padding-left: 20px;
margin-bottom: 30px;
}
.my-pagination {
justify-content: flex-end;
margin-top: 33px;
.page {
width: 80px;
height: 36px;
line-height: 36px;
background: #f8fafb;
font-weight: 400;
color: #252631;
&.cur-page {
background: transparent;
}
span {
font-size: 16px;
font-weight: 400;
&.cur {
color: #4d7cfe;
}
}
}
.jump-page {
width: 80px;
margin-left: 30px;
height: 36px;
text-align: center;
}
}
::v-deep .ant-pagination-jump-prev,
::v-deep .ant-pagination-jump-next {
display: none !important;
}
</
style
>
src/views/layout/index.vue
View file @
cc694ddf
...
...
@@ -20,7 +20,7 @@ export default {
components
:
{
Header
,
Menu
,
SubMenu
,
SubMenu
},
data
()
{
return
{};
...
...
@@ -42,6 +42,7 @@ export default {
.pt(68);
// min-height: calc(100vh - 50px);
.content {
position: relative;
flex: 1;
.mg-l(242);
.pa(14, 40, 0, 40);
...
...
src/views/verification/collection.vue
View file @
cc694ddf
...
...
@@ -74,7 +74,7 @@
<
script
>
const
columns
=
[
{
title
:
"
序号
号
"
,
dataIndex
:
"
mrnNo
"
,
ellipsis
:
true
,
width
:
180
},
{
title
:
"
序号
"
,
dataIndex
:
"
mrnNo
"
,
ellipsis
:
true
,
width
:
180
},
{
title
:
"
EOB姓名
"
,
dataIndex
:
"
patientName
"
,
ellipsis
:
true
,
width
:
180
},
{
title
:
"
核销时间
"
,
dataIndex
:
"
patientName2
"
,
ellipsis
:
true
,
width
:
180
},
{
title
:
"
保险公司
"
,
dataIndex
:
"
patientName3
"
,
ellipsis
:
true
,
width
:
180
},
...
...
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