package com.doumee.service.business; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.ShopInfo; import com.doumee.dao.business.model.Member; import com.doumee.dao.dto.AuditDTO; import com.doumee.dao.dto.ChangeStatusDTO; import com.doumee.dao.dto.ResetPasswordDTO; import com.doumee.dao.dto.ShopApplyDTO; import com.doumee.dao.dto.ShopUpdateDTO; import com.doumee.dao.vo.ShopDetailVO; import java.util.List; /** * 门店信息Service定义 * @author rk * @date 2026/04/08 */ public interface ShopInfoService { /** * 创建 * * @param shopInfo 实体对象 * @return Integer */ Integer create(ShopInfo shopInfo); /** * 主键删除 * * @param id 主键 */ void deleteById(Integer id); /** * 删除 * * @param shopInfo 实体对象 */ void delete(ShopInfo shopInfo); /** * 批量主键删除 * * @param ids 主键集 */ void deleteByIdInBatch(List ids); /** * 主键更新 * * @param shopInfo 实体对象 */ void updateById(ShopInfo shopInfo); /** * 批量主键更新 * * @param shopInfos 实体集 */ void updateByIdInBatch(List shopInfos); /** * 主键查询 * * @param id 主键 * @return ShopInfo */ ShopInfo findById(Integer id); /** * 条件查询单条记录 * * @param shopInfo 实体对象 * @return ShopInfo */ ShopInfo findOne(ShopInfo shopInfo); /** * 条件查询 * * @param shopInfo 实体对象 * @return List */ List findList(ShopInfo shopInfo); /** * 分页查询 * * @param pageWrap 分页对象 * @return PageData */ PageData findPage(PageWrap pageWrap); /** * 条件统计 * * @param shopInfo 实体对象 * @return long */ long count(ShopInfo shopInfo); /** * 门店入驻申请/修改 * @param request 申请请求 * @param member 当前登录会员 */ void applyShop(ShopApplyDTO request, Member member); /** * 查询门店详情(含附件) * @param shopId 门店主键 * @return 门店详情 */ ShopDetailVO getShopDetail(Integer shopId); /** * 查询当前会员的门店信息 * @param memberId 会员主键 * @return 门店详情,无则返回null */ ShopDetailVO getMyShop(Integer memberId); /** * 审批门店申请 * @param auditDTO 审批请求 */ void auditShop(AuditDTO auditDTO); /** * 修改门店状态(启用/禁用) * @param dto 修改状态请求 */ void changeStatus(ChangeStatusDTO dto); /** * 重置门店密码(手机号后6位 + @123456) * @param dto 重置密码请求 */ void resetPassword(ResetPasswordDTO dto); /** * 后台修改门店信息 * @param dto 修改请求 */ void updateShop(ShopUpdateDTO dto); }