Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
peizhen-vue
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
PeiZhen-Java
peizhen-vue
Commits
4f01ef78
Commit
4f01ef78
authored
Sep 08, 2023
by
honghong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
业务模块
parent
fb91970a
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
284 additions
and
116 deletions
+284
-116
src/api/operation/business.js
+27
-0
src/views/operation/article/index.vue
+30
-23
src/views/operation/banner/index.vue
+24
-20
src/views/operation/business/index.vue
+154
-34
src/views/operation/news/index.vue
+25
-20
src/views/operation/notice/index.vue
+24
-19
No files found.
src/api/operation/business.js
View file @
4f01ef78
...
...
@@ -42,3 +42,29 @@ export function delBusiness(id) {
method
:
'delete'
})
}
//获取服务详细信息
export
function
getServe
(
id
)
{
return
request
({
url
:
'system/services/'
+
id
,
method
:
'get'
})
}
// 新增服务
export
function
addServe
(
data
)
{
return
request
({
url
:
'/system/services'
,
method
:
'post'
,
data
:
data
})
}
// 修改服务
export
function
updateServe
(
data
)
{
return
request
({
url
:
'/system/services'
,
method
:
'put'
,
data
:
data
})
}
\ No newline at end of file
src/views/operation/article/index.vue
View file @
4f01ef78
...
...
@@ -96,13 +96,11 @@
</
template
>
</el-table-column>
<el-table-column
label=
"城市"
align=
"center"
prop=
"cityId"
/>
<el-table-column
label=
"内容"
align=
"center"
prop=
"content"
/>
<el-table-column
label=
"收藏数"
align=
"center"
prop=
"content"
/>
<el-table-column
label=
"点赞数"
align=
"center"
prop=
"content"
/>
<el-table-column
label=
"评论数"
align=
"center"
prop=
"content"
/>
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"content"
/>
<el-table-column
label=
"更新时间"
align=
"center"
prop=
"content"
/>
<el-table-column
label=
"城市"
align=
"center"
prop=
"cityName"
/>
<el-table-column
label=
"内容"
align=
"center"
prop=
"content"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"收藏数"
align=
"center"
prop=
"appreciateNum"
/>
<el-table-column
label=
"点赞数"
align=
"center"
prop=
"collectNum"
/>
<el-table-column
label=
"评论数"
align=
"center"
prop=
""
/>
<el-table-column
label=
"操作"
...
...
@@ -148,12 +146,17 @@
</el-input>
</el-form-item>
<el-form-item
label=
"城市"
prop=
"cityId"
>
<el-select
v-model=
"form.cityId"
placeholder=
"请选择"
>
<el-select
filterable
clearable
v-model=
"form.cityId"
placeholder=
"请选择"
>
<el-option
v-for=
"item in cityList"
:key=
"item.
value
"
:label=
"item.
label
"
:value=
"item.
value
"
v-for=
"item in city
Vo
List"
:key=
"item.
id
"
:label=
"item.
name
"
:value=
"item.
id
"
>
</el-option>
</el-select>
...
...
@@ -183,6 +186,7 @@ import {
addArticle
,
updateArticle
,
}
from
"@/api/operation/article"
;
import
{
cityVoListGET
}
from
"@/api/hispotalManage/hospital"
;
export
default
{
name
:
"Article"
,
...
...
@@ -221,21 +225,16 @@ export default {
// 表单参数
form
:
{},
// 表单校验
rules
:
{},
cityList
:
[
{
value
:
"1"
,
label
:
"北京"
,
},
{
value
:
"2"
,
label
:
"上海"
,
},
],
rules
:
{
cityId
:
[{
required
:
true
,
message
:
"请选择城市"
,
trigger
:
"change"
}],
},
cityVoList
:
[],
};
},
created
()
{
this
.
getList
();
this
.
cityVoListAxios
();
},
methods
:
{
/** 查询文章列表 */
...
...
@@ -247,6 +246,13 @@ export default {
this
.
loading
=
false
;
});
},
async
cityVoListAxios
()
{
const
data_back
=
await
cityVoListGET
();
const
{
code
,
data
}
=
data_back
;
if
(
code
===
200
)
{
this
.
cityVoList
=
data
;
}
},
// 取消按钮
cancel
()
{
this
.
open
=
false
;
...
...
@@ -364,3 +370,4 @@ export default {
},
};
</
script
>
src/views/operation/banner/index.vue
View file @
4f01ef78
...
...
@@ -81,7 +81,7 @@
prop=
"site"
:formatter=
"getSiteName"
/>
<el-table-column
label=
"城市"
align=
"center"
prop=
"city
Id
"
/>
<el-table-column
label=
"城市"
align=
"center"
prop=
"city
Name
"
/>
<el-table-column
label=
"图片"
align=
"center"
prop=
"imgUrl"
>
<template
slot-scope=
"
{ row }">
<el-image
...
...
@@ -97,7 +97,7 @@
<el-table-column
label=
"状态"
align=
"center"
prop=
"status"
>
<
template
slot-scope=
"scope"
>
<el-switch
@
change=
"handleChangeStatus($event,scope.row)"
@
change=
"handleChangeStatus($event,
scope.row)"
v-model=
"scope.row.status"
:active-value=
"1"
:inactive-value=
"0"
...
...
@@ -144,7 +144,7 @@
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"80px"
>
<el-form-item
label=
"位置"
prop=
"site"
>
<!-- <el-input v-model="form.site" placeholder="请输入位置" /> -->
<el-select
v-model=
"form.site"
placeholder=
"请选择"
>
<el-select
clearable
v-model=
"form.site"
placeholder=
"请选择"
>
<el-option
v-for=
"item in placeOptions"
:key=
"item.value"
...
...
@@ -155,16 +155,20 @@
</el-select>
</el-form-item>
<el-form-item
label=
"城市"
prop=
"cityId"
>
<el-select
v-model=
"form.cityId"
placeholder=
"请选择"
>
<el-select
filterable
clearable
v-model=
"form.cityId"
placeholder=
"请选择"
>
<el-option
v-for=
"item in cityList"
:key=
"item.
value
"
:label=
"item.
label
"
:value=
"item.
value
"
v-for=
"item in city
Vo
List"
:key=
"item.
id
"
:label=
"item.
name
"
:value=
"item.
id
"
>
</el-option>
</el-select>
<!-- <el-input v-model="form.cityId" placeholder="请输入城市" /> -->
</el-form-item>
<el-form-item
label=
"描述"
prop=
"descr"
>
...
...
@@ -219,6 +223,7 @@ import {
addCarousel
,
updateCarousel
,
}
from
"@/api/operation/carousel"
;
import
{
cityVoListGET
}
from
"@/api/hispotalManage/hospital"
;
export
default
{
name
:
"Carousel"
,
...
...
@@ -281,20 +286,12 @@ export default {
label
:
"商城首页"
,
},
],
cityList
:
[
{
value
:
"1"
,
label
:
"北京"
,
},
{
value
:
"2"
,
label
:
"上海"
,
},
],
cityVoList
:
[],
};
},
created
()
{
this
.
getList
();
this
.
cityVoListAxios
();
},
methods
:
{
/** 查询轮播图列表 */
...
...
@@ -306,12 +303,19 @@ export default {
this
.
loading
=
false
;
});
},
async
cityVoListAxios
()
{
const
data_back
=
await
cityVoListGET
();
const
{
code
,
data
}
=
data_back
;
if
(
code
===
200
)
{
this
.
cityVoList
=
data
;
}
},
// 获取位置名称
getSiteName
(
e
)
{
return
e
.
site
==
1
?
"首页"
:
e
.
site
==
2
?
"商城首页"
:
""
;
},
// 修改状态
handleChangeStatus
(
e
,
row
)
{
handleChangeStatus
(
e
,
row
)
{
updateCarousel
(
row
)
.
then
((
response
)
=>
{
this
.
$modal
.
msgSuccess
(
"修改成功"
);
...
...
src/views/operation/business/index.vue
View file @
4f01ef78
...
...
@@ -96,21 +96,33 @@
<el-table-column
label=
"业务名称"
align=
"center"
prop=
"name"
/>
<el-table-column
label=
"服务"
align=
"center"
prop=
"name"
>
<template
slot-scope=
"
{ row }">
<el-button
type=
"text"
@
click=
"toogleExpand(row)"
>
查看服务
</el-button>
<el-button
type=
"text"
>
查看服务
</el-button>
</
template
>
</el-table-column>
<el-table-column
type=
"expand"
>
<
template
slot-scope=
"props"
>
<el-table
key=
"inside"
:data=
"props.row.childres"
>
<el-table-column
prop=
"a"
label=
"服务名称"
></el-table-column>
<el-table-column
prop=
"a"
label=
"封面"
/>
<el-table
key=
"inside"
:data=
"props.row.servicesVoList"
>
<el-table-column
prop=
"name"
label=
"服务名称"
></el-table-column>
<el-table-column
prop=
"cover"
label=
"封面"
>
<template
slot-scope=
"
{ row }">
<el-image
style=
"width: 30px; height: 30px"
:src=
"row.cover"
:preview-src-list=
"[row.cover]"
>
</el-image>
</
template
>
</el-table-column>
<el-table-column
prop=
"a"
label=
"高价"
/>
<el-table-column
prop=
"a"
label=
"价格"
/>
<el-table-column
prop=
"a"
label=
"平台分成"
/>
<el-table-column
prop=
"a"
label=
"时长(小时)"
/>
<el-table-column
prop=
"a"
label=
"超时计费/30分钟"
/>
<el-table-column
prop=
"a"
label=
"服务时段"
/>
<el-table-column
label=
"更新时间"
align=
"center"
prop=
"name"
/>
<el-table-column
prop=
"price"
label=
"价格"
/>
<el-table-column
prop=
"fenmo"
label=
"平台分成"
/>
<el-table-column
prop=
"duration"
label=
"时长(小时)"
/>
<el-table-column
prop=
"overtime"
label=
"超时计费/30分钟"
/>
<el-table-column
label=
"服务时段"
>
<
template
slot-scope=
"{ row }"
>
<span>
{{
row
.
startTime
}}
-
{{
row
.
endTime
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
align=
"center"
...
...
@@ -185,6 +197,86 @@
<el-button
@
click=
"cancel"
>
取 消
</el-button>
</div>
</el-dialog>
<el-dialog
title=
"修改服务"
:visible
.
sync=
"openServe"
width=
"50%"
append-to-body
>
<div
class=
"hidden-dialog"
>
<el-form
ref=
"serveForm"
:model=
"serveForm"
:rules=
"serveRules"
label-width=
"80px"
>
<el-form-item
label=
"服务名称"
prop=
"name"
>
<el-input
v-model=
"serveForm.name"
placeholder=
"请输入内容"
>
<
template
slot=
"prepend"
>
<i
class=
"el-icon-edit"
></i>
</
template
>
</el-input>
</el-form-item>
<el-form-item
label=
"Cover"
prop=
"cover"
>
<imageUpload
v-model=
"serveForm.cover"
></imageUpload>
</el-form-item>
<el-form-item
label=
"高价"
prop=
""
>
<el-input
placeholder=
"请输入"
>
<
template
slot=
"prepend"
>
¥
</
template
>
</el-input>
</el-form-item>
<el-form-item
label=
"价格"
prop=
"price"
>
<el-input
v-model=
"serveForm.price"
placeholder=
"请输入"
>
<
template
slot=
"prepend"
>
¥
</
template
>
</el-input>
</el-form-item>
<el-form-item
label=
"平台分成"
prop=
"fenmo"
>
<el-input
v-model=
"serveForm.fenmo"
placeholder=
"请输入"
>
<
template
slot=
"prepend"
>
%
</
template
>
</el-input>
</el-form-item>
<el-form-item
label=
"服务时长"
prop=
"duration"
>
<el-input-number
v-model=
"serveForm.duration"
:min=
"1"
></el-input-number>
</el-form-item>
<el-form-item
label=
"超时付费"
prop=
"overtime"
>
<el-input
v-model=
"serveForm.overtime"
placeholder=
"请输入"
>
<
template
slot=
"prepend"
>
¥
</
template
>
</el-input>
<div>
每30分钟。未满30分钟按30分钟算
</div>
</el-form-item>
<el-form-item
label=
"服务时段"
prop=
"name"
>
<el-time-picker
is-range
arrow-control
v-model=
"serveForm.date"
range-separator=
"至"
start-placeholder=
"开始时间"
end-placeholder=
"结束时间"
placeholder=
"选择时间范围"
>
</el-time-picker>
</el-form-item>
<el-form-item
label=
"介绍"
prop=
"info"
>
<editor
v-model=
"serveForm.info"
:min-height=
"192"
/>
</el-form-item>
</el-form>
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
:loading=
"buttonLoading"
type=
"primary"
@
click=
"submitServeForm"
>
确 定
</el-button
>
<el-button
@
click=
"cancel"
>
取 消
</el-button>
</div>
</el-dialog>
</div>
</template>
...
...
@@ -195,6 +287,9 @@ import {
delBusiness
,
addBusiness
,
updateBusiness
,
getServe
,
addServe
,
updateServe
,
}
from
"@/api/operation/business"
;
export
default
{
...
...
@@ -232,23 +327,13 @@ export default {
form
:
{},
// 表单校验
rules
:
{},
openServe
:
false
,
serveForm
:
{},
serveRules
:
{},
};
},
created
()
{
// this.getList();
for
(
let
i
=
0
;
i
<
10
;
i
++
)
{
this
.
businessList
.
push
({
id
:
i
+
1
,
hospitals
:
"医院"
+
i
+
1
,
name
:
"测试数据"
+
1
,
childres
:
[
{
a
:
"aaaaaaaaa"
,
},
],
});
this
.
loading
=
false
;
}
this
.
getList
();
},
methods
:
{
/** 查询业务列表 */
...
...
@@ -260,15 +345,6 @@ export default {
this
.
loading
=
false
;
});
},
toogleExpand
(
row
)
{
// let $table = this.$refs.table;
// this.tableData.map((item) => {
// if (row.id != item.id) {
// $table.toggleRowExpansion(item, false);
// }
// });
// $table.toggleRowExpansion(row);
},
// 取消按钮
cancel
()
{
this
.
open
=
false
;
...
...
@@ -288,6 +364,21 @@ export default {
};
this
.
resetForm
(
"form"
);
},
// 重置服务表单数据
resetServe
()
{
this
.
serveForm
=
{
name
:
undefined
,
cover
:
undefined
,
price
:
undefined
,
fenmo
:
undefined
,
duration
:
undefined
,
overtime
:
undefined
,
startTime
:
undefined
,
endTime
:
undefined
,
info
:
undefined
,
}
this
.
resetForm
(
"serveForm"
);
},
/** 搜索按钮操作 */
handleQuery
()
{
this
.
queryParams
.
pageNum
=
1
;
...
...
@@ -323,7 +414,13 @@ export default {
});
},
// 修改服务
handleUpdateServe
(){},
handleUpdateServe
(
row
)
{
const
id
=
row
.
id
;
getServe
(
id
).
then
((
response
)
=>
{
this
.
serveForm
=
response
.
data
;
this
.
openServe
=
true
;
});
},
/** 提交按钮 */
submitForm
()
{
this
.
$refs
[
"form"
].
validate
((
valid
)
=>
{
...
...
@@ -353,6 +450,23 @@ export default {
}
});
},
// 服务提交按钮
submitServeForm
()
{
this
.
$refs
[
"serveForm"
].
validate
((
valid
)
=>
{
if
(
valid
)
{
this
.
buttonLoading
=
true
;
updateServe
(
this
.
serveForm
)
.
then
((
response
)
=>
{
this
.
$modal
.
msgSuccess
(
"修改成功"
);
this
.
open
=
false
;
this
.
getList
();
})
.
finally
(()
=>
{
this
.
buttonLoading
=
false
;
});
}
});
},
/** 删除按钮操作 */
handleDelete
(
row
)
{
const
ids
=
row
.
id
||
this
.
ids
;
...
...
@@ -385,3 +499,9 @@ export default {
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
.hidden-dialog
{
height
:
600px
;
overflow-x
:
hidden
;
}
</
style
>
src/views/operation/news/index.vue
View file @
4f01ef78
...
...
@@ -76,7 +76,7 @@
<el-table-column
type=
"selection"
width=
"55"
align=
"center"
/>
<el-table-column
label=
"ID"
align=
"center"
prop=
"id"
/>
<el-table-column
label=
"标题"
align=
"center"
prop=
"title"
/>
<el-table-column
label=
"城市"
align=
"center"
prop=
"city
Id
"
/>
<el-table-column
label=
"城市"
align=
"center"
prop=
"city
Name
"
/>
<el-table-column
label=
"封面"
align=
"center"
prop=
"cover"
>
<template
slot-scope=
"
{ row }">
<el-image
...
...
@@ -92,8 +92,6 @@
<el-button
type=
"text"
@
click=
"handleLook(row)"
>
点击查看
</el-button>
</
template
>
</el-table-column>
<el-table-column
label=
"创建时间"
align=
"center"
/>
<el-table-column
label=
"更新时间"
align=
"center"
/>
<el-table-column
label=
"操作"
align=
"center"
...
...
@@ -135,12 +133,17 @@
<el-input
v-model=
"form.title"
placeholder=
"请输入标题"
/>
</el-form-item>
<el-form-item
label=
"城市"
prop=
"cityId"
>
<el-select
v-model=
"form.cityId"
placeholder=
"请选择"
>
<el-select
filterable
clearable
v-model=
"form.cityId"
placeholder=
"请选择"
>
<el-option
v-for=
"item in cityList"
:key=
"item.
value
"
:label=
"item.
label
"
:value=
"item.
value
"
v-for=
"item in city
Vo
List"
:key=
"item.
id
"
:label=
"item.
name
"
:value=
"item.
id
"
>
</el-option>
</el-select>
...
...
@@ -149,7 +152,7 @@
<imageUpload
v-model=
"form.cover"
></imageUpload>
</el-form-item>
<el-form-item
label=
"内容"
prop=
"info"
>
<editor
v-model=
"form.
content
"
:min-height=
"192"
/>
<editor
v-model=
"form.
info
"
:min-height=
"192"
/>
</el-form-item>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
...
...
@@ -182,6 +185,7 @@ import {
addInformation
,
updateInformation
,
}
from
"@/api/operation/news"
;
import
{
cityVoListGET
}
from
"@/api/hispotalManage/hospital"
;
export
default
{
name
:
"Information"
,
...
...
@@ -219,23 +223,17 @@ export default {
// 表单参数
form
:
{},
// 表单校验
rules
:
{},
rules
:
{
cityId
:
[{
required
:
true
,
message
:
"请选择城市"
,
trigger
:
"change"
}],
},
openArticle
:
false
,
rowArticle
:
undefined
,
cityList
:
[
{
value
:
"1"
,
label
:
"北京"
,
},
{
value
:
"2"
,
label
:
"上海"
,
},
],
cityVoList
:
[],
};
},
created
()
{
this
.
getList
();
this
.
cityVoListAxios
();
},
methods
:
{
/** 查询新闻资讯列表 */
...
...
@@ -247,6 +245,13 @@ export default {
this
.
loading
=
false
;
});
},
async
cityVoListAxios
()
{
const
data_back
=
await
cityVoListGET
();
const
{
code
,
data
}
=
data_back
;
if
(
code
===
200
)
{
this
.
cityVoList
=
data
;
}
},
// 取消按钮
cancel
()
{
this
.
open
=
false
;
...
...
src/views/operation/notice/index.vue
View file @
4f01ef78
...
...
@@ -10,7 +10,7 @@
>
<el-form-item
label=
"位置"
prop=
"site"
>
<el-select
v-model=
"queryParams.site"
placeholder=
"请选择"
>
<el-option
<el-option
v-for=
"item in placeOptions"
:key=
"item.value"
:label=
"item.label"
...
...
@@ -93,9 +93,14 @@
>
<el-table-column
type=
"selection"
width=
"55"
align=
"center"
/>
<el-table-column
label=
"ID"
align=
"center"
prop=
"id"
/>
<el-table-column
label=
"城市"
align=
"center"
prop=
"city
Id
"
/>
<el-table-column
label=
"城市"
align=
"center"
prop=
"city
Name
"
/>
<el-table-column
label=
"内容"
align=
"center"
prop=
"info"
/>
<el-table-column
label=
"位置"
align=
"center"
prop=
"site"
:formatter=
"getSiteName"
/>
<el-table-column
label=
"位置"
align=
"center"
prop=
"site"
:formatter=
"getSiteName"
/>
<el-table-column
label=
"操作"
align=
"center"
...
...
@@ -142,18 +147,18 @@
/>
</el-form-item>
<el-form-item
label=
"城市"
prop=
"cityId"
>
<el-select
v-model=
"form.cityId"
placeholder=
"请输入城市"
>
<el-select
filterable
clearable
v-model=
"form.cityId"
placeholder=
"请输入城市"
>
<el-option
v-for=
"item in cityList"
:key=
"item.
value
"
:label=
"item.
label
"
:value=
"item.
value
"
v-for=
"item in city
Vo
List"
:key=
"item.
id
"
:label=
"item.
name
"
:value=
"item.
id
"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"位置"
prop=
"site"
>
<el-select
v-model=
"form.site"
placeholder=
"请输入位置"
>
<el-select
clearable
v-model=
"form.site"
placeholder=
"请输入位置"
>
<el-option
v-for=
"item in placeOptions"
:key=
"item.value"
...
...
@@ -182,6 +187,7 @@ import {
addNotice
,
updateNotice
,
}
from
"@/api/operation/notice"
;
import
{
cityVoListGET
}
from
"@/api/hispotalManage/hospital"
;
export
default
{
name
:
"Notice"
,
...
...
@@ -231,20 +237,12 @@ export default {
label
:
"代办挂号公告"
,
},
],
cityList
:
[
{
value
:
"1"
,
label
:
"北京"
,
},
{
value
:
"2"
,
label
:
"上海"
,
},
],
cityVoList
:
[],
};
},
created
()
{
this
.
getList
();
this
.
cityVoListAxios
();
},
methods
:
{
/** 查询公告列表 */
...
...
@@ -256,6 +254,13 @@ export default {
this
.
loading
=
false
;
});
},
async
cityVoListAxios
()
{
const
data_back
=
await
cityVoListGET
();
const
{
code
,
data
}
=
data_back
;
if
(
code
===
200
)
{
this
.
cityVoList
=
data
;
}
},
// 获取位置名称
getSiteName
(
e
)
{
return
e
.
site
==
1
?
"首页公告"
:
e
.
site
==
2
?
"代办挂号公告"
:
""
;
...
...
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