package com.hys.app.raycoswebapi.mapper.product;

import com.hys.app.framework.database.WebPage;
import com.hys.app.framework.database.mybatisplus.base.BaseMapperX;
import com.hys.app.raycoswebapi.model.dao.product.RaycosStockplusDao;
import com.hys.app.raycoswebapi.model.dao.product.RaycosStockplusDao;
import com.hys.app.raycoswebapi.model.dto.product.StockInfoDto;
import com.hys.app.raycoswebapi.model.dto.product.StockplusDto;

public interface StockplusInfoMapper extends BaseMapperX<RaycosStockplusDao> {
    default WebPage<RaycosStockplusDao> selectPage(StockplusDto params) {
        return lambdaQuery()
                .eqIfPresent(RaycosStockplusDao::getStockId, params.getStockId())
                .eqIfPresent(RaycosStockplusDao::getOriginalSku, params.getOriginalSku())
                .eqIfPresent(RaycosStockplusDao::getStockPicture, params.getStockPicture())
                .eqIfPresent(RaycosStockplusDao::getSalePicture, params.getSalePicture())
                .eqIfPresent(RaycosStockplusDao::getLength, params.getLength())
                .eqIfPresent(RaycosStockplusDao::getWidth, params.getWidth())
                .eqIfPresent(RaycosStockplusDao::getHeight, params.getHeight())
                .eqIfPresent(RaycosStockplusDao::getVolume, params.getVolume())
                .eqIfPresent(RaycosStockplusDao::getWeight, params.getWeight())
                .eqIfPresent(RaycosStockplusDao::getVolumeWeight, params.getVolumeWeight())
                .likeIfPresent(RaycosStockplusDao::getDeclareName, params.getDeclareName())
                .likeIfPresent(RaycosStockplusDao::getDeclareEname, params.getDeclareEname())
                .likeIfPresent(RaycosStockplusDao::getDeclareName, params.getDeclareName())
                .eqIfPresent(RaycosStockplusDao::getDeclareValue, params.getDeclareValue())
                .eqIfPresent(RaycosStockplusDao::getPackageId, params.getPackageId())
                .eqIfPresent(RaycosStockplusDao::getPackageCount, params.getPackageCount())
                .eqIfPresent(RaycosStockplusDao::getCommodityMaterial, params.getCommodityMaterial())
                .eqIfPresent(RaycosStockplusDao::getRemark, params.getRemark())
                .eqIfPresent(RaycosStockplusDao::getCommodityUse, params.getCommodityUse())
                .eqIfPresent(RaycosStockplusDao::getIsLocationPicture, params.getIsLocationPicture())
                .eqIfPresent(RaycosStockplusDao::getNoLiquidCosmetic, params.getNoLiquidCosmetic())
                .eqIfPresent(RaycosStockplusDao::getMagnetic, params.getMagnetic())
                .eqIfPresent(RaycosStockplusDao::getPowder, params.getPowder())
                .eqIfPresent(RaycosStockplusDao::getDeveloperId, params.getDeveloperId())
                .eqIfPresent(RaycosStockplusDao::getDeclareCode, params.getDeclareCode())
                .eqIfPresent(RaycosStockplusDao::getIsPurchaseWeight, params.getIsPurchaseWeight())
                .eqIfPresent(RaycosStockplusDao::getSaleRemark, params.getSaleRemark())
                .eqIfPresent(RaycosStockplusDao::getPurchaseRemark, params.getPurchaseRemark())
                .eqIfPresent(RaycosStockplusDao::getStockDetailImg, params.getStockDetailImg())
                .eqIfPresent(RaycosStockplusDao::getWeightSection, params.getWeightSection())
                .eqIfPresent(RaycosStockplusDao::getIspaste, params.getIspaste())
                .eqIfPresent(RaycosStockplusDao::getVolumeWeightType, params.getVolumeWeightType())
                .eqIfPresent(RaycosStockplusDao::getTempPicture, params.getTempPicture())
                .eqIfPresent(RaycosStockplusDao::getIsGift, params.getIsGift())
                .eqIfPresent(RaycosStockplusDao::getPurchasePackageId, params.getPurchasePackageId())
                .eqIfPresent(RaycosStockplusDao::getFinancial, params.getFinancial())
                .eqIfPresent(RaycosStockplusDao::getExtend, params.getExtend())
                .eqIfPresent(RaycosStockplusDao::getChargedproperty, params.getChargedproperty())
                .eqIfPresent(RaycosStockplusDao::getUpdateTime, params.getUpdateTime())
                .eqIfPresent(RaycosStockplusDao::getTrademarkRegisterNo, params.getTrademarkRegisterNo())
                .eqIfPresent(RaycosStockplusDao::getTrademarkExpireTime, params.getTrademarkExpireTime())
                .eqIfPresent(RaycosStockplusDao::getTrademarkRegisterTime, params.getTrademarkRegisterTime())
                .eqIfPresent(RaycosStockplusDao::getManufacturer, params.getManufacturer())
                .eqIfPresent(RaycosStockplusDao::getProductWarningDays, params.getProductWarningDays())
                .eqIfPresent(RaycosStockplusDao::getIsGoogsExpireManage, params.getIsGoogsExpireManage())
                .eqIfPresent(RaycosStockplusDao::getShelfLifeDays, params.getShelfLifeDays())
                .eqIfPresent(RaycosStockplusDao::getDevAssistant, params.getDevAssistant())
                .eqIfPresent(RaycosStockplusDao::getDutyElement, params.getDutyElement())
                .eqIfPresent(RaycosStockplusDao::getUnitId, params.getUnitId())
                .eqIfPresent(RaycosStockplusDao::getGoodsPackageId, params.getGoodsPackageId())
                .eqIfPresent(RaycosStockplusDao::getInnerPackageNum, params.getInnerPackageNum())
                .eqIfPresent(RaycosStockplusDao::getSaleUrl, params.getSaleUrl())
                .eqIfPresent(RaycosStockplusDao::getPackagingLength, params.getPackagingLength())
                .eqIfPresent(RaycosStockplusDao::getPackagingWidth, params.getPackagingWidth())
                .eqIfPresent(RaycosStockplusDao::getPackagingHeight, params.getPackagingHeight())
                .eqIfPresent(RaycosStockplusDao::getPackagingVolume, params.getPackagingVolume())
                .eqIfPresent(RaycosStockplusDao::getPackagingVolumeweight, params.getPackagingVolumeweight())
                .eqIfPresent(RaycosStockplusDao::getSpecMode, params.getSpecMode())
                .eqIfPresent(RaycosStockplusDao::getOriginCountry, params.getOriginCountry())
                .eqIfPresent(RaycosStockplusDao::getDomesticSource, params.getDomesticSource())
                .eqIfPresent(RaycosStockplusDao::getLevyExemption, params.getLevyExemption())
                .eqIfPresent(RaycosStockplusDao::getIsFlammables, params.getIsFlammables())
                .eqIfPresent(RaycosStockplusDao::getIsKnife, params.getIsKnife())
                .eqIfPresent(RaycosStockplusDao::getIsBospicture, params.getIsBospicture())
                .eqIfPresent(RaycosStockplusDao::getContSign, params.getContSign())
                .orderByDesc(RaycosStockplusDao::getUpdateTime)
                .page(params);
    }

}
