Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
V
vue-composition-api
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
宁路鹏
vue-composition-api
Commits
08b47a3e
Commit
08b47a3e
authored
Mar 03, 2023
by
tangyufeng
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1.滚动条
2.修复锁定状态栏 3.修复页面跳转
parent
cc1f20bb
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
1005 additions
and
1293 deletions
+1005
-1293
src/views/outClinicalpathway.vue
+1005
-1293
No files found.
src/views/outClinicalpathway.vue
View file @
08b47a3e
...
...
@@ -6,530 +6,288 @@
* @Description:
-->
<
template
>
<!-- 临床路径外放页面 -->
<div
class=
"outClinicalpathway"
>
<!-- 患者信息 -->
<div
class=
"outClinicalpathway_top"
>
<div
class=
"outClinicalpathway_top_bg"
></div>
<div
class=
"outClinicalpathway_top_coent"
>
<!--患者信息 -->
<div
class=
"outClinicalpathway_top_coent_left"
>
<div
class=
"outClinicalpathway_top_coent_left_one"
>
<span><img
src=
"../assets/img/peo.png"
alt=
""
/></span>
<div
class=
"outClinicalpathway_top_coent_left_one_t1"
>
患者姓名:
<span>
{{
topdata
.
patientName
}}
</span>
</div>
<div
class=
"outClinicalpathway_top_coent_left_one_t2"
>
住院号:
<span>
{{
topdata
.
regCode
}}
</span>
</div>
<div
class=
"outClinicalpathway_top_coent_left_one_t3"
>
住院次数:
<span>
{{
topdata
.
inHosNum
}}
</span>
<!-- 临床路径外放页面 -->
<div
class=
"outClinicalpathway"
>
<!-- 患者信息 -->
<div
class=
"outClinicalpathway_top"
>
<div
class=
"outClinicalpathway_top_bg"
></div>
<div
class=
"outClinicalpathway_top_coent"
>
<!--患者信息 -->
<div
class=
"outClinicalpathway_top_coent_left"
>
<div
class=
"outClinicalpathway_top_coent_left_one"
>
<span><img
src=
"../assets/img/peo.png"
alt=
""
/></span>
<div
class=
"outClinicalpathway_top_coent_left_one_t1"
>
患者姓名:
<span>
{{
topdata
.
patientName
}}
</span>
</div>
<div
class=
"outClinicalpathway_top_coent_left_one_t2"
>
住院号:
<span>
{{
topdata
.
regCode
}}
</span>
</div>
<div
class=
"outClinicalpathway_top_coent_left_one_t3"
>
住院次数:
<span>
{{
topdata
.
inHosNum
}}
</span>
</div>
<div
class=
"outClinicalpathway_top_coent_left_one_t4"
>
符合临床路径:
<span>
{{
topdata
.
clinical_route_name
}}
</span>
</div>
</div>
</div>
<div
class=
"outClinicalpathway_top_coent_right"
>
<div
class=
"outClinicalpathway_top_coent_right_btn"
>
<el-button
icon=
"el-icon-user"
style=
"background-color: #0283bb; color: #ffff"
@
click=
"joinorder()"
>
保存医嘱
</el-button>
<el-button
icon=
"el-icon-s-tools"
style=
"background-color: #0283bb; color: #ffff"
@
click=
"variation()"
>
病情变异
</el-button>
</div>
</div>
</div>
<div
class=
"outClinicalpathway_top_coent_left_one_t4"
>
符合临床路径:
<span>
{{
topdata
.
clinical_route_name
}}
</span>
<div
class=
"outClinicalpathway_top_time"
>
<el-timeline
style=
"display: flex; width: 25%; padding: 0 10px"
>
<el-timeline-item
:class=
"timeindex == activity.inhosdays ? 'outClinicalpathway_top_time_timespan' : 'outClinicalpathway_top_time_timespan2'"
v-for=
"(activity, index) in activities"
:key=
"index"
:type=
"activity.type"
:color=
"activity.color"
:size=
"activity.size"
:hollow=
"activity.hollow"
:timestamp=
"activity.timestamp"
>
<span
@
click=
"timeclick(activity)"
>
{{
activity
.
inhosdays
}}
</span>
</el-timeline-item>
</el-timeline>
</div>
</div>
</div>
<div
class=
"outClinicalpathway_top_coent_right"
>
<div
class=
"outClinicalpathway_top_coent_right_btn"
>
<el-button
icon=
"el-icon-user"
style=
"background-color: #0283bb; color: #ffff"
@
click=
"joinorder()"
>
保存医嘱
</el-button
>
<el-button
icon=
"el-icon-s-tools"
style=
"background-color: #0283bb; color: #ffff"
@
click=
"variation()"
>
病情变异
</el-button
>
</div>
</div>
</div>
<div
class=
"outClinicalpathway_top_time"
>
<el-timeline
style=
"display: flex; width: 25%; padding: 0 10px"
>
<el-timeline-item
:class=
"
timeindex == activity.inhosdays
? 'outClinicalpathway_top_time_timespan'
: 'outClinicalpathway_top_time_timespan2'
"
v-for=
"(activity, index) in activities"
:key=
"index"
:type=
"activity.type"
:color=
"activity.color"
:size=
"activity.size"
:hollow=
"activity.hollow"
:timestamp=
"activity.timestamp"
>
<span
@
click=
"timeclick(activity)"
>
{{
activity
.
inhosdays
}}
</span>
</el-timeline-item>
</el-timeline>
</div>
</div>
<!--病情变异弹框开始 -->
<el-dialog
:visible
.
sync=
"editdialogFormVisible"
width=
"30%"
@
close=
"close"
>
<el-form
ref=
"fromRef"
:model=
"form"
:label-position=
"labelPosition"
label-width=
"100px"
>
<el-form-item
label=
"路径天数:"
>
<!--
<el-input
v-model=
"form.inhosdays"
/>
-->
<el-select
v-model=
"form.inhosdays"
class=
"m-2"
placeholder=
"请选择"
size=
"mini"
>
<el-option
v-for=
"item in options"
:key=
"item.inhosdays"
:label=
"item.inhosdays"
:value=
"item.inhosdays"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"变异原因:"
>
<el-select
v-model=
"form.reason"
class=
"m-2"
placeholder=
"请选择"
size=
"mini"
:title=
"getTitle(form.reason)"
>
<el-option
v-for=
"item in reasonoptions"
:key=
"item.id"
:label=
"item.describe"
:value=
"item.describe"
:title=
"item.describe"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"备注:"
>
<el-input
v-model=
"form.remarks"
:autosize=
"
{ minRows: 4, maxRows: 10 }"
type="textarea"
/>
</el-form-item>
</el-form>
<template
#
footer
>
<span
class=
"dialog-footer"
>
<el-button
size=
"mini"
@
click=
"close()"
>
取消
</el-button>
<el-button
size=
"mini"
type=
"primary"
@
click=
"fromOKbtn()"
>
确定
</el-button>
</span>
</
template
>
</el-dialog>
<!--病情变异弹框结束 -->
<!-- 表格 -->
<div
class=
"outClinicalpathway_table"
>
<!-- 表格 -->
<div
class=
"outClinicalpathway_table_right"
>
<div
class=
"outClinicalpathway_table_right_radio"
>
<el-radio-group
v-model=
"radio"
@
input=
"radiochange"
>
<el-radio
:label=
"1"
>
长期医嘱
</el-radio>
<el-radio
:label=
"2"
>
临时医嘱
</el-radio>
</el-radio-group>
</div>
<el-table
ref=
"multipleTable"
row-key=
"id"
:data=
"tableData"
:tree-props=
"{ children: 'children', hasChildren: 'hasChildren' }"
:select-on-indeterminate=
"true"
@
selection-change=
"SelectionChange"
@
select-all=
"selectAll"
@
select=
"select"
default-expand-all
size=
"mini"
:row-class-name=
"rowClass"
>
<el-table-column
type=
"selection"
:selectable=
"selectEnable"
width=
"55"
/>
<el-table-column
show-overflow-tooltip
property=
"advice_name"
label=
"路径名称"
width=
"150"
/>
<el-table-column
show-overflow-tooltip
property=
"tickTime"
label=
"当前时间"
width=
"145"
>
<
template
#
default=
"scope"
>
<span
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1"
>
{{
scope
.
row
.
tickTime
}}
</span
>
<!--病情变异弹框开始 -->
<el-dialog
:visible
.
sync=
"editdialogFormVisible"
width=
"30%"
@
close=
"close"
>
<el-form
ref=
"fromRef"
:model=
"form"
:label-position=
"labelPosition"
label-width=
"100px"
>
<el-form-item
label=
"路径天数:"
>
<!--
<el-input
v-model=
"form.inhosdays"
/>
-->
<el-select
v-model=
"form.inhosdays"
class=
"m-2"
placeholder=
"请选择"
size=
"mini"
>
<el-option
v-for=
"item in options"
:key=
"item.inhosdays"
:label=
"item.inhosdays"
:value=
"item.inhosdays"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"变异原因:"
>
<el-select
v-model=
"form.reason"
class=
"m-2"
placeholder=
"请选择"
size=
"mini"
:title=
"getTitle(form.reason)"
>
<el-option
v-for=
"item in reasonoptions"
:key=
"item.id"
:label=
"item.describe"
:value=
"item.describe"
:title=
"item.describe"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"备注:"
>
<el-input
v-model=
"form.remarks"
:autosize=
"
{ minRows: 4, maxRows: 10 }" type="textarea" />
</el-form-item>
</el-form>
<template
#
footer
>
<span
class=
"dialog-footer"
>
<el-button
size=
"mini"
@
click=
"close()"
>
取消
</el-button>
<el-button
size=
"mini"
type=
"primary"
@
click=
"fromOKbtn()"
>
确定
</el-button>
</span>
</
template
>
</el-table-column>
<el-table-column
show-overflow-tooltip
property=
"orderType"
label=
"类型"
width=
"60"
/>
</el-dialog>
<!--病情变异弹框结束 -->
<!-- 表格 -->
<div
class=
"outClinicalpathway_table"
>
<!-- 表格 -->
<div
class=
"outClinicalpathway_table_right"
>
<div
class=
"outClinicalpathway_table_right_radio"
>
<el-radio-group
v-model=
"radio"
@
input=
"radiochange"
>
<el-radio
:label=
"1"
>
长期医嘱
</el-radio>
<el-radio
:label=
"2"
>
临时医嘱
</el-radio>
</el-radio-group>
</div>
<el-table
ref=
"multipleTable"
row-key=
"id"
:data=
"tableData"
height=
"100%"
style=
"width: 100%"
:tree-props=
"{ children: 'children', hasChildren: 'hasChildren' }"
:select-on-indeterminate=
"true"
@
selection-change=
"SelectionChange"
@
select-all=
"selectAll"
@
select=
"select"
default-expand-all
size=
"mini"
:row-class-name=
"rowClass"
>
<el-table-column
type=
"selection"
:selectable=
"selectEnable"
width=
"55"
/>
<el-table-column
show-overflow-tooltip
property=
"project_name"
label=
"医院项目名称"
width=
"120"
/>
<el-table-column
show-overflow-tooltip
property=
"advice_name"
label=
"路径名称"
width=
"150"
/>
<el-table-column
show-overflow-tooltip
property=
"tickTime"
label=
"当前时间"
width=
"145"
>
<
template
#
default=
"scope"
>
<span
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1"
>
{{
scope
.
row
.
tickTime
}}
</span>
</
template
>
</el-table-column>
<el-table-column
show-overflow-tooltip
property=
"orderType"
label=
"类型"
width=
"60"
/>
<el-table-column
show-overflow-tooltip
property=
"specifications"
label=
"规格说明"
width=
"80"
/>
<el-table-column
show-overflow-tooltip
property=
"dosage"
label=
"药品剂型"
width=
"80"
/>
<el-table-column
show-overflow-tooltip
property=
"isAntibiotic"
label=
"抗生素"
width=
"85"
>
<
template
#
default=
"scope"
>
<el-select
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1"
size=
"mini"
v-model=
"scope.row.isAntibiotic"
>
<el-option
v-for=
"item in chargeTypeoptions"
:key=
"item.label"
:label=
"item.label"
:value=
"item.label"
>
</el-option>
</el-select>
<span
v-else
>
{{
scope
.
row
.
isAntibiotic
}}
</span>
</
template
>
</el-table-column>
<el-table-column
show-overflow-tooltip
property=
"medicalPurpose"
label=
"用药目的"
width=
"135"
>
<
template
#
default=
"scope"
>
<el-select
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1"
size=
"mini"
v-model=
"scope.row.medicalPurpose"
>
<el-option
v-for=
"item in medicalPurposeoptions"
:key=
"item.id"
:label=
"item.describe"
:value=
"item.describe"
>
</el-option>
</el-select>
<span
v-else
>
{{
scope
.
row
.
medicalPurpose
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"medicUseQuantity"
label=
"用量"
width=
"75"
>
<
template
#
default=
"scope"
>
<el-input
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1"
v-model=
"scope.row.medicUseQuantity"
size=
"mini"
></el-input>
<span
v-else
>
{{
scope
.
row
.
medicUseQuantity
}}
</span>
</
template
>
</el-table-column>
<el-table-column
show-overflow-tooltip
property=
"medicUseUnit"
label=
"单位"
width=
"50"
/>
<el-table-column
show-overflow-tooltip
property=
"medicUseMode"
label=
"途径"
width=
"110"
>
<
template
#
default=
"scope"
>
<el-select
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1"
size=
"mini"
v-model=
"scope.row.medicUseMode"
>
<el-option
v-for=
"item in medicUseModeoptions"
:key=
"item.id"
:label=
"item.describe"
:value=
"item.describe"
>
</el-option>
</el-select>
<span
v-else
>
{{
scope
.
row
.
medicUseMode
}}
</span>
</
template
>
</el-table-column>
<el-table-column
show-overflow-tooltip
property=
"medicUsePlan"
label=
"频率"
width=
"100"
>
<
template
#
default=
"scope"
>
<el-select
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1"
size=
"mini"
v-model=
"scope.row.medicUsePlan"
>
<el-option
v-for=
"item in medicUsePlanoptions"
:key=
"item.id"
:label=
"item.describe"
:value=
"item.describe"
>
</el-option>
</el-select>
<span
v-else
>
{{
scope
.
row
.
medicUsePlan
}}
</span>
</
template
>
</el-table-column>
<el-table-column
show-overflow-tooltip
property=
"project_name"
label=
"医院项目名称"
width=
"220"
/>
<el-table-column
prop=
"medicQuantity"
label=
"用药总量"
width=
"80"
>
<
template
#
default=
"scope"
>
<el-input
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1"
v-model=
"scope.row.medicQuantity"
size=
"mini"
></el-input>
<span
v-else
>
{{
scope
.
row
.
medicQuantity
}}
</span>
</
template
>
</el-table-column>
<el-table-column
show-overflow-tooltip
property=
"medicUnit"
label=
"单位"
width=
"50"
/>
<el-table-column
show-overflow-tooltip
property=
"remark"
label=
"嘱托"
width=
"150'"
>
<
template
#
default=
"scope"
>
<el-input
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1"
v-model=
"scope.row.remark"
size=
"mini"
type=
"textarea"
:autosize=
"
{ minRows: 2 }"
placeholder="请输入内容"
>
</el-input>
<span
v-else
>
{{
scope
.
row
.
remark
}}
</span>
</
template
>
</el-table-column>
<el-table-column
show-overflow-tooltip
property=
"specifications"
label=
"规格说明"
width=
"80"
/>
<el-table-column
show-overflow-tooltip
property=
"dosage"
label=
"药品剂型"
width=
"80"
/>
<el-table-column
show-overflow-tooltip
property=
"isAntibiotic"
label=
"抗生素"
width=
"85"
>
<
template
#
default=
"scope"
>
<el-select
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1"
size=
"mini"
v-model=
"scope.row.isAntibiotic"
>
<el-option
v-for=
"item in chargeTypeoptions"
:key=
"item.label"
:label=
"item.label"
:value=
"item.label"
>
</el-option>
</el-select>
<span
v-else
>
{{
scope
.
row
.
isAntibiotic
}}
</span>
</
template
>
</el-table-column>
<el-table-column
show-overflow-tooltip
property=
"medicalPurpose"
label=
"用药目的"
width=
"135"
>
<
template
#
default=
"scope"
>
<el-select
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1"
size=
"mini"
v-model=
"scope.row.medicalPurpose"
>
<el-option
v-for=
"item in medicalPurposeoptions"
:key=
"item.id"
:label=
"item.describe"
:value=
"item.describe"
>
</el-option>
</el-select>
<span
v-else
>
{{
scope
.
row
.
medicalPurpose
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"medicUseQuantity"
label=
"用量"
width=
"75"
>
<
template
#
default=
"scope"
>
<el-input
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1"
v-model=
"scope.row.medicUseQuantity"
size=
"mini"
></el-input>
<span
v-else
>
{{
scope
.
row
.
medicUseQuantity
}}
</span>
</
template
>
</el-table-column>
<el-table-column
show-overflow-tooltip
property=
"medicUseUnit"
label=
"单位"
width=
"50"
/>
<el-table-column
show-overflow-tooltip
property=
"medicUseMode"
label=
"途径"
width=
"110"
>
<
template
#
default=
"scope"
>
<el-select
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1"
size=
"mini"
v-model=
"scope.row.medicUseMode"
>
<el-option
v-for=
"item in medicUseModeoptions"
:key=
"item.id"
:label=
"item.describe"
:value=
"item.describe"
>
</el-option>
</el-select>
<span
v-else
>
{{
scope
.
row
.
medicUseMode
}}
</span>
</
template
>
</el-table-column>
<el-table-column
show-overflow-tooltip
property=
"medicUsePlan"
label=
"频率"
width=
"100"
>
<
template
#
default=
"scope"
>
<el-select
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1"
size=
"mini"
v-model=
"scope.row.medicUsePlan"
>
<el-option
v-for=
"item in medicUsePlanoptions"
:key=
"item.id"
:label=
"item.describe"
:value=
"item.describe"
>
</el-option>
</el-select>
<span
v-else
>
{{
scope
.
row
.
medicUsePlan
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"description"
label=
"诊断描述"
width=
"150"
>
<
template
#
default=
"scope"
>
<div
style=
"
display: flex;
height: 100%;
flex-direction: column;
justify-content: center;
align-items: center;
"
>
<div
style=
"display: flex"
>
<span
v-if=
"
scope.row.advice_name == null &&
scope.row.ischeck == 1 &&
scope.row.type == 2
"
style=
"color: red"
>
*
</span
>
<el-input
size=
"mini"
type=
"textarea"
:autosize=
"
{ minRows: 2 }"
placeholder="请输入内容"
v-if="
scope.row.advice_name == null
&&
scope.row.ischeck == 1
&&
scope.row.type != 1
"
v-model="scope.row.description"
>
</el-input>
</div>
<span
style=
"font-size: 12px; color: red"
v-if=
"
scope.row.advice_name == null &&
scope.row.ischeck == 1 &&
scope.row.type == 2 &&
scope.row.description == ''
"
>
请输入内容
</span
>
</div>
</
template
>
</el-table-column>
<el-table-column
prop=
"symptom"
label=
"症状及体征"
width=
"150"
>
<
template
#
default=
"scope"
>
<div
style=
"
display: flex;
height: 100%;
flex-direction: column;
justify-content: center;
align-items: center;
"
>
<div
style=
"display: flex"
>
<span
v-if=
"
scope.row.advice_name == null &&
scope.row.ischeck == 1 &&
scope.row.type == 2
"
style=
"color: red"
>
*
</span
>
<el-input
size=
"mini"
type=
"textarea"
:autosize=
"
{ minRows: 2 }"
placeholder="请输入内容"
v-if="
scope.row.advice_name == null
&&
scope.row.ischeck == 1
&&
scope.row.type != 1
"
v-model="scope.row.symptom"
>
</el-input>
</div>
<span
style=
"font-size: 12px; color: red"
v-if=
"
scope.row.advice_name == null &&
scope.row.ischeck == 1 &&
scope.row.type == 2 &&
scope.row.symptom == ''
"
>
请输入内容
</span
>
</div>
</
template
>
</el-table-column>
<el-table-column
prop=
"medicQuantity"
label=
"用药总量"
width=
"80"
>
<
template
#
default=
"scope"
>
<el-input
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1"
v-model=
"scope.row.medicQuantity"
size=
"mini"
></el-input>
<span
v-else
>
{{
scope
.
row
.
medicQuantity
}}
</span>
</
template
>
</el-table-column>
<el-table-column
show-overflow-tooltip
property=
"medicUnit"
label=
"单位"
width=
"50"
/>
<el-table-column
show-overflow-tooltip
property=
"remark"
label=
"嘱托"
width=
"150'"
>
<
template
#
default=
"scope"
>
<el-input
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1"
v-model=
"scope.row.remark"
size=
"mini"
type=
"textarea"
:autosize=
"
{ minRows: 2 }"
placeholder="请输入内容"
>
</el-input>
<span
v-else
>
{{
scope
.
row
.
remark
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"description"
label=
"诊断描述"
width=
"150"
>
<
template
#
default=
"scope"
>
<div
style=
"display: flex; height: 100%; flex-direction: column; justify-content: center; align-items: center"
>
<div
style=
"display: flex"
>
<span
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1 && scope.row.type == 2"
style=
"color: red"
>
*
</span>
<el-input
size=
"mini"
type=
"textarea"
:autosize=
"
{ minRows: 2 }"
placeholder="请输入内容"
v-if="scope.row.advice_name == null
&&
scope.row.ischeck == 1
&&
scope.row.type != 1"
v-model="scope.row.description"
>
</el-input>
</div>
<span
style=
"font-size: 12px; color: red"
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1 && scope.row.type == 2 && scope.row.description == ''"
>
请输入内容
</span
>
</div>
</
template
>
</el-table-column>
<el-table-column
prop=
"symptom"
label=
"症状及体征"
width=
"150"
>
<
template
#
default=
"scope"
>
<div
style=
"display: flex; height: 100%; flex-direction: column; justify-content: center; align-items: center"
>
<div
style=
"display: flex"
>
<span
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1 && scope.row.type == 2"
style=
"color: red"
>
*
</span>
<el-input
size=
"mini"
type=
"textarea"
:autosize=
"
{ minRows: 2 }"
placeholder="请输入内容"
v-if="scope.row.advice_name == null
&&
scope.row.ischeck == 1
&&
scope.row.type != 1"
v-model="scope.row.symptom"
>
</el-input>
</div>
<span
style=
"font-size: 12px; color: red"
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1 && scope.row.type == 2 && scope.row.symptom == ''"
>
请输入内容
</span
>
</div>
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
width=
"80"
>
<
template
#
default=
"scope"
>
<el-button
v-if=
"
scope.row.advice_name == null &&
scope.row.ischeck == 1 &&
scope.row.type != 1
"
size=
"mini"
type=
"primary"
@
click=
"goSeeScore(scope.row, scope.$index, scope)"
>
更多
</el-button
>
<el-table-column
label=
"操作"
width=
"80"
>
<
template
#
default=
"scope"
>
<el-button
v-if=
"scope.row.advice_name == null && scope.row.ischeck == 1 && scope.row.type != 1"
size=
"mini"
type=
"primary"
@
click=
"goSeeScore(scope.row, scope.$index, scope)"
>
更多
</el-button
>
</
template
>
</el-table-column>
</el-table>
</div>
</div>
<!-- 更多弹框开始 -->
<el-dialog
:visible
.
sync=
"goSeeScoredialogFormVisible"
width=
"30%"
>
<el-form
ref=
"goSeefromRef"
:model=
"goSeeform"
:label-position=
"labelPosition"
label-width=
"100px"
>
<el-form-item
label=
"主诉:"
>
<el-input
v-model=
"goSeeform.chiefComplaint"
:autosize=
"{ minRows: 2 }"
type=
"textarea"
placeholder=
"请输入内容"
/>
</el-form-item>
<el-form-item
label=
"检查目的:"
>
<el-input
v-model=
"goSeeform.inspectionPurpose"
:autosize=
"{ minRows: 2 }"
type=
"textarea"
placeholder=
"请输入内容"
:disabled=
"distype == 3 ? true : false"
/>
</el-form-item>
<el-form-item
label=
"既往史:"
>
<el-input
v-model=
"goSeeform.pastHistory"
:autosize=
"{ minRows: 2 }"
type=
"textarea"
placeholder=
"请输入内容"
/>
</el-form-item>
<el-form-item
label=
"其他辅助项目:"
>
<el-input
v-model=
"goSeeform.auxiliaryItems"
:autosize=
"{ minRows: 2 }"
type=
"textarea"
placeholder=
"请输入内容"
:disabled=
"distype == 3 ? true : false"
/>
</el-form-item>
<el-form-item
label=
"备注:"
>
<el-input
v-model=
"goSeeform.inspectRemarks"
:autosize=
"{ minRows: 2 }"
type=
"textarea"
placeholder=
"请输入内容"
/>
</el-form-item>
</el-form>
<
template
#
footer
>
<span
class=
"dialog-footer"
>
<el-button
size=
"mini"
@
click=
"goSeecolse()"
>
取消
</el-button>
<el-button
size=
"mini"
@
click=
"goSeeok()"
>
确定
</el-button>
</span>
</
template
>
</el-table-column>
</el-table>
</div>
</el-dialog>
<!-- 更多弹框结束 -->
</div>
<!-- 更多弹框开始 -->
<el-dialog
:visible
.
sync=
"goSeeScoredialogFormVisible"
width=
"30%"
>
<el-form
ref=
"goSeefromRef"
:model=
"goSeeform"
:label-position=
"labelPosition"
label-width=
"100px"
>
<el-form-item
label=
"主诉:"
>
<el-input
v-model=
"goSeeform.chiefComplaint"
:autosize=
"{ minRows: 2 }"
type=
"textarea"
placeholder=
"请输入内容"
/>
</el-form-item>
<el-form-item
label=
"检查目的:"
>
<el-input
v-model=
"goSeeform.inspectionPurpose"
:autosize=
"{ minRows: 2 }"
type=
"textarea"
placeholder=
"请输入内容"
:disabled=
"distype == 3 ? true : false"
/>
</el-form-item>
<el-form-item
label=
"既往史:"
>
<el-input
v-model=
"goSeeform.pastHistory"
:autosize=
"{ minRows: 2 }"
type=
"textarea"
placeholder=
"请输入内容"
/>
</el-form-item>
<el-form-item
label=
"其他辅助项目:"
>
<el-input
v-model=
"goSeeform.auxiliaryItems"
:autosize=
"{ minRows: 2 }"
type=
"textarea"
placeholder=
"请输入内容"
:disabled=
"distype == 3 ? true : false"
/>
</el-form-item>
<el-form-item
label=
"备注:"
>
<el-input
v-model=
"goSeeform.inspectRemarks"
:autosize=
"{ minRows: 2 }"
type=
"textarea"
placeholder=
"请输入内容"
/>
</el-form-item>
</el-form>
<
template
#
footer
>
<span
class=
"dialog-footer"
>
<el-button
size=
"mini"
@
click=
"goSeecolse()"
>
取消
</el-button>
<el-button
size=
"mini"
@
click=
"goSeeok()"
>
确定
</el-button>
</span>
</
template
>
</el-dialog>
<!-- 更多弹框结束 -->
</div>
</template>
<
script
>
import
http
from
"../utils/http"
;
import
{
reactive
,
toRefs
,
onMounted
,
nextTick
,
computed
,
ref
,
}
from
"@vue/composition-api"
;
import
{
reactive
,
toRefs
,
onMounted
,
nextTick
,
computed
,
ref
}
from
"@vue/composition-api"
;
import
{
decimal
}
from
"../utils/decimal"
;
import
{
img
}
from
"../assets/img/zu.png"
;
import
{
Message
}
from
"element-ui"
;
...
...
@@ -541,616 +299,570 @@ import { transformTimestampnow } from "../utils/formatTime";
import
{
format
}
from
"echarts"
;
import
M
from
"minimatch"
;
export
default
{
name
:
"outClinicalpathway"
,
setup
()
{
//表格自适应高度
const
route
=
useRoute
();
const
router
=
useRouter
();
const
fromRef
=
ref
();
const
goSeefromRef
=
ref
();
function
tableLayout
()
{
nextTick
(()
=>
{
fromRef
.
value
.
doLayout
();
});
}
const
monthlyPlanTable
=
ref
();
const
multipleTable
=
ref
();
const
transformTime
=
computed
(()
=>
{
return
transformTimestampnow
;
});
let
state
=
reactive
({
//患者信息
topdata
:
{
patientName
:
""
,
//患者姓名
regCode
:
""
,
// 住院号
inHosNum
:
""
,
// 住院次数
clinical_route_name
:
""
,
// 符合临床路径
},
multipleSelection
:
[],
//被选择的数据
selectArr
:
[],
tableData
:
[],
//表格数据
yztype
:
{
1
:
"长期医嘱"
,
2
:
"临时医嘱"
,
},
//被点击的index
timeindex
:
null
,
case_routeid
:
null
,
//点击左侧时间线的天数id
inhosdays
:
null
,
//点击左侧时间线的天数
//时间线
activities
:
[],
labelPosition
:
"right"
,
editdialogFormVisible
:
false
,
//弹框是否显示
//表单
form
:
{
inhosdays
:
""
,
reason
:
""
,
//变异原因
remarks
:
""
,
//备注
},
//路径天数下拉数据
options
:
[],
reasonoptions
:
[],
//变异原因
crid
:
null
,
chickid
:
[],
//选中的id
chargeTypeoptions
:
[
{
label
:
"是"
,
},
{
label
:
"否"
,
},
],
tempRow
:
{},
//储存正在编辑的行
tempRowChildren
:
[],
medicUseModeoptions
:
[],
//途径
medicUsePlanoptions
:
[],
//频率
medicalPurposeoptions
:
[],
//用药目的
radio
:
1
,
newtable1
:
[],
newtable2
:
[],
objtable
:
{
route1
:
[],
route2
:
[]
},
goSeeScoredialogFormVisible
:
false
,
//更多弹框
goSeeform
:
{},
oldRowObj
:
{},
goSeeIndex
:
""
,
goSeeIndexPid
:
""
,
distype
:
1
,
hisUrl
:
""
,
//his的接口地址
tempMedicalDrug
:
{},
tempMedicalcheck
:
{},
tempMedicalCheckout
:
{},
longMedical
:
{},
});
//表格禁用
const
selectEnable
=
(
row
,
rowIndex
)
=>
{
if
(
row
.
isForbidden
==
false
)
{
return
false
;
// 不禁用
}
else
{
return
true
;
//禁用
}
};
//表格当前行样式
const
rowClass
=
({
row
,
index
})
=>
{
if
(
row
.
isClass
==
true
)
{
return
"rowStyleclass"
;
}
else
{
return
""
;
}
};
//更多
const
goSeeScore
=
(
row
)
=>
{
console
.
log
(
"state.tableData"
,
state
.
tableData
);
console
.
log
(
"row"
,
row
);
state
.
distype
=
row
.
type
;
state
.
goSeeScoredialogFormVisible
=
true
;
state
.
oldRowObj
=
{
...
row
};
state
.
goSeeform
=
{
...
row
};
state
.
tableData
.
forEach
((
item
,
index
)
=>
{
let
childIndex
=
item
.
children
.
findIndex
((
v
)
=>
v
.
id
==
row
.
id
);
if
(
childIndex
!==
-
1
)
{
state
.
goSeeIndexPid
=
index
;
state
.
goSeeIndex
=
childIndex
;
}
});
};
//更多-取消
const
goSeecolse
=
()
=>
{
state
.
goSeeform
=
{};
let
childrenList
=
[...
state
.
tableData
[
state
.
goSeeIndexPid
].
children
];
childrenList
.
splice
(
state
.
goSeeIndex
,
1
,
state
.
oldRowObj
);
state
.
tableData
[
state
.
goSeeIndexPid
].
children
=
childrenList
;
state
.
goSeeScoredialogFormVisible
=
false
;
toggleSelection
(
state
.
oldRowObj
,
true
);
};
//更多--确定
const
goSeeok
=
()
=>
{
let
childrenList
=
[...
state
.
tableData
[
state
.
goSeeIndexPid
].
children
];
childrenList
.
splice
(
state
.
goSeeIndex
,
1
,
state
.
goSeeform
);
state
.
tableData
[
state
.
goSeeIndexPid
].
children
=
childrenList
;
console
.
log
(
state
.
tableData
,
999
);
state
.
goSeeScoredialogFormVisible
=
false
;
toggleSelection
(
state
.
goSeeform
,
true
);
};
//获取途径,频率的下拉数据
const
gemedicUseModeoptions
=
()
=>
{
http
.
post
(
`/ClinicalRoute/ClinicalRoute/GetStaCRParametersByType?type=1`
,
{}
)
.
then
((
data
)
=>
{
state
.
medicUseModeoptions
=
data
;
})
.
catch
((
error
)
=>
{});
};
//获取频率,频率的下拉数据
const
gemedicUsePlanoptions
=
()
=>
{
http
.
post
(
`/ClinicalRoute/ClinicalRoute/GetStaCRParametersByType?type=2`
,
{}
)
.
then
((
data
)
=>
{
state
.
medicUsePlanoptions
=
data
;
})
.
catch
((
error
)
=>
{});
};
//获取用要目的下拉数据
const
getmedicalPurposeoptions
=
()
=>
{
http
.
post
(
`/ClinicalRoute/ClinicalRoute/GetStaCRParametersByType?type=3`
,
{}
)
.
then
((
data
)
=>
{
state
.
medicalPurposeoptions
=
data
;
})
.
catch
((
error
)
=>
{});
};
//获取患者信息
const
gettopdata
=
()
=>
{
http
.
post
(
`/ClinicalRoute/ClinicalRoute/GetPatientInfo?pid=
${
route
.
value
.
query
.
pid
}
`
,
{}
)
.
then
((
data
)
=>
{
state
.
topdata
=
data
;
state
.
crid
=
data
.
crid
;
getreasonoptions
();
})
.
catch
((
error
)
=>
{});
};
const
setChildren
=
(
children
,
type
)
=>
{
// 编辑多个子层级
children
.
map
((
j
)
=>
{
toggleSelection
(
j
,
type
);
if
(
j
.
children
)
{
setChildren
(
j
.
children
,
type
);
}
});
};
// 选中父节点时,子节点一起选中取消
const
select
=
(
selection
,
row
)
=>
{
console
.
log
(
"row--父节点"
,
row
);
row
.
tickTime
=
transformTimestampnow
();
// 选中
if
(
selection
.
some
((
el
)
=>
{
return
row
.
id
===
el
.
id
;
})
)
{
row
.
ischeck
=
1
;
if
(
row
.
children
)
{
row
.
children
.
map
((
j
)
=>
{
toggleSelection
(
j
,
true
);
});
name
:
"outClinicalpathway"
,
setup
()
{
//表格自适应高度
const
route
=
useRoute
();
const
router
=
useRouter
();
const
fromRef
=
ref
();
const
goSeefromRef
=
ref
();
function
tableLayout
()
{
nextTick
(()
=>
{
fromRef
.
value
.
doLayout
();
});
}
//取消
}
else
{
if
(
row
.
children
)
{
row
.
children
.
map
((
p
)
=>
{
p
.
ischeck
=
2
;
p
.
isClass
=
false
;
const
monthlyPlanTable
=
ref
();
const
multipleTable
=
ref
();
const
transformTime
=
computed
(()
=>
{
return
transformTimestampnow
;
});
toggleSelection
(
p
,
false
);
});
}
else
{
//取消的行数据
row
.
ischeck
=
2
;
}
}
};
// 控制选框是否被选中
const
toggleSelection
=
(
row
,
select
)
=>
{
if
(
row
)
{
// console.log("row-亮", row);
let
state
=
reactive
({
//患者信息
topdata
:
{
patientName
:
""
,
//患者姓名
regCode
:
""
,
// 住院号
inHosNum
:
""
,
// 住院次数
clinical_route_name
:
""
,
// 符合临床路径
},
multipleSelection
:
[],
//被选择的数据
selectArr
:
[],
tableData
:
[],
//表格数据
yztype
:
{
1
:
"长期医嘱"
,
2
:
"临时医嘱"
,
},
//被点击的index
timeindex
:
null
,
case_routeid
:
null
,
//点击左侧时间线的天数id
inhosdays
:
null
,
//点击左侧时间线的天数
//时间线
activities
:
[],
labelPosition
:
"right"
,
editdialogFormVisible
:
false
,
//弹框是否显示
//表单
form
:
{
inhosdays
:
""
,
reason
:
""
,
//变异原因
remarks
:
""
,
//备注
},
//路径天数下拉数据
options
:
[],
reasonoptions
:
[],
//变异原因
crid
:
null
,
chickid
:
[],
//选中的id
nextTick
(()
=>
{
multipleTable
.
value
&&
multipleTable
.
value
.
toggleRowSelection
(
row
,
select
);
chargeTypeoptions
:
[
{
label
:
"是"
,
},
{
label
:
"否"
,
},
],
tempRow
:
{},
//储存正在编辑的行
tempRowChildren
:
[],
medicUseModeoptions
:
[],
//途径
medicUsePlanoptions
:
[],
//频率
medicalPurposeoptions
:
[],
//用药目的
radio
:
1
,
newtable1
:
[],
newtable2
:
[],
objtable
:
{
route1
:
[],
route2
:
[]
},
goSeeScoredialogFormVisible
:
false
,
//更多弹框
goSeeform
:
{},
oldRowObj
:
{},
goSeeIndex
:
""
,
goSeeIndexPid
:
""
,
distype
:
1
,
hisUrl
:
""
,
//his的接口地址
tempMedicalDrug
:
{},
tempMedicalcheck
:
{},
tempMedicalCheckout
:
{},
longMedical
:
{},
});
if
(
select
==
true
)
{
row
.
ischeck
=
1
;
}
else
{
row
.
ischeck
=
2
;
row
.
isClass
=
false
;
}
}
};
//表格禁用
const
selectEnable
=
(
row
,
rowIndex
)
=>
{
if
(
row
.
isForbidden
==
false
)
{
return
false
;
// 不禁用
}
else
{
return
true
;
//禁用
}
};
//表格当前行样式
const
rowClass
=
({
row
,
index
})
=>
{
if
(
row
.
isClass
==
true
)
{
return
"rowStyleclass"
;
}
else
{
return
""
;
}
};
// 选择全部
const
selectAll
=
(
selection
)
=>
{
// tabledata第一层只要有在selection里面就是全选
const
isSelect
=
selection
.
some
((
el
)
=>
{
const
tableDataIds
=
state
.
tableData
.
map
((
j
)
=>
j
.
id
);
return
tableDataIds
.
includes
(
el
.
id
);
});
// tableDate第一层只要有不在selection里面就是全不选
const
isCancel
=
!
state
.
tableData
.
every
((
el
)
=>
{
const
selectIds
=
selection
.
map
((
j
)
=>
j
.
id
);
return
selectIds
.
includes
(
el
.
id
);
});
if
(
isSelect
)
{
selection
.
map
((
el
)
=>
{
if
(
el
.
children
)
{
el
.
children
.
map
((
j
)
=>
{
toggleSelection
(
j
,
true
);
});
}
});
}
if
(
isCancel
)
{
state
.
tableData
.
map
((
el
)
=>
{
if
(
el
.
children
)
{
el
.
children
.
map
((
j
)
=>
{
toggleSelection
(
j
,
false
);
//更多
const
goSeeScore
=
(
row
)
=>
{
console
.
log
(
"state.tableData"
,
state
.
tableData
);
console
.
log
(
"row"
,
row
);
state
.
distype
=
row
.
type
;
state
.
goSeeScoredialogFormVisible
=
true
;
state
.
oldRowObj
=
{
...
row
};
state
.
goSeeform
=
{
...
row
};
state
.
tableData
.
forEach
((
item
,
index
)
=>
{
let
childIndex
=
item
.
children
.
findIndex
((
v
)
=>
v
.
id
==
row
.
id
);
if
(
childIndex
!==
-
1
)
{
state
.
goSeeIndexPid
=
index
;
state
.
goSeeIndex
=
childIndex
;
}
});
}
});
}
};
};
//更多-取消
const
goSeecolse
=
()
=>
{
state
.
goSeeform
=
{};
let
childrenList
=
[...
state
.
tableData
[
state
.
goSeeIndexPid
].
children
];
childrenList
.
splice
(
state
.
goSeeIndex
,
1
,
state
.
oldRowObj
);
state
.
tableData
[
state
.
goSeeIndexPid
].
children
=
childrenList
;
state
.
goSeeScoredialogFormVisible
=
false
;
toggleSelection
(
state
.
oldRowObj
,
true
);
};
//更多--确定
const
goSeeok
=
()
=>
{
let
childrenList
=
[...
state
.
tableData
[
state
.
goSeeIndexPid
].
children
];
childrenList
.
splice
(
state
.
goSeeIndex
,
1
,
state
.
goSeeform
);
state
.
tableData
[
state
.
goSeeIndexPid
].
children
=
childrenList
;
console
.
log
(
state
.
tableData
,
999
);
state
.
goSeeScoredialogFormVisible
=
false
;
toggleSelection
(
state
.
goSeeform
,
true
);
};
//获取途径,频率的下拉数据
const
gemedicUseModeoptions
=
()
=>
{
http
.
post
(
`/ClinicalRoute/ClinicalRoute/GetStaCRParametersByType?type=1`
,
{})
.
then
((
data
)
=>
{
state
.
medicUseModeoptions
=
data
;
})
.
catch
((
error
)
=>
{});
};
//获取频率,频率的下拉数据
const
gemedicUsePlanoptions
=
()
=>
{
http
.
post
(
`/ClinicalRoute/ClinicalRoute/GetStaCRParametersByType?type=2`
,
{})
.
then
((
data
)
=>
{
state
.
medicUsePlanoptions
=
data
;
})
.
catch
((
error
)
=>
{});
};
//获取用要目的下拉数据
const
getmedicalPurposeoptions
=
()
=>
{
http
.
post
(
`/ClinicalRoute/ClinicalRoute/GetStaCRParametersByType?type=3`
,
{})
.
then
((
data
)
=>
{
state
.
medicalPurposeoptions
=
data
;
})
.
catch
((
error
)
=>
{});
};
//当选择项发生变化时会触发该事件
const
SelectionChange
=
(
val
)
=>
{
state
.
multipleSelection
=
val
;
};
//获取患者信息
const
gettopdata
=
()
=>
{
http
.
post
(
`/ClinicalRoute/ClinicalRoute/GetPatientInfo?pid=
${
route
.
value
.
query
.
pid
}
`
,
{})
.
then
((
data
)
=>
{
state
.
topdata
=
data
;
state
.
crid
=
data
.
crid
;
getreasonoptions
();
})
.
catch
((
error
)
=>
{});
};
//获取左侧时间线数据
const
getlefttime
=
()
=>
{
http
.
post
(
`/ClinicalRoute/ClinicalRoute/GetGetRouteAdvicesLeft?pid=
${
route
.
value
.
query
.
pid
}
`
,
{}
)
.
then
((
data
)
=>
{
state
.
activities
=
data
;
state
.
options
=
data
;
const
setChildren
=
(
children
,
type
)
=>
{
// 编辑多个子层级
children
.
map
((
j
)
=>
{
toggleSelection
(
j
,
type
);
if
(
j
.
children
)
{
setChildren
(
j
.
children
,
type
);
}
});
};
state
.
activities
.
every
((
item
)
=>
{
//如果都为true高亮最后一个
if
(
item
.
flag
==
true
)
{
for
(
let
i
=
0
;
i
<
state
.
activities
.
length
;
i
++
)
{
state
.
timeindex
=
state
.
activities
[
state
.
activities
.
length
-
1
].
inhosdays
;
timeclick
(
state
.
activities
[
state
.
activities
.
length
-
1
]);
console
.
log
(
"state.activities[state.activities.length-1]"
,
state
.
activities
[
state
.
activities
.
length
-
1
]
);
}
//如果都为false高亮第一个
}
else
if
(
item
.
flag
==
false
)
{
for
(
let
i
=
0
;
i
<
state
.
activities
.
length
;
i
++
)
{
state
.
timeindex
=
state
.
activities
[
0
].
inhosdays
;
timeclick
(
state
.
activities
[
0
]);
console
.
log
(
"state.activities[0]"
,
state
.
activities
[
0
]);
}
//truehe和false都有高亮第一个false
// 选中父节点时,子节点一起选中取消
const
select
=
(
selection
,
row
)
=>
{
console
.
log
(
"row--父节点"
,
row
);
row
.
tickTime
=
transformTimestampnow
();
// 选中
console
.
log
(
selection
.
some
((
el
)
=>
{
return
row
.
id
===
el
.
id
;
})
);
if
(
selection
.
some
((
el
)
=>
{
return
row
.
id
===
el
.
id
;
})
)
{
row
.
ischeck
=
1
;
if
(
row
.
children
)
{
row
.
children
.
map
((
j
)
=>
{
toggleSelection
(
j
,
true
);
});
}
//取消
}
else
{
let
obj
=
null
;
if
(
row
.
children
)
{
row
.
children
.
map
((
p
)
=>
{
p
.
ischeck
=
2
;
p
.
isClass
=
false
;
//find返回数组中符合条件的第一个元素 有false
state
.
activities
.
find
((
item
)
=>
{
if
(
item
.
flag
==
false
)
{
obj
=
item
;
state
.
timeindex
=
obj
.
inhosdays
;
timeclick
(
obj
);
console
.
log
(
"item--false"
,
item
);
toggleSelection
(
p
,
false
);
});
}
else
{
//取消的行数据
row
.
ischeck
=
2
;
}
});
}
});
})
.
catch
((
error
)
=>
{});
};
//单选
const
radiochange
=
()
=>
{
http
.
post
(
`/ClinicalRoute/ClinicalRoute/GetGetRouteAdvicesRight?pid=
${
route
.
value
.
query
.
pid
}
&case_routeid=
${
state
.
case_routeid
}
&searchQuery=
${
state
.
inhosdays
}
`
,
{}
)
.
then
((
data
)
=>
{
if
(
state
.
radio
==
1
)
{
state
.
tableData
=
data
.
route1
;
state
.
tableData
.
map
((
el
)
=>
{
// console.log(" el",el);
if
(
el
.
children
)
{
for
(
let
i
=
0
;
i
<
el
.
children
.
length
;
i
++
)
{
if
(
el
.
children
[
i
].
ischeck
==
1
)
{
toggleSelection
(
el
.
children
[
i
],
true
);
toggleSelection
(
el
,
true
);
}
};
// 控制选框是否被选中
const
toggleSelection
=
(
row
,
select
)
=>
{
console
.
log
(
row
,
select
);
if
(
row
)
{
// console.log("row-亮", row);
nextTick
(()
=>
{
multipleTable
.
value
&&
multipleTable
.
value
.
toggleRowSelection
(
row
,
select
);
});
if
(
select
==
true
)
{
row
.
ischeck
=
1
;
}
else
{
row
.
ischeck
=
2
;
row
.
isClass
=
false
;
}
}
}
};
// 选择全部
const
selectAll
=
(
selection
)
=>
{
// tabledata第一层只要有在selection里面就是全选
const
isSelect
=
selection
.
some
((
el
)
=>
{
const
tableDataIds
=
state
.
tableData
.
map
((
j
)
=>
j
.
id
);
return
tableDataIds
.
includes
(
el
.
id
);
});
state
.
newtable1
=
state
.
tableData
;
}
else
if
(
state
.
radio
==
2
)
{
state
.
tableData
=
data
.
route2
;
state
.
tableData
.
map
((
el
)
=>
{
// console.log(" el",el);
if
(
el
.
children
)
{
for
(
let
i
=
0
;
i
<
el
.
children
.
length
;
i
++
)
{
if
(
el
.
children
[
i
].
ischeck
==
1
)
{
toggleSelection
(
el
.
children
[
i
],
true
);
toggleSelection
(
el
,
true
);
}
}
}
// tableDate第一层只要有不在selection里面就是全不选
const
isCancel
=
!
state
.
tableData
.
every
((
el
)
=>
{
const
selectIds
=
selection
.
map
((
j
)
=>
j
.
id
);
return
selectIds
.
includes
(
el
.
id
);
});
state
.
newtable2
=
state
.
tableData
;
}
})
.
catch
((
error
)
=>
{});
};
//点击左侧时间线 获取右侧表格数据
const
timeclick
=
(
val
)
=>
{
state
.
timeindex
=
val
.
inhosdays
;
state
.
case_routeid
=
val
.
case_routeid
;
state
.
inhosdays
=
val
.
inhosdays
;
radiochange
();
};
//保存医嘱
const
joinorder
=
()
=>
{
state
.
objtable
.
route1
=
state
.
newtable1
;
state
.
objtable
.
route2
=
state
.
newtable2
;
http
.
post
(
`/ClinicalRoute/ClinicalRoute/SetPatientRoutes?pid=
${
route
.
value
.
query
.
pid
}
`
,
state
.
objtable
)
.
then
((
data
)
=>
{
// console.log("data.hisUrl", data.hisUrl);
state
.
hisUrl
=
data
.
hisUrl
.
split
(
"api/"
)[
2
];
// console.log("state.hisUrl", state.hisUrl);
//临时西药
state
.
tempMedicalDrug
=
data
.
tempMedicalDrug
;
//临时检查
state
.
tempMedicalcheck
=
data
.
tempMedicalcheck
;
//临时检验
state
.
tempMedicalCheckout
=
data
.
tempMedicalCheckout
;
//长期西药
state
.
longMedical
=
data
.
longMedical
;
// 调用his接口 临时西药
http
.
post
(
`/
${
state
.
hisUrl
}
`
,
{
method
:
"tempMedical"
,
type
:
1
,
data
:
state
.
tempMedicalDrug
,
})
.
then
((
data
)
=>
{
//重新获取左侧时间线数据
getlefttime
();
Message
({
message
:
data
.
message
,
type
:
"success"
,
});
console
.
log
(
"临时西药"
);
if
(
data
.
code
==
"0"
)
{
Message
({
message
:
`临时西药
${
data
.
msg
}
`
,
type
:
"success"
,
if
(
isSelect
)
{
selection
.
map
((
el
)
=>
{
if
(
el
.
children
)
{
el
.
children
.
map
((
j
)
=>
{
toggleSelection
(
j
,
true
);
});
}
});
}
else
if
(
data
.
code
==
"1"
)
{
Message
({
message
:
`临时西药失败`
,
type
:
"error"
,
}
if
(
isCancel
)
{
state
.
tableData
.
map
((
el
)
=>
{
if
(
el
.
children
)
{
el
.
children
.
map
((
j
)
=>
{
toggleSelection
(
j
,
false
);
});
}
});
}
})
.
catch
((
error
)
=>
{});
}
};
// 调用his接口 临时检查
http
.
post
(
`/
${
state
.
hisUrl
}
`
,
{
method
:
"tempMedical"
,
type
:
3
,
data
:
state
.
tempMedicalcheck
,
})
.
then
((
data
)
=>
{
console
.
log
(
"临时检查"
);
if
(
data
.
code
==
"0"
)
{
Message
({
message
:
`临时
${
data
.
msg
}
`
,
type
:
"success"
,
});
}
else
if
(
data
.
code
==
"1"
)
{
Message
({
message
:
`临时检查失败`
,
type
:
"error"
,
});
}
})
.
catch
((
error
)
=>
{});
//当选择项发生变化时会触发该事件
const
SelectionChange
=
(
val
)
=>
{
state
.
multipleSelection
=
val
;
};
// 调用his接口 临时检验
http
.
post
(
`/
${
state
.
hisUrl
}
`
,
{
method
:
"tempMedical"
,
type
:
4
,
data
:
state
.
tempMedicalCheckout
,
})
.
then
((
data
)
=>
{
console
.
log
(
"临时检验"
);
if
(
data
.
code
==
"0"
)
{
Message
({
message
:
`临时
${
data
.
msg
}
`
,
type
:
"success"
,
//获取左侧时间线数据
const
getlefttime
=
()
=>
{
http
.
post
(
`/ClinicalRoute/ClinicalRoute/GetGetRouteAdvicesLeft?pid=
${
route
.
value
.
query
.
pid
}
`
,
{})
.
then
((
data
)
=>
{
state
.
activities
=
data
;
state
.
options
=
data
;
if
(
state
.
activities
.
filter
((
item
)
=>
item
.
flag
).
length
==
state
.
activities
.
length
)
{
state
.
timeindex
=
state
.
activities
[
state
.
activities
.
length
-
1
].
inhosdays
;
timeclick
(
state
.
activities
[
state
.
activities
.
length
-
1
]);
}
if
(
state
.
activities
.
filter
((
item
)
=>
!
item
.
flag
).
length
==
state
.
activities
.
length
)
{
state
.
timeindex
=
state
.
activities
[
0
].
inhosdays
;
timeclick
(
state
.
activities
[
0
]);
}
else
{
state
.
timeindex
=
state
.
activities
.
filter
((
item
)
=>
!
item
.
flag
)[
0
].
inhosdays
;
timeclick
(
state
.
activities
.
filter
((
item
)
=>
!
item
.
flag
)[
0
]);
}
})
.
catch
((
error
)
=>
{
router
.
push
({
path
:
"Entrypath"
,
query
:
{
pid
:
route
.
value
.
query
.
pid
,
},
});
});
}
else
if
(
data
.
code
==
"1"
)
{
Message
({
message
:
`临时检验失败`
,
type
:
"error"
,
});
}
})
.
catch
((
error
)
=>
{});
};
//单选
const
radiochange
=
()
=>
{
http
.
post
(
`/ClinicalRoute/ClinicalRoute/GetGetRouteAdvicesRight?pid=
${
route
.
value
.
query
.
pid
}
&case_routeid=
${
state
.
case_routeid
}
&searchQuery=
${
state
.
inhosdays
}
`
,
{}
)
.
then
((
data
)
=>
{
if
(
state
.
radio
==
1
)
{
state
.
tableData
=
data
.
route1
;
state
.
tableData
.
map
((
el
)
=>
{
// console.log(" el",el);
if
(
el
.
children
)
{
for
(
let
i
=
0
;
i
<
el
.
children
.
length
;
i
++
)
{
if
(
el
.
children
[
i
].
ischeck
==
1
)
{
toggleSelection
(
el
.
children
[
i
],
true
);
toggleSelection
(
el
,
true
);
}
}
}
});
state
.
newtable1
=
state
.
tableData
;
}
else
if
(
state
.
radio
==
2
)
{
state
.
tableData
=
data
.
route2
;
state
.
tableData
.
map
((
el
)
=>
{
// console.log(" el",el);
if
(
el
.
children
)
{
for
(
let
i
=
0
;
i
<
el
.
children
.
length
;
i
++
)
{
if
(
el
.
children
[
i
].
ischeck
==
1
)
{
toggleSelection
(
el
.
children
[
i
],
true
);
toggleSelection
(
el
,
true
);
}
}
}
});
state
.
newtable2
=
state
.
tableData
;
}
})
.
catch
((
error
)
=>
{});
};
//点击左侧时间线 获取右侧表格数据
const
timeclick
=
(
val
)
=>
{
state
.
timeindex
=
val
.
inhosdays
;
state
.
case_routeid
=
val
.
case_routeid
;
state
.
inhosdays
=
val
.
inhosdays
;
radiochange
();
};
//保存医嘱
const
joinorder
=
()
=>
{
state
.
objtable
.
route1
=
state
.
newtable1
;
state
.
objtable
.
route2
=
state
.
newtable2
;
http
.
post
(
`/ClinicalRoute/ClinicalRoute/SetPatientRoutes?pid=
${
route
.
value
.
query
.
pid
}
`
,
state
.
objtable
)
.
then
((
data
)
=>
{
// console.log("data.hisUrl", data.hisUrl);
state
.
hisUrl
=
data
.
hisUrl
.
split
(
"api/"
)[
2
];
// console.log("state.hisUrl", state.hisUrl);
//临时西药
state
.
tempMedicalDrug
=
data
.
tempMedicalDrug
;
//临时检查
state
.
tempMedicalcheck
=
data
.
tempMedicalcheck
;
//临时检验
state
.
tempMedicalCheckout
=
data
.
tempMedicalCheckout
;
//长期西药
state
.
longMedical
=
data
.
longMedical
;
// 调用his接口 长期西药
http
.
post
(
`/
${
state
.
hisUrl
}
`
,
{
method
:
"longMedical"
,
type
:
1
,
data
:
state
.
longMedical
,
})
.
then
((
data
)
=>
{
console
.
log
(
"长期西药"
);
if
(
data
.
code
==
"0"
)
{
Message
({
message
:
`长期西药
${
data
.
msg
}
`
,
type
:
"success"
,
});
}
else
if
(
data
.
code
==
"1"
)
{
Message
({
message
:
`长期西药失败`
,
type
:
"error"
,
});
}
})
.
catch
((
error
)
=>
{});
})
// 调用his接口 临时西药
http
.
post
(
`/
${
state
.
hisUrl
}
`
,
{
method
:
"tempMedical"
,
type
:
1
,
data
:
state
.
tempMedicalDrug
,
})
.
then
((
data
)
=>
{
//重新获取左侧时间线数据
getlefttime
();
Message
({
message
:
data
.
message
,
type
:
"success"
,
});
console
.
log
(
"临时西药"
);
if
(
data
.
code
==
"0"
)
{
Message
({
message
:
`临时西药
${
data
.
msg
}
`
,
type
:
"success"
,
});
}
else
if
(
data
.
code
==
"1"
)
{
Message
({
message
:
`临时西药失败`
,
type
:
"error"
,
});
}
})
.
catch
((
error
)
=>
{});
.
catch
((
error
)
=>
{});
};
//获取病情变异--变异原因下拉框
const
getreasonoptions
=
()
=>
{
http
.
post
(
`/ClinicalRoute/ClinicalRoute/GetStandardByType?crid=
${
state
.
crid
}
`
,
{}
)
.
then
((
data
)
=>
{
state
.
reasonoptions
=
data
;
})
.
catch
((
error
)
=>
{});
};
// 调用his接口 临时检查
http
.
post
(
`/
${
state
.
hisUrl
}
`
,
{
method
:
"tempMedical"
,
type
:
3
,
data
:
state
.
tempMedicalcheck
,
})
.
then
((
data
)
=>
{
console
.
log
(
"临时检查"
);
if
(
data
.
code
==
"0"
)
{
Message
({
message
:
`临时
${
data
.
msg
}
`
,
type
:
"success"
,
});
}
else
if
(
data
.
code
==
"1"
)
{
Message
({
message
:
`临时检查失败`
,
type
:
"error"
,
});
}
})
.
catch
((
error
)
=>
{});
//病情变异
const
variation
=
()
=>
{
state
.
editdialogFormVisible
=
true
;
};
// 调用his接口 临时检验
http
.
post
(
`/
${
state
.
hisUrl
}
`
,
{
method
:
"tempMedical"
,
type
:
4
,
data
:
state
.
tempMedicalCheckout
,
})
.
then
((
data
)
=>
{
console
.
log
(
"临时检验"
);
if
(
data
.
code
==
"0"
)
{
Message
({
message
:
`临时
${
data
.
msg
}
`
,
type
:
"success"
,
});
}
else
if
(
data
.
code
==
"1"
)
{
Message
({
message
:
`临时检验失败`
,
type
:
"error"
,
});
}
})
.
catch
((
error
)
=>
{});
//确定
const
fromOKbtn
=
(
fromRef
)
=>
{
let
prome
=
{
pid
:
route
.
value
.
query
.
pid
,
reason
:
state
.
form
.
reason
,
inhosdays
:
state
.
form
.
inhosdays
,
remarks
:
state
.
form
.
remarks
,
};
// 调用his接口 长期西药
http
.
post
(
`/
${
state
.
hisUrl
}
`
,
{
method
:
"longMedical"
,
type
:
1
,
data
:
state
.
longMedical
,
})
.
then
((
data
)
=>
{
console
.
log
(
"长期西药"
);
if
(
data
.
code
==
"0"
)
{
Message
({
message
:
`长期西药
${
data
.
msg
}
`
,
type
:
"success"
,
});
}
else
if
(
data
.
code
==
"1"
)
{
Message
({
message
:
`长期西药失败`
,
type
:
"error"
,
});
}
})
.
catch
((
error
)
=>
{});
})
http
.
post
(
`/ClinicalRoute/ClinicalRoute/SetVariation`
,
prome
)
.
then
((
data
)
=>
{
Message
({
message
:
data
.
message
,
type
:
"success"
,
});
(
state
.
form
=
{
inhosdays
:
""
,
reason
:
""
,
}),
(
state
.
editdialogFormVisible
=
false
);
.
catch
((
error
)
=>
{});
};
//获取病情变异--变异原因下拉框
const
getreasonoptions
=
()
=>
{
http
.
post
(
`/ClinicalRoute/ClinicalRoute/GetStandardByType?crid=
${
state
.
crid
}
`
,
{})
.
then
((
data
)
=>
{
state
.
reasonoptions
=
data
;
})
.
catch
((
error
)
=>
{});
};
router
.
push
({
path
:
"Entrypath"
,
query
:
{
pid
:
route
.
value
.
query
.
pid
,
},
});
})
.
catch
((
error
)
=>
{});
};
//取消
const
close
=
()
=>
{
(
state
.
form
=
{
inhosdays
:
""
,
reason
:
""
,
}),
(
state
.
editdialogFormVisible
=
false
);
};
//下拉框鼠标移上显示提示文字
const
getTitle
=
(
val
)
=>
{
if
(
val
!=
""
)
{
let
a
=
state
.
reasonoptions
.
filter
((
item
)
=>
item
.
describe
==
val
);
return
a
[
0
].
describe
;
}
};
//病情变异
const
variation
=
()
=>
{
state
.
editdialogFormVisible
=
true
;
};
//确定
const
fromOKbtn
=
(
fromRef
)
=>
{
let
prome
=
{
pid
:
route
.
value
.
query
.
pid
,
reason
:
state
.
form
.
reason
,
inhosdays
:
state
.
form
.
inhosdays
,
remarks
:
state
.
form
.
remarks
,
};
http
.
post
(
`/ClinicalRoute/ClinicalRoute/SetVariation`
,
prome
)
.
then
((
data
)
=>
{
Message
({
message
:
data
.
message
,
type
:
"success"
,
});
(
state
.
form
=
{
inhosdays
:
""
,
reason
:
""
,
}),
(
state
.
editdialogFormVisible
=
false
);
router
.
push
({
path
:
"Entrypath"
,
query
:
{
pid
:
route
.
value
.
query
.
pid
,
},
});
})
.
catch
((
error
)
=>
{});
};
//取消
const
close
=
()
=>
{
(
state
.
form
=
{
inhosdays
:
""
,
reason
:
""
,
}),
(
state
.
editdialogFormVisible
=
false
);
};
//下拉框鼠标移上显示提示文字
const
getTitle
=
(
val
)
=>
{
if
(
val
!=
""
)
{
let
a
=
state
.
reasonoptions
.
filter
((
item
)
=>
item
.
describe
==
val
);
return
a
[
0
].
describe
;
}
};
onMounted
(()
=>
{
gettopdata
();
getlefttime
();
gemedicUseModeoptions
();
gemedicUsePlanoptions
();
getmedicalPurposeoptions
();
});
onMounted
(()
=>
{
gettopdata
();
getlefttime
();
gemedicUseModeoptions
();
gemedicUsePlanoptions
();
getmedicalPurposeoptions
();
});
return
{
...
toRefs
(
state
),
return
{
...
toRefs
(
state
),
decimal
,
decimal
,
monthlyPlanTable
,
multipleTable
,
SelectionChange
,
gettopdata
,
getlefttime
,
timeclick
,
setChildren
,
select
,
toggleSelection
,
selectAll
,
variation
,
fromOKbtn
,
fromRef
,
close
,
joinorder
,
getreasonoptions
,
getTitle
,
confirm
,
tableLayout
,
gemedicUseModeoptions
,
gemedicUsePlanoptions
,
radiochange
,
getmedicalPurposeoptions
,
transformTime
,
goSeeok
,
goSeeScore
,
goSeefromRef
,
goSeecolse
,
selectEnable
,
rowClass
,
};
},
monthlyPlanTable
,
multipleTable
,
SelectionChange
,
gettopdata
,
getlefttime
,
timeclick
,
setChildren
,
select
,
toggleSelection
,
selectAll
,
variation
,
fromOKbtn
,
fromRef
,
close
,
joinorder
,
getreasonoptions
,
getTitle
,
confirm
,
tableLayout
,
gemedicUseModeoptions
,
gemedicUsePlanoptions
,
radiochange
,
getmedicalPurposeoptions
,
transformTime
,
goSeeok
,
goSeeScore
,
goSeefromRef
,
goSeecolse
,
selectEnable
,
rowClass
,
};
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
...
...
@@ -1158,258 +870,258 @@ export default {
@import
"../styles/media/components/outClinicalpathway.scss"
;
//
选中当前行样式
::v-deep
.rowStyleclass
{
font-weight
:
700
;
font-weight
:
700
;
}
//
时间线样式
::v-deep
.el-timeline-item__tail
{
left
:
0
!important
;
height
:
0
!important
;
left
:
0
!important
;
height
:
0
!important
;
}
::v-deep
.el-timeline-item
{
padding-bottom
:
5px
!important
;
display
:
flex
!important
;
align-items
:
end
!important
;
padding-bottom
:
5px
!important
;
display
:
flex
!important
;
align-items
:
end
!important
;
}
::v-deep
.el-timeline-item__wrapper
{
padding-left
:
29px
!important
;
margin-right
:
30px
!important
;
top
:
3px
!important
;
display
:
flex
!important
;
align-items
:
end
!important
;
padding-left
:
29px
!important
;
margin-right
:
30px
!important
;
top
:
3px
!important
;
display
:
flex
!important
;
align-items
:
end
!important
;
}
::v-deep
.el-timeline-item__node--normal
{
margin-left
:
15px
!important
;
margin-left
:
15px
!important
;
}
//
单选框
::v-deep
.el-radio__input.is-checked
.el-radio__inner
{
background-color
:
#0085ba
!important
;
border-color
:
#1097e0
!important
;
background-color
:
#0085ba
!important
;
border-color
:
#1097e0
!important
;
}
::v-deep
.el-radio__input.is-checked
+
.el-radio__label
{
color
:
#0085ba
!important
;
color
:
#0085ba
!important
;
}
//
多选框选中状态背景颜色
::v-deep
.el-checkbox__input.is-checked
.el-checkbox__inner
{
background-color
:
#0085ba
!important
;
border-color
:
#1097e0
!important
;
background-color
:
#0085ba
!important
;
border-color
:
#1097e0
!important
;
}
::v-deep
.el-table--scrollable-x
.el-table__body-wrapper
{
height
:
688px
!important
;
overflow-y
:
auto
!important
;
height
:
688px
!important
;
overflow-y
:
auto
!important
;
}
//
滚动条的宽度
::v-deep
.el-table__body-wrapper
::-webkit-scrollbar
{
/*滚动条整体样式*/
width
:
10px
;
/*高宽分别对应横竖滚动条的尺寸*/
height
:
10px
;
background-color
:
#ffff
;
/*滚动条整体样式*/
width
:
10px
;
/*高宽分别对应横竖滚动条的尺寸*/
height
:
10px
;
background-color
:
#ffff
;
}
//
滚动条的滑块
::v-deep
.el-table__body-wrapper
::-webkit-scrollbar-thumb
{
background-color
:
#27aae2
;
border
:
3px
solid
transparent
;
border-radius
:
9px
;
background-clip
:
content-box
;
background-color
:
#27aae2
;
border
:
3px
solid
transparent
;
border-radius
:
9px
;
background-clip
:
content-box
;
}
::v-deep
.el-table__body-wrapper
::-webkit-scrollbar-track
{
/*滚动条里面轨道*/
border-radius
:
20px
;
background
:
#ffff
;
width
:
10px
;
/*滚动条里面轨道*/
border-radius
:
20px
;
background
:
#ffff
;
width
:
10px
;
}
.outClinicalpathway
{
//
height
:
calc
(
100%
-
50px
);
//
background-color
:
white
;
//
padding
:
20px
;
//
position
:
relative
;
//
overflow
:
hidden
;
height
:
900px
;
background-color
:
#f0f0f0
;
//
padding
:
10px
;
overflow
:
hidden
;
position
:
relative
;
&_top
{
width
:
100%
;
height
:
12%
;
margin-bottom
:
5px
;
//
height
:
calc
(
100%
-
50px
);
//
background-color
:
white
;
//
padding
:
20px
;
//
position
:
relative
;
//
overflow
:
hidden
;
height
:
900px
;
background-color
:
#f0f0f0
;
display
:
flex
;
flex-direction
:
column
;
&_bg
{
width
:
100%
;
height
:
15%
;
background-color
:
#0283bb
;
}
&
_coent
{
width
:
100%
;
height
:
50%
;
background-color
:
#ffff
;
display
:
flex
;
margin-bottom
:
5px
;
&_left
{
height
:
100%
;
//
padding
:
10px
;
overflow
:
hidden
;
position
:
relative
;
&_top
{
width
:
100%
;
height
:
12%
;
margin-bottom
:
5px
;
background-color
:
#f0f0f0
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
&_one
{
width
:
98%
;
height
:
80%
;
background-color
:
#f2fafd
;
margin-bottom
:
10px
;
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
margin-top
:
10px
;
span
{
width
:
3%
;
height
:
100%
;
font-size
:
14px
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
}
&
_t1
{
width
:
24%
;
height
:
80%
;
margin-right
:
5px
;
flex-direction
:
column
;
&_bg
{
width
:
100%
;
height
:
15%
;
background-color
:
#0283bb
;
}
&
_coent
{
width
:
100%
;
height
:
50%
;
background-color
:
#ffff
;
display
:
flex
;
align-items
:
center
;
color
:
#acacac
;
font-weight
:
400
;
padding-left
:
20px
;
margin-left
:
10px
;
span
{
width
:
80%
;
height
:
80%
;
color
:
#181617
;
display
:
flex
;
justify-content
:
flex-start
;
align-items
:
center
;
margin-bottom
:
5px
;
&_left
{
height
:
100%
;
width
:
100%
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
&_one
{
width
:
98%
;
height
:
80%
;
background-color
:
#f2fafd
;
margin-bottom
:
10px
;
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
margin-top
:
10px
;
span
{
width
:
3%
;
height
:
100%
;
font-size
:
14px
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
}
&
_t1
{
width
:
24%
;
height
:
80%
;
margin-right
:
5px
;
background-color
:
#ffff
;
display
:
flex
;
align-items
:
center
;
color
:
#acacac
;
font-weight
:
400
;
padding-left
:
20px
;
margin-left
:
10px
;
span
{
width
:
80%
;
height
:
80%
;
color
:
#181617
;
display
:
flex
;
justify-content
:
flex-start
;
align-items
:
center
;
}
}
&
_t2
{
width
:
24%
;
height
:
80%
;
margin-right
:
5px
;
background-color
:
#ffff
;
display
:
flex
;
align-items
:
center
;
color
:
#acacac
;
font-weight
:
400
;
padding-left
:
20px
;
span
{
width
:
80%
;
height
:
80%
;
color
:
#181617
;
display
:
flex
;
justify-content
:
flex-start
;
align-items
:
center
;
}
}
&
_t3
{
width
:
24%
;
height
:
80%
;
margin-right
:
5px
;
background-color
:
#ffff
;
margin-right
:
10px
;
display
:
flex
;
align-items
:
center
;
color
:
#acacac
;
font-weight
:
400
;
padding-left
:
20px
;
span
{
width
:
80%
;
height
:
80%
;
color
:
#181617
;
display
:
flex
;
justify-content
:
flex-start
;
align-items
:
center
;
}
}
&
_t4
{
width
:
24%
;
height
:
80%
;
background-color
:
#ffff
;
margin-right
:
5px
;
display
:
flex
;
align-items
:
center
;
color
:
#acacac
;
font-weight
:
400
;
padding-left
:
20px
;
span
{
width
:
60%
;
height
:
80%
;
color
:
#181617
;
display
:
flex
;
justify-content
:
flex-start
;
align-items
:
center
;
}
}
}
}
}
&
_t2
{
width
:
24%
;
height
:
80%
;
margin-right
:
5px
;
background-color
:
#ffff
;
display
:
flex
;
align-items
:
center
;
color
:
#acacac
;
font-weight
:
400
;
padding-left
:
20px
;
span
{
width
:
80%
;
height
:
80%
;
color
:
#181617
;
display
:
flex
;
justify-content
:
flex-start
;
align-items
:
center
;
&
_right
{
height
:
100%
;
width
:
20%
;
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
&_btn
{
height
:
50%
;
width
:
100%
;
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
}
}
}
&
_t3
{
width
:
24%
;
height
:
80%
;
margin-right
:
5px
;
background-color
:
#ffff
;
margin-right
:
10px
;
display
:
flex
;
align-items
:
center
;
color
:
#acacac
;
font-weight
:
400
;
}
&
_time
{
width
:
100%
;
height
:
35%
;
background
:
#ffff
;
padding-left
:
20px
;
span
{
width
:
80%
;
height
:
80%
;
color
:
#181617
;
display
:
flex
;
justify-content
:
flex-start
;
align-items
:
center
;
}
}
&
_t4
{
width
:
24%
;
height
:
80%
;
background-color
:
#ffff
;
margin-right
:
5px
;
display
:
flex
;
align-items
:
center
;
color
:
#acacac
;
font-weight
:
400
;
padding-left
:
20px
;
span
{
width
:
60%
;
height
:
80%
;
color
:
#181617
;
display
:
flex
;
justify-content
:
flex-start
;
align-items
:
center
;
&_timespan
{
width
:
100%
;
height
:
20px
;
display
:
flex
;
background-color
:
#0283bb
;
border-radius
:
20px
;
margin-right
:
10px
;
span
{
color
:
#ffff
;
}
}
&
_timespan2
{
width
:
100%
;
height
:
20px
;
display
:
flex
;
}
}
}
}
&
_right
{
height
:
100%
;
width
:
20%
;
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
&_btn
{
height
:
50%
;
width
:
100%
;
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
}
}
}
&
_time
{
width
:
100%
;
height
:
35%
;
background
:
#ffff
;
padding-left
:
20px
;
display
:
flex
;
align-items
:
center
;
&_timespan
{
width
:
100%
;
height
:
20px
;
display
:
flex
;
background-color
:
#0283bb
;
border-radius
:
20px
;
margin-right
:
10px
;
span
{
color
:
#ffff
;
}
}
&
_timespan2
{
&
_table
{
height
:
84%
;
width
:
100%
;
height
:
20px
;
display
:
flex
;
}
}
}
&
_table
{
height
:
84%
;
width
:
100%
;
display
:
flex
;
&_right
{
width
:
100%
;
height
:
100%
;
&_radio
{
width
:
100%
;
height
:
8%
;
background
:
#ffff
;
display
:
flex
;
align-items
:
center
;
padding-left
:
10px
;
}
&_right
{
width
:
100%
;
height
:
100%
;
&_radio
{
width
:
100%
;
height
:
8%
;
background
:
#ffff
;
display
:
flex
;
align-items
:
center
;
padding-left
:
10px
;
}
}
}
}
}
</
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