|
|
@@ -1,6 +1,6 @@
|
|
|
<template>
|
|
|
<div>
|
|
|
- <NavBar />
|
|
|
+ <NavBar/>
|
|
|
<van-row>
|
|
|
<van-col span="24">
|
|
|
<org-tree v-model="cascaderValue" @change="getDataList"></org-tree>
|
|
|
@@ -8,9 +8,9 @@
|
|
|
</van-row>
|
|
|
<van-row>
|
|
|
<van-col span="12"
|
|
|
- >
|
|
|
+ >
|
|
|
|
|
|
- <van-cell title="状态" @click="showStatus = true" is-link arrow-direction="down" :value="fieldValue" />
|
|
|
+ <van-cell title="状态" @click="showStatus = true" is-link arrow-direction="down" :value="fieldValue"/>
|
|
|
<van-popup v-model="showStatus" round position="bottom">
|
|
|
<van-picker
|
|
|
title="调阅状态"
|
|
|
@@ -21,11 +21,13 @@
|
|
|
@cancel="onCancel"
|
|
|
@change="onChange"
|
|
|
:close-on-click-overlay="false"
|
|
|
- /> </van-popup
|
|
|
- ></van-col>
|
|
|
+ />
|
|
|
+ </van-popup
|
|
|
+ >
|
|
|
+ </van-col>
|
|
|
<van-col span="12">
|
|
|
|
|
|
- <van-cell title="月份" @click="showDate = true" is-link arrow-direction="down" :value="currentDate" />
|
|
|
+ <van-cell title="月份" @click="showDate = true" is-link arrow-direction="down" :value="currentDate"/>
|
|
|
|
|
|
<van-popup v-model="showDate" round position="bottom">
|
|
|
<van-datetime-picker
|
|
|
@@ -61,14 +63,17 @@
|
|
|
>
|
|
|
<template #title>
|
|
|
<span class="custom-title">
|
|
|
- {{ item.taskName
|
|
|
- }}<van-tag class="resetDy" @click.stop="resetHandler(item.id)" v-if="item.status == 1" type="primary"
|
|
|
- >重新调阅</van-tag
|
|
|
- ></span
|
|
|
+ {{
|
|
|
+ item.taskName
|
|
|
+ }}<van-tag class="resetDy" @click.stop="resetHandler(item.id)" v-if="item.status == 1&&checkIsCurrentOrgTask()" type="primary"
|
|
|
+ >重新调阅</van-tag
|
|
|
+ ></span
|
|
|
>
|
|
|
|
|
|
|
|
|
- <span :class="monitor[item.status]">{{ item.status | statusFilter(this_) }}</span>
|
|
|
+ <span v-if="checkIsCurrentOrgTask()" :class="monitor[item.status]">{{
|
|
|
+ item.status | statusFilter(this_)
|
|
|
+ }}</span>
|
|
|
</template>
|
|
|
</van-cell>
|
|
|
</van-cell-group>
|
|
|
@@ -81,14 +86,15 @@
|
|
|
</template>
|
|
|
<script>
|
|
|
import NavBar from '@/components/NavBar'
|
|
|
-import { Col, Row, Cascader, Dialog, DatetimePicker, Icon, Picker } from 'vant'
|
|
|
-import { deptTreeList, selectListApp, registration, resetTask ,getMonitorStart} from '@/api/toConsult.js'
|
|
|
-import { Toast } from 'vant'
|
|
|
+import {Col, Row, Cascader, Dialog, DatetimePicker, Icon, Picker} from 'vant'
|
|
|
+import {deptTreeList, selectListApp, registration, resetTask, getMonitorStart} from '@/api/toConsult.js'
|
|
|
+import {Toast} from 'vant'
|
|
|
import OrgTree from '@/components/orgTree'
|
|
|
-import { newDateMonth } from '@/utils/date.js'
|
|
|
+import {newDateMonth} from '@/utils/date.js'
|
|
|
import scandialog from '@/components/nfcPopup/alone.vue'
|
|
|
-import { base64ToBlob } from '@/utils/base64TurnImg.js'
|
|
|
-import { upload } from '@/api/public'
|
|
|
+import {base64ToBlob} from '@/utils/base64TurnImg.js'
|
|
|
+import {upload} from '@/api/public'
|
|
|
+
|
|
|
export default {
|
|
|
data() {
|
|
|
return {
|
|
|
@@ -163,6 +169,9 @@ export default {
|
|
|
methods: {
|
|
|
//单元格点击事件
|
|
|
linkHandler(status, id, item) {
|
|
|
+ if (!this.checkIsCurrentOrgTask()){
|
|
|
+ return ;
|
|
|
+ }
|
|
|
if (status == 0) {
|
|
|
//判断当前时间是否小于开始时间 小于则不能进行操作
|
|
|
let date = new Date().getTime()
|
|
|
@@ -171,12 +180,12 @@ export default {
|
|
|
if (date <= startDate) {
|
|
|
Toast.success('当前调阅任务还未开始,不能进行调阅')
|
|
|
} else {
|
|
|
- this.startMonitorHandler(id,status)
|
|
|
+ this.startMonitorHandler(id, status)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if(status == 1){
|
|
|
- this.startMonitorHandler(id,status);
|
|
|
+ if (status == 1) {
|
|
|
+ this.startMonitorHandler(id, status);
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
@@ -189,6 +198,9 @@ export default {
|
|
|
},
|
|
|
//重新调阅
|
|
|
resetHandler(id) {
|
|
|
+ if (!this.checkIsCurrentOrgTask()){
|
|
|
+ return ;
|
|
|
+ }
|
|
|
Dialog.confirm({
|
|
|
title: '提示',
|
|
|
message: '确认要对该任务进行重新调阅吗?'
|
|
|
@@ -241,7 +253,8 @@ export default {
|
|
|
})
|
|
|
// this.selectListAppHandler()
|
|
|
},
|
|
|
- selectListAppHandler(type = 0, callBack = () => {}) {
|
|
|
+ selectListAppHandler(type = 0, callBack = () => {
|
|
|
+ }) {
|
|
|
if (!type) {
|
|
|
this.pageNum = 1
|
|
|
this.taskList = []
|
|
|
@@ -255,7 +268,7 @@ export default {
|
|
|
orgId: this.cascaderValue || JSON.parse(window.sessionStorage.getItem('SET_USER_ORGID')) + '' || '',
|
|
|
moth: this.currentDate || ''
|
|
|
}).then(res => {
|
|
|
- let { code, rows, total } = res
|
|
|
+ let {code, rows, total} = res
|
|
|
if (code == 200) {
|
|
|
if (type) {
|
|
|
this.taskList.push(...rows)
|
|
|
@@ -295,12 +308,12 @@ export default {
|
|
|
}
|
|
|
registration(obj).then(res => {
|
|
|
|
|
|
- let { code, data, msg } = res
|
|
|
+ let {code, data, msg} = res
|
|
|
if (code == 200) {
|
|
|
Toast.success('扫描成功')
|
|
|
this.$router.push('/consultInfo/' + this.taskId + '_' + this.taskStatus)
|
|
|
- }else{
|
|
|
- Toast.error({ message: msg, position: 'top' })
|
|
|
+ } else {
|
|
|
+ Toast.error({message: msg, position: 'top'})
|
|
|
|
|
|
}
|
|
|
})
|
|
|
@@ -316,7 +329,7 @@ export default {
|
|
|
monitorFlag: 0
|
|
|
}
|
|
|
registration(obj).then(res => {
|
|
|
- let { code, data, msg } = res
|
|
|
+ let {code, data, msg} = res
|
|
|
if (code == 200) {
|
|
|
Toast.success('扫描成功')
|
|
|
this.$router.push('/consultInfo/' + this.taskId + '_' + this.taskStatus)
|
|
|
@@ -336,31 +349,39 @@ export default {
|
|
|
this.show = false
|
|
|
this.selectListAppHandler()
|
|
|
},
|
|
|
+ checkIsCurrentOrgTask() {
|
|
|
+ //判断是否当前用户所属机构的任务, 用户仅允许执行自己机构的任务
|
|
|
+ let orgId = JSON.parse(window.sessionStorage.getItem('SET_USER_ORGID'));
|
|
|
+ if (orgId == this.cascaderValue) {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ return false;
|
|
|
+ },
|
|
|
// 开始调阅事件
|
|
|
- startMonitorHandler(taskId,status) {
|
|
|
+ startMonitorHandler(taskId, status) {
|
|
|
this.taskId = taskId;
|
|
|
this.taskStatus = status;
|
|
|
- let obj = {taskId:taskId}
|
|
|
+ let obj = {taskId: taskId}
|
|
|
getMonitorStart(obj).then(res => {
|
|
|
- let { code, data, msg } = res
|
|
|
+ let {code, data, msg} = res
|
|
|
let dayNums = data.dayNums;
|
|
|
let noComplete = data.noComplete;
|
|
|
if (noComplete > 0) {
|
|
|
this.$router.push('/consultInfo/' + taskId + '_' + status)
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
|
|
|
- if(dayNums >= 5){
|
|
|
+ if (dayNums >= 5) {
|
|
|
//提醒确认
|
|
|
Dialog.confirm({
|
|
|
title: '提示',
|
|
|
message: `当前调阅任务今日调阅已达到${dayNums}次,是否继续调阅?`,
|
|
|
}).then(() => {
|
|
|
this.$refs.scandialog.visible = true;
|
|
|
- this.globalLoading=true;
|
|
|
+ this.globalLoading = true;
|
|
|
})
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
this.$refs.scandialog.visible = true;
|
|
|
- this.globalLoading=true;
|
|
|
+ this.globalLoading = true;
|
|
|
}
|
|
|
}
|
|
|
})
|
|
|
@@ -375,13 +396,14 @@ export default {
|
|
|
//级联选择当前任意层级触发
|
|
|
changeCascader(val) {
|
|
|
console.log(val)
|
|
|
- let { selectedOptions } = val
|
|
|
+ let {selectedOptions} = val
|
|
|
//级联值
|
|
|
this.cascaderValue = selectedOptions[selectedOptions.length - 1].id
|
|
|
//输入框值
|
|
|
this.value1 = selectedOptions[selectedOptions.length - 1].name
|
|
|
},
|
|
|
- onFinish() {},
|
|
|
+ onFinish() {
|
|
|
+ },
|
|
|
//搜索选择状态时触发
|
|
|
onConfirm(value, index) {
|
|
|
this.fieldValue = value
|
|
|
@@ -412,7 +434,8 @@ export default {
|
|
|
d = d < 10 ? '0' + d : d
|
|
|
return y + '-' + m
|
|
|
},
|
|
|
- onChange(picker, value, index) {},
|
|
|
+ onChange(picker, value, index) {
|
|
|
+ },
|
|
|
onCancel() {
|
|
|
this.show = false
|
|
|
this.showStatus = false
|
|
|
@@ -427,18 +450,22 @@ export default {
|
|
|
margin: 20px;
|
|
|
|
|
|
display: flex;
|
|
|
+
|
|
|
.sonLeftBox {
|
|
|
padding: 10px;
|
|
|
flex: 1;
|
|
|
background-color: #fff;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
.custom-title {
|
|
|
font-weight: bold;
|
|
|
}
|
|
|
+
|
|
|
.van-cell__label {
|
|
|
font-size: 25px;
|
|
|
}
|
|
|
+
|
|
|
.monitor {
|
|
|
color: #008cd6;
|
|
|
padding-left: 10px;
|
|
|
@@ -449,6 +476,7 @@ export default {
|
|
|
// border-radius: 10px;
|
|
|
// background-color: #8cb585;
|
|
|
}
|
|
|
+
|
|
|
.monitored {
|
|
|
color: #bc9f71;
|
|
|
|
|
|
@@ -460,6 +488,7 @@ export default {
|
|
|
// border-radius: 10px;
|
|
|
// background-color: #1989fa;
|
|
|
}
|
|
|
+
|
|
|
.monitoring {
|
|
|
color: #009240;
|
|
|
padding-left: 10px;
|
|
|
@@ -469,6 +498,7 @@ export default {
|
|
|
// border-radius: 10px;
|
|
|
// background-color: #25da0b;
|
|
|
}
|
|
|
+
|
|
|
.waringtoring {
|
|
|
color: #d7000f;
|
|
|
|
|
|
@@ -480,14 +510,17 @@ export default {
|
|
|
// border-radius: 10px;
|
|
|
// background-color: #e46962;
|
|
|
}
|
|
|
+
|
|
|
.title {
|
|
|
margin: 10px;
|
|
|
margin-left: 0px;
|
|
|
font-size: 40px;
|
|
|
}
|
|
|
+
|
|
|
.time {
|
|
|
font-size: 32px;
|
|
|
}
|
|
|
+
|
|
|
.startMonitor {
|
|
|
background-color: #f5f5f9;
|
|
|
color: #1989fa;
|
|
|
@@ -496,6 +529,7 @@ export default {
|
|
|
font-size: 36px;
|
|
|
text-align: center;
|
|
|
}
|
|
|
+
|
|
|
.endMonitor {
|
|
|
background-color: #f5f5f9;
|
|
|
color: #1989fa;
|
|
|
@@ -504,52 +538,64 @@ export default {
|
|
|
font-size: 36px;
|
|
|
text-align: center;
|
|
|
}
|
|
|
+
|
|
|
.img_box {
|
|
|
text-align: center;
|
|
|
+
|
|
|
.img {
|
|
|
width: 200px;
|
|
|
height: 200px;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
.text {
|
|
|
text-align: center;
|
|
|
font-size: 30px;
|
|
|
margin-top: 30px;
|
|
|
margin-bottom: 100px;
|
|
|
}
|
|
|
+
|
|
|
.btns {
|
|
|
margin-top: 40px;
|
|
|
margin-bottom: 40px;
|
|
|
display: flex;
|
|
|
justify-content: space-around;
|
|
|
+
|
|
|
.nfcPhoto {
|
|
|
color: #409bf2;
|
|
|
+
|
|
|
div {
|
|
|
width: 100%;
|
|
|
text-align: center;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
.btnf_box {
|
|
|
background-color: #fff;
|
|
|
}
|
|
|
+
|
|
|
.van-dialog {
|
|
|
padding: 30px;
|
|
|
}
|
|
|
+
|
|
|
.spanimg {
|
|
|
display: flex;
|
|
|
justify-content: flex-end;
|
|
|
+
|
|
|
.close {
|
|
|
width: 50px;
|
|
|
height: 50px;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
.btn {
|
|
|
float: right;
|
|
|
margin-top: 24px;
|
|
|
margin-right: 20px;
|
|
|
box-sizing: border-box;
|
|
|
}
|
|
|
+
|
|
|
.bigbox {
|
|
|
height: calc(100vh - 400px);
|
|
|
overflow: scroll;
|
|
|
@@ -558,11 +604,13 @@ export default {
|
|
|
margin-right: 20px;
|
|
|
background-color: #fff;
|
|
|
}
|
|
|
+
|
|
|
.card {
|
|
|
margin: 20px;
|
|
|
margin-bottom: 0px;
|
|
|
box-shadow: 0 8px 12px #ebedf0;
|
|
|
}
|
|
|
+
|
|
|
.titleClass {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
@@ -577,19 +625,23 @@ export default {
|
|
|
line-height: 50px;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
.mainItem {
|
|
|
display: flex;
|
|
|
font-size: 28px;
|
|
|
padding: 20px;
|
|
|
justify-content: revert;
|
|
|
+
|
|
|
.date {
|
|
|
margin-left: 30px;
|
|
|
}
|
|
|
+
|
|
|
.condition {
|
|
|
color: #1989fa;
|
|
|
text-decoration: underline;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
.bttons {
|
|
|
color: #1989fa;
|
|
|
border: none;
|
|
|
@@ -598,17 +650,21 @@ export default {
|
|
|
:deep.van-field--disabled {
|
|
|
color: #323233;
|
|
|
}
|
|
|
+
|
|
|
:deep.van-field--disabled .van-field__label {
|
|
|
color: #323233;
|
|
|
}
|
|
|
+
|
|
|
:deep .van-field__control[disabled] {
|
|
|
color: #323233;
|
|
|
-webkit-text-fill-color: #323233;
|
|
|
}
|
|
|
+
|
|
|
.resetDy {
|
|
|
margin-left: 20px;
|
|
|
}
|
|
|
-.van-cell__value{
|
|
|
+
|
|
|
+.van-cell__value {
|
|
|
color: black;
|
|
|
text-align: left;
|
|
|
}
|