/*
 * Copyright ©2023 CJB-CNIT Team. All rights reserved
 */
package com.openhis.web.inventorymanage.mapper;

import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.openhis.web.inventorymanage.dto.ProductDetailPageDto;
import com.openhis.web.inventorymanage.dto.ProductDetailSearchParam;

/**
 * 库存商品明细查询用 mapper
 *
 * @author yuanzs
 * @date 2025-04-25
 */
@Repository
public interface ProductDetailAppMapper {

    /**
     * 查询库存商品明细分页列表
     * 
     * @param page 分页
     * @param queryWrapper 查询条件
     * @param medMedicationDefinition 药品
     * @param admDeviceDefinition 耗材
     * @param lotNumberCost 批号进价
     * @return 库存商品明细分页列表
     */
    Page<ProductDetailPageDto> selectProductDetailsPage(@Param("page") Page<ProductDetailPageDto> page,
        @Param(Constants.WRAPPER) QueryWrapper<ProductDetailSearchParam> queryWrapper,
        @Param("medMedicationDefinition") String medMedicationDefinition,
        @Param("admDeviceDefinition") String admDeviceDefinition, @Param("lotNumberCost") String lotNumberCost);
    /**
     * 查询库存商品明细分页列表，联查数据字典
     *
     * @param page 分页
     * @param queryWrapper 查询条件
     * @param medMedicationDefinition 药品
     * @param admDeviceDefinition 耗材
     * @param lotNumberCost 批号进价
     * @return 库存商品明细分页列表
     */
    Page<ProductDetailPageDto> selectProductDetailsPageX(@Param("page") Page<ProductDetailPageDto> page,
                                                        @Param(Constants.WRAPPER) QueryWrapper<ProductDetailSearchParam> queryWrapper,
                                                        @Param("medMedicationDefinition") String medMedicationDefinition,
                                                        @Param("admDeviceDefinition") String admDeviceDefinition, @Param("lotNumberCost") String lotNumberCost);
}
