package com.fdkankan.goods.mapper; import com.fdkankan.base.mapper.base.IBaseMapper; import com.fdkankan.common.vo.request.RequestCamera; import com.fdkankan.common.vo.response.ResponseCamera; import com.fdkankan.goods.entity.CameraDetailEntity; import com.fdkankan.goods.provider.CameraProvider; import org.apache.ibatis.annotations.*; import java.math.BigInteger; import java.util.List; @Mapper public interface ICameraDetailMapper extends IBaseMapper { @Select(" SELECT * FROM tb_camera_detail WHERE camera_id = #{cameraId} AND REC_STATUS = 'A' ") CameraDetailEntity findByCameraId(@Param("cameraId") Long cameraId); @Select(" SELECT * FROM tb_camera_detail WHERE user_id = #{userId} AND goods_id = #{goodsId} AND REC_STATUS = 'A' ") List findByUserIdAndGoodId(@Param("userId") Long userId, @Param("goodsId") Long goodsId); @Select(" SELECT * FROM tb_camera_detail WHERE user_id = #{userId} AND goods_id != 4 AND REC_STATUS = 'A' ") List findByUserId(@Param("userId") Long userId); @Update(" UPDATE tb_camera_detail SET user_id = #{userId} WHERE camera_id = #{cameraId} ") void updateUserIdByCameraId(@Param("userId") Long userId, @Param("cameraId") Long cameraId); @Select(" SELECT COUNT(id) FROM tb_camera_detail WHERE agency = #{agentId} AND REC_STATUS = 'A' ") int findCountByAgency(@Param("agentId") String agentId); @SelectProvider(type = CameraProvider.class, method = "queryDetailListByParam") List queryDetailListByParam(RequestCamera param); @SelectProvider(type = CameraProvider.class, method = "queryPageCountByParam") long queryPageCountByParam(RequestCamera param); @SelectProvider(type = CameraProvider.class, method = "queryListByParams") List queryListByParams(RequestCamera param); @Select(" SELECT sum(balance) FROM tb_camera_detail WHERE user_id = #{userId} AND REC_STATUS = 'A' ") long findAllBalanceByUserId(@Param("userId") Long userId); @Update("UPDATE tb_camera_detail SET company_id = NULL WHERE company_id = #{companyId}") int updateCompanyId(Long companyId); @Update("UPDATE tb_camera_detail SET used_space = #{useSpace} WHERE id = #{detailId}") void addUsedSpace(@Param("useSpace")BigInteger useSpace,@Param("detailId")Long detailId); }