提交 3bff20e6 编写于 作者: xiaoping.di's avatar xiaoping.di

页面ui修改

......@@ -310,3 +310,10 @@ export const updateDepartmentId = async (data) => {
method: 'post',
});
};
export const doctorDeparList = async (data) => {
return request({
url: `/diagnose/admin/diagnose/department/and/doctorList/${data.uid}`,
method: 'get',
});
};
import request from 'mn-template/plugins/http';
export const doctorListAnd = async (data) => {
return request({
url: '/diagnose/admin/diagnose/operate/and/doctorList',
data: data,
method: 'post',
});
};
export const doctorListRest = async (data) => {
return request({
url: `diagnose/admin/diagnose/reset/operate/doctorList/${data.uid}`,
method: 'get',
});
};
export const conditionUpdate = async (data) => {
return request({
url: '/diagnose/socket/condition/update',
......
......@@ -2,16 +2,26 @@
<div
class="consultationlist"
style="user-select: none"
@click="goworkBench"
>
<div class="list">
<div class="name">
{{ operatorsItem.name || '' }}
</div>
<div class="details">
<!-- <div class="handle">待处理: <span> 暂无</span></div> -->
<div
class="details"
@click="goSelectDeart"
>
<div class="see">
<span>查看详情</span>
<span>查看选择科室</span>
<i class="el-icon-arrow-right" />
</div>
</div>
<div
class="details"
@click="goworkBench"
>
<div class="see">
<span>待处理详情</span>
<i class="el-icon-arrow-right" />
</div>
</div>
......@@ -20,7 +30,7 @@
</template>
<script>
import { conditionUpdate } from '@/api/workbench';
// import { conditionUpdate } from '@/api/workbench';
export default {
props: {
......@@ -43,25 +53,35 @@
},
methods: {
goworkBench() {
const p = {
dateTime: this.workbenchAdminDate,
operateUserId: this.operatorsItem.id,
pageNo: 1,
pageSize: 6,
returnStatus: 1,
};
this.$store.commit('main/clearRawCurrentCalList');
conditionUpdate(p).then((res) => {
if (res.code == '000000') {
this.$store.commit('main/updateSoketQuest', p);
this.$router.push({ path: '/workbench' });
} else {
this.$message({
message: res.message,
type: 'warning',
duration: 1000,
});
}
// const p = {
// dateTime: this.workbenchAdminDate,
// operateUserId: this.operatorsItem.id,
// pageNo: 1,
// pageSize: 6,
// returnStatus: 1,
// };
// this.$store.commit('main/clearRawCurrentCalList');
// conditionUpdate(p).then((res) => {
// if (res.code == '000000') {
// this.$store.commit('main/updateSoketQuest', p);
// this.$router.push({ path: '/workbench-new' });
// } else {
// this.$message({
// message: res.message,
// type: 'warning',
// duration: 1000,
// });
// }
// });
this.$router.push({
path: '/workbench-new',
query: { type: 1, id: this.operatorsItem.id },
});
},
goSelectDeart() {
this.$router.push({
path: '/workbench-new',
query: { id: this.operatorsItem.id },
});
},
},
......@@ -81,10 +101,10 @@
.details {
width: 120px;
height: 40px;
background: rgba(68, 146, 132, 0.24);
background: rgba(0, 189, 165, 0.13);
border-radius: 20px;
opacity: 0.44;
border: 1px solid #449284;
// opacity: 0.44;
border: 1px solid rgba(0, 189, 165, 0.13);
display: flex;
justify-content: space-evenly;
align-items: center;
......@@ -107,7 +127,10 @@
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #6a7990;
color: #0d9078;
}
i {
color: rgba(13, 144, 120, 1);
}
}
}
......
......@@ -203,7 +203,8 @@ export default {
).toFixed(0);
if (hoursRound > 0 && minutesRound > 0) {
return hoursRound + '小时' + minutesRound + '分' + seconds + '秒';
// return hoursRound + '小时' + minutesRound + '分' + seconds + '秒';
return hoursRound + '小时';
}
if (hoursRound == 0 && minutesRound > 0) {
return minutesRound + '分钟';
......
<template>
<div class="depart-doctor">
<el-tabs
v-model="activeMoutendName"
@tab-click="handleClick"
>
<el-tab-pane
v-for="item in departDoctorList"
:key="item.departmentId"
:label="
item.department +
' ' +
item.checkDoctorIdListByDepartment.length +
'/' +
item.allNum
"
:name="item.departmentId"
>
<el-checkbox
v-model="item.checkAll"
:indeterminate="item.isIndeterminate"
:disabled="item.allDisabled"
@change="
(value) => {
handleCheckAllChange(value, item);
}
"
>
全选
</el-checkbox>
<div style="margin: 10px 0" />
<el-checkbox-group
v-model="item.checkDoctorIdListByDepartment"
@change="
(val) => {
handleCheckedCitiesChange(val, item);
}
"
>
<el-checkbox
v-for="itemChild in item.diagnoseOperateDoctorRespList"
:key="itemChild.doctorId"
:label="itemChild.doctorId"
:disabled="itemChild.disabled"
>
{{ itemChild.doctorName + ' ' }}{{ ' ' + itemChild.doctorId }}
</el-checkbox>
</el-checkbox-group>
</el-tab-pane>
</el-tabs>
</div>
</template>
<script>
export default {
props: {
departDoctorList: {
type: Array,
default() {
return [];
},
},
activeMoutendName: {
type: String,
default() {
return '';
},
},
},
data() {
return {};
},
computed: {},
watch: {},
created() {},
mounted() {},
methods: {
handleClick(value) {
console.log(value, 'value');
},
handleCheckAllChange(value, item) {
let itemNameList = [];
if (value) {
itemNameList = (item.diagnoseOperateDoctorRespList || []).map(
(item) => {
return item.doctorId;
}
);
}
item.checkDoctorIdListByDepartment = value ? itemNameList : [];
item.isIndeterminate = false;
this.$emit('getDepartlist', this.departDoctorList);
},
/**
* checkbox状态 (根据绑定值 checkAll 与 isIndeterminate 联动)
* 半选:checkAll: true或者false,isIndeterminate:true
* 全选:checkAll:true isIndeterminate:false
* 不选:checkAll:false isIndeterminate:false
*/
handleCheckedCitiesChange(value, item) {
const checkedCount = value.length;
item.checkAll =
checkedCount === item.diagnoseOperateDoctorRespList.length;
if (
checkedCount > 0 &&
checkedCount < item.diagnoseOperateDoctorRespList.length
) {
item.isIndeterminate = true;
item.checkAll = true;
} else {
item.isIndeterminate = false;
}
this.$emit('getDepartlist', this.departDoctorList);
},
},
};
</script>
<style lang="scss" scoped></style>
此差异已折叠。
......@@ -7,8 +7,11 @@
<el-breadcrumb-item>首页</el-breadcrumb-item>
<el-breadcrumb-item>我的工作台</el-breadcrumb-item>
</el-breadcrumb>
<el-row style="margin-top: 30px">
<el-col :span="12">
<el-row
style="margin-top: 30px; display: flex; alignitems: center"
class="row-col-show"
>
<el-col :span="8">
<div class="left">
<el-row
type="flex"
......@@ -18,7 +21,6 @@
<el-col :span="12">
<el-date-picker
v-model="workbenchAdminDate"
style="margin-top: 10px"
type="date"
value-format="yyyy-MM-dd"
placeholder="选择日期"
......@@ -27,6 +29,15 @@
</el-row>
</div>
</el-col>
<el-col :span="12">
<div class="right">
<span class="totalNumShow">累计汇总数</span>
<span class="callDoctorShow">呼叫医助次数</span>
<span class="callDoctorNum">389</span>
<span class="laterDoctorShow">接诊医生迟到人数</span>
<span class="laterDoctorNum">167</span>
</div>
</el-col>
</el-row>
</div>
<!-- 问诊列表 -->
......@@ -101,7 +112,6 @@
.header {
padding: 30px;
width: 100%;
background: #ffffff;
.el-input__inner {
width: 173px;
......@@ -110,6 +120,46 @@
border-radius: 7px;
border: 1px solid #d9d9d9;
}
.row-col-show {
.el-col-12 {
.right {
display: flex;
width: 70%;
align-items: center;
justify-content: space-around;
.totalNumShow {
font-size: 16px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #212121;
}
.callDoctorShow {
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #666666;
}
.callDoctorNum {
font-size: 24px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #212121;
}
.laterDoctorShow {
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #666666;
}
.laterDoctorNum {
font-size: 24px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #212121;
}
}
}
}
}
.detailslist {
display: flex;
......
......@@ -20,6 +20,11 @@
v-for="(item, index) in adminList"
:key="index"
class="checkbox-item"
@change="
(val) => {
setResert(val, item);
}
"
>
<el-checkbox :label="item.id">
{{ item.name }}
......@@ -40,19 +45,48 @@
</el-button>
</div>
</div>
<el-dialog
:visible.sync="showIsReset"
width="30%"
>
<div class="show-info-title">
<p>将永久删除名下</p>
<p>所有的科室及上级医生</p>
</div>
<div
class="work-info-botton"
style="text-align: center"
>
<span
slot="footer"
class="dialog-footer"
style="text-align: center"
>
<el-button
class="cancel-submit"
@click="cancelResert"
>取 消</el-button>
<el-button
class="contest"
type="primary"
:disabled="isClick"
@click="confirmResert"
>确定</el-button>
</span>
</div>
</el-dialog>
</div>
</template>
<script>
import {
setDiagnoseMatch,
operatorQuery,
sumbitMatch
} from '@/api/operation';
import { setDiagnoseMatch, operatorQuery, sumbitMatch } from '@/api/operation';
import { doctorListRest } from '@/api/workbench';
export default {
data() {
return {
checklist: [],
adminList: [],
showIsReset: false,
operateId: '',
};
},
mounted() {
......@@ -60,6 +94,12 @@
this.getAdminList();
},
methods: {
setResert(value, item) {
if (this.checklist.indexOf(item.id) == -1) {
this.showIsReset = true;
this.operateId = item.id;
}
},
cancel() {
this.$confirm('取消后将不保存本次操作内容', '确认取消吗?', {
confirmButtonText: '确定',
......@@ -103,6 +143,19 @@
}
});
},
cancelResert() {
this.showIsReset = false;
},
confirmResert() {
const param = {
uid: this.operateId,
};
doctorListRest(param).then((res) => {
if (res.code == '000000') {
this.showIsReset = false;
}
});
},
},
};
</script>
......@@ -117,7 +170,7 @@
margin-bottom: 20px;
}
.operation-content {
padding: 20px;
padding: 20px;
background: #ffffff;
.checkbox-container {
......@@ -139,5 +192,31 @@
align-items: center;
}
}
.show-info-title {
text-align: center;
padding: 30px;
font-size: 18px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #02120f;
}
.dialog-footer {
.contest {
min-width: 160px;
height: 40px;
background: #0d9078;
border-radius: 20px;
}
.cancel-submit {
min-width: 160px;
height: 40px;
border-radius: 20px;
border: 1px solid #0d9078;
font-size: 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #0d9078;
}
}
}
</style>
......@@ -76,15 +76,17 @@
getNav() {
menuList({ systemType: this.systemType }).then((res) => {
if (res.code == '000000') {
const { vueMenuDtos, userId } = res.data;
const { vueMenuDtos, userId, userName } = res.data;
const i = {
isSuper: false,
userID: userId,
};
const u = this.getSocketUrl('test');
console.log(BUILD_ENV);
// u.url = 'https://test1-sockets.yunqueyi.com';
storejs.set('initSocketInfo', { url: u, userId: userId });
const u = this.getSocketUrl(BUILD_ENV);
storejs.set('initSocketInfo', {
url: u,
userId: userId,
userName: userName,
});
this.$store.dispatch('socket/initSocket', { url: u, userId: userId });
vueMenuDtos.map((item) => {
if (item.index.indexOf('administrators') > -1) {
......@@ -183,8 +185,6 @@
color: #fff;
background: #06232c;
}
}
}
</style>
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册