hookehuyr

节点属性的字段权限API联调

Showing 1 changed file with 74 additions and 42 deletions
...@@ -473,6 +473,7 @@ export default { ...@@ -473,6 +473,7 @@ export default {
473 auth_all_checked: false, 473 auth_all_checked: false,
474 auth_all_edit: false, 474 auth_all_edit: false,
475 field_auths: [], 475 field_auths: [],
476 + field_extend: [],
476 }) 477 })
477 478
478 /** 479 /**
...@@ -797,9 +798,6 @@ export default { ...@@ -797,9 +798,6 @@ export default {
797 state.select_attr_set = true; 798 state.select_attr_set = true;
798 } 799 }
799 // TODO: 接口查询节点的属性 800 // TODO: 接口查询节点的属性
800 - // 节点名称 state.node_name,节点负责人 state.userTags,基础属性 state.field_auths,更多属性 state.more_attr
801 - console.warn('基础属性', state.field_auths);
802 - console.warn('更多属性', state.more_attr);
803 const loading = ElLoading.service({ 801 const loading = ElLoading.service({
804 target: document.getElementById('app'), 802 target: document.getElementById('app'),
805 lock: true, 803 lock: true,
...@@ -813,44 +811,65 @@ export default { ...@@ -813,44 +811,65 @@ export default {
813 state.userTags = res.data.data.user; 811 state.userTags = res.data.data.user;
814 state.dialogUserTags = state.userTags; 812 state.dialogUserTags = state.userTags;
815 // TODO: 需要处理更多属性数据,节点类型是抄送时不显示节点操作 813 // TODO: 需要处理更多属性数据,节点类型是抄送时不显示节点操作
816 - state.field_auths = [ // 字段权限 814 + state.field_extend = res.data.data.field;
817 - { 815 + state.field_auths = [];
818 - name: '字段1', 816 + state.field_extend.forEach(ele => {
819 - visible: { 817 + if (!ele.field_extend.disabled) { // 流程节点字段权限列表内是否显示
820 - checked: false, 818 + state.field_auths.push({
821 - disabled: true, 819 + field_id: ele.field_extend.field_id,
822 - }, 820 + name: ele.field_extend.label,
823 - editable: { 821 + visible: {
824 - checked: false, 822 + checked: ele.field_extend.visibled,
825 - disabled: true, 823 + disabled: false,
826 - }, 824 + },
827 - show: true, 825 + editable: {
828 - }, 826 + checked: ele.field_extend.editabled,
829 - { 827 + disabled: ele.field_extend.readonly,
830 - name: '字段2', 828 + },
831 - visible: { 829 + show: true,
832 - checked: true, 830 + })
833 - disabled: false, 831 + }
834 - }, 832 + });
835 - editable: { 833 + // state.field_auths = [ // 字段权限
836 - checked: false, 834 + // {
837 - disabled: false, 835 + // name: '字段1',
838 - }, 836 + // visible: {
839 - show: true, 837 + // checked: false,
840 - }, 838 + // disabled: true,
841 - { 839 + // },
842 - name: '字段3', 840 + // editable: {
843 - visible: { 841 + // checked: false,
844 - checked: true, 842 + // disabled: true,
845 - disabled: false, 843 + // },
846 - }, 844 + // show: true,
847 - editable: { 845 + // },
848 - checked: false, 846 + // {
849 - disabled: false, 847 + // name: '字段2',
850 - }, 848 + // visible: {
851 - show: true, 849 + // checked: true,
852 - }, 850 + // disabled: false,
853 - ] 851 + // },
852 + // editable: {
853 + // checked: false,
854 + // disabled: false,
855 + // },
856 + // show: true,
857 + // },
858 + // {
859 + // name: '字段3',
860 + // visible: {
861 + // checked: true,
862 + // disabled: false,
863 + // },
864 + // editable: {
865 + // checked: false,
866 + // disabled: false,
867 + // },
868 + // show: true,
869 + // },
870 + // ]
871 + console.log(res.data.data.field);
872 +
854 state.more_attr = [ // 更多属性 873 state.more_attr = [ // 更多属性
855 { 874 {
856 id: 'no-1', 875 id: 'no-1',
...@@ -909,6 +928,9 @@ export default { ...@@ -909,6 +928,9 @@ export default {
909 ], 928 ],
910 } 929 }
911 ]; 930 ];
931 +
932 + console.warn('基础属性', state.field_auths);
933 + console.warn('更多属性', state.more_attr);
912 // 开始节点不显示审批意见 934 // 开始节点不显示审批意见
913 if (model_id ==='start-node') { 935 if (model_id ==='start-node') {
914 state.more_attr = state.more_attr.filter((ele: any) => { 936 state.more_attr = state.more_attr.filter((ele: any) => {
...@@ -1028,12 +1050,22 @@ export default { ...@@ -1028,12 +1050,22 @@ export default {
1028 }); 1050 });
1029 return; 1051 return;
1030 } 1052 }
1053 + // 调整数据结构
1054 + state.field_extend.forEach(ele => {
1055 + state.field_auths.forEach(auth => {
1056 + if (ele.field_id === auth.field_id) {
1057 + ele.field_extend.visibled = auth.visible.checked;
1058 + ele.field_extend.editabled = auth.editable.checked;
1059 + ele.field_extend.readonly = auth.editable.disabled;
1060 + }
1061 + })
1062 + })
1031 // TAG: 保存表单信息 1063 // TAG: 保存表单信息
1032 axios.post('/admin/?a=save_node_property', qs.stringify({ 1064 axios.post('/admin/?a=save_node_property', qs.stringify({
1033 flow_id: +flow_id, 1065 flow_id: +flow_id,
1034 node_code: state.detailModel.id, 1066 node_code: state.detailModel.id,
1035 // data: JSON.stringify({ name: state.node_name, user: state.userTags, field_auths: state.field_auths, more_attr: state.more_attr }) 1067 // data: JSON.stringify({ name: state.node_name, user: state.userTags, field_auths: state.field_auths, more_attr: state.more_attr })
1036 - data: JSON.stringify({ name: state.node_name, user: state.userTags }) 1068 + data: JSON.stringify({ name: state.node_name, user: state.userTags, field: state.field_extend })
1037 })) 1069 }))
1038 .then(res => { 1070 .then(res => {
1039 if (res.data.code) { 1071 if (res.data.code) {
......