package com.nanometer.smartlab.service; import com.nanometer.smartlab.entity.*; import com.nanometer.smartlab.entity.dto.PersonUseDetail; import com.nanometer.smartlab.exception.BusinessException; import java.util.Date; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; /** * Created by maweiqing on 17/12/12. */ public interface OpeReagentStatusService { /** * 实验室库存管理用和领用操作对话框用 * * 领用操作对话时userid为空 * * @param reagentId * @param articleNumber * @param status * @param reagentCode * @param userId * @param first * @param pageSize * @return */ List getOpeReagentStatusList(String reagentId, String articleNumber, Integer status, String reagentCode, String userId, Integer first, Integer pageSize); int getOpeReagentStatusTotalCount(String reagentId, String articleNumber, Integer status, String reagentCode, String userId); public List getOpeReagentStatusListForLab(String name, String articleNumber, Integer status, String reagentCode, String userId, String labName, Integer first, Integer pageSize); public int getOpeReagentStatusTotalCountForLab(String name, String articleNumber, Integer status, String reagentCode, String userId,String labName); List getOpeReagentStatusListByName(String reagentId, String articleNumber, Integer status, String reagentCode, String userId, Integer first, Integer pageSize); int getOpeReagentStatusTotalCountByName(String reagentId, String articleNumber, Integer status, String reagentCode, String userId); List getPersonReagentStatusListByName(String reagentId, String articleNumber, String reagentCode, String userId,String applyPerson,Date startTime,Date endTime, Integer first, Integer pageSize); int getPersonReagentStatusTotalCountByName(String reagentId, String articleNumber, String reagentCode, String userId, String applyPerson, Date startTime, Date endTime); OpeReagentStatus insertOpeReagentStatus(OpeReagentStatus opeReagentStatus); OpeReagentStatus getOpeReagentStatus(String id); OpeReagentStatus getOpeReagentStatusByReagentCode(String reagentCode); OpeReagentStatus getOpeReagentStatusByReagentCode2(OpeReagentStatus opeReagentStatus); boolean isOpeReagentStatusExist(String reagentCode); OpeReagentStatus getOpeReagentStatusByCode(String reagentCode); boolean isAllowWarehouseUse(OpeReagentStatus opeReagentStatus); boolean isAllowWarehouseUseByIds(List ids); boolean updateReagentStatus(OpeReagentStatus opeReagentStatus,String receiptNumber); boolean updateReagentStatus2(OpeReagentStatus opeReagentStatus); boolean updateReagentStatus3(List reagentCodes,String userId,String projectNum,String laboratoryId,String laboratoryContainerId,String receiptNumber); int getLogOpeReagentStatusTotalCount(String reagentLogId, Integer status, String userLogId, String loginId); List getLogOpeReagentStatusList(String reagentLogId, Integer status, String userLogId, String loginId, Integer first, Integer pageSize); void putReagentInLaboratory(String reagentCode, String barCode, String containerCode, SysUser sysUser); boolean store(List selectedStoreList, String laboratoryId, String laboratoryContainerId); public List getOpeReagentStatusInfoList(String startTime,String endTime, String containerid, String status); public void syncOpeReagentStatus(List reagentStatusList); void deleteByReagentCode(String reagentCode); List getReagentStatusByContainerCode(String containerCode); void updateTimeByCode(String code); void batchUpdateStatusByCode(List list) throws Exception; public List selectByReId(String id); public void updateByReId(String newReId,String oldReId); List getReagentCodes(String reagentId); //订单入库 新增试剂状态表 和流向 void orderInputWarehouseReagentStatusAndUseFlow(OpeApplyReserve opeApplyReserve, String userId, List reagentCodeList , OpeOrder opeOrder); List checkReagentCode(String startReagentCode2, String endReagentCode2,Integer arrivalNum) throws BusinessException; List generateReagentCode(String startReagentCode2, String endReagentCode2); int updateOpeReagentStatus(OpeReagentStatus opeReagentStatus); int getReagentNumInWarehouse(String id, String articleNumber, String warehouseId); List selectExportList(String name, String articleNumber, Integer status, String reagentCode, String userId,String labName); void exportLabStock2Excel(List list) throws Exception; OpeReagentStatus getStatus(String reagentId, String reagentCode); List getOpeReagentStatusList22(String reagentId, String articleNumber, Integer status, String reagentCode, String userId, Integer first, Integer pageSize); }