Newer
Older
GasOperationApp / app / src / main / java / com / casic / gasoperation / config / ApiClent.java
[wangxitong] on 24 May 2021 35 KB first commit
package com.casic.gasoperation.config;

import android.content.Context;

import com.google.gson.Gson;
import com.koushikdutta.async.future.FutureCallback;
import com.koushikdutta.ion.Ion;
import com.koushikdutta.ion.builder.Builders;
import com.loopj.android.http.AsyncHttpClient;
import com.loopj.android.http.AsyncHttpResponseHandler;
import com.loopj.android.http.RequestParams;
import com.loopj.android.http.SyncHttpClient;

import org.apache.http.Header;
import org.json.JSONException;
import org.json.JSONObject;

import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import static com.casic.gasoperation.config.RestClient.getAbsoluteUrl;

public class ApiClent
{
	public final static String message_error = "网络信号差,服务器连接有问题!";
	public static String token;
	public interface ClientCallback {
		abstract void onSuccess(Object data) throws JSONException;

		abstract void onFailure(String message);

		abstract void onError(Exception e);
	}

	public static void RSAPublicKey(final ClientCallback callback){
		RestClient.get("/config/baseConfig", null, new AsyncHttpResponseHandler(){
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					System.out.println(json);
					callback.onSuccess(json);
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}
			@Override
			public void onFailure(int statusCode, Header[] headers,byte[] responseBody, Throwable error)
			{
				if(statusCode == 500)
					callback.onFailure(message_error);
			}
		});
	}

	// 登出
	public static void logout( final ClientCallback callback) {
		RequestParams params = new RequestParams();
		params.add("token",token);
		RestClient.get("/user/logout", params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						token = "";
					}
					if(json.getInt("code")==400){
						callback.onFailure("登出失败");
						return;
					}
					callback.onSuccess(json);
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}

	// 登录
	public static void login(String userName, String password, final ClientCallback callback) {
		RequestParams params = new RequestParams();
		params.add("password",password);
		params.add("username", userName);
		RestClient.post("/user/login", params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						token = json.getJSONObject("data").getString("token");
					}
					if(json.getInt("code")==400){
						callback.onFailure("用户名或密码错误");
						return;
					}
					callback.onSuccess(json);
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}
			@Override
			public void onFailure(int statusCode, Header[] headers,
					byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}

	// 修改密码
	public static void updatePwd(String userName, String oldPassword, String newPassword, final ClientCallback callback) {
		RequestParams params = new RequestParams();
		params.add("userName", userName);
		params.add("oldPassword", oldPassword);
		params.add("newPassword", newPassword);
		RestClient.post("resetPassword.do", params,
				new AsyncHttpResponseHandler()
				{
					@Override
					public void onSuccess(int statusCode, Header[] headers,
					                      byte[] responseBody)
					{
						try
						{

							JSONObject json = new JSONObject(new String(
									responseBody));
							callback.onSuccess(json);
						} catch (JSONException e)
						{
							e.printStackTrace();
							callback.onError(e);
						}
					}

					@Override
					public void onFailure(int statusCode, Header[] headers,
					                      byte[] responseBody, Throwable error)
					{
						callback.onFailure(message_error);
					}
				});
	}
    //当前作业列表
	public static void currentList( String keywords,int offset,int limit,final ClientCallback callback) {
		SyncHttpClient client = new SyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("alarmContent", keywords);
		params.put("offset", offset);
		params.put("limit", limit);
		String url = getAbsoluteUrl("/busJob/currentList");
		client.get(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("当前作业列表获取失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//历史作业列表
	public static void historyList( String keywords,int offset,int limit,final ClientCallback callback) {
		SyncHttpClient client = new SyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("alarmContent", keywords);
		params.put("offset", offset);
		params.put("limit", limit);
		String url = getAbsoluteUrl("/busJob/historyList");
		client.get(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("历史作业列表获取失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//设备下拉
	public static void getDeviceDropdown( final ClientCallback callback) {
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		String url = getAbsoluteUrl("/deviceGroup/list");
		client.get(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("设备列表获取失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	public static void userinfo(final ClientCallback callback){
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("token",token);
		String url = getAbsoluteUrl("/user/info");
		client.get(url, params, new AsyncHttpResponseHandler(){
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					callback.onSuccess(json);
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}
			@Override
			public void onFailure(int statusCode, Header[] headers,byte[] responseBody, Throwable error)
			{
				if(statusCode == 500)
					callback.onFailure(message_error);
			}
		});
	}
	//新建任务
	public static void addJob( String name,String deviceGroup,String num,final ClientCallback callback) {
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("name", name);
		params.add("deviceGroup", deviceGroup);
		params.add("treeNum", num);
		String url = getAbsoluteUrl("/busJob/add");
		client.post(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("新建作业失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//当前作业人员列表
	public static void currentPersonList( String jobId,final ClientCallback callback) {
		SyncHttpClient client = new SyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("jobId", jobId);
		String url = getAbsoluteUrl("/busPerson/authorizeList");
		client.get(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("获取当前作业人员列表时出错");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//甲烷列表
	public static void ch4List( String jobId,final ClientCallback callback) {
		SyncHttpClient client = new SyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("jobId", jobId);
		String url = getAbsoluteUrl("/device/CH4List");
		client.get(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("获取甲烷监测列表时出错");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//电池列表
	public static void batteryList( String jobId,final ClientCallback callback) {
		SyncHttpClient client = new SyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("jobId", jobId);
		String url = getAbsoluteUrl("/device/batteryList");
		client.get(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("获取电池信息列表时出错");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//历史报警列表
	public static void historyAlarmList( String jobId,String alarmContent, final ClientCallback callback) {
		SyncHttpClient client = new SyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("jobId", jobId);
		params.add("alarmContent", alarmContent);
		String url = getAbsoluteUrl("/alarm/listPageByJob");
		client.get(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("获取报警信息列表时出错");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//报警列表
	public static void alarmList( String jobId,final ClientCallback callback) {
		SyncHttpClient client = new SyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("jobId", jobId);
		String url = getAbsoluteUrl("/alarm/listByJob");
		client.get(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("获取报警信息列表时出错");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//人员管理列表
	public static void personManagerList( String keywords,int offset,int limit,final ClientCallback callback) {
		SyncHttpClient client = new SyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("keywords", keywords);
		params.put("limit", limit);
		params.put("offset", offset);
		String url = getAbsoluteUrl("/busPerson/listPage");
		client.get(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("获取人员列表时出错");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//设备管理列表
	public static void deviceManagerList( String deviceGroup,int offset,int limit,final ClientCallback callback) {
		SyncHttpClient client = new SyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("deviceGroup", deviceGroup);
		params.put("limit", limit);
		params.put("offset", offset);
		String url = getAbsoluteUrl("/deviceGroup/listPage");
		client.get(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("获取人员列表时出错");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//删除人员
	public static void deletePerson( String id,final ClientCallback callback) {
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.put("id", Long.valueOf(id));
		String url = getAbsoluteUrl("/busPerson/deleteOne");
		client.post(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("删除工作人员失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}
			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//删除设备
	public static void deleteDevice( String id,final ClientCallback callback) {
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("id", id);
		String url = getAbsoluteUrl("/deviceGroup/delete");
		client.post(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}else if(json.getInt("code")==500){
						callback.onFailure("该设备正在作业,不能删除");
						return;
					} else{
						callback.onFailure("删除设备失败");

					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}
			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//人员类别下拉
	public static void getPersonType( final ClientCallback callback) {
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		String url = getAbsoluteUrl("/dict/code/personType");
		client.get(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("设备列表获取失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//手环编号下拉
	public static void getAuthorizeCode( String jobId,final ClientCallback callback) {
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("jobId", jobId);
		String url = getAbsoluteUrl("/busPerson/authorizeCode");
		client.get(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("手环编号列表获取失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//部门下拉
	public static void getDepartment( final ClientCallback callback) {
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		String url = getAbsoluteUrl("/dept/list");
		client.get(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("设备列表获取失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//获取设备配置
	public static void getConfigList( String deviceGroup, final ClientCallback callback) {
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("deviceGroup", deviceGroup);
		String url = getAbsoluteUrl("/deviceGroup/configList");
		client.post(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("获取配置失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}
			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//新增设备
	public static void addDevice( String deviceGroup, final ClientCallback callback) {
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("deviceGroup", deviceGroup);
		String url = getAbsoluteUrl("/deviceGroup/add");
		client.post(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else if(json.getInt("code")==500){
						callback.onFailure("已存在该设备编号");
						return;
					}else{
						callback.onFailure("新增设备失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//编辑设备
	public static void updateDevice( String devList, final ClientCallback callback) {
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("devList", devList);
		String url = getAbsoluteUrl("/deviceGroup/update");
		client.post(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("编辑设备失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//编辑人员
	public static void editPerson( String id,String name,String personcode,String department,String authorize,String authorizeCode,
								   String personType,String phone,String jobId,
								   final ClientCallback callback) {
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("name", name);
		params.add("personCode", personcode);
		params.add("id", id);
		params.add("department", department);
		params.add("authorize", authorize);
		params.add("authorizeCode", authorizeCode);
		params.add("personType", personType);
		params.add("phone", phone);
		params.add("jobId", jobId);
		String url = getAbsoluteUrl("/busPerson/update");
		client.post(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else if(json.getInt("code")==500){
						callback.onFailure("该设备已绑定");
						return;
					}else{
						callback.onFailure("编辑人员信息失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//编辑人员
	public static void addPerson( String name,String personcode,String department,String authorize,String authorizeCode,
								   String personType,String phone,String jobId,
								   final ClientCallback callback) {
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("name", name);
		params.add("personCode", personcode);
		params.add("department", department);
		params.add("authorize", authorize);
		params.add("authorizeCode", authorizeCode);
		params.add("personType", personType);
		params.add("phone", phone);
		params.add("jobId", jobId);
		String url = getAbsoluteUrl("/busPerson/add");
		client.post(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else if(json.getInt("code")==500){
						callback.onFailure("该设备已绑定");
						return;
					}
					else{
						callback.onFailure("编辑人员信息失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}

	//历史作业设备列表
	public static void deviceHistoryList( String alarmId,final ClientCallback callback) {
		SyncHttpClient client = new SyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("alarmId", alarmId);
		String url = getAbsoluteUrl("/alarm/device");
		client.get(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("获取历史作业设备列表时出错");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//当前作业设备列表
	public static void deviceCurrentList( String jobId,final ClientCallback callback) {
		SyncHttpClient client = new SyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("jobId", jobId);
		String url = getAbsoluteUrl("/device/listByJob");
		client.get(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("获取当前作业列表时出错");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}

			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}

	//人员详情
	public static void personInfo( String personId,final ClientCallback callback) {
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("personId", personId);
		String url = getAbsoluteUrl("/busPerson/data");
		client.post(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("查询人员详情失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}
			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//安全树详情
	public static void deviceInfo( String deviceId,final ClientCallback callback) {
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("deviceId", deviceId);
		String url = getAbsoluteUrl("/device/treeDetail");
		client.post(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("查询安全树详情失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}
			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//消警
	public static void deleteAlarm( String alarmId,final ClientCallback callback) {
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("alarmId", alarmId);
		String url = getAbsoluteUrl("/alarm/cancel");
		client.get(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("消警失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}
			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//开始作业
	public static void startJob( String jobId,final ClientCallback callback) {
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("jobId", jobId);
		String url = getAbsoluteUrl("/busJob/start");
		client.post(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("开始作业失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}
			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//结束作业
	public static void endJob( String jobId,final ClientCallback callback) {
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("jobId", jobId);
		String url = getAbsoluteUrl("/busJob/end");
		client.post(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("结束作业失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}
			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
	//风速风向
	public static void overAll( String jobId,final ClientCallback callback) {
		AsyncHttpClient client = new AsyncHttpClient();
		client.addHeader("token",token);
		RequestParams params = new RequestParams();
		params.add("jobId", jobId);
		String url = getAbsoluteUrl("/device/overall");
		client.post(url, params, new AsyncHttpResponseHandler()
		{
			@Override
			public void onSuccess(int statusCode, Header[] headers, byte[] responseBody)
			{
				try	{
					JSONObject json = new JSONObject(new String(responseBody));
					if(json.getInt("code")==200){
						callback.onSuccess(json);
					}
					else{
						callback.onFailure("获取现场环境失败");
						return;
					}
				} catch (JSONException e){
					e.printStackTrace();
					callback.onError(e);
				}
			}
			@Override
			public void onFailure(int statusCode, Header[] headers,
								  byte[] responseBody, Throwable error)
			{
				if(statusCode==500)
					callback.onFailure(message_error);
			}
		});
	}
}