提交 57fc3217 编写于 作者: xiaoping.di's avatar xiaoping.di

Merge branch 'release-new' into 'release'

Release new

See merge request !225
......@@ -265,3 +265,33 @@ export const opAck = async (data) => {
method: 'post',
});
};
export const acceptsCeiling = async (data) => {
return request({
url: '/diagnose/admin/diagnose/accepts/ceiling',
params: data,
method: 'get',
});
};
export const getLeisureTime = async (data) => {
return request({
url: '/diagnose/doctor/work/getLeisureTime',
data: data,
method: 'post',
});
};
export const outboundIntention = async (data) => {
return request({
url: '/diagnose/admin/diagnose/outbound/intention',
data: data,
method: 'post',
});
};
export const departmentAll = async () => {
return request({
url: '/diagnose/department/all',
method: 'get',
});
};
......@@ -65,3 +65,30 @@ export const previewWork = async (data) => {
data: data,
});
};
export const setPlatformUpper = async (data) => {
return request({
url: `/diagnose/doctor/work/setPlatformUpper/${data.num}`,
data: data,
method: 'post',
});
};
export const getPlatformUpper = async () => {
return request({
url: '/diagnose/doctor/work/getPlatformUpper',
method: 'post',
});
};
export const saveLevelAndDayCount = async (data) => {
return request({
url: '/diagnose/doctor/work/saveLevelAndDayCount',
data: data,
method: 'post',
});
};
export const getLevelAndDayCount = async (data) => {
return request({
url: `/diagnose/doctor/work/getLevelAndDayCount/${data.workId}`,
data: data,
method: 'post',
});
};
......@@ -21,21 +21,30 @@
class="required-label"
prop="triageDepartmentId"
>
<el-select
<el-cascader
ref="cascader"
v-model="model.triageDepartmentId"
placeholder="请选择分诊科室"
clearable
filterable
style="width: 56%; height: 32px; line-height: 32px"
clearable
:options="allTilst"
placeholder="选择科室"
:show-all-levels="false"
@change="change"
>
<el-option
v-for="item in depList"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
<template slot-scope="{ data }">
<span :style="{ fontSize: '15px', color: '#606266' }">{{
data.label
}}</span>
<span
:style="{
fontSize: '10px',
color: '#606266',
marginLeft: '10px',
opacity: '0.7',
}"
>{{ data.text }}</span>
</template>
</el-cascader>
</el-form-item>
<el-form-item label="备注">
......@@ -70,6 +79,7 @@
<script>
import { updateDiagnosis, getDepList } from '../../utils/diagnosis';
import { departmentAll } from '@/api/diagnosis';
let vm = null;
export default {
props: {
......@@ -92,6 +102,12 @@
},
data() {
return {
// props: {
// // props定义的值根据接口返回的数据定的
// label: 'departmentId',
// value: 'departmentName',
// children: [],
// },
show: false,
title: '设置分诊科室',
confirmTxt: '确定',
......@@ -107,6 +123,8 @@
{ required: true, message: '请选择分诊科室', trigger: 'change' },
],
},
allTilst: [],
allList: {},
};
},
watch: {
......@@ -125,8 +143,63 @@
created() {
vm = this;
this.getDepList();
this.departmentAll();
},
methods: {
departmentAll() {
departmentAll().then((res) => {
if (res.code == '000000') {
console.log(res, 'res111');
this.allList = res.data || {};
this.showListALL();
}
});
},
getCascaderObj(val, opt) {
return val.map(function (value) {
for (var itm of opt) {
if (itm.value == value) {
opt = itm.children;
return itm;
}
}
return null;
});
},
showListALL() {
const arr = [];
const { departmentMapList, parentDepartmentList } = this.allList;
parentDepartmentList.map((item) => {
const obj = {
label: item.departmentName,
value: item.departmentId,
children: [],
};
departmentMapList.map((info) => {
if (info.parentDepartmentId === obj.value) {
const children = [];
info.diagnoseDepartmentRespList.map((detail) => {
const secondObj = {
label: detail.departmentName,
value: detail.departmentId,
text: '',
};
let secondChildren = '';
(detail.departmentDeseaseRespList || []).map((res) => {
secondChildren += res.deseaseName + ' ';
});
secondObj.text = secondChildren ? `(${secondChildren})` : '';
children.push(secondObj);
});
obj.children = children;
}
});
arr.push(obj);
});
console.log(arr);
this.allTilst = arr;
},
getDepList() {
getDepList()
.then(function (res) {
......@@ -171,15 +244,18 @@
this.model.triageDepartmentId = '';
this.model.triageRemark = '';
this.$emit('update:doctorVisible', false);
// this.doctorVisible = false;
},
change(data) {
for (let i = 0; i < this.depList.length; i++) {
if (data == this.depList[i].id) {
this.model.triageDepartment = this.depList[i].name;
break;
}
change() {
const checkedNodes = this.$refs['cascader'].getCheckedNodes();
if (checkedNodes.length > 0) {
this.model.triageDepartmentId = checkedNodes[0].value;
this.model.triageDepartment = checkedNodes[0].label;
} else {
this.model.triageDepartmentId = '';
this.model.triageDepartment = '';
}
console.log(this.model.triageDepartmentId, 'model.triageDepartmentId');
console.log(this.model.triageDepartment, 'model.triageDepartment');
},
},
};
......
......@@ -9,7 +9,10 @@
>
<template slot="empty">
<div class="nothing-data">
<img src="../../assets/image/nothingData.png" alt="" >
<img
src="../../assets/image/nothingData.png"
alt=""
>
<span class="nothing-data-title">暂未找到符合条件的医生</span>
</div>
</template>
......@@ -88,6 +91,13 @@
align="center"
sortable
/>
<el-table-column
prop="modifiedId"
label="修改人ID"
width="170"
align="center"
sortable
/>
<el-table-column
prop="mobilePhone"
label="联系电话"
......@@ -261,20 +271,20 @@
<style lang="scss" scoped>
.table-serviceSchedule {
.el-table {
.nothing-data{
.nothing-data {
display: inline-grid;
padding-top: 100px;
img{
img {
width: 338px;
height: 159px;
}
.nothing-data-title{
.nothing-data-title {
padding-top: 40px;
padding-bottom: 150px;
font-size: 16px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #89888B;
color: #89888b;
line-height: 22px;
}
}
......
......@@ -68,13 +68,13 @@ const serviceSchedule = (r) =>
() => r(require('@/views/IM/diagnosis-admin/serviceSchedule.vue')),
'serviceSchedule'
);
const addEditSchedule = (r) =>
const addEditSchedule = (r) =>
require.ensure(
[],
() => r(require('@/views/IM/diagnosis-admin/addEditSchedule.vue')),
'addEditSchedule'
);
const overviewScheduling = (r) =>
const overviewScheduling = (r) =>
require.ensure(
[],
() => r(require('@/views/IM/diagnosis-admin/overviewScheduling.vue')),
......@@ -171,4 +171,4 @@ if (process.env.VUE_APP_ENV == 'uat') {
routerConfig: routerConfig,
};
handleAllRouter(routerInfo);
}
\ No newline at end of file
}
......@@ -2,7 +2,7 @@ import fetch from '../fetch';
import { getBaseUrl } from '@/utils/index';
const headers = {
'Content-Type': 'application/json;charset=UTF-8',
token: localStorage.getItem('token'),
token: localStorage.getItem('token'),
};
/* 保存问诊相关信息*/
......@@ -16,6 +16,15 @@ export const updateDiagnosis = (params) => {
});
};
export const manualQueue = (params) => {
return fetch({
headers,
url: getBaseUrl('/diagnose/diagnose/manual/queue'),
method: 'post',
data: params,
description: '保存问诊相关信息',
});
};
/* 批量设置运营*/
export const batchSetOperator = (params) => {
return fetch({
......
......@@ -36,7 +36,7 @@
label="分诊科室"
class="t-b"
>
<el-select
<!-- <el-select
v-model="searchParam.triageDepartmentId"
placeholder="请选择科室"
style="width: 220px"
......@@ -48,7 +48,31 @@
:label="item.name"
:value="item.id"
/>
</el-select>
</el-select> -->
<el-cascader
ref="cascader"
v-model="searchParam.triageDepartmentId"
filterable
clearable
:options="allTilst"
placeholder="选择科室"
:show-all-levels="false"
@change="changeDepart"
>
<template slot-scope="{ data }">
<span :style="{ fontSize: '15px', color: '#606266' }">{{
data.label
}}</span>
<span
:style="{
fontSize: '10px',
color: '#606266',
marginLeft: '10px',
opacity: '0.7',
}"
>{{ data.text }}</span>
</template>
</el-cascader>
</el-form-item>
</div>
<div>
......@@ -435,12 +459,13 @@
@search="search"
/>
<diagnosis-doctor
v-if="diagnoseFlag"
v-if="diagnosisDoctorVisible"
:diagnosis-doctor-visible.sync="diagnosisDoctorVisible"
:diagnose-log-id="diagnoseLogId"
:diagnose-type="diagnoseType"
:doctor-id="doctorId"
:range-time-data="rangeTimeData"
:doctor-info="doctorInfo"
@search="search"
@changeStartTime="changeStartTime"
/>
......@@ -451,9 +476,14 @@
@search="search"
/>
<diagnosis-time
v-if="diagnosisTimeVisible"
:diagnosis-time-visible.sync="diagnosisTimeVisible"
:diagnose-log-id="diagnoseLogId"
:biz-type="bizType"
:user-name="userName"
:user-name-phone="userNamePhone"
:triage-department="triageDepartment"
:department-id="departmentId"
@search="search"
/>
<rematching-doctor
......@@ -502,6 +532,7 @@
getDepartments,
diagnoseExport,
diagnoseList,
departmentAll,
} from '@/api/diagnosis';
import MatchComponent from '@/components/common/match';
......@@ -621,6 +652,13 @@
},
timer: null,
fromType: 0, // 1或不传为为预约单列表 2为运营预约单列表 3为分诊台 4为接诊台
doctorInfo: {},
userName: '',
userNamePhone: '',
triageDepartment: '',
departmentId: '',
allTilst: [],
allList: {},
};
},
watch: {
......@@ -638,16 +676,72 @@
},
created() {
vm = this;
this.getDep();
// this.getDep();
},
mounted() {
this.setTableHeight();
this.getOutboundNote();
this.departmentAll();
},
destroyed() {
clearInterval(this.timer);
},
methods: {
departmentAll() {
departmentAll().then((res) => {
if (res.code == '000000') {
console.log(res, 'res111');
this.allList = res.data || {};
this.showListALL();
}
});
},
showListALL() {
const arr = [];
const { departmentMapList, parentDepartmentList } = this.allList;
parentDepartmentList.map((item) => {
const obj = {
label: item.departmentName,
value: item.departmentId,
children: [],
};
departmentMapList.map((info) => {
if (info.parentDepartmentId === obj.value) {
const children = [];
info.diagnoseDepartmentRespList.map((detail) => {
const secondObj = {
label: detail.departmentName,
value: detail.departmentId,
text: '',
};
let secondChildren = '';
(detail.departmentDeseaseRespList || []).map((res) => {
secondChildren += res.deseaseName + ' ';
});
secondObj.text = secondChildren ? `(${secondChildren})` : '';
children.push(secondObj);
});
obj.children = children;
}
});
arr.push(obj);
});
console.log(arr);
this.allTilst = arr;
},
changeDepart() {
const checkedNodes = this.$refs['cascader'].getCheckedNodes();
if (checkedNodes.length > 0) {
this.searchParam.triageDepartmentId = checkedNodes[0].value;
} else {
this.searchParam.triageDepartmentId = '';
}
console.log(
this.searchParam.triageDepartmentId,
'this.searchParam.triageDepartmentId'
);
},
changeStartTime(time) {
this.rangeTimeData = time
? time.time
......@@ -1028,14 +1122,13 @@
},
// 设为待匹配医生
waitMatchDot(row) {
console.log(row, 'doctorData111');
this.doctorData = row;
this.diagnoseLogId = row.diagnoseLogId;
// 待分诊
// if(row.status == 22){
// this.doctorVisible = true;
// this.bizType = 7;
// this.triageDepartmentId = row.triageDepartmentId;
// }
// else {
this.userName = row.userName;
this.userNamePhone = row.userMobile;
this.triageDepartment = row.triageDepartment;
this.departmentId = row.departmentId;
this.diagnosisTimeVisible = true;
this.bizType = 5;
// }
......@@ -1107,10 +1200,10 @@
// 设为待确认时间
waitMatchTime(row) {
console.log(row, 'row');
this.doctorInfo = row;
this.rangeTimeData = row.assistantBeginTime;
this.diagnoseFlag = true;
this.diagnosisDoctorVisible = true;
this.diagnoseLogId = row.diagnoseLogId;
this.diagnoseType = row.diagnoseType;
if (row.doctorId == 0) {
......
......@@ -14,17 +14,30 @@
<div class="serviceSchedule-containerInfo">
<div class="serviceSchedule-containerInfo-left">
<el-cascader
v-model="innerform"
class="serviceSchedule-cascader"
ref="cascader"
v-model="searchParam.departmentId"
filterable
clearable
:options="interfaceOptions"
:props="props"
class="serviceSchedule-cascader"
:options="allTilst"
placeholder="选择科室"
:show-all-levels="false"
@expand-change="handleItemChange"
@change="selectApi($event, innerform)"
/>
@change="changeDepartment"
>
<template slot-scope="{ data }">
<span :style="{ fontSize: '15px', color: '#606266' }">{{
data.label
}}</span>
<span
:style="{
fontSize: '10px',
color: '#606266',
marginLeft: '10px',
opacity: '0.7',
}"
>{{ data.text }}</span>
</template>
</el-cascader>
<el-select
v-model="searchParam.createType"
class="select-first"
......@@ -147,13 +160,12 @@
<script>
import {
getFirstLevelLable,
childLabelList,
workQuery,
switchOpen,
workInStep,
getLevel,
} from '@/api/serviceSchedule';
import { departmentAll } from '@/api/diagnosis';
import TableServiceSchedule from '@/components/list/table-serviceSchedule';
export default {
components: {
......@@ -213,55 +225,68 @@
tableData: [],
loading: false,
newCreateList: [],
allTilst: [],
allList: {},
};
},
watch: {},
created() {
this.getFirstLevelLable();
this.getLevel();
this.departmentAll();
this.search();
},
methods: {
// 通过监听expand-change事件(当展开节点发生变化时触发)获取第二层数据,组装interfaceOptions数据
handleItemChange(val) {
const value = val[0];
childLabelList(value).then((res) => {
if (res.code === '000000') {
const interfaceArr = (res.data || []).map((item) => {
return {
value: item.name,
no: item.id,
};
});
this.interfaceOptions.filter((item) => {
if (item.no === value) {
this.$set(item, 'interface', interfaceArr);
}
return;
});
departmentAll() {
departmentAll().then((res) => {
if (res.code == '000000') {
console.log(res, 'res111');
this.allList = res.data || {};
this.showListALL();
}
});
},
getFirstLevelLable() {
getFirstLevelLable().then((res) => {
if (res.code === '000000') {
this.interfaceOptions = res.data || [];
this.interfaceOptions.forEach((item, index) => {
// 添加属性
this.$set(this.interfaceOptions[index], 'interface', []);
});
} else {
this.$message({
message: res.msg,
type: 'warning',
});
}
showListALL() {
const arr = [];
const { departmentMapList, parentDepartmentList } = this.allList;
parentDepartmentList.map((item) => {
const obj = {
label: item.departmentName,
value: item.departmentId,
children: [],
};
departmentMapList.map((info) => {
if (info.parentDepartmentId === obj.value) {
const children = [];
info.diagnoseDepartmentRespList.map((detail) => {
const secondObj = {
label: detail.departmentName,
value: detail.departmentId,
text: '',
};
let secondChildren = '';
(detail.departmentDeseaseRespList || []).map((res) => {
secondChildren += res.deseaseName + ' ';
});
secondObj.text = secondChildren ? `(${secondChildren})` : '';
children.push(secondObj);
});
obj.children = children;
}
});
arr.push(obj);
});
console.log(arr);
this.allTilst = arr;
},
// 获取选择的值
selectApi(e, value) {
this.searchParam.departmentId = value[1];
this.searchParam.pageNo = 1;
changeDepartment() {
const checkedNodes = this.$refs['cascader'].getCheckedNodes();
if (checkedNodes.length > 0) {
this.searchParam.departmentId = checkedNodes[0].value;
} else {
this.searchParam.departmentId = '';
}
},
getCreateType(value) {
this.searchParam.createType = value;
......@@ -386,12 +411,12 @@
target.setAttribute('href', u);
target.click();
},
// goBack(flag) {
// this.ScheduleListShow = true;
// if (flag) {
// this.search();
// }
// },
// goBack(flag) {
// this.ScheduleListShow = true;
// if (flag) {
// this.search();
// }
// },
},
};
</script>
......
......@@ -4663,7 +4663,7 @@ dateformat@^2.0.0:
resolved "http://192.168.110.93:4873/dateformat/-/dateformat-2.2.0.tgz#4065e2013cf9fb916ddfd82efb506ad4c6769062"
integrity sha1-QGXiATz5+5Ft39gu+1Bq1MZ2kGI=
dayjs@^1.8.30, dayjs@^1.8.31:
dayjs@^1.10.7, dayjs@^1.8.31:
version "1.10.7"
resolved "http://192.168.110.93:4873/dayjs/-/dayjs-1.10.7.tgz#2cf5f91add28116748440866a0a1d26f3a6ce468"
integrity sha1-LPX5Gt0oEWdIRAhmoKHSbzps5Gg=
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册