College.cs 3.5 KB

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