Project

General

Profile

« Previous | Next » 

Revision 49828

1. Change log4j properties file.
2. Add method to create researcher from bulk import csv
3. Change csv handling on bulk import
4. Modify request unit test.

View differences:

modules/uoa-goldoa-service/branches/hibernate/src/test/java/unitest/ManageRequestsTest.java
121 121
    @Rollback(true)
122 122
    public void resolveDOI() {
123 123
        try {
124
            Publication p = pum.resolveDOI("10.1002/0470841559.ch1");
124
            Publication p = pum.resolveDOI("10.1155/2017/1297658");
125 125
            System.out.println(p.getType().getType());
126 126
        } catch (ManagerException e) {
127 127
            e.printStackTrace();
......
240 240
    @Rollback(true)
241 241
    public void importCSVRequests() {
242 242

  
243
        /*String csv = "User email,Project Grant Number,DOI,Acceptance Date,Publication Identifier Type,Publication Identifier value,License,APC,APC currency,Discount,Co-Funder Name,Co-funder discount percentage (';' separated)\n" +
244
                "pkanakakis@di.uoa.gr  ,641489,10.1002/0470841559.ch10 ,2015-05-27,doi,doiValue,testLicense,1000,EUR,0\n "+
245
                "pkanakakis@di.uoa.gr  ,100016,10.1002/0470841559.ch10 ,2015-05-27,doi,doiValue,testLicense,1000,EUR,0\n"+
246
                "pkanakakis@di.uoa.gr  ,100016,10.1002/0470841559.ch2,2015-05-27,doi,doiValue,testLicense,1000,EUR,0";*/
247
        //"pkanakakis@di.uoa.gr,100016,10.1002/0470841559.ch1,2015-05-27,doi,doiValue,licenseValue,1000,EUR,10.00,,";
248
        //"pkanakakis@di.uoa.gr,100016,10.1002/0470841559.ch10,2015-05-27,doi,doiValue,licenseValue,1000,EUR,10.00,,";
243
        String csv = "Firstname,Lastname,Email, Affiliation,Project Grant Number,DOI,Acceptance Date,Publication Identifier Type,Publication Identifier value," +
244
                "APC,APC currency,Discount\n" +
245
                "Panagiotis,Kanakakis,pkanakakis@di.uoa.gr,NATIONAL AND KAPODISTRIAN UNIVERSITY OF ATHENS,641489,10.1002/0470841559.ch10,2015-05-27,doi,doiValue,1000,EUR,0\n "+
246
                "Panagiotis,Kanakakis,p2@di.uoa.gr,NATIONAL AND KAPODISTRIAN UNIVERSITY OF ATHENS,641489,10.1002/0470841559.ch10,2015-05-27,doi,doiValue,1000,EUR,0\n "+
247
                "Panagiotis,Kanakakis,,NATIONAL AND KAPODISTRIAN UNIVERSITY OF ATHENS,641489,10.1002/0470841559.ch10,2015-05-27,doi,doiValue,,EUR,";
249 248

  
250
        String csv = "User email,Project Grant Number,DOI,Acceptance date,Publication identifier type,Publication identifier value,APC,ApcCurrency,Discount\n" +
251
                "gwen.franck@kb.nl,265113, 10.5194/acp-16-8249-2016,2017-01-01,,,1440,EUR,\n" +
252
                "gwen.franck@kb.nl,265148, 10.5194/acp-16-10879-2016,2017-01-01,,,1710,EUR,\n" +
253
                "gwen.franck@kb.nl,287530, 10.5194/gmd-9-3483-2016,2017-01-01,,,810,EUR,\n" +
254
                "gwen.franck@kb.nl,243908, 10.5194/bg-13-4205-2016,2017-01-01,,,1260,EUR,\n" +
255
                "gwen.franck@kb.nl,294146, 10.5194/bg-13-6049-2016,2017-01-01,,,1620,EUR,\n" +
256
                "gwen.franck@kb.nl,282910, 10.5194/gmd-9-4475-2016,2017-01-01,,,1350,EUR,\n" +
257
                "gwen.franck@kb.nl,265113, 10.5194/acp-17-627-2017,2017-01-01,,,1275,EUR,\n" +
258
                "gwen.franck@kb.nl,243908, 10.5194/bg-13-4205-2016,2017-01-01,,,1950,EUR,\n" +
259
                "gwen.franck@kb.nl,316210, 10.5194/amt-10-83-2017,2017-01-01,,,1980,EUR,\n" +
260
                "gwen.franck@kb.nl,295132, 10.5194/acp-17-645-2017,2017-01-01,,,1275,EUR,\n" +
261
                "gwen.franck@kb.nl,312642, 10.5194/os-13-1-2017,2017-01-01,,,825,EUR,\n" +
262
                "gwen.franck@kb.nl,295132, 10.5194/acp-17-1653-2017,2017-01-01,,,1800,EUR,\n" +
263
                "gwen.franck@kb.nl,299035, 10.5194/tc-11-319-2017,2017-01-01,,,825,EUR,\n" +
264
                "gwen.franck@kb.nl,256961, 10.5194/amt-10-507-2017,2017-01-01,,,1425,EUR,\n" +
265
                "gwen.franck@kb.nl,265113, 10.5194/acp-17-2689-2017,2017-01-01,,,1500,EUR,\n" +
266
                "gwen.franck@kb.nl,282688, 10.5194/acp-17-2709-2017,2017-01-01,,,1080,EUR,\n" +
267
                "gwen.franck@kb.nl,282700, 10.5194/gmd-10-959-2017,2017-01-01,,,1275,EUR,\n" +
268
                "gwen.franck@kb.nl,316173, 10.5194/acp-17-3673-2017,2017-01-01,,,1170,EUR,\n" +
269
                "gwen.franck@kb.nl,316210, 10.5194/acp-17-4063-2017,2017-01-01,,,1530,EUR,\n" +
270
                "gwen.franck@kb.nl,316662, 10.5194/acp-17-4053-2017,2017-01-01,,,900,EUR,\n" +
271
                "gwen.franck@kb.nl,282700, 10.5194/bg-14-1593-2017,2017-01-01,,,750,EUR,\n" +
272
                "gwen.franck@kb.nl,308377, 10.5194/acp-17-4401-2017,2017-01-01,,,1350,EUR,\n" +
273
                "gwen.franck@kb.nl,290605, 10.5194/acp-17-5035-2017,2017-01-01,,,1980,EUR,\n" +
274
                "gwen.franck@kb.nl,606953, 10.5194/acp-17-5893-2017,2017-01-01,,,1980,EUR,\n" +
275
                "gwen.franck@kb.nl,606738, 10.5194/gmd-10-1985-2017,2017-01-01,,,1980,EUR,\n" +
276
                "gwen.franck@kb.nl,283568, 10.5194/cp-13-455-2017,2017-01-01,,,1620,EUR,\n" +
277
                "gwen.franck@kb.nl,267099, 10.5194/acp-17-7143-2017,2017-01-01,,,1170,EUR,\n" +
278
                "gwen.franck@kb.nl,282700, 10.5194/bg-14-3051-2017,2017-01-01,,,1440,EUR,\n" +
279
                "gwen.franck@kb.nl,262693, 10.5194/bg-14-3157-2017,2017-01-01,,,975,EUR,\n" +
280
                "gwen.franck@kb.nl,243908, 10.5194/cp-13-729-2017,2017-01-01,,,990,EUR,\n" +
281
                "gwen.franck@kb.nl,311903, 10.5194/hess-21-3507-2017,2017-01-01,,,1620,EUR,\n" +
282
                "gwen.franck@kb.nl,608166, 10.5194/nhess-17-1177-2017,2017-01-01,,,1050,EUR,\n" +
283
                "gwen.franck@kb.nl,282688, 10.5194/acp-17-8681-2017,2017-01-01,,,1980,EUR,\n" +
284
                "gwen.franck@kb.nl,289384,10.1186/s12918-017-0428-y,2017-01-01,,,1657,EUR,75\n" +
285
                "gwen.franck@kb.nl,221948,10.1186/s40249-017-0245-y,2017-01-01,,,1657,EUR,75\n" +
286
                "gwen.franck@kb.nl,263916,10.1186/s12870-017-1017-3,2017-01-01,,,1657,EUR,75\n" +
287
                "gwen.franck@kb.nl,613549,10.1186/s13068-017-0744-x,2017-01-01,,,1895,EUR,25\n" +
288
                "gwen.franck@kb.nl,303772,10.1186/s12864-016-3444-1,2017-01-01,,,1657,EUR,75\n" +
289
                "gwen.franck@kb.nl,329033,10.1186/s13100-017-0086-z,2017-01-01,,,1657,EUR,75\n" +
290
                "gwen.franck@kb.nl,306141,10.1186/s13012-017-0552-5,2017-01-01,,,1828,EUR,75\n" +
291
                "gwen.franck@kb.nl,312941,10.1186/s12859-017-1513-3,2017-01-01,,,1657,EUR,75\n" +
292
                "gwen.franck@kb.nl,258068,10.1186/s12859-017-1503-5,2017-01-01,,,1657,EUR,75\n" +
293
                "gwen.franck@kb.nl,221948,10.1186/s40249-016-0224-8,2017-01-01,,,1657,EUR,75\n" +
294
                "gwen.franck@kb.nl,265827,10.1186/s12884-017-1230-y,2017-01-01,,,1657,EUR,75\n" +
295
                "gwen.franck@kb.nl,259348,10.1186/s13073-017-0407-3,2017-01-01,,,2156,EUR,5\n" +
296
                "gwen.franck@kb.nl,260997,10.1186/s12863-017-0478-6,2017-01-01,,,1657,EUR,75\n" +
297
                "gwen.franck@kb.nl,263147,10.1186/s12951-016-0238-1,2017-01-01,,,1657,EUR,75\n" +
298
                "gwen.franck@kb.nl,265827,10.1186/s12889-017-4069-2,2017-01-01,,,1657,EUR,75\n" +
299
                "gwen.franck@kb.nl,264738,10.1186/s12911-016-0398-9,2017-01-01,,,1657,EUR,75\n" +
300
                "gwen.franck@kb.nl,258837,10.1186/s13012-016-0535-y,2017-01-01,,,1828,EUR,75\n" +
301
                "gwen.franck@kb.nl,289319,10.1186/s12866-016-0917-y,2017-01-01,,,1657,EUR,75\n" +
302
                "gwen.franck@kb.nl,627027,10.1186/s12864-016-3420-9,2017-01-01,,,1657,EUR,75\n" +
303
                "gwen.franck@kb.nl,289974,10.1186/s12859-016-1416-8,2017-01-01,,,1657,EUR,75\n" +
304
                "gwen.franck@kb.nl,289126,10.1186/s13326-016-0109-6,2017-01-01,,,1657,EUR,75\n" +
305
                "gwen.franck@kb.nl,259348,10.1186/s12859-016-1391-0,2017-01-01,,,1657,EUR,75\n" +
306
                "gwen.franck@kb.nl,279227,10.1186/s12888-016-1167-0,2017-01-01,,,1657,EUR,75\n" +
307
                "gwen.franck@kb.nl,306029,10.1186/s12967-016-1067-6,2017-01-01,,,1657,EUR,75\n" +
308
                "gwen.franck@kb.nl,311935,10.1186/s12934-016-0598-0,2017-01-01,,,1657,EUR,75\n" +
309
                "gwen.franck@kb.nl,278871,10.1186/s12974-016-0761-x,2017-01-01,,,1895,EUR,25\n" +
310
                "gwen.franck@kb.nl,289706,10.1186/s12898-016-0109-5,2017-01-01,,,1657,EUR,75\n" +
311
                "gwen.franck@kb.nl,115189,10.1186/s12874-016-0259-3,2017-01-01,,,1657,EUR,75\n" +
312
                "gwen.franck@kb.nl,305831,10.1186/s12909-016-0785-z,2017-01-01,,,1657,EUR,75\n" +
313
                "gwen.franck@kb.nl,289592,10.1186/s12711-016-0258-1,2017-01-01,,,1391,EUR,75\n" +
314
                "gwen.franck@kb.nl,283496,10.1186/s13007-016-0144-4,2017-01-01,,,1729,EUR,\n" +
315
                "gwen.franck@kb.nl,278570,10.1186/s13045-016-0345-3,2017-01-01,,,1999,EUR,75\n" +
316
                "gwen.franck@kb.nl,278901,10.1186/s12916-016-0709-0,2017-01-01,,,2156,EUR,5\n" +
317
                "gwen.franck@kb.nl,303891,10.1186/s12984-016-0204-z,2017-01-01,,,1657,EUR,75\n" +
318
                "gwen.franck@kb.nl,266005,10.1186/s12906-016-1378-4,2017-01-01,,,1657,EUR,75\n" +
319
                "gwen.franck@kb.nl,288209,10.1186/s12911-016-0376-2,2017-01-01,,,1657,EUR,75\n" +
320
                "gwen.franck@kb.nl,283359,10.1186/s12898-016-0103-y,2017-01-01,,,1657,EUR,75\n" +
321
                "gwen.franck@kb.nl,296679,10.1186/s13036-016-0031-6,2017-01-01,,,1729,EUR,\n" +
322
                "gwen.franck@kb.nl,265494,10.1186/s12263-016-0539-x,2017-01-01,,,1657,EUR,75\n" +
323
                "gwen.franck@kb.nl,289377,10.1186/s12864-016-3083-6,2017-01-01,,,1657,EUR,75\n" +
324
                "gwen.franck@kb.nl,250157,10.1186/s13059-016-1051-8,2017-01-01,,,2299,EUR,\n" +
325
                "gwen.franck@kb.nl,258837, 10.1186/s13012-016-0473-8,2017-01-01,,,1828,EUR,75\n" +
326
                "gwen.franck@kb.nl,306105,10.1186/s12936-016-1499-8,2017-01-01,,,1729,EUR,\n" +
327
                "gwen.franck@kb.nl,289300,10.1186/s13007-016-0140-8,2017-01-01,,,1729,EUR,\n" +
328
                "gwen.franck@kb.nl,279039,10.1186/s13068-016-0605-z,2017-01-01,,,1895,EUR,25\n" +
329
                "gwen.franck@kb.nl,296590,10.1186/s12938-016-0226-6,2017-01-01,,,1657,EUR,75\n" +
330
                "gwen.franck@kb.nl,304925,10.1186/s13063-016-1526-7,2017-01-01,,,1657,EUR,75\n" +
331
                "gwen.franck@kb.nl,265970,10.1186/s12961-016-0136-x,2017-01-01,,,1781,EUR,25\n" +
332
                "gwen.franck@kb.nl,289377,10.1186/s12863-016-0431-0,2017-01-01,,,1657,EUR,75\n" +
333
                "gwen.franck@kb.nl,289974,10.1186/s12864-016-2926-5,2017-01-01,,,1657,EUR,75\n" +
334
                "gwen.franck@kb.nl,306105, 10.1186/s12936-016-1505-1,2017-01-01,,,1729,EUR,\n" +
335
                "gwen.franck@kb.nl,290148,10.1186/s13014-016-0683-x,2017-01-01,,,1657,EUR,75\n" +
336
                "gwen.franck@kb.nl,281930,10.1186/s12961-016-0132-1,2017-01-01,,,1748,EUR,\n" +
337
                "gwen.franck@kb.nl,226144, 10.1186/s12940-016-0170-8,2017-01-01,,,1719,EUR,5\n" +
338
                "gwen.franck@kb.nl,289841,10.1186/s12864-016-2879-8,2017-01-01,,,1657,EUR,75\n" +
339
                "gwen.franck@kb.nl,257258,10.1186/s12913-016-1587-z,2017-01-01,,,1657,EUR,75\n" +
340
                "gwen.franck@kb.nl,258883,10.1186/s12904-016-0144-1,2017-01-01,,,1657,EUR,75\n" +
341
                "gwen.franck@kb.nl,245199,10.1186/s12906-016-1227-5,2017-01-01,,,1657,EUR,75\n" +
342
                "gwen.franck@kb.nl,624370,10.1186/s12951-016-0215-8,2017-01-01,,,1657,EUR,75\n" +
343
                "gwen.franck@kb.nl,258883,10.1186/s12904-016-0132-5,2017-01-01,,,1657,EUR,75\n" +
344
                "gwen.franck@kb.nl,241718,10.1186/s12934-016-0497-4,2017-01-01,,,1657,EUR,75\n" +
345
                "gwen.franck@kb.nl,306088,10.1186/s13058-015-0583-2,2017-01-01,,,2142,EUR,25\n" +
346
                "gwen.franck@kb.nl,629675,10.1002/open.201700097,2017-01-01,,,1440,EUR,\n" +
347
                "gwen.franck@kb.nl,289219,10.1002/open.201700101,2017-01-01,,,1440,EUR,\n" +
348
                "gwen.franck@kb.nl,289706,10.1002/ece3.3247,2017-01-01,,,1224,EUR,\n" +
349
                "gwen.franck@kb.nl,262443,10.1002/acn3.434,2017-01-01,,,1752,EUR,\n" +
350
                "gwen.franck@kb.nl,260524,10.15252/emmm.201606978,2017-01-01,,,2000,EUR,\n" +
351
                "gwen.franck@kb.nl,311849,10.1111/gcbb.12451,2017-01-01,,,1487,EUR,\n" +
352
                "gwen.franck@kb.nl,287844,10.1002/ece3.2844,2017-01-01,,,979,EUR,\n" +
353
                "gwen.franck@kb.nl,624035,10.1002/ece3.2731,2017-01-01,,,979,EUR,\n" +
354
                "gwen.franck@kb.nl,270089,10.1111/pbi.12655,2017-01-01,,,1768,EUR,\n" +
355
                "gwen.franck@kb.nl,612146,10.1002/ece3.2580,2017-01-01,,,896,EUR,\n" +
356
                "gwen.franck@kb.nl,330466,10.1002/ecs2.1508,2017-01-01,,,962,EUR,\n" +
357
                "gwen.franck@kb.nl,281640,10.1136/bmjopen-2016-011217,2017-01-01,,,1605,EUR,5\n" +
358
                "gwen.franck@kb.nl,289384,10.1136/bmjopen-2016-013952,2017-01-01,,,1605,EUR,5\n" +
359
                "gwen.franck@kb.nl,258583,10.1136/bmjopen-2016-011569,2017-01-01,,,1605,EUR,5\n" +
360
                "gwen.franck@kb.nl,265660,10.1136/bmjgh-2016-000212,2017-01-01,,,2000,EUR,\n" +
361
                "gwen.franck@kb.nl,306186,10.1136/bmjopen-2016-013805,2017-01-01,,,1605,EUR,5\n" +
362
                "gwen.franck@kb.nl,270182,10.3389/fncom.2015.00107,2017-01-01,,,912,EUR,\n" +
363
                "gwen.franck@kb.nl,601165,10.1371/journal.pcbi.1004172,2017-01-01,,,2069,EUR,\n" +
364
                "gwen.franck@kb.nl,303618,10.1371/journal.pone.0157394,2017-01-01,,,1357,EUR,49\n" +
365
                "gwen.franck@kb.nl,321610,10.1186/s12862-016-0629-9,2017-01-01,,,1396,EUR,\n" +
366
                "gwen.franck@kb.nl,303618,10.1002/ece3.2305,2017-01-01,,,1456,EUR,56\n" +
367
                "gwen.franck@kb.nl,289540,10.3389/fmicb.2016.01481,2017-01-01,,,1653,EUR,\n" +
368
                "gwen.franck@kb.nl,311956,10.1128/genomea.00524-16,2017-01-01,,,601,EUR,22\n" +
369
                "gwen.franck@kb.nl,289540,10.3390/md14070124,2017-01-01,,,1773,EUR,99\n" +
370
                "gwen.franck@kb.nl,303618,10.1002/ece3.2290,2017-01-01,,,1820,EUR,7\n" +
371
                "gwen.franck@kb.nl,303618,10.1371/journal.pone.0145352,2017-01-01,,,1211,EUR,";
372

  
373 249
        try {
374 250
            rm.importCSV(csv);
375 251
        } catch (Exception e) {
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/service/RequestManagerImpl.java
59 59
	@Autowired
60 60
	private PublisherManager publisherManager;
61 61

  
62

  
62 63
	@Value("${goldoa.sendCoordinatorEmails}")
63 64
	private String sendCoordinatorEmails ;//= false;
64 65
	@Value("${goldoa.sendEvaEmail}")
......
66 67
	@Value("${goldoa.evaEmail}")
67 68
	private String evaEmail;// = null;
68 69

  
69
	private Log logger = LogFactory.getLog(RequestManagerImpl.class);
70
	private Log LOGGER = LogFactory.getLog(RequestManagerImpl.class);
70 71

  
71 72
	@Override
72 73
	public Request saveRequest(final Request request) {
......
649 650
	@Override
650 651
	@Transactional(propagation = Propagation.REQUIRED , rollbackFor = {PersonManagerException.class,
651 652
			 ManagerException.class,ParseException.class,Exception.class})
652
	public void importCSV(String csv) throws PersonManagerException, ManagerException, ParseException {
653
	public void importCSV(String csv) throws PersonManagerException, ManagerException, ParseException, OrganizationManagerException {
653 654

  
654 655
		String linesWithHeader[] = csv.split("\\r?\\n");
655 656
		String lines[] = Arrays.copyOfRange(linesWithHeader,1,linesWithHeader.length);
656 657
		for(String str : lines){
657 658
			String line[] = str.split(",");
658
			String userEmail = line.length>0?line[0].trim():null;
659
			String grant = line.length>1?line[1].trim():null;
660
			String doi = line.length>2?line[2].trim():null;
661
			String acceptanceDate = line.length>3?line[3].trim():null;
662
			String identifierType = line.length>4?line[4].trim():null;
663
			String identifierValue = line.length>5?line[5].trim():null;
664
			String apc = line.length>6?line[6].trim():null;
665
			String apcCurrency = line.length>7?line[7].trim():null;
666
			String discount = line.length>8?line[8].trim():null;
667 659

  
668
			importRequestFromCSV(userEmail,grant,doi,acceptanceDate,
669
				identifierType,identifierValue,apc,
670
				apcCurrency,discount);
660
			String firstname = !line[0].equals("")?line[0].trim():null;
661
			String lastname = !line[1].equals("")?line[1].trim():null;
662
			String email = !line[2].equals("")?line[2].trim():null;
663
			String organization = !line[3].equals("")?line[3].trim():null;
664

  
665
			String grant = !line[4].equals("")?line[4].trim():null;
666
			String doi = !line[5].equals("")?line[5].trim():null;
667
			String acceptanceDate = !line[6].equals("")?line[6].trim():null;
668
			String identifierType = !line[7].equals("")?line[7].trim():null;
669
			String identifierValue = !line[8].equals("")?line[8].trim():null;
670
			String apc = !line[9].equals("")?line[9].trim():"0";
671
			String apcCurrency = !line[10].equals("")?line[10].trim():null;
672
			String discount = line.length>11?line[11].trim():"0";
673

  
674
			importRequestFromCSV(firstname,lastname,organization,email,
675
					grant,doi,acceptanceDate, identifierType,
676
					identifierValue,apc, apcCurrency,discount);
671 677
		}
672 678
	}
673 679

  
674 680

  
675
	private void importRequestFromCSV(String userEmail, String grant, String doi, String acceptanceDate,
681
	private void importRequestFromCSV(String firstname, String lastname, String organization, String email, String grant,
682
									  String doi, String acceptanceDate,
676 683
									  String identifierType, String identifierValue,
677
									  String apc, String apcCurrency,String discount)
678
			throws PersonManagerException, ParseException, ManagerException {
684
									  String apc, String apcCurrency, String discount)
685
			throws PersonManagerException, ParseException, ManagerException, OrganizationManagerException {
679 686

  
687
		Organization org = (Organization) organizationManager.search(organization).get(0);
688
		if(org == null){
689
			LOGGER.debug("Organization " + organization +  "  not exists!");
690
			throw new OrganizationManagerException(OrganizationManagerException.ErrorCause.NOT_EXISTS);
691
		}
692

  
693

  
680 694
		User user = null;
681 695
		try {
682
			user  = userManager.getByEmail(userEmail);
696
			user  = userManager.getByEmail(email);
683 697
		} catch (PersonManagerException e) {
684
			e.printStackTrace();
685
			throw new PersonManagerException("User with email " + userEmail + " not exists!");
698
			LOGGER.debug("User with email : " + email + "not exists!" ,e);
699
			LOGGER.debug("Creating new inactive user with default password!");
700
			user = userManager.createInActiveResearcher(firstname,lastname,email,org);
686 701
		}
687 702

  
688 703
		List<Object> rs = projectManager.search(grant);
689 704
		Project project = null;
690 705
		if(rs.size() == 0) {
691
			System.out.println("Project with specified grant("+grant+") not found!");
706
			LOGGER.debug("Project with specified grant("+grant+") not found!");
692 707
			throw new ManagerException("Project with specified grant("+grant+") not found!");
693 708
		}else
694 709
			project = (Project) rs.get(0);
......
697 712
		try {
698 713
			publication = publicationManager.resolveDOI(doi);
699 714
		} catch (ManagerException e) {
700
			e.printStackTrace();
715
			LOGGER.debug("Requested doi("+doi+") not found!" , e);
701 716
			throw new ManagerException("Requested doi("+doi+") not found!");
702 717
		}
703 718

  
......
711 726
			publicationManager.savePublication(publication);
712 727

  
713 728

  
714
		Request request = requestDAO.getRequestFromCSV(user,project,publication,acceptanceDate,
715
				identifierType,identifierValue,apc,
716
				apcCurrency,discount);
729
		Request request = requestDAO.getRequestFromCSV(user,project,publication,org,
730
				acceptanceDate, identifierType,identifierValue,apc, apcCurrency,discount);
717 731

  
718 732
		request.setId("L" + new SimpleDateFormat("yyyyMMdd-").format(new Date()) + requestDAO.getRequestId());
719 733
		request.setEligibility(Eligibility.OK);
720 734

  
735

  
721 736
		if(!request.getEligibility().getStatus().equals(Eligibility.Status.OK))
722 737
			throw new ManagerException("Request for project "+grant+" is not eligible!");
723 738
		requestDAO.saveRequest(request);
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/service/dao/UserDAO.java
1 1
package eu.dnetlib.goldoa.service.dao;
2 2

  
3
import eu.dnetlib.goldoa.domain.AccountAction;
4
import eu.dnetlib.goldoa.domain.Role;
5
import eu.dnetlib.goldoa.domain.User;
6
import eu.dnetlib.goldoa.domain.UserRole;
3
import eu.dnetlib.goldoa.domain.*;
7 4
import org.apache.commons.codec.digest.DigestUtils;
8 5
import org.apache.commons.logging.Log;
9 6
import org.apache.commons.logging.LogFactory;
......
11 8
import org.hibernate.criterion.Order;
12 9
import org.hibernate.criterion.Restrictions;
13 10
import org.hibernate.transform.Transformers;
11
import org.springframework.beans.factory.annotation.Autowired;
14 12
import org.springframework.stereotype.Repository;
15 13

  
16 14
import java.math.BigInteger;
17 15
import java.sql.Timestamp;
18 16
import java.util.List;
17
import java.util.UUID;
19 18

  
20 19
/**
21 20
 * Created by antleb on 3/13/15.
22 21
 */
23 22
@Repository
24 23
public class UserDAO extends AbstractDao<String, User> {
25
    private Log log = LogFactory.getLog(UserDAO.class);
24
    private Log LOGGER = LogFactory.getLog(UserDAO.class);
26 25

  
27 26
    /**
28 27
     * Returns the person with the given id. Objects of different type are placeholders containing only their id.
......
199 198
               // .setCacheRegion("user")
200 199
                .list();
201 200
    }
201

  
202
    public User createInActiveResearcher(String firstname, String lastname, String email, Organization organization) {
203
        User user = new User();
204
        user.setFirstname(firstname);
205
        user.setLastname(lastname);
206
        user.setEmail(email);
207
        user.setPassword(DigestUtils.md5Hex(UUID.randomUUID().toString()));
208

  
209
        UserRole personRole = new UserRole();
210
        UserRolePK urPk = new UserRolePK();
211
        urPk.setUser(user);
212
        urPk.setRole(new Role("researcher","Researcher"));
213
        personRole.setPk(urPk);
214

  
215
        Affiliation affiliation = new Affiliation();
216
        affiliation.setOrganization(organization);
217
        affiliation.getUsers().add(user);
218
        user.getAffiliations().add(affiliation);
219

  
220
        saveUser(user);
221
        return user;
222
    }
202 223
}
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/service/dao/RequestDAO.java
825 825
		return result;
826 826
	}
827 827

  
828
	public Request getRequestFromCSV(User user, Project project, Publication publication, String acceptanceDate,
829
									 String identifierType, String identifierValue,
828
	public Request getRequestFromCSV(User user, Project project, Publication publication, Organization organization,
829
									 String acceptanceDate, String identifierType, String identifierValue,
830 830
									 String apc, String apcCurrency, String discount) throws ParseException {
831 831

  
832 832
		Request request = new Request();
833
		request.setProject(project);
833 834
		request.setUser(user);
834
		request.setProject(project);
835
		request.setResearcher(user);
835 836

  
836 837
		publication.setAcceptancedate(new SimpleDateFormat("yyyy-MM-dd").parse(acceptanceDate));
837 838

  
......
843 844

  
844 845
		publication.getIdentifiers().add(id);
845 846

  
847
		request.setOrganization(organization);
846 848
		request.setApc(apc!=null?Float.parseFloat(apc):null);
847 849
		request.setCurrency(apcCurrency!=null?Currency.valueOf(apcCurrency):null);
848 850
		request.setDiscount(discount!=null?Float.parseFloat(discount):null);
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/service/RequestManager.java
113 113

  
114 114
	public List<CommentTemplate> getCommentTemplates(Request.RequestStatus requestStatus);
115 115

  
116
	public void importCSV(String csv) throws PersonManagerException, ManagerException, IOException, ParseException;
116
	public void importCSV(String csv) throws PersonManagerException, ManagerException, IOException, ParseException, OrganizationManagerException;
117 117
}
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/service/UserManagerImpl.java
20 20
import java.util.UUID;
21 21
import java.util.concurrent.ExecutorService;
22 22

  
23
//import eu.dnetlib.goldoa.service.utils.EmailUtils;
24 23

  
25 24
/**
26 25
 * Created by antleb on 3/4/15.
......
34 33

  
35 34
	@Autowired
36 35
	private EmailUtils emailUtils;
37
	
36

  
38 37
	@Autowired
39 38
	ExecutorService executorService;
40 39

  
41 40
	private int tokenTTL = 30;
42 41

  
43
	private Log log = LogFactory.getLog(UserManagerImpl.class);
42
	private Log LOGGER = LogFactory.getLog(UserManagerImpl.class);
44 43

  
45 44
	public static int generateId(Affiliation affiliation) {
46 45
		StringBuilder sb = new StringBuilder();
......
158 157
		} catch (PersonManagerException e) {
159 158
			throw e;
160 159
		} catch (Exception e) {
161
			log.error("Error logging in", e);
160
			LOGGER.error("Error logging in", e);
162 161
		}
163 162
		return null;
164 163
	}
......
309 308
		return userDAO.getUserRoles(email);
310 309
	}
311 310

  
311
	@Override
312
	public User createInActiveResearcher(String firstname, String lastname, String email, Organization organization) throws OrganizationManagerException, PersonManagerException {
313

  
314
		if(firstname == null || lastname == null || email == null)
315
			throw new PersonManagerException("Empty firstname or lastname or email");
316
		return userDAO.createInActiveResearcher(firstname,lastname,email,organization);
317
	}
318

  
312 319
}
modules/uoa-goldoa-service/branches/hibernate/src/main/java/eu/dnetlib/goldoa/service/UserManager.java
1 1
package eu.dnetlib.goldoa.service;
2 2

  
3
import eu.dnetlib.goldoa.domain.PersonManagerException;
4
import eu.dnetlib.goldoa.domain.Role;
5
import eu.dnetlib.goldoa.domain.User;
3
import eu.dnetlib.goldoa.domain.*;
6 4

  
7 5
import java.util.List;
8 6

  
......
54 52
	public Role getRole(String roleId);
55 53

  
56 54
    List<Role> getUserRoles(String email);
55

  
56
	User createInActiveResearcher(String firstname, String lastname, String email, Organization organization) throws OrganizationManagerException, PersonManagerException;
57 57
}
modules/uoa-goldoa-service/branches/hibernate/src/main/resources/log4j.properties
1
# Set root logger level to DEBUG and its only appender to A1.
2
log4j.rootLogger=INFO, A1
1
log4j.rootLogger = WARN, R
3 2

  
4
# A1 is set to be a ConsoleAppender.
5
log4j.appender.A1.File=/tmp/log.out
6
# A1 uses PatternLayout.
7
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
8
log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
3
log4j.logger.eu.dnetlib = DEBUG
4
log4j.logger.eu.dnetlib.clients.data.datasourcemanager.ws.Converter = FATAL
5
log4j.logger.org.springframework = DEBUG, S
6
log4j.additivity.org.springframework = false
9 7

  
8
log4j.logger.com.opensymphony.xwork2.ognl.OgnlValueStack = FATAL
9
log4j.logger.com.opensymphony.xwork2.ObjectFactory = FATAL
10 10

  
11
# Define the root logger with appender file
12
#log4j.rootLogger = DEBUG, FILE
11
log4j.logger.eu.dnetlib.repo.manager=DEBUG
12

  
13
log4j.appender.R=org.apache.log4j.RollingFileAppender
14
log4j.appender.R.File=/tmp/uoa-goldoa-service.log
15
log4j.appender.R.MaxFileSize=10MB
16
log4j.appender.R.MaxBackupIndex=10
17
log4j.appender.R.layout=org.apache.log4j.PatternLayout
18
log4j.appender.R.layout.ConversionPattern= %d %p %t [%c] - %m%n
19

  
20
log4j.appender.S=org.apache.log4j.RollingFileAppender
21
log4j.appender.S.File=/tmp/uoa-goldoa-service-spring.log
22
log4j.appender.S.MaxFileSize=10MB
23
log4j.appender.S.MaxBackupIndex=10
24
log4j.appender.S.layout=org.apache.log4j.PatternLayout
25
log4j.appender.S.layout.ConversionPattern= %d %p %t [%c] - %m%n
26

  
27

  
28
#org.apache.cxf.Logger=org.apache.cxf.common.logging.Log4jLogger
13 29
#
14
## Define the file appender
15
#log4j.appender.FILE=org.apache.log4j.FileAppender
30
#log4j.rootLogger=INFO, CONSOLE
31
#log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
32
#log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
33
#log4j.appender.CONSOLE.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
16 34
#
17
## Set the name of the file
18
#log4j.appender.FILE.File=/tmp/log.out
19
#
20
## Set the immediate flush to true (default)
21
#log4j.appender.FILE.ImmediateFlush=true
22
#
23
## Set the threshold to debug mode
24
#log4j.appender.FILE.Threshold=debug
25
#
26
## Set the append to false, overwrite
27
#log4j.appender.FILE.Append=false
28
#
29
## Define the layout for file appender
30
#log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
31
#log4j.appender.FILE.layout.conversionPattern=%m%n
32

  
35
#log4j.logger.eu.dnetlib.repo.manager=DEBUG

Also available in: Unified diff