Browse Source

Merge remote-tracking branch 'origin/feature/syp_PointsReset'

feature/screenDataPush
songyunpeng 5 years ago
parent
commit
9eb90069ac
  1. 10
      esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java
  2. 5
      esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClientFallback.java
  3. 32
      esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/task/user/ScreenUserPointsResetTask.java
  4. 19
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/UserController.java
  5. 16
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/UserDao.java
  6. 8
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/UserService.java
  7. 9
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java
  8. 13
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml

10
esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java

@ -44,5 +44,15 @@ public interface UserFeignClient {
*/ */
@PostMapping("app-user/epdc-app/user/updateUserInfo") @PostMapping("app-user/epdc-app/user/updateUserInfo")
Result updateUserInfo(UserDTO userDTO); Result updateUserInfo(UserDTO userDTO);
/**
* 重置积分
*
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @params [userDTO]
* @author syp
* @since 2019/10/25 17:07
*/
@PostMapping("app-user/user/resetPoints")
Result resetPoints();
} }

5
esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClientFallback.java

@ -34,4 +34,9 @@ public class UserFeignClientFallback implements UserFeignClient {
public Result updateUserInfo(UserDTO userDTO) { public Result updateUserInfo(UserDTO userDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "updateUserInfo", userDTO); return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "updateUserInfo", userDTO);
} }
@Override
public Result resetPoints() {
return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "resetPoints");
}
} }

32
esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/task/user/ScreenUserPointsResetTask.java

@ -0,0 +1,32 @@
package com.elink.esua.epdc.task.user;
import com.elink.esua.epdc.feign.UserFeignClient;
import com.elink.esua.epdc.task.ITask;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* 用户积分重置模块
*
* @Authorliuchuang
* @Date2020/9/9 15:20
*/
@Component("screenUserPointsResetTask")
public class ScreenUserPointsResetTask implements ITask {
private final Logger logger = LoggerFactory.getLogger(getClass());
@Autowired
private UserFeignClient userFeignClient;
@Override
public void run(String param) {
// 方法名
String methodName = Thread.currentThread().getStackTrace()[2].getMethodName();
logger.info("<" + methodName + "|用户积分季度重置>定时任务开始");
userFeignClient.resetPoints();
logger.info("<" + methodName + "|用户积分季度重置>定时任务结束");
}
}

19
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/UserController.java

@ -338,7 +338,7 @@ public class UserController {
* @Param [dto] * @Param [dto]
**/ **/
@PostMapping(value = "updateUserPoints") @PostMapping(value = "updateUserPoints")
Result updateUserPoints(@RequestBody EpdcUserPointsFormDTO epdcUserPointsFormDTO){ public Result updateUserPoints(@RequestBody EpdcUserPointsFormDTO epdcUserPointsFormDTO){
return userService.updateUserPoints(epdcUserPointsFormDTO); return userService.updateUserPoints(epdcUserPointsFormDTO);
} }
@ -350,7 +350,7 @@ public class UserController {
* @Param [dto] * @Param [dto]
**/ **/
@PostMapping(value = "checkRepeatUser") @PostMapping(value = "checkRepeatUser")
Result<String> checkRepeatUser(@RequestBody CheckRepeatUserFormDTO checkRepeatUserFormDTO){ public Result<String> checkRepeatUser(@RequestBody CheckRepeatUserFormDTO checkRepeatUserFormDTO){
return userService.checkRepeatUser(checkRepeatUserFormDTO); return userService.checkRepeatUser(checkRepeatUserFormDTO);
} }
/** /**
@ -361,11 +361,20 @@ public class UserController {
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.lang.String> * @return com.elink.esua.epdc.commons.tools.utils.Result<java.lang.String>
**/ **/
@PostMapping(value = "combineVolunteerUser") @PostMapping(value = "combineVolunteerUser")
Result<UserDTO> combineVolunteerUser(@RequestBody CombineVolunteerUserFormDTO formDTO){ public Result<UserDTO> combineVolunteerUser(@RequestBody CombineVolunteerUserFormDTO formDTO){
return userService.combineVolunteerUser(formDTO); return userService.combineVolunteerUser(formDTO);
} }
/**
* @Description 季度重置用户可兑换积分
* @Author songyunpeng
* @Date 2021/4/19
* @Param []
* @return com.elink.esua.epdc.commons.tools.utils.Result
**/
@PostMapping("resetPoints")
public Result resetPoints(){
return userService.resetPoints();
}
} }

