网络生态修复完毕

lijinlong
许宏杰 1 year ago
parent 9970590151
commit ad7e2ab887

@ -245,3 +245,27 @@ export function managescreen() {
method: "get",
});
}
// 网评文章录用情况;
export function networkArticles() {
return request({
url: "/zongzhi/network/articles",
method: "get",
});
}
//网评员任务完成率(月)
export function networkAppraisercomplete() {
return request({
url: "/zongzhi/network/appraisercomplete",
method: "get",
});
}
export function networkAppraiser() {
return request({
url: "/zongzhi/network/appraiser",
method: "get",
});
}

@ -25,7 +25,7 @@ const dict = {
getDictType({ commit }) {
return new Promise((resolve, reject) => {
const query = {
list: "sys_user_sex,tc_net_sx,tc_yq_media,tc_enter_type,tc_inlet_yewu,tc_item_type,tc_net_safety_level,tc_yes_no,tc_unit_type,tc_tmt_type,tc_db_steam_state,tc_attack_type,tc_yh_level,tc_yh_source,tc_yq_type,tc_event_type,tc_cy_type,tc_yq_state,tc_steam_state",
list: "sys_user_sex,tc_net_sx,tc_yq_media,tc_enter_type,tc_inlet_yewu,tc_item_type,tc_net_safety_level,tc_yes_no,tc_unit_type,tc_tmt_type,tc_db_steam_state,tc_attack_type,tc_yh_level,tc_yh_source,tc_yq_type,tc_event_type,tc_cy_type,tc_yq_state,tc_steam_state,tc_wz_type",
};
getDictList(query)
.then((res) => {

@ -55,7 +55,7 @@
<div class="employ-text">本级录用</div>
<div class="employ-num">
<span :class="status === 1 ? 'numchecked' : 'numunchecked'">{{
59
articleType['本级录用']
}}</span>
<span></span>
</div>
@ -68,7 +68,7 @@
<div class="employ-num">
<span
:class="status === 2 ? 'numchecked' : 'numunchecked'"
>{{ 45 }}
>{{ articleType['苏州级录用'] }}
</span>
<span></span>
</div>
@ -80,12 +80,13 @@
<div class="employ-text">省级及以上录用</div>
<div class="employ-num">
<span :class="status === 3 ? 'numchecked' : 'numunchecked'">{{
1
articleType['省级及以上录用']
}}</span>
<span></span>
</div>
</div>
</div>
<div @click="rowClick($event)">
<vue-seamless-scroll
:data="dataList"
class="employ-table"
@ -95,12 +96,13 @@
v-for="(item, idx) in dataList"
:key="idx"
class="text"
@click="rowClick(item)"
>
<span class="text-inner" :title="item.label">{{ item.articleTitle }}</span>
<span class="text-inner" :data-item="JSON.stringify(item)">{{ item.articleTitle }}</span>
</div>
</vue-seamless-scroll>
</div>
</div>
<!-- 网络力量弹框 -->
<el-dialog
v-if="centerDialogVisible"
@ -212,7 +214,7 @@
<script>
// import { getReviewArticle } from '@/api/common'
import { listSafetyadmin, listCommentator, listPingtai, listNetSafetyZcUnit, listPrincipal, listVolunteer, listArticle } from '@/api/zongzhi/st.js'
import { listSafetyadmin, listCommentator, listPingtai, listNetSafetyZcUnit, listPrincipal, listVolunteer, listArticle ,networkArticles} from '@/api/zongzhi/st.js'
import vueSeamlessScroll from 'vue-seamless-scroll'
window.JSZip = require('jszip')
@ -222,6 +224,11 @@ export default {
},
data() {
return {
articleType:{
"本级录用":0,
"苏州级录用":0,
"省级及以上录用":0
},
currentTitle: '',
tableList: [],
tableKey: [],
@ -384,6 +391,7 @@ export default {
},
watch: {},
created() {
// getReviewArticle().then((res) => {
// if (res['T_big_screen_review_article[]'].length > 0) {
// this.dataList = []
@ -404,10 +412,26 @@ export default {
this.clearChange()
},
mounted() {
this.getNetworkArticles()
this.getWz()
this.automaticChange(2)
},
methods: {
/**
* 录用情况
*/
getNetworkArticles(){
networkArticles().then(res=>{
for(let key in this.articleType){
res.data.forEach(item=>{
if(this.$filterDict('tc_wz_type',item.type) == key){
this.articleType[key] = item.count
}
})
}
})
},
/** 重置 */
reset() {
this.tableList = []
@ -623,8 +647,9 @@ export default {
this.currentPage = val
this.setCurrentPageData()
},
rowClick(row) {
// this.dialogTitle = row.labe
rowClick(e) {
let row = JSON.parse(e.target.dataset.item)
this.dialogTitle = row.articleTitle
this.href = row.url
this.pageDetails = true
// this.dialogTitle = row.label

@ -26,14 +26,14 @@
/>
<span>本级网评指令比例 </span>
<span style="margin-left: 20px; color: #71e8fb">
{{ ((bjNum / (sjNum + bjNum)) * 100) | numFilter }}%
{{ sjNum }}%
</span>
<div class="progress">
<div
:style="{
backgroundColor: '#71e8fb',
height: 9,
width: (bjNum / (sjNum + bjNum)) * 100 + '%',
width: sjNum+'%',
}"
></div>
</div>
@ -45,14 +45,14 @@
/>
<span>上级网评指令比例</span>
<span style="margin-left: 20px; color: #79ffd0">
{{ ((sjNum / (sjNum + bjNum)) * 100) | numFilter }}%
{{ bjNum}}%
</span>
<div class="progress">
<div
:style="{
backgroundColor: '#79ffd0',
height: 9,
width: (sjNum / (sjNum + bjNum)) * 100 + '%',
width: bjNum+'%',
}"
></div>
</div>
@ -70,6 +70,7 @@
<script>
import { getComplete } from '@/api/common'
import { networkAppraisercomplete ,networkAppraiser} from '@/api/zongzhi/st.js'
export default {
components: {},
filters: {
@ -80,11 +81,11 @@ export default {
},
data() {
return {
sjNum: 19.8,
bjNum: 80.2,
sjNum: 0,
bjNum: 0,
percentageList: null,
percentageName: null,
percentageValue: null,
percentageName: [],
percentageValue: [],
sjdata: null,
bjdata: null
}
@ -98,16 +99,33 @@ export default {
destroyed() { },
mounted() {
this.getpercentageData()
this.getNetworkAppraiser()
// this.sjdata = Math.round(this.sjNum)
// this.bjdata = Math.round(this.bjNum)
// this.inItCylinder()
},
methods: {
getNetworkAppraiser(){
networkAppraiser().then(res=>{
this.sjNum = res.data[0].pt
this.bjNum = res.data[1].pt
this.sjdata = Math.round(this.sjNum)
this.bjdata = Math.round(this.bjNum)
this.inItCylinder()
})
},
methods: {
// data
getpercentageData() {
this.percentageName = ['陆渡街道', '港区', '浮桥镇', '编办', '老干部局', '党校', '档案馆']
this.percentageValue = [80, 90, 60, 90, 90, 70, 50]
networkAppraisercomplete().then(res=>{
res.data.forEach(item=>{
this.percentageName.push(item.name)
this.percentageValue.push(item.pt)
this.inItBar()
})
})
// this.percentageName = ['', '', '', '', '', '', '']
// this.percentageValue = [80, 90, 60, 90, 90, 70, 50]
// this.inItBar()
// getComplete().then((res) => {
// this.percentageName = res['T_DEPT_COMPLETE[]'].map(e => {
// return e.dept_name
@ -137,7 +155,7 @@ export default {
},
xAxis: {
data: ['陆渡街道', '港区', '浮桥镇', '编办', '老干部局', '党校', '档案馆'],
data:this.percentageName,
axisLine: {
show: true, // X线
lineStyle: {

Loading…
Cancel
Save