1091 lines
32 KiB
Java
1091 lines
32 KiB
Java
<template>
|
|
<div class="box">
|
|
<div class="fixed">
|
|
<div class="header-search">
|
|
<!-- <van-icon class="icon" name="arrow-left"/>-->
|
|
<form action="/" style="width: 100%;">
|
|
<van-search v-model="phoneQueryValue"
|
|
@search="onSearch"
|
|
@clear="onClear"
|
|
:placeholder="$t('phoneSearch')"/>
|
|
</form>
|
|
</div>
|
|
<div class="content">
|
|
<van-tabs v-model="activeTab" @change="activeChange">
|
|
<van-tab name="toDoProcess" :title="$t('toDoProcess')"></van-tab>
|
|
<van-tab name="processDone" :title="$t('processDone')"></van-tab>
|
|
<van-tab name="sentProcess" :title="$t('sentProcess')"></van-tab>
|
|
</van-tabs>
|
|
</div>
|
|
<div class="search-right">
|
|
<van-icon @click="searchIconClick" class="search-right-icon" name="filter-o"/>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="content-box" v-if="activeTab == 'toDoProcess'">
|
|
<van-list
|
|
v-model="toDoProcessLoading"
|
|
:finished="toDoProcessFinished"
|
|
:finished-text="$t('noMore')"
|
|
:loading-text="$t('loading')"
|
|
@load="toDoProcessOnLoad"
|
|
>
|
|
<div class="content-box-content"
|
|
@click="toDoCenterClick(item,false)"
|
|
v-for="(item,index) in toDoProcessList"
|
|
:key="index">
|
|
<div class="content-box-title-to">
|
|
{{item.serialNumber}}
|
|
</div>
|
|
<div class="content-box-type">
|
|
<span class="content-box-left"
|
|
:class="{'content-box-left-one':language == 'en-us' ? true : false}">{{$t('category')}}</span>
|
|
<span class="content-box-text">{{item.flowTypeShow}}</span>
|
|
</div>
|
|
<div class="content-box-type">
|
|
<span class="content-box-left"
|
|
:class="{'content-box-left-one':language == 'en-us' ? true : false}">{{$t('project')}}</span>
|
|
<span class="content-box-text">{{item.projectName}}</span>
|
|
</div>
|
|
<div class="content-box-type">
|
|
<span class="content-box-left"
|
|
:class="{'content-box-left-one':language == 'en-us' ? true : false}">{{$t('node')}}</span>
|
|
<span class="content-box-text">{{item.taskDefinitionKeyName || '--'}}</span>
|
|
</div>
|
|
<div v-if="item.flowType == '2' || item.flowType == '4' || item.flowType == '21'"></div>
|
|
<div class="content-box-right" v-else>
|
|
<img src="~@/assets/icon_single_screen.svg" alt="">
|
|
</div>
|
|
|
|
</div>
|
|
</van-list>
|
|
</div>
|
|
|
|
<div class="content-box" v-else-if="activeTab == 'processDone'">
|
|
<van-list
|
|
v-model="processDoneLoading"
|
|
:finished="processDoneFinished"
|
|
:finished-text="$t('noMore')"
|
|
:loading-text="$t('loading')"
|
|
@load="processDoneOnLoad"
|
|
>
|
|
<div class="content-box-content" @click="toDoCenterClick(item,true)"
|
|
v-for="(item,index) in processDoneList"
|
|
:key="index">
|
|
<div class="content-box-title">
|
|
{{item.serialNumber}}
|
|
</div>
|
|
<div class="content-box-type">
|
|
<span class="content-box-left"
|
|
:class="{'content-box-left-one':language == 'en-us' ? true : false}">{{$t('category')}}</span>
|
|
<span class="content-box-text">{{item.flowTypeShow}}</span>
|
|
</div>
|
|
<div class="content-box-type">
|
|
<span class="content-box-left"
|
|
:class="{'content-box-left-one':language == 'en-us' ? true : false}">{{$t('project')}}</span>
|
|
<span class="content-box-text">{{item.projectName}}</span>
|
|
</div>
|
|
<div class="content-box-type">
|
|
<span class="content-box-left"
|
|
:class="{'content-box-left-one':language == 'en-us' ? true : false}">{{$t('node')}}</span>
|
|
<span class="content-box-text">{{item.taskDefinitionKeyName || '--'}}</span>
|
|
</div>
|
|
|
|
<div v-if="item.flowType == '2' || item.flowType == '4' || item.flowType == '21'"></div>
|
|
<div class="content-box-right" v-else>
|
|
<img src="~@/assets/icon_single_screen.svg" alt="">
|
|
</div>
|
|
<!-- <div class="content-box-right">-->
|
|
<!-- 符合性审查-->
|
|
<!-- </div>-->
|
|
</div>
|
|
</van-list>
|
|
</div>
|
|
|
|
<div class="content-box" v-else-if="activeTab == 'sentProcess'">
|
|
<van-list
|
|
v-model="sentProcessLoading"
|
|
:finished="sentProcessFinished"
|
|
:finished-text="$t('noMore')"
|
|
:loading-text="$t('loading')"
|
|
@load="sentProcessOnLoad"
|
|
>
|
|
<div class="content-box-content" @click="toDoCenterClick(item,true)"
|
|
v-for="(item,index) in sentProcessList"
|
|
:key="index">
|
|
<div class="content-box-title">
|
|
{{item.serialNumber}}
|
|
</div>
|
|
<div class="content-box-type">
|
|
<span class="content-box-left"
|
|
:class="{'content-box-left-one':language == 'en-us' ? true : false}">{{$t('category')}}</span>
|
|
<span class="content-box-text">{{item.flowTypeShow}}</span>
|
|
</div>
|
|
<div class="content-box-type">
|
|
<span class="content-box-left"
|
|
:class="{'content-box-left-one':language == 'en-us' ? true : false}">{{$t('project')}}</span>
|
|
<span class="content-box-text">{{item.projectName}}</span>
|
|
</div>
|
|
<div class="content-box-type">
|
|
<span class="content-box-left"
|
|
:class="{'content-box-left-one':language == 'en-us' ? true : false}">{{$t('node')}}</span>
|
|
<span class="content-box-text">{{item.taskDefinitionKeyName || '--'}}</span>
|
|
</div>
|
|
<div v-if="item.flowType == '2' || item.flowType == '4' || item.flowType == '21'"></div>
|
|
<div class="content-box-right" v-else>
|
|
<img src="~@/assets/icon_single_screen.svg" alt="">
|
|
</div>
|
|
</div>
|
|
</van-list>
|
|
</div>
|
|
<van-tabbar v-model="active" @change="onChange">
|
|
<van-tabbar-item name="search" icon="search">{{$t('phoneSearch')}}</van-tabbar-item>
|
|
<van-tabbar-item name="toDoCenter" icon="bell">{{$t('todocenter')}}</van-tabbar-item>
|
|
<van-tabbar-item name="taskData" icon="underway">{{$t('taskStatistics')}}</van-tabbar-item>
|
|
<van-tabbar-item name="home" icon="manager">{{$t('mine')}}</van-tabbar-item>
|
|
</van-tabbar>
|
|
|
|
<van-popup
|
|
v-model="show"
|
|
position="right"
|
|
closeable
|
|
:close-on-click-overlay="false"
|
|
:style="{ width: '80%' }">
|
|
<div class="popup-box">
|
|
<van-form class="formClass">
|
|
<van-field name="checkboxGroup" class="textarea" :label="$t('ProcessType')">
|
|
<template #input>
|
|
<div class="checkboxGroup">
|
|
<div class="checkboxGroup-text"
|
|
:class="{'checkboxGroup-text-color':checkboxGroupColor('2')}"
|
|
@click="processClick('2')">
|
|
{{$t('designComplianceProcess')}}
|
|
</div>
|
|
<div class="checkboxGroup-text"
|
|
:class="{'checkboxGroup-text-color':checkboxGroupColor('4')}"
|
|
@click="processClick('4')">
|
|
{{$t('validationComplianceProcess')}}
|
|
</div>
|
|
<div class="checkboxGroup-text"
|
|
:class="{'checkboxGroup-text-color':checkboxGroupColor('21')}"
|
|
@click="processClick('21')">
|
|
{{$t('preHomoFlow')}}
|
|
</div>
|
|
<!-- <van-checkbox name="2" shape="square">{{$t('designComplianceProcess')}}</van-checkbox>-->
|
|
<!-- <van-checkbox name="4" shape="square">{{$t('validationComplianceProcess')}}</van-checkbox>-->
|
|
<!-- <van-checkbox name="21" shape="square">{{$t('preHomoFlow')}}</van-checkbox>-->
|
|
</div>
|
|
</template>
|
|
</van-field>
|
|
<van-field
|
|
:value="form.value"
|
|
class="textarea"
|
|
:label="$t('cutoffTime')"
|
|
:placeholder="$t('clickAndSelect')">
|
|
<template #input>
|
|
<van-dropdown-menu class="cutoffTimeClass">
|
|
<van-dropdown-item v-model="form.selectModel" :options="columns"/>
|
|
</van-dropdown-menu>
|
|
</template>
|
|
</van-field>
|
|
<!-- <van-popup v-model="showPicker" position="bottom">-->
|
|
<!-- <van-picker-->
|
|
<!-- show-toolbar-->
|
|
<!-- :columns="columns"-->
|
|
<!-- @confirm="onConfirm"-->
|
|
<!-- @cancel="showPicker = false"-->
|
|
<!-- />-->
|
|
<!-- </van-popup>-->
|
|
<van-field name="checkboxGroup" class="textarea" :label="$t('treatmentMode')">
|
|
<template #input>
|
|
<div class="Mode-text">
|
|
<div class="Mode-text-left">
|
|
{{$t('onlyMobilePhoneAreDisplayed')}}
|
|
</div>
|
|
</div>
|
|
<van-switch v-model="form.checked"/>
|
|
</template>
|
|
</van-field>
|
|
</van-form>
|
|
<div class="button">
|
|
<van-button class="reset" type="primary" @click="resetClick">{{$t('phoneReset')}}</van-button>
|
|
<van-button class="primary" type="primary" @click="queryClick">{{$t('query')}}</van-button>
|
|
</div>
|
|
</div>
|
|
</van-popup>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
import { getAction, postAction, deleteAction, downloadFile } from '@/api/manage'
|
|
import { Toast } from 'vant'
|
|
|
|
export default {
|
|
name: 'phoneToDoCenter',
|
|
data() {
|
|
return {
|
|
active: 'toDoCenter',
|
|
show: false,
|
|
date: '',
|
|
columns: [
|
|
{
|
|
text: this.$t('pleaseSelect'),
|
|
value: '0'
|
|
},
|
|
{
|
|
text: this.$t('nearlyMonth'),
|
|
value: '1'
|
|
},
|
|
{
|
|
text: this.$t('nearlyThreeMonths'),
|
|
value: '3'
|
|
},
|
|
{
|
|
text: this.$t('nearlySixMonths'),
|
|
value: '6'
|
|
},
|
|
{
|
|
text: this.$t('nearlyYear'),
|
|
value: '12'
|
|
}],
|
|
showPicker: false,
|
|
value: '',
|
|
activeTab: '',
|
|
language: localStorage.getItem('language'),
|
|
form: {
|
|
checked: false,
|
|
flowType: [],
|
|
selectModel: '0',
|
|
mobileProcessing: '0'
|
|
},
|
|
toDoProcessList: [],
|
|
toDoProcessLoading: false,
|
|
toDoProcessFinished: false,
|
|
toDoProcessPageNo: 0,
|
|
toDoProcessPageSize: 10,
|
|
processDoneList: [],
|
|
processDoneLoading: false,
|
|
processDoneFinished: false,
|
|
processDonePageNo: 0,
|
|
processDonePageSize: 10,
|
|
sentProcessList: [],
|
|
sentProcessLoading: false,
|
|
sentProcessFinished: false,
|
|
sentProcessPageNo: 0,
|
|
sentProcessPageSize: 10,
|
|
phoneQueryValue: ''
|
|
}
|
|
},
|
|
mounted() {
|
|
document.title = 'NIO GRP'
|
|
if (this.$route.query.searchFlowType) {
|
|
let flowType = this.$route.query.searchFlowType
|
|
flowType = flowType.split(',')
|
|
this.form.flowType = []
|
|
this.form.flowType = this.form.flowType.concat(flowType)
|
|
}
|
|
if (this.$route.query.searchValue) {
|
|
this.phoneQueryValue = this.$route.query.searchValue
|
|
}
|
|
if (this.$route.query.activeTab) {
|
|
this.activeTab = this.$route.query.activeTab
|
|
this.form.checked = JSON.parse(this.$route.query.checked)
|
|
this.form.selectModel = this.$route.query.selectModel
|
|
}
|
|
this.form = { ...this.form }
|
|
// this.toDoProcessPageNo = 1
|
|
// this.getToDoProcess()
|
|
},
|
|
methods: {
|
|
onSearch() {
|
|
if (this.form.checked) {
|
|
this.form.mobileProcessing = '1'
|
|
} else {
|
|
this.form.mobileProcessing = '0'
|
|
}
|
|
if (this.activeTab == 'toDoProcess') {
|
|
this.toDoProcessLoading = true
|
|
this.toDoProcessList = []
|
|
this.toDoProcessFinished = false
|
|
this.toDoProcessPageNo = 1
|
|
this.getToDoProcess()
|
|
} else if (this.activeTab == 'processDone') {
|
|
this.processDoneLoading = true
|
|
this.processDoneList = []
|
|
this.processDoneFinished = false
|
|
this.processDonePageNo = 1
|
|
this.getProcessDone()
|
|
} else if (this.activeTab == 'sentProcess') {
|
|
this.sentProcessLoading = true
|
|
this.sentProcessList = []
|
|
this.sentProcessFinished = false
|
|
this.sentProcessPageNo = 1
|
|
this.getSentProcess()
|
|
}
|
|
},
|
|
onClear() {
|
|
this.phoneQueryValue = ''
|
|
if (this.form.checked) {
|
|
this.form.mobileProcessing = '1'
|
|
} else {
|
|
this.form.mobileProcessing = '0'
|
|
}
|
|
if (this.activeTab == 'toDoProcess') {
|
|
this.toDoProcessLoading = true
|
|
this.toDoProcessList = []
|
|
this.toDoProcessFinished = false
|
|
this.toDoProcessPageNo = 1
|
|
this.getToDoProcess()
|
|
} else if (this.activeTab == 'processDone') {
|
|
this.processDoneLoading = true
|
|
this.processDoneList = []
|
|
this.processDoneFinished = false
|
|
this.processDonePageNo = 1
|
|
this.getProcessDone()
|
|
} else if (this.activeTab == 'sentProcess') {
|
|
this.sentProcessLoading = true
|
|
this.sentProcessList = []
|
|
this.sentProcessFinished = false
|
|
this.sentProcessPageNo = 1
|
|
this.getSentProcess()
|
|
}
|
|
},
|
|
onChange(value) {
|
|
if (value == 'search') {
|
|
this.$router.push({
|
|
path: '/phoneSearch'
|
|
})
|
|
} else if (value == 'taskData') {
|
|
this.$router.push({
|
|
path: '/phoneTaskData'
|
|
})
|
|
} else if (value == 'home') {
|
|
this.$router.push({
|
|
path: '/phoneHome'
|
|
})
|
|
}
|
|
},
|
|
resetClick() {
|
|
this.form = {
|
|
checked: false,
|
|
selectModel: '0',
|
|
flowType: []
|
|
}
|
|
if (this.form.checked) {
|
|
this.form.mobileProcessing = '1'
|
|
} else {
|
|
this.form.mobileProcessing = '0'
|
|
}
|
|
this.show = false
|
|
if (this.activeTab == 'toDoProcess') {
|
|
this.toDoProcessLoading = true
|
|
this.toDoProcessList = []
|
|
this.toDoProcessFinished = false
|
|
this.toDoProcessPageNo = 1
|
|
this.getToDoProcess()
|
|
} else if (this.activeTab == 'processDone') {
|
|
this.processDoneLoading = true
|
|
this.processDoneList = []
|
|
this.processDoneFinished = false
|
|
this.processDonePageNo = 1
|
|
this.getProcessDone()
|
|
} else if (this.activeTab == 'sentProcess') {
|
|
this.sentProcessLoading = true
|
|
this.sentProcessList = []
|
|
this.sentProcessFinished = false
|
|
this.sentProcessPageNo = 1
|
|
this.getSentProcess()
|
|
}
|
|
},
|
|
queryClick() {
|
|
this.show = false
|
|
if (this.form.checked) {
|
|
this.form.mobileProcessing = '1'
|
|
} else {
|
|
this.form.mobileProcessing = '0'
|
|
}
|
|
if (this.activeTab == 'toDoProcess') {
|
|
this.toDoProcessLoading = true
|
|
this.toDoProcessList = []
|
|
this.toDoProcessFinished = false
|
|
this.toDoProcessPageNo = 1
|
|
this.getToDoProcess()
|
|
} else if (this.activeTab == 'processDone') {
|
|
this.processDoneLoading = true
|
|
this.processDoneList = []
|
|
this.processDoneFinished = false
|
|
this.processDonePageNo = 1
|
|
this.getProcessDone()
|
|
} else if (this.activeTab == 'sentProcess') {
|
|
this.sentProcessLoading = true
|
|
this.sentProcessList = []
|
|
this.sentProcessFinished = false
|
|
this.sentProcessPageNo = 1
|
|
this.getSentProcess()
|
|
}
|
|
},
|
|
activeChange() {
|
|
this.phoneQueryValue = ''
|
|
this.form = {
|
|
checked: false,
|
|
selectModel: '0',
|
|
flowType:[],
|
|
}
|
|
if (this.form.checked) {
|
|
this.form.mobileProcessing = '1'
|
|
} else {
|
|
this.form.mobileProcessing = '0'
|
|
}
|
|
if (this.activeTab == 'toDoProcess') {
|
|
this.toDoProcessLoading = true
|
|
this.toDoProcessList = []
|
|
this.toDoProcessFinished = false
|
|
this.toDoProcessPageNo = 1
|
|
this.getToDoProcess()
|
|
} else if (this.activeTab == 'processDone') {
|
|
this.processDoneLoading = true
|
|
this.processDoneList = []
|
|
this.processDoneFinished = false
|
|
this.processDonePageNo = 1
|
|
this.getProcessDone()
|
|
} else if (this.activeTab == 'sentProcess') {
|
|
this.sentProcessLoading = true
|
|
this.sentProcessList = []
|
|
this.sentProcessFinished = false
|
|
this.sentProcessPageNo = 1
|
|
this.getSentProcess()
|
|
}
|
|
},
|
|
toDoCenterClick(row, isTrue) {
|
|
let query = {}
|
|
if (!this.form.flowType) {
|
|
this.form.flowType = []
|
|
}
|
|
row.taskId = row.taskId + ''
|
|
if (row.taskId.length > 30) {
|
|
row.taskId = ''
|
|
}
|
|
if (row.taskDefinitionKey == 'fqlc' && isTrue) {
|
|
row.taskId = ''
|
|
}
|
|
if (row.flowType == '2') {
|
|
query = {
|
|
taskIds: row.taskId,
|
|
actiProcInstId: row.actiProcInstId,
|
|
projectTaskInventoryId: row.projectLawsInventoryId,
|
|
projectLibraryId: row.projectLibraryId,
|
|
TaskKey: row.taskDefinitionKey,
|
|
isDisplay: isTrue,
|
|
flowType: 2,
|
|
Sponsor: 'regulationOwnerName',
|
|
personLiable: 'designDutyIdName',
|
|
typeOfDeliverables: 'designDeliverableTypeName',
|
|
deliverableTemplate: 'designDeliverableTemplate',
|
|
DueDate: 'designDueDate',
|
|
remarks: 'designRemark',
|
|
goRouter: '/phoneToDoCenter',
|
|
searchValue: this.phoneQueryValue,
|
|
activeTab: this.activeTab,
|
|
checked: this.form.checked,
|
|
selectModel: this.form.selectModel,
|
|
searchFlowType: this.form.flowType.join(',')
|
|
}
|
|
this.$router.push({
|
|
path: '/phoneProcessManagement',
|
|
query: query
|
|
})
|
|
} else if (row.flowType == '4') {
|
|
query = {
|
|
taskIds: row.taskId,
|
|
actiProcInstId: row.actiProcInstId,
|
|
projectTaskInventoryId: row.projectLawsInventoryId,
|
|
projectLibraryId: row.projectLibraryId,
|
|
TaskKey: row.taskDefinitionKey,
|
|
isDisplay: isTrue,
|
|
flowType: 4,
|
|
Sponsor: 'regulationOwnerName',
|
|
personLiable: 'verifyDutyIdName',
|
|
typeOfDeliverables: 'verifyDeliverableTypeName',
|
|
deliverableTemplate: 'verifyDeliverableTemplate',
|
|
DueDate: 'verifyDueDate',
|
|
remarks: 'verifyRemark',
|
|
goRouter: '/phoneToDoCenter',
|
|
searchValue: this.phoneQueryValue,
|
|
activeTab: this.activeTab,
|
|
searchFlowType: this.form.flowType.join(','),
|
|
checked: this.form.checked,
|
|
selectModel: this.form.selectModel
|
|
}
|
|
this.$router.push({
|
|
path: '/phoneProcessManagement',
|
|
query: query
|
|
})
|
|
} else if (row.flowType == '21') {
|
|
if (row.taskDefinitionKey == 'Task Review' ||
|
|
row.taskDefinitionKey == 'Task handling' ||
|
|
row.taskDefinitionKey == 'Task responsibility confirmation') {
|
|
this.$router.push({
|
|
path: '/phoneHandlingPage',
|
|
query: {
|
|
projectLibraryId: row.projectLibraryId,
|
|
taskDefinitionKey: row.taskDefinitionKey,
|
|
isDisplay: isTrue,
|
|
projectName: row.projectName,
|
|
goRouter: '/phoneToDoCenter',
|
|
searchValue: this.phoneQueryValue,
|
|
activeTab: this.activeTab,
|
|
searchFlowType: this.form.flowType.join(','),
|
|
checked: this.form.checked,
|
|
selectModel: this.form.selectModel
|
|
}
|
|
})
|
|
} else {
|
|
if (isTrue) {
|
|
Toast(this.$t('pleaseViewOnPc'))
|
|
} else {
|
|
Toast(this.$t('pleaseProcessThePC'))
|
|
}
|
|
}
|
|
} else {
|
|
if (isTrue) {
|
|
Toast(this.$t('pleaseViewOnPc'))
|
|
} else {
|
|
Toast(this.$t('pleaseProcessThePC'))
|
|
}
|
|
}
|
|
},
|
|
searchIconClick() {
|
|
this.show = true
|
|
},
|
|
onConfirm(value) {
|
|
this.form.value = value
|
|
this.showPicker = false
|
|
},
|
|
toDoProcessOnLoad(value) {
|
|
if (this.toDoProcessFinished) {
|
|
this.toDoProcessList = []
|
|
this.toDoProcessFinished = false
|
|
} else {
|
|
this.toDoProcessPageNo++
|
|
this.getToDoProcess()
|
|
}
|
|
},
|
|
processDoneOnLoad() {
|
|
if (this.processDoneFinished) {
|
|
this.processDoneList = []
|
|
this.processDoneFinished = false
|
|
} else {
|
|
this.processDonePageNo++
|
|
this.getProcessDone()
|
|
}
|
|
},
|
|
sentProcessOnLoad() {
|
|
if (this.sentProcessFinished) {
|
|
this.sentProcessList = []
|
|
this.sentProcessFinished = false
|
|
} else {
|
|
this.sentProcessPageNo++
|
|
this.getSentProcess()
|
|
}
|
|
},
|
|
getToDoProcess() {
|
|
let form = JSON.parse(JSON.stringify(this.form))
|
|
if (form.flowType && form.flowType instanceof Array) {
|
|
form.flowType = form.flowType.join(',')
|
|
}
|
|
let query = {
|
|
pageNo: this.toDoProcessPageNo,
|
|
pageSize: this.toDoProcessPageSize,
|
|
...form,
|
|
phoneQueryValue: this.phoneQueryValue
|
|
}
|
|
getAction('/phone/toDoCenter/queryTodoTaskPage', query).then((res) => {
|
|
if (res.success) {
|
|
if (res.result.records.length > 0 && this.toDoProcessPageNo > 1) {
|
|
this.toDoProcessList = this.toDoProcessList.concat(res.result.records)
|
|
} else if (res.result.records.length > 0 && this.toDoProcessPageNo == 1) {
|
|
this.toDoProcessList = res.result.records
|
|
} else if (res.result.records.length == 0) {
|
|
this.toDoProcessFinished = true
|
|
}
|
|
this.toDoProcessLoading = false
|
|
} else {
|
|
this.toDoProcessList = []
|
|
}
|
|
})
|
|
},
|
|
|
|
getProcessDone() {
|
|
let form = JSON.parse(JSON.stringify(this.form))
|
|
if (form.flowType && form.flowType instanceof Array) {
|
|
form.flowType = form.flowType.join(',')
|
|
}
|
|
let query = {
|
|
pageNo: this.processDonePageNo,
|
|
pageSize: this.processDonePageSize,
|
|
...form,
|
|
phoneQueryValue: this.phoneQueryValue
|
|
}
|
|
getAction('/todoCenter/projectProcess/doneProcess', query).then((res) => {
|
|
if (res.success) {
|
|
if (res.result.records.length > 0 && this.processDonePageNo > 1) {
|
|
this.processDoneList = this.processDoneList.concat(res.result.records)
|
|
} else if (res.result.records.length > 0 && this.processDonePageNo == 1) {
|
|
this.processDoneList = res.result.records
|
|
} else if (res.result.records.length == 0) {
|
|
this.processDoneFinished = true
|
|
}
|
|
this.processDoneLoading = false
|
|
} else {
|
|
this.processDoneList = []
|
|
}
|
|
})
|
|
},
|
|
|
|
getSentProcess() {
|
|
let form = JSON.parse(JSON.stringify(this.form))
|
|
if (form.flowType && form.flowType instanceof Array) {
|
|
form.flowType = form.flowType.join(',')
|
|
}
|
|
let query = {
|
|
pageNo: this.sentProcessPageNo,
|
|
pageSize: this.sentProcessPageSize,
|
|
...form,
|
|
phoneQueryValue: this.phoneQueryValue
|
|
}
|
|
getAction('/todoCenter/projectProcess/issuedProcess', query).then((res) => {
|
|
if (res.success) {
|
|
if (res.result.records.length > 0 && this.sentProcessPageNo > 1) {
|
|
this.sentProcessList = this.sentProcessList.concat(res.result.records)
|
|
} else if (res.result.records.length > 0 && this.sentProcessPageNo == 1) {
|
|
this.sentProcessList = res.result.records
|
|
} else if (res.result.records.length == 0) {
|
|
this.sentProcessFinished = true
|
|
}
|
|
this.sentProcessLoading = false
|
|
} else {
|
|
this.sentProcessList = []
|
|
}
|
|
})
|
|
},
|
|
|
|
processClick(type) {
|
|
if (!this.form.flowType) {
|
|
this.form.flowType = []
|
|
}
|
|
if (this.form.flowType && this.form.flowType.length > 0) {
|
|
let isTrue = false
|
|
for (let i = 0; i < this.form.flowType.length; i++) {
|
|
if (this.form.flowType[i] == type) {
|
|
isTrue = true
|
|
this.form.flowType.splice(i, 1)
|
|
i--
|
|
}
|
|
}
|
|
if (!isTrue) {
|
|
this.form.flowType.push(type)
|
|
}
|
|
} else {
|
|
this.form.flowType.push(type)
|
|
}
|
|
this.form = { ...this.form }
|
|
},
|
|
|
|
checkboxGroupColor(type) {
|
|
if (this.form.flowType && this.form.flowType.length > 0) {
|
|
for (let i = 0; i < this.form.flowType.length; i++) {
|
|
if (this.form.flowType[i] == type) {
|
|
return true
|
|
}
|
|
}
|
|
}
|
|
return false
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style scoped>
|
|
::v-deep .van-tabbar-item--active {
|
|
color: #00B3BE;
|
|
}
|
|
|
|
.box {
|
|
padding-top: 3rem;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.header-search {
|
|
padding: 0 0.4rem;
|
|
display: flex;
|
|
align-items: center;
|
|
width: 100%;
|
|
}
|
|
|
|
.icon {
|
|
font-size: 0.66rem;
|
|
}
|
|
|
|
::v-deep .van-search {
|
|
padding: 0;
|
|
}
|
|
|
|
::v-deep .van-search__action {
|
|
font-size: 0.38rem;
|
|
font-family: PingFang SC-Regular, PingFang SC;
|
|
font-weight: 500;
|
|
color: #040B29;
|
|
padding: 0 0 0 0.3rem;
|
|
height: 1.1rem;
|
|
line-height: 1.1rem;
|
|
}
|
|
|
|
.header-search .van-search {
|
|
width: 100%;
|
|
height: 1.1rem;
|
|
}
|
|
|
|
::v-deep .header-search .van-search .van-search__content {
|
|
height: 1.1rem;
|
|
background: #F5F6F7;
|
|
border-radius: 0.2rem 0.2rem 0.2rem 0.2rem;
|
|
opacity: 1;
|
|
}
|
|
|
|
::v-deep .van-search__content .van-cell {
|
|
line-height: 0.9rem;
|
|
}
|
|
|
|
::v-deep .van-field__body {
|
|
font-size: 0.4rem;
|
|
}
|
|
|
|
::v-deep .van-field__left-icon .van-icon {
|
|
font-size: 0.46rem !important;
|
|
font-weight: 600 !important;
|
|
}
|
|
|
|
.content {
|
|
margin-top: 0.38rem;
|
|
position: relative;
|
|
background: #fff;
|
|
display: flex;
|
|
overflow: hidden;
|
|
}
|
|
|
|
::v-deep .van-tabs__line {
|
|
background-color: #00B3BE;
|
|
}
|
|
|
|
::v-deep .van-tab {
|
|
font-size: 0.38rem;
|
|
font-family: PingFang SC-Regular, PingFang SC;
|
|
font-weight: 400;
|
|
color: #868A9A;
|
|
flex: none;
|
|
margin-right: 0.2rem;
|
|
}
|
|
|
|
::v-deep .van-tab--active {
|
|
font-size: 0.38rem;
|
|
font-family: PingFang SC-Medium, PingFang SC;
|
|
font-weight: 600;
|
|
color: #040B29;
|
|
}
|
|
|
|
::v-deep .van-tabs {
|
|
padding: 0 0.4rem;
|
|
width: calc(100% - 1rem);
|
|
display: inline-block;
|
|
}
|
|
|
|
.search-right {
|
|
position: absolute;
|
|
/*margin-right: 0.4rem;*/
|
|
top: 1.55rem;
|
|
right: 0.4rem;
|
|
}
|
|
|
|
.search-right-icon {
|
|
font-size: 0.48rem;
|
|
}
|
|
|
|
.content-box {
|
|
padding: 0.4rem 0.4rem;
|
|
box-sizing: border-box;
|
|
background: #F7F7F8;
|
|
margin-bottom: 0.8rem;
|
|
}
|
|
|
|
.content-box-content {
|
|
padding: 0.3rem 0.28rem;
|
|
background: #fff;
|
|
border-radius: 0.2rem;
|
|
position: relative;
|
|
margin-bottom: 0.4rem;
|
|
}
|
|
|
|
.content-box-title {
|
|
font-family: PingFang SC-Semibold, PingFang SC;
|
|
font-weight: 600;
|
|
color: #040B29;
|
|
font-size: 0.4rem;
|
|
word-break: break-all;
|
|
}
|
|
|
|
.content-box-title-to {
|
|
font-family: PingFang SC-Semibold, PingFang SC;
|
|
font-weight: 600;
|
|
color: #040B29;
|
|
font-size: 0.4rem;
|
|
width: calc(100% - 0.7rem);
|
|
word-break: break-all;
|
|
}
|
|
|
|
.content-box-type {
|
|
font-size: 0.34rem;
|
|
font-family: PingFang SC-Medium, PingFang SC;
|
|
font-weight: 500;
|
|
color: #41475E;
|
|
display: flex;
|
|
margin-top: 0.08rem;
|
|
word-break: break-all;
|
|
}
|
|
|
|
.content-box-left {
|
|
width: 1rem;
|
|
display: inline-block;
|
|
word-break: break-all;
|
|
}
|
|
|
|
.content-box-left-one {
|
|
width: 1.6rem;
|
|
}
|
|
|
|
.content-box-text {
|
|
margin-left: 0.3rem;
|
|
}
|
|
|
|
.content-box-right {
|
|
display: inline-block;
|
|
font-size: 0.32rem;
|
|
border-radius: 0.14rem;
|
|
color: #fff;
|
|
position: absolute;
|
|
right: 0.28rem;
|
|
top: 0.3rem;
|
|
}
|
|
|
|
.content-box-right img {
|
|
width: 0.4rem;
|
|
}
|
|
|
|
.fixed {
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
z-index: 1000;
|
|
background: #fff;
|
|
padding-top: 0.4rem;
|
|
}
|
|
|
|
.popup-box {
|
|
width: 100%;
|
|
height: 100vh;
|
|
}
|
|
|
|
::v-deep .van-form .van-cell__title {
|
|
font-size: 0.38rem;
|
|
font-family: PingFang SC-Regular, PingFang SC;
|
|
font-weight: 500;
|
|
color: #595E72;
|
|
width: 100%;
|
|
}
|
|
|
|
::v-deep .van-form .van-radio__icon .van-icon {
|
|
width: 0.45rem;
|
|
height: 0.45rem;
|
|
line-height: 0.45rem;
|
|
}
|
|
|
|
::v-deep .van-form .van-radio__icon--checked .van-icon {
|
|
background-color: #00BEBE;
|
|
border-color: #00BEBE;
|
|
}
|
|
|
|
::v-deep .van-form .van-radio__icon {
|
|
height: 0.45rem;
|
|
}
|
|
|
|
::v-deep .van-form .van-radio__label {
|
|
font-size: 0.38rem;
|
|
font-family: PingFang SC-Regular, PingFang SC;
|
|
font-weight: 500;
|
|
color: #040B29;
|
|
}
|
|
|
|
.textarea {
|
|
display: block;
|
|
}
|
|
|
|
::v-deep .van-form .textarea .van-field__control {
|
|
margin-top: 0.1rem;
|
|
}
|
|
|
|
.uploader {
|
|
display: block;
|
|
}
|
|
|
|
.uploader-button {
|
|
margin-top: 0.2rem;
|
|
}
|
|
|
|
.uploader-button .van-button--primary {
|
|
background-color: #fff;
|
|
border: 0.03rem solid #00BEBE;
|
|
color: #01A0AC;
|
|
font-size: 0.38rem;
|
|
font-family: PingFang SC-Medium, PingFang SC;
|
|
font-weight: 500;
|
|
}
|
|
|
|
.uploader-button .van-button {
|
|
height: 0.9rem;
|
|
border-radius: 0.12rem;
|
|
}
|
|
|
|
.uploader-button .van-button .van-icon {
|
|
font-size: 0.42rem;
|
|
font-weight: 500;
|
|
}
|
|
|
|
.formClass {
|
|
padding-top: 1.1rem;
|
|
}
|
|
|
|
::v-deep .van-checkbox {
|
|
margin-bottom: 0.2rem;
|
|
}
|
|
|
|
::v-deep .van-form .van-field__body {
|
|
margin-top: 0.2rem;
|
|
}
|
|
|
|
::v-deep .van-checkbox__icon .van-icon {
|
|
height: 0.45rem;
|
|
width: 0.45rem;
|
|
line-height: 0.45rem;
|
|
}
|
|
|
|
::v-deep .van-checkbox__icon--checked .van-icon {
|
|
background-color: #00BEBE;
|
|
border-color: #00BEBE;
|
|
}
|
|
|
|
.time-text {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
width: 100%;
|
|
border: 0.02rem #E6E7EC solid;
|
|
height: 1rem;
|
|
font-size: 0.38rem;
|
|
color: #040B29;
|
|
font-weight: 500;
|
|
border-radius: 0.16rem;
|
|
}
|
|
|
|
.Mode-text {
|
|
display: flex;
|
|
align-items: center;
|
|
font-size: 0.32rem;
|
|
font-weight: 500;
|
|
color: #040B29;
|
|
width: calc(100% - 1.3rem);
|
|
margin-right: 0.2rem;
|
|
}
|
|
|
|
::v-deep .van-switch {
|
|
background-color: #BBBDC7;
|
|
height: 0.6rem;
|
|
width: 1.17rem;
|
|
}
|
|
|
|
::v-deep .van-switch__node {
|
|
width: 0.6rem;
|
|
height: 0.6rem;
|
|
}
|
|
|
|
::v-deep .van-switch--on {
|
|
background-color: #00B3BE;
|
|
}
|
|
|
|
::v-deep .van-switch--on .van-switch__node {
|
|
transform: translateX(0.56rem)
|
|
}
|
|
|
|
.button {
|
|
position: absolute;
|
|
bottom: 0.2rem;
|
|
left: 0;
|
|
text-align: right;
|
|
width: 100%;
|
|
padding: 0 0.4rem;
|
|
}
|
|
|
|
.reset {
|
|
background-color: rgba(187, 189, 199, 1);
|
|
border: none;
|
|
height: 0.8rem;
|
|
font-size: 0.38rem;
|
|
}
|
|
|
|
.primary {
|
|
background-color: #01A0AC;
|
|
border: none;
|
|
height: 0.8rem;
|
|
font-size: 0.38rem;
|
|
margin-left: 0.2rem;
|
|
}
|
|
|
|
.cutoffTimeClass {
|
|
width: 100%;
|
|
}
|
|
|
|
::v-deep .cutoffTimeClass .van-dropdown-menu__item {
|
|
justify-content: left;
|
|
}
|
|
|
|
::v-deep .cutoffTimeClass .van-dropdown-menu__title--active {
|
|
color: #21c9cc;
|
|
}
|
|
|
|
::v-deep .cutoffTimeClass .van-dropdown-item__option--active {
|
|
color: #21c9cc;
|
|
}
|
|
|
|
::v-deep .cutoffTimeClass .van-dropdown-item__option--active .van-dropdown-item__icon {
|
|
color: #21c9cc;
|
|
}
|
|
|
|
::v-deep .cutoffTimeClass .van-dropdown-menu__bar {
|
|
box-shadow: none;
|
|
}
|
|
|
|
.checkboxGroup {
|
|
width: 100%;
|
|
}
|
|
|
|
.checkboxGroup-text {
|
|
padding: 0.2rem 0.32rem;
|
|
background: #F7F7F8;
|
|
border-radius: 0.16rem;
|
|
margin-bottom: 0.16rem;
|
|
}
|
|
|
|
.checkboxGroup-text-color {
|
|
background: #00B3BE;
|
|
color: #fff;
|
|
}
|
|
</style> |