Browse Source

完善(居民在防疫哨卡进行登记时,上送数据并完善党群系统个人信息)

dev
曲树通 6 years ago
parent
commit
8f91423c4d
  1. 7
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiCustomController.java
  2. 3
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java
  3. 3
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/CustomService.java
  4. 97
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/CustomServiceImpl.java
  5. 12
      esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/epdc/form/EpdcAppPidemicCompleteInfoFromDTO.java
  6. 10
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/entity/UserEntity.java
  7. 9
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/UserCarInfoService.java
  8. 8
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserCarInfoServiceImpl.java
  9. 17
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java

7
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiCustomController.java

@ -1,5 +1,7 @@
package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.dto.DeptOption;
@ -69,7 +71,6 @@ public class ApiCustomController {
return customService.getDeptInfoByMaCode(code);
}
/***
* 居民在防疫哨卡进行登记时上送数据并完善党群系统个人信息
* @param completeInfoFromDto
@ -78,7 +79,7 @@ public class ApiCustomController {
* @date 2020/2/15 10:53
*/
@PostMapping("sentryPost/completeInfo")
public Result completeInfo(@RequestBody EpdcAppPidemicCompleteInfoFromDTO completeInfoFromDto){
return customService.createPidemicInfo(completeInfoFromDto);
public Result completeInfo(@RequestBody EpdcAppPidemicCompleteInfoFromDTO completeInfoFromDto, @LoginUser TokenDto userDetail) {
return customService.createPidemicInfo(completeInfoFromDto,userDetail);
}
}

3
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java

