College.cs 3.5 KB

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