提交 21eb2890 编写于 作者: changdi.hao's avatar changdi.hao

优化列表

上级 e3eb9270
......@@ -30,23 +30,23 @@
min-width="400"
>
<template slot-scope="scope">
<el-button type="primary" size="small" class="btn" v-if="a" @click="witeDiagnose(scope.row)">设为待问诊</el-button>
<el-button type="primary" size="small" class="btn" v-if="b" @click="changeRun(scope.row)">更换运营</el-button>
<el-button type="primary" size="small" class="btn" v-if="c" @click="goDetail(scope.row)">查看详情</el-button>
<el-button type="primary" size="small" class="btn" v-if="d" @click="goDetail(scope.row)">取消/退款</el-button>
<el-button type="primary" size="small" class="btn" v-if="e" @click="witeGo(scope.row)">设为稍后跟进</el-button>
<el-button type="primary" size="small" class="btn" v-if="f" @click="waitMatchDot(scope.row)">设为待匹配医生</el-button>
<el-button type="primary" size="small" class="btn" v-if="g" @click="sendMessage(scope.row)">发送消息</el-button>
<el-button type="primary" size="small" class="btn" v-if="h" @click="joinDiagnose(scope.row)">加入问诊</el-button>
<el-button type="primary" size="small" class="btn" v-if="i" @click="matchRun(scope.row)">匹配运营</el-button>
<el-button type="primary" size="small" class="btn" v-if="j" @click="goEditor(scope.row)" >编辑</el-button>
<el-button type="primary" size="small" class="btn" v-if="k" @click="waitDiagnose(scope.row)">设为待分诊</el-button>
<el-button type="primary" size="small" class="btn" v-if="l" @click="waitHzeDot(scope.row)">设为待协调医生</el-button>
<el-button type="primary" size="small" class="btn" v-if="m" @click="waitMatchTime(scope.row)">设为待确认时间</el-button>
<el-button type="primary" size="small" class="btn" v-if="n" @click="reMatchDot(scope.row)">重新匹配医生</el-button>
<el-button type="primary" size="small" class="btn" v-if="o" @click="changeTime(scope.row)">修改时间</el-button>
<el-button type="primary" size="small" class="btn" v-if="p" @click="call(scope.row)">发起问诊</el-button>
<el-button type="primary" size="small" class="btn" v-if="q" @click="doneHandle(scope.row)">设为已完成</el-button>
<el-button type="primary" size="small" class="btn" v-if="showBtn(scope.row,25)" @click="witeDiagnose(scope.row)">设为待问诊</el-button>
<el-button type="primary" size="small" class="btn" v-if="showBtn(scope.row,21,22,23,24,25,26,3)" @click="changeRun(scope.row)">更换运营</el-button>
<el-button type="primary" size="small" class="btn" @click="goDetail(scope.row)">查看详情</el-button>
<el-button type="primary" size="small" class="btn" v-if="showBtn(scope.row,2,21,22,23,24,25,26,3,4)" @click="goDetail(scope.row)">取消/退款</el-button>
<el-button type="primary" size="small" class="btn" v-if="showBtn(scope.row,21)" @click="witeGo(scope.row)">设为稍后跟进</el-button>
<el-button type="primary" size="small" class="btn" v-if="showBtn(scope.row,21,22)" @click="waitMatchDot(scope.row)">设为待匹配医生</el-button>
<el-button type="primary" size="small" class="btn" v-if="showBtn(scope.row,3,4,5,6,21,22,23,24,25,26)" @click="sendMessage(scope.row)">发送消息</el-button>
<el-button type="primary" size="small" class="btn" v-if="showBtn(scope.row,3)" @click="joinDiagnose(scope.row)">加入问诊</el-button>
<el-button type="primary" size="small" class="btn" v-if="showBtn(scope.row,2)" @click="matchRun(scope.row)">匹配运营</el-button>
<el-button type="primary" size="small" class="btn" @click="goEditor(scope.row)" >编辑</el-button>
<el-button type="primary" size="small" class="btn" v-if="showBtn(scope.row,21)" @click="waitDiagnose(scope.row)">设为待分诊</el-button>
<el-button type="primary" size="small" class="btn" v-if="showBtn(scope.row,23)" @click="waitHzeDot(scope.row)">设为待协调医生</el-button>
<el-button type="primary" size="small" class="btn" v-if="showBtn(scope.row,23,24)" @click="waitMatchTime(scope.row)">设为待确认时间</el-button>
<el-button type="primary" size="small" class="btn" v-if="showBtn(scope.row,3,25,26)" @click="reMatchDot(scope.row)">重新匹配医生</el-button>
<el-button type="primary" size="small" class="btn" v-if="showBtn(scope.row,3,26)" @click="changeTime(scope.row)">修改时间</el-button>
<el-button type="primary" size="small" class="btn" v-if="showBtn(scope.row,26)" @click="call(scope.row)">发起问诊</el-button>
<el-button type="primary" size="small" class="btn" v-if="showBtn(scope.row,3)" @click="doneHandle(scope.row)">设为已完成</el-button>
</template>
</el-table-column>
</el-table>
......@@ -69,6 +69,8 @@
<script>
import { TABLE_COLUMN } from "@/utils/constants";
//0 只填写了患者信息(急速问诊才会有的状态),1 初始状态(未支付),2待问诊(待匹配运营)(支付成功待完善)3 问诊中(已完善),4、已问诊 5、取消, 6 已结算
//21 已匹配, 22 待分诊, 23 待匹配接诊医生, 24 待协调医生 25 待设置问诊时间, 26 待问诊
export default {
props: {
tData: {
......@@ -99,176 +101,16 @@ export default {
data() {
return {
tableColumn: TABLE_COLUMN,
multipleSelection: [],
status: 1
multipleSelection: []
};
},
computed: {
//0 只填写了患者信息(急速问诊才会有的状态),1 初始状态(未支付),2待问诊(待匹配运营)(支付成功待完善)3 问诊中(已完善),4、已问诊 5、取消, 6 已结算
//21 已匹配, 22 待分诊, 23 待匹配接诊医生, 24 待协调医生 25 待设置问诊时间, 26 待问诊
a() { //设为待问诊
switch (this.status ) {
case 25:
return true
default:
return false
}
},
b() { // 更换运营
switch (this.status ) {
case 2:
case 21:
case 22:
case 23:
case 24:
case 25:
case 26:
case 3:
return true
default:
return false
}
},
c() {
return true
},
d() { //取消/退款
switch (this.status ) {
case 2:
case 21:
case 22:
case 23:
case 24:
case 25:
case 26:
case 3:
case 4:
return true
default:
return false
}
},
e() { //设为稍后跟进
switch (this.status ) {
case 21:
return true
default:
return false
}
},
f() { //设为待匹配医生
switch (this.status ) {
case 21:
case 22:
return true
default:
return false
}
},
g() { //发送消息
switch (this.status ) {
case 21:
case 22:
case 23:
case 24:
case 25:
case 26:
case 3:
case 4:
case 6:
case 5:
return true
default:
return false
}
},
h() { //加入问诊
switch (this.status ) {
case 3:
return true
default:
return false
}
},
i() { //匹配运营
switch (this.status ) {
case 2:
return true
default:
return false
}
},
j() { //编辑
// switch (this.status ) {
// case :
// return true
// default:
// return false
// }
return false
},
k() { //设为待分诊
switch (this.status ) {
case 21:
return true
default:
return false
}
},
l() { //设为待协调医生
switch (this.status ) {
case 23:
return true
default:
return false
}
},
m() { //设为待确认时间
switch (this.status ) {
case 23:
case 24:
return true
default:
return false
}
},
n() { //重新匹配医生
switch (this.status ) {
case 25:
case 26:
case 3:
return true
default:
return false
}
},
o() { //修改时间
switch (this.status ) {
case 26:
case 3:
return true
default:
return false
}
},
p() { //发起问诊
switch (this.status ) {
case 26:
return true
default:
return false
}
},
q() { //设为已完成
switch (this.status ) {
case 3:
return true
default:
return false
}
}
mounted() {
},
methods: {
showBtn(row,...arr) {
return arr.includes(row.status)
},
// 选择
handleSelectionChange(val) {
this.multipleSelection = val;
......@@ -351,5 +193,8 @@ export default {
};
</script>
<style>
<style scoped>
.btn {
margin-top: 5px;
}
</style>
......@@ -283,6 +283,42 @@ export const ALL_TAB_LIST = [
}
]
//运营预约单列表
export const RUN_TAB_LIST = [
{
label: '全部',
active: '99'
},
{
label: '待匹配',
active: '2'
},
{
label: '已匹配',
active: '21'
},
{
label: '待确认时间',
active: '25'
},
{
label: '待问诊',
active: '16'
},
{
label: '问诊中',
active: '3'
},
{
label: '已完成',
active: '4'
},
{
label: '已取消',
active: '5'
}
]
// 分诊列表
export const TRIAGE_TAB_LIST = [
{
......
......@@ -10,60 +10,58 @@
label-width="80px"
ref="from"
>
<el-row :gutter="20" type="flex" justify="center">
<el-row :gutter="10" type="flex" justify="center">
<el-col :span="8" class="t-c">
<el-form-item label="订单搜索" class="t-b">
<el-input
v-model="searchParam.searchVal"
v-model.trim="searchParam.searchVal"
clearable
placeholder="输入ID、订单ID或姓名搜索订单"
style="width: 280px"
placeholder="请输入ID"
style="width: 220px"
></el-input>
</el-form-item>
</el-col>
<el-col :span="8" class="t-c">
<el-form-item label="预约类型" class="t-b">
<el-select
v-model="searchParam.diagnoseType"
placeholder="请选择预约类型"
style="width: 280px"
>
<el-option
v-for="item of tyleList"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
<el-form-item label="运营人员" class="t-b">
<el-input
v-model.trim="searchParam.operateName"
clearable
placeholder="请输入姓名"
style="width: 220px"
></el-input>
</el-form-item>
</el-col>
<el-col :span="8" class="t-c">
<el-form-item label="创建方式" class="t-b">
<el-select
v-model="searchParam.createType"
placeholder="创建方式"
style="width: 280px"
>
<el-option
v-for="item of createList"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
<el-form-item label="助诊医生" class="t-b">
<el-input
v-model.trim="searchParam.assistantVal"
clearable
placeholder="请输入姓名或电话"
style="width: 220px"
></el-input>
</el-form-item>
</el-col>
<el-col :span="8" class="t-c">
<el-form-item label="接诊医生" class="t-b">
<el-input
v-model.trim="searchParam.receptionVal"
clearable
placeholder="请输入姓名或电话"
style="width: 220px"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20" type="flex" justify="center">
<el-row :gutter="10" type="flex" justify="center">
<el-col :span="8" class="t-c">
<el-form-item label="是否跟进" class="t-b">
<el-form-item label="分诊科室" class="t-b">
<el-select
v-model="searchParam.followFlag"
placeholder="请选择是否跟进"
style="width: 280px"
v-model="searchParam.triageDepartmentId"
placeholder="请选择科室"
style="width: 220px"
>
<el-option
v-for="item of fllowList"
v-for="item of tyleList"
:key="item.value"
:label="item.label"
:value="item.value"
......@@ -72,14 +70,14 @@
</el-form-item>
</el-col>
<el-col :span="8" class="t-c">
<el-form-item label="预约来源" class="t-b">
<el-form-item label="预约类型" class="t-b">
<el-select
v-model="searchParam.appointSource"
placeholder="请选择预约来源"
style="width: 280px"
v-model="searchParam.diagnoseType"
placeholder="请选择预约类型"
style="width: 220px"
>
<el-option
v-for="item of sourceList"
v-for="item of tyleList"
:key="item.value"
:label="item.label"
:value="item.value"
......@@ -88,14 +86,14 @@
</el-form-item>
</el-col>
<el-col :span="8" class="t-c">
<el-form-item label="是否匹配" class="t-b">
<el-form-item label="预约来源" class="t-b">
<el-select
v-model="searchParam.operateFlag"
placeholder="是否匹配"
style="width: 280px"
v-model="searchParam.appointSource"
placeholder="请选择预约来源"
style="width: 220px"
>
<el-option
v-for="item of operateList"
v-for="item of sourceList"
:key="item.value"
:label="item.label"
:value="item.value"
......@@ -103,8 +101,6 @@
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20" type="flex" justify="center">
<el-col :span="8" class="t-c">
<el-form-item label="创建日期" class="t-b">
<el-date-picker
......@@ -114,22 +110,24 @@
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
style="width: 280px"
style="width: 220px"
:picker-options="pickerOptions1"
>
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="10" type="flex" justify="center">
<el-col :span="8" class="t-c">
<el-form-item label="匹配日期" class="t-b">
<el-form-item label="退款日期" class="t-b">
<el-date-picker
v-model="matchRangeTime"
v-model="cancelRangeTime"
type="daterange"
value-format="yyyy-MM-dd"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
style="width: 280px"
style="width: 220px"
:picker-options="pickerOptions1"
>
</el-date-picker>
......@@ -144,14 +142,12 @@
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
style="width: 280px"
style="width: 220px"
:picker-options="pickerOptions1"
>
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20" type="flex" justify="left">
<el-col :span="8" class="t-c">
<el-form-item label="完成时间" class="t-b">
<el-date-picker
......@@ -161,21 +157,23 @@
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
style="width: 280px"
style="width: 220px"
:picker-options="pickerOptions1"
>
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20" type="flex" justify="center" align="center">
<el-col :span="24" class="btn-wrap">
<el-col :span="8" class="btn-wrap">
<el-button type="primary" class="submit-btn" @click="search"
>搜索</el-button
>
<el-button type="warning" class="submit-btn" @click="reset"
>重置</el-button
>
</el-col>
</el-row>
<el-row :gutter="10" type="flex" justify="center" align="center">
<el-col :span="24" class="btn-wrap">
<el-button type="success" class="submit-btn"
>批量设置运营</el-button
>
......@@ -229,12 +227,11 @@ import TableComponent from "@/components/list/table-c";
import {
TYPE_LIST,
IS_FLLOW,
CREATE_TYPE,
SOURCE_LIST,
OPERATE_LIST,
ALL_TAB_LIST,
TRIAGE_TAB_LIST,
RECEPTION_TAB_LIST,
RUN_TAB_LIST
} from "@/utils/constants";
export default {
components: {
......@@ -245,18 +242,18 @@ export default {
endFlag: false,
beginFlag: false,
loading: false,
activeName: '99',
activeName: "99",
createRangeTime: "",
matchRangeTime: "",
cancelRangeTime: "",
orderRangeTime: "",
completeRangeTime: "",
searchParam: {
searchVal: "",
diagnoseType: "",
createType: "",
followFlag: "",
appointSource: "",
operateFlag: "",
id: "",
operateName: "",
assistantVal: "",
receptionVal: "",
triageDepartmentId: "",
diagnoseType: "", //预约问诊类型:1、音频 2、视频 3、图文
createdTimeBegin: "",
createdTimeEnd: "",
operateTimeBegin: "",
......@@ -265,16 +262,13 @@ export default {
appointEndTime: "",
doneTimeBegin: "",
doneTimeEnd: "",
status: '99', //1、初始状态(未支付) 2、待问诊(支付成功待完善) 3、问诊中(已完善) 4、已问诊")
bizType: 1, //1、分页查询 2、导出"
pageSize: 15,
pageNo: 1,
menuType: 1, // 菜单类型:1、all 2、运营 3、待分诊 4、待接诊
},
tyleList: TYPE_LIST,
fllowList: IS_FLLOW,
sourceList: SOURCE_LIST,
createList: CREATE_TYPE,
operateList: OPERATE_LIST,
tabpaneList: [],
tableData: [],
totalRows: 0,
......@@ -285,7 +279,7 @@ export default {
return time.getTime() > new Date().getTime(); //减去一天的时间代表可以选择同一天;
},
},
fromType: 1, //1或不传为 为预约单列表 2为分诊台 3为接诊台
fromType: 0, //1或不传为为预约单列表 2为运营预约单列表 3为分诊台 4为接诊台
};
},
activated() {
......@@ -306,15 +300,23 @@ export default {
switch (this.fromType) {
case 1:
tabs = ALL_TAB_LIST;
this.searchParam.menuType = 1;
break;
case 2:
tabs = TRIAGE_TAB_LIST;
tabs = RUN_TAB_LIST;
this.searchParam.menuType = 2;
break;
case 3:
tabs = TRIAGE_TAB_LIST;
this.searchParam.menuType = 3;
break;
case 4:
tabs = RECEPTION_TAB_LIST;
this.searchParam.menuType = 4;
break;
default:
tabs = ALL_TAB_LIST;
this.searchParam.menuType = 1;
break;
}
this.tabpaneList = tabs;
......@@ -347,20 +349,17 @@ export default {
this.search();
},
search() {
this.searchParam.createdTimeBegin = this.createRangeTime[0];
this.searchParam.createdTimeEnd = this.createRangeTime[1];
this.searchParam.operateTimeBegin = this.matchRangeTime[0];
this.searchParam.operateTimeEnd = this.matchRangeTime[1];
this.searchParam.appointBeginTime = this.orderRangeTime[0];
this.searchParam.appointEndTime = this.orderRangeTime[1];
this.searchParam.doneTimeBegin = this.completeRangeTime[0];
this.searchParam.doneTimeEnd = this.completeRangeTime[1];
this.searchParam.createdTimeBegin = this.createRangeTime[0] || "";
this.searchParam.createdTimeEnd = this.createRangeTime[1] || "";
this.searchParam.cancelTimeBegin = this.cancelRangeTime[0] || "";
this.searchParam.cancelTimeEnd = this.cancelRangeTime[1] || "";
this.searchParam.appointBeginTime = this.orderRangeTime[0] || "";
this.searchParam.appointEndTime = this.orderRangeTime[1] || "";
this.searchParam.doneTimeBegin = this.completeRangeTime[0] || "";
this.searchParam.doneTimeEnd = this.completeRangeTime[1] || "";
this.loading = true;
let url = `/diagnose/admin/diagnose/list`;
this.searchParam.bizType = 1;
this.searchParam.searchVal = this.searchParam.searchVal.trim();
let params = this.searchParam;
this.POST(url, params).then((res) => {
this.POST(url, this.searchParam).then((res) => {
this.loading = false;
if (res.code == "000000") {
this.tableData = res.data.list;
......@@ -371,96 +370,47 @@ export default {
// 重置
reset() {
this.createRangeTime = "";
this.matchRangeTime = "";
this.cancelRangeTime = "";
this.orderRangeTime = "";
this.completeRangeTime = "";
this.searchParam = {
searchVal: "",
diagnoseType: "",
createType: "",
followFlag: "",
appointSource: "",
operateFlag: "",
createdTimeBegin: "",
createdTimeEnd: "",
operateTimeBegin: "",
operateTimeEnd: "",
appointBeginTime: "",
appointEndTime: "",
status: "", //1、初始状态(未支付) 2、待问诊(支付成功待完善) 3、问诊中(已完善) 4、已问诊")
bizType: 1, //1、分页查询 2、导出"
pageSize: 15,
pageNo: 1,
};
this.$refs.from.resetFields();
this.search();
},
// 导出
download() {
},
//设为待问诊
witeDiagnose(row) {
},
witeDiagnose(row) {},
//更换运营
changeRun(row) {
},
changeRun(row) {},
//查看详情
goDetail(row) {
},
goDetail(row) {},
//取消/退款
cancelBtn(row) {
},
cancelBtn(row) {},
//设为稍后跟进
witeGo(row) {
},
witeGo(row) {},
//设为待匹配医生
waitMatchDot(row) {
},
waitMatchDot(row) {},
//发送消息
sendMessage(row) {
},
sendMessage(row) {},
//加入问诊
joinDiagnose(row) {
},
joinDiagnose(row) {},
//匹配运营
matchRun(row) {
},
matchRun(row) {},
//设为待分诊
waitDiagnose(row) {
},
waitDiagnose(row) {},
//设为待协调医生
waitHzeDot(row) {
},
waitHzeDot(row) {},
//设为待确认时间
waitMatchTime(row) {
},
waitMatchTime(row) {},
//重新匹配医生
reMatchDot(row) {
},
reMatchDot(row) {},
//修改时间
changeTime(row) {
},
changeTime(row) {},
//发起问诊
call(row) {
},
call(row) {},
//设为已完成
doneHandle(row) {
},
doneHandle(row) {},
// 编辑页面
goEditor(row, flag) {
this.$router.push({
......@@ -484,9 +434,8 @@ export default {
sessionStorage.removeItem("TIME_loseTime");
},
// 取消预约
cancelBtn(row) {
}
}
cancelBtn(row) {},
},
};
</script>
<style lang="scss" scoped>
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册