Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
P
pica-admin-consultation
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
Close sidebar
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
com.pica.cloud.education.frontend
pica-admin-consultation
提交
97a48ab4
提交
97a48ab4
编写于
8月 03, 2021
作者:
张磊
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
diagnose advice
上级
d7cd3fb0
变更
4
隐藏空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
216 行增加
和
199 行删除
+216
-199
diagnoseAdvice.vue
src/components/common/diagnoseAdvice.vue
+201
-191
inquirylist.vue
src/components/common/inquirylist.vue
+11
-2
RtcClient.js
src/utils/RtcClient.js
+1
-1
workbench.vue
src/views/IM/diagnosis-admin/workbench.vue
+3
-5
未找到文件。
src/components/common/diagnoseAdvice.vue
浏览文件 @
97a48ab4
<
template
>
<div
class=
"diagnoseAdvice"
v-drag
v-if=
"showAdvice"
>
<div
class=
"header"
>
<span
class=
"headernum"
>
问诊单
{{
currentAdvice
.
diagnoseId
}}
诊断建议
</span>
<el-button
@
click=
"closeadvice"
>
退出
</el-button></div>
<div
class=
"center"
v-stopdrag
>
<span>
诊断建议
</span>
<el-input
rows=
"10"
type=
"textarea"
v-model=
"diagnoseAdvice"
placeholder=
"请输入内容"
></el-input>
</div>
<div
class=
"record"
>
<span>
录音/录像
</span>
<div
v-if=
"currentAdvice.adviceAudioUrls!=undefined &¤tAdvice.adviceAudioUrls.length > 0"
>
<div
v-for=
"itemAudio in currentAdvice.adviceAudioUrls"
:key=
"itemAudio.diagnoseId"
>
<el-link
:href=
"itemAudio"
target=
"_blank"
>
{{
itemAudio
}}
</el-link>
</div>
</div>
<span
style=
"color:#0D9078"
v-else
>
无音频
</span>
</div>
<div
class=
"footer"
>
<el-button
type=
"primary"
style=
"height:35px"
@
click=
"SaveAdvice()"
>
提交保存
</el-button>
</div>
</div>
</
template
>
<
script
>
import
{
mapState
}
from
"vuex"
;
export
default
{
data
()
{
return
{
}
},
props
:{
showAdvice
:{
type
:
Boolean
,
default
:
false
},
},
created
()
{
},
mounted
()
{
},
computed
:{
...
mapState
({
currentAdvice
:
'currentAdvice'
,
}),
diagnoseAdvice
:{
get
:
function
()
{
return
this
.
currentAdvice
.
content
},
set
(
val
){
this
.
currentAdvice
.
content
=
val
}
}
},
methods
:{
SaveAdvice
()
{
let
params
=
{
adviceAudioUrls
:
this
.
currentAdvice
.
adviceAudioUrls
,
content
:
this
.
diagnoseAdvice
,
diagnoseId
:
11
,
//id需要获取
illnessAudioUrls
:
this
.
currentAdvice
.
illnessAudioUrls
}
// if(!this.formData.advice) return
this
.
POST
(
'/diagnose/admin/diagnose/doctorAdvice/create'
,
params
).
then
(
res
=>
{
if
(
res
.
code
==
"000000"
){
this
.
$message
({
message
:
"保存成功"
,
type
:
"success"
,
});
this
.
closeadvice
()
}
}).
catch
(
err
=>
{
console
.
log
(
err
);
})
},
closeadvice
()
{
this
.
$store
.
commit
(
'updateShowAdvice'
,
false
);
}
},
directives
:
{
drag
:
{
// 指令的定义
bind
:
function
(
el
)
{
let
odiv
=
el
;
//获取当前元素
el
.
onmousedown
=
(
e
)
=>
{
//算出鼠标相对元素的位置
let
disX
=
e
.
clientX
-
odiv
.
offsetLeft
;
let
disY
=
e
.
clientY
-
odiv
.
offsetTop
;
let
left
=
''
;
let
top
=
''
;
document
.
onmousemove
=
(
e
)
=>
{
//用鼠标的位置减去鼠标相对元素的位置,得到元素的位置
left
=
e
.
clientX
-
disX
;
top
=
e
.
clientY
-
disY
;
//绑定元素位置到positionX和positionY上面
//移动当前元素
odiv
.
style
.
left
=
left
+
'px'
;
odiv
.
style
.
top
=
top
+
'px'
;
};
document
.
onmouseup
=
(
e
)
=>
{
document
.
onmousemove
=
null
;
document
.
onmouseup
=
null
;
};
};
}
},
stopdrag
:
{
inserted
:
function
(
el
,
binding
,
vnode
)
{
let
element
=
el
;
element
.
onmousedown
=
function
(
e
)
{
e
.
stopPropagation
()
}
}
}
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.diagnoseAdvice
{
position
:
absolute
;
top
:
125px
;
right
:
20px
;
z-index
:
1000
;
width
:
500px
;
height
:
600px
;
padding
:
5px
5px
5px
6px
;
background
:
#ffffff
;
box-shadow
:
10px
10px
50px
0px
#d9d9d9
;
overflow
:
hidden
;
border-radius
:
18px
;
.header
{
height
:
60px
;
border-bottom
:
1px
rgb
(
231
,
228
,
228
)
solid
;
display
:
flex
;
justify-content
:
space-between
;
padding-left
:
15px
;
margin-bottom
:
30px
;
.headernum
{
font-weight
:
700
;
line-height
:
60px
;
}
.el-button
{
width
:
85px
;
height
:
25px
;
margin-top
:
17px
;
margin-right
:
17px
;
line-height
:
0
;
border-color
:
#9fba81
;
color
:
#9fba81
;
>
span
{
font-weight
:
700
;
}
}
}
.center
{
display
:
flex
;
margin-right
:
28px
;
margin-bottom
:
30px
;
height
:
210px
;
>
span
{
display
:
inline-block
;
margin-top
:
5px
;
width
:
110px
;
}
.el-textarea
{
height
:
110px
;
.el-textarea__inner
{
height
:
110px
;
}
}
}
.record
{
padding-left
:
28px
;
margin-top
:
45px
;
}
.footer
{
position
:
absolute
;
width
:
500px
;
height
:
50px
;
bottom
:
0
;
left
:
0
;
text-align
:
center
;
margin-top
:
5px
;
display
:
flex
;
align-items
:center
;
justify-content
:center
;
box-shadow
:
0px
0px
5px
#888888
;
}
}
</
style
>
\ No newline at end of file
<
template
>
<div
class=
"diagnoseAdvice-wrap"
v-drag
v-if=
"showAdvice"
>
<div
class=
"header"
>
<span
class=
"headernum"
>
问诊单
{{
currentAdvice
.
diagnoseId
}}
诊断建议
</span>
<el-button
@
click=
"closeadvice"
>
退出
</el-button></div>
<div
class=
"center"
v-stopdrag
>
<span>
诊断建议
</span>
<el-input
rows=
"10"
type=
"textarea"
v-model=
"diagnoseAdvice"
placeholder=
"请输入内容"
></el-input>
</div>
<div
class=
"record"
>
<span>
录音/录像:
</span>
<div
v-if=
"currentAdvice.adviceAudioUrls!=undefined &¤tAdvice.adviceAudioUrls.length > 0"
>
<div
v-for=
"itemAudio in currentAdvice.adviceAudioUrls"
:key=
"itemAudio.diagnoseId"
>
<el-link
:href=
"itemAudio"
target=
"_blank"
>
{{
itemAudio
}}
</el-link>
</div>
</div>
<span
style=
"color:#0D9078"
v-else
>
无音频
</span>
</div>
<div
class=
"record flex"
>
<span>
诊断建议:
</span>
<div
class=
"record-music"
>
<upload-music
:musicList=
"illnessAudioUrls"
ref=
"musicComponent"
></upload-music>
</div>
</div>
<div
class=
"footer"
>
<el-button
type=
"primary"
style=
"height:35px"
@
click=
"SaveAdvice"
>
提交保存
</el-button>
</div>
</div>
</
template
>
<
script
>
import
{
mapState
}
from
"vuex"
;
import
uploadMusic
from
'@/components/editor/upload-music'
export
default
{
components
:
{
uploadMusic
},
data
()
{
return
{
diagnoseAdvice
:
''
,
illnessAudioUrls
:[]
}
},
props
:{
showAdvice
:{
type
:
Boolean
,
default
:
false
},
},
created
()
{
},
mounted
()
{
},
computed
:{
...
mapState
({
currentAdvice
:
'currentAdvice'
,
}),
},
methods
:{
SaveAdvice
()
{
if
(
this
.
diagnoseAdvice
.
trim
()
===
''
){
this
.
$message
({
message
:
"请填写诊断建议"
,
type
:
"success"
,
});
return
false
;
}
const
url
=
this
.
$refs
.
musicComponent
?
[...
this
.
$refs
.
musicComponent
.
setNewArr
()]
:
[];
let
params
=
{
adviceAudioUrls
:
this
.
currentAdvice
.
adviceAudioUrls
,
content
:
this
.
diagnoseAdvice
,
diagnoseId
:
this
.
currentAdvice
.
diagnoseId
,
//id需要获取
illnessAudioUrls
:
url
}
this
.
POST
(
'/diagnose/admin/diagnose/doctorAdvice/create'
,
params
).
then
(
res
=>
{
if
(
res
.
code
==
"000000"
){
this
.
$message
({
message
:
"保存成功"
,
type
:
"success"
,
});
this
.
closeadvice
()
}
}).
catch
(
err
=>
{
console
.
log
(
err
);
})
},
closeadvice
()
{
this
.
diagnoseAdvice
=
''
;
this
.
$store
.
commit
(
'updateShowAdvice'
,
false
);
}
},
directives
:
{
drag
:
{
// 指令的定义
bind
:
function
(
el
)
{
let
odiv
=
el
;
//获取当前元素
el
.
onmousedown
=
(
e
)
=>
{
//算出鼠标相对元素的位置
let
disX
=
e
.
clientX
-
odiv
.
offsetLeft
;
let
disY
=
e
.
clientY
-
odiv
.
offsetTop
;
let
left
=
''
;
let
top
=
''
;
document
.
onmousemove
=
(
e
)
=>
{
//用鼠标的位置减去鼠标相对元素的位置,得到元素的位置
left
=
e
.
clientX
-
disX
;
top
=
e
.
clientY
-
disY
;
//绑定元素位置到positionX和positionY上面
//移动当前元素
odiv
.
style
.
left
=
left
+
'px'
;
odiv
.
style
.
top
=
top
+
'px'
;
};
document
.
onmouseup
=
(
e
)
=>
{
document
.
onmousemove
=
null
;
document
.
onmouseup
=
null
;
};
};
}
},
stopdrag
:
{
inserted
:
function
(
el
,
binding
,
vnode
)
{
let
element
=
el
;
element
.
onmousedown
=
function
(
e
)
{
e
.
stopPropagation
()
}
}
}
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.diagnoseAdvice-wrap
{
position
:
absolute
;
top
:
125px
;
right
:
20px
;
z-index
:
1000
;
width
:
500px
;
//height: 600px;
padding
:
5px
5px
5px
6px
;
background
:
#ffffff
;
box-shadow
:
10px
10px
50px
0px
#d9d9d9
;
overflow
:
hidden
;
border-radius
:
18px
;
.header
{
height
:
60px
;
border-bottom
:
1px
rgb
(
231
,
228
,
228
)
solid
;
display
:
flex
;
justify-content
:
space-between
;
padding-left
:
15px
;
margin-bottom
:
30px
;
.headernum
{
font-weight
:
700
;
line-height
:
60px
;
}
.el-button
{
width
:
85px
;
height
:
25px
;
margin-top
:
17px
;
margin-right
:
17px
;
line-height
:
0
;
border-color
:
#9fba81
;
color
:
#9fba81
;
>
span
{
font-weight
:
700
;
}
}
}
.center
{
display
:
flex
;
margin-right
:
28px
;
margin-bottom
:
30px
;
height
:
210px
;
>
span
{
display
:
inline-block
;
margin-top
:
5px
;
width
:
110px
;
}
.el-textarea
{
height
:
110px
;
.el-textarea__inner
{
height
:
110px
;
}
}
}
.record
{
padding-left
:
28px
;
margin-top
:
45px
;
}
.flex
{
display
:
flex
;
.record-music
{
flex
:
1
;
}
}
.footer
{
bottom
:
0
;
left
:
0
;
text-align
:
center
;
margin-top
:
5px
;
}
}
</
style
>
src/components/common/inquirylist.vue
浏览文件 @
97a48ab4
...
...
@@ -184,15 +184,24 @@ export default {
});
return
false
;
}
this
.
GET
(
`/diagnose/admin/diagnose/doctorAdvice/list/11`
).
then
(
res
=>
{
const
i
=
this
.
item
.
diagnoseLogId
;
// const i = 11;
this
.
GET
(
`/diagnose/admin/diagnose/doctorAdvice/list/
${
i
}
`
).
then
(
res
=>
{
if
(
res
.
code
==
'000000'
){
console
.
log
(
res
.
data
);
this
.
$store
.
commit
(
'updateShowAdvice'
,
true
);
this
.
$store
.
commit
(
'updateCurrentAdvice'
,
res
.
data
);
}
else
{
this
.
$message
({
message
:
res
.
message
,
type
:
"warning"
,
duration
:
1000
});
}
}).
catch
(
err
=>
{
console
.
log
(
err
);
})
this
.
$store
.
commit
(
'updateShowAdvice'
,
true
);
}
}
}
...
...
src/utils/RtcClient.js
浏览文件 @
97a48ab4
...
...
@@ -54,7 +54,7 @@ class RtcClient {
userId
:
this
.
userId_
,
mirror
:
true
});
this
.
startRTC
()
//
this.startRTC()
}
catch
(
e
)
{
console
.
error
(
'加入房间失败 '
+
e
);
this
.
vueInstance
.
reloadfn
()
...
...
src/views/IM/diagnosis-admin/workbench.vue
浏览文件 @
97a48ab4
...
...
@@ -20,12 +20,10 @@
</el-row>
<!-- tab栏 -->
<el-radio-group
@
change=
"tabChange"
v-model=
"tabPosition"
style=
"margin-bottom: 30px;"
>
<el-radio-button
label=
"99"
>
全部(
{{
currentCalList
}}
)
</el-radio-button>
<el-radio-button
v-for=
"(item, index) in currentCalList"
:key=
"'for'+index"
:label=
"item.status"
>
{{
item
.
statusStr
}}
(
{{
item
.
count
}}
)
</el-radio-button>
<el-radio-button
label=
"1"
>
待处理(
{{
currentCalList
}}
)
</el-radio-button>
<el-radio-button
label=
"2"
>
问诊中(
{{
currentCalList
}}
)
</el-radio-button>
<el-radio-button
label=
"3"
>
未开始(
{{
currentCalList
}}
)
</el-radio-button>
<el-radio-button
label=
"4"
>
已结束(
{{
currentCalList
}}
)
</el-radio-button>
<el-radio-button
label=
"5"
>
已取消(
{{
currentCalList
}}
)
</el-radio-button>
</el-radio-group>
<div
class=
"forbox"
>
<div
class=
"for"
v-for=
"(item, index) in currentDiagList"
:key=
"'for'+index"
>
...
...
写
预览
Markdown
格式
0%
请重试
or
附加一个文件
附加文件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录