diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/ResiVolunteerAuthenticateFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/ResiVolunteerAuthenticateFormDTO.java new file mode 100644 index 0000000000..13789fa4cf --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/ResiVolunteerAuthenticateFormDTO.java @@ -0,0 +1,116 @@ +package com.epmet.dto.form; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * 志愿者认证 入参 + * + * @Auther: zhangyong + * @Date: 2020-07-23 09:57 + */ + +@Data +public class ResiVolunteerAuthenticateFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + + /** + * 添加用户操作的内部异常分组 + * 出现错误会提示给前端7000错误码,返回信息为:服务器开小差... + */ + + + /** + * 添加用户操作的用户可见异常分组 + * 该分组用于校验需要返回给前端错误信息提示的列,需要继承CustomerClientShowGroup + * 返回错误码为8999,提示信息为DTO中具体的列的校验注解message的内容 + */ + + + + /** + * 用户id + */ + private String userId; + + /** + * 客户id + */ + @NotBlank(message = "客户id不能为空") + private String customerId; + + /** + * 姓 + */ + @NotBlank(message = "姓不能为空") + private String surname; + + /** + * 名 + */ + @NotBlank(message = "名不能为空") + private String name; + + /** + * 性别(1男2女0未知) + */ + @NotBlank(message = "性别不能为空") + private String gender; + + /** + * 手机号 + */ + @NotBlank(message = "手机号不能为空") + private String mobile; + + /** + * 身份证号码 + */ + @NotBlank(message = "身份证号码不能为空") + private String idNum; + + /** + * 街道 + */ + @NotBlank(message = "街道不能为空") + private String street; + + /** + * 小区名 + */ + @NotBlank(message = "小区名不能为空") + private String district; + + /** + * 楼栋单元 + */ + @NotBlank(message = "楼栋单元不能为空") + private String buildingAddress; + + /** + * 志愿者自我介绍 + */ + private String volunteerIntroduce; + + /** + * 昵称 + */ + @NotBlank(message = "昵称不能为空") + private String nickname; + + /** + * 头像 + */ + @NotBlank(message = "头像不能为空") + private String avatarUrl; + + /** + * 志愿者签名 + */ + private String volunteerSignature; +} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java index 5aa0a5e9dd..857df537c1 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java @@ -239,4 +239,14 @@ public interface EpmetUserOpenFeignClient { **/ @PostMapping("/epmetuser/userbaseinfo/selectuserbaseinfo") Result selectUserBaseInfo(@RequestBody TokenDto tokenDTO); + + /** + * @Description 认证志愿者时保存/修改用户基础信息 + * @param param + * @return + * @author wangc + * @date 2020.07.31 09:38 + **/ + @PostMapping("/epmetuser/userbaseinfo/volunteerbaseinfo") + Result volunteerBaseInfo(@RequestBody ResiVolunteerAuthenticateFormDTO param); } diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java index 9c3fc1d0ba..0be4d08c3d 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java @@ -173,4 +173,9 @@ public class EpmetUserOpenFeignClientFallback implements EpmetUserOpenFeignClien public Result selectUserBaseInfo(TokenDto tokenDTO) { return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "selectUserBaseInfo", tokenDTO); } + + @Override + public Result volunteerBaseInfo(ResiVolunteerAuthenticateFormDTO param) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "volunteerBaseInfo", param); + } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserBaseInfoController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserBaseInfoController.java index 26c6cf8c3c..c54a5248cf 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserBaseInfoController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserBaseInfoController.java @@ -29,6 +29,7 @@ import com.epmet.commons.tools.validator.group.DefaultGroup; import com.epmet.commons.tools.validator.group.UpdateGroup; import com.epmet.dto.UserBaseInfoDTO; import com.epmet.dto.form.IssueInitiatorFormDTO; +import com.epmet.dto.form.ResiVolunteerAuthenticateFormDTO; import com.epmet.dto.result.CustomerUserDetailResultDTO; import com.epmet.dto.result.ResiUserBaseInfoResultDTO; import com.epmet.dto.result.UserBaseInfoResultDTO; @@ -162,4 +163,17 @@ public class UserBaseInfoController { public Result selectUserBaseInfo(@LoginUser TokenDto tokenDTO){ return userBaseInfoService.selecUserBaseInfoByUserId(tokenDTO.getUserId()); } + + /** + * @Description 认证志愿者时保存/修改用户基础信息 + * @param param + * @return + * @author wangc + * @date 2020.07.31 09:38 + **/ + @PostMapping("volunteerbaseinfo") + public Result volunteerBaseInfo(@RequestBody ResiVolunteerAuthenticateFormDTO param){ + userBaseInfoService.saveUserBaseInfoWhenAuthVolunteer(param); + return new Result(); + } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserBaseInfoService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserBaseInfoService.java index 03786a14a9..060f8385f1 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserBaseInfoService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserBaseInfoService.java @@ -21,6 +21,7 @@ import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.UserBaseInfoDTO; +import com.epmet.dto.form.ResiVolunteerAuthenticateFormDTO; import com.epmet.dto.result.CustomerUserDetailResultDTO; import com.epmet.dto.result.ResiUserBaseInfoResultDTO; import com.epmet.dto.result.UserBaseInfoResultDTO; @@ -142,4 +143,13 @@ public interface UserBaseInfoService extends BaseService { * @Date 15:20 2020-07-28 **/ Result selecUserBaseInfoByUserId(String userId); + + /** + * @Description 认证志愿者时保存/修改用户基础信息 + * @param param + * @return + * @author wangc + * @date 2020.07.31 09:38 + **/ + void saveUserBaseInfoWhenAuthVolunteer(ResiVolunteerAuthenticateFormDTO param); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserBaseInfoServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserBaseInfoServiceImpl.java index 3f2ffbdcea..019a790f73 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserBaseInfoServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserBaseInfoServiceImpl.java @@ -31,6 +31,7 @@ import com.epmet.dao.UserWechatDao; import com.epmet.dto.UserBaseInfoDTO; import com.epmet.dto.UserResiInfoDTO; import com.epmet.dto.UserWechatDTO; +import com.epmet.dto.form.ResiVolunteerAuthenticateFormDTO; import com.epmet.dto.result.CustomerUserDetailResultDTO; import com.epmet.dto.result.ResiUserBaseInfoResultDTO; import com.epmet.dto.result.UserBaseInfoResultDTO; @@ -45,10 +46,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.util.*; /** * 用户基础信息 @@ -261,4 +259,28 @@ public class UserBaseInfoServiceImpl extends BaseServiceImpl selecUserBaseInfoByUserId(String userId) { return new Result().ok(baseDao.selecUserBaseInfoByUserId(userId)); } + + + /** + * @Description 认证志愿者时保存/修改用户基础信息 + * @param param + * @return + * @author wangc + * @date 2020.07.31 09:38 + **/ + @Override + public void saveUserBaseInfoWhenAuthVolunteer(ResiVolunteerAuthenticateFormDTO param) { + UserWechatDTO userWechatDTO = new UserWechatDTO(); + userWechatDTO.setUserId(param.getUserId()); + userWechatDTO.setNickname(StringUtils.isBlank(param.getNickname()) ? ModuleConstant.EMPTY_STR : param.getNickname()); + if(StringUtils.isBlank(param.getGender())) param.setGender(NumConstant.ZERO_STR); + userWechatDTO.setSex(Integer.parseInt(param.getGender())); + userWechatDTO.setHeadImgUrl(param.getAvatarUrl()); + userWechatDTO.setUpdatedTime(new Date()); + userWechatDTO.setUpdatedBy(param.getUserId()); + userWechatDao.updateByUserId(userWechatDTO); + UserBaseInfoEntity baseInfo = ConvertUtils.sourceToTarget(param,UserBaseInfoEntity.class); + baseInfo.setHeadImgUrl(param.getAvatarUrl()); + insertOrUpdate(baseInfo); + } } diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/UserBaseInfoDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/UserBaseInfoDao.xml index 828d06aebd..cc86f83ccd 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/UserBaseInfoDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/UserBaseInfoDao.xml @@ -108,7 +108,7 @@ nickname = #{nickname}, head_img_url = #{headImgUrl}, del_flag = #{delFlag}, - updated_by = #{updatedBy}, + updated_by = #{userId}, updated_time = now() WHERE id = #{id}