import { Common } from 'pc-component-v3';

/**
 * 工具类自动生成的API，请勿做任何修改，请勿做任何修改，请勿做任何修改（重要的事情说3遍）
 * 工具作者: 杨志杰
 * 流程报表执行资源类 
 */
export default  {

  /**
	 * 工具类自动生成的方法
	 * 工具作者: 杨志杰
	 * 删除任务 
	 */
  deleteTaskDefine: function(taskDefineId){
    var requestUrl = 'api/TaskDefineResource/deleteTaskDefine';
    var paramCount = 0;
    if(taskDefineId != null){
      requestUrl += (paramCount > 0) ? '&' : '?';
      requestUrl += ('taskDefineId=' + taskDefineId);
      paramCount ++;
    }


    return new Promise((resolve, reject) => {
      $.ajax({
        url: Common.getApiUrl2(requestUrl),
        type: 'post',
        contentType: 'application/json',
				
				
				
				
        beforeSend: function(request) {
          Common.addTokenToRequest(request);
        },
        success: function(data) {
          resolve(data);
        },
        error: function(XMLHttpRequest, textStatus, errorThrown) {
          reject(XMLHttpRequest);
        },
      });
    });
  },

  /**
	 * 工具类自动生成的方法
	 * 工具作者: 杨志杰
	 * 查询所有任务流程设置 
	 */
  getAllTaskDefine: function(taskDefineSelectRequest){
    var requestUrl = 'api/TaskDefineResource/getAllTaskDefine';


    return new Promise((resolve, reject) => {
      $.ajax({
        url: Common.getApiUrl2(requestUrl),
        type: 'post',
        contentType: 'application/json',
				
				
        data: JSON.stringify(taskDefineSelectRequest),
				
        beforeSend: function(request) {
          Common.addTokenToRequest(request);
        },
        success: function(data) {
          resolve(data);
        },
        error: function(XMLHttpRequest, textStatus, errorThrown) {
          reject(XMLHttpRequest);
        },
      });
    });
  },

  /**
	 * 工具类自动生成的方法
	 * 工具作者: 杨志杰
	 * 查询流程报表定时执行定义 
	 */
  list: function(taskType){
    var requestUrl = 'api/TaskDefineResource/list';


    return new Promise((resolve, reject) => {
      $.ajax({
        url: Common.getApiUrl2(requestUrl),
        type: 'post',
        contentType: 'application/json',
				
				
        data: JSON.stringify(taskType),
				
        beforeSend: function(request) {
          Common.addTokenToRequest(request);
        },
        success: function(data) {
          resolve(data);
        },
        error: function(XMLHttpRequest, textStatus, errorThrown) {
          reject(XMLHttpRequest);
        },
      });
    });
  },

  /**
	 * 工具类自动生成的方法
	 * 工具作者: 杨志杰
	 * 手动执行流程 
	 */
  manualExecutionProcess: function(taskDefineId){
    var requestUrl = 'api/TaskDefineResource/manualExecutionProcess';
    var paramCount = 0;
    if(taskDefineId != null){
      requestUrl += (paramCount > 0) ? '&' : '?';
      requestUrl += ('taskDefineId=' + taskDefineId);
      paramCount ++;
    }


    return new Promise((resolve, reject) => {
      $.ajax({
        url: Common.getApiUrl2(requestUrl),
        type: 'get',
        contentType: 'application/json',
				
				
				
				
        beforeSend: function(request) {
          Common.addTokenToRequest(request);
        },
        success: function(data) {
          resolve(data);
        },
        error: function(XMLHttpRequest, textStatus, errorThrown) {
          reject(XMLHttpRequest);
        },
      });
    });
  },

  /**
	 * 工具类自动生成的方法
	 * 工具作者: 杨志杰
	 * 保存任务流程设置 
	 */
  saveTaskDefine: function(taskDefineSaveRequest){
    var requestUrl = 'api/TaskDefineResource/saveTaskDefine';


    return new Promise((resolve, reject) => {
      $.ajax({
        url: Common.getApiUrl2(requestUrl),
        type: 'post',
        contentType: 'application/json',
				
				
        data: JSON.stringify(taskDefineSaveRequest),
				
        beforeSend: function(request) {
          Common.addTokenToRequest(request);
        },
        success: function(data) {
          resolve(data);
        },
        error: function(XMLHttpRequest, textStatus, errorThrown) {
          reject(XMLHttpRequest);
        },
      });
    });
  },

  /**
	 * 工具类自动生成的方法
	 * 工具作者: 杨志杰
	 * 测试http定时任务 
	 */
  testResource: function(){
    var requestUrl = 'api/TaskDefineResource/testResource';


    return new Promise((resolve, reject) => {
      $.ajax({
        url: Common.getApiUrl2(requestUrl),
        type: 'get',
        contentType: 'application/json',
				
				
				
				
        beforeSend: function(request) {
          Common.addTokenToRequest(request);
        },
        success: function(data) {
          resolve(data);
        },
        error: function(XMLHttpRequest, textStatus, errorThrown) {
          reject(XMLHttpRequest);
        },
      });
    });
  },

  /**
	 * 工具类自动生成的方法
	 * 工具作者: 杨志杰
	 * 更新任务状态 
	 */
  updateStatus: function(taskDefineId, taskStatus){
    var requestUrl = 'api/TaskDefineResource/updateStatus';
    var paramCount = 0;
    if(taskDefineId != null){
      requestUrl += (paramCount > 0) ? '&' : '?';
      requestUrl += ('taskDefineId=' + taskDefineId);
      paramCount ++;
    }
    if(taskStatus != null){
      requestUrl += (paramCount > 0) ? '&' : '?';
      requestUrl += ('taskStatus=' + taskStatus);
      paramCount ++;
    }


    return new Promise((resolve, reject) => {
      $.ajax({
        url: Common.getApiUrl2(requestUrl),
        type: 'get',
        contentType: 'application/json',
				
				
				
				
        beforeSend: function(request) {
          Common.addTokenToRequest(request);
        },
        success: function(data) {
          resolve(data);
        },
        error: function(XMLHttpRequest, textStatus, errorThrown) {
          reject(XMLHttpRequest);
        },
      });
    });
  },
};
