diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiAppUserController.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiAppUserController.java index 8c462b1fa..5b0c50177 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiAppUserController.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiAppUserController.java @@ -22,7 +22,7 @@ import java.util.List; * 用户模块 * * @author yujintao - * @email yujintao@elink-cn.com + * @email yujintao@elink-cn.comuser/completeInfo * @date 2019/9/6 19:30 */ @RestController @@ -264,4 +264,20 @@ public class ApiAppUserController { public Result checkWxUnionId(@LoginUser TokenDto tokenDto) { return appUserService.checkWxUnionId(tokenDto); } + + /** + * 志愿者认证 + * + * @param tokenDto + * @param formDto + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author wanggongfeng + * @date 2019/12/13 14:41 + */ + @PostMapping("volunteer/authenticate") + public Result volunteerAuthenticate(@LoginUser TokenDto tokenDto, @RequestBody EpdcCompleteUserInfoFormDTO formDto) { + ValidatorUtils.validateEntity(formDto); + return appUserService.volunteerAuthenticate(tokenDto, formDto); + + } } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java index b9854986c..5e3ad40c5 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java @@ -1,5 +1,6 @@ package com.elink.esua.epdc.feign; +import com.elink.esua.epdc.common.token.dto.TokenDto; import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.UserDTO; @@ -7,11 +8,14 @@ import com.elink.esua.epdc.dto.UserGridRelationDTO; import com.elink.esua.epdc.dto.UserWxFormIdDTO; import com.elink.esua.epdc.dto.epdc.form.*; import com.elink.esua.epdc.dto.epdc.result.*; -import com.elink.esua.epdc.dto.epdc.result.EpdcWorkUserResultDTO; +import com.elink.esua.epdc.dto.form.EpdcCompleteUserInfoFormDTO; import com.elink.esua.epdc.feign.fallback.UserFeignClientFallback; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.http.MediaType; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; import java.util.List; @@ -326,4 +330,21 @@ public interface UserFeignClient { **/ @PostMapping(value="app-user/epdc-app/user/queryUserDto", consumes = MediaType.APPLICATION_JSON_VALUE) Result queryUserDto(EpdcAppQueryUserInfoFormDTO formDTO); + + /** + * 志愿者认证 + * @param userId + * @return + */ + @GetMapping("app-user/epdc-app/user/getVolunteerCountById/{userId}") + Result getVolunteerCountById(@PathVariable("userId") String userId); + + /** + * 添加志愿者 + * @param tokenDto + * @param formDto + * @return + */ + @GetMapping("app-user/epdc-app/user/insertVolunteerInfo") + Result insertVolunteerInfo(TokenDto tokenDto, EpdcCompleteUserInfoFormDTO formDto); } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClientFallback.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClientFallback.java index 962b5f70b..102541aa5 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClientFallback.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClientFallback.java @@ -1,5 +1,6 @@ package com.elink.esua.epdc.feign.fallback; +import com.elink.esua.epdc.common.token.dto.TokenDto; 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; @@ -8,6 +9,7 @@ import com.elink.esua.epdc.dto.UserGridRelationDTO; import com.elink.esua.epdc.dto.UserWxFormIdDTO; import com.elink.esua.epdc.dto.epdc.form.*; import com.elink.esua.epdc.dto.epdc.result.*; +import com.elink.esua.epdc.dto.form.EpdcCompleteUserInfoFormDTO; import com.elink.esua.epdc.feign.UserFeignClient; import org.springframework.stereotype.Component; @@ -159,4 +161,14 @@ public class UserFeignClientFallback implements UserFeignClient { public Result queryUserDto(EpdcAppQueryUserInfoFormDTO formDTO) { return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "queryUserDto",formDTO); } + + @Override + public Result getVolunteerCountById(String userId) { + return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "getVolunteerCountById", userId); + } + + @Override + public Result insertVolunteerInfo(TokenDto tokenDto, EpdcCompleteUserInfoFormDTO formDto) { + return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "insertVolunteerInfo", tokenDto,formDto); + } } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/AppUserService.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/AppUserService.java index 4155c3c28..fed44f1d1 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/AppUserService.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/AppUserService.java @@ -216,4 +216,16 @@ public interface AppUserService { * @Date 2019/12/7 14:32 **/ Result checkWxUnionId(TokenDto tokenDto); + + /** + * 志愿者认证 + * @param tokenDto + * @param formDto + * @Author wanggongfeng + * @return + */ + Result volunteerAuthenticate(TokenDto tokenDto, EpdcCompleteUserInfoFormDTO formDto); + + + } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AppUserServiceImpl.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AppUserServiceImpl.java index 680e01245..566b33c5b 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AppUserServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AppUserServiceImpl.java @@ -1045,4 +1045,24 @@ public class AppUserServiceImpl implements AppUserService { } return result; } + + @Override + public Result volunteerAuthenticate(TokenDto tokenDto, EpdcCompleteUserInfoFormDTO formDto) { + Boolean isVolunteer = true; + Result volunteerCountResult = userFeignClient.getVolunteerCountById(tokenDto.getUserId()); + if (!volunteerCountResult.success() || null == volunteerCountResult.getData()) { + throw new RenException("志愿者认证失败"); + }else if(volunteerCountResult.getData() == 0){ + isVolunteer = false; + Result insertCountResult = userFeignClient.insertVolunteerInfo(tokenDto,formDto); + } + + //用户完善个人信息-保存 + Result result = completeUserInfo(tokenDto, formDto); + + + return new Result().ok(isVolunteer); + } + + } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/EpdcAppUserController.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/EpdcAppUserController.java index 40dd10ad9..c48115d8c 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/EpdcAppUserController.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/EpdcAppUserController.java @@ -353,4 +353,21 @@ public class EpdcAppUserController { public Result getUserLastSwitchGird(@PathVariable("openId") String openId) { return userService.getUserLastSwitchGird(openId); } + + /** + * 根据用户id 进行志愿者认证 + * @param userId + * @author wanggongfeng + * @return + */ + @GetMapping("getVolunteerCountById/{userId}") + public Result getVolunteerCountById(@PathVariable("userId") String userId) { + return userService.getVolunteerCountById(userId); + } + + /*@GetMapping("insertVolunteerInfo") + public Result insertVolunteerInfo(@RequestBody TokenDto tokenDto, @RequestBody EpdcCompleteUserInfoFormDTO formDto) { + //return userService.insertVolunteerInfo(fromDto); + return null; + }*/ } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/UserDao.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/UserDao.java index f16a1eeec..be54ce066 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/UserDao.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/UserDao.java @@ -156,4 +156,6 @@ public interface UserDao extends BaseDao { * @Date 2019/12/7 11:23 **/ List selectPartyAuthenticationFailedList(EpdcWorkUserFromDTO workUserFromDto); + + int getVolunteerCountById(@Param("userId") String userId); } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/UserService.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/UserService.java index d69b82210..f0c39e9b0 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/UserService.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/UserService.java @@ -266,5 +266,14 @@ public interface UserService extends BaseService { * @Description 根据操作类型更新用户积分 * @Date 2019/12/13 15:10 **/ - Result handleUserPoints(EpdcUserPointsFormDTO formDTO); + Result handleUserPoints(EpdcUserPointsFormDTO formDTO); + + /** + * 根据用户id 进行志愿者认证 + * @param userId + * @author wanggongfeng + * @return + * @Date 2019/12/13 16:39 + */ + Result getVolunteerCountById(String userId); } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java index 906afd0dc..7ca6fd641 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java @@ -806,4 +806,10 @@ public class UserServiceImpl extends BaseServiceImpl implem return ConvertUtils.sourceToTarget(userEntity, UserDTO.class); } + @Override + public Result getVolunteerCountById(String userId) { + return new Result().ok(baseDao.getVolunteerCountById(userId)); + } + + } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml index 0bd225d9e..7320a1ff7 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml @@ -352,4 +352,8 @@ LIMIT #{pageIndex},#{pageSize} + +