package com.doumee.service.business; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.DriverInfo; import com.doumee.dao.dto.DriverLoginRequest; import com.doumee.dao.dto.DriverRegisterRequest; import com.doumee.dao.dto.DriverVerifyRequest; import com.doumee.dao.vo.AccountResponse; import java.util.List; /** * 司机注册信息Service定义 * @author rk * @date 2026/04/08 */ public interface DriverInfoService { /** * 创建 * * @param driverInfo 实体对象 * @return Integer */ Integer create(DriverInfo driverInfo); /** * 主键删除 * * @param id 主键 */ void deleteById(Integer id); /** * 删除 * * @param driverInfo 实体对象 */ void delete(DriverInfo driverInfo); /** * 批量主键删除 * * @param ids 主键集 */ void deleteByIdInBatch(List ids); /** * 主键更新 * * @param driverInfo 实体对象 */ void updateById(DriverInfo driverInfo); /** * 批量主键更新 * * @param driverInfos 实体集 */ void updateByIdInBatch(List driverInfos); /** * 主键查询 * * @param id 主键 * @return DriverInfo */ DriverInfo findById(Integer id); /** * 条件查询单条记录 * * @param driverInfo 实体对象 * @return DriverInfo */ DriverInfo findOne(DriverInfo driverInfo); /** * 条件查询 * * @param driverInfo 实体对象 * @return List */ List findList(DriverInfo driverInfo); /** * 分页查询 * * @param pageWrap 分页对象 * @return PageData */ PageData findPage(PageWrap pageWrap); /** * 条件统计 * * @param driverInfo 实体对象 * @return long */ long count(DriverInfo driverInfo); /** * 司机验证码登录(手机号+短信验证码,无账号自动注册) * * @param request 验证码登录请求 * @return AccountResponse */ AccountResponse register(DriverRegisterRequest request); /** * 发送司机验证码登录验证码 * * @param telephone 手机号 */ void sendRegisterCode(String telephone); /** * 司机手机号+密码登录 * * @param request 登录请求 * @return AccountResponse */ AccountResponse login(DriverLoginRequest request); /** * 提交实名认证(初次提交或驳回后修改) * * @param memberId 会员主键 * @param request 认证请求 */ void submitVerify(Integer memberId, DriverVerifyRequest request); /** * 查询司机实名认证详情 * * @param memberId 会员主键 * @return DriverInfo */ DriverInfo getVerifyDetail(Integer memberId); /** * 审批司机实名认证(管理端) * * @param auditDTO 审批参数 */ void auditVerify(com.doumee.dao.dto.AuditDTO auditDTO); /** * 管理端查询司机详情(含附件图片、车辆类型名称) * * @param id 司机主键 * @return DriverInfo */ DriverInfo getDetail(Integer id); /** * 修改司机状态(启用/禁用) * * @param dto 修改状态请求 */ void changeStatus(com.doumee.dao.dto.ChangeStatusDTO dto); }