update 用户绑定车牌号相关接口修改逻辑

This commit is contained in:
DESKTOP-D9QDT1P\JS-ZZA
2023-03-06 15:17:04 +08:00
parent aa0af9996e
commit f3f3b41a37
7 changed files with 60 additions and 26 deletions

View File

@@ -629,9 +629,12 @@ null提示”==操作成功==“
### 反参
| 字段名 | 类型 | 是否必传 | 备注 |
| ------------------ | ------ | -------- | ------ |
| licensePlateNumber | String | Y | 车牌号 |
| 字段名 | 类型 | 是否必传 | 备注 |
| ------------------ | ------ | -------- | -------- |
| memberId | String | Y | 会员id |
| phoneNumber | String | Y | 手机号码 |
| licensePlateNumber | String | Y | 车牌号 |
| createTime | String | Y | 创建时间 |
## 10002 用户绑定车牌号

View File

@@ -13,14 +13,17 @@ import com.jsowell.common.response.RestApiResponse;
import com.jsowell.common.util.SMSUtil;
import com.jsowell.common.util.StringUtils;
import com.jsowell.pile.domain.MemberBasicInfo;
import com.jsowell.pile.domain.MemberLicensePlateNumberRelation;
import com.jsowell.pile.dto.*;
import com.jsowell.pile.service.IMemberBasicInfoService;
import com.jsowell.pile.service.IMemberLicensePlateNumberRelationService;
import com.jsowell.pile.vo.uniapp.MemberVO;
import com.jsowell.service.MemberService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;
/**
@@ -38,6 +41,9 @@ public class MemberController extends BaseController {
@Autowired
private IMemberBasicInfoService memberBasicInfoService;
@Autowired
private IMemberLicensePlateNumberRelationService memberLicensePlateNumberRelationService;
/**
* 下发短信接口 business
* http://localhost:8080/uniapp/member/sendSMS
@@ -197,18 +203,20 @@ public class MemberController extends BaseController {
/**
* 通过 memberId 查询用户绑定车牌信息
* http://localhost:8080/uniapp/member/selectInfoByMemberId
* http://localhost:8080/uniapp/member/getMemberCarNoInfo
*
* @return
*/
@GetMapping("/selectInfoByMemberId")
public RestApiResponse<?> selectInfoByMemberId(HttpServletRequest request){
@GetMapping("/getMemberCarNoInfo")
public RestApiResponse<?> getMemberCarNoInfo(HttpServletRequest request){
String memberId = getMemberIdByAuthorization(request);
logger.info("通过 memberId 查询用户个人基本信息 param:{}", memberId);
RestApiResponse<?> response = null;
try {
MemberBasicInfo memberBasicInfo = memberBasicInfoService.selectInfoByMemberId(memberId);
response = new RestApiResponse<>(memberBasicInfo);
MemberLicensePlateNumberRelation info = new MemberLicensePlateNumberRelation();
info.setMemberId(memberId);
List<MemberLicensePlateNumberRelation> resultList = memberLicensePlateNumberRelationService.selectMemberLicensePlateNumberRelationList(info);
response = new RestApiResponse<>(resultList);
} catch (Exception e) {
logger.error("通过 memberId 查询用户个人基本信息 error", e);
response = new RestApiResponse<>(e);
@@ -233,9 +241,12 @@ public class MemberController extends BaseController {
dto.setMemberId(memberId);
memberService.memberBindingCarNo(dto);
response = new RestApiResponse<>();
}catch (Exception e){
} catch (BusinessException e){
logger.error("用户绑定车牌号 error", e);
response = new RestApiResponse<>(e);
response = new RestApiResponse<>(e.getCode(), e.getMessage());
} catch (Exception e){
logger.error("用户绑定车牌号 error", e);
response = new RestApiResponse<>(ReturnCodeEnum.CODE_USER_BINDING_CARNO_ERROR);
}
logger.info("用户绑定车牌号 result:{}", response);
return response;

View File

@@ -13,15 +13,18 @@ import com.jsowell.common.util.JWTUtils;
import com.jsowell.common.util.StringUtils;
import com.jsowell.common.util.id.IdUtils;
import com.jsowell.pile.domain.MemberBasicInfo;
import com.jsowell.pile.domain.MemberLicensePlateNumberRelation;
import com.jsowell.pile.domain.MemberWalletInfo;
import com.jsowell.pile.dto.*;
import com.jsowell.pile.service.IMemberBasicInfoService;
import com.jsowell.pile.service.IMemberLicensePlateNumberRelationService;
import com.jsowell.pile.service.IPileMerchantInfoService;
import com.jsowell.pile.transaction.dto.MemberTransactionDTO;
import com.jsowell.pile.transaction.service.TransactionService;
import com.jsowell.pile.vo.uniapp.MemberVO;
import com.jsowell.pile.vo.uniapp.MemberWalletLogVO;
import com.jsowell.wxpay.service.WxAppletRemoteService;
import org.apache.commons.collections4.CollectionUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -49,6 +52,9 @@ public class MemberService {
@Autowired
private WxAppletRemoteService wxAppletRemoteService;
@Autowired
private IMemberLicensePlateNumberRelationService memberLicensePlateNumberRelationService;
/**
* 校验短信验证码
* @param dto
@@ -239,18 +245,18 @@ public class MemberService {
.mobileNumber(dto.getPhoneNumber())
.verificationCode(dto.getVerificationCode())
.build();
checkVerificationCode(registerAndLoginDTO);
// checkVerificationCode(registerAndLoginDTO);
// 判断当前车牌号是否已经绑定
MemberBasicInfo memberBasicInfo = memberBasicInfoService.selectInfoByMemberId(dto.getMemberId());
if (memberBasicInfo == null) {
throw new BusinessException(ReturnCodeEnum.CODE_USER_IS_NOT_REGISTER);
}
if (StringUtils.equals(memberBasicInfo.getLicensePlateNumber(), dto.getCarNo())) {
// 如果一致,提醒用户绑定,不能重复绑定
throw new BusinessException(ReturnCodeEnum.CODE_THIS_CARNO_HAS_BEEN_BINGDING);
}else {
memberBasicInfoService.memberBindingCarNo(dto);
MemberLicensePlateNumberRelation relation = new MemberLicensePlateNumberRelation();
relation.setMemberId(dto.getMemberId());
relation.setLicensePlateNumber(dto.getCarNo());
List<MemberLicensePlateNumberRelation> list = memberLicensePlateNumberRelationService.selectMemberLicensePlateNumberRelationList(relation);
if (CollectionUtils.isNotEmpty(list)) {
// 不为空说明该用户绑定过此车牌号
throw new BusinessException(ReturnCodeEnum.CODE_THIS_CARNO_HAS_BEEN_BINDING);
}
relation.setPhoneNumber(dto.getPhoneNumber());
memberLicensePlateNumberRelationService.insertMemberLicensePlateNumberRelation(relation);
}
}

View File

@@ -110,7 +110,9 @@ public enum ReturnCodeEnum {
CODE_GET_PERSONAL_PILE_CONNECTOR_INFO_ERROR("00400010", "获取个人桩枪口实时数据异常"),
CODE_THIS_CARNO_HAS_BEEN_BINGDING("00500001", "当前车牌号已经绑定,请检查!"),
CODE_THIS_CARNO_HAS_BEEN_BINDING("00500001", "当前车牌号已经绑定,请检查!"),
CODE_USER_BINDING_CARNO_ERROR("00500002", "用户绑定车牌号异常"),
;
private String value;

View File

@@ -17,7 +17,7 @@ import lombok.NoArgsConstructor;
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class MemberLicensePlateNumberRelation extends BaseEntity
public class MemberLicensePlateNumberRelation
{
private static final long serialVersionUID = 1L;
@@ -28,8 +28,14 @@ public class MemberLicensePlateNumberRelation extends BaseEntity
@Excel(name = "会员id")
private String memberId;
/** 手机号码 */
private String phoneNumber;
/** 车牌号 */
@Excel(name = "车牌号")
private String licensePlateNumber;
/** 创建时间 */
private String createTime;
}

View File

@@ -53,7 +53,6 @@ public class MemberLicensePlateNumberRelationServiceImpl implements IMemberLicen
@Override
public int insertMemberLicensePlateNumberRelation(MemberLicensePlateNumberRelation memberLicensePlateNumberRelation)
{
memberLicensePlateNumberRelation.setCreateTime(DateUtils.getNowDate());
return memberLicensePlateNumberRelationMapper.insertMemberLicensePlateNumberRelation(memberLicensePlateNumberRelation);
}

View File

@@ -7,23 +7,27 @@
<resultMap type="com.jsowell.pile.domain.MemberLicensePlateNumberRelation" id="MemberLicensePlateNumberRelationResult">
<result property="id" column="id" />
<result property="memberId" column="member_id" />
<result property="phoneNumber" column="phone_number" />
<result property="licensePlateNumber" column="license_plate_number" />
<result property="createTime" column="create_time" />
</resultMap>
<sql id="selectMemberLicensePlateNumberRelationVo">
select id, member_id, license_plate_number, create_time from member_license_plate_number_relation
select id, member_id, phone_number, license_plate_number, create_time from member_license_plate_number_relation
</sql>
<sql id="Base_Column_List">
<!--@mbg.generated PileBillingTemplate-->
id, member_id, license_plate_number, create_time
id, member_id, phone_number, license_plate_number, create_time
</sql>
<select id="selectMemberLicensePlateNumberRelationList" parameterType="com.jsowell.pile.domain.MemberLicensePlateNumberRelation" resultMap="MemberLicensePlateNumberRelationResult">
<include refid="selectMemberLicensePlateNumberRelationVo"/>
select
<include refid="Base_Column_List"/>
from member_license_plate_number_relation
<where>
<if test="memberId != null and memberId != ''"> and member_id = #{memberId}</if>
<if test="phoneNumber != null and phoneNumber != ''"> and phone_number = #{phoneNumber}</if>
<if test="licensePlateNumber != null and licensePlateNumber != ''"> and license_plate_number = #{licensePlateNumber}</if>
</where>
</select>
@@ -37,11 +41,13 @@
insert into member_license_plate_number_relation
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="memberId != null">member_id,</if>
<if test="phoneNumber != null">phone_number,</if>
<if test="licensePlateNumber != null">license_plate_number,</if>
<if test="createTime != null">create_time,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="memberId != null">#{memberId},</if>
<if test="phoneNumber != null">#{phoneNumber},</if>
<if test="licensePlateNumber != null">#{licensePlateNumber},</if>
<if test="createTime != null">#{createTime},</if>
</trim>
@@ -51,6 +57,7 @@
update member_license_plate_number_relation
<trim prefix="SET" suffixOverrides=",">
<if test="memberId != null">member_id = #{memberId},</if>
<if test="phoneNumber != null">phone_number = #{phoneNumber},</if>
<if test="licensePlateNumber != null">license_plate_number = #{licensePlateNumber},</if>
<if test="createTime != null">create_time = #{createTime},</if>
</trim>