@ -237,11 +237,10 @@ public interface UserFeignClient {
Result<EpdcResidentDetailResultDTO> residentDetail(@PathVariable("userId") String userId);
/**
*
* 获取用户最后一次切换的网格信息
*
* @params [openId]
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.epdc.result.EpdcUserRegisterInfoResultDTO>
* @params [openId]
* @author liuchuang
* @since 2019/12/6 11:04
*/

3
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/CustomService.java

@ -1,5 +1,6 @@
package com.elink.esua.epdc.service;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.DeptOption;
import com.elink.esua.epdc.dto.epdc.form.EpdcAppPidemicCompleteInfoFromDTO;
@ -46,5 +47,5 @@ public interface CustomService {
* @author qushutong
* @date 2020/2/15 10:58
*/
Result createPidemicInfo(EpdcAppPidemicCompleteInfoFromDTO completeInfoFromDto);
Result createPidemicInfo(EpdcAppPidemicCompleteInfoFromDTO completeInfoFromDto, TokenDto userDetail);
}

97
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/CustomServiceImpl.java

@ -1,6 +1,7 @@
package com.elink.esua.epdc.service.impl;
import com.elink.esua.epdc.commons.tools.constant.NumConstant;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.exception.RenException;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.CompleteDeptDTO;
@ -39,6 +40,52 @@ public class CustomServiceImpl implements CustomService {
@Autowired
private UserFeignClient userFeignClient;
@Override
public Result<EpdcSentryPostInfoResultDTO> getDeptInfoByMaCode(String code) {
String combine = "-";
if (StringUtils.isBlank(code) || code.indexOf(combine) == NumConstant.ONE_NEG) {
return new Result().error("不是规范的哨卡小程序码");
}
EpdcSentryPostInfoResultDTO epdcSentryPostInfoResultDTO = new EpdcSentryPostInfoResultDTO();
String[] grididAndPostId = code.split(combine);
if (grididAndPostId.length < NumConstant.TWO) {
return new Result().error("哨卡小程序码信息异常");
}
// 网格id
String gridId = grididAndPostId[NumConstant.ZERO];
// 哨卡编码
String postCode = grididAndPostId[NumConstant.ONE];
//拿取网格信息
CompleteDeptDTO completeDept = getCompleteDeptDTOByGridId(gridId);
epdcSentryPostInfoResultDTO.setStreetName(completeDept.getStreet());
epdcSentryPostInfoResultDTO.setCommunityName(completeDept.getCommunity());
epdcSentryPostInfoResultDTO.setGridId(completeDept.getGridId());
epdcSentryPostInfoResultDTO.setGridName(completeDept.getGrid());
//拿取哨卡信息
Result<EpidemicSentryPostDTO> epidemicSentryResult = customFeignClient.getEpidemicSentryBySentryPostCode(postCode);
if (!epidemicSentryResult.success() || null == epidemicSentryResult.getData()) {
return new Result().error("查询哨卡信息失败");
}
EpidemicSentryPostDTO epidemicSentryPostDTO = epidemicSentryResult.getData();
epdcSentryPostInfoResultDTO.setSentryPostName(epidemicSentryPostDTO.getSentryPostName());
epdcSentryPostInfoResultDTO.setThirdSentryPostId(epidemicSentryPostDTO.getThirdSentryPostId());
return new Result().ok(epdcSentryPostInfoResultDTO);
}
private CompleteDeptDTO getCompleteDeptDTOByGridId(String gridId) {
Result<CompleteDeptDTO> adminResult = adminFeignClient.getCompleteDept(Long.parseLong(gridId));
if (!adminResult.success() || null == adminResult.getData()) {
throw new RenException("查询网格信息失败");
}
return adminResult.getData();
}
/**
* @param
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.DeptOption>
@ -76,6 +123,7 @@ public class CustomServiceImpl implements CustomService {
}
/**
* @param mobile 手机号
* @param smsCode 用户输入的验证码
@ -92,53 +140,8 @@ public class CustomServiceImpl implements CustomService {
@Override
public Result<EpdcSentryPostInfoResultDTO> getDeptInfoByMaCode(String code) {
String combine = "-";
if (StringUtils.isBlank(code) || code.indexOf(combine) == NumConstant.ONE_NEG) {
return new Result().error("不是规范的哨卡小程序码");
}
EpdcSentryPostInfoResultDTO epdcSentryPostInfoResultDTO = new EpdcSentryPostInfoResultDTO();
String[] grididAndPostId = code.split(combine);
if (grididAndPostId.length < NumConstant.TWO) {
return new Result().error("哨卡小程序码信息异常");
}
// 网格id
String gridId = grididAndPostId[NumConstant.ZERO];
// 哨卡编码
String postCode = grididAndPostId[NumConstant.ONE];
//拿取网格信息
CompleteDeptDTO completeDept = getCompleteDeptDTOByGridId(gridId);
epdcSentryPostInfoResultDTO.setStreetName(completeDept.getStreet());
epdcSentryPostInfoResultDTO.setCommunityName(completeDept.getCommunity());
epdcSentryPostInfoResultDTO.setGridId(completeDept.getGridId());
epdcSentryPostInfoResultDTO.setGridName(completeDept.getGrid());
//拿取哨卡信息
Result<EpidemicSentryPostDTO> epidemicSentryResult = customFeignClient.getEpidemicSentryBySentryPostCode(postCode);
if (!epidemicSentryResult.success() || null == epidemicSentryResult.getData()) {
return new Result().error("查询哨卡信息失败");
}
EpidemicSentryPostDTO epidemicSentryPostDTO = epidemicSentryResult.getData();
epdcSentryPostInfoResultDTO.setSentryPostName(epidemicSentryPostDTO.getSentryPostName());
epdcSentryPostInfoResultDTO.setThirdSentryPostId(epidemicSentryPostDTO.getThirdSentryPostId());
return new Result().ok(epdcSentryPostInfoResultDTO);
}
private CompleteDeptDTO getCompleteDeptDTOByGridId(String gridId) {
Result<CompleteDeptDTO> adminResult = adminFeignClient.getCompleteDept(Long.parseLong(gridId));
if (!adminResult.success() || null == adminResult.getData()) {
throw new RenException("查询网格信息失败");
}
return adminResult.getData();
}
@Override
public Result createPidemicInfo(EpdcAppPidemicCompleteInfoFromDTO completeInfoFromDto) {
public Result createPidemicInfo(EpdcAppPidemicCompleteInfoFromDTO completeInfoFromDto, TokenDto userDetail) {
completeInfoFromDto.setUserId(userDetail.getUserId());
return userFeignClient.createPidemicInfo(completeInfoFromDto);
}
}

12
esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/epdc/form/EpdcAppPidemicCompleteInfoFromDTO.java

@ -2,6 +2,7 @@ package com.elink.esua.epdc.dto.epdc.form;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
@ -24,14 +25,23 @@ public class EpdcAppPidemicCompleteInfoFromDTO implements Serializable {
* isDriver : zW3ek3AUpm
* carNum : 6oOeXKemVl
*/
@NotBlank(message = "第三方哨卡ID")
private String postId;
@NotBlank(message = "姓名")
private String name;
@NotBlank(message = "身份证号")
private String idcard;
@NotBlank(message = "手机号")
private String phone;
@NotBlank(message = "居住地址")
private String habitationDetail;
@NotBlank(message = "是否租房")
private String isRent;
@NotBlank(message = "是否有车")
private String isDriver;
@NotBlank(message = "车牌号码")
private String carNum;
private String userId;
}

10
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/entity/UserEntity.java

@ -253,4 +253,14 @@ public class UserEntity extends BaseEpdcEntity {
* 所有部门名称
*/
private String allDeptNames;
/**
* 是否有车
*/
private String rentFlag;
/**
* 是否租房
*/
private String driverFlag;
}

9
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/UserCarInfoService.java

@ -92,4 +92,13 @@ public interface UserCarInfoService extends BaseService<UserCarInfoEntity> {
* @date 2020-02-15
*/
void delete(String[] ids);
/***
* 根据carNumber
* @param carNumber
* @return com.elink.esua.epdc.dto.epdc.UserCarInfoDTO
* @author qushutong
* @date 2020/2/15 18:42
*/
UserCarInfoDTO selectOneByCarNumber(String carNumber);
}

8
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserCarInfoServiceImpl.java

@ -101,4 +101,12 @@ public class UserCarInfoServiceImpl extends BaseServiceImpl<UserCarInfoDao, User
baseDao.deleteBatchIds(Arrays.asList(ids));
}
@Override
public UserCarInfoDTO selectOneByCarNumber(String carNumber) {
QueryWrapper wrapper = new QueryWrapper();
wrapper.eq("CAR_NUMBER",carNumber);
UserCarInfoEntity userCarInfoEntity = baseDao.selectOne(wrapper);
return ConvertUtils.sourceToTarget(userCarInfoEntity,UserCarInfoDTO.class);
}
}

