calculation.ts 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. // 计算选项
  2. export interface ICalcOption {
  3. calcMain: boolean;
  4. calcAdd: boolean;
  5. calcEst: boolean;
  6. }
  7. // 调价类型:
  8. export enum TenderKinds {
  9. COE_CALC, // 正向调价-按系数计算
  10. REVERSE_RATION, // 反向调价-调子目
  11. REVERSE_GLJ, // 反向调价-调工料机
  12. NULL, // 无需参数时,用作占位
  13. }
  14. // 调价设置
  15. export interface ITenderSetting {
  16. gljPriceTenderCoe: number; // 工料机单价调整系数
  17. tenderKind: TenderKinds;
  18. }
  19. // 强制修改叶子清单单价,分摊计算类型: 定额工程量、工料机消耗量
  20. export enum DistributeModel {
  21. DISTR_RATION = 'DISTR_RATION',
  22. DISTR_GLJ = 'DISTR_GLJ',
  23. }
  24. // 强制修改叶子清单单价,分摊计算其下挂定额的工料机。列出被排除的工料机类型
  25. export enum NoDistributeType {
  26. NO_DISTR_ESTIMATE = 'NO_DISTR_ESTIMATE',
  27. NO_DISTR_JIAGONG = 'NO_DISTR_JIAGONG',
  28. NO_DISTR_JIADING = 'NO_DISTR_JIADING',
  29. NO_DISTR_MAIN = 'NO_DISTR_MAIN',
  30. NO_DISTR_LABOUR = 'NO_DISTR_LABOUR',
  31. NO_DISTR_MACHINE = 'NO_DISTR_MACHINE',
  32. }
  33. export interface IDistributeSetting {
  34. distributeModel: DistributeModel;
  35. noDistributeTypes: NoDistributeType[];
  36. }
  37. export interface ICalcItem {
  38. ID: number;
  39. code: string;
  40. name: string;
  41. fieldName: string;
  42. dispExpr: string;
  43. dispExprUser?: string;
  44. expression: string;
  45. compiledExpr?: string;
  46. statement: string;
  47. feeRateID?: number;
  48. feeRate?: string;
  49. labourCoeID?: number;
  50. memo?: string;
  51. custom?: boolean;
  52. [key: string]: any;
  53. }
  54. export interface ICalcTemplate {
  55. ID: number;
  56. name: string;
  57. calcItems: ICalcItem[];
  58. [key: string]: any;
  59. }
  60. export interface IStdCalcProgram {
  61. ID: number;
  62. region: string;
  63. libName: string;
  64. displayName: string;
  65. compilationId: string;
  66. compilationName: string;
  67. templates: ICalcTemplate[];
  68. }
  69. export interface ICalcProgramFile {
  70. ID: string;
  71. projectID: string;
  72. name: string;
  73. libID: number;
  74. libName: string;
  75. programs: ICalcTemplate[];
  76. }