16
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/UserDao.java

@ -305,4 +305,20 @@ public interface UserDao extends BaseDao<UserEntity> {
* @return java.lang.Long * @return java.lang.Long
**/ **/
Long getUserGridIdByUserId(String userId); Long getUserGridIdByUserId(String userId);
/**
* @Description 备份积分数据
* @Author songyunpeng
* @Date 2021/4/19
* @Param []
* @return void
**/
void insertUserPointsTemp();
/**
* @Description 重置积分
* @Author songyunpeng
* @Date 2021/4/19
* @Param []
* @return void
**/
void resetPoints();
} }

8
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/UserService.java

@ -433,4 +433,12 @@ public interface UserService extends BaseService<UserEntity> {
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.lang.String> * @return com.elink.esua.epdc.commons.tools.utils.Result<java.lang.String>
**/ **/
Result<UserDTO> combineVolunteerUser(CombineVolunteerUserFormDTO formDTO); Result<UserDTO> combineVolunteerUser(CombineVolunteerUserFormDTO formDTO);
/**
* @Description 季度重置积分 - 定时任务使用
* @Author songyunpeng
* @Date 2021/4/19
* @Param []
* @return com.elink.esua.epdc.commons.tools.utils.Result
**/
Result resetPoints();
} }

9
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java

@ -1542,4 +1542,13 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem
} }
return new Result<>(); return new Result<>();
} }
@Override
public Result resetPoints() {
//先备份积分数据
baseDao.insertUserPointsTemp();
//重置积分
baseDao.resetPoints();
return new Result();
}
} }

13
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml

@ -2,6 +2,10 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.elink.esua.epdc.dao.UserDao"> <mapper namespace="com.elink.esua.epdc.dao.UserDao">
<insert id="insertUserPointsTemp">
insert into epdc_user_points_temp(ID,POINTS,CREATED_TIME)
select ID,POINTS,now() from epdc_user where DEL_FLAG = '0'
</insert>
<update id="updateUserPoints"> <update id="updateUserPoints">
update epdc_user set POINTS = POINTS + #{points} update epdc_user set POINTS = POINTS + #{points}
<if test="points &gt; 0"> <if test="points &gt; 0">
@ -9,6 +13,9 @@
</if> </if>
where ID = #{userId} where ID = #{userId}
</update> </update>
<update id="resetPoints">
update epdc_user set points = 0 where DEL_FLAG = '0'
</update>
<delete id="deleteAuditFailureByOpenId"> <delete id="deleteAuditFailureByOpenId">
DELETE FROM epdc_user WHERE WX_OPEN_ID = #{wxOpenId} AND STATE = '2' DELETE FROM epdc_user WHERE WX_OPEN_ID = #{wxOpenId} AND STATE = '2'
@ -571,7 +578,7 @@
SELECT SELECT
(@i:=@i+1) rank, (@i:=@i+1) rank,
u.ID userId, u.ID userId,
IFNULL(u.POINTS, 0) points, IFNULL(u.POINTS_TOTLE, 0) points,
GROUP_CONCAT(u.ID SEPARATOR ',') tjid GROUP_CONCAT(u.ID SEPARATOR ',') tjid
FROM FROM
epdc_user u ,(select @i:=0) t1 epdc_user u ,(select @i:=0) t1
@ -583,8 +590,8 @@
#{userId} #{userId}
</foreach> </foreach>
</if> </if>
GROUP BY IFNULL(u.POINTS, 0) GROUP BY IFNULL(u.POINTS_TOTLE, 0)
ORDER BY IFNULL(u.POINTS, 0) DESC ORDER BY IFNULL(u.POINTS_TOTLE, 0) DESC
) userRanking ) userRanking
WHERE instr(userRanking.tjid , #{userId}) > 0 WHERE instr(userRanking.tjid , #{userId}) > 0
</select> </select>

Loading…
Cancel
Save