|
|
@ -31,11 +31,14 @@
|
|
|
|
<div>
|
|
|
|
<div>
|
|
|
|
<div v-for="(item, index) in levelTree"
|
|
|
|
<div v-for="(item, index) in levelTree"
|
|
|
|
@click="handleClickTree(item, index)"
|
|
|
|
@click="handleClickTree(item, index)"
|
|
|
|
:class="{ active: item.active,redColor:item.key=='CAUTION_NOTICE' }" class="box-item">
|
|
|
|
:class="{ active: item.active, redColor: item.key == 'CAUTION_NOTICE' }"
|
|
|
|
<div class="box-text" >
|
|
|
|
class="box-item">
|
|
|
|
<i v-if="item.key != 'CAUTION_NOTICE'" class="icon-touzijilu iconfont"></i>
|
|
|
|
<div class="box-text">
|
|
|
|
<i v-if="item.key == 'CAUTION_NOTICE'" class="icon-jinggao iconfont"></i>
|
|
|
|
<i v-if="item.key != 'CAUTION_NOTICE'"
|
|
|
|
{{item.name}}
|
|
|
|
class="icon-touzijilu iconfont"></i>
|
|
|
|
|
|
|
|
<i v-if="item.key == 'CAUTION_NOTICE'"
|
|
|
|
|
|
|
|
class="icon-jinggao iconfont"></i>
|
|
|
|
|
|
|
|
{{ item.name }}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="box-number">{{ item.total }}</div>
|
|
|
|
<div class="box-number">{{ item.total }}</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
@ -244,15 +247,17 @@
|
|
|
|
</a-modal>
|
|
|
|
</a-modal>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</template>
|
|
|
|
</template>
|
|
|
|
<script lang="ts" setup>
|
|
|
|
<script lang="ts" setup name="任务管理">
|
|
|
|
import { ref, onMounted } from 'vue'
|
|
|
|
import { ref, onMounted, watch } from 'vue'
|
|
|
|
import { formatParams } from '/@/hooks/web/common'
|
|
|
|
import { formatParams } from '/@/hooks/web/common'
|
|
|
|
import { searchFormSchema } from './columns'
|
|
|
|
import { searchFormSchema } from './columns'
|
|
|
|
import { useOptionsStore } from '/@/store/modules/options'
|
|
|
|
import { useOptionsStore } from '/@/store/modules/options'
|
|
|
|
const optionsStore = useOptionsStore()
|
|
|
|
const optionsStore = useOptionsStore()
|
|
|
|
import { BasicTable, useTable, TableAction } from '/@/components/Table'
|
|
|
|
import { BasicTable, useTable, TableAction } from '/@/components/Table'
|
|
|
|
import { useMessage } from '../../hooks/web/useMessage'
|
|
|
|
import { useMessage } from '../../hooks/web/useMessage'
|
|
|
|
|
|
|
|
import { useRoute, useRouter } from 'vue-router';
|
|
|
|
const { createMessage } = useMessage()
|
|
|
|
const { createMessage } = useMessage()
|
|
|
|
|
|
|
|
const route = useRoute();
|
|
|
|
import {
|
|
|
|
import {
|
|
|
|
GetCurrentTotalStat, GetPageAsync, TaskManageTruckGetInfoByTaskId,
|
|
|
|
GetCurrentTotalStat, GetPageAsync, TaskManageTruckGetInfoByTaskId,
|
|
|
|
TaskManageTruckPrintTemplateWithHistoryList,
|
|
|
|
TaskManageTruckPrintTemplateWithHistoryList,
|
|
|
@ -297,7 +302,11 @@ onMounted(() => {
|
|
|
|
})
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
watch(() => route.fullPath, (val) => {
|
|
|
|
|
|
|
|
if (val === '/taskmanage') {
|
|
|
|
|
|
|
|
refshTotalStat()
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}, { deep: true });
|
|
|
|
|
|
|
|
|
|
|
|
const levelreLoading = ref(false)
|
|
|
|
const levelreLoading = ref(false)
|
|
|
|
const levelLoading = ref(false)
|
|
|
|
const levelLoading = ref(false)
|
|
|
@ -349,6 +358,26 @@ function getCurrentTotalStat() {
|
|
|
|
levelreLoading.value = false
|
|
|
|
levelreLoading.value = false
|
|
|
|
})
|
|
|
|
})
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function refshTotalStat() {
|
|
|
|
|
|
|
|
levelreLoading.value = true
|
|
|
|
|
|
|
|
levelLoading.value = true
|
|
|
|
|
|
|
|
GetCurrentTotalStat({
|
|
|
|
|
|
|
|
isReCalc: false
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
.then(res => {
|
|
|
|
|
|
|
|
levelLoading.value = false
|
|
|
|
|
|
|
|
levelreLoading.value = false
|
|
|
|
|
|
|
|
levelTop.value = res.data.levelTop
|
|
|
|
|
|
|
|
levelNextAll.value = res.data.levelNext
|
|
|
|
|
|
|
|
levelTreeAll.value = res.data.levelTree
|
|
|
|
|
|
|
|
reload()
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
.catch(err => {
|
|
|
|
|
|
|
|
levelLoading.value = false
|
|
|
|
|
|
|
|
levelreLoading.value = false
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
}
|
|
|
|
function selectNextLevel(list, key) {
|
|
|
|
function selectNextLevel(list, key) {
|
|
|
|
const arr = [] as any
|
|
|
|
const arr = [] as any
|
|
|
|
list.map((item, index) => {
|
|
|
|
list.map((item, index) => {
|
|
|
@ -430,7 +459,7 @@ function changeTopLevel() {
|
|
|
|
levelTree.value = selectTreeLevel(levelTreeAll.value, activeNextKey.value, activeTopKey.value)
|
|
|
|
levelTree.value = selectTreeLevel(levelTreeAll.value, activeNextKey.value, activeTopKey.value)
|
|
|
|
activeTreeKey.value = []
|
|
|
|
activeTreeKey.value = []
|
|
|
|
taskType.value = ''
|
|
|
|
taskType.value = ''
|
|
|
|
levelTree.value.forEach(item=>{
|
|
|
|
levelTree.value.forEach(item => {
|
|
|
|
item.active = false
|
|
|
|
item.active = false
|
|
|
|
})
|
|
|
|
})
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -449,7 +478,7 @@ function changeNextLevel() {
|
|
|
|
activeTreeKey.value = []
|
|
|
|
activeTreeKey.value = []
|
|
|
|
getForm().setFieldsValue({ status: activeNextKey.value })
|
|
|
|
getForm().setFieldsValue({ status: activeNextKey.value })
|
|
|
|
taskType.value = ''
|
|
|
|
taskType.value = ''
|
|
|
|
levelTree.value.forEach(item=>{
|
|
|
|
levelTree.value.forEach(item => {
|
|
|
|
item.active = false
|
|
|
|
item.active = false
|
|
|
|
})
|
|
|
|
})
|
|
|
|
reload()
|
|
|
|
reload()
|
|
|
@ -501,7 +530,7 @@ const [registerTable, { reload, setLoading, getForm, getSelectRows, setProps }]
|
|
|
|
const data = {} as any
|
|
|
|
const data = {} as any
|
|
|
|
const queryData = JSON.parse(formatParams(p).queryCondition)
|
|
|
|
const queryData = JSON.parse(formatParams(p).queryCondition)
|
|
|
|
data.pageCondition = formatParams(p).pageCondition
|
|
|
|
data.pageCondition = formatParams(p).pageCondition
|
|
|
|
queryData.forEach(item=>{
|
|
|
|
queryData.forEach(item => {
|
|
|
|
if (item.FieldName === 'task_TYPE') {
|
|
|
|
if (item.FieldName === 'task_TYPE') {
|
|
|
|
item.ConditionalType = 0
|
|
|
|
item.ConditionalType = 0
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -1195,9 +1224,11 @@ function handleClickTree(row, index) {
|
|
|
|
display: flex;
|
|
|
|
display: flex;
|
|
|
|
justify-content: space-between;
|
|
|
|
justify-content: space-between;
|
|
|
|
align-items: center;
|
|
|
|
align-items: center;
|
|
|
|
.iconfont{
|
|
|
|
|
|
|
|
|
|
|
|
.iconfont {
|
|
|
|
font-size: 14px
|
|
|
|
font-size: 14px
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
&:hover {
|
|
|
|
&:hover {
|
|
|
|
|
|
|
|
|
|
|
|
.box-text {
|
|
|
|
.box-text {
|
|
|
@ -1225,7 +1256,7 @@ function handleClickTree(row, index) {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
&.redColor{
|
|
|
|
&.redColor {
|
|
|
|
|
|
|
|
|
|
|
|
.box-text {
|
|
|
|
.box-text {
|
|
|
|
color: rgba(237, 88, 88, 1);
|
|
|
|
color: rgba(237, 88, 88, 1);
|
|
|
@ -1249,7 +1280,7 @@ function handleClickTree(row, index) {
|
|
|
|
font-size: 14px;
|
|
|
|
font-size: 14px;
|
|
|
|
font-weight: 400;
|
|
|
|
font-weight: 400;
|
|
|
|
line-height: 14px;
|
|
|
|
line-height: 14px;
|
|
|
|
flex:1;
|
|
|
|
flex: 1;
|
|
|
|
margin-right: 10px;
|
|
|
|
margin-right: 10px;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|