Browse Source

积分埋点,日志表,追加保存网格相关字段

master
zhangyongzhangyong 4 years ago
parent
commit
3f73a704f7
  1. 29
      epdc-cloud-points/src/main/java/com/elink/esua/epdc/entity/PointsLogsEntity.java
  2. 40
      epdc-cloud-points/src/main/java/com/elink/esua/epdc/feign/AdminFeignClient.java
  3. 10
      epdc-cloud-points/src/main/java/com/elink/esua/epdc/feign/UsersFeignClient.java
  4. 26
      epdc-cloud-points/src/main/java/com/elink/esua/epdc/feign/fallback/AdminFeignClientFallback.java
  5. 5
      epdc-cloud-points/src/main/java/com/elink/esua/epdc/feign/fallback/UsersFeignClientFallback.java
  6. 32
      epdc-cloud-points/src/main/java/com/elink/esua/epdc/mq/PointsModifyConsumer.java
  7. 5
      epdc-cloud-points/src/main/java/com/elink/esua/epdc/mq/dto/BehaviorDto.java

29
epdc-cloud-points/src/main/java/com/elink/esua/epdc/entity/PointsLogsEntity.java

@ -104,4 +104,33 @@ public class PointsLogsEntity extends BaseEpdcEntity {
*/
private String volunteerId;
/**
* 网格
*/
private String grid;
/**
* 网格ID
*/
private Long gridId;
/**
* 父所有部门ID
*/
private String parentDeptIds;
/**
* 父所有部门
*/
private String parentDeptNames;
/**
* 所有部门ID
*/
private String allDeptIds;
/**
* 所有部门
*/
private String allDeptNames;
}

40
epdc-cloud-points/src/main/java/com/elink/esua/epdc/feign/AdminFeignClient.java

@ -0,0 +1,40 @@
package com.elink.esua.epdc.feign;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.ParentAndAllDeptDTO;
import com.elink.esua.epdc.feign.fallback.AdminFeignClientFallback;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
/**
* @author zhangyong
* @date 18:40 2020-05-19
*/
@FeignClient(name = ServiceConstant.EPDC_ADMIN_SERVER, fallback = AdminFeignClientFallback.class)
public interface AdminFeignClient {
/**
* 根据部门ID获取所有上级机构名称和ID拼接
*
* @param deptId
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.CompleteDeptDTO>
* @author lipengfei
* @date 2019/11/27 09:31
*/
@GetMapping("sys/dept/getParentAndAllDept/{deptId}")
Result<ParentAndAllDeptDTO> getParentAndAllDept(@PathVariable("deptId") Long deptId);
/**
* 根据部门id获取所有上级部门id英文逗号隔开拼接字符串
*
* @param deptId
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.lang.String>
* @author work@yujt.net.cn
* @date 2019/11/27 15:07
*/
@GetMapping("sys/dept/getParentDeptIds/{deptId}")
Result<String> getParentDeptIds(@PathVariable("deptId") Long deptId);
}

10
epdc-cloud-points/src/main/java/com/elink/esua/epdc/feign/UsersFeignClient.java

@ -57,5 +57,15 @@ public interface UsersFeignClient {
**/
@GetMapping(value = "app-user/usergrid/getUserLastSwitchGird/{userId}", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<UserGridRelationDTO> getUserLastSwitchGird(@PathVariable("userId") String userId);
/**
* @Description 获取用户第一次扫码网格的信息
* @Author zy
* @Date 2020/6/2
* @Param [userId]
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.UserGridRelationDTO>
**/
@GetMapping(value = "app-user/usergrid/getUserFirstScanGird/{userId}", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<UserGridRelationDTO> getUserFirstScanGird(@PathVariable("userId") String userId);
}

26
epdc-cloud-points/src/main/java/com/elink/esua/epdc/feign/fallback/AdminFeignClientFallback.java

@ -0,0 +1,26 @@
package com.elink.esua.epdc.feign.fallback;
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.ParentAndAllDeptDTO;
import com.elink.esua.epdc.feign.AdminFeignClient;
import org.springframework.stereotype.Component;
/**
* @author zhangyong
* @date 18:40 2020-05-19
*/
@Component
public class AdminFeignClientFallback implements AdminFeignClient {
@Override
public Result<ParentAndAllDeptDTO> getParentAndAllDept(Long deptId) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_ADMIN_SERVER, "getParentAndAllDept", deptId);
}
@Override
public Result<String> getParentDeptIds(Long deptId) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_ADMIN_SERVER, "getParentDeptIds", deptId);
}
}

5
epdc-cloud-points/src/main/java/com/elink/esua/epdc/feign/fallback/UsersFeignClientFallback.java

