Commit 4f01ef78 by honghong

业务模块

parent fb91970a
......@@ -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
......@@ -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 cityVoList"
: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>
......@@ -81,7 +81,7 @@
prop="site"
:formatter="getSiteName"
/>
<el-table-column label="城市" align="center" prop="cityId" />
<el-table-column label="城市" align="center" prop="cityName" />
<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 cityVoList"
: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("修改成功");
......
......@@ -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>
......@@ -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="cityId" />
<el-table-column label="城市" align="center" prop="cityName" />
<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 cityVoList"
: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;
......
......@@ -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="cityId" />
<el-table-column label="城市" align="center" prop="cityName" />
<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 cityVoList"
: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 ? "代办挂号公告" : "";
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment