fmui-base 2.1.50 → 2.1.51

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.
package/README.md CHANGED
@@ -3,6 +3,7 @@
3
3
  ---npm publish
4
4
 
5
5
  ## 更新日志
6
+ - 2.1.51:关联字段触发字段支持子表字段
6
7
  - 2.1.50:流程普通退回增加回调
7
8
  - 2.1.49:流程提交到最后结束节点可以直接结束,跳过确认环节
8
9
  - 2.1.48:表单子表数据丢失处理,子表与关联表子表冲突
package/lib/form/table.js CHANGED
@@ -323,7 +323,7 @@ var PageHome = function (_React$Component) {
323
323
  }, {
324
324
  key: 'change',
325
325
  value: function change(data, itemParam, subTblNo) {
326
-
326
+ console.log("formRelaFieldMaps==" + this.state.formRelaFieldMaps);
327
327
  var t = this;
328
328
  var module = t.props.module;
329
329
  var formKey = t.props.allForm ? t.props.allForm.formcode : "";
@@ -757,7 +757,7 @@ var PageHome = function (_React$Component) {
757
757
  //关联字段
758
758
  if (formRelaFieldMaps) {
759
759
  var formRelaFieldMapsObj = formRelaFieldMaps[itemParam.uniqueName];
760
- t.dealwithRelaField(formRelaFieldMapsObj, data, itemParam.key);
760
+ t.dealwithRelaField(formRelaFieldMapsObj, data, itemParam);
761
761
  }
762
762
  }
763
763
 
@@ -853,10 +853,15 @@ var PageHome = function (_React$Component) {
853
853
  }
854
854
  }, {
855
855
  key: 'dealwithRelaField',
856
- value: function dealwithRelaField(formRelaFieldMapsObj, data, itemKey) {
856
+ value: function dealwithRelaField(formRelaFieldMapsObj, data, thisItem) {
857
+ console.log("dealwithRelaField===" + formRelaFieldMapsObj);
857
858
  var t = this;
858
859
  var isSubField = false;
860
+ var isNowSub = false;
859
861
  var subTblName = '';
862
+ var itemKey = thisItem.key;
863
+ var tableName = thisItem.tableName;
864
+ var thisSubTblNo = thisItem.subTblNo;
860
865
  console.log("dealwithRelaField===");
861
866
  if (formRelaFieldMapsObj && formRelaFieldMapsObj.length > 0) {
862
867
  //解决同一字段 关联字段 编辑方式相同时冲突
@@ -876,12 +881,26 @@ var PageHome = function (_React$Component) {
876
881
  var subTbl = data.subTbl;
877
882
 
878
883
  var mainTblName = data.mainTblName;
879
-
880
- mainTblData.map(function (item) {
881
- if (item.key == itemKey) {
882
- nowValue = item.value;
884
+ if (tableName == mainTblName) {
885
+ mainTblData.map(function (item) {
886
+ if (item.key == itemKey) {
887
+ nowValue = item.value;
888
+ }
889
+ });
890
+ } else {
891
+ if (subTbl && subTbl.length > 0) {
892
+ for (var j = 0; j < subTbl.length; j++) {
893
+ if (subTbl[j].subTblName == tableName && subTbl[j].subTblData.length > thisSubTblNo) {
894
+ for (var k = 0; k < subTbl[j].subTblData[thisSubTblNo].length; k++) {
895
+ if (subTbl[j].subTblData[thisSubTblNo][k].uniqueName == thisItem.uniqueName) {
896
+ nowValue = subTbl[j].subTblData[thisSubTblNo][k].value;
897
+ isNowSub = true;
898
+ }
899
+ }
900
+ }
901
+ }
883
902
  }
884
- });
903
+ }
885
904
 
886
905
  if (nowValue && nowValue.indexOf("[") >= 0 && nowValue.indexOf("]") >= 0) {
887
906
  var nowValueArray = JSON.parse(nowValue);
@@ -922,11 +941,20 @@ var PageHome = function (_React$Component) {
922
941
  });
923
942
  for (var i = 0; i < subTbl.length; i++) {
924
943
  var subTblData = subTbl[i].subTblData;
925
- for (var a = 0; a < subTblData.length; a++) {
926
- var subTblDataItem = subTblData[a];
944
+ if (isNowSub) {
945
+ var subTblDataItem = subTblData[thisSubTblNo];
927
946
  for (var b = 0; b < subTblDataItem.length; b++) {
928
947
  if (subTblDataItem[b].uniqueName == relaFieldNameArray[index]) {
929
- subTbl[i].subTblData[a][b].required = triggerFieldValBoolean;
948
+ subTbl[i].subTblData[thisSubTblNo][b].required = triggerFieldValBoolean;
949
+ }
950
+ }
951
+ } else {
952
+ for (var a = 0; a < subTblData.length; a++) {
953
+ var subTblDataItem = subTblData[a];
954
+ for (var b = 0; b < subTblDataItem.length; b++) {
955
+ if (subTblDataItem[b].uniqueName == relaFieldNameArray[index]) {
956
+ subTbl[i].subTblData[a][b].required = triggerFieldValBoolean;
957
+ }
930
958
  }
931
959
  }
932
960
  }
@@ -949,18 +977,32 @@ var PageHome = function (_React$Component) {
949
977
  var subTblData = subTbl[j].subTblData;
950
978
  subTblName = subTbl[j].subTblName;
951
979
  if (subTblData && subTblData.length > 0) {
952
- for (var b = 0; b < subTblData.length; b++) {
953
- var subTblDataItem = subTblData[b];
980
+ if (isNowSub) {
981
+ var subTblDataItem = subTblData[thisSubTblNo];
954
982
  if (subTblDataItem && subTblDataItem.length > 0) {
955
983
  for (var a = 0; a < subTblDataItem.length; a++) {
956
984
  if (relaFieldTblNameArrayItem == subTblDataItem[a].uniqueName) {
957
985
  isSubField = true;
958
986
  var subTblNameItem = "sub_" + subTblName;
959
- var subItem = relaFieldTblNameArrayItem + '_' + b;
987
+ var subItem = relaFieldTblNameArrayItem + '_' + thisSubTblNo;
960
988
  t.refs[subTblNameItem].refs[subItem].reloadItemParam([relaFieldMap]);
961
989
  }
962
990
  }
963
991
  }
992
+ } else {
993
+ for (var b = 0; b < subTblData.length; b++) {
994
+ var subTblDataItem = subTblData[b];
995
+ if (subTblDataItem && subTblDataItem.length > 0) {
996
+ for (var a = 0; a < subTblDataItem.length; a++) {
997
+ if (relaFieldTblNameArrayItem == subTblDataItem[a].uniqueName) {
998
+ isSubField = true;
999
+ var subTblNameItem = "sub_" + subTblName;
1000
+ var subItem = relaFieldTblNameArrayItem + '_' + b;
1001
+ t.refs[subTblNameItem].refs[subItem].reloadItemParam([relaFieldMap]);
1002
+ }
1003
+ }
1004
+ }
1005
+ }
964
1006
  }
965
1007
  }
966
1008
  }
@@ -1649,7 +1649,6 @@ var PageHome = function (_React$Component) {
1649
1649
  key: 'change',
1650
1650
  value: function change(data, itemParam) {
1651
1651
  console.log("数据回调" + itemParam.key);
1652
- debugger;
1653
1652
  //子流程去除id字段
1654
1653
  if (isSub != '' && data) {
1655
1654
  var mainTblData = data.mainTblData;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fmui-base",
3
- "version": "2.1.50",
3
+ "version": "2.1.51",
4
4
  "title": "fmui-base",
5
5
  "description": "fmui移动端组件",
6
6
  "main": "lib/index.js",