GatherProjInfo.pas 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. unit GatherProjInfo;
  2. interface
  3. uses
  4. sdDB;
  5. type
  6. TGatherProjInfo = class
  7. private
  8. FProjectID: Integer;
  9. FProjectName: string;
  10. FFileName: string;
  11. FProjRec: TsdDataRecord;
  12. FProjType: Integer;
  13. public
  14. constructor Create(ARec: TsdDataRecord; AProjType: Integer); virtual;
  15. destructor Destroy; override;
  16. property ProjectID: Integer read FProjectID;
  17. property ProjectName: string read FProjectName;
  18. property FileName: string read FFileName;
  19. property ProjRec: TsdDataRecord read FProjRec;
  20. // 值为0 普通汇总项目,值非0 项目类型根据报表
  21. property ProjType: Integer read FProjType;
  22. end;
  23. TSelectProjInfo = class(TGatherProjInfo)
  24. private
  25. FIsTender: Boolean;
  26. public
  27. constructor Create(ARec: TsdDataRecord; AProjType: Integer); override;
  28. property IsTender: Boolean read FIsTender;
  29. end;
  30. implementation
  31. { TGatherProjInfo }
  32. constructor TGatherProjInfo.Create(ARec: TsdDataRecord; AProjType: Integer);
  33. begin
  34. FProjRec := ARec;
  35. if Assigned(FProjRec) then
  36. begin
  37. FProjectID := FProjRec.ValueByName('ID').AsInteger;
  38. FProjectName := FProjRec.ValueByName('Name').AsString;
  39. FFileName := FProjRec.ValueByName('FileName').AsString;
  40. end
  41. else
  42. FProjectID := -1;
  43. FProjType := AProjType;
  44. end;
  45. destructor TGatherProjInfo.Destroy;
  46. begin
  47. inherited;
  48. end;
  49. { TSelectProjInfo }
  50. constructor TSelectProjInfo.Create(ARec: TsdDataRecord; AProjType: Integer);
  51. begin
  52. inherited;
  53. FIsTender := FProjRec.ValueByName('Type').AsInteger = 1;
  54. end;
  55. end.