xuhy
2026-04-23 b6eacbb6fc7658cabb51533692a9b9f5cb1e316b
Merge branch '1.0' of http://120.76.84.145:10101/gitblit/r/java/Robotaxi into 1.0
6个文件已添加
10个文件已修改
264 ■■■■■ 已修改文件
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/model/vo/XpAppUserCouponListVo.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/XpAppUserCouponServiceImpl.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-account-boot/src/main/resources/mapper/account/XpAppUserCouponMapper.xml 1 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-api/src/main/java/com/xiaopeng/api/model/maintenance/XpCruiseCheckInRule.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-api/src/main/java/com/xiaopeng/api/model/maintenance/XpCruiseCheckInRuleLocation.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/controller/XpCruiseCheckInRuleController.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/dto/XpCruiseCheckInRuleDto.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/dto/XpCruiseCheckInRuleListPageDto.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/mapper/XpCruiseCheckInRuleMapper.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/mapper/XpCruiseCheckInRuleOperationsUserMapper.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/IXpCruiseCheckInRuleService.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpCruiseCheckInRuleServiceImpl.java 77 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/vo/XpCruiseCheckInRuleListPage.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-maintenance-boot/src/main/resources/mapper/maintenance/XpCruiseCheckInRuleLocationMapper.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-maintenance-boot/src/main/resources/mapper/maintenance/XpCruiseCheckInRuleMapper.xml 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-maintenance-boot/src/main/resources/mapper/maintenance/XpCruiseCheckInRuleOperationsUserMapper.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/model/vo/XpAppUserCouponListVo.java
@@ -7,6 +7,7 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
@@ -22,6 +23,9 @@
    @ApiModelProperty(value = "用户id 根据手机号获取")
    private Long appUserId;
    @ApiModelProperty("条件金额")
    private BigDecimal conditionAmount;
    @ApiModelProperty(value = "优惠券名称")
    private String title;
@@ -57,4 +61,6 @@
    @ApiModelProperty(value = "活动名称")
    private String acticityName;
    private Long couponid;
}
xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/XpAppUserCouponServiceImpl.java
@@ -84,9 +84,16 @@
    public XpAppUserCouponVo userCouponList(XpUserCouponListQuery query, String uid) {
        Page<XpAppUserCouponListVo> page = new Page<>(query.getPageNum(), query.getPageSize());
        Page<XpAppUserCouponListVo> list = baseMapper.userCouponList(page, query, Long.valueOf(uid));
        List<XpAppUserCouponListVo> records = list.getRecords();
        for (XpAppUserCouponListVo record : records) {
            XpCoupon data = xpCouponClient.getCouponById(record.getCouponid()).getData();
            if(null != data){
                record.setConditionAmount(data.getConditionalAmount());
            }
        }
        XpAppUserCouponVo vo = new XpAppUserCouponVo();
        vo.setTotal((int) page.getTotal());
        vo.setList(list.getRecords());
        vo.setList(records);
        return vo;
    }
