@ -2,9 +2,11 @@ package com.biutag.supervision.controller.datav;
import cn.hutool.core.date.DateUtil ;
import com.alibaba.fastjson.JSONObject ;
import com.biutag.supervision.constants.enums.ProblemSourcesEnum ;
import com.biutag.supervision.constants.enums.RepeatEnum ;
import com.biutag.supervision.mapper.DataPetition12337Mapper ;
import com.biutag.supervision.mapper.DataPetitionComplaintMapper ;
import com.biutag.supervision.mapper.NegativeBlameMapper ;
import com.biutag.supervision.mapper.NegativeMapper ;
import com.biutag.supervision.pojo.Result ;
import com.biutag.supervision.pojo.vo.* ;
@ -19,8 +21,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam ;
import org.springframework.web.bind.annotation.RestController ;
import java.util.Date ;
import java.util.List ;
import java.util.* ;
/ * *
@ -38,6 +39,7 @@ public class DataVMailViewController {
private final DataPetitionComplaintMapper dataPetitionComplaintMapper ;
private final DataPetition12337Mapper dataPetition12337Mapper ;
private final NegativeMapper negativeMapper ;
private final NegativeBlameMapper negativeBlameMapper ;
// region 左边
/ * *
@ -52,17 +54,20 @@ public class DataVMailViewController {
public Result < JSONObject > getFirstAndRepeatMail ( @RequestParam @DateTimeFormat ( pattern = "yyyy-MM-dd" ) Date beginTime ,
@RequestParam @DateTimeFormat ( pattern = "yyyy-MM-dd" ) Date endTime ) {
endTime = DateUtil . endOfDay ( endTime ) ;
//查询国家信访和公安部信访
List < String > codes = List . of ( ProblemSourcesEnum . GJXFPT . getValue ( ) , ProblemSourcesEnum . GABXF . getValue ( ) ) ;
// 初访重访情况总览
MailFirstAndRepeatOverviewVo fxjsFirstAndRepeatOverview = dataPetitionComplaintMapper . getFirstAndRepeatOverview ( beginTime , endTime , 3 ) ;
MailFirstAndRepeatOverviewVo bwzdFirstAndRepeatOverview = dataPetitionComplaintMapper . getFirstAndRepeatOverview ( beginTime , endTime , 4 ) ;
MailFirstAndRepeatOverviewVo fxjsFirstAndRepeatOverview = dataPetitionComplaintMapper . getFirstAndRepeatOverview ( beginTime , endTime , 3 , codes ) ;
MailFirstAndRepeatOverviewVo bwzdFirstAndRepeatOverview = dataPetitionComplaintMapper . getFirstAndRepeatOverview ( beginTime , endTime , 4 , codes ) ;
// 初访重访分类数据排行
List < OrganizeProblemRankVo > fxsjFirstRankList = dataPetitionComplaintMapper . getMailRank ( beginTime , endTime , 3 , RepeatEnum . FIRST_MAIL . getId ( ) ) ; // 1
List < OrganizeProblemRankVo > fxsjRepeatRankList = dataPetitionComplaintMapper . getMailRank ( beginTime , endTime , 3 , RepeatEnum . REPEAT_MAIL . getId ( ) ) ; // 2
List < OrganizeProblemRankVo > fxsjLeaderViewRankList = dataPetitionComplaintMapper . getMailLeaderRank ( beginTime , endTime , 3 ) ;
List < OrganizeProblemRankVo > fxsjFirstRankList = dataPetitionComplaintMapper . getMailRank ( beginTime , endTime , 3 , RepeatEnum . FIRST_MAIL . getId ( ) , codes ) ; // 1
List < OrganizeProblemRankVo > fxsjRepeatRankList = dataPetitionComplaintMapper . getMailRank ( beginTime , endTime , 3 , RepeatEnum . REPEAT_MAIL . getId ( ) , codes ) ; // 2
List < OrganizeProblemRankVo > fxsjLeaderViewRankList = dataPetitionComplaintMapper . getMailLeaderRank ( beginTime , endTime , 3 , codes ) ;
List < OrganizeProblemRankVo > bwzdFirstRankList = dataPetitionComplaintMapper . getMailRank ( beginTime , endTime , 4 , RepeatEnum . FIRST_MAIL . getId ( ) ) ;
List < OrganizeProblemRankVo > bwzdRepeatRankList = dataPetitionComplaintMapper . getMailRank ( beginTime , endTime , 4 , RepeatEnum . REPEAT_MAIL . getId ( ) ) ;
List < OrganizeProblemRankVo > bwzdLeaderViewRankList = dataPetitionComplaintMapper . getMailLeaderRank ( beginTime , endTime , 4 ) ;
List < OrganizeProblemRankVo > bwzdFirstRankList = dataPetitionComplaintMapper . getMailRank ( beginTime , endTime , 4 , RepeatEnum . FIRST_MAIL . getId ( ) , codes ) ;
List < OrganizeProblemRankVo > bwzdRepeatRankList = dataPetitionComplaintMapper . getMailRank ( beginTime , endTime , 4 , RepeatEnum . REPEAT_MAIL . getId ( ) , codes ) ;
List < OrganizeProblemRankVo > bwzdLeaderViewRankList = dataPetitionComplaintMapper . getMailLeaderRank ( beginTime , endTime , 4 , codes ) ;
JSONObject data = new JSONObject ( )
. fluentPut ( "fxjsFirstAndRepeatOverview" , fxjsFirstAndRepeatOverview )
. fluentPut ( "bwzdFirstAndRepeatOverview" , bwzdFirstAndRepeatOverview )
@ -152,17 +157,19 @@ public class DataVMailViewController {
@GetMapping ( "/getEntanglementAndMassMail" )
public Result < JSONObject > getEntanglementAndMassMail ( @RequestParam @DateTimeFormat ( pattern = "yyyy-MM-dd" ) Date beginTime ,
@RequestParam @DateTimeFormat ( pattern = "yyyy-MM-dd" ) Date endTime ) {
//查询国家信访和公安部信访
List < String > codes = List . of ( ProblemSourcesEnum . GJXFPT . getValue ( ) , ProblemSourcesEnum . GABXF . getValue ( ) ) ;
// 缠访集访情况总览
MailEntanglementMassOverviewVo fxsjMailEntanglementMassOverview = dataPetitionComplaintMapper . getEntanglementAndMassOverview ( beginTime , endTime , 3 ) ;
MailEntanglementMassOverviewVo bwzdMailEntanglementMassOverview = dataPetitionComplaintMapper . getEntanglementAndMassOverview ( beginTime , endTime , 4 ) ;
MailEntanglementMassOverviewVo fxsjMailEntanglementMassOverview = dataPetitionComplaintMapper . getEntanglementAndMassOverview ( beginTime , endTime , 3 , codes ) ;
MailEntanglementMassOverviewVo bwzdMailEntanglementMassOverview = dataPetitionComplaintMapper . getEntanglementAndMassOverview ( beginTime , endTime , 4 , codes ) ;
List < OrganizeProblemRankVo > fxsjLeaderReviewList = dataPetitionComplaintMapper . getMailLeaderRank ( beginTime , endTime , 3 ) ;
List < OrganizeProblemRankVo > fxsjEntanglementList = dataPetitionComplaintMapper . getEntanglementMailRank ( beginTime , endTime , 3 ) ;
List < OrganizeProblemRankVo > fxsjMassList = dataPetitionComplaintMapper . getMassMailRank ( beginTime , endTime , 3 ) ;
List < OrganizeProblemRankVo > fxsjLeaderReviewList = dataPetitionComplaintMapper . getMailLeaderRank ( beginTime , endTime , 3 , codes ) ;
List < OrganizeProblemRankVo > fxsjEntanglementList = dataPetitionComplaintMapper . getEntanglementMailRank ( beginTime , endTime , 3 , codes ) ;
List < OrganizeProblemRankVo > fxsjMassList = dataPetitionComplaintMapper . getMassMailRank ( beginTime , endTime , 3 , codes ) ;
List < OrganizeProblemRankVo > bwzdLeaderReviewList = dataPetitionComplaintMapper . getMailLeaderRank ( beginTime , endTime , 4 ) ;
List < OrganizeProblemRankVo > bwzdEntanglementList = dataPetitionComplaintMapper . getEntanglementMailRank ( beginTime , endTime , 4 ) ;
List < OrganizeProblemRankVo > bwzdMassList = dataPetitionComplaintMapper . getMassMailRank ( beginTime , endTime , 4 ) ;
List < OrganizeProblemRankVo > bwzdLeaderReviewList = dataPetitionComplaintMapper . getMailLeaderRank ( beginTime , endTime , 4 , codes ) ;
List < OrganizeProblemRankVo > bwzdEntanglementList = dataPetitionComplaintMapper . getEntanglementMailRank ( beginTime , endTime , 4 , codes ) ;
List < OrganizeProblemRankVo > bwzdMassList = dataPetitionComplaintMapper . getMassMailRank ( beginTime , endTime , 4 , codes ) ;
JSONObject data = new JSONObject ( )
. fluentPut ( "fxsjMailEntanglementMassOverview" , fxsjMailEntanglementMassOverview )
@ -175,6 +182,43 @@ public class DataVMailViewController {
. fluentPut ( "bwzdMassList" , bwzdMassList ) ;
return Result . success ( data ) ;
}
// endregion
/ * *
* 追责问责情况
*
* @param beginTime 开始时间
* @param endTime 结束时间
* @return Result < JSONObject >
* /
@Operation ( summary = "追责问责情况" )
@GetMapping ( "/getResultCount" )
public Result < Map < String , Integer > > getResultCount ( @RequestParam @DateTimeFormat ( pattern = "yyyy-MM-dd" ) Date beginTime ,
@RequestParam @DateTimeFormat ( pattern = "yyyy-MM-dd" ) Date endTime ) {
List < BlameStats > list = negativeBlameMapper . selectBlameStatsCount ( beginTime , endTime ) ;
Map < String , Integer > blameMap = new HashMap < > ( ) ;
list . forEach ( s - > {
if ( s . getResultName ( ) . indexOf ( "、" ) > 0 ) {
for ( String name : s . getResultName ( ) . split ( "、" ) ) {
if ( ! name . contains ( "不" ) & & ! name . contains ( "追责" ) ) {
if ( blameMap . containsKey ( name ) ) {
blameMap . put ( name , blameMap . get ( name ) + s . getResultCount ( ) ) ;
} else {
blameMap . put ( name , s . getResultCount ( ) ) ;
}
}
}
} else {
if ( ! s . getResultName ( ) . contains ( "不" ) & & ! s . getResultName ( ) . contains ( "追责" ) ) {
if ( blameMap . containsKey ( s . getResultName ( ) ) ) {
blameMap . put ( s . getResultName ( ) , blameMap . get ( s . getResultName ( ) ) + s . getResultCount ( ) ) ;
} else {
blameMap . put ( s . getResultName ( ) , s . getResultCount ( ) ) ;
}
}
}
} ) ;
return Result . success ( blameMap ) ;
}
}