--- ./source/private_module/enterprise/task/rephc_cg_action.c	2018-04-27 10:16:51.000000000 +0000
+++ ./source/private_module/enterprise/task/rephc_cg_action.c.hotpatch	2019-07-12 02:03:23.000000000 +0000
@@ -9800,7 +9800,7 @@
             continue;
         }
         
-        if (checkNeedLinkUp(cgPara, index))
+        if (checkNeedLinkUp(cgPara, batchEvent->cgIdList[index].localId))
         {
             /* ˫ */
             isBatchOver = isLinkDownBatchOver(batchEvent, result, FALSE);
@@ -10568,20 +10568,20 @@
             continue;
         }
         
-        cgArb = getCgArbState(index);
+        cgArb = getCgArbState(batchEvent->cgIdList[index].localId);
         DBG_LogInfo(REPHC_LOG_ID_NEW, "Do after link down," 
              "opcode(%u), cg arb state(%u),local cg(%u).", 
-             taskPara->commParam.outOpcode, cgArb, index);
+             taskPara->commParam.outOpcode, cgArb, batchEvent->cgIdList[index].localId);
         
-        if(((REPHC_OPCODE_START_WORK == taskPara->commParam.outOpcode) || (testRepHcCgPowerOnBit(index)))
+        if(((REPHC_OPCODE_START_WORK == taskPara->commParam.outOpcode) || (testRepHcCgPowerOnBit(batchEvent->cgIdList[index].localId)))
             && (REPHC_ARB_STATUS_UNKNOWN == cgArb)
-            && (isCgNeedWaitNegoRepHc(index)))
+            && (isCgNeedWaitNegoRepHc(batchEvent->cgIdList[index].localId)))
         {                 
             /* ϵ糡CGϿĸ澯 */
-            setRepHcCgIsNeedSendInterruptAlarmFlag(index, FALSE);
+            setRepHcCgIsNeedSendInterruptAlarmFlag(batchEvent->cgIdList[index].localId, FALSE);
             
             /* ˫Ӳlinkdown */
-            checkRephcCgMngLinkTimer(index);
+            checkRephcCgMngLinkTimer(batchEvent->cgIdList[index].localId);
             
             isBatchOver = isLinkDownBatchOver(batchEvent, RETURN_OK, TRUE);
             if(TRUE == isBatchOver)
