Project

General

Profile

« Previous | Next » 

Revision 48564

- Move journal cascade all from publication
- Bug fixes on publication commit

View differences:

RequestManagerImpl.java
649 649
	}
650 650

  
651 651
	@Override
652
	@Transactional(propagation = Propagation.REQUIRED , rollbackFor = {PersonManagerException.class,
653
			 ManagerException.class,ParseException.class,Exception.class})
652 654
	public void importCSV(String csv) throws PersonManagerException, ManagerException, ParseException {
653 655

  
654 656
		String linesWithHeader[] = csv.split("\\r?\\n");
......
668 670
			String coFunderName = line.length>10?line[10].trim():null;
669 671
			String coFunderDiscountPercentage = line.length>=11?line[11].trim():null;
670 672

  
671
			System.out.println("New request info " + line[0] + "/" + line[1] + "/" + line[2]);
672

  
673 673
			importRequestFromCSV(userEmail,grant,doi,acceptanceDate,
674 674
				identifierType,identifierValue,publicationLicense,apc,
675 675
				apcCurrency,discount,coFunderName,coFunderDiscountPercentage);
......
677 677
	}
678 678

  
679 679

  
680
	@Transactional(propagation= Propagation.REQUIRED)
681 680
	private void importRequestFromCSV(String userEmail, String grant, String doi, String acceptanceDate,
682 681
									  String identifierType, String identifierValue, String publicationLicense,
683 682
									  String apc, String apcCurrency, String discount, String coFunderName,
......
692 691
			throw new PersonManagerException("User with email " + userEmail + " not exists!");
693 692
		}
694 693

  
695

  
696
		System.out.println("Grant number: " + grant);
697

  
698 694
		List<Object> rs = projectManager.search(grant);
699 695
		Project project = null;
700 696
		if(rs.size() == 0) {
......
703 699
		}else
704 700
			project = (Project) rs.get(0);
705 701

  
706
		System.out.println("Project id : " + project.getId());
707 702
		Publication publication = null;
708 703
		try {
709
			System.out.println(doi);
710 704
			publication = publicationManager.resolveDOI(doi);
711
			System.out.println("Publication id: " + publication.getId());
712 705
		} catch (ManagerException e) {
713 706
			e.printStackTrace();
714 707
			throw new ManagerException("Requested doi("+doi+") not found!");
715 708
		}
716 709
		publicationManager.savePublication(publication);
717 710

  
711

  
718 712
		if(publication.getJournal()!=null && publication.getJournal().getPublisher()!=null)
719 713
			publisherManager.savePublisher(publication.getJournal().getPublisher());
720 714
		else if(publication.getPublisher()!=null)
......
725 719
		Request request = requestDAO.getRequestFromCSV(user,project,publication,acceptanceDate,
726 720
				identifierType,identifierValue,publicationLicense,apc,
727 721
				apcCurrency,discount,coFunders);
722

  
728 723
		request.setId("L" + new SimpleDateFormat("yyyyMMdd-").format(new Date()) + requestDAO.getRequestId());
724
		request.setEligibility(eligibilityManager.validate(request));
725

  
726
		if(!request.getEligibility().getStatus().equals(Eligibility.Status.OK))
727
			throw new ManagerException("Request for project "+grant+" is not eligible!");
729 728
		saveRequest(request);
730 729

  
731 730
	}

Also available in: Unified diff