xp-robotaxi-account-boot/src/main/resources/mapper/account/XpAppUserCouponMapper.xml
@@ -35,6 +35,7 @@
    <select id="userCouponList" resultType="com.xiaopeng.account.model.vo.XpAppUserCouponListVo">
        select t.*,t.status  from (
        SELECT id as couponId,
        coupon_id as couponid,
        coupon_name as title,
        money as discountAmount,
        use_time as useTime,
xp-robotaxi-api/src/main/java/com/xiaopeng/api/model/maintenance/XpCruiseCheckInRule.java
@@ -5,6 +5,7 @@
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.xiaopeng.common.core.web.domain.BaseModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
@@ -24,20 +25,24 @@
     * 规则名称
     */
    @TableField("name")
    @ApiModelProperty(value = "规则名称")
    private String name;
    /**
     * 任务开始时间
     */
    @TableField("start_time")
    @ApiModelProperty(value = "任务开始时间")
    private LocalDateTime startTime;
    /**
     * 任务结束时间
     */
    @TableField("end_time")
    @ApiModelProperty(value = "任务结束时间")
    private LocalDateTime endTime;
    /**
     * 循环方式(0=不循环,1=每天循环)
     */
    @TableField("cyclic_mode")
    @ApiModelProperty("循环方式(0=不循环,1=每天循环)")
    private Integer cyclicMode;
}
xp-robotaxi-api/src/main/java/com/xiaopeng/api/model/maintenance/XpCruiseCheckInRuleLocation.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
@@ -20,20 +21,24 @@
     * 打卡点位id
     */
    @TableField("check_location_id")
    @ApiModelProperty(value = "打卡点位id")
    private Long checkLocationId;
    /**
     * 打卡开始时段
     */
    @TableField("start_time")
    @ApiModelProperty(value = "打卡开始时段")
    private String startTime;
    /**
     * 打卡结束时段
     */
    @TableField("end_time")
    @ApiModelProperty(value = "打卡结束时段")
    private String endTime;
    /**
     * 打卡顺序
     */
    @TableField("sort")
    @ApiModelProperty(value = "打卡顺序")
    private Integer sort;
}
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/controller/XpCruiseCheckInRuleController.java
@@ -1,13 +1,17 @@
package com.xiaopeng.maintenance.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.xiaopeng.api.model.maintenance.XpCruiseCheckInRecord;
import com.xiaopeng.api.model.maintenance.XpCruiseCheckInRule;
import com.xiaopeng.api.model.operation.SysOperLog;
import com.xiaopeng.api.vo.account.LoginOperationUser;
import com.xiaopeng.common.core.domain.R;
import com.xiaopeng.common.core.utils.poi.ExcelUtil;
import com.xiaopeng.common.core.web.page.PageInfo;
import com.xiaopeng.common.security.service.TokenService;
import com.xiaopeng.maintenance.dto.XpCruiseCheckInRuleDto;
import com.xiaopeng.maintenance.dto.XpCruiseCheckInRuleListPageDto;
import com.xiaopeng.maintenance.model.vo.AppXpCruiseCheckInLocationVo;
import com.xiaopeng.maintenance.model.vo.AppXpCruiseCheckInRuleVo;
import com.xiaopeng.maintenance.model.vo.CheckInMessageVo;
@@ -16,6 +20,7 @@
import com.xiaopeng.maintenance.service.IXpCruiseCheckInRuleService;
import com.xiaopeng.maintenance.vo.XpCruiseCheckInRecordQuery;
import com.xiaopeng.maintenance.vo.XpCruiseCheckInRecordVO;
import com.xiaopeng.maintenance.vo.XpCruiseCheckInRuleListPage;
import com.xiaopeng.maintenance.vo.XpCruiseCheckInStatisticsQuery;
import com.xiaopeng.maintenance.vo.XpCruiseCheckInStatisticsVO;
import io.swagger.annotations.ApiImplicitParam;
@@ -99,6 +104,33 @@
        return R.ok(cruiseCheckInRecordInfo);
    }
    @ApiOperation(value = "查询巡游打卡规则列表", tags = {"管理后台-巡游打卡规则管理"})
    @PostMapping("/maintenance-admin/api/v1/cruiseCheckInRecord/getXpCruiseCheckInRuleListPage")
    public R<Page<XpCruiseCheckInRuleListPage>> getXpCruiseCheckInRuleListPage(XpCruiseCheckInRuleListPageDto dto){
        Page<XpCruiseCheckInRuleListPage> pageInfo = PageInfo.of(dto.getPageNum(), dto.getPageSize());
        List<XpCruiseCheckInRuleListPage> xpCruiseCheckInRuleListPage = xpCruiseCheckInRuleService.getXpCruiseCheckInRuleListPage(pageInfo, dto);
        pageInfo.setRecords(xpCruiseCheckInRuleListPage);
        return R.ok(pageInfo);
    }
    @ApiOperation(value = "添加巡游打卡规则", tags = {"管理后台-巡游打卡规则管理"})
    @PostMapping("/maintenance-admin/api/v1/cruiseCheckInRecord/addXpCruiseCheckInRule")
    public R<?> addXpCruiseCheckInRule(@RequestBody XpCruiseCheckInRuleDto dto){
        xpCruiseCheckInRuleService.addXpCruiseCheckInRule(dto);
        return R.ok();
    }
    @ApiOperation(value = "删除巡游打卡规则", tags = {"管理后台-巡游打卡规则管理"})
    @PostMapping("/maintenance-admin/api/v1/cruiseCheckInRecord/delXpCruiseCheckInRule/{id}")
    public R<?> delXpCruiseCheckInRule(@PathVariable("id") Integer id){
        xpCruiseCheckInRuleService.removeById(id);
        return R.ok();
    }
    @ApiOperation(value = "查询巡游打卡记录列表", tags = {"管理后台-巡游打卡管理"})
    @PostMapping("/maintenance-admin/api/v1/cruiseCheckInRecord/pageList")
    public R<PageInfo<XpCruiseCheckInRecordVO>> pageList(@RequestBody XpCruiseCheckInRecordQuery query) {
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/dto/XpCruiseCheckInRuleDto.java
New file
@@ -0,0 +1,18 @@
package com.xiaopeng.maintenance.dto;
import com.xiaopeng.api.model.maintenance.XpCruiseCheckInRule;
import com.xiaopeng.api.model.maintenance.XpCruiseCheckInRuleLocation;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
@ApiModel
public class XpCruiseCheckInRuleDto extends XpCruiseCheckInRule {
    @ApiModelProperty("关联人id")
    private Long relationId;
    @ApiModelProperty("打卡点位id")
    private List<XpCruiseCheckInRuleLocation> points;
}
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/dto/XpCruiseCheckInRuleListPageDto.java
New file
@@ -0,0 +1,21 @@
package com.xiaopeng.maintenance.dto;
import com.xiaopeng.common.core.web.page.BasePage;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
@ApiModel
public class XpCruiseCheckInRuleListPageDto extends BasePage {
    @ApiModelProperty("规则名称")
    private String name;
    @ApiModelProperty("执行人员名称")
    private String userName;
    @ApiModelProperty("手机号")
    private String phoneNumber;
    private List<Integer> ids;
}
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/mapper/XpCruiseCheckInRuleMapper.java
@@ -1,10 +1,23 @@
package com.xiaopeng.maintenance.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.xiaopeng.api.model.maintenance.XpCruiseCheckInRule;
import com.xiaopeng.maintenance.dto.XpCruiseCheckInRuleListPageDto;
import com.xiaopeng.maintenance.model.vo.AppXpCruiseCheckInRuleVo;
import com.xiaopeng.maintenance.vo.XpCruiseCheckInRuleListPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface XpCruiseCheckInRuleMapper extends BaseMapper<XpCruiseCheckInRule> {
    /**
     * 获取巡游打卡规则额列表
     * @param pageInfo
     * @param dto
     * @return
     */
    List<XpCruiseCheckInRuleListPage> getXpCruiseCheckInRuleListPage(Page<XpCruiseCheckInRuleListPage> pageInfo, XpCruiseCheckInRuleListPageDto dto);
}
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/mapper/XpCruiseCheckInRuleOperationsUserMapper.java
New file
@@ -0,0 +1,7 @@
package com.xiaopeng.maintenance.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xiaopeng.api.model.maintenance.XpCruiseCheckInRuleOperationsUser;
public interface XpCruiseCheckInRuleOperationsUserMapper extends BaseMapper<XpCruiseCheckInRuleOperationsUser> {
}
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/IXpCruiseCheckInRuleService.java
@@ -1,12 +1,16 @@
package com.xiaopeng.maintenance.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xiaopeng.api.model.maintenance.XpCruiseCheckInRecord;
import com.xiaopeng.api.model.maintenance.XpCruiseCheckInRule;
import com.xiaopeng.maintenance.dto.XpCruiseCheckInRuleDto;
import com.xiaopeng.maintenance.dto.XpCruiseCheckInRuleListPageDto;
import com.xiaopeng.maintenance.model.vo.AppXpCruiseCheckInLocationVo;
import com.xiaopeng.maintenance.model.vo.AppXpCruiseCheckInRuleVo;
import com.xiaopeng.maintenance.model.vo.CheckInMessageVo;
import com.xiaopeng.maintenance.model.vo.RealTimePositionVo;
import com.xiaopeng.maintenance.vo.XpCruiseCheckInRuleListPage;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
@@ -55,4 +59,20 @@
     * @return
     */
    XpCruiseCheckInRecord getCruiseCheckInRecordInfo(Integer ruleId, Long locationId, Long uid);
    /**
     * 获取巡游打卡规则列表数据
     * @param pageInfo
     * @param dto
     * @return
     */
    List<XpCruiseCheckInRuleListPage> getXpCruiseCheckInRuleListPage(Page<XpCruiseCheckInRuleListPage> pageInfo, XpCruiseCheckInRuleListPageDto dto);
    /**
     * 新增巡游打卡规则
     * @param dto
     */
    void addXpCruiseCheckInRule(XpCruiseCheckInRuleDto dto);
}
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/service/impl/XpCruiseCheckInRuleServiceImpl.java
@@ -1,17 +1,24 @@
package com.xiaopeng.maintenance.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.conditions.query.QueryChainWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xiaopeng.api.model.maintenance.XpCheckLocation;
import com.xiaopeng.api.model.maintenance.XpCruiseCheckInRecord;
import com.xiaopeng.api.model.maintenance.XpCruiseCheckInRule;
import com.xiaopeng.api.model.maintenance.XpCruiseCheckInRuleLocation;
import com.xiaopeng.api.feignClient.account.XpOperationUserClient;
import com.xiaopeng.api.feignClient.account.XpOperationsUserClient;
import com.xiaopeng.api.model.account.XpOperationsUser;
import com.xiaopeng.api.model.maintenance.*;
import com.xiaopeng.common.core.exception.ServiceException;
import com.xiaopeng.common.core.utils.GeodesyUtil;
import com.xiaopeng.common.core.utils.StringUtils;
import com.xiaopeng.common.redis.service.RedisService;
import com.xiaopeng.maintenance.constant.I18nKeyConstant;
import com.xiaopeng.maintenance.dto.XpCruiseCheckInRuleDto;
import com.xiaopeng.maintenance.dto.XpCruiseCheckInRuleListPageDto;
import com.xiaopeng.maintenance.mapper.XpCruiseCheckInRuleMapper;
import com.xiaopeng.maintenance.mapper.XpCruiseCheckInRuleOperationsUserMapper;
import com.xiaopeng.maintenance.model.vo.AppXpCruiseCheckInLocationVo;
import com.xiaopeng.maintenance.model.vo.AppXpCruiseCheckInRuleVo;
import com.xiaopeng.maintenance.model.vo.CheckInMessageVo;
@@ -20,6 +27,8 @@
import com.xiaopeng.maintenance.service.IXpCruiseCheckInRecordService;
import com.xiaopeng.maintenance.service.IXpCruiseCheckInRuleLocationService;
import com.xiaopeng.maintenance.service.IXpCruiseCheckInRuleService;
import com.xiaopeng.maintenance.vo.XpCruiseCheckInRuleListPage;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -49,6 +58,12 @@
    private IXpCheckLocationService xpCheckLocationService;
    @Autowired
    private RedisService redisService;
    @Resource
    private XpOperationUserClient xpOperationsUserClient;
    @Resource
    private XpCruiseCheckInRuleOperationsUserMapper xpCruiseCheckInRuleOperationsUserMapper;
    @Override
