Browse Source

社区讲坛 - 居民端  - 活动报名 接口业务

hotfix/yujt_opt
zhangyuan 5 years ago
parent
commit
63c2bfc5ad
  1. 2
      epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/activity/controller/ActivityInfoController.java
  2. 2
      epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/activity/controller/ActivityParticipantController.java
  3. 12
      epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/activity/controller/AppActivityInfoController.java
  4. 11
      epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/activity/service/ActivityParticipantService.java
  5. 40
      epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/activity/service/impl/ActivityParticipantServiceImpl.java

2
epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/activity/controller/ActivityInfoController.java

@ -23,8 +23,8 @@ import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.AssertUtils;
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.UpdateGroup;
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.activity.ActivityInfoDTO;
import com.elink.esua.epdc.modules.activity.excel.ActivityInfoExcel;
import com.elink.esua.epdc.modules.activity.service.ActivityInfoService;

2
epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/activity/controller/ActivityParticipantController.java

@ -23,8 +23,8 @@ import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.AssertUtils;
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.UpdateGroup;
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.activity.ActivityParticipantDTO;
import com.elink.esua.epdc.modules.activity.excel.ActivityParticipantExcel;
import com.elink.esua.epdc.modules.activity.service.ActivityParticipantService;

12
epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/activity/controller/AppActivityInfoController.java

@ -22,12 +22,13 @@ import com.elink.esua.epdc.commons.tools.utils.Result;
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.dto.activity.ActivityInfoDTO;
import com.elink.esua.epdc.dto.activity.form.ActivityDetailFormDTO;
import com.elink.esua.epdc.dto.activity.form.ActivityInfoFormDTO;
import com.elink.esua.epdc.dto.activity.form.ActivityParticipantFormDTO;
import com.elink.esua.epdc.dto.activity.result.ActivityDetailResultDTO;
import com.elink.esua.epdc.dto.activity.result.ActivityInfoResultDTO;
import com.elink.esua.epdc.modules.activity.service.ActivityInfoService;
import com.elink.esua.epdc.modules.activity.service.ActivityParticipantService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -47,6 +48,9 @@ public class AppActivityInfoController {
@Autowired
private ActivityInfoService activityInfoService;
@Autowired
private ActivityParticipantService activityParticipantService;
@GetMapping("listActivity")
public Result<List<ActivityInfoResultDTO>> listActivity(@RequestBody ActivityInfoFormDTO formDto) {
List<ActivityInfoResultDTO> page = activityInfoService.listActivity(formDto);
@ -59,11 +63,11 @@ public class AppActivityInfoController {
return new Result<ActivityDetailResultDTO>().ok(data);
}
@PostMapping
public Result save(@RequestBody ActivityInfoDTO dto) {
@PostMapping("singUp")
public Result save(@RequestBody ActivityParticipantFormDTO dto) {
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
activityInfoService.save(dto);
activityParticipantService.signUp(dto);
return new Result();
}

11
epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/activity/service/ActivityParticipantService.java

@ -20,6 +20,7 @@ package com.elink.esua.epdc.modules.activity.service;
import com.elink.esua.epdc.commons.mybatis.service.BaseService;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.dto.activity.ActivityParticipantDTO;
import com.elink.esua.epdc.dto.activity.form.ActivityParticipantFormDTO;
import com.elink.esua.epdc.modules.activity.entity.ActivityParticipantEntity;
import java.util.List;
@ -73,6 +74,16 @@ public interface ActivityParticipantService extends BaseService<ActivityParticip
*/
void save(ActivityParticipantDTO dto);
/**
* app报名
*
* @param dto
* @return void
* @author generator
* @date 2020-06-22
*/
void signUp(ActivityParticipantFormDTO dto);
/**
* 默认更新
*

40
epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/activity/service/impl/ActivityParticipantServiceImpl.java

@ -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);
@ -66,8 +72,8 @@ public class ActivityParticipantServiceImpl extends BaseServiceImpl<ActivityPart
return ConvertUtils.sourceToTarget(entityList, ActivityParticipantDTO.class);
}
private QueryWrapper<ActivityParticipantEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get(FieldConstant.ID_HUMP);
private QueryWrapper<ActivityParticipantEntity> getWrapper(Map<String, Object> params) {
String id = (String) params.get(FieldConstant.ID_HUMP);
QueryWrapper<ActivityParticipantEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
@ -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;
}
}
Loading…
Cancel
Save