js-gei 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/Evaluator/ExpresionLogicService.ts +669 -0
  2. package/Evaluator/Parser/AddLeadZerosParse.ts +70 -0
  3. package/Evaluator/Parser/AppearParse.ts +67 -0
  4. package/Evaluator/Parser/BaseParse.ts +93 -0
  5. package/Evaluator/Parser/CalcDateParse.ts +73 -0
  6. package/Evaluator/Parser/CheckParse.ts +99 -0
  7. package/Evaluator/Parser/CommaParser.ts +17 -0
  8. package/Evaluator/Parser/ConcatParse.ts +34 -0
  9. package/Evaluator/Parser/CountParse.ts +26 -0
  10. package/Evaluator/Parser/EmptyParse.ts +41 -0
  11. package/Evaluator/Parser/ExistParse.ts +69 -0
  12. package/Evaluator/Parser/IfParse.ts +388 -0
  13. package/Evaluator/Parser/IfStategment.ts +345 -0
  14. package/Evaluator/Parser/InDetailParse.ts +109 -0
  15. package/Evaluator/Parser/InListParse.ts +57 -0
  16. package/Evaluator/Parser/LiteralValueParse.ts +36 -0
  17. package/Evaluator/Parser/LogicalOperatorParse.ts +16 -0
  18. package/Evaluator/Parser/OnlyExpressionParse.ts +137 -0
  19. package/Evaluator/Parser/OperatorParse.ts +17 -0
  20. package/Evaluator/Parser/StartsParse.ts +36 -0
  21. package/Evaluator/Parser/SubstrParse.ts +110 -0
  22. package/Evaluator/Parser/SumParse.ts +15 -0
  23. package/Evaluator/Parser/ToNullParser.ts +0 -0
  24. package/Evaluator/Parser/TrimParse.ts +30 -0
  25. package/Evaluator/Parser/UpperLoverParse.ts +41 -0
  26. package/Evaluator/Parser/ValueFromObjParse.ts +37 -0
  27. package/Evaluator/Parser/ValueParse.ts +61 -0
  28. package/HelperSessionStorage.ts +13 -0
  29. package/Interfaces/SchemaStruct.ts +28 -0
  30. package/Library/jsonrpc-2.0.js +869 -0
  31. package/Structure/InvoiceObj.ts +691 -0
  32. package/Structure/RecordArray.ts +145 -0
  33. package/Structure/RecordSingle.ts +1076 -0
  34. package/Structure/TableLevel.ts +248 -0
  35. package/dist/Evaluator/ExpresionLogicService.js +505 -0
  36. package/dist/Evaluator/Parser/AddLeadZerosParse.js +55 -0
  37. package/dist/Evaluator/Parser/AppearParse.js +48 -0
  38. package/dist/Evaluator/Parser/BaseParse.js +89 -0
  39. package/dist/Evaluator/Parser/CalcDateParse.js +54 -0
  40. package/dist/Evaluator/Parser/CheckParse.js +80 -0
  41. package/dist/Evaluator/Parser/CommaParser.js +13 -0
  42. package/dist/Evaluator/Parser/ConcatParse.js +29 -0
  43. package/dist/Evaluator/Parser/CountParse.js +23 -0
  44. package/dist/Evaluator/Parser/EmptyParse.js +35 -0
  45. package/dist/Evaluator/Parser/ExistParse.js +57 -0
  46. package/dist/Evaluator/Parser/IfParse.js +296 -0
  47. package/dist/Evaluator/Parser/IfStategment.js +287 -0
  48. package/dist/Evaluator/Parser/InDetailParse.js +79 -0
  49. package/dist/Evaluator/Parser/InListParse.js +40 -0
  50. package/dist/Evaluator/Parser/LiteralValueParse.js +26 -0
  51. package/dist/Evaluator/Parser/LogicalOperatorParse.js +13 -0
  52. package/dist/Evaluator/Parser/OnlyExpressionParse.js +106 -0
  53. package/dist/Evaluator/Parser/OperatorParse.js +13 -0
  54. package/dist/Evaluator/Parser/StartsParse.js +30 -0
  55. package/dist/Evaluator/Parser/SubstrParse.js +83 -0
  56. package/dist/Evaluator/Parser/SumParse.js +13 -0
  57. package/dist/Evaluator/Parser/ToNullParser.js +1 -0
  58. package/dist/Evaluator/Parser/TrimParse.js +25 -0
  59. package/dist/Evaluator/Parser/UpperLoverParse.js +32 -0
  60. package/dist/Evaluator/Parser/ValueFromObjParse.js +29 -0
  61. package/dist/Evaluator/Parser/ValueParse.js +59 -0
  62. package/dist/HelperSessionStorage.js +12 -0
  63. package/dist/Interfaces/SchemaStruct.js +2 -0
  64. package/dist/Structure/InvoiceObj.js +610 -0
  65. package/dist/Structure/RecordArray.js +102 -0
  66. package/dist/Structure/RecordSingle.js +950 -0
  67. package/dist/Structure/TableLevel.js +162 -0
  68. package/dist/index.js +19 -0
  69. package/index.ts +20 -0
  70. package/package.json +20 -0
  71. package/tsconfig.json +103 -0
