package cn.hnthyy.thmz.service.his;

import cn.hnthyy.thmz.entity.MzException;
import cn.hnthyy.thmz.entity.his.YpBaseYf;
import cn.hnthyy.thmz.entity.thmz.User;
import cn.hnthyy.thmz.vo.YpBaseYfVo;
import cn.hnthyy.thmz.vo.YpOutDetlVo;
import java.util.List;

public interface YpBaseYfService {

    /**
     * 平虚库存
     * @return
     */
    int modifyResetVirtual(String chargeCode, String serial, String groupNo);

    /**
     * 更新药房库存信息
     * @return
     */
    int modifyYpBaseYf(YpBaseYf ypBaseYf);

    /**
     * 查询药房库存信息
     * @param chargeCode
     * @param serial
     * @param groupNo
     * @return
     */
    YpBaseYf queryYpBaseYf(String chargeCode, String serial, String groupNo);

    /**
     * 查询药品药房最大拆零比例
     * @param chargeCode
     * @param groupNo
     * @return
     */
    Double querySplitPercent(String chargeCode,String groupNo);

    /**
     * 药房入库
     * @param ypOutDetlVos
     * @param user
     * @return
     */
    int saveYpBaseYf(List<YpOutDetlVo> ypOutDetlVos, User user)throws MzException;

    /**
     *  模糊查询药品信息
     * @param searchText
     * @param groupNo
     * @return
     */
    List<YpBaseYfVo> queryYpBaseYfLike(String searchText, String groupNo);

    /**
     *  根据编码查询药品信息
     * @param chargeCode
     * @return
     */
    List<YpBaseYfVo> queryYpByChargeCodeAndGroupNo(String chargeCode,String groupNo);
}
