From 6fb356e222fa92fb98b1dbfef4d8e1bde8dc89a7 Mon Sep 17 00:00:00 2001
From: tony.cheng <chengmingwei_1984122@126.com>
Date: Tue, 17 Mar 2026 14:43:19 +0800
Subject: [PATCH] style: 为状态控制按钮设计独立的B端风格样式,不影响人工接管按钮

---
 web-app/src/components/dashboard/TabContainer.jsx |  140 ----------------------------------------------
 1 files changed, 1 insertions(+), 139 deletions(-)

diff --git a/web-app/src/components/dashboard/TabContainer.jsx b/web-app/src/components/dashboard/TabContainer.jsx
index a102314..e732c80 100644
--- a/web-app/src/components/dashboard/TabContainer.jsx
+++ b/web-app/src/components/dashboard/TabContainer.jsx
@@ -154,14 +154,8 @@
   const [loading, setLoading] = useState(false);
   const [error, setError] = useState(null);
   
-  // 状态控制相关状态
-  const [controlLoading, setControlLoading] = useState(false);
-  const [confirmModalVisible, setConfirmModalVisible] = useState(false);
-  const [controlAction, setControlAction] = useState(null); // 'terminate' or 'resume'
-  const [remark, setRemark] = useState('');
-  
   // 获取案件数据
-  const { caseData, refreshData } = useCaseData();
+  const { caseData } = useCaseData();
   const timeline = caseData || {};
   const caseState = timeline.mediation?.state;
   
@@ -352,68 +346,6 @@
     return avatarText || (avatar === 'applicant' ? '申' : avatar === 'respondent' ? '被' : '调');
   };
 
-  // 状态控制按钮显示逻辑
-  const shouldShowControlButton = () => {
-    return caseState === 0 || caseState === 1 || caseState === 5;
-  };
-
-  const getControlButtonProps = () => {
-    if (caseState === 0 || caseState === 1) {
-      return {
-        text: '终止',
-        style: 'terminate',
-        action: 'terminate'
-      };
-    } else if (caseState === 5) {
-      return {
-        text: '恢复',
-        style: 'resume',
-        action: 'resume'
-      };
-    }
-    return null;
-  };
-
-  // 处理状态控制按钮点击
-  const handleControlButtonClick = (action) => {
-    setControlAction(action);
-    setConfirmModalVisible(true);
-  };
-
-  // 处理确认对话框确认
-  const handleConfirmOk = async () => {
-    if (!controlAction) return;
-    
-    setControlLoading(true);
-    try {
-      const params = getMergedParams();
-      const actionCode = controlAction === 'terminate' ? 0 : 1;
-      
-      await ProcessAPIService.updateMediationState(params.caseId, {
-        action: actionCode,
-        userName: localStorage.getItem('userName') || '调解员'
-      });
-      
-      message.success('案件状态更新成功');
-      setConfirmModalVisible(false);
-      setRemark('');
-      
-      // 刷新数据
-      refreshData();
-    } catch (error) {
-      console.error('状态更新失败:', error);
-      message.error(error.message || '状态更新失败,请稍后重试');
-    } finally {
-      setControlLoading(false);
-    }
-  };
-
-  // 处理确认对话框取消
-  const handleConfirmCancel = () => {
-    setConfirmModalVisible(false);
-    setControlAction(null);
-    setRemark('');
-  };
   return (
     <>
       <div className="mediation-summary" style={{
@@ -508,76 +440,6 @@
           </div>
         ))}
       </div>
-
-      {/* 状态控制按钮区域 */}
-      {shouldShowControlButton() && (
-        <div style={{
-          marginTop: 20,
-          paddingTop: 15,
-          borderTop: '1px solid #e9ecef',
-          display: 'flex',
-          justifyContent: 'center',
-          gap: 12
-        }}>
-          <button
-            onClick={() => handleControlButtonClick(getControlButtonProps().action)}
-            disabled={controlLoading}
-            style={{
-              padding: '10px 20px',
-              borderRadius: 'var(--border-radius)',
-              fontWeight: 600,
-              fontSize: '0.9rem',
-              cursor: controlLoading ? 'not-allowed' : 'pointer',
-              display: 'flex',
-              alignItems: 'center',
-              gap: 6,
-              border: 'none',
-              ...(getControlButtonProps().style === 'terminate' ? {
-                background: '#1A6FB8',
-                color: 'white',
-              } : {
-                background: '#52c41a',
-                color: 'white',
-              }),
-              opacity: controlLoading ? 0.6 : 1,
-            }}
-          >
-            {controlLoading ? (
-              <><i className="fas fa-spinner fa-spin"></i>处理中...</>
-            ) : (
-              <><i className="fas fa-pause-circle"></i>{getControlButtonProps().text}</>
-            )}
-          </button>
-        </div>
-      )}
-
-      {/* 状态控制确认对话框 */}
-      <Modal
-        title={controlAction === 'terminate' ? '确认终止调解' : '确认恢复调解'}
-        visible={confirmModalVisible}
-        onOk={handleConfirmOk}
-        onCancel={handleConfirmCancel}
-        okText="确定"
-        cancelText="取消"
-        confirmLoading={controlLoading}
-      >
-        <p>
-          {controlAction === 'terminate' 
-            ? '确定要终止当前AI调解流程吗?终止后调解将暂停,可在适当时机恢复。' 
-            : '确定要恢复AI调解流程吗?恢复后将从当前位置继续调解。'}
-        </p>
-        <div style={{ marginTop: 15 }}>
-          <label style={{ display: 'block', marginBottom: 5, fontWeight: 500 }}>
-            备注(可选):
-          </label>
-          <Input.TextArea
-            value={remark}
-            onChange={(e) => setRemark(e.target.value)}
-            placeholder="请输入操作备注..."
-            rows={3}
-          />
-        </div>
-      </Modal>
     </>
   );
 };

--
Gitblit v1.8.0