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
提交
54004433
提交
54004433
编写于
1月 13, 2021
作者:
huangwensu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
删除多余的文件
上级
401188a6
变更
9
展开全部
显示空白字符变更
内嵌
并排
正在显示
9 个修改的文件
包含
9 行增加
和
3827 行删除
+9
-3827
router.js
src/router/router.js
+9
-44
edit.vue
src/views/IM/waiting-session/edit.vue
+0
-583
add-edit.vue
src/views/discuss/add-edit.vue
+0
-582
index.vue
src/views/discuss/index.vue
+0
-340
question-list.vue
src/views/question-naire/question-list.vue
+0
-990
index.vue
src/views/report/index.vue
+0
-315
reportSet.vue
src/views/report/reportSet.vue
+0
-284
add-edit.vue
src/views/topicManage/add-edit.vue
+0
-306
index.vue
src/views/topicManage/index.vue
+0
-383
未找到文件。
src/router/router.js
浏览文件 @
54004433
import
App
from
'../App'
const
home
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/home'
)),
'home'
)
const
blank
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/blank'
)),
'blank'
)
const
discuss
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/discuss/index.vue'
)),
'index'
)
const
creatDiscuss
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/discuss/add-edit.vue'
)),
'creatDiscuss'
)
const
questionNaire
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/question-naire/question-list.vue'
)),
'questionNaire'
)
const
topicList
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/topicManage/index.vue'
)),
'topicList'
)
const
reportSet
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/report/reportSet.vue'
)),
'reportSet'
)
// 等待会话
const
waitingSessionList
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/IM/waiting-session/list.vue'
)),
'waitingSessionList'
)
const
waitingSessionEdit
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/IM/waiting-session/edit.vue'
)),
'waitingSessionEdit'
)
const
searchMessageList
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/IM/search-message/list.vue'
)),
'
waitingSession
List'
)
const
searchMessageDetail
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/IM/search-message/detail.vue'
)),
'
waitingSessionEdit
'
)
const
searchMessageList
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/IM/search-message/list.vue'
)),
'
searchMessage
List'
)
const
searchMessageDetail
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/IM/search-message/detail.vue'
)),
'
searchMessageDetail
'
)
// 当前会话
const
currentSessionIndex
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/IM/current-session/index.vue'
)),
'currentMessageIndex'
)
const
currentSessionDetail
=
r
=>
require
.
ensure
([],
()
=>
r
(
require
(
'../views/IM/current-session/detail.vue'
)),
'currentMessageDetail'
)
...
...
@@ -25,13 +16,13 @@ export default [{
children
:
[
{
path
:
''
,
redirect
:
'/
home
'
redirect
:
'/
waiting-session-list
'
},
{
path
:
'/
waiting-session-list
'
,
path
:
'/
home
'
,
component
:
waitingSessionList
},
{
path
:
'/waiting-session-
edi
t'
,
component
:
waitingSession
Edi
t
path
:
'/waiting-session-
lis
t'
,
component
:
waitingSession
Lis
t
},
{
path
:
'/search-message-list'
,
component
:
searchMessageList
...
...
@@ -44,33 +35,7 @@ export default [{
},
{
path
:
'/current-session-detail'
,
component
:
currentSessionDetail
},
{
path
:
'/questionNaire'
,
component
:
questionNaire
},
{
path
:
'/home'
,
component
:
home
},
{
path
:
'/discuss-list'
,
component
:
discuss
},
{
path
:
'/creat-discuss'
,
component
:
creatDiscuss
},
{
path
:
'/question-naire'
,
component
:
questionNaire
},
{
path
:
'/topic-list'
,
component
:
topicList
},
{
path
:
'/report-set'
,
component
:
reportSet
},
}
]
}]
\ No newline at end of file
src/views/IM/waiting-session/edit.vue
已删除
100644 → 0
浏览文件 @
401188a6
此差异已折叠。
点击以展开。
src/views/discuss/add-edit.vue
已删除
100644 → 0
浏览文件 @
401188a6
此差异已折叠。
点击以展开。
src/views/discuss/index.vue
已删除
100644 → 0
浏览文件 @
401188a6
此差异已折叠。
点击以展开。
src/views/question-naire/question-list.vue
已删除
100644 → 0
浏览文件 @
401188a6
此差异已折叠。
点击以展开。
src/views/report/index.vue
已删除
100644 → 0
浏览文件 @
401188a6
此差异已折叠。
点击以展开。
src/views/report/reportSet.vue
已删除
100644 → 0
浏览文件 @
401188a6
<
template
>
<div
class=
"item-component-wrap"
>
<bread-crumb
:curmbFirst=
"curmbFirst"
:curmbSecond=
"curmbSecond"
>
</bread-crumb>
<div
class=
"component-content screenSet"
id=
"screenSet"
>
<div
class=
"search-title"
>
预警邮箱
</div>
<el-row
:gutter=
"30"
class=
"row"
type=
"flex"
style=
"margin-top: 10px;"
v-for=
"(item,index) in reportData"
:key=
"index"
>
<el-form
label-width=
"75px"
style=
"width:100%;"
>
<el-col
:span=
"5"
>
<el-form-item
label=
"姓名:"
>
<el-input
clearable
v-model=
"item.userName"
size=
"mini"
placeholder=
"请输入接收人姓名"
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"5"
>
<el-form-item
label=
"Dr.id:"
>
<el-input
clearable
v-model=
"item.doctorId"
size=
"mini"
placeholder=
"请输入doctorId"
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"9"
>
<el-form-item
label=
"邮箱地址:"
>
<el-col
:span=
"12"
style=
"padding-right: 5px;"
>
<el-input
clearable
v-model=
"item.email"
size=
"mini"
placeholder=
"请输入邮箱前缀"
></el-input>
</el-col>
<div
class=
'email-h'
>
@picahealth.com
</div>
</el-form-item>
</el-col>
<el-col
:span=
"2"
>
<div
class=
"opt-icon"
>
<i
class=
"el-icon-circle-plus-outline"
@
click=
"add"
></i>
<i
class=
"el-icon-remove-outline"
@
click=
"remove(index)"
v-if=
"index > 0"
></i>
</div>
</el-col>
</el-form>
</el-row>
<div
class=
"opt-btn"
>
<el-button
type=
"primary"
size=
"small"
@
click=
"save"
:disabled=
"isSaveBack"
>
保存
</el-button>
<el-button
size=
"small"
class=
"button-white"
@
click=
"goBack"
>
返回
</el-button>
</div>
</div>
</div>
</
template
>
<
script
>
import
BreadCrumb
from
'../../components/breadcrumb.vue'
import
{
doUpload
,
getFilePath
}
from
"../../utils/qiniu-util"
import
{
validateWord
}
from
"../../utils/validate.js"
import
{
mapGetters
}
from
'vuex'
import
{
openLoading
,
closeLoading
}
from
'../../utils/utils'
import
*
as
commonUtil
from
'../../utils/utils'
let
vm
=
null
export
default
{
components
:
{
BreadCrumb
},
data
()
{
return
{
curmbFirst
:
'组件'
,
curmbSecond
:
'举报设置'
,
reportData
:[],
isSaveBack
:
false
,
}
},
computed
:
{
...
mapGetters
([
'_token'
,
'idType'
])
},
created
()
{
this
.
getData
()
},
// 挂载到Dom完成时
mounted
:
function
()
{
commonUtil
.
resizeHeight
()
},
methods
:
{
//返回
goBack
(){
this
.
$router
.
back
(
-
1
)
},
//保存
save
(){
let
index
=
this
.
handelData
(
this
.
reportData
)
console
.
log
(
index
)
if
(
index
==
1
){
this
.
$message
({
message
:
'姓名、邮箱或doctorId不能为空!'
,
type
:
'warning'
});
return
;
}
if
(
index
==
2
){
this
.
$message
({
message
:
'doctorId已存在'
,
type
:
'warning'
});
return
;
}
if
(
index
==
3
){
this
.
$message
({
message
:
'doctorId只能是大于0的纯数字!'
,
type
:
'warning'
,
});
return
;
}
let
d
=
this
.
handelEmail
(
this
.
reportData
,
2
)
let
parm
=
{
informConfigs
:
d
}
//JSON.stringify(this.reportData)
this
.
loading
=
true
;
this
.
isSaveBack
=
true
;
this
.
POST
(
'/interaction/informConfig/insertAdmin'
,
parm
).
then
((
res
)
=>
{
this
.
loading
=
false
if
(
res
.
code
==
'000000'
)
{
this
.
$message
({
message
:
'保存成功!'
,
type
:
'success'
});
}
else
{
this
.
$message
({
message
:
res
.
message
,
type
:
'warning'
});
}
setTimeout
(()
=>
{
this
.
isSaveBack
=
false
;
},
2000
)
})
},
add
(){
this
.
reportData
.
push
(
{
"doctorId"
:
''
,
"email"
:
""
,
"userName"
:
""
},
)
},
remove
(
index
){
this
.
reportData
.
splice
(
index
,
1
);
},
//保存
saveFun
(){
},
handelData
(
d
){
console
.
log
(
d
)
let
index
=
null
,
hash
=
[],
r
=
/^
[
1-9
]
+
\d
*$/
;
for
(
let
i
=
0
;
i
<
d
.
length
;
i
++
){
let
parm
=
String
(
d
[
i
].
doctorId
)
if
(
d
[
i
].
doctorId
==
''
||
d
[
i
].
userName
==
''
||
d
[
i
].
email
==
''
){
index
=
1
break
;
}
if
(
!
r
.
test
(
d
[
i
].
doctorId
)){
console
.
log
(
d
[
i
].
doctorId
)
index
=
3
break
;
}
if
(
hash
.
indexOf
(
parm
)
==
-
1
){
hash
.
push
(
parm
)
}
else
{
index
=
2
;
break
;
}
}
return
index
;
},
//处理邮箱展示
handelEmail
(
d
,
str
){
let
A
=
[],
parm
=
{};
for
(
let
i
=
0
;
i
<
d
.
length
;
i
++
){
parm
=
{...
d
[
i
]}
if
(
str
==
1
){
parm
[
'email'
]
=
d
[
i
].
email
.
split
(
"@"
)[
0
]
}
else
if
(
str
==
2
){
parm
[
'email'
]
=
d
[
i
].
email
+
'@picahealth.com'
}
A
.
push
(
parm
)
}
console
.
log
(
A
)
return
A
;
},
//获取数据
getData
(){
let
parm
=
{
pageNo
:
1
,
pageSize
:
20
}
this
.
GET
(
'/interaction/informConfig/getInformList'
,
parm
).
then
((
res
)
=>
{
if
(
res
.
code
==
'000000'
)
{
if
(
res
.
data
.
length
==
0
){
this
.
reportData
=
[{
"doctorId"
:
''
,
"email"
:
""
,
"userName"
:
""
},]
}
else
{
this
.
reportData
=
this
.
handelEmail
(
res
.
data
,
1
)
||
[]
}
}
else
{
this
.
$message
({
message
:
res
.
message
,
type
:
'warning'
});
}
})
},
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.item-component-wrap
{
.component-content
{
padding
:
10px
;
background
:
#fff
;
// margin: 84px 20px 20px;
.search-title
{
padding
:
10px
12px
;
font-size
:
12px
;
color
:
#449284
;
border-bottom
:
1px
solid
#efefef
;
}
.create-button
{
padding
:
0
0
15px
;
margin-top
:
0
!
important
;
text-align
:
right
;
}
.table-empty
{
img
{
width
:
100px
;
}
p
{
margin-top
:
-50px
;
}
}
.opt-icon
{
line-height
:
40px
;
i
{
margin-right
:
10px
;
}
}
.opt-btn
{
text-align
:
center
}
.email-h
{
float
:
left
;
}
}
}
</
style
>
src/views/topicManage/add-edit.vue
已删除
100644 → 0
浏览文件 @
401188a6
<
template
>
<el-dialog
:title=
"title"
:visible
.
sync=
"dialogFormVisible"
@
close=
"optFun('1')"
>
<el-form
:model=
"form"
class=
"topicOpt"
>
<el-form-item
label=
"主题"
:label-width=
"formLabelWidth"
required
>
<el-input
v-model=
"objInfo.topic.subject"
auto-complete=
"off"
clearable
size=
"mini"
:maxLength=
"max"
placeholder=
"请输入主题(最长60个字符)"
></el-input>
</el-form-item>
<el-form-item
label=
"内容"
:label-width=
"formLabelWidth"
>
<el-input
type=
"textarea"
v-model=
"objInfo.topic.content"
auto-complete=
"off"
clearable
size=
"mini"
:maxLength=
"maxL"
placeholder=
"请输入主题(最长1000个字符)"
rows=
"5"
></el-input>
</el-form-item>
<el-form-item
label=
"话题配图"
:label-width=
"formLabelWidth"
class=
"teste1"
>
<!--
<el-upload
action=
"#"
list-type=
"picture-card"
:file-list=
"fileList"
:on-change=
"selectImg"
:on-preview=
"handlePictureCardPreview"
:on-remove=
"handleRemove"
>
<i
class=
"el-icon-plus"
></i>
-->
<el-upload
action=
"#"
list-type=
"picture-card"
:file-list=
"fileList"
:on-preview=
"handlePictureCardPreview"
:on-remove=
"handleRemove"
:before-upload=
"beforeAvatarUpload"
>
<i
class=
"el-icon-plus"
></i>
</el-upload>
<el-dialog
:visible
.
sync=
"dialogVisible"
size=
"tiny"
:modal=
"false"
:close-on-click-modal=
"false"
>
<img
width=
"100%"
:src=
"dialogImageUrl"
alt=
""
>
</el-dialog>
</el-form-item>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"optFun('1')"
size=
"mini"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"optFun('2')"
size=
"mini"
:disabled=
"isRequestBack"
>
确 定
</el-button>
</div>
</el-dialog>
</
template
>
<
script
>
import
{
doUpload
,
getFilePath
}
from
"../../utils/qiniu-util"
;
import
{
mapGetters
}
from
"vuex"
;
import
{
openLoading
,
closeLoading
}
from
"../../utils/utils"
;
import
*
as
commonUtil
from
"../../utils/utils"
;
let
vm
=
null
;
export
default
{
data
()
{
return
{
formLabelWidth
:
"80px"
,
form
:{},
id
:
null
,
dialogImageUrl
:
''
,
max
:
60
,
maxL
:
1000
,
dialogVisible
:
false
,
dialogFormVisible
:
false
,
fileList
:[],
title
:
'编辑话题'
,
reType
:
[
'PUT'
,
'POST'
],
isEdit
:
false
,
objInfo
:{
topic
:{
subject
:
''
,
content
:
''
},
images
:[]
},
isRequestBack
:
false
,
};
},
props
:{
isShow
:{
default
:
false
,
type
:
Boolean
},
editInfo
:{
default
:()
=>
{},
type
:
Object
},
discussId
:{
default
:
0
,
type
:
Number
}
},
computed
:
{
...
mapGetters
([
"_token"
,
"idType"
]),
},
created
()
{
this
.
dialogFormVisible
=
this
.
isShow
if
(
this
.
editInfo
.
topic
){
this
.
isEdit
=
true
;
this
.
objInfo
=
this
.
editInfo
;
this
.
objInfo
.
topic
.
content
=
this
.
objInfo
.
topic
.
content
.
replace
(
/ /g
,
" "
);
}
else
{
this
.
title
=
'新增话题'
this
.
isEdit
=
false
}
console
.
log
(
this
.
editInfo
);
if
(
this
.
objInfo
.
images
.
length
>
0
){
for
(
let
i
=
0
;
i
<
this
.
objInfo
.
images
.
length
;
i
++
){
this
.
fileList
.
push
({
url
:
this
.
objInfo
.
images
[
i
].
imageurl
,
imageurl
:
this
.
objInfo
.
images
[
i
].
imageurl
,
id
:
this
.
objInfo
.
images
[
i
].
id
})
}
}
},
// 挂载到Dom完成时
mounted
:
function
()
{
},
methods
:
{
handlePictureCardPreview
(
file
){
//console.log(file)
this
.
dialogImageUrl
=
file
.
url
;
this
.
dialogVisible
=
true
;
},
selectImg
(
file
){
//console.log(file)
this
.
fileList
.
push
({
url
:
file
.
url
,
imageurl
:
file
.
url
,
})
},
beforeAvatarUpload
(
file
){
//console.log(file)
let
imgTypes
=
[
'jpg'
,
'png'
,
'gif'
,
'jpeg'
]
if
(
file
.
type
){
let
fileType
=
file
.
type
.
split
(
'/'
)[
1
];
if
(
imgTypes
.
indexOf
(
fileType
)
==
-
1
){
this
.
showError
(
'上传图片格式仅支持png、jpg、jpeg、gif '
);
return
false
;
}
}
else
{
this
.
showError
(
'上传图片格式仅支持png,jpg,jpeg,gif!'
);
return
false
;
}
// console.log(this.fileList)
if
(
this
.
fileList
.
length
>
5
){
// /、this.$message.info('图片个数不能超过6个')
this
.
showError
(
'上传图片个数不能超过6个'
);
return
false
;
}
this
.
imgDoUpload
(
file
,
4
,
2048
,
400
,
400
)
},
imgDoUpload
(
file
,
urlType
,
size
,
w
,
h
)
{
let
vm
=
this
;
const
isSize
=
file
.
size
/
1024
<
size
;
if
(
!
isSize
)
{
//vm.$message.info('上传图片要小于' + size + 'k')
//vm.$message.info('上传图片要小于2M')
vm
.
showError
(
'上传图片要小于2M'
);
return
;
}
var
_img
=
new
FileReader
()
_img
.
readAsDataURL
(
file
)
_img
.
onload
=
function
(
theFile
)
{
let
image
=
new
Image
()
image
.
src
=
theFile
.
target
.
result
image
.
onload
=
function
()
{
let
_this
=
this
vm
.
$message
.
info
(
'开始上传'
);
doUpload
(
vm
,
file
,
getFilePath
(
file
,
null
),
'preview4'
,
'progress1'
,
1
).
then
(
function
(
path
)
{
//console.log(path)
vm
.
fileList
.
push
({
url
:
path
.
fullPath
,
imageurl
:
path
.
fullPath
})
vm
.
$message
.
success
(
'上传成功'
)
}).
catch
((
res
)
=>
{
console
.
log
(
res
)
});
}
}
},
handleRemove
(
file
,
fileList
){
let
index
=
null
;
if
(
this
.
fileList
.
length
>
0
){
for
(
let
i
=
0
;
i
<
this
.
fileList
.
length
;
i
++
){
if
(
file
.
url
==
this
.
fileList
[
i
].
url
){
index
=
i
;
break
;
}
}
if
(
index
!=
null
){
this
.
fileList
.
splice
(
index
,
1
)
}
//console.log(file)
//console.log(this.fileList)
}
},
optFun
(
index
){
if
(
index
==
1
){
this
.
dialogFormVisible
=
false
;
this
.
$emit
(
'setFun'
,
false
)
}
else
if
(
index
==
2
){
this
.
subFun
()
}
},
//返回
goBack
(){
this
.
$router
.
back
(
-
1
)
},
showError
(
str
){
//console.log(str)
this
.
$message
({
message
:
str
,
type
:
'warning'
});
},
//保存修改讨论组件详细
subFun
(){
let
A
=
this
.
isEdit
?
this
.
reType
[
0
]
:
this
.
reType
[
1
];
let
_this
=
this
;
if
(
this
.
objInfo
.
topic
.
subject
.
length
==
0
){
this
.
showError
(
'请输入主题!'
);
return
;
}
// 加入话题内容识别宫格
let
placeContent
=
this
.
objInfo
.
topic
.
content
.
replace
(
/ /gi
,
' '
);
let
parm
=
{
topic
:{
subject
:
this
.
objInfo
.
topic
.
subject
,
// content:this.objInfo.topic.content,
content
:
placeContent
,
discussid
:
this
.
objInfo
.
topic
.
discussid
||
this
.
discussId
,
id
:
this
.
objInfo
.
topic
.
id
||
null
,
official
:
true
},
images
:
this
.
fileList
}
this
.
isRequestBack
=
true
;
this
[
A
](
'/interaction/topic/'
,
parm
).
then
((
res
)
=>
{
if
(
res
.
code
==
'000000'
)
{
this
.
$message
({
message
:
'操作成功!'
,
type
:
'success'
});
setTimeout
(()
=>
{
this
.
isRequestBack
=
false
;
this
.
$emit
(
'setFun'
,
true
)
},
2000
)
}
else
{
this
.
isRequestBack
=
false
;
this
.
$message
({
message
:
res
.
message
,
type
:
'error'
});
}
}).
catch
(
function
(
error
)
{
///console.log()
//_this.$message.error('接口异常请联系管理员');
});
}
}
};
</
script
>
<
style
lang=
"scss"
scoped
>
.topicOpt
{
.el-form-item__content
{
width
:
80%
;
}
.el-upload--picture-card
{
height
:
80px
;
width
:
80px
;
line-height
:
80px
;
}
.el-upload-list--picture-card
.el-upload-list__item
{
width
:
80px
;
height
:
80px
;
}
.el-form-item__label
{
// line-height: 26px;
}
}
</
style
>
\ No newline at end of file
src/views/topicManage/index.vue
已删除
100644 → 0
浏览文件 @
401188a6
此差异已折叠。
点击以展开。
写
预览
Markdown
格式
0%
请重试
or
附加一个文件
附加文件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录