|
|
@ -20,22 +20,25 @@ package com.elink.esua.epdc.modules.activity.service.impl; |
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
|
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl; |
|
|
|
import com.elink.esua.epdc.commons.tools.constant.FieldConstant; |
|
|
|
import com.elink.esua.epdc.commons.tools.constant.NumConstant; |
|
|
|
import com.elink.esua.epdc.commons.tools.page.PageData; |
|
|
|
import com.elink.esua.epdc.commons.tools.utils.ConvertUtils; |
|
|
|
import com.elink.esua.epdc.commons.tools.constant.FieldConstant; |
|
|
|
import com.elink.esua.epdc.dto.activity.ActivityInfoDTO; |
|
|
|
import com.elink.esua.epdc.modules.activity.dao.ActivityParticipantDao; |
|
|
|
import com.elink.esua.epdc.dto.UserDTO; |
|
|
|
import com.elink.esua.epdc.dto.activity.ActivityParticipantDTO; |
|
|
|
import com.elink.esua.epdc.modules.activity.entity.ActivityInfoEntity; |
|
|
|
import com.elink.esua.epdc.dto.activity.form.ActivityParticipantFormDTO; |
|
|
|
import com.elink.esua.epdc.modules.activity.dao.ActivityParticipantDao; |
|
|
|
import com.elink.esua.epdc.modules.activity.entity.ActivityParticipantEntity; |
|
|
|
import com.elink.esua.epdc.modules.activity.redis.ActivityParticipantRedis; |
|
|
|
import com.elink.esua.epdc.modules.activity.service.ActivityParticipantService; |
|
|
|
import com.elink.esua.epdc.modules.feign.UserFeignClient; |
|
|
|
import org.apache.commons.lang3.StringUtils; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
|
|
|
|
|
import java.util.Arrays; |
|
|
|
import java.util.Calendar; |
|
|
|
import java.util.List; |
|
|
|
import java.util.Map; |
|
|
|
|
|
|
@ -51,6 +54,9 @@ public class ActivityParticipantServiceImpl extends BaseServiceImpl<ActivityPart |
|
|
|
@Autowired |
|
|
|
private ActivityParticipantRedis activityParticipantRedis; |
|
|
|
|
|
|
|
@Autowired |
|
|
|
private UserFeignClient userFeignClient; |
|
|
|
|
|
|
|
@Override |
|
|
|
public PageData<ActivityParticipantDTO> page(Map<String, Object> params) { |
|
|
|
IPage<ActivityParticipantEntity> page = getPage(params); |
|
|
@ -88,6 +94,17 @@ public class ActivityParticipantServiceImpl extends BaseServiceImpl<ActivityPart |
|
|
|
insert(entity); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
public void signUp(ActivityParticipantFormDTO dto) { |
|
|
|
ActivityParticipantEntity entity = ConvertUtils.sourceToTarget(dto, ActivityParticipantEntity.class); |
|
|
|
UserDTO userDto = userFeignClient.getUserInfoById(dto.getUserId()).getData(); |
|
|
|
entity.setPartyFlag(userDto.getPartyFlag()); |
|
|
|
entity.setIdentityNo(userDto.getIdentityNo()); |
|
|
|
entity.setAge(getAge(userDto.getIdentityNo())); |
|
|
|
insert(entity); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
public void update(ActivityParticipantDTO dto) { |
|
|
@ -102,4 +119,15 @@ public class ActivityParticipantServiceImpl extends BaseServiceImpl<ActivityPart |
|
|
|
baseDao.deleteBatchIds(Arrays.asList(ids)); |
|
|
|
} |
|
|
|
|
|
|
|
private Integer getAge(String identityNo) { |
|
|
|
// 身份证只有15或18位
|
|
|
|
if (identityNo.length() != NumConstant.EIGHTEEN && identityNo.length() != NumConstant.FIFTEEN) { |
|
|
|
return 0; |
|
|
|
} |
|
|
|
// 默认身份证是正确的,粗略计算
|
|
|
|
Calendar cal = Calendar.getInstance(); |
|
|
|
int yearNow = cal.get(Calendar.YEAR); |
|
|
|
int year = Integer.parseInt(identityNo.substring(6, 10)); |
|
|
|
return yearNow - year; |
|
|
|
} |
|
|
|
} |