owl-cli 7.29.0 → 7.31.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.
@@ -585,76 +585,53 @@ function merge(oldObj,newObj,permissions,orgId){
585
585
  throw "没有修改权限。"
586
586
  }
587
587
 
588
- for(var k in oldObj){
588
+ for(var k in newObj){
589
589
  var vo = oldObj[k];
590
+ var vn = newObj[k];
590
591
  if(typeof vo === 'object'){
591
592
  if(ef_section_permissions[k] && ef_section_permissions[k].update==='denied' || ef_section_permissions[k] && ef_section_permissions[k].read==='denied'){
592
- newObj[k] = vo;
593
+ // newObj[k] = vo;
593
594
  continue;
594
595
  }
595
596
 
596
- if(Array.isArray(vo)){
597
+ if(Array.isArray(vo) || Array.isArray(vn)){
597
598
  //暂时对于Array, 只要对于section有权限,则是对于整行来说的,而不能对于行中的某个字段
598
- var vn = newObj[k];
599
+ // var vn = newObj[k];
599
600
  // var merged = mergeArray(vo,vn,ef_section_permissions[k]);
600
- var merged = vn;
601
- newObj[k] = merged;
601
+ // var merged = vn;
602
+ // newObj[k] = merged;
603
+ oldObj[k] = vn; //mergeArray(vo,vn,ef_section_permissions[k]);
602
604
  }
603
605
  else {
604
- var vn = newObj[k];
605
- for(var sk in vo){
606
+ // var vn = newObj[k];
607
+ for(var sk in vn){
606
608
  var fk = k + "." + sk;
607
609
  if(ef_field_permissions[fk] && ef_field_permissions[fk].update==='denied' || ef_field_permissions[fk] && ef_field_permissions[fk].read==='denied'){
608
- vn[fk] = vo[fk];
610
+ // vn[fk] = vo[fk];
611
+ vo[sk] = vn[sk]
609
612
  }
610
613
  }
611
614
  }
612
615
  }
613
- else if(vo === null){
616
+ else if(vo === null ){
614
617
  if((ef_section_permissions[k] && (ef_section_permissions[k].update==='denied' || ef_section_permissions[k].read==='denied') )||
615
618
  (ef_field_permissions[k] && (ef_field_permissions[k].update==='denied' || ef_field_permissions[k].read==='denied') )
616
619
  ){
617
- newObj[k] = null;
620
+ // newObj[k] = null;
621
+ continue;
618
622
  }
619
623
  }
620
624
  else{
621
625
  if(ef_field_permissions[k] && (ef_field_permissions[k].update==='denied' || ef_field_permissions[k].read==='denied') ){
622
- newObj[k] = oldObj[k];
623
- }
624
- }
625
- }
626
-
627
- for(var k in newObj){
628
- //找到在new 但是 不在 old里面的,这表明是add
629
- var vn = newObj[k];
630
- var vo = oldObj[k];
631
- if(typeof vn === 'object' ){
632
-
633
- if(!vo && ef_section_permissions[k] && ef_section_permissions[k].add === 'denied'){
634
- delete newObj[k];
635
- }
636
- else if(Array.isArray(vn)){
637
- //do nothing
626
+ continue;
627
+ // newObj[k] = oldObj[k];
638
628
  }
639
629
  else{
640
- for(var nk in vn){
641
- if(vn[nk] && (!vo || !vo[nk])){
642
- var fk = k + "." + nk;
643
- if(ef_field_permissions[fk] && ef_field_permissions[fk].add === 'denied'){
644
- delete vn[nk];
645
- }
646
- }
647
- }
648
- }
649
- }
650
- else{
651
- if(!vo && ef_field_permissions[k] && ef_field_permissions[k].add === 'denied'){
652
- delete newObj[k];
630
+ oldObj[k] = vn;
653
631
  }
654
632
  }
655
633
  }
656
- return newObj;
657
-
634
+ return oldObj;
658
635
  }
659
636
 
660
637
  function getObjectPermissionFilter(tableId, roleId,orgId,userId){
@@ -60,10 +60,11 @@
60
60
  var newdata = @projectCodeService.add( modelObject,env );
61
61
  }
62
62
  else {
63
+ modelObject._orgId = oldObj._orgId;
63
64
  modelObject._orgIds = [modelObject._orgId].concat(getParentOrgIds(modelObject._orgId));
64
- modelObject._orgId = orgId;
65
+
65
66
  //修复_orgIds
66
- var _orgIds = [orgId];
67
+ var _orgIds = [modelObject._orgId];
67
68
  if(modelObject._orgIds){
68
69
  modelObject._orgIds.forEach(function(orgId){
69
70
  if(typeof orgId === 'string'){
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "owl-cli",
3
- "version": "7.29.0",
3
+ "version": "7.31.0",
4
4
  "main": "index.js",
5
5
  "preferGlobal": true,
6
6
  "bin": {