xjj 2 years ago
parent
commit
ddc21a7602

+ 58 - 53
src/components/Flow/node/rect/mapServe.tsx

@@ -205,15 +205,18 @@ const Component = (props: any) => {
             <InputFiled
               label="模板名称"
               value={nodeConfig.version_name}
+              disabled={meta?.editMode == 2}
               onChange={value => {
                 onNodeConfigChange('version_name', value);
               }}
             />
-            <UploadFiled
+
+            {meta?.editMode == 1 && <UploadFiled
               label="模板"
               onChange={url => onNodeConfigChange('bom_template', url)}
               beforeUpload={beforeUpload}
-            />
+            />}
+
             {/* <div onClick={handleFileNameClick}>{fileName}</div> */}
             <a href={nodeConfig.bom_template}>{fileName}</a>
           </>
@@ -237,66 +240,68 @@ const Component = (props: any) => {
         </div>
       </div>
       {meta?.editMode != 2 && (
-        <div className={`${PREFIX}-panel-group`}>
-          <h5>样式</h5>
-          <Position
-            x={nodeConfig.x}
-            y={nodeConfig.y}
-            onChange={(key, value) => {
-              onNodeConfigChange(key, value);
-            }}
-          />
-          <Size
-            width={nodeConfig.width}
-            height={nodeConfig.height}
-            onChange={(key, value) => {
-              onNodeConfigChange(key, value);
-            }}
-          />
-          <ColorPicker
-            label="填充"
-            value={nodeConfig.fill}
-            onChange={(value: string) => {
-              onNodeConfigChange('fill', value);
-            }}
-          />
-          <ColorPicker
-            label="边框"
-            value={nodeConfig.stroke}
-            onChange={(value: string) => {
-              onNodeConfigChange('stroke', value);
-            }}
-          />
-          <InputNumberFiled
-            label="消息数量"
-            value={nodeConfig.count}
-            onChange={value => {
-              onNodeConfigChange('count', value);
-            }}
-          />
-          <div style={{ display: 'flex' }}>
-            <InputNumberFiled
-              label="字号"
-              value={nodeConfig.fontSize}
-              width={68}
-              onChange={value => {
-                onNodeConfigChange('fontSize', value);
+        <>
+          <div className={`${PREFIX}-panel-group`}>
+            <h5>样式</h5>
+            <Position
+              x={nodeConfig.x}
+              y={nodeConfig.y}
+              onChange={(key, value) => {
+                onNodeConfigChange(key, value);
+              }}
+            />
+            <Size
+              width={nodeConfig.width}
+              height={nodeConfig.height}
+              onChange={(key, value) => {
+                onNodeConfigChange(key, value);
+              }}
+            />
+            <ColorPicker
+              label="填充"
+              value={nodeConfig.fill}
+              onChange={(value: string) => {
+                onNodeConfigChange('fill', value);
               }}
-              style={{ marginRight: 10 }}
             />
             <ColorPicker
-              value={nodeConfig.fontFill}
+              label="边框"
+              value={nodeConfig.stroke}
               onChange={(value: string) => {
-                onNodeConfigChange('fontFill', value);
+                onNodeConfigChange('stroke', value);
               }}
             />
+            <InputNumberFiled
+              label="消息数量"
+              value={nodeConfig.count}
+              onChange={value => {
+                onNodeConfigChange('count', value);
+              }}
+            />
+            <div style={{ display: 'flex' }}>
+              <InputNumberFiled
+                label="字号"
+                value={nodeConfig.fontSize}
+                width={68}
+                onChange={value => {
+                  onNodeConfigChange('fontSize', value);
+                }}
+                style={{ marginRight: 10 }}
+              />
+              <ColorPicker
+                value={nodeConfig.fontFill}
+                onChange={(value: string) => {
+                  onNodeConfigChange('fontFill', value);
+                }}
+              />
+            </div>
           </div>
-        </div>
+
+          <Button type="primary" onClick={onSave}>
+            保存
+          </Button></>
       )}
 
-      <Button type="primary" onClick={onSave}>
-        保存
-      </Button>
     </div>
   );
 };

+ 19 - 3
src/pages/PurchaseAdmin/PurchaseList/Flow/Flow.js

@@ -7,6 +7,7 @@ import router from 'umi/router';
 
 @connect(({ xflow, user }) => ({
   flowDetail: xflow.flowDetail,
+  currentUser: user.currentUser,
   permission: user.currentUser.Permission,
 }))
 class FlowPage extends React.PureComponent {
@@ -63,8 +64,23 @@ class FlowPage extends React.PureComponent {
   componentWillUnmount() {
     UnityAction.off('NODE_SAVE');
   }
-  render() {
+  getEditMode() {
     const { flowDetail, permission } = this.props;
+
+    return 2
+  }
+  render() {
+    const { flowDetail, permission, currentUser } = this.props;
+    let editMode = 2;
+
+    if (
+      // 判断是否有权限
+      permission['func-01-point-bom-flow'] ||
+      // 判断是否为创建者
+      flowDetail.Creator == currentUser.ID) {
+      editMode = 1
+    }
+
     return (
       <div>
         {/* <Form></Form> */}
@@ -72,9 +88,9 @@ class FlowPage extends React.PureComponent {
           返回
         </Button>
         <Flow
-          meta={{ type: 'edit', editMode: permission['func-01-point-bom-flow'] ? 1 : 2, flowId: 1 }}
+          meta={{ type: 'edit', editMode, flowId: 1 }}
           flowDetail={flowDetail}
-          // onUpdate={node => this.onUpdate(node)}
+        // onUpdate={node => this.onUpdate(node)}
         />
       </div>
     );