@ -35,4 +35,9 @@ public class UsersFeignClientFallback implements UsersFeignClient {
public Result<UserGridRelationDTO> getUserLastSwitchGird(String userId) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "getUserLastSwitchGird", userId);
}
@Override
public Result<UserGridRelationDTO> getUserFirstScanGird(String userId) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "getUserFirstScanGird", userId);
}
}

32
epdc-cloud-points/src/main/java/com/elink/esua/epdc/mq/PointsModifyConsumer.java

@ -6,6 +6,7 @@ import com.elink.esua.epdc.common.token.util.CpUserDetailRedis;
import com.elink.esua.epdc.commons.tools.constant.RocketMqConstant;
import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.ParentAndAllDeptDTO;
import com.elink.esua.epdc.dto.UserDTO;
import com.elink.esua.epdc.dto.UserGridRelationDTO;
import com.elink.esua.epdc.dto.form.PointsLogsAddFormDTO;
@ -13,6 +14,7 @@ import com.elink.esua.epdc.dto.form.PointsLogsFormDTO;
import com.elink.esua.epdc.dto.result.PointsLogsResultDTO;
import com.elink.esua.epdc.dto.result.PointsRuleResultDTO;
import com.elink.esua.epdc.entity.PointsLogsEntity;
import com.elink.esua.epdc.feign.AdminFeignClient;
import com.elink.esua.epdc.feign.UsersFeignClient;
import com.elink.esua.epdc.jwt.JwtTokenProperties;
import com.elink.esua.epdc.mq.dto.BehaviorDto;
@ -52,6 +54,8 @@ public class PointsModifyConsumer implements RocketMQListener<MessageExt> {
@Autowired
private JwtTokenProperties jwtTokenProperties;
@Autowired
private AdminFeignClient adminFeignClient;
/**
* 操作类型 加分
@ -190,6 +194,34 @@ public class PointsModifyConsumer implements RocketMQListener<MessageExt> {
pointsLogsAddFormDTO.setOperationDesc(pointsRuleResultDTO.getRuleDesc());
pointsLogsAddFormDTO.setOperationTime(dto.getOperationTime());
pointsLogsAddFormDTO.setOperationMode("user");
if (dto.getGridId() != null) {
if (0L == dto.getGridId()) {
//用户网格ID为空,获取第一次扫码网格
Result<UserGridRelationDTO> userFirstScanGird = usersFeignClient.getUserFirstScanGird(dto.getUserId());
if (userFirstScanGird != null && userFirstScanGird.getData() != null) {
UserGridRelationDTO userGridRelationDTO = new UserGridRelationDTO();
pointsLogsAddFormDTO.setGridId(userGridRelationDTO.getGridId());
pointsLogsAddFormDTO.setGrid(userGridRelationDTO.getGrid());
pointsLogsAddFormDTO.setAllDeptIds(userGridRelationDTO.getAllDeptIds());
pointsLogsAddFormDTO.setAllDeptNames(userGridRelationDTO.getAllDeptNames());
pointsLogsAddFormDTO.setParentDeptIds(userGridRelationDTO.getParentDeptIds());
pointsLogsAddFormDTO.setParentDeptNames(userGridRelationDTO.getParentDeptNames());
}
} else {
Result<ParentAndAllDeptDTO> parentAndAllDept = adminFeignClient.getParentAndAllDept(dto.getGridId());
if (parentAndAllDept != null || parentAndAllDept.getData() != null) {
ParentAndAllDeptDTO parentAndAllDeptDTO = parentAndAllDept.getData();
pointsLogsAddFormDTO.setGridId(parentAndAllDeptDTO.getGridId());
pointsLogsAddFormDTO.setGrid(parentAndAllDeptDTO.getGrid());
pointsLogsAddFormDTO.setAllDeptIds(parentAndAllDeptDTO.getAllDeptIds());
pointsLogsAddFormDTO.setAllDeptNames(parentAndAllDeptDTO.getAllDeptNames());
pointsLogsAddFormDTO.setParentDeptIds(parentAndAllDeptDTO.getParentDeptIds());
pointsLogsAddFormDTO.setParentDeptNames(parentAndAllDeptDTO.getParentDeptNames());
}
}
}
pointsLogsAddFormDTO.setLavePoints(userDTO.getPoints());
PointsLogsEntity pointsLogsEntity = ConvertUtils.sourceToTarget(pointsLogsAddFormDTO, PointsLogsEntity.class);
pointsLogsService.insert(pointsLogsEntity);

5
epdc-cloud-points/src/main/java/com/elink/esua/epdc/mq/dto/BehaviorDto.java

@ -37,6 +37,11 @@ public class BehaviorDto implements Serializable {
*/
private String userId;
/**
* 网格ID
*/
private Long gridId;
/**
* 其他标识
*/

Loading…
Cancel
Save