Commit 446b6ce6 446b6ce62aba9c3e999b0df738f3b7db5eafa966 by xianghan

1.添加中奖人联系地址接口

1 parent 3f9ccd44
......@@ -4,6 +4,7 @@ import com.topdraw.business.module.contact.vis.domain.ActivityAddress;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import java.util.List;
import java.util.Optional;
/**
......@@ -12,5 +13,7 @@ import java.util.Optional;
*/
public interface ActivityAddressRepository extends JpaRepository<ActivityAddress, Long>, JpaSpecificationExecutor<ActivityAddress> {
Optional<ActivityAddress> findByPlatformAccount(String platformAccount);
List<ActivityAddress> findByPlatformAccount(String platformAccount);
Optional<ActivityAddress> findByPlatformAccountAndActivityId(String platformAccount, Long activityId);
}
......
......@@ -6,11 +6,17 @@ import com.topdraw.business.module.contact.vis.service.dto.ActivityAddressDTO;
import com.topdraw.common.ResultInfo;
import com.topdraw.business.module.contact.vis.domain.ActivityAddress;
import com.topdraw.business.module.contact.vis.service.ActivityAddressService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.Assert;
import org.springframework.util.StringUtils;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import io.swagger.annotations.*;
import java.util.List;
import java.util.Objects;
/**
* @author XiangHan
* @date 2022-04-24
......@@ -18,16 +24,35 @@ import io.swagger.annotations.*;
@Api(tags = "中奖人联系方式管理")
@RestController
@RequestMapping("/uce/activityAddress")
@Slf4j
public class ActivityAddressController {
@Autowired
private ActivityAddressService activityAddressService;
@GetMapping(value = "/findByPlatformAccountAndActivityId")
@ApiOperation("查询指定活动事件的中奖人联系方式")
@AnonymousAccess
public ResultInfo findByPlatformAccountAndActivityId(@Validated @RequestBody ActivityAddress resources) {
log.info("activityAddress ==>> findByPlatformAccountAndActivityId ==>> resources ==>> {}", resources);
String platformAccount = resources.getPlatformAccount();
if (!StringUtils.hasText(platformAccount)) {
Assert.notNull(platformAccount, "platformAccount is null");
}
Long activityId = resources.getActivityId();
if (Objects.isNull(activityId)) {
Assert.notNull(activityId, "activityId is null");
}
ActivityAddressDTO activityAddressDTO = this.activityAddressService.findByPlatformAccountAndActivityId(resources);
return ResultInfo.success(activityAddressDTO);
}
@GetMapping(value = "/findByPlatformAccount")
@ApiOperation("查询所有ActivityAddress")
@AnonymousAccess
public ResultInfo findByPlatformAccount(@RequestParam(value = "platformAccount") String platformAccount) {
ActivityAddressDTO activityAddressDTO = this.activityAddressService.findByPlatformAccount(platformAccount);
log.info("activityAddress ==>> findByPlatformAccount ==>> platformAccount ==>> {}", platformAccount);
List<ActivityAddressDTO> activityAddressDTO = this.activityAddressService.findByPlatformAccount(platformAccount);
return ResultInfo.success(activityAddressDTO);
}
......@@ -36,6 +61,23 @@ public class ActivityAddressController {
@ApiOperation("新增ActivityAddress")
@AnonymousAccess
public ResultInfo createOrUpdateActivityAddress(@Validated @RequestBody ActivityAddress resources) {
log.info("activityAddress ==>> createOrUpdateActivityAddress ==>> params ==>> {}", resources);
String platformAccount = resources.getPlatformAccount();
if (!StringUtils.hasText(platformAccount)) {
Assert.notNull(platformAccount, "platformAccount is null");
}
Long appId = resources.getAppId();
if (Objects.isNull(appId)) {
Assert.notNull(appId, "appId is null");
}
Long activityId = resources.getActivityId();
if (Objects.isNull(activityId)) {
Assert.notNull(activityId, "activityId is null");
}
Long userId = resources.getUserId();
if (Objects.isNull(userId)) {
Assert.notNull(userId, "visUserId is null");
}
ActivityAddressDTO activityAddressDTO = this.activityAddressService.createOrUpdateActivityAddress(resources);
return ResultInfo.success(activityAddressDTO);
}
......
......@@ -3,6 +3,8 @@ package com.topdraw.business.module.contact.vis.service;
import com.topdraw.business.module.contact.vis.domain.ActivityAddress;
import com.topdraw.business.module.contact.vis.service.dto.ActivityAddressDTO;
import java.util.List;
/**
* @author XiangHan
* @date 2022-04-24
......@@ -38,7 +40,7 @@ public interface ActivityAddressService {
* @param platformAccount
* @return
*/
ActivityAddressDTO findByPlatformAccount(String platformAccount);
List<ActivityAddressDTO> findByPlatformAccount(String platformAccount);
/**
*
......@@ -46,4 +48,11 @@ public interface ActivityAddressService {
* @return
*/
ActivityAddressDTO createOrUpdateActivityAddress(ActivityAddress resources);
/**
*
* @param resources
* @return
*/
ActivityAddressDTO findByPlatformAccountAndActivityId(ActivityAddress resources);
}
......
......@@ -16,6 +16,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.dao.EmptyResultDataAccessException;
import org.springframework.util.Assert;
import java.util.List;
import java.util.Objects;
/**
......@@ -34,15 +35,14 @@ public class ActivityAddressServiceImpl implements ActivityAddressService {
@Override
// @Cacheable(cacheNames = "uce::activityAddress::platformAccount", key = "#platformAccount")
public ActivityAddressDTO findByPlatformAccount(String platformAccount) {
ActivityAddress activityAddress = activityAddressRepository.findByPlatformAccount(platformAccount).orElseGet(ActivityAddress::new);
public List<ActivityAddressDTO> findByPlatformAccount(String platformAccount) {
List<ActivityAddress> activityAddress = activityAddressRepository.findByPlatformAccount(platformAccount);
return this.activityAddressMapper.toDto(activityAddress);
}
@Override
public ActivityAddressDTO createOrUpdateActivityAddress(ActivityAddress resources) {
String platformAccount = resources.getPlatformAccount();
ActivityAddressDTO activityAddressDTO = this.findByPlatformAccount(platformAccount);
ActivityAddressDTO activityAddressDTO = this.findByPlatformAccountAndActivityId(resources);
if (Objects.isNull(activityAddressDTO.getId())) {
activityAddressDTO = this.create(resources);
} else {
......@@ -54,6 +54,14 @@ public class ActivityAddressServiceImpl implements ActivityAddressService {
}
@Override
public ActivityAddressDTO findByPlatformAccountAndActivityId(ActivityAddress resources) {
String platformAccount = resources.getPlatformAccount();
Long activityId = resources.getActivityId();
ActivityAddress activityAddress = activityAddressRepository.findByPlatformAccountAndActivityId(platformAccount, activityId).orElseGet(ActivityAddress::new);
return this.activityAddressMapper.toDto(activityAddress);
}
@Override
public ActivityAddressDTO findById(Long id) {
ActivityAddress ActivityAddress = activityAddressRepository.findById(id).orElseGet(ActivityAddress::new);
ValidationUtil.isNull(ActivityAddress.getId(),"ActivityAddress","id",id);
......
package com.topdraw.business.module.task.domain;
import com.topdraw.util.DateUtil;
import com.topdraw.util.IdWorker;
import com.topdraw.util.RandomUtil;
import com.topdraw.util.TimestampUtil;
import org.apache.commons.lang3.StringUtils;
import java.util.Objects;
/**
* @author :
* @description:
* @function :
* @date :Created in 2022/4/25 16:33
* @version: :
* @modified By:
* @since : modified in 2022/4/25 16:33
*/
public class TaskBuilder {
public static Task build(Task task) {
Task task_ = new Task();
task_.setTaskTemplateId(task.getTaskTemplateId());
//task_.setName(task.getName());
//task_.setCode(StringUtils.isEmpty(task.getCode()) ? IdWorker.generatorCode("task_") : task.getCode());
task_.setStatus(Objects.isNull(task.getStatus()) ? 1 : task.getStatus());
task_.setSequence(task.getSequence());
task_.setValidTime(Objects.isNull(task.getValidTime()) ? TimestampUtil.now() : task.getValidTime());
task_.setExpireTime(task.getExpireTime());
//task_.setDescription(task.getDescription());
task_.setActionAmount(task.getActionAmount());
task_.setTaskDailyReset(Objects.isNull(task.getTaskDailyReset()) ? 1 : task.getTaskDailyReset());
task_.setTaskRepeatType(Objects.isNull(task.getTaskRepeatType()) ? 1 : task.getTaskRepeatType());
task_.setRightsSendStrategy(Objects.isNull(task.getRightsSendStrategy()) ? 1 : task.getRightsSendStrategy());
task_.setGroups(task.getGroups());
task_.setMemberLevel(task.getMemberLevel());
task_.setMemberVip(task.getMemberVip());
//task_.setMemberExclusive(task.getMemberExclusive());
task_.setPointsType(Objects.isNull(task.getPointsType()) ? 1 : task.getPointsType());
task_.setRewardPoints(Objects.isNull(task.getRewardPoints()) ? null : task.getRewardPoints());
//task_.setRewardPointsExpireTime(Objects.isNull(task.getRewardPointsExpireTime()) ?
// DateUtil.getLastDateTimeSecondYearLong() : task.getRewardPointsExpireTime());
//task_.setRewardMaxPoints(Objects.isNull(task.getRewardMaxPoints()) ?
//RandomUtil.getRandomPoints(1, 10).intValue() : task.getRewardMaxPoints());
task_.setRewardExp(Objects.isNull(task.getRewardExp()) ? 0L : task.getRewardExp());
task_.setRightsId(task.getRightsId());
task_.setRightsAmount(task.getRightsAmount());
task_.setRights2Id(task.getRights2Id());
task_.setRights2Amount(task.getRights2Amount());
task_.setRights3Id(task.getRights3Id());
task_.setRights3Amount(task.getRights3Amount());
return task;
}
}
package com.topdraw.business.module.task.template.domain;
import com.topdraw.util.IdWorker;
import org.apache.commons.lang3.StringUtils;
import java.util.Objects;
/**
* @author :
* @description:
* @function :
* @date :Created in 2022/4/25 17:22
* @version: :
* @modified By:
* @since : modified in 2022/4/25 17:22
*/
public class TaskTemplateBuilder {
public static TaskTemplate build(TaskTemplate taskTemplate){
TaskTemplate taskTemplate_ = new TaskTemplate();
taskTemplate_.setCode(StringUtils.isEmpty(taskTemplate.getCode()) ? IdWorker.generatorCode("taskTemplate_") : taskTemplate.getCode());
taskTemplate_.setName(taskTemplate.getName());
taskTemplate_.setType(taskTemplate.getType());
taskTemplate_.setStatus(Objects.isNull(taskTemplate.getStatus()) ? 1:taskTemplate.getStatus());
taskTemplate_.setEvent(taskTemplate.getEvent());
taskTemplate_.setParams(taskTemplate.getParams());
taskTemplate_.setDescription(taskTemplate.getDescription());
// taskTemplate_.setDeleteMark(Objects.isNull(taskTemplate.getDeleteMark()) ? 0 : taskTemplate.getDeleteMark());
return taskTemplate_;
}
}
package com.topdraw.business.process.rest;
import com.topdraw.annotation.AnonymousAccess;
import com.topdraw.business.module.task.template.domain.TaskTemplate;
import com.topdraw.business.process.service.TaskTemplateOperationService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@Api("任务模板处理")
@RestController
@RequestMapping(value = "/uce/taskTemplateOperation")
@Slf4j
public class TaskTemplateOperationController {
@Autowired
private TaskTemplateOperationService taskTemplateOperationService;
/**
* 新增任务
*
* @param taskTemplate 消息
*/
@PostMapping(value = "/create")
@ApiOperation("新增任务")
@AnonymousAccess
public void create(@RequestBody @Validated TaskTemplate taskTemplate) {
log.info("taskTemplateOperation ==>> create ==>> param ==>> {}", taskTemplate);
// 新增任务
this.taskTemplateOperationService.create(taskTemplate);
}
/**
* 修改任务
*
* @param taskTemplate 消息
*/
@PostMapping(value = "/update")
@ApiOperation("修改任务模板")
@AnonymousAccess
public void update(@RequestBody @Validated TaskTemplate taskTemplate) {
log.info("taskTemplateOperation ==>> update ==>> param ==>> {}", taskTemplate);
// 修改任务
this.taskTemplateOperationService.update(taskTemplate);
}
/**
* 删除任务
*
* @param id 消息
*/
@PostMapping(value = "/delete")
@ApiOperation("删除任务模板")
@AnonymousAccess
public void delete(@RequestParam(value = "id") Long id) {
log.info("taskTemplateOperation ==>> delete ==>> param ==>> {}", id);
// 删除任务
this.taskTemplateOperationService.delete(id);
}
}
package com.topdraw.business.process.service;
import com.topdraw.business.module.task.template.domain.TaskTemplate;
/**
* @description 权益操作接口
* @author XiangHan
* @date 2021.10.22
*/
public interface TaskTemplateOperationService {
/**
*
* @param task
*/
void create(TaskTemplate task);
/**
*
* @param task
*/
void update(TaskTemplate task);
/**
*
* @param task
*/
void delete(TaskTemplate task);
/**
*
* @param id
*/
void delete(Long id);
}
package com.topdraw.business.process.service.impl;
import com.topdraw.aspect.AsyncMqSend;
import com.topdraw.business.module.task.template.domain.TaskTemplate;
import com.topdraw.business.module.task.template.domain.TaskTemplateBuilder;
import com.topdraw.business.module.task.template.service.TaskTemplateService;
import com.topdraw.business.module.task.template.service.dto.TaskTemplateDTO;
import com.topdraw.business.process.service.TaskTemplateOperationService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.aop.framework.AopContext;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Objects;
/**
* @author :
* @description:
* @function :
* @date :Created in 2022/4/25 22:27
* @version: :
* @modified By:
* @since : modified in 2022/4/25 22:27
*/
@Service
@Slf4j
public class TaskTemplateOperationServiceImpl implements TaskTemplateOperationService {
@Autowired
private TaskTemplateService taskTemplateService;
@AsyncMqSend
public void asyncTaskTemplate(TaskTemplate resources) {}
@Override
public void create(TaskTemplate resources) {
TaskTemplate taskTemplate = TaskTemplateBuilder.build(resources);
//TaskTemplateDTO taskTemplate_ = this.taskTemplateService.create(taskTemplate);
TaskTemplate taskTemplate1 = new TaskTemplate();
//BeanUtils.copyProperties(taskTemplate_, taskTemplate1);
//((TaskTemplateOperationServiceImpl) AopContext.currentProxy()).asyncTaskTemplate(taskTemplate1);
}
@Override
public void update(TaskTemplate resources) {
//TaskTemplateDTO taskTemplate_ = this.taskTemplateService.update(resources);
TaskTemplate taskTemplate1 = new TaskTemplate();
//BeanUtils.copyProperties(taskTemplate_, taskTemplate1);
((TaskTemplateOperationServiceImpl) AopContext.currentProxy()).asyncTaskTemplate(taskTemplate1);
}
@Override
public void delete(TaskTemplate resources) {
//this.taskTemplateService.delete(resources);
//((TaskTemplateOperationServiceImpl) AopContext.currentProxy()).asyncTaskTemplate(resources);
}
@Override
public void delete(Long id) {
TaskTemplateDTO taskTemplateDTO = this.findById(id);
//this.taskTemplateService.delete(id);
TaskTemplate taskTemplate = new TaskTemplate();
BeanUtils.copyProperties(taskTemplateDTO, taskTemplate);
//taskTemplate.setDeleteMark(1);
//((TaskTemplateOperationServiceImpl) AopContext.currentProxy()).asyncTaskTemplate(taskTemplate);
}
public TaskTemplateDTO findByCode(String code) {
return null;//this.taskTemplateService.findByCode(code);
}
public TaskTemplateDTO findById(Long id) {
return this.taskTemplateService.findById(id);
}
}