Update_7_48_RequisitionActualQuantity.cs 1.0 KB

1234567891011121314151617181920212223242526272829303132333435
  1. using Comal.Classes;
  2. using InABox.Configuration;
  3. using InABox.Core;
  4. using InABox.Database;
  5. using System;
  6. using System.Collections.Generic;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10. namespace PRS.Shared;
  11. using Comal.Classes;
  12. public class Update_7_48_RequisitionActualQuantity : DatabaseUpdateScript
  13. {
  14. public override VersionNumber Version => new VersionNumber(7, 48);
  15. public override bool Update()
  16. {
  17. Logger.Send(LogType.Information, "", "Updating Quantity -> ActualQuantity");
  18. var items = DbFactory.Provider.Query(
  19. new Filter<RequisitionItem>(x=>x.ActualQuantity).IsEqualTo(0)
  20. .And(x=>x.Quantity).IsNotEqualTo(0),
  21. new Columns<RequisitionItem>(x => x.ID)
  22. .Add(x => x.Quantity)
  23. .Add(x=>x.ActualQuantity)
  24. ).ToObjects<RequisitionItem>().ToList();
  25. foreach (var item in items)
  26. item.ActualQuantity = item.Quantity;
  27. DbFactory.Provider.Save(items);
  28. return true;
  29. }
  30. }