|
@@ -30,61 +30,64 @@
|
|
</el-image>
|
|
</el-image>
|
|
全部任务
|
|
全部任务
|
|
</div>
|
|
</div>
|
|
- <div class="select_lsit_box">
|
|
|
|
- <el-date-picker
|
|
|
|
- v-model="currentYear"
|
|
|
|
- @change="changeYear"
|
|
|
|
- style="width:230px;"
|
|
|
|
- type="daterange"
|
|
|
|
- placeholder="请选择"
|
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
|
- range-separator="至"
|
|
|
|
- start-placeholder="开始日期"
|
|
|
|
- end-placeholder="结束日期">
|
|
|
|
- </el-date-picker>
|
|
|
|
- </div>
|
|
|
|
|
|
|
|
</div>
|
|
</div>
|
|
- <div v-if="taskList.length" class="task_scroll_box">
|
|
|
|
- <div class="search_box">
|
|
|
|
- <div class="select_lsit_box">
|
|
|
|
- <el-select
|
|
|
|
- v-model="systemTaskId"
|
|
|
|
- placeholder="切换系统名称"
|
|
|
|
- style="width:55%; margin-right:10px;"
|
|
|
|
- @change="changeTaskSystem"
|
|
|
|
- clearable
|
|
|
|
- filterable
|
|
|
|
- >
|
|
|
|
- <el-option
|
|
|
|
- v-for="item in systemOption"
|
|
|
|
- :key="item.value"
|
|
|
|
- :label="item.label"
|
|
|
|
- :value="item.value"
|
|
|
|
|
|
+ <div class="select_lsit_box">
|
|
|
|
+ <el-date-picker
|
|
|
|
+ v-model="currentYear"
|
|
|
|
+
|
|
|
|
+ style="width:100%;"
|
|
|
|
+ type="datetimerange"
|
|
|
|
+ placeholder="请选择"
|
|
|
|
+ value-format="yyyy-MM-dd HH:mm:ss"
|
|
|
|
+ range-separator="至"
|
|
|
|
+ start-placeholder="开始日期"
|
|
|
|
+ end-placeholder="结束日期">
|
|
|
|
+ </el-date-picker>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="search_box">
|
|
|
|
+ <div class="select_lsit_box">
|
|
|
|
+ <el-select
|
|
|
|
+ v-model="systemTaskId"
|
|
|
|
+ placeholder="切换系统名称"
|
|
|
|
+ style="width:55%; margin-right:10px;"
|
|
|
|
+
|
|
|
|
+ clearable
|
|
|
|
+ filterable
|
|
|
|
+ >
|
|
|
|
+ <el-option
|
|
|
|
+ v-for="item in systemOption"
|
|
|
|
+ :key="item.value"
|
|
|
|
+ :label="item.label"
|
|
|
|
+ :value="item.value"
|
|
|
|
|
|
- >
|
|
|
|
- </el-option>
|
|
|
|
- </el-select>
|
|
|
|
- <el-select
|
|
|
|
- v-model="unitTaskValue"
|
|
|
|
- placeholder="切换单位名称"
|
|
|
|
- style="width:55%;"
|
|
|
|
- clearable
|
|
|
|
- @change="changeTaskUnit"
|
|
|
|
- filterable
|
|
|
|
>
|
|
>
|
|
- <el-option
|
|
|
|
- v-for="item in unitOption"
|
|
|
|
- :key="item.value"
|
|
|
|
- :label="item.label"
|
|
|
|
- :value="item.value"
|
|
|
|
|
|
+ </el-option>
|
|
|
|
+ </el-select>
|
|
|
|
+ <el-select
|
|
|
|
+ v-model="unitTaskValue"
|
|
|
|
+ placeholder="切换单位名称"
|
|
|
|
+ style="width:55%;"
|
|
|
|
+ clearable
|
|
|
|
|
|
- >
|
|
|
|
- </el-option>
|
|
|
|
- </el-select>
|
|
|
|
|
|
+ filterable
|
|
|
|
+ >
|
|
|
|
+ <el-option
|
|
|
|
+ v-for="item in unitOption"
|
|
|
|
+ :key="item.value"
|
|
|
|
+ :label="item.label"
|
|
|
|
+ :value="item.value"
|
|
|
|
+
|
|
|
|
+ >
|
|
|
|
+ </el-option>
|
|
|
|
+ </el-select>
|
|
|
|
|
|
|
|
+ <div class="search_button" @click="conditionalSearch()">
|
|
|
|
+ 查询
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
+ </div>
|
|
|
|
+ <div v-if="taskList.length" class="task_scroll_box">
|
|
<template v-for="(item,index) in taskList">
|
|
<template v-for="(item,index) in taskList">
|
|
<div class="task_item_container" :key="index">
|
|
<div class="task_item_container" :key="index">
|
|
<div class="task_item_left">
|
|
<div class="task_item_left">
|
|
@@ -124,7 +127,10 @@
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="view_more" @click="viewMore(item)">
|
|
<div class="view_more" @click="viewMore(item)">
|
|
- 查看更多
|
|
|
|
|
|
+ 查看详情
|
|
|
|
+ </div>
|
|
|
|
+ <div class="view_more" @click="viewTaskSituation(item)">
|
|
|
|
+ 查看态势
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@@ -151,22 +157,23 @@
|
|
<div class="task_name_header">「{{ currentTaskName }}」任务态势大屏</div>
|
|
<div class="task_name_header">「{{ currentTaskName }}」任务态势大屏</div>
|
|
<!-- 任务屏幕 -->
|
|
<!-- 任务屏幕 -->
|
|
<div class="task_item_header">
|
|
<div class="task_item_header">
|
|
- <el-select
|
|
|
|
- v-model="wholeOutTaskId"
|
|
|
|
- placeholder="「切换任务」"
|
|
|
|
- style="width:270px;"
|
|
|
|
- @change="changeTask"
|
|
|
|
- filterable
|
|
|
|
- >
|
|
|
|
- <el-option
|
|
|
|
- v-for="item in taskOPtion"
|
|
|
|
- :key="item.value"
|
|
|
|
- :label="item.label"
|
|
|
|
- :value="item.value"
|
|
|
|
|
|
|
|
- >
|
|
|
|
- </el-option>
|
|
|
|
- </el-select>
|
|
|
|
|
|
+<!-- <el-select-->
|
|
|
|
+<!-- v-model="wholeOutTaskId"-->
|
|
|
|
+<!-- placeholder="「切换任务」"-->
|
|
|
|
+<!-- style="width:270px;"-->
|
|
|
|
+<!-- @change="changeTask"-->
|
|
|
|
+<!-- filterable-->
|
|
|
|
+<!-- >-->
|
|
|
|
+<!-- <el-option-->
|
|
|
|
+<!-- v-for="item in taskOPtion"-->
|
|
|
|
+<!-- :key="item.value"-->
|
|
|
|
+<!-- :label="item.label"-->
|
|
|
|
+<!-- :value="item.value"-->
|
|
|
|
+
|
|
|
|
+<!-- >-->
|
|
|
|
+<!-- </el-option>-->
|
|
|
|
+<!-- </el-select>-->
|
|
<el-image
|
|
<el-image
|
|
v-if="false"
|
|
v-if="false"
|
|
@click="showMoreInfo('more')"
|
|
@click="showMoreInfo('more')"
|
|
@@ -198,42 +205,41 @@
|
|
</el-image>
|
|
</el-image>
|
|
课目分布
|
|
课目分布
|
|
</div>
|
|
</div>
|
|
- <div class="select_lsit_box">
|
|
|
|
- <el-select
|
|
|
|
- v-model="systemSubjectId"
|
|
|
|
- placeholder="切换系统名称"
|
|
|
|
- style="width:55%; margin-right:5px;"
|
|
|
|
- @change="changeTaskAndSystem"
|
|
|
|
- clearable
|
|
|
|
- filterable
|
|
|
|
- >
|
|
|
|
- <el-option
|
|
|
|
- v-for="item in systemOption"
|
|
|
|
- :key="item.value"
|
|
|
|
- :label="item.label"
|
|
|
|
- :value="item.value"
|
|
|
|
-
|
|
|
|
- >
|
|
|
|
- </el-option>
|
|
|
|
- </el-select>
|
|
|
|
- <el-select
|
|
|
|
- v-model="unitSubjectValue"
|
|
|
|
- placeholder="切换单位名称"
|
|
|
|
- style="width:55%;"
|
|
|
|
- clearable
|
|
|
|
- @change="changeTaskAndUnit"
|
|
|
|
- filterable
|
|
|
|
- >
|
|
|
|
- <el-option
|
|
|
|
- v-for="item in unitOption"
|
|
|
|
- :key="item.value"
|
|
|
|
- :label="item.label"
|
|
|
|
- :value="item.value"
|
|
|
|
-
|
|
|
|
- >
|
|
|
|
- </el-option>
|
|
|
|
- </el-select>
|
|
|
|
- </div>
|
|
|
|
|
|
+<!-- <div class="select_lsit_box">-->
|
|
|
|
+<!-- <el-select-->
|
|
|
|
+<!-- v-model="systemSubjectId"-->
|
|
|
|
+<!-- placeholder="切换系统名称"-->
|
|
|
|
+<!-- style="width:55%; margin-right:5px;"-->
|
|
|
|
+<!-- @change="changeTaskAndSystem"-->
|
|
|
|
+<!-- clearable-->
|
|
|
|
+<!-- filterable-->
|
|
|
|
+<!-- >-->
|
|
|
|
+<!-- <el-option-->
|
|
|
|
+<!-- v-for="item in systemOption"-->
|
|
|
|
+<!-- :key="item.value"-->
|
|
|
|
+<!-- :label="item.label"-->
|
|
|
|
+<!-- :value="item.value"-->
|
|
|
|
+<!-- >-->
|
|
|
|
+<!-- </el-option>-->
|
|
|
|
+<!-- </el-select>-->
|
|
|
|
+<!-- <el-select-->
|
|
|
|
+<!-- v-model="unitSubjectValue"-->
|
|
|
|
+<!-- placeholder="切换单位名称"-->
|
|
|
|
+<!-- style="width:55%;"-->
|
|
|
|
+<!-- clearable-->
|
|
|
|
+<!-- @change="changeTaskAndUnit"-->
|
|
|
|
+<!-- filterable-->
|
|
|
|
+<!-- >-->
|
|
|
|
+<!-- <el-option-->
|
|
|
|
+<!-- v-for="item in unitOption"-->
|
|
|
|
+<!-- :key="item.value"-->
|
|
|
|
+<!-- :label="item.label"-->
|
|
|
|
+<!-- :value="item.value"-->
|
|
|
|
+
|
|
|
|
+<!-- >-->
|
|
|
|
+<!-- </el-option>-->
|
|
|
|
+<!-- </el-select>-->
|
|
|
|
+<!-- </div>-->
|
|
</div>
|
|
</div>
|
|
<div class="subject_list_container" id="subjectList">
|
|
<div class="subject_list_container" id="subjectList">
|
|
<template v-for="(item,index) in subjectDatas">
|
|
<template v-for="(item,index) in subjectDatas">
|
|
@@ -290,7 +296,7 @@
|
|
filterable
|
|
filterable
|
|
>
|
|
>
|
|
<el-option
|
|
<el-option
|
|
- v-for="item in unitOption"
|
|
|
|
|
|
+ v-for="item in unitOptionForTask"
|
|
:key="item.value"
|
|
:key="item.value"
|
|
:label="item.label"
|
|
:label="item.label"
|
|
:value="item.value"
|
|
:value="item.value"
|
|
@@ -424,7 +430,7 @@
|
|
filterable
|
|
filterable
|
|
>
|
|
>
|
|
<el-option
|
|
<el-option
|
|
- v-for="item in systemOption"
|
|
|
|
|
|
+ v-for="item in systemOptionForTask"
|
|
:key="item.value"
|
|
:key="item.value"
|
|
:label="item.label"
|
|
:label="item.label"
|
|
:value="item.value"
|
|
:value="item.value"
|
|
@@ -432,6 +438,20 @@
|
|
</el-option>
|
|
</el-option>
|
|
</el-select>
|
|
</el-select>
|
|
</div>
|
|
</div>
|
|
|
|
+ <div class="num_subject_box_new">
|
|
|
|
+ <div style="margin-bottom:20px;">
|
|
|
|
+ <div style="font-size:12px;">成绩统计</div>
|
|
|
|
+ <div
|
|
|
|
+ id="subjectGradeStatistics"
|
|
|
|
+ style=" left:5px; width:430px; height:180px; "
|
|
|
|
+ :style="{ top: participantScoreFlag ? '-15px' : '2px' }"
|
|
|
|
+ ></div>
|
|
|
|
+ </div>
|
|
|
|
+ <div style="position: relative;">
|
|
|
|
+ <div style="font-size:12px;" class="new_style_grade">成绩分布</div>
|
|
|
|
+ <div id="subjectGradeDistribute" style="height: 160px; width:430px; bottom: 55px; position: relative; left:5px;"></div>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
<div class="commandMonitoring">
|
|
<div class="commandMonitoring">
|
|
<div class="task_outer_cotnainer_status">
|
|
<div class="task_outer_cotnainer_status">
|
|
@@ -535,28 +555,28 @@
|
|
fit="contain"
|
|
fit="contain"
|
|
>
|
|
>
|
|
</el-image>
|
|
</el-image>
|
|
- 任务完成率
|
|
|
|
|
|
+ {{this.unitTaskValue == '' ? getName(this.unitOption, this.unitFinshedValue) : getName(this.unitOption, this.unitTaskValue)}} 单位任务完成率
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
- <div v-if="!completionRate" id="taskPrecent" style="height:200px; width:310px; margin-top:-10px; right: 0px; "></div>
|
|
|
|
|
|
+ <div v-if="!completionRate" id="taskPrecent" style="height:200px; width:310px; margin-top:-5px; right: 0px; "></div>
|
|
<div v-if="completionRate" class="tempalte_no_data" style="height:200px; width:310px; margin-top:-10px; right: 0px; ">
|
|
<div v-if="completionRate" class="tempalte_no_data" style="height:200px; width:310px; margin-top:-10px; right: 0px; ">
|
|
暂无数据
|
|
暂无数据
|
|
</div>
|
|
</div>
|
|
- <el-select
|
|
|
|
- v-model="unitFinshedValue"
|
|
|
|
- placeholder="「此处为单位名称」"
|
|
|
|
- style="margin-top:20px; width:270px;"
|
|
|
|
- filterable
|
|
|
|
- @change="changeUnit"
|
|
|
|
- >
|
|
|
|
- <el-option
|
|
|
|
- v-for="item in unitOption"
|
|
|
|
- :key="item.value"
|
|
|
|
- :label="item.label"
|
|
|
|
- :value="item.value"
|
|
|
|
- >
|
|
|
|
- </el-option>
|
|
|
|
- </el-select>
|
|
|
|
|
|
+<!-- <el-select-->
|
|
|
|
+<!-- v-model="unitFinshedValue"-->
|
|
|
|
+<!-- placeholder="「此处为单位名称」"-->
|
|
|
|
+<!-- style="margin-top:20px; width:270px;"-->
|
|
|
|
+<!-- filterable-->
|
|
|
|
+<!-- @change="changeUnit"-->
|
|
|
|
+<!-- >-->
|
|
|
|
+<!-- <el-option-->
|
|
|
|
+<!-- v-for="item in unitOption"-->
|
|
|
|
+<!-- :key="item.value"-->
|
|
|
|
+<!-- :label="item.label"-->
|
|
|
|
+<!-- :value="item.value"-->
|
|
|
|
+<!-- >-->
|
|
|
|
+<!-- </el-option>-->
|
|
|
|
+<!-- </el-select>-->
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
@@ -570,27 +590,27 @@
|
|
fit="contain"
|
|
fit="contain"
|
|
>
|
|
>
|
|
</el-image>
|
|
</el-image>
|
|
- 任务完成率
|
|
|
|
|
|
+ {{this.systemTaskId == '' ? getName(this.systemOption, this.systemFinshedValue) : getName(this.systemOption, this.systemTaskId)}} 系统任务完成率
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
- <div v-if="!systemcompletionRate" id="taskPrecentSystem" style="height:200px; width:310px; margin-top:-10px; "></div>
|
|
|
|
|
|
+ <div v-if="!systemcompletionRate" id="taskPrecentSystem" style="height:200px; width:310px; margin-top:-5px; "></div>
|
|
<div v-if="systemcompletionRate" class="tempalte_no_data" style="height:200px; width:310px; margin-top:-10px; ">暂无数据</div>
|
|
<div v-if="systemcompletionRate" class="tempalte_no_data" style="height:200px; width:310px; margin-top:-10px; ">暂无数据</div>
|
|
- <el-select
|
|
|
|
- v-model="systemFinshedValue"
|
|
|
|
- placeholder="「此处为系统名称」"
|
|
|
|
- style="margin-top:20px; width:270px;"
|
|
|
|
- filterable
|
|
|
|
- @change="changeSystem"
|
|
|
|
- >
|
|
|
|
- <el-option
|
|
|
|
- v-for="item in systemOption"
|
|
|
|
- :key="item.value"
|
|
|
|
- :label="item.label"
|
|
|
|
- :value="item.value"
|
|
|
|
-
|
|
|
|
- >
|
|
|
|
- </el-option>
|
|
|
|
- </el-select>
|
|
|
|
|
|
+<!-- <el-select-->
|
|
|
|
+<!-- v-model="systemFinshedValue"-->
|
|
|
|
+<!-- placeholder="「此处为系统名称」"-->
|
|
|
|
+<!-- style="margin-top:20px; width:270px;"-->
|
|
|
|
+<!-- filterable-->
|
|
|
|
+<!-- @change="changeSystem"-->
|
|
|
|
+<!-- >-->
|
|
|
|
+<!-- <el-option-->
|
|
|
|
+<!-- v-for="item in systemOption"-->
|
|
|
|
+<!-- :key="item.value"-->
|
|
|
|
+<!-- :label="item.label"-->
|
|
|
|
+<!-- :value="item.value"-->
|
|
|
|
+
|
|
|
|
+<!-- >-->
|
|
|
|
+<!-- </el-option>-->
|
|
|
|
+<!-- </el-select>-->
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@@ -752,7 +772,9 @@ export default {
|
|
},
|
|
},
|
|
instructList:[],
|
|
instructList:[],
|
|
unitOption:[],
|
|
unitOption:[],
|
|
|
|
+ unitOptionForTask:[],
|
|
systemOption:[],
|
|
systemOption:[],
|
|
|
|
+ systemOptionForTask:[],
|
|
currrentSystem:'',
|
|
currrentSystem:'',
|
|
currentUnit:'',
|
|
currentUnit:'',
|
|
taskOPtion:[],
|
|
taskOPtion:[],
|
|
@@ -774,6 +796,13 @@ export default {
|
|
}
|
|
}
|
|
},
|
|
},
|
|
methods:{
|
|
methods:{
|
|
|
|
+
|
|
|
|
+ // 获取单位名称
|
|
|
|
+ getName(list, id) {
|
|
|
|
+ var tmp = list.find(k => k["value"] == id)
|
|
|
|
+ return tmp["label"]
|
|
|
|
+ },
|
|
|
|
+
|
|
// 表格样式修改
|
|
// 表格样式修改
|
|
changeHeaderCellStyle(row,column, rowIndex, columnIndex){
|
|
changeHeaderCellStyle(row,column, rowIndex, columnIndex){
|
|
if(row.columnIndex === 0){
|
|
if(row.columnIndex === 0){
|
|
@@ -802,6 +831,11 @@ export default {
|
|
this.dialogVisible=true
|
|
this.dialogVisible=true
|
|
|
|
|
|
},
|
|
},
|
|
|
|
+ // 查看任务态势
|
|
|
|
+ viewTaskSituation(item) {
|
|
|
|
+ this.wholeOutTaskId = item.taskId;
|
|
|
|
+ this.changeTask()
|
|
|
|
+ },
|
|
// 地图
|
|
// 地图
|
|
initechartsMap(){
|
|
initechartsMap(){
|
|
if(this.myChart1 !=null && this.myChart1 != "" && this.myChart1 != undefined){
|
|
if(this.myChart1 !=null && this.myChart1 != "" && this.myChart1 != undefined){
|
|
@@ -1018,10 +1052,27 @@ export default {
|
|
})
|
|
})
|
|
},
|
|
},
|
|
|
|
|
|
|
|
+ conditionalSearch() {
|
|
|
|
+ this.getTaskList()
|
|
|
|
+ this.getItemUnits()
|
|
|
|
+ this.getItemSystem()
|
|
|
|
+ },
|
|
|
|
+
|
|
// 获取任务列表
|
|
// 获取任务列表
|
|
async getTaskList(){
|
|
async getTaskList(){
|
|
let params={}
|
|
let params={}
|
|
- const res = await request('/dt_screen/rest/v1/task/list/', 'get', params, false)
|
|
|
|
|
|
+
|
|
|
|
+ if (this.currentYear !== null) {
|
|
|
|
+ params["startTime"] = this.currentYear[0];
|
|
|
|
+ params["endTime"] = this.currentYear[1];
|
|
|
|
+ }
|
|
|
|
+ if (this.unitTaskValue !== null) {
|
|
|
|
+ params["unitId"] = this.unitTaskValue;
|
|
|
|
+ }
|
|
|
|
+ if (this.systemTaskId !== null) {
|
|
|
|
+ params["systemId"] = this.systemTaskId;
|
|
|
|
+ }
|
|
|
|
+ const res = await request('/dt_screen/rest/v2/task/listHistoricTask/', 'post', params, false)
|
|
const { errorCode, errorMessage, success,data } = res.data;
|
|
const { errorCode, errorMessage, success,data } = res.data;
|
|
if (success) {
|
|
if (success) {
|
|
console.log('获取任务列表', data);
|
|
console.log('获取任务列表', data);
|
|
@@ -1038,6 +1089,10 @@ export default {
|
|
|
|
|
|
// 获取地图的信息
|
|
// 获取地图的信息
|
|
if(data.length){
|
|
if(data.length){
|
|
|
|
+ // 获取任务的单位列表
|
|
|
|
+ this.getUnitListByTaskId(data[0].taskId)
|
|
|
|
+ // 获取任务的系统列表
|
|
|
|
+ this.getSystemListByTaskId(data[0].taskId)
|
|
// 获取地图的信息
|
|
// 获取地图的信息
|
|
this.getMapDetail(data[0].taskId)
|
|
this.getMapDetail(data[0].taskId)
|
|
// 获取任务的课目信息
|
|
// 获取任务的课目信息
|
|
@@ -1048,10 +1103,15 @@ export default {
|
|
this.getTaskSubjectNum(data[0].taskId)
|
|
this.getTaskSubjectNum(data[0].taskId)
|
|
// 获取某一个任务的全部课目状态占比
|
|
// 获取某一个任务的全部课目状态占比
|
|
this.getAllSubjectDetail(data[0].taskId)
|
|
this.getAllSubjectDetail(data[0].taskId)
|
|
- // 获取某个任务下单位参与与课目人员的的成绩统计
|
|
|
|
- this.getUnitSubjectPeopleScore(data[0].taskId,this.unitSubGradeValue)
|
|
|
|
- // 获取某个任务下单位参与与课目人员的的成绩分布
|
|
|
|
- this.getUnitSubjectPeopleDistribution(data[0].taskId,this.unitSubGradeValue)
|
|
|
|
|
|
+ // // 获取某个任务下单位参与与课目人员的的成绩统计
|
|
|
|
+ // this.getUnitSubjectPeopleScore(data[0].taskId,this.unitSubGradeValue)
|
|
|
|
+ // // 获取某个任务下单位参与与课目人员的的成绩分布
|
|
|
|
+ // this.getUnitSubjectPeopleDistribution(data[0].taskId,this.unitSubGradeValue)
|
|
|
|
+
|
|
|
|
+ // 获取全部任务成绩统计
|
|
|
|
+ this.getAllTaskScore()
|
|
|
|
+ // 获取全部任务成绩分布
|
|
|
|
+ this.getAllTaskDistribution()
|
|
|
|
|
|
// 建立指令websocket 链接
|
|
// 建立指令websocket 链接
|
|
this.initInstructWebsoket()
|
|
this.initInstructWebsoket()
|
|
@@ -1061,12 +1121,61 @@ export default {
|
|
}
|
|
}
|
|
},
|
|
},
|
|
|
|
|
|
|
|
+ // 获取任务单位列表
|
|
|
|
+ async getUnitListByTaskId(taskId) {
|
|
|
|
+ let params={}
|
|
|
|
+
|
|
|
|
+ if (taskId !== null) {
|
|
|
|
+ params["taskId"] = taskId
|
|
|
|
+ const res = await request('/dt_screen/rest/v2/task/listUnit/', 'post', params, false)
|
|
|
|
+ const { errorCode, errorMessage, success,data } = res.data;
|
|
|
|
+ if (success) {
|
|
|
|
+ console.log("sgw debug", data);
|
|
|
|
+ this.unitOptionForTask = data.map((item)=>{
|
|
|
|
+ return {
|
|
|
|
+ label:item.unitName,
|
|
|
|
+ value: item.unitId
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ this.unitSubGradeValue = this.unitOptionForTask[0].value
|
|
|
|
+ // 获取某个任务下单位参与与课目人员的的成绩统计
|
|
|
|
+ this.getUnitSubjectPeopleScore(this.wholeOutTaskId,this.unitSubGradeValue)
|
|
|
|
+ // 获取某个任务下单位参与与课目人员的的成绩分布
|
|
|
|
+ this.getUnitSubjectPeopleDistribution(this.wholeOutTaskId,this.unitSubGradeValue)
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ // 获取任务系统列表
|
|
|
|
+ async getSystemListByTaskId(taskId) {
|
|
|
|
+ let params={}
|
|
|
|
+
|
|
|
|
+ if (taskId !== null) {
|
|
|
|
+ params["taskId"] = taskId
|
|
|
|
+ const res = await request('/dt_screen/rest/v2/task/listSystem/', 'post', params, false)
|
|
|
|
+ const { errorCode, errorMessage, success,data } = res.data;
|
|
|
|
+ if (success) {
|
|
|
|
+ console.log("sgw debug", data);
|
|
|
|
+ this.systemOptionForTask = data.map((item)=>{
|
|
|
|
+ return {
|
|
|
|
+ label:item.systemName,
|
|
|
|
+ value: item.systemId
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ this.systemSubGradeValue = this.systemOptionForTask[0].value
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+
|
|
// 切换任务
|
|
// 切换任务
|
|
changeTask(){
|
|
changeTask(){
|
|
this.systemSubjectId=''
|
|
this.systemSubjectId=''
|
|
this.unitSubjectValue=''
|
|
this.unitSubjectValue=''
|
|
this.currentTaskName = this.taskOPtion.find( item => item.value== this.wholeOutTaskId ).label
|
|
this.currentTaskName = this.taskOPtion.find( item => item.value== this.wholeOutTaskId ).label
|
|
this.currentTaskGrade = this.taskList.find( item=> item.taskId==this.wholeOutTaskId).syntheticTaskScore
|
|
this.currentTaskGrade = this.taskList.find( item=> item.taskId==this.wholeOutTaskId).syntheticTaskScore
|
|
|
|
+ this.getUnitListByTaskId(this.wholeOutTaskId)
|
|
|
|
+ // 获取任务的系统列表
|
|
|
|
+ this.getSystemListByTaskId(this.wholeOutTaskId)
|
|
// 获取地图的信息
|
|
// 获取地图的信息
|
|
this.getMapDetail(this.wholeOutTaskId)
|
|
this.getMapDetail(this.wholeOutTaskId)
|
|
// 获取任务的课目信息
|
|
// 获取任务的课目信息
|
|
@@ -1136,7 +1245,14 @@ export default {
|
|
// 获取任务的课目信息
|
|
// 获取任务的课目信息
|
|
async getSubjectList(taskId){
|
|
async getSubjectList(taskId){
|
|
let params={}
|
|
let params={}
|
|
- const res = await request(`/dt_screen/rest/v1/subject/list/${taskId}`, 'get', params, false)
|
|
|
|
|
|
+ params["taskId"] = taskId;
|
|
|
|
+ if (this.unitTaskValue !== null) {
|
|
|
|
+ params["unitId"] = this.unitTaskValue;
|
|
|
|
+ }
|
|
|
|
+ if (this.systemTaskId !== null) {
|
|
|
|
+ params["systemId"] = this.systemTaskId;
|
|
|
|
+ }
|
|
|
|
+ const res = await request(`/dt_screen/rest/v2/subject/listByCondition`, 'post', params, false)
|
|
const { errorCode, errorMessage, success,data } = res.data;
|
|
const { errorCode, errorMessage, success,data } = res.data;
|
|
if (success) {
|
|
if (success) {
|
|
console.log('获取任务的课目信息', data);
|
|
console.log('获取任务的课目信息', data);
|
|
@@ -1171,16 +1287,17 @@ export default {
|
|
},
|
|
},
|
|
changeTaskSystem(){
|
|
changeTaskSystem(){
|
|
console.log('ckx debug this.systemTaskId ', this.systemTaskId )
|
|
console.log('ckx debug this.systemTaskId ', this.systemTaskId )
|
|
|
|
+ this.getTaskList()
|
|
|
|
|
|
},
|
|
},
|
|
changeTaskUnit(){
|
|
changeTaskUnit(){
|
|
console.log('ckx debug this.unitTaskValue ', this.unitTaskValue )
|
|
console.log('ckx debug this.unitTaskValue ', this.unitTaskValue )
|
|
|
|
+ this.getTaskList()
|
|
},
|
|
},
|
|
// 切换年度
|
|
// 切换年度
|
|
changeYear(){
|
|
changeYear(){
|
|
console.log('ckx debug this.currentYear ', this.currentYear )
|
|
console.log('ckx debug this.currentYear ', this.currentYear )
|
|
-
|
|
|
|
-
|
|
|
|
|
|
+ this.getTaskList()
|
|
},
|
|
},
|
|
|
|
|
|
// 切换系统再结合任务id 获取课目课目列表
|
|
// 切换系统再结合任务id 获取课目课目列表
|
|
@@ -1238,10 +1355,10 @@ export default {
|
|
this.getTaskList()
|
|
this.getTaskList()
|
|
// 获取全部任务状态占比
|
|
// 获取全部任务状态占比
|
|
this.getAllTaskDetail()
|
|
this.getAllTaskDetail()
|
|
- // 获取全部任务成绩统计
|
|
|
|
- this.getAllTaskScore()
|
|
|
|
- // 获取全部任务成绩分布
|
|
|
|
- this.getAllTaskDistribution()
|
|
|
|
|
|
+ // // 获取全部任务成绩统计
|
|
|
|
+ // this.getAllTaskScore()
|
|
|
|
+ // // 获取全部任务成绩分布
|
|
|
|
+ // this.getAllTaskDistribution()
|
|
// this.instructList=data
|
|
// this.instructList=data
|
|
// unitId,unitName
|
|
// unitId,unitName
|
|
this.unitOption = data.map((item)=>{
|
|
this.unitOption = data.map((item)=>{
|
|
@@ -1251,7 +1368,7 @@ export default {
|
|
}
|
|
}
|
|
})
|
|
})
|
|
this.unitFinshedValue=this.unitOption[0].value
|
|
this.unitFinshedValue=this.unitOption[0].value
|
|
- this.unitSubGradeValue=this.unitOption[0].value
|
|
|
|
|
|
+ // this.unitSubGradeValue=this.unitOption[0].value
|
|
this.getItemUnits()
|
|
this.getItemUnits()
|
|
} else {
|
|
} else {
|
|
this.$message.error(errorMessage)
|
|
this.$message.error(errorMessage)
|
|
@@ -1278,7 +1395,7 @@ export default {
|
|
}
|
|
}
|
|
})
|
|
})
|
|
this.systemFinshedValue=this.systemOption[0].value
|
|
this.systemFinshedValue=this.systemOption[0].value
|
|
- this.systemSubGradeValue=this.systemOption[0].value
|
|
|
|
|
|
+ // this.systemSubGradeValue=this.systemOption[0].value
|
|
this.getItemSystem()
|
|
this.getItemSystem()
|
|
} else {
|
|
} else {
|
|
this.$message.error(errorMessage)
|
|
this.$message.error(errorMessage)
|
|
@@ -1328,7 +1445,10 @@ export default {
|
|
// 切换一个系统查看课目的分数
|
|
// 切换一个系统查看课目的分数
|
|
changeSystemSubGrade(){
|
|
changeSystemSubGrade(){
|
|
console.log('ckx debug systemSubGradeValue ', this.systemSubGradeValue )
|
|
console.log('ckx debug systemSubGradeValue ', this.systemSubGradeValue )
|
|
-
|
|
|
|
|
|
+ // 获取某个任务下单位参与与课目人员的的成绩统计
|
|
|
|
+ this.getSystemSubjectPeopleScore(this.wholeOutTaskId,this.unitSubGradeValue)
|
|
|
|
+ // 获取某个任务下单位参与与课目人员的的成绩分布
|
|
|
|
+ this.getUnitSubjectPeopleDistribution(this.wholeOutTaskId,this.unitSubGradeValue)
|
|
},
|
|
},
|
|
|
|
|
|
// 获取某一个任务课目状态占比
|
|
// 获取某一个任务课目状态占比
|
|
@@ -1357,7 +1477,9 @@ export default {
|
|
// 全部任务分数统计
|
|
// 全部任务分数统计
|
|
async getAllTaskScore(){
|
|
async getAllTaskScore(){
|
|
let params={}
|
|
let params={}
|
|
- const res = await request('/dt_screen/rest/v1/statistics/taskScore', 'get', params, false)
|
|
|
|
|
|
+ params["taskIds"] = this.taskOPtion.map(item => item.value)
|
|
|
|
+ console.log("sgw debug:", params);
|
|
|
|
+ const res = await request('/dt_screen/rest/v2/statistics/taskScore', 'post', params, false)
|
|
const { errorCode, errorMessage, success,data } = res.data;
|
|
const { errorCode, errorMessage, success,data } = res.data;
|
|
if (success) {
|
|
if (success) {
|
|
console.log('全部任务分数统计', data);
|
|
console.log('全部任务分数统计', data);
|
|
@@ -1395,7 +1517,8 @@ export default {
|
|
// 获取全部任务分布
|
|
// 获取全部任务分布
|
|
async getAllTaskDistribution(){
|
|
async getAllTaskDistribution(){
|
|
let params={}
|
|
let params={}
|
|
- const res = await request('/dt_screen/rest/v1/statistics/taskScore/distribution', 'get', params, false)
|
|
|
|
|
|
+ params["taskIds"] = this.taskOPtion.map(item => item.value)
|
|
|
|
+ const res = await request('/dt_screen/rest/v2/statistics/taskScore/distribution', 'post', params, false)
|
|
const { errorCode, errorMessage, success,data } = res.data;
|
|
const { errorCode, errorMessage, success,data } = res.data;
|
|
if (success) {
|
|
if (success) {
|
|
console.log('获取全部任务成绩分布', data);
|
|
console.log('获取全部任务成绩分布', data);
|
|
@@ -1442,39 +1565,55 @@ export default {
|
|
// 获取某一个单位的任务完成率
|
|
// 获取某一个单位的任务完成率
|
|
async getItemUnits(){
|
|
async getItemUnits(){
|
|
let params={}
|
|
let params={}
|
|
- const res = await request(`/dt_screen/rest/v1/statistics/unit/${this.unitFinshedValue}/completionRate`, 'get', params, false)
|
|
|
|
|
|
+ if (this.currentYear !== null) {
|
|
|
|
+ params["startTime"] = this.currentYear[0];
|
|
|
|
+ params["endTime"] = this.currentYear[1];
|
|
|
|
+ }
|
|
|
|
+ if (this.unitTaskValue !== '') {
|
|
|
|
+ console.log("sgw debug conditionUnit", this.unitTaskValue);
|
|
|
|
+ params["unitId"] = this.unitTaskValue;
|
|
|
|
+ } else {
|
|
|
|
+ console.log("sgw debug selectUnit", this.unitFinshedValue);
|
|
|
|
+ params["unitId"] = this.unitFinshedValue
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ const res = await request(`/dt_screen/rest/v2/statistics/unit/completionRate`, 'post', params, false)
|
|
const { errorCode, errorMessage, success,data } = res.data;
|
|
const { errorCode, errorMessage, success,data } = res.data;
|
|
if (success) {
|
|
if (success) {
|
|
console.log('获取某一个单位的任务完成率', data);
|
|
console.log('获取某一个单位的任务完成率', data);
|
|
const { category, value } = data
|
|
const { category, value } = data
|
|
let alldistributionData=[]
|
|
let alldistributionData=[]
|
|
- if(category.length){
|
|
|
|
- category.forEach((item,index)=>{
|
|
|
|
- alldistributionData.push({
|
|
|
|
- name: item,
|
|
|
|
- value: value[index]
|
|
|
|
|
|
+ if (category != null) {
|
|
|
|
+ if(category.length){
|
|
|
|
+ category.forEach((item,index)=>{
|
|
|
|
+ alldistributionData.push({
|
|
|
|
+ name: item,
|
|
|
|
+ value: value[index]
|
|
|
|
+ })
|
|
})
|
|
})
|
|
- })
|
|
|
|
- let precentData='-%'
|
|
|
|
- let isFinshedIndex = category.findIndex( item => item=='已完成')
|
|
|
|
- if(isFinshedIndex != -1){
|
|
|
|
- let isFinshedData = value[isFinshedIndex]
|
|
|
|
- var totalData = value.reduce(function(a, b) {
|
|
|
|
- return Number(a) + Number(b);
|
|
|
|
- });
|
|
|
|
- if(totalData==0){
|
|
|
|
- precentData='-%'
|
|
|
|
- }else {
|
|
|
|
- precentData= Number((Number(isFinshedData)/ Number(totalData))*100)
|
|
|
|
- precentData= precentData % 10 ==0 ? precentData +'%' : Number(precentData).toFixed(1)+'%'
|
|
|
|
|
|
+ let precentData='无数据'
|
|
|
|
+ let isFinshedIndex = category.findIndex( item => item=='已完成')
|
|
|
|
+ if(isFinshedIndex != -1){
|
|
|
|
+ let isFinshedData = value[isFinshedIndex]
|
|
|
|
+ var totalData = value.reduce(function(a, b) {
|
|
|
|
+ return Number(a) + Number(b);
|
|
|
|
+ });
|
|
|
|
+ if(totalData==0){
|
|
|
|
+ precentData='无数据'
|
|
|
|
+ }else {
|
|
|
|
+ precentData= Number((Number(isFinshedData)/ Number(totalData))*100)
|
|
|
|
+ precentData= precentData % 10 ==0 ? precentData +'%' : Number(precentData).toFixed(1)+'%'
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
+ this.initEchartsTaskPrecent(alldistributionData,precentData)
|
|
|
|
+ this.completionRate=false
|
|
|
|
+ }else {
|
|
|
|
+ this.completionRate=true
|
|
}
|
|
}
|
|
- this.initEchartsTaskPrecent(alldistributionData,precentData)
|
|
|
|
- this.completionRate=false
|
|
|
|
- }else {
|
|
|
|
- this.completionRate=true
|
|
|
|
|
|
+ } else {
|
|
|
|
+ this.completionRate = true;
|
|
}
|
|
}
|
|
-
|
|
|
|
} else {
|
|
} else {
|
|
this.$message.error(errorMessage)
|
|
this.$message.error(errorMessage)
|
|
}
|
|
}
|
|
@@ -1483,7 +1622,16 @@ export default {
|
|
// 获取某一个系统的任务完成率
|
|
// 获取某一个系统的任务完成率
|
|
async getItemSystem(){
|
|
async getItemSystem(){
|
|
let params={}
|
|
let params={}
|
|
- const res = await request(`/dt_screen/rest/v1/statistics/system/${this.systemFinshedValue}/completionRate`, 'get', params, false)
|
|
|
|
|
|
+ if (this.currentYear !== null) {
|
|
|
|
+ params["startTime"] = this.currentYear[0];
|
|
|
|
+ params["endTime"] = this.currentYear[1];
|
|
|
|
+ }
|
|
|
|
+ if (this.systemTaskId !== '') {
|
|
|
|
+ params["systemId"] = this.systemTaskId;
|
|
|
|
+ } else {
|
|
|
|
+ params["systemId"] = this.systemFinshedValue
|
|
|
|
+ }
|
|
|
|
+ const res = await request(`/dt_screen/rest/v2/statistics/system/completionRate`, 'post', params, false)
|
|
const { errorCode, errorMessage, success,data } = res.data;
|
|
const { errorCode, errorMessage, success,data } = res.data;
|
|
if (success) {
|
|
if (success) {
|
|
console.log('获取某一个系统的任务完成率', data);
|
|
console.log('获取某一个系统的任务完成率', data);
|
|
@@ -1496,7 +1644,7 @@ export default {
|
|
value: value[index]
|
|
value: value[index]
|
|
})
|
|
})
|
|
})
|
|
})
|
|
- let precentData='-%'
|
|
|
|
|
|
+ let precentData='无数据'
|
|
let isFinshedIndex = category.findIndex( item => item=='已完成')
|
|
let isFinshedIndex = category.findIndex( item => item=='已完成')
|
|
if(isFinshedIndex != -1){
|
|
if(isFinshedIndex != -1){
|
|
let isFinshedData = value[isFinshedIndex]
|
|
let isFinshedData = value[isFinshedIndex]
|
|
@@ -1504,7 +1652,7 @@ export default {
|
|
return Number(a) + Number(b);
|
|
return Number(a) + Number(b);
|
|
});
|
|
});
|
|
if(totalData==0){
|
|
if(totalData==0){
|
|
- precentData='-%'
|
|
|
|
|
|
+ precentData='无数据'
|
|
}else {
|
|
}else {
|
|
precentData= Number((Number(isFinshedData)/ Number(totalData))*100)
|
|
precentData= Number((Number(isFinshedData)/ Number(totalData))*100)
|
|
precentData= precentData % 10 ==0 ? precentData +'%' : Number(precentData).toFixed(1)+'%'
|
|
precentData= precentData % 10 ==0 ? precentData +'%' : Number(precentData).toFixed(1)+'%'
|
|
@@ -2397,7 +2545,7 @@ export default {
|
|
if(type=='more'){
|
|
if(type=='more'){
|
|
this.$router.push('/situationScreen')
|
|
this.$router.push('/situationScreen')
|
|
}else {
|
|
}else {
|
|
- this.$router.push('/taskScreen')
|
|
|
|
|
|
+ this.$router.push('/historicTaskScreen')
|
|
}
|
|
}
|
|
|
|
|
|
},
|
|
},
|