owl-cli 6.40.0 → 6.42.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.
File without changes
@@ -644,14 +644,13 @@ function getObjectPermissionFilter(tableId, roleId,orgId,userId){
644
644
  return [filters,excludeFilters]
645
645
  }
646
646
  function getListPermissionFilter(tableId, roleId,orgId,userId, permissions){
647
- if(userId==='0'){
647
+ if(userId==='0' && orgId==='0' && roleId==='0'){
648
648
  return null;
649
649
  }
650
+
650
651
  //获得有权限的对象的filter
651
652
  var tp = expandTablePermission(permissions);
652
- // $.log("tp=" + JSON.stringify(tp));
653
- var filters = [];
654
- var excludeFilters = [];
653
+
655
654
 
656
655
  //如果有listAll
657
656
 
@@ -1,6 +1,6 @@
1
1
  function isScalar(o){
2
2
  if(o==null){
3
- return true;
3
+ return false;
4
4
  }
5
5
  if(typeof o==='object'){
6
6
  return false;
@@ -44,9 +44,9 @@ function isEqual(r1,r2){
44
44
 
45
45
  }
46
46
 
47
- function diffArray(a1, a2,parentKey){
47
+ function diffArray(a1, a2,parentKeys){
48
48
  //a1是旧的,a2是新的
49
- // $.log("diffArray,parentKey=" + parentKey);
49
+ // $.log("diffArray,parentKeys=" + parentKeys);
50
50
 
51
51
  var temp_matched = [];
52
52
  var result = [];
@@ -56,6 +56,12 @@ function diffArray(a1, a2,parentKey){
56
56
  if(!a2){
57
57
  a2 = [];
58
58
  }
59
+
60
+ for(var i=0; i<a2.length; i++){
61
+ var r2 = a2[i];
62
+ delete r2._matched;
63
+ }
64
+
59
65
  for(var i=0; i<a1.length; i++){
60
66
  var r1 = a1[i];
61
67
  var found = false;
@@ -92,6 +98,7 @@ function diffArray(a1, a2,parentKey){
92
98
  }
93
99
  }
94
100
  else if(!r2._matched){
101
+ delete r2._matched;
95
102
  result.push({
96
103
  type:'added',
97
104
  r:r2
@@ -104,7 +111,10 @@ function diffArray(a1, a2,parentKey){
104
111
 
105
112
 
106
113
 
107
- function diff(obj1, obj2,parentKey){
114
+ function diff(obj1, obj2,parentKeys){
115
+ if(!parentKeys){
116
+ parentKeys = [];
117
+ }
108
118
  var result = []
109
119
  if(!obj1){
110
120
  obj1 = {};
@@ -131,51 +141,83 @@ function diff(obj1, obj2,parentKey){
131
141
  result.push({
132
142
  type:'changed',
133
143
  fieldKey : k1,
134
- parentKey: parentKey,
135
- oldv : v1,
136
- newv : v2
144
+ parentKeys: parentKeys,
145
+ oldv : '' +v1,
146
+ newv : '' + v2
137
147
  })
138
148
  }
139
149
  else{
150
+
140
151
  if(v1!==v2 && v1===null){
141
152
  result.push({
142
153
  type:'added',
143
154
  fieldKey : k1,
144
- parentKey: parentKey,
145
- oldv : v1,
146
- newv : v2
155
+ parentKeys: parentKeys,
156
+ oldv : null,
157
+ newv : ''+v2
147
158
  })
148
159
  }
149
160
  else if(v1!==null && v2===null){
150
161
  result.push({
151
162
  type:'deleted',
152
163
  fieldKey : k1,
153
- parentKey: parentKey,
164
+ parentKeys: parentKeys,
154
165
  oldv : v1,
155
166
  newv : v2
156
167
  })
157
168
  }
169
+
158
170
  }
159
171
  }
160
172
  else{
161
- if(Array.isArray(v1) || Array.isArray(v2)){
162
- var ret = diffArray(v1,v2,parentKey + "." + k1);
163
- if(ret && ret.length>0){
164
- result.push({
165
- type:'changed',
166
- fieldKey : k1,
167
- fieldType:'array',
168
- parentKey: parentKey,
169
- diff : ret
170
- });
173
+ //v1 == null 或者 v1是object
174
+ if(v1!=null){
175
+ if(Array.isArray(v1) && Array.isArray(v2)){
176
+ var newParentKeys = [].concat(parentKeys,[k1]);
177
+ var ret = diffArray(v1,v2,newParentKeys);
178
+ if(ret && ret.length>0){
179
+ result.push({
180
+ type:'changed',
181
+ fieldKey : k1,
182
+ fieldType:'array',
183
+ parentKeys: parentKeys,
184
+ diff : ret
185
+ });
186
+ }
187
+ }
188
+ else{
189
+ //v1 不是null ,也不是array, 所以是Object
190
+ if(v2===null){
191
+ result.push({
192
+ type:'deleted',
193
+ fieldKey : k1,
194
+ parentKeys: parentKeys,
195
+ oldv : '' + v1,
196
+ newv : v2
197
+ })
198
+ }
199
+ else{
200
+ var newParentKeys = [].concat(parentKeys,[k1]);
201
+ var ret1 = diff(v1,v2,newParentKeys);
202
+ result = [].concat(result,ret1);
203
+ }
204
+
171
205
  }
172
206
  }
173
207
  else{
174
- var ret1 = diff(v1,v2,parentKey + "." + k1);
175
- result = [].concat(result,ret1);
208
+ //v1 == null;
209
+ if(v2!=null){
210
+ result.push({
211
+ type:'added',
212
+ fieldKey : k1,
213
+ parentKeys: parentKeys,
214
+ oldv : v1,
215
+ newv : v2
216
+ })
217
+ }
176
218
  }
177
- }
178
219
 
220
+ }
179
221
  }
180
222
 
181
223
  for(var i=0; i<keys2.length; i++){
@@ -189,9 +231,9 @@ function diff(obj1, obj2,parentKey){
189
231
  result.push({
190
232
  type:'added',
191
233
  fieldKey : k2,
192
- parentKey: parentKey,
193
- oldv : v1,
194
- newv : v2
234
+ parentKeys: parentKeys,
235
+ oldv : v1==null?null:'' + v1,
236
+ newv : '' +v2
195
237
  })
196
238
  }
197
239
  else{
@@ -200,25 +242,20 @@ function diff(obj1, obj2,parentKey){
200
242
  type:'added',
201
243
  fieldKey : k2,
202
244
  fieldType:'array',
203
- parentKey: parentKey,
245
+ parentKeys: parentKeys,
204
246
  diff : v2
205
247
  });
206
248
  }
207
249
  else{
208
- for(var kv in v2){
209
- result.push({
210
- type:'added',
211
- fieldKey : kv,
212
- parentKey: parentKey+"." + k2,
213
- oldv:null,
214
- newv:v2[kv]
215
- });
216
- }
250
+ result.push({
251
+ type:'added',
252
+ fieldKey : k2,
253
+ parentKeys: parentKeys,
254
+ oldv:null,
255
+ newv:v2
256
+ });
217
257
  }
218
258
  }
219
-
220
-
221
259
  }
222
260
  return result;
223
- }
224
-
261
+ }
@@ -140,7 +140,10 @@ function buildSort(sort){
140
140
  var filters = getFilters();
141
141
 
142
142
  var permissionFilter = getListPermissionFilter(tableId,roleId,orgId,loginId,permissions);
143
- filters.push(permissionFilter);
143
+ if(permissionFilter){
144
+ filters.push(permissionFilter);
145
+ }
146
+
144
147
  if(recycleBin){
145
148
  filters.push({"term":{"del.keyword":"T"}});
146
149
  var query = {
@@ -65,8 +65,6 @@
65
65
  var newdata = @projectCodeService.update( merged,env);
66
66
  }
67
67
 
68
-
69
-
70
68
  var ret = {
71
69
  state: 'ok',
72
70
  object: newdata,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "owl-cli",
3
- "version": "6.40.0",
3
+ "version": "6.42.0",
4
4
  "main": "index.js",
5
5
  "preferGlobal": true,
6
6
  "bin": {