From 5f42552eaa28805157029afa9d030541746f0ea8 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 29 Mar 2023 15:49:36 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8A=A5=E5=90=8D=E8=81=94=E5=BB=BA=E6=B4=BB?= =?UTF-8?q?=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/dto/form/SignUpParyActFormDTO.java | 25 +++++++++ .../controller/IcPartyActivityController.java | 21 ++++++-- .../epmet/service/IcPartyActivityService.java | 8 +++ .../impl/IcPartyActivityServiceImpl.java | 54 +++++++++++++++++++ 4 files changed, 104 insertions(+), 4 deletions(-) create mode 100644 epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/SignUpParyActFormDTO.java diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/SignUpParyActFormDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/SignUpParyActFormDTO.java new file mode 100644 index 0000000000..88a97b5cbb --- /dev/null +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/SignUpParyActFormDTO.java @@ -0,0 +1,25 @@ +package com.epmet.dto.form; + +import com.epmet.commons.tools.validator.group.QueryGroup; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @Description + * @Author yzm + * @Date 2023/3/29 15:27 + */ +@Data +public class SignUpParyActFormDTO { + /** + * + */ + @NotBlank(message = "userId不能为空", groups = QueryGroup.class) + private String userId; + @NotBlank(message = "activityId不能为空", groups = QueryGroup.class) + private String activityId; + @NotBlank(message = "gridId不能为空", groups = QueryGroup.class) + private String gridId; +} + diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcPartyActivityController.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcPartyActivityController.java index 189954215f..e6c79a4b49 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcPartyActivityController.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcPartyActivityController.java @@ -36,11 +36,13 @@ import com.epmet.commons.tools.utils.poi.excel.handler.FreezeAndFilter; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.group.AddGroup; import com.epmet.commons.tools.validator.group.DefaultGroup; +import com.epmet.commons.tools.validator.group.QueryGroup; import com.epmet.constants.ImportTaskConstants; import com.epmet.dto.IcPartyActivityDTO; import com.epmet.dto.form.ImportTaskCommonFormDTO; import com.epmet.dto.form.PartyActivityFormDTO; import com.epmet.dto.form.PartyActivitySignUpRecordFormDTO; +import com.epmet.dto.form.SignUpParyActFormDTO; import com.epmet.dto.result.ImportTaskCommonResultDTO; import com.epmet.dto.result.PartyActivitySignUpRecordResDTO; import com.epmet.dto.result.demand.OptionDTO; @@ -63,9 +65,7 @@ import java.io.IOException; import java.io.InputStream; import java.net.URLEncoder; import java.nio.file.Path; -import java.util.Date; -import java.util.List; -import java.util.UUID; +import java.util.*; /** @@ -268,6 +268,19 @@ public class IcPartyActivityController implements ResultDataResolver { return new Result>().ok(icPartyActivityService.querySignUpRecord(formDTO.getActivityId(),formDTO.getPageNo(),formDTO.getPageSize())); } - + /** + * 居民端钉钉,报名联建活动 + * + * @param formDTO + * @return + */ + @PostMapping("signUp") + public Result signUp(@RequestBody SignUpParyActFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO, QueryGroup.class); + String signUpId = icPartyActivityService.signUp(formDTO.getActivityId(), formDTO.getUserId(), formDTO.getGridId()); + Map resultMap = new HashMap<>(); + resultMap.put("signUpId", signUpId); + return new Result().ok(resultMap); + } } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcPartyActivityService.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcPartyActivityService.java index 16166ca26d..c625db5c03 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcPartyActivityService.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcPartyActivityService.java @@ -135,4 +135,12 @@ public interface IcPartyActivityService extends BaseService querySignUpRecord(String activityId,Integer pageNo,Integer pageSize); + + /** + * 居民端钉钉,报名联建活动 + * @param activityId + * @param userId + * @param gridId + */ + String signUp(String activityId, String userId, String gridId); } \ No newline at end of file diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcPartyActivityServiceImpl.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcPartyActivityServiceImpl.java index 3f5681547d..fba092c900 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcPartyActivityServiceImpl.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcPartyActivityServiceImpl.java @@ -24,6 +24,8 @@ import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.StrConstant; import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult; +import com.epmet.commons.tools.exception.EpmetErrorCode; +import com.epmet.commons.tools.exception.EpmetException; import com.epmet.commons.tools.exception.ExceptionUtils; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.redis.common.CustomerOrgRedis; @@ -41,13 +43,16 @@ import com.epmet.dto.form.PartyActivityFormDTO; import com.epmet.dto.result.ActivityStatisticsDTO; import com.epmet.dto.result.PartyActivitySignUpRecordResDTO; import com.epmet.dto.result.UploadImgResultDTO; +import com.epmet.dto.result.UserBaseInfoResultDTO; import com.epmet.dto.result.demand.OptionDTO; import com.epmet.entity.IcActivityServiceRelationEntity; import com.epmet.entity.IcActivityUnitRelationEntity; import com.epmet.entity.IcPartyActivityEntity; +import com.epmet.entity.IcPartyActivitySignUpRecordEntity; import com.epmet.excel.IcPartyActivityImportExcel; import com.epmet.excel.handler.IcPartyActivityImportListener; import com.epmet.feign.EpmetCommonServiceOpenFeignClient; +import com.epmet.feign.EpmetUserOpenFeignClient; import com.epmet.feign.OssFeignClient; import com.epmet.service.*; import com.github.pagehelper.PageHelper; @@ -98,6 +103,8 @@ public class IcPartyActivityServiceImpl extends BaseServiceImpl pageInfo = new PageInfo<>(list); return new PageData<>(list, pageInfo.getTotal(), pageSize); } + + /** + * 居民端钉钉,报名联建活动 + * + * @param activityId + * @param userId + * @param gridId + */ + @Override + public String signUp(String activityId, String userId, String gridId) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(IcPartyActivitySignUpRecordEntity::getActivityId, activityId) + .eq(IcPartyActivitySignUpRecordEntity::getUserId, userId) + .select(IcPartyActivitySignUpRecordEntity::getId); + IcPartyActivitySignUpRecordEntity entity = partyActivitySignUpRecordDao.selectOne(queryWrapper); + if (null != entity) { + return entity.getId(); + } + // 查询网格名称 + GridInfoCache gridInfoCache = CustomerOrgRedis.getGridInfo(gridId); + if (null == gridInfoCache) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "网格信息查询异常gridId:" + gridId, "网格信息查询异常"); + } + // 查询用户姓名和手机号 + List userIdList=new ArrayList<>(); + userIdList.add(userId); + Result> userRes = epmetUserOpenFeignClient.queryUserBaseInfo(userIdList); + if (!userRes.success() || CollectionUtils.isEmpty(userRes.getData())) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "网格信息查询异常gridId:" + gridId, "查询用户信息异常"); + } + UserBaseInfoResultDTO userBaseInfoResultDTO=userRes.getData().get(NumConstant.ZERO); + IcPartyActivitySignUpRecordEntity insert = new IcPartyActivitySignUpRecordEntity(); + insert.setActivityId(activityId); + insert.setCustomerId(EpmetRequestHolder.getLoginUserCustomerId()); + insert.setGridId(gridId); + insert.setGridName(gridInfoCache.getGridNamePath()); + insert.setUserId(userId); + insert.setUserName(userBaseInfoResultDTO.getRealName()); + insert.setMobile(userBaseInfoResultDTO.getMobile()); + insert.setSignUpTime(new Date()); + partyActivitySignUpRecordDao.insert(insert); + return insert.getId(); + } + + + + }