| | |
| | | |
| | | import org.apache.commons.lang.StringUtils; |
| | | import org.apache.log4j.Logger; |
| | | import org.springframework.context.annotation.Lazy; |
| | | import org.springframework.dao.DataAccessException; |
| | | import org.springframework.dao.DataIntegrityViolationException; |
| | | import org.springframework.dao.DuplicateKeyException; |
| | |
| | | @Resource |
| | | private OpeReagentStatusService opeReagentStatusService; |
| | | |
| | | @Lazy |
| | | @Resource |
| | | private OpeUseFlowService opeUseFlowService; |
| | | |
| | |
| | | } |
| | | } |
| | | |
| | | @Transactional(propagation = Propagation.REQUIRED) |
| | | @Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRED) |
| | | public boolean updateOpeWarehouseReserve(OpeWarehouseReserve opeWarehouseReserve) { |
| | | try { |
| | | int row = this.opeWarehouseReserveDao.updateOpeWarehouseReserve(opeWarehouseReserve); |
| | |
| | | } |
| | | } |
| | | |
| | | @Transactional(propagation = Propagation.REQUIRED) |
| | | public void claimForPerson(List<OpeApplyReserve> selectedListForPerson,String userId,String projectNum,String laboratoryId,String laboratoryContainerId){ |
| | | @Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRED) |
| | | public void claimForPerson(List<OpeApplyReserve> selectedListForPerson,String userId,String projectNum,String laboratoryId,String laboratoryContainerId,String receiptNumber){ |
| | | try{ |
| | | for(OpeApplyReserve app:selectedListForPerson){ |
| | | List<String> reagentCodes = app.getReagentCode(); |
| | | if (reagentCodes != null && reagentCodes.size() > 0) { |
| | | List<OpeReagentStatus> ss=new ArrayList<>(); |
| | | for (String opeReagentStatusId : reagentCodes) { |
| | | OpeReagentStatus opeReagentStatus = this.opeReagentStatusService.getOpeReagentStatus(opeReagentStatusId); |
| | | opeReagentStatus.setUserId(userId); |
| | | opeReagentStatus.setProjectNum(projectNum); |
| | | //boolean flag = this.opeReagentStatusService.updateReagentStatus(opeReagentStatus); |
| | | this.opeReagentStatusService.updateReagentStatus3(opeReagentStatus); |
| | | ss.add(opeReagentStatus); |
| | | //更新试剂状态和 |
| | | opeReagentStatus.setHouseId(laboratoryId); |
| | | opeReagentStatus.setContainerId(laboratoryContainerId); |
| | | this.opeReagentStatusDao.updateOpeReagentStatusDao(opeReagentStatus); |
| | | this.opeReagentStatusService.updateReagentStatus3(reagentCodes,userId,projectNum,laboratoryId,laboratoryContainerId,receiptNumber); |
| | | |
| | | } |
| | | //更新是现实库存 |
| | | OpeLaboratoryReserve lr=new OpeLaboratoryReserve(); |
| | | lr.setReagentId(app.getReagent().getId()); |
| | |
| | | logger.error(ex.getMessage(), ex); |
| | | throw new BusinessException(ExceptionEnumCode.DB_ERR, |
| | | MessageUtil.getMessageByCode(ExceptionEnumCode.DB_ERR.getCode()), ex); |
| | | }catch(Exception e){ |
| | | e.printStackTrace(); |
| | | throw new RuntimeException(e); |
| | | } |
| | | } |
| | | |
| | | // 仓库领用 |
| | | @Transactional(propagation = Propagation.REQUIRED) |
| | | public void claim(List<OpeWarehouseReserve> selectedList, String userId,String projectNum) { |
| | | public void claim(List<OpeWarehouseReserve> selectedList, String userId,String projectNum,String receiptNumber) { |
| | | try { |
| | | for (OpeWarehouseReserve opeWarehouseReserve : selectedList) { |
| | | List<String> reagentCodes = opeWarehouseReserve.getReagentCodes(); |
| | |
| | | opeReagentStatus.setUserId(userId); |
| | | opeReagentStatus.setProjectNum(projectNum); |
| | | //boolean flag = this.opeReagentStatusService.updateReagentStatus(opeReagentStatus); |
| | | this.opeReagentStatusService.updateReagentStatus(opeReagentStatus); |
| | | this.opeReagentStatusService.updateReagentStatus(opeReagentStatus,receiptNumber); |
| | | //if (flag) { |
| | | //opeWarehouseReserve.setReserve(opeWarehouseReserve.getReserve() - 1); |
| | | //opeWarehouseReserve.setSelectNum(0); |
| | |
| | | } |
| | | } |
| | | |
| | | public void reagentDStore4(List<OpeApply> reagentDStoreList, String loginUserId){ |
| | | public void reagentDStore4(List<OpeApply> reagentDStoreList, String loginUserId,String receiptNumber){ |
| | | if (reagentDStoreList == null) { |
| | | return; |
| | | } |
| | |
| | | metaMap2.put("metaKey", String.valueOf(OperateStatus.WAREHOUSEOUT.getKey())); |
| | | List<BaseMeta> baseMetaList2 = baseMetaDao.getBaseMetaList(metaMap2); |
| | | ouf.setOperateState(baseMetaList2.get(0).getId()); |
| | | ouf.setReceiptNumber(receiptNumber); |
| | | this.opeUseFlowService.insertOpeUseFlow(ouf); |
| | | } |
| | | } |
| | |
| | | opeWarehouseReserveDao.updateBtReserve(id, useNum); |
| | | } |
| | | |
| | | @Override |
| | | @Override |
| | | public int countByReagentId(String id) { |
| | | int num = 0; |
| | | if (opeWarehouseReserveDao.countByReagentId(id) != null) { |
| | | num = opeWarehouseReserveDao.countByReagentId(id); |
| | | } |
| | | return num; |
| | | } |
| | | |
| | | @Override |
| | | public OpeWarehouseReserve getRowData(String rowKey) { |
| | | return opeWarehouseReserveDao.getRowData(rowKey); |
| | | } |
| | | |
| | | @Override |
| | | public void btWarehouseReserveReduce(List<OpeApplyReserve> opeList) { |
| | | if (opeList.size() < 1) { |
| | | return; |
| | |
| | | List<BaseMeta> baseMetaList = baseMetaDao.getBaseMetaList(metaMap); |
| | | opeUseFlow.setOperateState(baseMetaList.get(0).getId()); |
| | | this.opeUseFlowService.insertOpeUseFlow(opeUseFlow); |
| | | //更新试剂状态表 :批号 |
| | | opeReagentStatusDao.updateArticleNumberByRCode(reagentCodes.get(0),warehouseReserve.getArticleNumber()); |
| | | |
| | | reagentCodes.remove(0); |
| | | |
| | | } |
| | | |
| | | } |