package com.yeqifu.bus.mapper;
import com.yeqifu.bus.entity.Provider;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
/**
*
* InnoDB free: 9216 kB Mapper 接口
*
*
* @author luoyi-
* @since 2019-12-05
*/
public interface ProviderMapper extends BaseMapper {
/**
* 根据供应商id删除商品信息
* @param id
*/
void deleteGoodsByProviderId(@Param("pid") Integer id);
/**
* 根据供应商id删除商品进货信息
* @param id
*/
void deleteInportByProviderId(@Param("pid") Integer id);
/**
* 根据供应商id删除商品退货信息
* @param id
*/
void deleteOutPortByProviderId(@Param("pid") Integer id);
}
// ProviderMapper接口,它在项目的数据持久化层负责处理与供应商(Provider)相关的数据库操作,是连接业务逻辑层和数据库的重要桥梁。
// 该接口继承自BaseMapper,BaseMapper是MyBatis-Plus框架提供的基础通用Mapper接口,通过继承它,ProviderMapper能够复用BaseMapper中定义好的常规数据库操作方法,
// 例如常见的增删改查操作(像插入供应商记录、根据供应商ID查询供应商信息、更新供应商信息以及删除供应商记录等),满足对供应商数据的基本持久化需求。
// 同时,针对供应商业务逻辑中的一些特定操作场景,此接口还自定义了几个额外的方法,用于处理与供应商相关联的数据的删除操作,进一步完善了在涉及供应商相关业务时的数据持久化功能。
// 根据供应商id删除商品信息
// 此方法用于从数据库中删除与指定供应商相关联的商品信息。通过传入的参数id(使用@Param注解将其命名为"pid",便于在对应的SQL语句中清晰地引用该参数),
// 在数据库的商品表(具体表名根据实际数据库设计而定)中,依据与供应商的关联关系(通常通过外键关联,比如商品表中有指向供应商表的供应商ID字段),
// 找到该供应商所对应的商品记录并执行删除操作,以确保数据的一致性。例如,当某个供应商不再合作,需要清理与之相关的商品数据时,可调用该方法。
// 根据供应商id删除商品进货信息
// 其功能是依据传入的供应商id,从数据库的商品进货相关表(可能记录了每次进货的商品、供应商、进货时间等信息的表,具体依业务和数据库设计确定)中,
// 查找并删除与该供应商相关的所有进货记录,避免出现数据冗余或无效的进货数据关联该供应商,比如在供应商信息变更或者合作终止等情况下,用于清理对应的进货历史数据。
// 根据供应商id删除商品退货信息
// 与上述两个删除方法类似,该方法根据传入的供应商id,在数据库的商品退货相关表(比如记录商品退货的时间、数量、退货原因以及对应的供应商等信息的表)中,
// 定位到与该供应商相关的退货记录并进行删除操作,保证数据库中的退货数据能准确反映当前业务状态,防止出现过期或不必要的退货记录与该供应商关联,例如在整理退货数据或者更新供应商合作关系时使用。