| | |
| | | |
| | | import javax.annotation.Resource; |
| | | |
| | | import com.nanometer.smartlab.dao.BaseMetaDao; |
| | | import com.nanometer.smartlab.dao.SysLaboratoryContainerDao; |
| | | import com.nanometer.smartlab.dao.SysWarehouseContainerDao; |
| | | import com.nanometer.smartlab.dao.*; |
| | | import com.nanometer.smartlab.entity.*; |
| | | import com.nanometer.smartlab.entity.dto.PersonUseDetail; |
| | | import com.nanometer.smartlab.entity.enumtype.OperateStatus; |
| | |
| | | import org.springframework.transaction.annotation.Propagation; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import com.nanometer.smartlab.dao.OpeUseFlowDao; |
| | | import com.nanometer.smartlab.entity.enumtype.ArrivalStatus; |
| | | import com.nanometer.smartlab.entity.enumtype.SeeFlag; |
| | | import com.nanometer.smartlab.exception.AlarmCode; |
| | |
| | | private SysReagentService sysReagentService; |
| | | @Resource |
| | | private BaseMetaDao baseMetaDao; |
| | | @Resource |
| | | private OpeReagentStatusDao opeReagentStatusDao; |
| | | |
| | | |
| | | @Transactional(propagation = Propagation.REQUIRED) |
| | |
| | | return opeUseFlowDao.countOpeUseFlow(opeUseFlow); |
| | | } |
| | | |
| | | @Override |
| | | @Transactional |
| | | public void scrapReagent(String reagentId,String reagentCode, String userId) { |
| | | //1.试剂状态表更新试剂状态为报废 |
| | | OpeReagentStatus status = opeReagentStatusService.getStatus(reagentId, reagentCode); |
| | | if (status.getStatus() == ArrivalStatus.SCRAP) { |
| | | throw new BusinessException(ExceptionEnumCode.PARAM_ERR,"该试剂已是报废状态,无法进行操作"); |
| | | } |
| | | //报废 |
| | | status.setStatus(ArrivalStatus.SCRAP); |
| | | status.setUserId(userId); |
| | | opeReagentStatusDao.updateOpeReagentStatusDao(status); |
| | | |
| | | //2.插入一条报废的流向记录 |
| | | OpeUseFlow useFlow = new OpeUseFlow(); |
| | | //获取报废状态id |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("groupId", "operate_status"); |
| | | params.put("metaKey", String.valueOf(OperateStatus.SCRAP.getKey())); |
| | | List<BaseMeta> baseMetas = baseMetaDao.getBaseMetaList(params); |
| | | useFlow.setOperateState(baseMetas.get(0).getId()); |
| | | useFlow.setReagentCode(reagentCode); |
| | | useFlow.setContainerId(status.getContainerId()); |
| | | useFlow.setHouseId(status.getHouseId()); |
| | | useFlow.setUserId(userId); |
| | | useFlow.setPlace(status.getPlace()); |
| | | useFlow.setRemainder(status.getRemainder()); |
| | | useFlow.setStoreType(status.getStoreType()); |
| | | useFlow.setProject(status.getProjectNum()); |
| | | useFlow.setArticleNumber(status.getArticleNumber()); |
| | | |
| | | useFlow.setCreateTime(new Timestamp(new Date().getTime())); |
| | | useFlow.setId(IDUtils.uuid()); |
| | | opeUseFlowDao.insertOpeUseFlow(useFlow); |
| | | |
| | | } |
| | | |
| | | } |