/**
 * 工具类自动生成的API，请勿做任何修改，请勿做任何修改，请勿做任何修改（重要的事情说3遍）
 * 工具作者: 杨志杰
 * ClientResource 
 */
var ClientResource = {

	/**
	 * 工具类自动生成的方法
	 * 工具作者: 杨志杰
	 * 获取当前公司集团公司所有公司 
	 */
	getAllClients : function(){
		var requestUrl = "ClientResource/getAllClients";


		return new Promise(function(resolve, reject) {
			$.ajax({
				url: Common.getApiURL(requestUrl),
				type: "get",
				
				dataType: "json",
				
				
				beforeSend: function(request) {
					Common.addTokenToRequest(request);
				},
				success: function(data) {
					resolve(data);
				},
				error: function(XMLHttpRequest, textStatus, errorThrown) {
					reject(XMLHttpRequest);
				}
			});
		});
	},

	/**
	 * 工具类自动生成的方法
	 * 工具作者: 杨志杰
	 * 获取当前公司集团公司所有公司以及部门 
	 */
	getAllClientsAndOrgs : function(){
		var requestUrl = "ClientResource/getAllClientsAndOrgs";


		return new Promise(function(resolve, reject) {
			$.ajax({
				url: Common.getApiURL(requestUrl),
				type: "get",
				
				dataType: "json",
				
				
				beforeSend: function(request) {
					Common.addTokenToRequest(request);
				},
				success: function(data) {
					resolve(data);
				},
				error: function(XMLHttpRequest, textStatus, errorThrown) {
					reject(XMLHttpRequest);
				}
			});
		});
	},

	/**
	 * 工具类自动生成的方法
	 * 工具作者: 杨志杰
	 * 查询所有的公司 
	 */
	getApprovalFlowClient : function(){
		var requestUrl = "ClientResource/getApprovalFlowClient";


		return new Promise(function(resolve, reject) {
			$.ajax({
				url: Common.getApiURL(requestUrl),
				type: "get",
				
				dataType: "json",
				
				
				beforeSend: function(request) {
					Common.addTokenToRequest(request);
				},
				success: function(data) {
					resolve(data);
				},
				error: function(XMLHttpRequest, textStatus, errorThrown) {
					reject(XMLHttpRequest);
				}
			});
		});
	},

	/**
	 * 工具类自动生成的方法
	 * 工具作者: 杨志杰
	 * 获取所有单位及单位下部门 
	 */
	getClientOrganization : function(){
		var requestUrl = "ClientResource/getClientOrganization";


		return new Promise(function(resolve, reject) {
			$.ajax({
				url: Common.getApiURL(requestUrl),
				type: "get",
				
				dataType: "json",
				
				
				beforeSend: function(request) {
					Common.addTokenToRequest(request);
				},
				success: function(data) {
					resolve(data);
				},
				error: function(XMLHttpRequest, textStatus, errorThrown) {
					reject(XMLHttpRequest);
				}
			});
		});
	},

	/**
	 * 工具类自动生成的方法
	 * 工具作者: 杨志杰
	 * 获取所有部门及部门下用户信息 
	 */
	getClientOrganizationUser : function(){
		var requestUrl = "ClientResource/getClientOrganizationUser";


		return new Promise(function(resolve, reject) {
			$.ajax({
				url: Common.getApiURL(requestUrl),
				type: "get",
				
				dataType: "json",
				
				
				beforeSend: function(request) {
					Common.addTokenToRequest(request);
				},
				success: function(data) {
					resolve(data);
				},
				error: function(XMLHttpRequest, textStatus, errorThrown) {
					reject(XMLHttpRequest);
				}
			});
		});
	},

	/**
	 * 工具类自动生成的方法
	 * 工具作者: 杨志杰
	 * 获取所有公司 checked by jack 
	 */
	getClients : function(){
		var requestUrl = "ClientResource/getClients";


		return new Promise(function(resolve, reject) {
			$.ajax({
				url: Common.getApiURL(requestUrl),
				type: "get",
				
				dataType: "json",
				
				
				beforeSend: function(request) {
					Common.addTokenToRequest(request);
				},
				success: function(data) {
					resolve(data);
				},
				error: function(XMLHttpRequest, textStatus, errorThrown) {
					reject(XMLHttpRequest);
				}
			});
		});
	},

	/**
	 * 工具类自动生成的方法
	 * 工具作者: 杨志杰
	 * 根据单位id查询所有子单位 
	 */
	getSubClientIds : function(rootClientId){
		var requestUrl = "ClientResource/getSubClientIds";
		var paramCount = 0;
		if(rootClientId != null){
			requestUrl += (paramCount > 0) ? '&' : '?';
			requestUrl += ('rootClientId=' + rootClientId);
			paramCount ++;
		}


		return new Promise(function(resolve, reject) {
			$.ajax({
				url: Common.getApiURL(requestUrl),
				type: "get",
				
				dataType: "json",
				
				
				beforeSend: function(request) {
					Common.addTokenToRequest(request);
				},
				success: function(data) {
					resolve(data);
				},
				error: function(XMLHttpRequest, textStatus, errorThrown) {
					reject(XMLHttpRequest);
				}
			});
		});
	},

	/**
	 * 工具类自动生成的方法
	 * 工具作者: 杨志杰
	 *  
	 */
	initClient : function(registerParamInfo){
		var requestUrl = "ClientResource/initClient";


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

	/**
	 * 工具类自动生成的方法
	 * 工具作者: 杨志杰
	 * 查询所有的子公司，包括输入的公司 
	 */
	listSubClient : function(){
		var requestUrl = "ClientResource/listSubClient";


		return new Promise(function(resolve, reject) {
			$.ajax({
				url: Common.getApiURL(requestUrl),
				type: "get",
				
				dataType: "json",
				
				
				beforeSend: function(request) {
					Common.addTokenToRequest(request);
				},
				success: function(data) {
					resolve(data);
				},
				error: function(XMLHttpRequest, textStatus, errorThrown) {
					reject(XMLHttpRequest);
				}
			});
		});
	},

	/**
	 * 工具类自动生成的方法
	 * 工具作者: 杨志杰
	 * 根据部门Id查询所属单位DTO 
	 */
	uniqueByOrganizationId : function(organizationId){
		var requestUrl = "ClientResource/uniqueByOrganizationId";
		var paramCount = 0;
		if(organizationId != null){
			requestUrl += (paramCount > 0) ? '&' : '?';
			requestUrl += ('organizationId=' + organizationId);
			paramCount ++;
		}


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