Rev 1312 | Rev 1558 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1312 | Rev 1353 | ||
---|---|---|---|
Line 13... | Line 13... | ||
13 | import org.json.JSONObject; |
13 | import org.json.JSONObject; |
14 | import pt.estgp.estgweb.Globals; |
14 | import pt.estgp.estgweb.Globals; |
15 | import pt.estgp.estgweb.domain.*; |
15 | import pt.estgp.estgweb.domain.*; |
16 | import pt.estgp.estgweb.domain.dao.DaoFactory; |
16 | import pt.estgp.estgweb.domain.dao.DaoFactory; |
17 | import pt.estgp.estgweb.domain.enums.LangEnum; |
17 | import pt.estgp.estgweb.domain.enums.LangEnum; |
- | 18 | import pt.estgp.estgweb.domain.views.CourseUnitSummaryView; |
|
- | 19 | import pt.estgp.estgweb.domain.views.CourseUnitView; |
|
18 | import pt.estgp.estgweb.services.courseunits.CreateCourseUnitXML; |
20 | import pt.estgp.estgweb.services.courseunits.CreateCourseUnitXML; |
19 | import pt.estgp.estgweb.services.email.EMAILJob; |
21 | import pt.estgp.estgweb.services.email.EMAILJob; |
20 | import pt.estgp.estgweb.services.email.SendEmailService; |
22 | import pt.estgp.estgweb.services.email.SendEmailService; |
21 | import pt.estgp.estgweb.services.expceptions.ServiceException; |
23 | import pt.estgp.estgweb.services.expceptions.ServiceException; |
22 | import pt.estgp.estgweb.services.jobs.JobScheduleService; |
24 | import pt.estgp.estgweb.services.jobs.JobScheduleService; |
Line 37... | Line 39... | ||
37 | import java.io.File; |
39 | import java.io.File; |
38 | import java.io.FileInputStream; |
40 | import java.io.FileInputStream; |
39 | import java.io.FileOutputStream; |
41 | import java.io.FileOutputStream; |
40 | import java.io.IOException; |
42 | import java.io.IOException; |
41 | import java.sql.Connection; |
43 | import java.sql.Connection; |
42 | import java.util.ArrayList; |
- | |
43 | import java.util.HashMap; |
- | |
44 | import java.util.List; |
- | |
45 | import java.util.Map; |
44 | import java.util.*; |
46 | 45 | ||
47 | /** |
46 | /** |
48 | * @author Jorge Machado |
47 | * @author Jorge Machado |
49 | * @date 11/May/2008 |
48 | * @date 11/May/2008 |
50 | * @time 12:51:32 |
49 | * @time 12:51:32 |
51 | * @see pt.estgp.estgweb |
50 | * @see pt.estgp.estgweb |
- | 51 | * |
|
- | 52 | * |
|
- | 53 | * @NOTAS IMPORTANTES DESTE SERVIÇO |
|
- | 54 | * |
|
- | 55 | * @DEPENDS TODO DEPENDENCIAS FORTES |
|
- | 56 | * Este serviço gera toda a informação acerca de sumários e sumários em FALTA |
|
- | 57 | * Existe uma forte depêndencia da CourseUniView que recebe daqui a lógica de decisão daquilo que são ou não sumários |
|
- | 58 | * atrasados |
|
52 | */ |
59 | */ |
53 | public class ImportSumariesJson extends ServiceJob implements IService |
60 | public class ImportSumariesJson extends ServiceJob implements IService |
54 | { |
61 | { |
55 | 62 | ||
56 | private static final 1.5.0/docs/api/java/util/logging/Logger.html">Logger logger = 1.5.0/docs/api/java/util/logging/Logger.html">Logger.getLogger(ImportSumariesJson.class); |
63 | private static final 1.5.0/docs/api/java/util/logging/Logger.html">Logger logger = 1.5.0/docs/api/java/util/logging/Logger.html">Logger.getLogger(ImportSumariesJson.class); |
Line 417... | Line 424... | ||
417 | 424 | ||
418 | 1.5.0/docs/api/java/lang/System.html">System.out.println("Syntax:"); |
425 | 1.5.0/docs/api/java/lang/System.html">System.out.println("Syntax:"); |
419 | 1.5.0/docs/api/java/lang/System.html">System.out.println("year, semestre, sendIonline, sendEmail"); |
426 | 1.5.0/docs/api/java/lang/System.html">System.out.println("year, semestre, sendIonline, sendEmail"); |
420 | 1.5.0/docs/api/java/lang/System.html">System.out.println("If no arguments wil user actual year import config in all semestres and true in email and ionline"); |
427 | 1.5.0/docs/api/java/lang/System.html">System.out.println("If no arguments wil user actual year import config in all semestres and true in email and ionline"); |
421 | 428 | ||
422 | 1.5.0/docs/api/java/lang/String.html">String year = DaoFactory.getConfigurationDaoImpl().getImportsDefaultImportYearCreateTransaction(); |
429 | 1.5.0/docs/api/java/lang/String.html">String year = "201516";DaoFactory.getConfigurationDaoImpl().getImportsDefaultImportYearCreateTransaction(); |
423 | 1.5.0/docs/api/java/lang/String.html">String semestre = null; |
430 | 1.5.0/docs/api/java/lang/String.html">String semestre = null; |
424 | boolean sendIonline = false; |
431 | boolean sendIonline = false; |
425 | boolean sendEmail = false; |
432 | boolean sendEmail = false; |
426 | int institutionCode = 1; |
433 | int institutionCode = 1; |
427 | if(args != null && args.length > 0) |
434 | if(args != null && args.length > 0) |
Line 463... | Line 470... | ||
463 | boolean sendIonline = sendIonlineStr != null && 1.5.0/docs/api/java/lang/Boolean.html">Boolean.parseBoolean(sendIonlineStr); |
470 | boolean sendIonline = sendIonlineStr != null && 1.5.0/docs/api/java/lang/Boolean.html">Boolean.parseBoolean(sendIonlineStr); |
464 | boolean sendEmail = sendEmailStr != null && 1.5.0/docs/api/java/lang/Boolean.html">Boolean.parseBoolean(sendEmailStr); |
471 | boolean sendEmail = sendEmailStr != null && 1.5.0/docs/api/java/lang/Boolean.html">Boolean.parseBoolean(sendEmailStr); |
465 | return run(importYear,1.5.0/docs/api/java/lang/Integer.html">Integer.parseInt(institutionCode),semestre,sendIonline,sendEmail); |
472 | return run(importYear,1.5.0/docs/api/java/lang/Integer.html">Integer.parseInt(institutionCode),semestre,sendIonline,sendEmail); |
466 | } |
473 | } |
467 | 474 | ||
- | 475 | ||
- | 476 | /** |
|
- | 477 | * METODO DE HELP PARA A VISTA DA UNIDADE CURRICULAR |
|
- | 478 | */ |
|
- | 479 | ||
- | 480 | public static void setSummariesFromJson(CourseUnitView cuview) { |
|
- | 481 | ||
- | 482 | int lateSummaries = 0; |
|
- | 483 | int prelancadosSummaries = 0; |
|
- | 484 | List<CourseUnitSummaryView> summariesFromJson = new ArrayList<CourseUnitSummaryView>(); |
|
- | 485 | 1.5.0/docs/api/java/lang/String.html">String summariesJson = cuview.getSummariesJson(); |
|
- | 486 | ArrayList<String> lateSummariesDates = new ArrayList<String>(); |
|
- | 487 | ArrayList<String> prelancadosSummariesDates = new ArrayList<String>(); |
|
- | 488 | ||
- | 489 | if(summariesJson != null && summariesJson.length() > 0) |
|
- | 490 | { |
|
- | 491 | try { |
|
- | 492 | JSONObject jsonObject = new JSONObject(summariesJson); |
|
- | 493 | JSONArray summaries = jsonObject.getJSONArray("summary"); |
|
- | 494 | for(int i = 0; i < summaries.length();i++) |
|
- | 495 | { |
|
- | 496 | JSONObject summary = summaries.getJSONObject(i); |
|
- | 497 | CourseUnitSummaryImpl sum = DomainObjectFactory.createCourseUnitSummaryImpl(); |
|
- | 498 | ||
- | 499 | if(sum.updateWithJson(summary)){ |
|
- | 500 | CourseUnitSummaryView view = new CourseUnitSummaryView(sum); |
|
- | 501 | summariesFromJson.add(view); |
|
- | 502 | } |
|
- | 503 | else |
|
- | 504 | // so verifica atrasados para unidades do ano corrente a titulo informativo |
|
- | 505 | { |
|
- | 506 | CourseUnitSummaryView view = new CourseUnitSummaryView(sum); |
|
- | 507 | if(view.getNumber() < 0 && view.getOriginalDate().getTime() + 48*60*60*1000 < 1.5.0/docs/api/java/lang/System.html">System.currentTimeMillis()) |
|
- | 508 | { |
|
- | 509 | ||
- | 510 | //System.out.println(view.getNumber() + " " + view.getDate() + " " + view.getOriginalDate()); |
|
- | 511 | lateSummaries++; |
|
- | 512 | lateSummariesDates.add(view.getDate()); |
|
- | 513 | } |
|
- | 514 | else if(sum.getcEstado().equals(""+Globals.SIGES_SUMARIO_PRELANCADO_CODIGO)) |
|
- | 515 | { |
|
- | 516 | prelancadosSummaries++; |
|
- | 517 | prelancadosSummariesDates.add(view.getDate()); |
|
- | 518 | } |
|
- | 519 | } |
|
- | 520 | } |
|
- | 521 | } catch (JSONException e) { |
|
- | 522 | logger.error(e,e); |
|
- | 523 | } |
|
- | 524 | 1.5.0/docs/api/java/util/Collections.html">Collections.sort(summariesFromJson, new Comparator<CourseUnitSummaryView>() { |
|
- | 525 | @1.5.0/docs/api/java/lang/Override.html">Override |
|
- | 526 | public int compare(CourseUnitSummaryView courseUnitSummaryView, CourseUnitSummaryView courseUnitSummaryView2) { |
|
- | 527 | ||
- | 528 | if (courseUnitSummaryView.getNumber() > courseUnitSummaryView2.getNumber()) |
|
- | 529 | return -1; |
|
- | 530 | else if (courseUnitSummaryView.getNumber() < courseUnitSummaryView2.getNumber()) |
|
- | 531 | return 1; |
|
- | 532 | return 0; |
|
- | 533 | } |
|
- | 534 | }); |
|
- | 535 | cuview.setSummariesFromJson(summariesFromJson); |
|
- | 536 | cuview.setLateSummaries(lateSummaries); |
|
- | 537 | cuview.setLateSummariesDates(lateSummariesDates); |
|
- | 538 | cuview.setPrelancadosSummaries(prelancadosSummaries); |
|
- | 539 | cuview.setPrelancadosSummariesDates(prelancadosSummariesDates); |
|
- | 540 | } |
|
- | 541 | } |
|
468 | } |
542 | } |