LogikalFinish.cs 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. using InABox.Integration.Logikal;
  2. using System;
  3. using System.Collections.Generic;
  4. namespace PRSDesktop.Integrations.Logikal
  5. {
  6. public enum LogikalFinishType
  7. {
  8. Mill = 0,
  9. Powdercoated = 1,
  10. Anodised = 2,
  11. Galvanised = 3,
  12. Stainless = 4
  13. }
  14. public class LogikalFinish : LogikalItem, ILogikalFinish
  15. {
  16. public String Code { get; set; }
  17. public String Description { get; set; }
  18. public double Price { get; set; }
  19. public override void ValidateQuery(string sql, List<string> errors)
  20. {
  21. ValidateField(sql, nameof(Code), errors);
  22. ValidateField(sql, nameof(Description), errors);
  23. }
  24. public static String SQL = $@"
  25. select distinct
  26. c.[ColorName] as {nameof(Code)},
  27. c.[ColorDescription] as {nameof(Description)}
  28. b.[PriceCoating] as {nameof(Price)}
  29. from
  30. Colors c
  31. left outer join
  32. profilebars b on c.[ColorId] = b.[LK_ColorId]
  33. where
  34. coalesce(c.[ColorName],'') <> ''";
  35. }
  36. }