From c43a8f8e7eb096e481631015eff12301bb000a88 Mon Sep 17 00:00:00 2001 From: songyunpeng Date: Fri, 23 Jul 2021 10:14:45 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=AF=E5=88=86=E6=B8=85=E9=9B=B6=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../commons/tools/enums/BehaviorEnum.java | 7 +++- .../mapper/screen/ScreenPublicDataDao.xml | 8 ++-- .../epdc-points/epdc-points-client/pom.xml | 5 +++ .../epdc/controller/PointsLogsController.java | 17 +++++++-- .../esua/epdc/service/PointsLogsService.java | 13 +++++-- .../service/impl/PointsLogsServiceImpl.java | 38 ++++++++++++++++++- .../dto/epdc/form/PointsResetFormDTO.java | 23 +++++++++++ .../esua/epdc/feign/PointsFeignClient.java | 14 ++++++- .../fallback/PointsFeignClientFallback.java | 8 ++++ .../epdc/service/impl/UserServiceImpl.java | 12 +++++- .../src/main/resources/mapper/UserDao.xml | 2 +- 11 files changed, 127 insertions(+), 20 deletions(-) create mode 100644 esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/epdc/form/PointsResetFormDTO.java diff --git a/esua-epdc/epdc-commons/epdc-commons-tools/src/main/java/com/elink/esua/epdc/commons/tools/enums/BehaviorEnum.java b/esua-epdc/epdc-commons/epdc-commons-tools/src/main/java/com/elink/esua/epdc/commons/tools/enums/BehaviorEnum.java index 0e8a49cc..77e036b8 100644 --- a/esua-epdc/epdc-commons/epdc-commons-tools/src/main/java/com/elink/esua/epdc/commons/tools/enums/BehaviorEnum.java +++ b/esua-epdc/epdc-commons/epdc-commons-tools/src/main/java/com/elink/esua/epdc/commons/tools/enums/BehaviorEnum.java @@ -315,7 +315,12 @@ public enum BehaviorEnum { /** * 话题违规,积分扣除 */ - TOPIC_VIOLATIONS("topic_violations"); + TOPIC_VIOLATIONS("topic_violations"), + + /** + * 积分清零 + */ + POINTS_RESET("points_reset"); private String value; diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/screen/ScreenPublicDataDao.xml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/screen/ScreenPublicDataDao.xml index df22cbf0..2399a050 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/screen/ScreenPublicDataDao.xml +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/screen/ScreenPublicDataDao.xml @@ -1122,9 +1122,9 @@ UNION ALL PARTY_GOOD_TIMES) as publishIssueTotal, 0 as topicTotal, 0 as publishTopicTotal, - sum(USER_TOITEM_TIMES+PARTY_TOITEM_TIMES) as shiftProjectTotal, + sum(PARTY_TOITEM_TIMES) as shiftProjectTotal, sum(PARTY_TOITEM_TIMES) as publishShiftProjectTotal, - sum(USER_FINISH_TIMES+PARTY_FINISH_TIMES) as resolvedProjectTotal, + sum(PARTY_FINISH_TIMES) as resolvedProjectTotal, sum(PARTY_FINISH_TIMES) as publishResolvedProjectTotal from esua_epdc_analysis.epdc_dept_event_person_time ed where GRID_ID is not null @@ -1225,9 +1225,9 @@ union all PARTY_GOOD_TIMES) as publishIssueTotal, 0 as topicTotal, 0 as publishTopicTotal, - sum(USER_TOITEM_TIMES+PARTY_TOITEM_TIMES) as shiftProjectTotal, + sum(PARTY_TOITEM_TIMES) as shiftProjectTotal, sum(PARTY_TOITEM_TIMES) as publishShiftProjectTotal, - sum(USER_FINISH_TIMES+PARTY_FINISH_TIMES) as resolvedProjectTotal, + sum(PARTY_FINISH_TIMES) as resolvedProjectTotal, sum(PARTY_FINISH_TIMES) as publishResolvedProjectTotal from esua_epdc_analysis.epdc_dept_event_person_time ed where GRID_ID is not null diff --git a/esua-epdc/epdc-module/epdc-points/epdc-points-client/pom.xml b/esua-epdc/epdc-module/epdc-points/epdc-points-client/pom.xml index 790ac069..3a601461 100644 --- a/esua-epdc/epdc-module/epdc-points/epdc-points-client/pom.xml +++ b/esua-epdc/epdc-module/epdc-points/epdc-points-client/pom.xml @@ -23,6 +23,11 @@ epdc-api-client 1.0.0 + + com.esua.epdc + epdc-user-client + 1.0.0 + diff --git a/esua-epdc/epdc-module/epdc-points/epdc-points-server/src/main/java/com/elink/esua/epdc/controller/PointsLogsController.java b/esua-epdc/epdc-module/epdc-points/epdc-points-server/src/main/java/com/elink/esua/epdc/controller/PointsLogsController.java index f61ae76f..a2586c95 100755 --- a/esua-epdc/epdc-module/epdc-points/epdc-points-server/src/main/java/com/elink/esua/epdc/controller/PointsLogsController.java +++ b/esua-epdc/epdc-module/epdc-points/epdc-points-server/src/main/java/com/elink/esua/epdc/controller/PointsLogsController.java @@ -25,10 +25,7 @@ import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils; import com.elink.esua.epdc.commons.tools.validator.group.AddGroup; import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup; import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup; -import com.elink.esua.epdc.dto.EpdcAdjustUserPointsDTO; -import com.elink.esua.epdc.dto.PointsLogsBindUnIdDTO; -import com.elink.esua.epdc.dto.PointsLogsDTO; -import com.elink.esua.epdc.dto.UserPointResultDTO; +import com.elink.esua.epdc.dto.*; import com.elink.esua.epdc.dto.epdc.result.EpdcAdjustVolunteerPointsDTO; import com.elink.esua.epdc.dto.result.PointsStatisticsListResultDTO; import com.elink.esua.epdc.excel.PointsLogsExcel; @@ -193,4 +190,16 @@ public class PointsLogsController { return pointsLogsService.deletePointsByTopic(idList); } + /** + * @Description 新增用户清零积分记录 + * @Author songyunpeng + * @Date 2021/7/15 + * @Param [idList] + * @return com.elink.esua.epdc.commons.tools.utils.Result + **/ + @PostMapping("insertPointsResetLogs") + public Result insertPointsResetLogs(@RequestBody List formDTO) { + return pointsLogsService.insertPointsResetLogs(formDTO); + } + } diff --git a/esua-epdc/epdc-module/epdc-points/epdc-points-server/src/main/java/com/elink/esua/epdc/service/PointsLogsService.java b/esua-epdc/epdc-module/epdc-points/epdc-points-server/src/main/java/com/elink/esua/epdc/service/PointsLogsService.java index 05e6a16a..c2679bf1 100755 --- a/esua-epdc/epdc-module/epdc-points/epdc-points-server/src/main/java/com/elink/esua/epdc/service/PointsLogsService.java +++ b/esua-epdc/epdc-module/epdc-points/epdc-points-server/src/main/java/com/elink/esua/epdc/service/PointsLogsService.java @@ -20,10 +20,7 @@ package com.elink.esua.epdc.service; import com.elink.esua.epdc.commons.mybatis.service.BaseService; import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.utils.Result; -import com.elink.esua.epdc.dto.EpdcAdjustUserPointsDTO; -import com.elink.esua.epdc.dto.PointsLogsBindUnIdDTO; -import com.elink.esua.epdc.dto.PointsLogsDTO; -import com.elink.esua.epdc.dto.UserPointResultDTO; +import com.elink.esua.epdc.dto.*; import com.elink.esua.epdc.dto.epdc.result.EpdcAdjustVolunteerPointsDTO; import com.elink.esua.epdc.dto.form.*; import com.elink.esua.epdc.dto.result.*; @@ -253,4 +250,12 @@ public interface PointsLogsService extends BaseService { * @return com.elink.esua.epdc.commons.tools.utils.Result **/ Result deletePointsByTopic(List idList); + /** + * @Description 新增用户清零积分记录 + * @Author songyunpeng + * @Date 2021/7/23 + * @Param [form] + * @return com.elink.esua.epdc.commons.tools.utils.Result + **/ + Result insertPointsResetLogs(List formDTO); } diff --git a/esua-epdc/epdc-module/epdc-points/epdc-points-server/src/main/java/com/elink/esua/epdc/service/impl/PointsLogsServiceImpl.java b/esua-epdc/epdc-module/epdc-points/epdc-points-server/src/main/java/com/elink/esua/epdc/service/impl/PointsLogsServiceImpl.java index 1b815ac6..25ad6757 100755 --- a/esua-epdc/epdc-module/epdc-points/epdc-points-server/src/main/java/com/elink/esua/epdc/service/impl/PointsLogsServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-points/epdc-points-server/src/main/java/com/elink/esua/epdc/service/impl/PointsLogsServiceImpl.java @@ -591,6 +591,40 @@ public class PointsLogsServiceImpl extends BaseServiceImpl formDTO) { + for (UserDTO formDto : formDTO) { + //根据动作编码获取动作信息 + Result behaviorCodeInfoByBehaviorCode = pointsBehaviorService.getBehaviorCodeInfoByBehaviorCode(BehaviorEnum.POINTS_RESET.getValue()); + PointsLogsEntity pointsLogsEntity = new PointsLogsEntity(); + pointsLogsEntity.setUserId(formDto.getId()); + pointsLogsEntity.setNickname(formDto.getNickname()); + pointsLogsEntity.setFaceImg(formDto.getFaceImg()); + pointsLogsEntity.setOperationTime(new Date()); + pointsLogsEntity.setOperationMode(PointsOperationModeEnum.OPERATION_MODE_ADMIN.getOperationMode()); + pointsLogsEntity.setRuleCode(PointsConstant.behaviorCodeCode); + pointsLogsEntity.setBehaviorCode(BehaviorEnum.TOPIC_VIOLATIONS.getValue()); + pointsLogsEntity.setOperationDesc(behaviorCodeInfoByBehaviorCode.getData().getBehaviorDesc()); + pointsLogsEntity.setPoints(formDto.getPoints()); + pointsLogsEntity.setOperationType("0"); + pointsLogsEntity.setReferenceId(formDto.getId()); + pointsLogsEntity.setLavePoints(0); + pointsLogsEntity.setRemark(""); + pointsLogsEntity.setRealName(formDto.getRealName()); + // 赋值积分所属部门 + pointsLogsEntity.setGrid(formDto.getGrid()); + pointsLogsEntity.setGridId(formDto.getGridId()); + pointsLogsEntity.setAllDeptIds(formDto.getAllDeptIds()); + pointsLogsEntity.setAllDeptNames(formDto.getAllDeptNames()); + pointsLogsEntity.setParentDeptIds(formDto.getParentDeptIds()); + pointsLogsEntity.setParentDeptNames(formDto.getParentDeptNames()); + + insert(pointsLogsEntity); + } + return new Result(); + } + /** * @Description 新增扣除积分记录 * @Author songyunpeng @@ -616,10 +650,10 @@ public class PointsLogsServiceImpl extends BaseServiceImpl formDTO); } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/feign/fallback/PointsFeignClientFallback.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/feign/fallback/PointsFeignClientFallback.java index 810a32dd..404108aa 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/feign/fallback/PointsFeignClientFallback.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/feign/fallback/PointsFeignClientFallback.java @@ -4,9 +4,12 @@ import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; import com.elink.esua.epdc.commons.tools.utils.ModuleUtils; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.PointsLogsBindUnIdDTO; +import com.elink.esua.epdc.dto.UserDTO; import com.elink.esua.epdc.feign.PointsFeignClient; import org.springframework.stereotype.Component; +import java.util.List; + /** * @author work@yujt.net.cn * @date 2019/9/18 15:38 @@ -18,4 +21,9 @@ public class PointsFeignClientFallback implements PointsFeignClient { public Result maBindUnIdLogs(PointsLogsBindUnIdDTO formDto) { return ModuleUtils.feignConError(ServiceConstant.EPDC_POINTS_SERVER, "maBindUnIdLogs", formDto); } + + @Override + public Result insertPointsResetLogs(List formDTO) { + return ModuleUtils.feignConError(ServiceConstant.EPDC_POINTS_SERVER, "insertPointsResetLogs", formDTO); + } } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java index edb0184e..1809d62d 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java @@ -1556,8 +1556,16 @@ public class UserServiceImpl extends BaseServiceImpl implem public Result resetPoints() { //先备份积分数据 baseDao.insertUserPointsTemp(); - //重置积分 - baseDao.resetPoints(); + //查询需要清零的用户 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.gt("POINTS",0); + List userEntities = baseDao.selectList(queryWrapper); + //插入到积分日志表 - 新增积分清零记录 + Result result = pointsFeignClient.insertPointsResetLogs(ConvertUtils.sourceToTarget(userEntities, UserDTO.class)); + if(result.success()){ + //重置积分 + baseDao.resetPoints(); + } return new Result(); } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml index 5d236b13..71b09540 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml @@ -14,7 +14,7 @@ where ID = #{userId} - update epdc_user set points = 0 where DEL_FLAG = '0' and UPDATED_TIME = now() + update epdc_user set points = 0,UPDATED_TIME = now() where DEL_FLAG = '0' and points > 0 update epdc_user