From 3a188607647cbf05c08e7675186ec48764cc657c Mon Sep 17 00:00:00 2001
From: zhangyongtian <1181606322@qq.com>
Date: Wed, 04 Sep 2024 14:55:27 +0800
Subject: [PATCH] feat: 滚动优化、查看当事人报错、事件流转静态

---
 gz-customerSystem/src/views/register/eventFlow/component/EventFlow.jsx |   97 ++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 88 insertions(+), 9 deletions(-)

diff --git a/gz-customerSystem/src/views/register/eventFlow/component/EventFlow.jsx b/gz-customerSystem/src/views/register/eventFlow/component/EventFlow.jsx
index 091e29d..046bba9 100644
--- a/gz-customerSystem/src/views/register/eventFlow/component/EventFlow.jsx
+++ b/gz-customerSystem/src/views/register/eventFlow/component/EventFlow.jsx
@@ -1,7 +1,12 @@
-import React from 'react';
-import { Button } from '@arco-design/web-react';
+import React, { useState, useRef, useEffect } from 'react';
+import { Button, Modal, Tabs, Badge } from '@arco-design/web-react';
 import { Space } from 'antd';
 import ProgressStep from '@/components/ProgressStep/VisitStep';
+import BackModel from "./BackModel";
+import { Scrollbars } from "react-custom-scrollbars";
+import { getOffset, getSize } from '@/utils/utility';
+
+const TabPane = Tabs.TabPane;
 
 const fakeData = [
   {
@@ -35,12 +40,22 @@
   },
   {
     handlerUserName: '白云区新市街市场监管所',
-    finishTime: new Date().getTime() - 11 * 60 * 60 * 1000, // 半天前的时间
+    finishTime: new Date().getTime() - 10 * 60 * 60 * 1000, // 半天前的时间
     handleResult: '1',
     status: '3',
     taskNodeName: '事件回退',
     mediResult: '22_00025-1',
     // handleContent: '已签收',
+    operationName: '赵菲菲'
+  },
+  {
+    handlerUserName: '白云区新市街综治中心',
+    finishTime: new Date().getTime() - 9 * 60 * 60 * 1000, // 半天前的时间
+    handleResult: '1',
+    status: '2',
+    taskNodeName: '回退审核',
+    mediResult: '22_00025-1',
+    handleContent: '通过',
     operationName: '赵菲菲'
   },
   {
@@ -56,22 +71,86 @@
 ];
 
 export default function EventFlow(props) {
-  const tabs = [
-    { index: '1', label: '承办部门' },
-    { index: '2', label: '配合部门' },
-  ];
+  const scrollRef = useRef(null)
+  const [backVisible, setBackVisible] = useState(false)
+  const [height, setHeight] = useState(500)
+
+  useEffect(() => {
+    onWindowResize()
+    window.addEventListener("resize", onWindowResize);
+  }, [])
+
+  const onWindowResize = () => {
+    let offsetLeft = 0;
+    let offsetTop = 0;
+    if (scrollRef.current.container) {
+      offsetLeft = getOffset(scrollRef.current.container).left;
+      offsetTop = getOffset(scrollRef.current.container).top;
+    }
+    setHeight(getSize().windowH - offsetTop - 65)
+  };
+
   return (
     <div className='dataSync'>
       <div className='dataSync-hasTabPage' >
-        <ProgressStep progressData={fakeData} />
+        <Tabs defaultActiveTab='1' >
+          <TabPane
+            key='1'
+            title={
+              <span style={{ fontSize: '15px' }}>
+                流转进度
+              </span>
+            }
+          >
+            <Scrollbars
+              style={{ height: height }}
+              ref={scrollRef}
+              autoHide
+            >
+              <ProgressStep progressData={fakeData} />
+            </Scrollbars>
+          </TabPane>
+          <TabPane
+            key='2'
+            title={
+              <span style={{ fontSize: '15px' }}>
+                督办信息
+                <Badge maxCount={99} count={1000} />
+              </span>
+            }
+          >
+            <Scrollbars
+              style={{ height: height }}
+              ref={scrollRef}
+            ></Scrollbars>
+          </TabPane>
+        </Tabs>
+
       </div>
       <div className="dataSync-excel">
         <Space size="large" style={{ margin: '4px 14px' }}>
           <Button type="primary"  >受理</Button>
-          <Button type='outline' status='danger'>回退</Button>
+          <Button type="primary"  >提交</Button>
+          <Button type="primary"  >自行受理</Button>
+          <Button type='outline' status='danger' onClick={() => setBackVisible(true)}>回退</Button>
+          <Button type='outline'>交办</Button>
+          <Button type='outline'>上报</Button>
           <Button type='secondary' >返回上级页面</Button>
         </Space>
       </div>
+      <Modal
+        title='回退'
+        visible={backVisible}
+        onOk={() => setBackVisible(false)}
+        onCancel={() => { setBackVisible(false) }}
+        autoFocus={false}
+        focusLock={true}
+        footer={null}
+        unmountOnExit={true}
+        maskClosable={false}
+      >
+        <BackModel />
+      </Modal>
     </div>
   )
 }

--
Gitblit v1.8.0