This commit is contained in:
2020-09-16 17:26:47 +08:00
parent 2ce5beace4
commit 124518a570
6 changed files with 68 additions and 48 deletions

View File

@@ -53,10 +53,12 @@ public class CreateGroupActivity extends TrBaseActivity {
users.clear(); users.clear();
mapUsers.clear(); mapUsers.clear();
users.add(DBUser.mySelf);
mapUsers.put(DBUser.mySelf.phone, DBUser.mySelf);
DBUser u = new DBUser("", "添加分机号", ""); DBUser u = new DBUser("", "添加分机号", "");
u.isAddFlag = true; u.isAddFlag = true;
users.add(u); users.add(u);
users.add(DBUser.mySelf);
setList(null); setList(null);
} }

View File

@@ -59,6 +59,8 @@ public class CreateMeetingActivity extends TrBaseActivity {
users.clear(); users.clear();
mapUsers.clear(); mapUsers.clear();
users.add(DBUser.mySelf);
mapUsers.put(DBUser.mySelf.phone, DBUser.mySelf);
DBUser u = new DBUser("", "添加分机号", ""); DBUser u = new DBUser("", "添加分机号", "");
u.isAddFlag = true; u.isAddFlag = true;
users.add(u); users.add(u);
@@ -174,13 +176,13 @@ public class CreateMeetingActivity extends TrBaseActivity {
List<String> list = new ArrayList<>(); List<String> list = new ArrayList<>();
List<String> listPhone = new ArrayList<>(); List<String> listPhone = new ArrayList<>();
for (DBUser u : DBUser.allUser) { for (DBUser u : DBUser.allUser) {
if (mapUsers.get(u.phone) == null && (!u.isBusy())) { // 只有空的才加入 if (mapUsers.get(u.phone) == null && u.isOnline()) { // 只有空的才加入
listPhone.add(u.phone); listPhone.add(u.phone);
list.add(u.phone + " | " + u.name); list.add(u.phone + " | " + u.name);
} }
} }
if(list.size() == 0) { if(list.size() == 0) {
UIUtl.toastI("所有分机已经添加"); UIUtl.toastI("所有空闲分机已经添加");
return; return;
} }

View File

@@ -369,17 +369,17 @@ public class LoginActivity extends TrBaseActivity {
} }
public void exit2(View view) { public void exit2(View view) {
// Net.login(this.name, this.pw, new HttpUtl.CallBack() { Net.login("5503", "!@#123Qw", new HttpUtl.CallBack() {
// @Override @Override
// public void onRequestComplete(int cmd, String result, Object orgs) { public void onRequestComplete(int cmd, String result, Object orgs) {
// ActivityMgr.sendMsg(CONS.LOGIN, null); ActivityMgr.sendMsg(CONS.LOGIN, null);
// } }
//
// @Override @Override
// public void onRequestError(int cmd, String result, Object orgs) { public void onRequestError(int cmd, String result, Object orgs) {
// UIUtl.toastI("取得token失败"); UIUtl.toastI("取得token失败");
// } }
// }, null); }, null);
} }
} }

View File

