|
@@ -1,34 +1,45 @@
|
|
|
-package com.xzjmyk.pm.activity.ui.erp.util;
|
|
|
|
|
|
|
+package com.xzjmyk.pm.activity.ui.erp.util.oa;
|
|
|
|
|
|
|
|
import android.os.Bundle;
|
|
import android.os.Bundle;
|
|
|
|
|
+import android.support.annotation.NonNull;
|
|
|
|
|
+import android.support.annotation.Nullable;
|
|
|
import android.util.Log;
|
|
import android.util.Log;
|
|
|
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSON;
|
|
|
-import com.alibaba.fastjson.JSONArray;
|
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
-import com.xzjmyk.pm.activity.AppConfig;
|
|
|
|
|
import com.xzjmyk.pm.activity.MyApplication;
|
|
import com.xzjmyk.pm.activity.MyApplication;
|
|
|
-import com.xzjmyk.pm.activity.ui.erp.util.auto.HttpHandler;
|
|
|
|
|
-import com.xzjmyk.pm.activity.util.PreferenceUtils;
|
|
|
|
|
|
|
+import com.xzjmyk.pm.activity.ui.erp.model.oa.WorkModel;
|
|
|
|
|
+import com.xzjmyk.pm.activity.ui.erp.util.CommonUtil;
|
|
|
|
|
+import com.xzjmyk.pm.activity.ui.erp.util.StringUtils;
|
|
|
|
|
+import com.xzjmyk.pm.activity.util.TimeUtils;
|
|
|
import com.xzjmyk.pm.activity.wxapi.ApiConfig;
|
|
import com.xzjmyk.pm.activity.wxapi.ApiConfig;
|
|
|
import com.xzjmyk.pm.activity.wxapi.ApiPlatform;
|
|
import com.xzjmyk.pm.activity.wxapi.ApiPlatform;
|
|
|
import com.xzjmyk.pm.activity.wxapi.ApiUtils;
|
|
import com.xzjmyk.pm.activity.wxapi.ApiUtils;
|
|
|
|
|
|
|
|
import java.io.Serializable;
|
|
import java.io.Serializable;
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.HashMap;
|
|
import java.util.HashMap;
|
|
|
import java.util.Map;
|
|
import java.util.Map;
|
|
|
|
|
|
|
|
|
|
+import static com.xzjmyk.pm.activity.ui.erp.util.OACheckUtil.getJsonIntager;
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
|
|
+ * 公用接口封装类
|
|
|
* Created by Bitliker on 2016/12/30.
|
|
* Created by Bitliker on 2016/12/30.
|
|
|
*/
|
|
*/
|
|
|
public class CommonInterface implements HttpHandler.OnResultListener {
|
|
public class CommonInterface implements HttpHandler.OnResultListener {
|
|
|
- private final int CODE_WHAT = 0x11;//获取code
|
|
|
|
|
- private final int ID_WHAT = 0x12;//获取id
|
|
|
|
|
- private final int OUT_SET_WHAT = 0x13;//获取
|
|
|
|
|
- private final int ADD_OUT_SET_WHAT = 0x14;//外勤设置
|
|
|
|
|
-
|
|
|
|
|
private static CommonInterface instance;
|
|
private static CommonInterface instance;
|
|
|
|
|
|
|
|
|
|
+ public static final int CODE_WHAT = 0x11;//获取code
|
|
|
|
|
+ public static final int ID_WHAT = 0x12;//获取id
|
|
|
|
|
+ public static final int OUT_SET_WHAT = 0x13;//获取外勤设置
|
|
|
|
|
+ public static final int ADD_OUT_SET_WHAT = 0x14;//外勤设置
|
|
|
|
|
+ public static final int LOAD_COMPANY_WHAT = 0x15;//外勤设置
|
|
|
|
|
+ public static final int ISMAIN_WHAT = 0x16;//是否管理员
|
|
|
|
|
+ public static final int LOAD_CONFIG_WHAT = 0x17;//获取高级设置
|
|
|
|
|
+ public static final int WORK_DATA_WHAT = 0x18;//获取班次接口
|
|
|
|
|
+ public static final int WORK_LOG_WHAT = 0x19;//获取班次打卡记录接口
|
|
|
|
|
+
|
|
|
public static CommonInterface getInstance() {
|
|
public static CommonInterface getInstance() {
|
|
|
if (instance == null) {
|
|
if (instance == null) {
|
|
|
synchronized (CommonInterface.class) {
|
|
synchronized (CommonInterface.class) {
|
|
@@ -40,44 +51,43 @@ public class CommonInterface implements HttpHandler.OnResultListener {
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
- * 获取服务端表的编号
|
|
|
|
|
|
|
+ * 获取服务端表的id
|
|
|
*
|
|
*
|
|
|
- * @param titleName 表名
|
|
|
|
|
|
|
+ * @param sql 表名+"_sql"
|
|
|
* @param onResultListener 回调
|
|
* @param onResultListener 回调
|
|
|
*/
|
|
*/
|
|
|
- public void getCodeByNet(String titleName, OnResultListener onResultListener) {
|
|
|
|
|
|
|
+ public void getIdByNet(String sql, OnResultListener onResultListener) {
|
|
|
Map<String, Object> param = new HashMap<>();
|
|
Map<String, Object> param = new HashMap<>();
|
|
|
- param.put("caller", titleName);
|
|
|
|
|
- param.put("type", 2);
|
|
|
|
|
- net(CODE_WHAT, "common/getCodeString.action", param, onResultListener);
|
|
|
|
|
|
|
+ param.put("seq", sql);
|
|
|
|
|
+ net(false, ID_WHAT, "common/getId.action", param, new Bundle(), onResultListener, true);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
- * 获取服务端表的id
|
|
|
|
|
|
|
+ * 获取服务端表的编号
|
|
|
*
|
|
*
|
|
|
- * @param sql 表名+"_sql"
|
|
|
|
|
|
|
+ * @param titleName 表名
|
|
|
* @param onResultListener 回调
|
|
* @param onResultListener 回调
|
|
|
*/
|
|
*/
|
|
|
- public void getIdByNet(String sql, OnResultListener onResultListener) {
|
|
|
|
|
|
|
+ public void getCodeByNet(String titleName, OnResultListener onResultListener) {
|
|
|
Map<String, Object> param = new HashMap<>();
|
|
Map<String, Object> param = new HashMap<>();
|
|
|
- param.put("seq", sql);
|
|
|
|
|
- net(ID_WHAT, "common/getId.action", param, onResultListener);
|
|
|
|
|
|
|
+ param.put("caller", titleName);
|
|
|
|
|
+ param.put("type", 2);
|
|
|
|
|
+ net(false, CODE_WHAT, "common/getCodeString.action", param, new Bundle(), onResultListener, true);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* 获取外勤设置,判断是否是
|
|
* 获取外勤设置,判断是否是
|
|
|
*
|
|
*
|
|
|
* @param onResultListener 回调
|
|
* @param onResultListener 回调
|
|
|
*/
|
|
*/
|
|
|
- public void saveOutSetInfo(OnResultListener onResultListener) {
|
|
|
|
|
|
|
+ public void getOutSetInfo(OnResultListener onResultListener) {
|
|
|
boolean isB2b = ApiUtils.getApiModel() instanceof ApiPlatform;
|
|
boolean isB2b = ApiUtils.getApiModel() instanceof ApiPlatform;
|
|
|
if (!isB2b)
|
|
if (!isB2b)
|
|
|
- net(OUT_SET_WHAT, "mobile/getOutSetInfo.action", new HashMap<String, Object>(), onResultListener);
|
|
|
|
|
|
|
+ net(isB2b, OUT_SET_WHAT, "mobile/getOutSetInfo.action", new HashMap<String, Object>(), new Bundle(), onResultListener, true);
|
|
|
else {
|
|
else {
|
|
|
- Bundle bundle = new Bundle();
|
|
|
|
|
- bundle.putSerializable("onResultListener", onResultListener);
|
|
|
|
|
String url = ApiConfig.getInstance(ApiUtils.getApiModel()).getmApiBase().getOutSet;
|
|
String url = ApiConfig.getInstance(ApiUtils.getApiModel()).getmApiBase().getOutSet;
|
|
|
- HttpHandler.getInstance().loadB2BByNet(OUT_SET_WHAT, url, new HashMap<String, Object>(), bundle, this, "get");
|
|
|
|
|
|
|
+ net(isB2b, OUT_SET_WHAT, url, new HashMap<String, Object>(), new Bundle(), onResultListener, true);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -92,102 +102,199 @@ public class CommonInterface implements HttpHandler.OnResultListener {
|
|
|
*/
|
|
*/
|
|
|
public void addOutSet(int distance, int time, boolean isAuto, OnResultListener onResultListener) {
|
|
public void addOutSet(int distance, int time, boolean isAuto, OnResultListener onResultListener) {
|
|
|
boolean isB2b = ApiUtils.getApiModel() instanceof ApiPlatform;
|
|
boolean isB2b = ApiUtils.getApiModel() instanceof ApiPlatform;
|
|
|
-
|
|
|
|
|
Map<String, Object> param = new HashMap<>();
|
|
Map<String, Object> param = new HashMap<>();
|
|
|
- param.put("caller", "OUTSET");
|
|
|
|
|
- Map<String, Object> map = new HashMap<>();
|
|
|
|
|
|
|
+ Map<String, Object> formStore = new HashMap<>();
|
|
|
if (isB2b) {
|
|
if (isB2b) {
|
|
|
- map.put("enuu", CommonUtil.getSharedPreferences(MyApplication.getInstance().getApplicationContext(), "companyEnUu"));
|
|
|
|
|
- map.put("emcode", CommonUtil.getSharedPreferences(MyApplication.getInstance().getApplicationContext(), "b2b_uu"));
|
|
|
|
|
- }
|
|
|
|
|
- map.put("mo_distance", distance);//距离
|
|
|
|
|
- map.put("mo_time", time);//预留时间
|
|
|
|
|
- map.put("mo_autosign", isAuto ? 1 : 0);//是否自动外勤
|
|
|
|
|
- param.put("formStore", StringUtils.mapToJson(map));
|
|
|
|
|
|
|
+ formStore.put("enuu", CommonUtil.getSharedPreferences(MyApplication.getInstance().getApplicationContext(), "companyEnUu"));
|
|
|
|
|
+ formStore.put("emcode", CommonUtil.getSharedPreferences(MyApplication.getInstance().getApplicationContext(), "b2b_uu"));
|
|
|
|
|
+ } else param.put("caller", "OUTSET");
|
|
|
|
|
+
|
|
|
|
|
+ formStore.put("mo_distance", distance);//距离
|
|
|
|
|
+ formStore.put("mo_time", time);//预留时间
|
|
|
|
|
+ formStore.put("mo_autosign", isAuto ? 1 : 0);//是否自动外勤
|
|
|
|
|
+ param.put("formStore", StringUtils.mapToJson(formStore));
|
|
|
if (isB2b) {
|
|
if (isB2b) {
|
|
|
- Bundle bundle = new Bundle();
|
|
|
|
|
- bundle.putSerializable("onResultListener", onResultListener);
|
|
|
|
|
String url = ApiConfig.getInstance(ApiUtils.getApiModel()).getmApiBase().saveOutSet;
|
|
String url = ApiConfig.getInstance(ApiUtils.getApiModel()).getmApiBase().saveOutSet;
|
|
|
- HttpHandler.getInstance().loadB2BByNet(ADD_OUT_SET_WHAT, url, param, bundle, this);
|
|
|
|
|
|
|
+ net(isB2b, ADD_OUT_SET_WHAT, url, param, new Bundle(), onResultListener, false);
|
|
|
} else {
|
|
} else {
|
|
|
- net(ADD_OUT_SET_WHAT, "mobile/addOutSet.action", param, onResultListener);
|
|
|
|
|
|
|
+ net(isB2b, ADD_OUT_SET_WHAT, "mobile/addOutSet.action", param, new Bundle(), onResultListener, false);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- void net(int waht, String action, Map<String, Object> param, OnResultListener onResultListener) {
|
|
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 获取企业架构数据
|
|
|
|
|
+ *
|
|
|
|
|
+ * @param onResultListener
|
|
|
|
|
+ */
|
|
|
|
|
+ public void loadCompanyData(OnResultListener onResultListener) {
|
|
|
|
|
+ String master = CommonUtil.getMaster();
|
|
|
|
|
+ Map<String, Object> param = new HashMap<>();
|
|
|
|
|
+ param.put("master", master);
|
|
|
|
|
+ param.put("lastdate", "");
|
|
|
|
|
+ Bundle bundle = new Bundle();
|
|
|
|
|
+ boolean isB2b = ApiUtils.getApiModel() instanceof ApiPlatform;
|
|
|
|
|
+ bundle.putBoolean("isB2b", isB2b);
|
|
|
|
|
+ String url = isB2b ? ApiConfig.getInstance(ApiUtils.getApiModel()).getmApiBase().getUsersInfo : "mobile/getAllHrorgEmps.action";
|
|
|
|
|
+ net(isB2b, LOAD_COMPANY_WHAT, url, param, bundle, onResultListener, true);
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ //判断是否管理员
|
|
|
|
|
+ private void judgeManager(OnResultListener onResultListener) {
|
|
|
|
|
+ Map<String, Object> param = new HashMap<>();
|
|
|
|
|
+ boolean isB2b = ApiUtils.getApiModel() instanceof ApiPlatform;
|
|
|
|
|
+ String url = isB2b ? ApiConfig.getInstance(ApiUtils.getApiModel()).getmApiBase().getUserInfo : "mobile/ifadmin.action";
|
|
|
|
|
+ param.put("emcode", CommonUtil.getEmcode());
|
|
|
|
|
+ net(isB2b, ISMAIN_WHAT, url, param, new Bundle(), onResultListener, true);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //获取高级设置数据
|
|
|
|
|
+ public void loadConfigs(OnResultListener onResultListener) {
|
|
|
|
|
+ //获取考勤高级设置时间请求
|
|
|
|
|
+ boolean isB2b = ApiUtils.getApiModel() instanceof ApiPlatform;
|
|
|
|
|
+ Map<String, Object> param = new HashMap<>();
|
|
|
|
|
+ if (!isB2b)
|
|
|
|
|
+ param.put("code", 1);
|
|
|
|
|
+ String url = isB2b ? ApiConfig.getInstance(ApiUtils.getApiModel()).getmApiBase().get_plat_senior_setting_url : "/mobile/getconfigs.action";
|
|
|
|
|
+ net(isB2b, LOAD_CONFIG_WHAT, url, param, null, onResultListener, true);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //获取班次数据
|
|
|
|
|
+ private void loadWorkData(long time, OnResultListener onResultListener) {
|
|
|
|
|
+ Map<String, Object> param = new HashMap<>();
|
|
|
|
|
+ param.put("date", TimeUtils.int_long_2_str(time));
|
|
|
Bundle bundle = new Bundle();
|
|
Bundle bundle = new Bundle();
|
|
|
|
|
+ bundle.putLong("time", time);
|
|
|
|
|
+ boolean isB2b = ApiUtils.getApiModel() instanceof ApiPlatform;
|
|
|
|
|
+ if (!isB2b)
|
|
|
|
|
+ param.put("emcode", CommonUtil.getEmcode());
|
|
|
|
|
+ String url = isB2b ? ApiConfig.getInstance(ApiUtils.getApiModel()).getmApiBase().punch_schedule_url : "mobile/getWorkDate.action";
|
|
|
|
|
+ net(isB2b, WORK_DATA_WHAT, url, param, bundle, onResultListener, true);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //获取打卡数据
|
|
|
|
|
+ private void loadLog(ArrayList<WorkModel> models, Bundle bundle) {
|
|
|
|
|
+ long time = 0;
|
|
|
|
|
+ if (bundle == null) bundle = new Bundle();
|
|
|
|
|
+ else time = bundle.getLong("time");
|
|
|
|
|
+ if (time == 0)
|
|
|
|
|
+ time = System.currentTimeMillis();
|
|
|
|
|
+ String date = TimeUtils.s_long_2_str(time);
|
|
|
|
|
+ Map<String, Object> param = new HashMap<>();
|
|
|
|
|
+ String code = CommonUtil.getEmcode();
|
|
|
|
|
+ param.put("currentMaster", CommonUtil.getMaster());
|
|
|
|
|
+ boolean isB2b = ApiUtils.getApiModel() instanceof ApiPlatform;
|
|
|
|
|
+ if (isB2b)
|
|
|
|
|
+ param.put("pageNumber", 1);
|
|
|
|
|
+ else
|
|
|
|
|
+ param.put("page", 1);
|
|
|
|
|
+ param.put("pageSize", 100);
|
|
|
|
|
+ if (!isB2b)
|
|
|
|
|
+ param.put("condition", "cl_emcode='" + code + "' and to_char(cl_time,'yyyy-MM-dd')='" + date + "'");
|
|
|
|
|
+ else
|
|
|
|
|
+ param.put("date", TimeUtils.long2str(time, "yyyyMMdd"));
|
|
|
|
|
+ param.put("caller", "CardLog");
|
|
|
|
|
+ param.put("emcode", code);
|
|
|
|
|
+ param.put("master", CommonUtil.getSharedPreferences(MyApplication.getInstance(), "erp_master"));
|
|
|
|
|
+ bundle.putParcelableArrayList("models", models);
|
|
|
|
|
+ bundle.putLong("time", time);
|
|
|
|
|
+ if (isB2b) {
|
|
|
|
|
+ String url = ApiConfig.getInstance(ApiUtils.getApiModel()).getmApiBase().punch_record_url;
|
|
|
|
|
+ HttpHandler.getInstance().loadB2BByNet(WORK_LOG_WHAT, url, param, bundle, this, "get");
|
|
|
|
|
+ } else
|
|
|
|
|
+ HttpHandler.getInstance().loadERPByNet(WORK_LOG_WHAT, "mobile/oa/workdata.action", param, bundle, this);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ private void net(boolean isB2b, int waht, String url, Map<String, Object> param, Bundle bundle, OnResultListener onResultListener, boolean isGet) {
|
|
|
|
|
+ if (bundle == null) bundle = new Bundle();
|
|
|
bundle.putSerializable("onResultListener", onResultListener);
|
|
bundle.putSerializable("onResultListener", onResultListener);
|
|
|
- HttpHandler.getInstance().loadERPByNet(waht, action, param, bundle, this);
|
|
|
|
|
|
|
+ if (isB2b)
|
|
|
|
|
+ HttpHandler.getInstance().loadB2BByNet(waht, url, param, bundle, this, isGet ? "get" : "post");
|
|
|
|
|
+ else
|
|
|
|
|
+ HttpHandler.getInstance().loadERPByNet(waht, url, param, bundle, this, isGet ? "get" : "post");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
@Override
|
|
@Override
|
|
|
public void result(int what, boolean isJSON, String message, Bundle bundle) {
|
|
public void result(int what, boolean isJSON, String message, Bundle bundle) {
|
|
|
|
|
+ OnResultListener listener = (OnResultListener) bundle.getSerializable("onResultListener");
|
|
|
|
|
+ String resultMessage = message;
|
|
|
try {
|
|
try {
|
|
|
- if (!isJSON) return;
|
|
|
|
|
- JSONObject json = JSON.parseObject(message);
|
|
|
|
|
- OnResultListener listener = (OnResultListener) bundle.getSerializable("onResultListener");
|
|
|
|
|
|
|
+ if (!isJSON) {
|
|
|
|
|
+ if (listener != null)
|
|
|
|
|
+ listener.result(false, what, message);
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ JSONObject object = JSON.parseObject(message);
|
|
|
|
|
+ boolean success = true;
|
|
|
switch (what) {
|
|
switch (what) {
|
|
|
case CODE_WHAT://获取编号
|
|
case CODE_WHAT://获取编号
|
|
|
- String code = json.getString("code");
|
|
|
|
|
- if (listener != null)
|
|
|
|
|
- listener.result(true, code, message);
|
|
|
|
|
|
|
+ resultMessage = object.getString("code");
|
|
|
break;
|
|
break;
|
|
|
case ID_WHAT:
|
|
case ID_WHAT:
|
|
|
- if (json.containsKey("success") && json.getBoolean("success")) {
|
|
|
|
|
- int id = JSON.parseObject(message).getInteger("id");
|
|
|
|
|
- if (listener != null)
|
|
|
|
|
- listener.result(true, String.valueOf(id), message);
|
|
|
|
|
- } else {
|
|
|
|
|
- if (listener != null)
|
|
|
|
|
- listener.result(false, "", message);
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ success = (object.containsKey("success") && object.getBoolean("success"));
|
|
|
|
|
+ int id = getJsonIntager(object, "id");
|
|
|
|
|
+ if (id != 0)
|
|
|
|
|
+ resultMessage = String.valueOf(id);
|
|
|
|
|
+ else success = false;
|
|
|
|
|
+ break;
|
|
|
|
|
+ case OUT_SET_WHAT://获取外勤地址
|
|
|
|
|
+ success = CommonInterfaceHandler.getOutSet(object);
|
|
|
|
|
+ break;
|
|
|
|
|
+ case ADD_OUT_SET_WHAT://添加外勤地址
|
|
|
|
|
+ success = true;
|
|
|
break;
|
|
break;
|
|
|
- case OUT_SET_WHAT:
|
|
|
|
|
- boolean isB2b = ApiUtils.getApiModel() instanceof ApiPlatform;
|
|
|
|
|
- JSONObject object = null;
|
|
|
|
|
- if (!isB2b) {
|
|
|
|
|
- JSONArray array = json.getJSONArray("result");
|
|
|
|
|
- if (ListUtils.isEmpty(array)) return;
|
|
|
|
|
- object = array.getJSONObject(0);
|
|
|
|
|
- } else object = json;
|
|
|
|
|
- int distance = object.containsKey("mo_distance") ? object.getInteger("mo_distance") : object.getIntValue("MO_DISTANCE");
|
|
|
|
|
- int time = object.containsKey("mo_time") ? object.getInteger("mo_time") : object.getIntValue("MO_TIME");
|
|
|
|
|
- //TODO 先屏蔽
|
|
|
|
|
-// boolean isAuto = ((object.containsKey("mo_autosign") ? object.getInteger("mo_autosign") : object.getIntValue("MO_AUTOSIGN")) > 0) ? true : false;
|
|
|
|
|
- boolean isAuto = true;
|
|
|
|
|
- //获取到外勤设置 保存下来
|
|
|
|
|
- PreferenceUtils.putBoolean(AppConfig.AUTO_MISSION, isAuto);
|
|
|
|
|
- PreferenceUtils.putInt(AppConfig.ALARM_MISSION_DISTANCE, distance);
|
|
|
|
|
- PreferenceUtils.putInt(AppConfig.AUTO_MISSION_TIME, time);
|
|
|
|
|
- if (listener != null)
|
|
|
|
|
- listener.result(true, String.valueOf(isAuto ? distance : 0), message);
|
|
|
|
|
|
|
+ case LOAD_COMPANY_WHAT://获取企业信息的内容,有与该信息比较特殊,将数据处理逻辑放到外面去
|
|
|
break;
|
|
break;
|
|
|
- case ADD_OUT_SET_WHAT:
|
|
|
|
|
- if (listener != null)
|
|
|
|
|
- listener.result(true, null, message);
|
|
|
|
|
|
|
+ case ISMAIN_WHAT://判断是否是管理员
|
|
|
|
|
+ success = CommonInterfaceHandler.saveMainStatus(object);
|
|
|
break;
|
|
break;
|
|
|
|
|
+ case LOAD_CONFIG_WHAT:
|
|
|
|
|
+ WorkHandlerUtil.handlerWorkSet(object);
|
|
|
|
|
+ break;
|
|
|
|
|
+ case WORK_DATA_WHAT:
|
|
|
|
|
+ break;
|
|
|
|
|
+ case WORK_LOG_WHAT:
|
|
|
|
|
+
|
|
|
|
|
+ break;
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
|
|
+ if (listener != null)
|
|
|
|
|
+ listener.result(success, what, resultMessage);
|
|
|
} catch (NullPointerException e) {
|
|
} catch (NullPointerException e) {
|
|
|
- if (e != null)
|
|
|
|
|
|
|
+ if (e != null) {
|
|
|
Log.i("gongpengming", "handleMessage NullPointerException=" + e.getMessage());
|
|
Log.i("gongpengming", "handleMessage NullPointerException=" + e.getMessage());
|
|
|
|
|
+ resultMessage = e.getMessage();
|
|
|
|
|
+ }
|
|
|
|
|
+ if (listener != null)
|
|
|
|
|
+ listener.result(false, what, resultMessage);
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- if (e != null)
|
|
|
|
|
|
|
+ if (e != null) {
|
|
|
Log.i("gongpengming", "handleMessage Exception=" + e.getMessage());
|
|
Log.i("gongpengming", "handleMessage Exception=" + e.getMessage());
|
|
|
|
|
+ resultMessage = e.getMessage();
|
|
|
|
|
+ }
|
|
|
|
|
+ if (listener != null)
|
|
|
|
|
+ listener.result(false, what, resultMessage);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
public void error(int what, int statuCode, String message, Bundle bundle) {
|
|
public void error(int what, int statuCode, String message, Bundle bundle) {
|
|
|
-
|
|
|
|
|
|
|
+ OnResultListener listener = (OnResultListener) bundle.getSerializable("onResultListener");
|
|
|
|
|
+ if (listener != null)
|
|
|
|
|
+ listener.result(false, what, message);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
public interface OnResultListener extends Serializable {
|
|
public interface OnResultListener extends Serializable {
|
|
|
/**
|
|
/**
|
|
|
- * @param isOk 是否请求成功
|
|
|
|
|
- * @param result 返回需要的接口 如code id 都转换成String
|
|
|
|
|
- * @param message 返回值
|
|
|
|
|
|
|
+ * 通用接口保存后返回接口
|
|
|
|
|
+ *
|
|
|
|
|
+ * @param success 成功
|
|
|
|
|
+ * @param what 请求的what
|
|
|
|
|
+ * @param message 返回的外面需要用到的信息
|
|
|
*/
|
|
*/
|
|
|
- void result(boolean isOk, String result, String message);
|
|
|
|
|
|
|
+ void result(@NonNull boolean success, @NonNull int what, @Nullable String message);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|