private StringBuilder innAddOrUpdConsumeGroupSettingInfo(HttpServletRequest req,
            StringBuilder sBuffer,
            ProcessResult result,
            boolean isAddOp) {
        // check and get operation info
        if (!WebParameterUtils.getAUDBaseInfo(req, isAddOp, null, sBuffer, result)) {
            WebParameterUtils.buildFailResult(sBuffer, result.getErrMsg());
            return sBuffer;
        }
        BaseEntity opEntity = (BaseEntity) result.getRetData();
        // get group info
        if (!WebParameterUtils.getStringParamValue(req,
                WebFieldDef.COMPSGROUPNAME, true, null, sBuffer, result)) {
            WebParameterUtils.buildFailResult(sBuffer, result.getErrMsg());
            return sBuffer;
        }
        Set<String> groupNameSet = (Set<String>) result.getRetData();
        // get resCheckStatus info
        if (!WebParameterUtils.getEnableStatusValue(req, WebFieldDef.RESCHECKENABLE,
                false, (isAddOp ? EnableStatus.STATUS_DISABLE : null), sBuffer, result)) {
            WebParameterUtils.buildFailResult(sBuffer, result.getErrMsg());
            return sBuffer;
        }
        EnableStatus resChkEnable = (EnableStatus) result.getRetData();
        // get and valid allowedBClientRate info
        if (!WebParameterUtils.getIntParamValue(req, WebFieldDef.OLDALWDBCRATE,
                false, (isAddOp ? TServerConstants.GROUP_BROKER_CLIENT_RATE_MIN
                        : TBaseConstants.META_VALUE_UNDEFINED),
                TServerConstants.GROUP_BROKER_CLIENT_RATE_MIN, sBuffer, result)) {
            WebParameterUtils.buildFailResult(sBuffer, result.getErrMsg());
            return sBuffer;
        }
        int allowedBClientRate = (int) result.getRetData();
        // add or update group control record
        GroupResCtrlEntity grpResCtrl;
        List<GroupProcessResult> retInfoList = new ArrayList<>();
        for (String groupName : groupNameSet) {
            grpResCtrl = defMetaDataService.getGroupCtrlConf(groupName);
            if (!isAddOp && grpResCtrl == null) {
                result.setFailResult(DataOpErrCode.DERR_NOT_EXIST.getCode(),
                        DataOpErrCode.DERR_NOT_EXIST.getDescription());
                retInfoList.add(new GroupProcessResult(groupName, "", result));
                continue;
            }
            retInfoList.add(defMetaDataService.insertGroupCtrlConf(opEntity,
                    groupName, resChkEnable, allowedBClientRate, sBuffer, result));
        }
        return buildRetInfo(retInfoList, sBuffer);
    }
Inner method: add consumer group setting

@param req       Http Servlet Request
@param sBuffer   string buffer
@param result    process result
@param isAddOp   whether add operation
@return    process result
inlong-tubemq/tubemq-server/src/main/java/org/apache/inlong/tubemq/server/master/web/handler/WebAdminGroupCtrlHandler.java