@@ -417,7 +417,7 @@ public class MainActivity extends TrBaseActivity {
} }
} }
)); ));
if (DBUser.mySelf.isManager) { if (DBUser.mySelf.isManager && currSelectData != null && (!currSelectData.isAll())) {
qa.addAction(new QMUIQuickAction.Action().icon(android.R.drawable.ic_delete).text("移除").onClick( qa.addAction(new QMUIQuickAction.Action().icon(android.R.drawable.ic_delete).text("移除").onClick(
new QMUIQuickAction.OnClickListener() { new QMUIQuickAction.OnClickListener() {
@Override @Override

View File

@@ -11,26 +11,38 @@ import java.util.concurrent.ConcurrentSkipListSet;
public class ActivityMgr { public class ActivityMgr {
public static Map<Class, TrBaseActivity> actives = new ConcurrentHashMap<>(); public static Map<Class, TrBaseActivity> actives = new ConcurrentHashMap<>();
public static TrBaseActivity topActivity; public static TrBaseActivity topActivity;
public static TrBaseActivity getActivity(Class _class){
public static TrBaseActivity getActivity(Class _class) {
return actives.get(_class); return actives.get(_class);
} }
public static void onShowActivity(TrBaseActivity a) { public static void onShowActivity(TrBaseActivity a) {
topActivity = a; topActivity = a;
if(!actives.containsKey(a.getClass())) { if (!actives.containsKey(a.getClass())) {
actives.put(a.getClass(), a); actives.put(a.getClass(), a);
} }
} }
public static void onHideActivity(TrBaseActivity a) { public static void onHideActivity(TrBaseActivity a) {
actives.remove(a.getClass()); actives.remove(a.getClass());
if(a == topActivity) { if (a == topActivity) {
topActivity = null; topActivity = null;
} }
} }
public static void sendMsg(int menu, Object obj) { public static void sendMsg(int menu, Object obj) {
for(TrBaseActivity a : actives.values()) { for (TrBaseActivity a : actives.values()) {
CONS.SENDMESSAGETO( a.handler, menu, obj); CONS.SENDMESSAGETO(a.handler, menu, obj);
} }
}
public static void hideAll() {
try {
for (TrBaseActivity a : actives.values()) {
a.finish();
}
} catch (Exception e) {
e.printStackTrace();
}
} }
} }

View File

@@ -31,7 +31,6 @@ import java.util.Map;
* Http请求的工具类 * Http请求的工具类
* *
* @author suming * @author suming
*
*/ */
public class HttpUtl { public class HttpUtl {
@@ -40,11 +39,12 @@ public class HttpUtl {
public interface CallBack { public interface CallBack {
void onRequestComplete(int cmd, String result, Object orgs); void onRequestComplete(int cmd, String result, Object orgs);
void onRequestError(int cmd, String result, Object orgs); void onRequestError(int cmd, String result, Object orgs);
} }
public static String token; public static String token = null;
/** /**
* 异步的Get请求 * 异步的Get请求
@@ -67,7 +67,9 @@ public class HttpUtl {
} }
} }
}; }
;
}.start(); }.start();
} }
@@ -93,7 +95,9 @@ public class HttpUtl {
callBack.onRequestError(cmd, e.toString(), orgs); callBack.onRequestError(cmd, e.toString(), orgs);
} }
} }
}; }
;
}.start(); }.start();
} }
@@ -128,7 +132,7 @@ public class HttpUtl {
conn.setRequestProperty("connection", "Keep-Alive"); conn.setRequestProperty("connection", "Keep-Alive");
conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
conn.setRequestProperty("charset", "utf-8"); conn.setRequestProperty("charset", "utf-8");
if(token != null) { if (token != null) {
conn.setRequestProperty("X-Auth-Token", token); conn.setRequestProperty("X-Auth-Token", token);
} }
int retCode = conn.getResponseCode(); int retCode = conn.getResponseCode();
@@ -152,8 +156,10 @@ public class HttpUtl {
Log.i("http", baos.toString()); Log.i("http", baos.toString());
} }
return baos.toString(); return baos.toString();
} else { } else if (retCode == 401) {
checkTokenFailed(retCode); checkTokenFailed(retCode);
return "";
} else {
throw new RuntimeException(" responseCode :" + retCode); throw new RuntimeException(" responseCode :" + retCode);
} }
@@ -177,31 +183,29 @@ public class HttpUtl {
} }
static void checkTokenFailed(int code) { static void checkTokenFailed(int code) {
if(code == 401) { if (code == 401) {
UIUtl.toastI("Token 失效"); UIUtl.toastI("Token 失效");
token = null;
if(ActivityMgr.topActivity != null) { ActivityMgr.hideAll();
SipEngine.getInstance().onLine = false; SipEngine.getInstance().onLine = false;
SipEngine.getInstance().isRelogin = true; SipEngine.getInstance().isRelogin = true;
// SipEngine.getInstance().Unregister(); // SipEngine.getInstance().Unregister();
// SipEngine.getInstance().stop(); // SipEngine.getInstance().stop();
Intent intent = new Intent(App.getContext(), LoginActivity.class); Intent intent = new Intent(App.getContext(), LoginActivity.class);
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putBoolean("donotAutoLogin", true); bundle.putBoolean("donotAutoLogin", true);
intent.putExtras(bundle); intent.putExtras(bundle);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
ActivityMgr.topActivity.startActivity(intent); // ActivityMgr.topActivity.startActivity(intent);
} App.getInstance().startActivity(intent);
} }
} }
/** /**
* 向指定 URL 发送POST方法的请求 * 向指定 URL 发送POST方法的请求
* *
* @param url * @param url 发送请求的 URL
* 发送请求的 URL * @param param 请求参数,请求参数应该是 name1=value1&name2=value2 的形式。
* @param param
* 请求参数,请求参数应该是 name1=value1&name2=value2 的形式。
* @return 所代表远程资源的响应结果 * @return 所代表远程资源的响应结果
* @throws Exception * @throws Exception
*/ */
@@ -219,7 +223,7 @@ public class HttpUtl {
conn.setRequestMethod("POST"); conn.setRequestMethod("POST");
conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
conn.setRequestProperty("charset", "utf-8"); conn.setRequestProperty("charset", "utf-8");
if(token != null) { if (token != null) {
conn.setRequestProperty("X-Auth-Token", token); conn.setRequestProperty("X-Auth-Token", token);
} }
conn.setUseCaches(false); conn.setUseCaches(false);
@@ -243,8 +247,8 @@ public class HttpUtl {
while ((line = in.readLine()) != null) { while ((line = in.readLine()) != null) {
result += line; result += line;
} }
if (result .equals("{}")){ if (result.equals("{}")) {
result = conn.getResponseCode()+""; result = conn.getResponseCode() + "";
} }
int retCode = conn.getResponseCode(); int retCode = conn.getResponseCode();
@@ -266,7 +270,7 @@ public class HttpUtl {
ex.printStackTrace(); ex.printStackTrace();
} }
} }
if (result==null&&result.equals("")) { if (result == null && result.equals("")) {
Log.i("http", "result为空"); Log.i("http", "result为空");
} else { } else {
Log.i("http", result); Log.i("http", result);
@@ -301,7 +305,7 @@ public class HttpUtl {
conn.setRequestProperty("connection", "keep-alive"); conn.setRequestProperty("connection", "keep-alive");
conn.setRequestProperty("Charsert", "UTF-8"); conn.setRequestProperty("Charsert", "UTF-8");
conn.setRequestProperty("Content-Type", MULTIPART_FROM_DATA + ";boundary=" + BOUNDARY); conn.setRequestProperty("Content-Type", MULTIPART_FROM_DATA + ";boundary=" + BOUNDARY);
if(token != null) { if (token != null) {
conn.setRequestProperty("X-Auth-Token", token); conn.setRequestProperty("X-Auth-Token", token);
} }
// 首先组拼文本类型的参数 // 首先组拼文本类型的参数