diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govproject/ProjectDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govproject/ProjectDao.xml
index 0282677e40..d2cc49d64a 100644
--- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govproject/ProjectDao.xml
+++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govproject/ProjectDao.xml
@@ -4,7 +4,7 @@
- SELECT
+ SELECT DISTINCT
p.ID AS projectId,
p.TITLE AS projectTitle,
p.`STATUS` AS projectStatus,
@@ -19,12 +19,12 @@
IFNULL( pp.PUBLIC_REPLY, '' ) AS publicReply
FROM
project p
- INNER JOIN ( SELECT PROJECT_ID, GRID_ID FROM project_related_personnel WHERE DEL_FLAG = '0' AND SOURCE_TYPE = 'issue' ) prp ON p.ID = prp.PROJECT_ID
+ LEFT JOIN ( SELECT PROJECT_ID, GRID_ID FROM project_related_personnel WHERE DEL_FLAG = '0' AND SOURCE_TYPE = 'issue' ) prp ON p.ID = prp.PROJECT_ID
INNER JOIN ( SELECT PROJECT_ID, MAX( CREATED_TIME ) AS updateTime FROM project_process ppro GROUP BY PROJECT_ID ) ppro ON p.ID = ppro.PROJECT_ID
INNER JOIN ( SELECT PROJECT_ID, COUNT( DISTINCT DEPARTMENT_NAME ) AS departmentCount FROM project_staff GROUP BY PROJECT_ID ) ps ON ps.PROJECT_ID = p.ID
LEFT JOIN ( SELECT PROJECT_ID, COUNT( ID ) AS processCount FROM project_process WHERE DEL_FLAG = '0' AND OPERATION != 'created' GROUP BY PROJECT_ID ) ppc ON ppc.PROJECT_ID = p.ID
LEFT JOIN project_process pp ON p.ID = pp.PROJECT_ID
- AND pp.OPERATION = 'close'
+ AND pp.OPERATION = 'close' AND pp.DEL_FLAG = '0'
WHERE
p.DEL_FLAG = '0'
AND p.ORG_ID_PATH LIKE concat('%', #{agencyId}, '%')
diff --git a/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenIndexDataMonthlyDao.xml b/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenIndexDataMonthlyDao.xml
index c04e3d18e6..230082385f 100644
--- a/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenIndexDataMonthlyDao.xml
+++ b/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenIndexDataMonthlyDao.xml
@@ -260,10 +260,10 @@
WHERE
dm.del_flag = '0'
AND rd.del_flag = '0'
+
+ AND org.CUSTOMER_ID = #{customerId}
+
-
- AND org.CUSTOMER_ID = #{customerId}
-
AND org.AREA_CODE LIKE concat(#{areaCode}, '%')
diff --git a/epmet-module/epmet-job/epmet-job-server/pom.xml b/epmet-module/epmet-job/epmet-job-server/pom.xml
index 5c1655d562..e3d12204ad 100644
--- a/epmet-module/epmet-job/epmet-job-server/pom.xml
+++ b/epmet-module/epmet-job/epmet-job-server/pom.xml
@@ -96,6 +96,12 @@
2.0.0
compile
+
+ com.epmet
+ gov-issue-client
+ 2.0.0
+ compile
+
diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/feign/GovIssueFeignClient.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/feign/GovIssueFeignClient.java
index 4c091c1c6a..3731ecf8e6 100644
--- a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/feign/GovIssueFeignClient.java
+++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/feign/GovIssueFeignClient.java
@@ -2,6 +2,7 @@ package com.epmet.feign;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.Result;
+import com.epmet.dto.form.DailyStatisticalVoteJob;
import com.epmet.feign.impl.GovIssueFeignClientFallBack;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
@@ -22,7 +23,7 @@ public interface GovIssueFeignClient {
* @date 2020.05.20 15:39
**/
@PostMapping(value = "gov/issue/issuevotestatisticaldaily/dailystatisticalvotejob")
- Result dailyStatisticalVoteJob();
+ Result dailyStatisticalVoteJob(DailyStatisticalVoteJob form);
/**
* @Description 将所有表决中的投票数从缓存同步到数据库,要进行数据对比,若数据一致无需更新
diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/feign/impl/GovIssueFeignClientFallBack.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/feign/impl/GovIssueFeignClientFallBack.java
index 0267ca347f..7623db9dab 100644
--- a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/feign/impl/GovIssueFeignClientFallBack.java
+++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/feign/impl/GovIssueFeignClientFallBack.java
@@ -3,6 +3,7 @@ package com.epmet.feign.impl;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.ModuleUtils;
import com.epmet.commons.tools.utils.Result;
+import com.epmet.dto.form.DailyStatisticalVoteJob;
import com.epmet.feign.GovIssueFeignClient;
import org.springframework.stereotype.Component;
@@ -15,8 +16,8 @@ import org.springframework.stereotype.Component;
@Component
public class GovIssueFeignClientFallBack implements GovIssueFeignClient {
@Override
- public Result dailyStatisticalVoteJob() {
- return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "dailyStatisticalVoteJob");
+ public Result dailyStatisticalVoteJob(DailyStatisticalVoteJob form) {
+ return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "dailyStatisticalVoteJob",form);
}
@Override
diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/IssueVotingDailyStatisticalTaskService.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/IssueVotingDailyStatisticalTaskService.java
index 0b72ddc1b2..3d14b1be08 100644
--- a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/IssueVotingDailyStatisticalTaskService.java
+++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/IssueVotingDailyStatisticalTaskService.java
@@ -2,6 +2,7 @@ package com.epmet.service;
import com.epmet.commons.tools.utils.Result;
+import com.epmet.dto.form.DailyStatisticalVoteJob;
/**
* @Description 生成议题表决日统计数定时任务
@@ -10,6 +11,6 @@ import com.epmet.commons.tools.utils.Result;
*/
public interface IssueVotingDailyStatisticalTaskService {
- Result issueVotingDailyStatistical();
+ Result issueVotingDailyStatistical(DailyStatisticalVoteJob form);
}
diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/IssueVotingDailyStatisticalTaskServiceImpl.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/IssueVotingDailyStatisticalTaskServiceImpl.java
index eb31c97810..504dc46994 100644
--- a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/IssueVotingDailyStatisticalTaskServiceImpl.java
+++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/IssueVotingDailyStatisticalTaskServiceImpl.java
@@ -1,6 +1,7 @@
package com.epmet.service.impl;
import com.epmet.commons.tools.utils.Result;
+import com.epmet.dto.form.DailyStatisticalVoteJob;
import com.epmet.feign.GovIssueFeignClient;
import com.epmet.service.IssueVotingDailyStatisticalTaskService;
import org.springframework.beans.factory.annotation.Autowired;
@@ -18,7 +19,7 @@ public class IssueVotingDailyStatisticalTaskServiceImpl implements IssueVotingDa
private GovIssueFeignClient govIssueFeignClient;
@Override
- public Result issueVotingDailyStatistical() {
- return govIssueFeignClient.dailyStatisticalVoteJob();
+ public Result issueVotingDailyStatistical(DailyStatisticalVoteJob form) {
+ return govIssueFeignClient.dailyStatisticalVoteJob(form);
}
}
diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/DailyStatisticalVoteTask.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/DailyStatisticalVoteTask.java
index 1c33869895..41302d5305 100644
--- a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/DailyStatisticalVoteTask.java
+++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/DailyStatisticalVoteTask.java
@@ -1,7 +1,10 @@
package com.epmet.task;
+import com.alibaba.fastjson.JSON;
import com.epmet.commons.tools.utils.Result;
+import com.epmet.dto.form.DailyStatisticalVoteJob;
import com.epmet.service.IssueVotingDailyStatisticalTaskService;
+import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -24,7 +27,11 @@ public class DailyStatisticalVoteTask implements ITask{
@Override
public void run(String params) {
logger.debug("dailyStatisticalVoteTask定时任务正在执行,参数为:{}", params);
- Result result=issueVotingDailyStatisticalTaskService.issueVotingDailyStatistical();
+ DailyStatisticalVoteJob form = new DailyStatisticalVoteJob();
+ if (StringUtils.isNotBlank(params)) {
+ form = JSON.parseObject(params, DailyStatisticalVoteJob.class);
+ }
+ Result result=issueVotingDailyStatisticalTaskService.issueVotingDailyStatistical(form);
if(result.success()){
logger.debug("dailyStatisticalVoteTask定时任务正在执行定时任务执行成功");
}else{
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/PolyLineDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/PolyLineDTO.java
index 6c7960d26b..ecbd1f1997 100644
--- a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/PolyLineDTO.java
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/PolyLineDTO.java
@@ -1,5 +1,6 @@
package com.epmet.dto;
+import com.epmet.commons.tools.constant.NumConstant;
import lombok.Data;
import java.io.Serializable;
@@ -29,4 +30,8 @@ public class PolyLineDTO implements Serializable {
*/
private Integer oppositionIncrement;
+ public PolyLineDTO() {
+ this.supportIncrement = NumConstant.ZERO;
+ this.oppositionIncrement = NumConstant.ZERO;
+ }
}
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/DailyStatisticalVoteJob.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/DailyStatisticalVoteJob.java
new file mode 100644
index 0000000000..ff64816eca
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/DailyStatisticalVoteJob.java
@@ -0,0 +1,26 @@
+package com.epmet.dto.form;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @Author zxc
+ * @DateTime 2021/12/29 10:56 上午
+ * @DESC
+ */
+@Data
+public class DailyStatisticalVoteJob implements Serializable {
+
+ private static final long serialVersionUID = -3685299478100771134L;
+
+ private String customerId;
+
+ private String dateId;
+
+ private String startDate;
+
+ private String endDate;
+
+
+}
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/DailyStatisticalVoteJobResultDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/DailyStatisticalVoteJobResultDTO.java
new file mode 100644
index 0000000000..7bb45f5a4e
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/DailyStatisticalVoteJobResultDTO.java
@@ -0,0 +1,70 @@
+package com.epmet.dto.result;
+
+import com.epmet.commons.tools.constant.NumConstant;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @Author zxc
+ * @DateTime 2021/12/29 1:52 下午
+ * @DESC
+ */
+@Data
+public class DailyStatisticalVoteJobResultDTO implements Serializable {
+
+ private static final long serialVersionUID = 5266996778036448163L;
+
+ private String issueId;
+
+ /**
+ * 统计日期
+ */
+ private Date statisticalDate;
+
+ /**
+ * 到该日的总赞成数
+ */
+ private Integer supportCount;
+
+ /**
+ * 到该日的总反对数
+ */
+ private Integer oppositionCount;
+
+ /**
+ * 到该日的总票数
+ */
+ private Integer totalCount;
+
+ /**
+ * 该日增量
+ */
+ private Integer todayIncrement;
+
+ /**
+ * 该日赞成增量
+ */
+ private Integer supportIncrement;
+
+ /**
+ * 该日反对增量
+ */
+ private Integer oppositionIncrement;
+
+ /**
+ * 应表决数
+ */
+ private Integer votableCount;
+
+ public DailyStatisticalVoteJobResultDTO() {
+ this.supportCount = NumConstant.ZERO;
+ this.oppositionCount = NumConstant.ZERO;
+ this.totalCount = NumConstant.ZERO;
+ this.todayIncrement = NumConstant.ZERO;
+ this.supportIncrement = NumConstant.ZERO;
+ this.oppositionIncrement = NumConstant.ZERO;
+ this.votableCount = NumConstant.ZERO;
+ }
+}
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueManageController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueManageController.java
index ed50325a90..b11a2e960b 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueManageController.java
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueManageController.java
@@ -83,7 +83,7 @@ public class IssueManageController {
* @author zxc
*/
@PostMapping("votingtrend")
- @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_DETAIL)
+// @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_DETAIL)
public Result votingTrend(@RequestBody IssueIdFormDTO issueId){
return new Result().ok(issueVoteStatisticalService.votingTrend(issueId));
}
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueVoteStatisticalDailyController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueVoteStatisticalDailyController.java
index c0532cbbf5..1d4128ace9 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueVoteStatisticalDailyController.java
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueVoteStatisticalDailyController.java
@@ -26,6 +26,7 @@ import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.dto.IssueVoteStatisticalDailyDTO;
+import com.epmet.dto.form.DailyStatisticalVoteJob;
import com.epmet.excel.IssueVoteStatisticalDailyExcel;
import com.epmet.service.IssueVoteStatisticalDailyService;
import org.springframework.beans.factory.annotation.Autowired;
@@ -99,8 +100,9 @@ public class IssueVoteStatisticalDailyController {
* @date 2020.05.20 15:39
**/
@PostMapping(value = "dailystatisticalvotejob")
- public Result dailyStatisticalVoteJob(){
- issueVoteStatisticalDailyService.countVotingDailyStatistic();
+ public Result dailyStatisticalVoteJob(@RequestBody DailyStatisticalVoteJob form){
+// issueVoteStatisticalDailyService.countVotingDailyStatistic();
+ issueVoteStatisticalDailyService.countVotingDailyStatisticNew(form);
return new Result();
}
}
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteDetailDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteDetailDao.java
index 65d2d35904..a83bba6689 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteDetailDao.java
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteDetailDao.java
@@ -19,8 +19,10 @@ package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.IssueVoteDetailDTO;
+import com.epmet.dto.PolyLineDTO;
import com.epmet.dto.form.VoteFormDTO;
import com.epmet.dto.form.VoteRedisFormDTO;
+import com.epmet.dto.result.DailyStatisticalVoteJobResultDTO;
import com.epmet.dto.result.IssueAttitudeCountResultDTO;
import com.epmet.dto.result.IssueVoteResultDTO;
import com.epmet.dto.result.MyPartIssuesResultDTO;
@@ -130,4 +132,23 @@ public interface IssueVoteDetailDao extends BaseDao {
* @date 2021/5/12 1:48 下午
*/
List selectIssueVoteCountBatch(@Param("issueIds")List issueIds);
+
+ /**
+ * @Description 查询客户下的议题表决日增
+ * @param customerId
+ * @param dateId 当dateId为空时,查询的是累计值
+ * @author zxc
+ * @date 2021/12/29 2:02 下午
+ */
+ List statisticVote(@Param("customerId")String customerId,@Param("dateId")String dateId);
+
+ /**
+ * @Description 根据议题ID查询折线图一天的数据
+ * @param issueId
+ * @param dateId
+ * @author zxc
+ * @date 2021/12/29 4:19 下午
+ */
+ PolyLineDTO polyLineData(@Param("issueId")String issueId,@Param("dateId")String dateId);;
+
}
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteStatisticalDailyDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteStatisticalDailyDao.java
index 6b500ad3fd..ce47a20ff6 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteStatisticalDailyDao.java
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteStatisticalDailyDao.java
@@ -78,4 +78,13 @@ public interface IssueVoteStatisticalDailyDao extends BaseDao list);
+
+ /**
+ * @Description 删除历史数据
+ * @param customerId
+ * @param dateId
+ * @author zxc
+ * @date 2021/12/29 2:51 下午
+ */
+ Integer delHistoryData(@Param("customerId")String customerId,@Param("dateId")String dateId);
}
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueVoteStatisticalDailyService.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueVoteStatisticalDailyService.java
index cf94b37242..42d3beac71 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueVoteStatisticalDailyService.java
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueVoteStatisticalDailyService.java
@@ -20,6 +20,7 @@ package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.IssueVoteStatisticalDailyDTO;
+import com.epmet.dto.form.DailyStatisticalVoteJob;
import com.epmet.entity.IssueVoteStatisticalDailyEntity;
import java.util.List;
@@ -101,4 +102,12 @@ public interface IssueVoteStatisticalDailyService extends BaseService customerIds = new ArrayList<>();
+ if (StringUtils.isBlank(form.getCustomerId())){
+ Result> allCustomerList = operCrmOpenFeignClient.getAllCustomerList();
+ if (!allCustomerList.success() || CollectionUtils.isEmpty(allCustomerList.getData())){
+ throw new EpmetException("查询所有客户失败...");
+ }
+ customerIds = allCustomerList.getData().stream().map(m -> m.getId()).collect(Collectors.toList());
+ }else {
+ customerIds.add(form.getCustomerId());
+ }
+ if (StringUtils.isNotBlank(form.getStartDate()) && StringUtils.isNotBlank(form.getEndDate())){
+ List daysBetween = DateUtils.getDaysBetween(form.getStartDate(), form.getEndDate());
+ customerIds.forEach(customerId -> {
+ daysBetween.forEach(dateId -> {
+ statisticVote(customerId,dateId);
+ });
+ });
+ }else {
+ if (StringUtils.isBlank(form.getDateId())){
+ form.setDateId(LocalDate.now().minusDays(NumConstant.ONE).toString().replace("-", ""));
+ }
+ customerIds.forEach(customerId -> {
+ statisticVote(customerId, form.getDateId());
+ });
+ }
+ }
+
+ /**
+ * @Description 统计 issue_vote_statistical_daily 表
+ * 只统计表决日增存在的,不存在的不写入,查询程序补全
+ * @param customerId
+ * @param dateId 格式:YYYY-MM-DD
+ * @author zxc
+ * @date 2021/12/29 1:46 下午
+ */
+ @Transactional(rollbackFor = Exception.class)
+ public void statisticVote(String customerId,String dateId){
+ // 日增
+ List dayAdd = issueVoteDetailDao.statisticVote(customerId, dateId);
+ if (CollectionUtils.isNotEmpty(dayAdd)){
+ //累计
+ List allDayAdd = issueVoteDetailDao.statisticVote(customerId, null);
+ dayAdd.forEach(d -> allDayAdd.stream().filter(a -> a.getIssueId().equals(d.getIssueId())).forEach(a -> {
+ d.setOppositionCount(a.getOppositionCount());
+ d.setSupportCount(a.getSupportCount());
+ d.setTotalCount(a.getTotalCount());
+ }));
+ List needInsert = ConvertUtils.sourceToTarget(dayAdd, IssueVoteStatisticalDailyEntity.class);
+ Integer delNum;
+ do {
+ delNum = baseDao.delHistoryData(customerId, dateId);
+ } while (delNum != null && delNum > NumConstant.ZERO);
+ List> partition = ListUtils.partition(needInsert, NumConstant.ONE_HUNDRED);
+ partition.forEach(p -> {
+ baseDao.insertBatch(p);
+ });
+ }
+ }
+
}
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalServiceImpl.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalServiceImpl.java
index 67eea7532a..f8afd7bbf7 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalServiceImpl.java
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalServiceImpl.java
@@ -27,6 +27,7 @@ import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.constant.FieldConstant;
+import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.constant.IssueConstant;
import com.epmet.dao.IssueDao;
@@ -66,6 +67,9 @@ import java.time.ZoneOffset;
import java.util.*;
import java.util.stream.Collectors;
+import static com.epmet.commons.tools.utils.DateUtils.DATE_PATTERN;
+import static com.epmet.commons.tools.utils.DateUtils.DATE_PATTERN_YYYYMMDD;
+
/**
* 议题表决统计表
*
@@ -205,12 +209,36 @@ public class IssueVoteStatisticalServiceImpl extends BaseServiceImpl polyLineDTOS = issueVoteStatisticalDao.polyLineData(issueId);
- PolyLineDTO polyLineDTO = new PolyLineDTO();
- polyLineDTO.setVoteDate(LocalDateTime.now().toEpochSecond(ZoneOffset.of(IssueConstant.BEIJING_TIME_ZONE)));
+// PolyLineDTO polyLineDTO = new PolyLineDTO();
+// polyLineDTO.setVoteDate(LocalDateTime.now().toEpochSecond(ZoneOffset.of(IssueConstant.BEIJING_TIME_ZONE)));
//议题 已转项目 或 已结案 的时间
- String date = issueDao.operateTime(issueId.getIssueId());
+// String date = issueDao.operateTime(issueId.getIssueId());
+ IssueEntity issueEntity = issueDao.selectById(issueId.getIssueId());
+ String startDate = DateUtils.format(issueEntity.getDecidedTime(),DATE_PATTERN);
+ String endDate = null == issueEntity.getVotingDeadline() ?
+ DateUtils.format(new Date(),DATE_PATTERN) :
+ DateUtils.format(issueEntity.getVotingDeadline(),DATE_PATTERN);
+ List polyLine = getPolyLine(startDate, endDate);
+ String today = LocalDate.now().toString();
+ if (today.equals(endDate)){
+ PolyLineDTO polyLineDTO = issueVoteDetailDao.polyLineData(issueId.getIssueId(), endDate);
+ polyLine.get(polyLine.size() - NumConstant.ONE).setSupportIncrement(polyLineDTO.getSupportIncrement());
+ polyLine.get(polyLine.size() - NumConstant.ONE).setOppositionIncrement(polyLineDTO.getOppositionIncrement());
+ }
+ if (CollectionUtils.isEmpty(polyLineDTOS)){
+ votingTrendResultDTO.setPolyLine(polyLine);
+ return votingTrendResultDTO;
+ }
+ polyLineDTOS.forEach(pd -> {
+ polyLine.forEach(p -> {
+ if (pd.getVoteDate().equals(p.getVoteDate())){
+ p.setOppositionIncrement(pd.getOppositionIncrement());
+ p.setSupportIncrement(pd.getSupportIncrement());
+ }
+ });
+ });
//今天刚转项目或刚刚关闭,当天数据DB没有,直接从缓存拿
- if (polyLineDTOS.size() == NumConstant.ZERO && date.equals(LocalDate.now().toString())) {
+ /*if (polyLineDTOS.size() == NumConstant.ZERO && date.equals(LocalDate.now().toString())) {
polyLineDTO.setSupportIncrement(voteRedisFormDTO.getSupportAmount());
polyLineDTO.setOppositionIncrement(voteRedisFormDTO.getOppositionAmount());
polyLineDTOS.add(polyLineDTO);
@@ -222,18 +250,37 @@ public class IssueVoteStatisticalServiceImpl extends BaseServiceImpl getPolyLine(String startTime, String endTime){
+ List result = new ArrayList<>();
+ Date start = DateUtils.parse(startTime, DATE_PATTERN);
+ Date end = DateUtils.parse(endTime, DATE_PATTERN);
+ Calendar tempStart = Calendar.getInstance();
+ tempStart.setTime(start);
+ Calendar tempEnd = Calendar.getInstance();
+ tempEnd.setTime(end);
+ // 日期加1(包含结束)
+ tempEnd.add(Calendar.DATE, +1);
+ while (tempStart.before(tempEnd)) {
+ PolyLineDTO dto = new PolyLineDTO();
+ dto.setVoteDate(tempStart.getTimeInMillis()/1000);
+ result.add(dto);
+ tempStart.add(Calendar.DAY_OF_YEAR, 1);
+ }
+ return result;
+ }
+
/**
* @param formDTO
* @Description 满意度评价列表——已关闭
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteDetailDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteDetailDao.xml
index 3b5b4be83a..def42fc563 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteDetailDao.xml
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteDetailDao.xml
@@ -181,4 +181,43 @@
)
+
+
+
+ SELECT
+ vs.votable_count,
+
+ (t.oppositionCount + t.supportCount) AS totalCount,
+
+
+ (t.oppositionIncrement + t.supportIncrement) AS todayIncrement,
+
+ t.* FROM
+ (SELECT
+ vd.ISSUE_ID,
+ COUNT(CASE WHEN vd.ATTITUDE = 'opposition' THEN 1 END) AS oppositionCount,
+ COUNT(CASE WHEN vd.ATTITUDE = 'opposition' THEN 1 END) AS oppositionIncrement,
+ COUNT(CASE WHEN vd.ATTITUDE = 'support' THEN 1 END) AS supportCount,
+ COUNT(CASE WHEN vd.ATTITUDE = 'support' THEN 1 END) AS supportIncrement,
+ str_to_date(#{dateId},'%Y-%m-%d') AS statisticalDate
+ FROM issue_vote_detail vd
+ WHERE vd.DEL_FLAG = '0'
+ AND vd.CUSTOMER_ID = #{customerId}
+
+ AND DATE_FORMAT(vd.CREATED_TIME,'%Y-%m-%d') = #{dateId}
+
+ GROUP BY vd.ISSUE_ID)t
+ INNER JOIN issue_vote_statistical vs ON (vs.ISSUE_ID = t.ISSUE_ID AND vs.DEL_FLAG = '0')
+
+
+
+
+ SELECT
+ COUNT(CASE WHEN vd.ATTITUDE = 'opposition' THEN 1 END) AS oppositionIncrement,
+ COUNT(CASE WHEN vd.ATTITUDE = 'support' THEN 1 END) AS supportIncrement
+ FROM issue_vote_detail vd
+ WHERE vd.DEL_FLAG = '0'
+ AND DATE_FORMAT(vd.CREATED_TIME,'%Y-%m-%d') = #{dateId}
+ AND ISSUE_ID = #{issueId}
+
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteStatisticalDailyDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteStatisticalDailyDao.xml
index dcad30689c..bcbe6a5a4d 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteStatisticalDailyDao.xml
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteStatisticalDailyDao.xml
@@ -280,4 +280,13 @@
id = #{item.id}
+
+
+
+ DELETE FROM issue_vote_statistical_daily
+ WHERE CUSTOMER_ID = #{customerId}
+ AND STATISTICAL_DATE = #{dateId}
+ LIMIT 1000
+
+
\ No newline at end of file
diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AllMattersResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AllMattersResultDTO.java
index 558e73dfe0..59462d429b 100644
--- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AllMattersResultDTO.java
+++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AllMattersResultDTO.java
@@ -34,10 +34,19 @@ public class AllMattersResultDTO implements Serializable {
*/
private String matterImg;
+ private String address;
+
+ private String workPhone;
+
+ private String centerName;
+
public AllMattersResultDTO() {
this.matterName = "";
this.allowTime = "";
this.matterId = "";
this.matterImg = "";
+ this.address = "";
+ this.workPhone = "";
+ this.centerName = "";
}
}
diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPartyServiceCenterDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPartyServiceCenterDao.xml
index dc979d5df6..26fa48e448 100644
--- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPartyServiceCenterDao.xml
+++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPartyServiceCenterDao.xml
@@ -61,7 +61,10 @@
when cm.APPOINTMENT_TYPE = 'workDay' THEN CONCAT('工作日',' ', cm.START_TIME,'-',cm.END_TIME)
when cm.APPOINTMENT_TYPE = 'weekend' THEN CONCAT('周末',' ', cm.START_TIME,'-',cm.END_TIME)
ELSE CONCAT(cm.START_TIME,'-',cm.END_TIME) END AS allowTime,
- IFNULL(cm.MATTER_IMG,'') AS matterImg
+ IFNULL(cm.MATTER_IMG,'') AS matterImg,
+ c.ADDRESS,
+ c.WORK_PHONE,
+ c.CENTER_NAME
FROM ic_party_service_center c
INNER JOIN ic_party_service_center_matter cm ON (cm.PARTY_SERVICE_CENTER_ID = c.ID AND cm.DEL_FLAG = 0)
AND c.DEL_FLAG = 0
diff --git a/epmet-module/open-data-worker/open-data-worker-server/src/main/java/com/epmet/opendata/entity/BaseGridDailyworkEntity.java b/epmet-module/open-data-worker/open-data-worker-server/src/main/java/com/epmet/opendata/entity/BaseGridDailyworkEntity.java
index 8f8de7114b..5be0280fc9 100644
--- a/epmet-module/open-data-worker/open-data-worker-server/src/main/java/com/epmet/opendata/entity/BaseGridDailyworkEntity.java
+++ b/epmet-module/open-data-worker/open-data-worker-server/src/main/java/com/epmet/opendata/entity/BaseGridDailyworkEntity.java
@@ -103,12 +103,12 @@ public class BaseGridDailyworkEntity implements Serializable {
/**
* 重点人员是否在当地-当事件类型为【特殊人群服务与管理】时必填
*/
- private String isKeyPeopleLocate;
+ private String isKeypeopleLocate;
/**
* 重点人员现状
*/
- private String keyPeopleStatus;
+ private String keypeopleStatus;
/**
* 发生地
diff --git a/epmet-module/open-data-worker/open-data-worker-server/src/main/java/com/epmet/opendata/service/impl/BaseGridDailyworkServiceImpl.java b/epmet-module/open-data-worker/open-data-worker-server/src/main/java/com/epmet/opendata/service/impl/BaseGridDailyworkServiceImpl.java
index b435a3ccc8..6363a7314a 100644
--- a/epmet-module/open-data-worker/open-data-worker-server/src/main/java/com/epmet/opendata/service/impl/BaseGridDailyworkServiceImpl.java
+++ b/epmet-module/open-data-worker/open-data-worker-server/src/main/java/com/epmet/opendata/service/impl/BaseGridDailyworkServiceImpl.java
@@ -152,10 +152,10 @@ public class BaseGridDailyworkServiceImpl extends BaseServiceImpl
-
-
+
+
diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/GridUserWorkEntity.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/GridUserWorkEntity.java
deleted file mode 100644
index 0167079052..0000000000
--- a/epmet-user/epmet-user-server/src/main/java/com/epmet/entity/GridUserWorkEntity.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/**
- * Copyright 2018 人人开源 https://www.renren.io
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see .
- */
-
-package com.epmet.entity;
-
-import com.baomidou.mybatisplus.annotation.TableName;
-
-import com.epmet.commons.mybatis.entity.BaseEpmetEntity;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-import java.util.Date;
-
-/**
- * 网格员例行工作
- *
- * @author generator generator@elink-cn.com
- * @since v1.0.0 2021-10-19
- */
-@Data
-@EqualsAndHashCode(callSuper=false)
-@TableName("patrol_routine_work")
-public class GridUserWorkEntity extends BaseEpmetEntity {
-
- private static final long serialVersionUID = 1L;
-
- /**
- * 客户ID
- */
- private String customerId;
-
- /**
- * 网格ID
- */
- private String gridId;
-
- /**
- * gridId的PID
- */
- private String pids;
-
- /**
- * 用户Id user.id 谁创建的
- */
- private String userId;
-
- /**
- * 事项名称
- */
- private String title;
-
- /**
- * 发生日期 格式为“YYYY-MM-DD”
- */
- private Date happenTime;
-
- /**
- * 有无变动(异常)1:是、0:否
- */
- private Integer isNormal;
-
- /**
- * 备注说明
- */
- private String workContent;
-
- /**
- * 经度
- */
- private String longitude;
- /**
- * 纬度
- */
- private String latitude;
-
-}