@@ -0,0 +1,145 @@
1
+
2
+
3
+ import { RecordSingle } from "./RecordSingle";
4
+ import { TableLevel } from "./TableLevel";
5
+
6
+ export class RecordArray {
7
+ public Records:RecordSingle[]=[];
8
+ public Parent:TableLevel|null;
9
+ public ObjectInfo:any;
10
+
11
+ public constructor(
12
+ obj:any,
13
+ def:any,
14
+ objectInfo:any,
15
+ parent:TableLevel|null,
16
+
17
+ )
18
+ {
19
+ this.Parent=parent;
20
+ this.ObjectInfo=objectInfo;
21
+ for(let i=0;i<obj.length;i++)
22
+ {
23
+ var item=obj[i];
24
+ this.Records.push(new RecordSingle(item,def,objectInfo,parent))
25
+ }
26
+ }
27
+ TranslateObj(obj:any){
28
+ if(this.Records.length==0)
29
+ {
30
+ return;
31
+ }
32
+ for(let i=0;i<this.Records.length;i++)
33
+ {
34
+ this.Records[i].TranslateObj(obj);
35
+ }
36
+ }
37
+ public GetObject(){
38
+ if(this.Records.length==0)
39
+ {
40
+ return null;
41
+ }
42
+ var array=[];
43
+ for(let i=0;i<this.Records.length;i++)
44
+ {
45
+ array.push(this.Records[i].GetObject());
46
+ }
47
+ return array;
48
+
49
+ }
50
+ public Inicialize(skippedLevels:string[])
51
+ {
52
+ if(this.Records!=null)
53
+ {
54
+ for(let i=0;i<this.Records.length;i++)
55
+ {
56
+ this.Records[i].Inicialize(skippedLevels);
57
+ }
58
+
59
+ }
60
+ }
61
+ public getSaveObject(objectInfoUIEdit:any){
62
+ if(this.Records==null)
63
+ {
64
+ return null;
65
+ }
66
+ var array:any=[];
67
+
68
+ if(this.Parent?.Tablename=="EU_Invoices_Items_Classes")
69
+ {
70
+ if(this.Records.length==1)
71
+ {
72
+ var item=this.Records[0];
73
+ if(item.Record["ItemClassCodeSchID"]==null&&item.Record["ItemClassCode"]==null)
74
+ {
75
+ return array;
76
+ }
77
+ }
78
+ }
79
+ for(let i=0;i<this.Records.length;i++)
80
+ {
81
+ array.push(this.Records[i].getSaveObject(objectInfoUIEdit));
82
+ }
83
+ return array;
84
+ }
85
+ public getFullObject(objectInfo:any){
86
+ if(this.Records==null)
87
+ {
88
+ return null;
89
+ }
90
+ var array=[];
91
+ for(let i=0;i<this.Records.length;i++)
92
+ {
93
+ array.push(this.Records[i].getSaveObject(objectInfo));
94
+ }
95
+ return array;
96
+ }
97
+ public Validate()
98
+ {
99
+ if(this.Records==null)
100
+ {
101
+ return null;
102
+ }
103
+
104
+ const errors:any={};
105
+ for(let i=0;i<this.Records.length;i++)
106
+ {
107
+ let error=this.Records[i].Validate();
108
+ if(error!=null)
109
+ {
110
+ errors[i.toString()]=error;
111
+ }
112
+ }
113
+ if(Object.keys(errors).length==0)
114
+ {
115
+ return null;
116
+ }
117
+ const keys=Object.keys(errors);
118
+
119
+ let errorMessage="";
120
+ let validateDetailsErrors = <any>[];
121
+
122
+ for(let i=0;i<keys.length;i++)
123
+ {
124
+ let lineEM="";
125
+ const key=keys[i];
126
+ let item=errors[key];
127
+
128
+ if(item["missingKeys"]!=null)
129
+ {
130
+ lineEM="Missing mandatory keys:"+item["missingKeys"];
131
+
132
+
133
+
134
+ }
135
+ if(lineEM!=null)
136
+ {
137
+ errorMessage+="Errors on index "+key+": "+lineEM;
138
+ validateDetailsErrors.push([key, item["missingKeys"]]);
139
+ }
140
+ }
141
+
142
+ // return errorMessage==""?null:errorMessage;
143
+ return { "errorMessage": errorMessage == "" ? null : errorMessage, "validateDetailsErrors": validateDetailsErrors };
144
+ }
145
+ }