Advertisement
Guest User

Untitled

a guest
Jun 26th, 2019
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.63 KB | None | 0 0
  1. [Table("Lote")]
  2. public class Lote
  3. {
  4. [Key]
  5. public int Id { get; set; }
  6.  
  7. [Required]
  8. [MinLength(2, ErrorMessage ="O nome deve ter no minimo 2 caracters")]
  9. [MaxLength(140, ErrorMessage ="O nome pode ter no maximo 140 caracteres")]
  10. public string Proprietario { get; set; }
  11.  
  12. public string CPF { get; set; }
  13.  
  14.  
  15. //Gera um checkbox
  16. public Boolean Socio { get; set; }
  17. public string Cavalete { get; set; }
  18.  
  19. public virtual ICollection<Leitura> Leituras { get; set; }
  20. }
  21.  
  22. [Table("Leitura")]
  23. public class Leitura
  24. {
  25. [Key]
  26. public int Id { get; set; }
  27.  
  28. [ForeignKey("Lote")]
  29. public int LoteId { get; set; }
  30.  
  31. public DateTime DataLeitura { get; set; }
  32.  
  33.  
  34. public int NumeroLeitura { get; set; }
  35.  
  36. public virtual Lote Lote { get; set; }
  37.  
  38. public virtual Consumo Consumo { get; set; }
  39.  
  40.  
  41.  
  42. }
  43.  
  44. public class Consumo
  45. {
  46. [Key, ForeignKey("Leitura")]
  47. public int Id { get; set; }
  48.  
  49. public Double Valor { get; set; }
  50.  
  51. public DateTime? DataPagamento { get; set; }
  52.  
  53.  
  54.  
  55. public virtual Leitura Leitura { get; set; }
  56. }
  57.  
  58. [HttpPost]
  59. [ValidateAntiForgeryToken]
  60. public ActionResult Create([Bind(Include = "Id,LoteId,DataLeitura,NumeroLeitura")] Leitura leitura)
  61. {
  62. if (ModelState.IsValid)
  63. {
  64. //aki tudo que ja tentei
  65. /*
  66. * var leitura2 = from l in db.Leitura select l;
  67. leitura2 = leitura2.OrderByDescending(l => l.Id);
  68. db.Leitura.Where(l => l.LoteId == leitura.LoteId).OrderByDescending(l=> l.NumeroLeitura);
  69. // db.Leitura.leitura2.NumeroLeitura = db.Leitura.Where(l => l.LoteId == leitura.LoteId).FirstAsync;
  70. // db2.Leitura.Find(leitura2.LoteId).;
  71. var sql = db.Leitura.SqlQuery("select ID from Leitura Order by ID DESC;");
  72. */
  73.  
  74.  
  75. var consumo = new Consumo();
  76. consumo.Leitura = leitura;
  77.  
  78.  
  79. //Essa parte que faz a conta apra salvar o consumo
  80. consumo.Valor =( leitura.NumeroLeitura) * 0.71;
  81.  
  82.  
  83.  
  84. //quero fazer +- isso
  85. //consumo.Valor = (leitura.NumeroLeitura< <- ESSE SERIA O VALOR DA LEITURA ANTERIOR> - leitura.NumeroLeitura) * 0.71;
  86.  
  87.  
  88.  
  89. db.Leitura.Add(leitura);
  90. db.Consumo.Add(consumo);
  91. db.SaveChanges();
  92.  
  93. return RedirectToAction("Index");
  94. }
  95.  
  96. ViewBag.LoteId = new SelectList(db.Lote, "Id", "CPF", leitura.LoteId);
  97. return View(leitura);
  98. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement