新增 用户与车牌绑定关系表与实体类等

This commit is contained in:
DESKTOP-D9QDT1P\JS-ZZA
2023-03-06 13:52:41 +08:00
parent 5581be0088
commit aa0af9996e
9 changed files with 342 additions and 3 deletions

View File

@@ -196,7 +196,7 @@ public class MemberController extends BaseController {
/**
* 通过 memberId 查询用户个人基本信息
* 通过 memberId 查询用户绑定车牌信息
* http://localhost:8080/uniapp/member/selectInfoByMemberId
*
* @return
@@ -225,10 +225,12 @@ public class MemberController extends BaseController {
* @return
*/
@PostMapping("/memberBindingCarNo")
public RestApiResponse<?> memberBindingCarNo(@RequestBody BindingCarNoDTO dto){
public RestApiResponse<?> memberBindingCarNo(HttpServletRequest request, @RequestBody BindingCarNoDTO dto){
logger.info("用户绑定车牌号 param:{}", JSONObject.toJSONString(dto));
RestApiResponse<?> response = null;
try {
String memberId = getMemberIdByAuthorization(request);
dto.setMemberId(memberId);
memberService.memberBindingCarNo(dto);
response = new RestApiResponse<>();
}catch (Exception e){

View File

@@ -241,6 +241,16 @@ public class MemberService {
.build();
checkVerificationCode(registerAndLoginDTO);
memberBasicInfoService.memberBindingCarNo(dto);
// 判断当前车牌号是否已经绑定
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);
}
}
}

View File

@@ -109,6 +109,8 @@ public enum ReturnCodeEnum {
CODE_GET_PERSONAL_PILE_BY_MEMBER_ID_ERROR("00400009", "通过memberId查个人桩列表异常"),
CODE_GET_PERSONAL_PILE_CONNECTOR_INFO_ERROR("00400010", "获取个人桩枪口实时数据异常"),
CODE_THIS_CARNO_HAS_BEEN_BINGDING("00500001", "当前车牌号已经绑定,请检查!"),
;
private String value;

View File

@@ -0,0 +1,35 @@
package com.jsowell.pile.domain;
import com.jsowell.common.annotation.Excel;
import com.jsowell.common.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 用户车牌对应关系对象 member_license_plate_number_relation
*
* @author jsowell
* @date 2023-03-06
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class MemberLicensePlateNumberRelation extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 主键 */
private Integer id;
/** 会员id */
@Excel(name = "会员id")
private String memberId;
/** 车牌号 */
@Excel(name = "车牌号")
private String licensePlateNumber;
}

View File

@@ -10,6 +10,9 @@ import lombok.Data;
*/
@Data
public class BindingCarNoDTO {
private String memberId;
/**
* 手机号码
*/

View File

@@ -0,0 +1,61 @@
package com.jsowell.pile.mapper;
import java.util.List;
import com.jsowell.pile.domain.MemberLicensePlateNumberRelation;
/**
* 用户车牌对应关系Mapper接口
*
* @author jsowell
* @date 2023-03-06
*/
public interface MemberLicensePlateNumberRelationMapper
{
/**
* 查询用户车牌对应关系
*
* @param id 用户车牌对应关系主键
* @return 用户车牌对应关系
*/
public MemberLicensePlateNumberRelation selectMemberLicensePlateNumberRelationById(Integer id);
/**
* 查询用户车牌对应关系列表
*
* @param memberLicensePlateNumberRelation 用户车牌对应关系
* @return 用户车牌对应关系集合
*/
public List<MemberLicensePlateNumberRelation> selectMemberLicensePlateNumberRelationList(MemberLicensePlateNumberRelation memberLicensePlateNumberRelation);
/**
* 新增用户车牌对应关系
*
* @param memberLicensePlateNumberRelation 用户车牌对应关系
* @return 结果
*/
public int insertMemberLicensePlateNumberRelation(MemberLicensePlateNumberRelation memberLicensePlateNumberRelation);
/**
* 修改用户车牌对应关系
*
* @param memberLicensePlateNumberRelation 用户车牌对应关系
* @return 结果
*/
public int updateMemberLicensePlateNumberRelation(MemberLicensePlateNumberRelation memberLicensePlateNumberRelation);
/**
* 删除用户车牌对应关系
*
* @param id 用户车牌对应关系主键
* @return 结果
*/
public int deleteMemberLicensePlateNumberRelationById(Integer id);
/**
* 批量删除用户车牌对应关系
*
* @param ids 需要删除的数据主键集合
* @return 结果
*/
public int deleteMemberLicensePlateNumberRelationByIds(Integer[] ids);
}

View File

@@ -0,0 +1,61 @@
package com.jsowell.pile.service;
import java.util.List;
import com.jsowell.pile.domain.MemberLicensePlateNumberRelation;
/**
* 用户车牌对应关系Service接口
*
* @author jsowell
* @date 2023-03-06
*/
public interface IMemberLicensePlateNumberRelationService
{
/**
* 查询用户车牌对应关系
*
* @param id 用户车牌对应关系主键
* @return 用户车牌对应关系
*/
public MemberLicensePlateNumberRelation selectMemberLicensePlateNumberRelationById(Integer id);
/**
* 查询用户车牌对应关系列表
*
* @param memberLicensePlateNumberRelation 用户车牌对应关系
* @return 用户车牌对应关系集合
*/
public List<MemberLicensePlateNumberRelation> selectMemberLicensePlateNumberRelationList(MemberLicensePlateNumberRelation memberLicensePlateNumberRelation);
/**
* 新增用户车牌对应关系
*
* @param memberLicensePlateNumberRelation 用户车牌对应关系
* @return 结果
*/
public int insertMemberLicensePlateNumberRelation(MemberLicensePlateNumberRelation memberLicensePlateNumberRelation);
/**
* 修改用户车牌对应关系
*
* @param memberLicensePlateNumberRelation 用户车牌对应关系
* @return 结果
*/
public int updateMemberLicensePlateNumberRelation(MemberLicensePlateNumberRelation memberLicensePlateNumberRelation);
/**
* 批量删除用户车牌对应关系
*
* @param ids 需要删除的用户车牌对应关系主键集合
* @return 结果
*/
public int deleteMemberLicensePlateNumberRelationByIds(Integer[] ids);
/**
* 删除用户车牌对应关系信息
*
* @param id 用户车牌对应关系主键
* @return 结果
*/
public int deleteMemberLicensePlateNumberRelationById(Integer id);
}

View File

@@ -0,0 +1,95 @@
package com.jsowell.pile.service.impl;
import java.util.List;
import com.jsowell.common.util.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.jsowell.pile.mapper.MemberLicensePlateNumberRelationMapper;
import com.jsowell.pile.domain.MemberLicensePlateNumberRelation;
import com.jsowell.pile.service.IMemberLicensePlateNumberRelationService;
/**
* 用户车牌对应关系Service业务层处理
*
* @author jsowell
* @date 2023-03-06
*/
@Service
public class MemberLicensePlateNumberRelationServiceImpl implements IMemberLicensePlateNumberRelationService
{
@Autowired
private MemberLicensePlateNumberRelationMapper memberLicensePlateNumberRelationMapper;
/**
* 查询用户车牌对应关系
*
* @param id 用户车牌对应关系主键
* @return 用户车牌对应关系
*/
@Override
public MemberLicensePlateNumberRelation selectMemberLicensePlateNumberRelationById(Integer id)
{
return memberLicensePlateNumberRelationMapper.selectMemberLicensePlateNumberRelationById(id);
}
/**
* 查询用户车牌对应关系列表
*
* @param memberLicensePlateNumberRelation 用户车牌对应关系
* @return 用户车牌对应关系
*/
@Override
public List<MemberLicensePlateNumberRelation> selectMemberLicensePlateNumberRelationList(MemberLicensePlateNumberRelation memberLicensePlateNumberRelation)
{
return memberLicensePlateNumberRelationMapper.selectMemberLicensePlateNumberRelationList(memberLicensePlateNumberRelation);
}
/**
* 新增用户车牌对应关系
*
* @param memberLicensePlateNumberRelation 用户车牌对应关系
* @return 结果
*/
@Override
public int insertMemberLicensePlateNumberRelation(MemberLicensePlateNumberRelation memberLicensePlateNumberRelation)
{
memberLicensePlateNumberRelation.setCreateTime(DateUtils.getNowDate());
return memberLicensePlateNumberRelationMapper.insertMemberLicensePlateNumberRelation(memberLicensePlateNumberRelation);
}
/**
* 修改用户车牌对应关系
*
* @param memberLicensePlateNumberRelation 用户车牌对应关系
* @return 结果
*/
@Override
public int updateMemberLicensePlateNumberRelation(MemberLicensePlateNumberRelation memberLicensePlateNumberRelation)
{
return memberLicensePlateNumberRelationMapper.updateMemberLicensePlateNumberRelation(memberLicensePlateNumberRelation);
}
/**
* 批量删除用户车牌对应关系
*
* @param ids 需要删除的用户车牌对应关系主键
* @return 结果
*/
@Override
public int deleteMemberLicensePlateNumberRelationByIds(Integer[] ids)
{
return memberLicensePlateNumberRelationMapper.deleteMemberLicensePlateNumberRelationByIds(ids);
}
/**
* 删除用户车牌对应关系信息
*
* @param id 用户车牌对应关系主键
* @return 结果
*/
@Override
public int deleteMemberLicensePlateNumberRelationById(Integer id)
{
return memberLicensePlateNumberRelationMapper.deleteMemberLicensePlateNumberRelationById(id);
}
}

View File

@@ -0,0 +1,70 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.jsowell.pile.mapper.MemberLicensePlateNumberRelationMapper">
<resultMap type="com.jsowell.pile.domain.MemberLicensePlateNumberRelation" id="MemberLicensePlateNumberRelationResult">
<result property="id" column="id" />
<result property="memberId" column="member_id" />
<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
</sql>
<sql id="Base_Column_List">
<!--@mbg.generated PileBillingTemplate-->
id, member_id, license_plate_number, create_time
</sql>
<select id="selectMemberLicensePlateNumberRelationList" parameterType="com.jsowell.pile.domain.MemberLicensePlateNumberRelation" resultMap="MemberLicensePlateNumberRelationResult">
<include refid="selectMemberLicensePlateNumberRelationVo"/>
<where>
<if test="memberId != null and memberId != ''"> and member_id = #{memberId}</if>
<if test="licensePlateNumber != null and licensePlateNumber != ''"> and license_plate_number = #{licensePlateNumber}</if>
</where>
</select>
<select id="selectMemberLicensePlateNumberRelationById" parameterType="Integer" resultMap="MemberLicensePlateNumberRelationResult">
<include refid="selectMemberLicensePlateNumberRelationVo"/>
where id = #{id}
</select>
<insert id="insertMemberLicensePlateNumberRelation" parameterType="com.jsowell.pile.domain.MemberLicensePlateNumberRelation" useGeneratedKeys="true" keyProperty="id">
insert into member_license_plate_number_relation
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="memberId != null">member_id,</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="licensePlateNumber != null">#{licensePlateNumber},</if>
<if test="createTime != null">#{createTime},</if>
</trim>
</insert>
<update id="updateMemberLicensePlateNumberRelation" parameterType="com.jsowell.pile.domain.MemberLicensePlateNumberRelation">
update member_license_plate_number_relation
<trim prefix="SET" suffixOverrides=",">
<if test="memberId != null">member_id = #{memberId},</if>
<if test="licensePlateNumber != null">license_plate_number = #{licensePlateNumber},</if>
<if test="createTime != null">create_time = #{createTime},</if>
</trim>
where id = #{id}
</update>
<delete id="deleteMemberLicensePlateNumberRelationById" parameterType="Integer">
delete from member_license_plate_number_relation where id = #{id}
</delete>
<delete id="deleteMemberLicensePlateNumberRelationByIds" parameterType="String">
delete from member_license_plate_number_relation where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
</mapper>