ActionEdu.cs 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. using CD67.FicheCollege.Entity.WsTiers;
  2. using System;
  3. using System.ComponentModel.DataAnnotations;
  4. using System.Linq;
  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(ActionEdu_Metadata))]
  11. public partial class ActionEdu
  12. {
  13. public long? totalEleves
  14. {
  15. get
  16. {
  17. return this.ActionsEduColleges.Where(a=>a.NbEleves != null).Sum(a => a.NbEleves);
  18. }
  19. }
  20. public Tiers tiers;
  21. public ActionEdu flat()
  22. {
  23. return new ActionEdu()
  24. {
  25. Id = Id,
  26. Numero = Numero,
  27. Nom = Nom,
  28. Montant = Montant,
  29. Description = Description,
  30. CommentaireInterne = CommentaireInterne,
  31. CommentairePublic = CommentairePublic,
  32. Neutralise = Neutralise,
  33. Ordre = Ordre,
  34. ActionEduThematiqueId = ActionEduThematiqueId,
  35. StatutId = StatutId,
  36. AnneeId = AnneeId,
  37. TokenId = TokenId
  38. };
  39. }
  40. }
  41. /// <summary>
  42. /// Classe contenant les DataAnnotations pour chaque champ
  43. /// </summary>
  44. public class ActionEdu_Metadata
  45. {
  46. [Required]
  47. public int Id { get; set; }
  48. [Required]
  49. [Display(Name = "Année")]
  50. public int AnneeId { get; set; }
  51. [Required]
  52. [Display(Name = "Numéro")]
  53. public int Numero { get; set; }
  54. [Required]
  55. [Display(Name = "Thématique")]
  56. public int ActionEduThematiqueId { get; set; }
  57. [Required]
  58. [Display(Name = "Nom")]
  59. public string Nom { get; set; }
  60. [Required]
  61. [Display(Name = "Statut")]
  62. public int StatutId { get; set; }
  63. [DataType(DataType.Currency)]
  64. [Display(Name = "Montant indicatif")]
  65. public decimal Montant { get; set; }
  66. [Display(Name = "Description")]
  67. [DataType(DataType.MultilineText)]
  68. public string Description { get; set; }
  69. [Display(Name = "Commentaire Public")]
  70. [DataType(DataType.MultilineText)]
  71. public string CommentairePublic { get; set; }
  72. [Display(Name = "Commentaire Interne")]
  73. [DataType(DataType.MultilineText)]
  74. public string CommentaireInterne { get; set; }
  75. [Display(Name = "Neutralisé (oui/non)")]
  76. public bool Neutralise { get; set; }
  77. public int Ordre { get; set; }
  78. }
  79. }