College.cs 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  1. using CD67.FicheCollege.Entity;
  2. using CD67.FicheCollege.Entity.WsAgents;
  3. using CD67.FicheCollege.Entity.WsExternes;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.ComponentModel.DataAnnotations;
  7. namespace CD67.FicheCollege.Entity
  8. {
  9. /// <summary>
  10. /// Classe d'extension de celle d'Entity, nécessaire pour y associer les Metadata
  11. /// </summary>
  12. [MetadataType(typeof(College_Metadata))]
  13. public partial class College
  14. {
  15. public string AdresseComplete => $"{this.Adresse}\n{this.Code_Postal} {this.Commune}";
  16. public WsExternes.Agent principal;
  17. public WsExternes.Agent adjoint;
  18. public WsAgents.Agent gestionnaire1;
  19. public WsAgents.Agent gestionnaire2;
  20. public Dictionary<string, string> educfData = new Dictionary<string, string>();
  21. // Charge les données d'identité des agents depuis le web-service
  22. public void hydrate()
  23. {
  24. Entity.WsExternes.WsExternes wsExternes = new Entity.WsExternes.WsExternes();
  25. wsExternes.UseDefaultCredentials = true;
  26. Entity.WsAgents.WsAgents wsAgents = new Entity.WsAgents.WsAgents();
  27. wsAgents.UseDefaultCredentials = true;
  28. if (!String.IsNullOrEmpty(PrincipalSid))
  29. {
  30. principal = wsExternes.GetById(PrincipalSid);
  31. }
  32. if (!String.IsNullOrEmpty(AdjointSid))
  33. {
  34. adjoint = wsExternes.GetById(AdjointSid);
  35. }
  36. if (!String.IsNullOrEmpty(Gestionnaire1Sid))
  37. {
  38. gestionnaire1 = wsAgents.GetById(Gestionnaire1Sid);
  39. }
  40. if (!String.IsNullOrEmpty(Gestionnaire2Sid))
  41. {
  42. gestionnaire2 = wsAgents.GetById(Gestionnaire2Sid);
  43. }
  44. }
  45. public College flat()
  46. {
  47. return new College()
  48. {
  49. Id = Id,
  50. Annee_Id = Annee_Id,
  51. CodeRne = CodeRne,
  52. Libelle = Libelle,
  53. Adresse = Adresse,
  54. Code_Postal = Code_Postal,
  55. TypeCollege_Id = TypeCollege_Id,
  56. Commune_Insee = Commune_Insee,
  57. Commune = Commune,
  58. Canton = Canton,
  59. Territoire_Id = Territoire_Id,
  60. TAD = TAD,
  61. CDC = CDC,
  62. Tel = Tel,
  63. Fax = Fax,
  64. Email = Email,
  65. PrincipalSid = PrincipalSid,
  66. AdjointSid = AdjointSid,
  67. Gestionnaire1Sid = Gestionnaire1Sid,
  68. Gestionnaire2Sid = Gestionnaire2Sid,
  69. TokenId = TokenId,
  70. RestaurationType_Id = RestaurationType_Id
  71. };
  72. }
  73. }
  74. /// <summary>
  75. /// Classe contenant les DataAnnotations pour chaque champ
  76. /// </summary>
  77. public class College_Metadata
  78. {
  79. [Required]
  80. public string Id { get; set; }
  81. [Required]
  82. [Display(Name = "Code RNE du collège")]
  83. public string CodeRne { get; set; }
  84. [Required]
  85. [Display(Name = "Année scolaire")]
  86. public string Annee_Id { get; set; }
  87. [Required]
  88. [Display(Name = "Nom")]
  89. public string Libelle { get; set; }
  90. [Display(Name = "Adresse")]
  91. public string Adresse { get; set; }
  92. [Display(Name = "Code postal")]
  93. public string Code_Postal { get; set; }
  94. [Display(Name = "Type d'établissement")]
  95. public int TypeCollege_Id { get; set; }
  96. [Display(Name = "Code INSEE")]
  97. public string Commune_Insee { get; set; }
  98. [Required]
  99. [Display(Name = "Commune")]
  100. public string Commune { get; set; }
  101. [Display(Name = "Canton de rattachement")]
  102. public string Canton { get; set; }
  103. [Display(Name = "Territoire de rattachement")]
  104. public string Territoire_Id { get; set; }
  105. [Display(Name = "TAD")]
  106. public string TAD { get; set; }
  107. [Display(Name = "CDC")]
  108. public string CDC { get; set; }
  109. [Display(Name = "Téléphone")]
  110. public string Tel { get; set; }
  111. [Display(Name = "Fax")]
  112. public string Fax { get; set; }
  113. [Display(Name = "EMail")]
  114. public string Email { get; set; }
  115. [Display(Name = "Principal")]
  116. public string PrincipalSid { get; set; }
  117. [Display(Name = "Adjoint")]
  118. public string AdjointSid { get; set; }
  119. [Display(Name = "Gestionnaire 1")]
  120. public string Gestionnaire1Sid { get; set; }
  121. [Display(Name = "Gestionnaire 2")]
  122. public string Gestionnaire2Sid { get; set; }
  123. public Guid TokenId { get; set; }
  124. [Display(Name = "Type de restauration")]
  125. public int RestaurationType_Id { get; set; }
  126. }
  127. }