17
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java

@ -895,19 +895,30 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem
@Override
public Result createPidemicInfo(EpdcAppPidemicCompleteInfoFromDTO completeInfoFromDto) {
UserDTO userDTO =new UserDTO();
// 更新用户信息
UserEntity userEntity = selectById(completeInfoFromDto.getUserId());
UserDTO userDTO = ConvertUtils.sourceToTarget(userEntity, UserDTO.class);
userDTO.setRealName(completeInfoFromDto.getName());
userDTO.setIdentityNo(completeInfoFromDto.getIdcard());
userDTO.setMobile(completeInfoFromDto.getPhone());
userDTO.setAddress(completeInfoFromDto.getHabitationDetail());
userDTO.setRentFlag(completeInfoFromDto.getIsRent());
userDTO.setDriverFlag(completeInfoFromDto.getIsDriver());
save(userDTO);
userDTO.setId(completeInfoFromDto.getUserId());
update(userDTO);
// 更新或存储用户车辆信息表
UserCarInfoDTO userCarInfoDTO = userCarInfoService.selectOneByCarNumber(completeInfoFromDto.getCarNum());
if (userCarInfoDTO == null) {
UserCarInfoDTO dto = new UserCarInfoDTO();
dto.setUserId(userDTO.getId());
dto.setCarNumber(completeInfoFromDto.getCarNum());
userCarInfoService.save(dto);
} else {
// 库里存的车牌号与该用户不相符
if (!userCarInfoDTO.getUserId().equals(userDTO.getId())) {
throw new RenException("保存失败,次车牌已被注册");
}
}
return new Result();
}
}

Loading…
Cancel
Save