package com.zbf.system.service;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zbf.common.annotation.DataSource;
import com.zbf.common.enums.DataSourceType;
import com.zbf.system.domain.RfidQuantityUpdateRequest;
import com.zbf.system.domain.RfidQueryRequest;
import com.zbf.system.domain.TMiStock;
import com.zbf.system.domain.TMiStockUpdate;
import com.zbf.system.domain.vo.TMiStockVo;

/**
 * 库存Service接口
 *
 * @author tony
 * @date 2024-06-12
 */
public interface ITMiStockService extends IService<TMiStock> {


    boolean freezeStockByIds(List<String> ids,String value);

    boolean thawStockByIds(List<String> ids);

    boolean updates(List<String> ids, String value);


    boolean updateDate(List<String> ids, Date value);
    boolean updateShelvesNum(TMiStock tMiStock);

    List<TMiStock> selectTMiStockList(TMiStock tMiStock);



    BigDecimal getTotal(TMiStock tMiStock);

    List<TMiStock> inventoryStatisticsGoods(TMiStock tMiStock);

    List<TMiStock> selectPanGoodsList(TMiStock tMiStock);

    List<String> selectPanTimeLocation();

    int changeLocation(TMiStockUpdate tMiStockUpdate);

    List<TMiStock> selectTMiStockListByCtl(TMiStock tMiStock);

    int changeCtlNo(TMiStockUpdate tMiStockUpdate);

    int splitCtlNo(TMiStockUpdate tMiStockUpdate);

    List<TMiStock> selectCountStockList(TMiStock tMiStock);


    List<TMiStock> overInsured(TMiStock tMiStock);

    List<TMiStock> selectTMiStockLists(TMiStock stock);

    List<TMiStock> select(TMiStock stock);

    List rfid(RfidQueryRequest request);

    int updateRfidQuantity(RfidQuantityUpdateRequest request);
}
