SiChuanShengErZhong8/MasaBlazorApp3/DataAccess/Dao/IChannelListDao.cs

105 lines
4.7 KiB
C#

using System;
using MasaBlazorApp3.Pojo;
using MasaBlazorApp3.Pojo.Vo;
namespace MasaBlazorApp3.DataAccess.Dao
{
public interface IChannelListDao
{
public Task<PageData<ChannelStock>> GetAllChannelList(int DrawerType, string drugName, int? take, int? skip);
public Task<List<ChannelStock>> GetChannelStockByDrugId(string DrugId);
public Task<List<ChannelList>> GetChannelListByDrawerNo(int DrawerNo);
public Task<List<ChannelStock>> GetChannelStockByDrawerNo(int DrawerNo, int Quantity = 0);
public Task<List<ChannelStock>> GetAllDrugChannelStock();
public Task<List<ChannelList>> GetAllDrugChannelList();
public Task<bool> DrawerOperationFinish(List<ChannelStock> Stocks, int type,BoxModel boxNum,List<ChannelList> channelLists);
public Task<bool> UnBind(string id);
public Task<bool> Bind(ChannelStock Stock);
Task<PageMultiData<ChannelStock,DrugInfo>> GetAllChannelListWithDrug(int DrawerType, string drugName, int? take, int? skip);
Task<ChannelStockWithDrawerCount<ChannelStock>> GetChannelStockByDrawerNoWithDrawers(int DrawerNo, int Quantity = 0);
//盘点
public Task<bool> DrawerCheckFinish(List<ChannelStock> Stocks);
//抽屉获取库存数据--药品绑定
Task<ChannelStockWithDrawerCount<ChannelStock>> GetChannelStockByBiaoDing(int DrawerNo, int Quantity=0);
//手术室药盒获取绑定数据
Task<PageMultiData<ChannelList, Plan>> GetAllChannelListWithPlan(int? take, int? skip);
/// <summary>
/// 手术室药盒绑定套餐
/// </summary>
/// <returns></returns>
Task<bool> BindBox(ChannelList list, Plan plan);
/// <summary>
/// 手术室药盒绑定套餐
/// </summary>
/// <returns></returns>
Task<bool> BindBox(ChannelList channelList);
/// <summary>
/// 手术室药盒解绑套餐
/// </summary>
/// <param name="list"></param>
/// <returns></returns>
Task<bool> UnBindBox(ChannelList list);
//获取手术室药盒中所有要补药的数据
Task<PageData<ChannelList>> GetAllBoxAddDrug(int? take, int? skip);
//手术室药盒补药获取毒麻柜中的药品信息
Task<List<BoxTakeVo>> getTakeInfoByBox(ChannelList cl);
//手术室药盒补药完成
Task<bool> BoxTakeFinish(List<BoxTakeVo> datas, ChannelList boxChannelList);
//手术室药盒入库
Task<PageData<ChannelList>> GetBoxWaitInfo(int? take, int? skip);
// 药盒入库弹窗页面获取要入库的药品明细信息
Task<List<ChannelStock>> GetBoxAddToBox(ChannelList cl);
//手术室药盒入库获取待入库明细
Task<List<BoxTakeVo>> getBoxWaitByBox(ChannelList cl, int? take, int? skip);
// 手术室药盒待入库明细入库完成
Task<bool> BoxAddBoxFinish(ChannelList boxChannelList);
//手术室药盒获取药盒药品及库存信息
Task<PageData<PlanDetails>> GetBoxDrugInfo(string DrawerNo, int? take, int? skip);
//药盒移库时获取选中药盒号的药品信息
Task<PageData<ChannelStock>> GetChannelStockByDrug(ChannelStock cs, string drawerNo,int? take, int? skip);
/// <summary>
/// 药盒交换药品获取所有除本药盒外的所有药盒号
/// </summary>
/// <param name="machineId"></param>
/// <returns></returns>
Task<string[]> GetDrawerNum(ChannelStock channelStock);
/// <summary>
/// 药盒移除药品,获取所有除本药盒外的所有包含该药品的药盒号
/// </summary>
/// <param name="machineId"></param>
/// <returns></returns>
Task<string[]> GetDrawerNumForRemove(ChannelStock channelStock);
//手术室药盒交换药品完成
Task<bool> BoxReplaceFinish(ChannelStock stock, List<ChannelStock> Stocks);
//手术室药盒移出药品完成
Task<bool> BoxRemoveFinish(ChannelStock stock, string SelectedDrawerNo, int removeQuantity);
Task<List<ChannelList>> GetAllBox();
//根据药盒查询药品信息
Task<List<ChannelStock>> GetChannelStockByBox(int BoxNum);
//根据套餐下无库存的药箱
Task<List<ChannelStock>> GetChannelStockByPlan(string plan);
//手术室药盒获取绑定数据
Task<List<ChannelList>> GetAllChannelList();
//抽屉取药向药盒加药校验药盒中是否存在该药
Task<CheckInfo<ChannelList>> CheckBoxDrugInfo(BoxModel BoxNum,List<ChannelStock> channelStockList);
//药箱中的药移入到抽屉
Task<bool> RemoveDrugToDrawerFinish(string SelectedDrawerNo, ChannelStock channelStock, int quantity);
}
}