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;
|
|
// }
|
}
|