public with sharing class NFM604Controller {
    // public NFM604Controller() {
        
    // }
    // private static final String LOG_TYPE = 'NFM_604_';
    // //报修单推送接口
    // public class Repair{
    // 	public String repairOrderNo;//报修单号
    // }
    // //正常调用
    // @future(callout = true)
    // public static void callout(String iflog_Id,List<Id> reportIdList){
    // 	executeNotFuture(iflog_Id,reportIdList,null);
    // }
    // //调用
    // public static void executeNotFuture(String iflog_Id,List<Id> reportIdList,List<Repair__c> repairList){

    // 	BatchIF_Log__c iflog = [Select Id, Name, Log__c, ErrorLog__c from BatchIF_Log__c where Id = :iflog_Id];
    // 	if (iflog != null) {
    // 	    iflog.ErrorLog__c = '';
    // 	} else {
    // 		iflog = new BatchIF_Log__c();
    // 		iflog.Type__c = LOG_TYPE;
    // 		iflog.ErrorLog__c = '';
    // 		iflog.Log__c = 'callout start\n';
    // 	}
    // 	List<Report> reports = new List<Report>();

    // 	BatchIF_Log__c rowData = null;

    // 	if (reportIdList == null && repairList == null) {
    // 	    return;
    // 	}else if (reportIdList != null && reportIdList.size()>0) {
    // 	    repairList = [select id from Repair__c where id in : reportIdList];
    // 	}
    // 	String logstr = iflog.Log__c + ' ' + 'NumberOfRecord=' +  repairList.size() + '\n';
    // 	try{
    // 		for (Repair__c repair : repairList) {
    // 			Report reprt = new Report();
    // 			reports.add(reprt);
    // 		}
    // 		if (reports.size()>0) {
    // 		    //生成Batchlog日志，记录发送情况
    // 		    rowData = NFMUtil.makeRowData(iflog, LOG_TYPE, reports);
    // 		    //execute(rowData,iflog);
    // 		}
    // 		logstr += '\nend';
    // 	}catch (Exception ex) {
    // 		//发生错误时
    // 		System.debug(LoggingLevel.ERROR,LOG_TYPE + iflog.Name + ':' + ex.getMessage());
    // 		System.debug(LoggingLevel.ERROR,LOG_TYPE + iflog.Name + ':' + ex.getStackTraceString());
    // 		iflog.ErrorLog__c += ex.getMessage() + '\n';
    // 		iflog.ErrorLog__c += ex.getStackTraceString() + '\n';
    // 	}
    // 	if (rowData != null) {
    // 	    upsert rowData;
    // 	}
    // 	upsert iflog;
    // }
    // /**
    //  * 接口发送失败 根据BatchLogId进行手动发送
    //  * @param    rowDataId  [BatchLogId]
    //  */
    // public static void ManualExecute(String rowDataId){
    // 	List<BatchIF_Log__c> row = [select id, name, MessageGroupNumber__c, retry_cnt__c,
    //                                        RowDataFlg__c, ErrorLog__c, Type__c,
    //                                        Log__c, Log2__c, Log3__c, Log4__c, Log5__c, Log6__c,
    //                                        Log7__c, Log8__c, Log9__c, Log10__c, Log11__c, Log12__c
    //                                   from BatchIF_Log__c
    //                                  where id = :rowDataId];
    //     if (row.size() > 0) execute(row[0], null);
    // }
    // /**
    //  * 逻辑正常执行发送
    //  * @param    rowDataSFDC [BatchLogId]
    //  * @param    iflog       [执行情况记录]
    //  */
    // public static void execute(BatchIF_Log__c rowDataSFDC,BatchIF_Log__c iflog){
    // 	Integer batch_retry_max_cnt = Integer.valueOf(System.Label.batch_retry_max_cnt);

    // 	String logstr = rowDataSFDC.MessageGroupNumber__c + 'start\n';
    // 	if (iflog == null) {
    // 	    iflog = new BatchIF_Log__c();
    // 	    iflog.Type__c = LOG_TYPE;
    // 	    iflog.MessageGroupNumber__c = rowDataSFDC.MessageGroupNumber__c;
    // 	    iflog.Log__c = logstr;
    // 	    iflog.ErrorLog__c = '';
    // 	}else{
    // 		iflog.Type__c = LOG_TYPE;
    // 		iflog.MessageGroupNumber__c = rowDataSFDC.MessageGroupNumber__c;
    // 		logstr = iflog.Log__c;
    // 	}

    // 	try {
    // 	    String data = NFMUtil.getRowDataStr(rowDataSFDC);
    // 	    NFMUtil.sendToAFS(data,'');
    // 	}
    // 	catch (Exception e) {
    // 	    System.debug(LoggingLevel.ERROR, LOG_TYPE + iflog.Name + ':' + e.getMessage());
    // 	    System.debug(LoggingLevel.ERROR, LOG_TYPE + iflog.Name + ':' + e.getStackTraceString());

    // 	    iflog.ErrorLog__c += e.getMessage() + '\n';
    // 	    iflog.ErrorLog__c += e.getStackTraceString() + '\n';

    // 	    if (rowDataSFDC.retry_cnt__c == null) {
				// rowDataSFDC.retry_cnt__c = 0;    	        
    // 	    }
    // 	    if (rowDataSFDC.retry_cnt__c < batch_retry_max_cnt) {
    // 	        rowDataSFDC.retry_cnt__c++;
    // 	        LogAutoSendSchedule.assignOneMinute();
    // 	    }
    // 	    if (rowDataSFDC.retry_cnt__c >= batch_retry_max_cnt) {
    // 	        rowDataSFDC.ErrorLog__c = e.getMessage() + 'n' + e.getStackTraceString() + '\n' + rowDataSFDC.ErrorLog__c + '错误次数已经超过自动送信设定的最大次数，请手动送信';
    // 	    }
    // 	}
    // 	upsert iflog;
    // 	upsert rowDataSFDC;
    	
    // }
}