@@ -245,4 +260,58 @@
                .eq(XpCruiseCheckInRecord::getOperationsUserId, uid)
                .last(" and DATE(check_in_time) = DATE(NOW())"));
    }
    /**
     * 获取巡游打卡规则列表
     * @param pageInfo
     * @param dto
     * @return
     */
    @Override
    public List<XpCruiseCheckInRuleListPage> getXpCruiseCheckInRuleListPage(Page<XpCruiseCheckInRuleListPage> pageInfo, XpCruiseCheckInRuleListPageDto dto) {
        List<Long> ids = new ArrayList<>();
        if(StringUtils.isNotEmpty(dto.getUserName())){
            List<XpOperationsUser> data = xpOperationsUserClient.listByName(dto.getUserName()).getData();
            ids.addAll(data.stream().map(XpOperationsUser::getId).collect(Collectors.toList()));
        }
        if(StringUtils.isNotEmpty(dto.getPhoneNumber())){
            List<XpOperationsUser> data = xpOperationsUserClient.getByPhoneNumber(dto.getPhoneNumber()).getData();
            ids.addAll(data.stream().map(XpOperationsUser::getId).collect(Collectors.toList()));
        }
        if(!list().isEmpty()){
            List<XpCruiseCheckInRuleOperationsUser> operationsUserId = xpCruiseCheckInRuleOperationsUserMapper.selectList(new QueryWrapper<XpCruiseCheckInRuleOperationsUser>().in("operations_user_id", ids));
            List<Integer> ruleIds = operationsUserId.stream().map(XpCruiseCheckInRuleOperationsUser::getCruiseCheckInRuleId).collect(Collectors.toList());
            dto.setIds(ruleIds);
        }
        List<XpCruiseCheckInRuleListPage> xpCruiseCheckInRuleListPage = this.baseMapper.getXpCruiseCheckInRuleListPage(pageInfo, dto);
        return xpCruiseCheckInRuleListPage;
    }
    /**
     * 新增巡游打卡规则
     * @param dto
     */
    @Override
    public void addXpCruiseCheckInRule(XpCruiseCheckInRuleDto dto) {
        XpCruiseCheckInRule one = this.getOne(new QueryWrapper<XpCruiseCheckInRule>().like("name", dto.getName()).eq("is_deleted", 0));
        if(null != one){
            throw new ServiceException("巡游打卡规则名称已存在");
        }
        XpCruiseCheckInRule xpCruiseCheckInRule = new XpCruiseCheckInRule();
        BeanUtils.copyProperties(dto, xpCruiseCheckInRule);
        xpCruiseCheckInRule.setDeleted(false);
        this.save(xpCruiseCheckInRule);
        dto.getPoints().forEach(s->{
            s.setCruiseCheckInRuleId(xpCruiseCheckInRule.getId());
        });
        xpCruiseCheckInRuleLocationService.saveBatch(dto.getPoints());
        Long relationId = dto.getRelationId();
        XpCruiseCheckInRuleOperationsUser xpCruiseCheckInRuleOperationsUser = new XpCruiseCheckInRuleOperationsUser();
        xpCruiseCheckInRuleOperationsUser.setCruiseCheckInRuleId(xpCruiseCheckInRule.getId());
        xpCruiseCheckInRuleOperationsUser.setOperationsUserId(relationId);
        xpCruiseCheckInRuleOperationsUserMapper.insert(xpCruiseCheckInRuleOperationsUser);
    }
}
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/vo/XpCruiseCheckInRuleListPage.java
New file
@@ -0,0 +1,22 @@
package com.xiaopeng.maintenance.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel
public class XpCruiseCheckInRuleListPage {
    @ApiModelProperty("规则id")
    private Long id;
    @ApiModelProperty("打卡规则名称")
    private String name;
    @ApiModelProperty("关联点位数量")
    private Integer pointNum;
    @ApiModelProperty("执行人员")
    private String userName;
    @ApiModelProperty("手机号")
    private String phone;
    @ApiModelProperty("人员角色")
    private String roleName;
}
xp-robotaxi-maintenance-boot/src/main/resources/mapper/maintenance/XpCruiseCheckInRuleLocationMapper.xml
New file
@@ -0,0 +1,7 @@
<?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.xiaopeng.maintenance.mapper.XpCruiseCheckInRuleLocationMapper">
</mapper>
xp-robotaxi-maintenance-boot/src/main/resources/mapper/maintenance/XpCruiseCheckInRuleMapper.xml
@@ -1,4 +1,18 @@
<?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.xiaopeng.maintenance.mapper.XpCruiseCheckInRuleMapper">
    <select id="getXpCruiseCheckInRuleListPage" resultType="com.xiaopeng.maintenance.vo.XpCruiseCheckInRuleListPage">
        select id,`name` from xp_cruise_check_in_rule where is_deleted = 0
        <if test="null != dto.name and dto.name != ''">
            and `name` like concat('%', #{dto.name}, '%')
        </if>
        <if test="null != dto.ids and dto.ids.size() > 0">
            <foreach collection="dto.ids" item="id" open="and id in (" separator="," close=")">
                #{id}
            </foreach>
        </if>
        order by create_time desc
    </select>
</mapper>
xp-robotaxi-maintenance-boot/src/main/resources/mapper/maintenance/XpCruiseCheckInRuleOperationsUserMapper.xml
New file
@@ -0,0 +1,7 @@
<?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.xiaopeng.maintenance.mapper.XpCruiseCheckInRuleOperationsUserMapper">
</mapper>