|
|
@@ -2,23 +2,36 @@ package com.uas.appworks.OA.platform.activity;
|
|
|
|
|
|
import android.content.Intent;
|
|
|
import android.support.v7.widget.LinearLayoutManager;
|
|
|
-import android.support.v7.widget.RecyclerView;
|
|
|
+import android.view.Gravity;
|
|
|
+import android.view.LayoutInflater;
|
|
|
+import android.view.Menu;
|
|
|
+import android.view.MenuItem;
|
|
|
+import android.view.View;
|
|
|
+import android.widget.PopupWindow;
|
|
|
+import android.widget.TextView;
|
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.common.LogUtil;
|
|
|
import com.common.config.BaseConfig;
|
|
|
+import com.common.data.DateFormatUtil;
|
|
|
import com.common.data.JSONUtil;
|
|
|
import com.common.data.ListUtils;
|
|
|
+import com.common.data.StringUtil;
|
|
|
+import com.common.hmac.Md5Util;
|
|
|
+import com.common.preferences.PreferenceUtils;
|
|
|
+import com.common.system.DisplayUtil;
|
|
|
import com.core.net.utils.NetUtils;
|
|
|
import com.core.utils.CommonUtil;
|
|
|
+import com.core.utils.IntentUtils;
|
|
|
import com.core.utils.ToastUtil;
|
|
|
import com.me.network.app.http.Method;
|
|
|
import com.modular.apputils.activity.BaseNetActivity;
|
|
|
import com.modular.apputils.listener.OnSmartHttpListener;
|
|
|
import com.modular.apputils.network.Parameter;
|
|
|
import com.modular.apputils.network.Tags;
|
|
|
+import com.modular.apputils.utils.TravelUtils;
|
|
|
import com.modular.apputils.widget.EmptyRecyclerView;
|
|
|
import com.modular.apputils.widget.SpaceItemDecoration;
|
|
|
import com.module.recyclerlibrary.ui.refresh.BaseRefreshLayout;
|
|
|
@@ -26,13 +39,18 @@ import com.uas.appworks.OA.platform.adapter.BusinessTravelAdapter;
|
|
|
import com.uas.appworks.OA.platform.model.BusinessTravel;
|
|
|
import com.uas.appworks.R;
|
|
|
|
|
|
+import java.io.UnsupportedEncodingException;
|
|
|
+import java.net.URLEncoder;
|
|
|
import java.util.ArrayList;
|
|
|
+import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
|
|
|
public class BusinessTravelActivity extends BaseNetActivity implements OnSmartHttpListener {
|
|
|
private BaseRefreshLayout mRefreshLayout;
|
|
|
private EmptyRecyclerView mRecyclerView;
|
|
|
private BusinessTravelAdapter mAdapter;
|
|
|
+ private boolean isLeve = true;
|
|
|
|
|
|
@Override
|
|
|
protected int getLayoutId() {
|
|
|
@@ -45,6 +63,20 @@ public class BusinessTravelActivity extends BaseNetActivity implements OnSmartHt
|
|
|
loadData();
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public boolean onCreateOptionsMenu(Menu menu) {
|
|
|
+ getMenuInflater().inflate(R.menu.menu_add_travel, menu);
|
|
|
+ return super.onCreateOptionsMenu(menu);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public boolean onOptionsItemSelected(MenuItem item) {
|
|
|
+ if (R.id.addTravel == item.getItemId()) {
|
|
|
+ reserve();
|
|
|
+
|
|
|
+ }
|
|
|
+ return super.onOptionsItemSelected(item);
|
|
|
+ }
|
|
|
|
|
|
@Override
|
|
|
protected String getBaseUrl() {
|
|
|
@@ -70,10 +102,32 @@ public class BusinessTravelActivity extends BaseNetActivity implements OnSmartHt
|
|
|
}
|
|
|
|
|
|
|
|
|
+ private void showPop() {
|
|
|
+ final PopupWindow window = new PopupWindow(ct);
|
|
|
+ View view = LayoutInflater.from(ct).inflate(R.layout.pop_click_menu, null);
|
|
|
+ window.setContentView(view);
|
|
|
+ window.setBackgroundDrawable(ct.getResources().getDrawable(R.color.transparent));
|
|
|
+ DisplayUtil.backgroundAlpha(ct, 0.4f);
|
|
|
+ window.setTouchable(true);
|
|
|
+ window.setHeight(DisplayUtil.dip2px(ct, 200));
|
|
|
+ window.setWidth(DisplayUtil.getSreechWidth(ct));
|
|
|
+ window.setOutsideTouchable(false);
|
|
|
+ window.setFocusable(true);
|
|
|
+ int actionBarHeight = getSupportActionBar().getHeight() + DisplayUtil.dip2px(ct, 10);
|
|
|
+
|
|
|
+ window.showAtLocation(getWindow().getDecorView(), Gravity.TOP, 0, actionBarHeight);
|
|
|
+ window.setOnDismissListener(new PopupWindow.OnDismissListener() {
|
|
|
+ @Override
|
|
|
+ public void onDismiss() {
|
|
|
+ DisplayUtil.backgroundAlpha(ct, 1f);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
public void loadData() {
|
|
|
- if (!NetUtils.isNetWorkConnected(ct))
|
|
|
- {
|
|
|
- ToastUtil.showToast(ct,R.string.networks_out);
|
|
|
+ if (!NetUtils.isNetWorkConnected(ct)) {
|
|
|
+ ToastUtil.showToast(ct, R.string.networks_out);
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
@@ -109,7 +163,7 @@ public class BusinessTravelActivity extends BaseNetActivity implements OnSmartHt
|
|
|
JSONObject object = JSON.parseObject(message);
|
|
|
JSONArray listdata = JSONUtil.getJSONArray(object, "listdata");
|
|
|
List<BusinessTravel> models = new ArrayList<>();
|
|
|
- String cttpid = JSONUtil.getText(object, "em_cttpid");
|
|
|
+ String cttpid = JSONUtil.getText(object, "em_iccode");
|
|
|
for (int i = 0; i < listdata.size(); i++) {
|
|
|
JSONObject data = listdata.getJSONObject(i);
|
|
|
long startTime = JSONUtil.getLong(data, "FP_PRESTARTDATE");
|
|
|
@@ -130,6 +184,7 @@ public class BusinessTravelActivity extends BaseNetActivity implements OnSmartHt
|
|
|
setAdapter(models);
|
|
|
}
|
|
|
|
|
|
+
|
|
|
private void setAdapter(List<BusinessTravel> models) {
|
|
|
if (mAdapter == null) {
|
|
|
mAdapter = new BusinessTravelAdapter(ct, models);
|
|
|
@@ -139,6 +194,10 @@ public class BusinessTravelActivity extends BaseNetActivity implements OnSmartHt
|
|
|
} else {
|
|
|
mAdapter.setModels(models);
|
|
|
}
|
|
|
+
|
|
|
+ if (ListUtils.isEmpty(models) && isLeve) {
|
|
|
+ showPop();
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@@ -148,4 +207,68 @@ public class BusinessTravelActivity extends BaseNetActivity implements OnSmartHt
|
|
|
loadData();
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+ private void reserve() {
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
+ map.put("traverorderno", "RES56884");
|
|
|
+ map.put("product", "index");
|
|
|
+ map.put("costname", "成本中心");
|
|
|
+ map.put("proname", "所属项目");
|
|
|
+ String from = "";
|
|
|
+ String fromcode = "";
|
|
|
+ String arrive = "";
|
|
|
+ String arrivecode = "";
|
|
|
+
|
|
|
+ Map<String, String> routeMap = new HashMap<>();
|
|
|
+ routeMap.put("from", from);
|
|
|
+ routeMap.put("fromcode", fromcode);
|
|
|
+ routeMap.put("arrive", arrive);
|
|
|
+ routeMap.put("arrivecode", arrivecode);
|
|
|
+ routeMap.put("startdate", DateFormatUtil.long2Str(System.currentTimeMillis(), DateFormatUtil.YMD));
|
|
|
+ routeMap.put("arrivedate", DateFormatUtil.long2Str(System.currentTimeMillis() + 24 * 60 * 60 * 1000, DateFormatUtil.YMD));
|
|
|
+ routeMap.put("isCanModify", "1");
|
|
|
+ map.put("route", routeMap);
|
|
|
+
|
|
|
+ //个人中心
|
|
|
+ Map<String, String> custinfoMap = new HashMap<>();
|
|
|
+ custinfoMap.put("backUrl", CommonUtil.getAppBaseUrl(ct));
|
|
|
+ custinfoMap.put("isNeedPush", "1");
|
|
|
+ custinfoMap.put("cusCode", TravelUtils.getTraveCode(CommonUtil.getMaster()));//TODO 差旅卡号
|
|
|
+ custinfoMap.put("emCode", CommonUtil.getEmcode());
|
|
|
+ custinfoMap.put("outOrderno", String.valueOf(-1));
|
|
|
+ map.put("custinfo", custinfoMap);
|
|
|
+ String p = JSONUtil.map2JSON(map);
|
|
|
+ turn2Web(p);
|
|
|
+ }
|
|
|
+
|
|
|
+ private void turn2Web(String p) {
|
|
|
+ if (NetUtils.isNetWorkConnected(ct)) {
|
|
|
+ String appkey = "y8gd87dsdkencgzk394k7s5c78io35c";
|
|
|
+ String appSceret = "e212e142a5c9e0590eefb7d9f1bc91d7";
|
|
|
+ String baseUrl = "http://124.254.45.234:8082/oa/caslogin/";
|
|
|
+ if (!BaseConfig.isDebug()) {
|
|
|
+ appkey = "fjdsfnvg6523fsgjkff879fidsf";
|
|
|
+ appSceret = "9891ca5330271eba81ec1332e740c210";
|
|
|
+ baseUrl = "http://h5.auvgo.com/";
|
|
|
+ }
|
|
|
+ String username = CommonUtil.getEmcode();
|
|
|
+ String data = appkey + username.toUpperCase() + appSceret;
|
|
|
+ String key = Md5Util.toMD5(appSceret).toUpperCase();
|
|
|
+ String sign = Md5Util.toMD5(key + data);
|
|
|
+ StringBuilder urlBuilder = new StringBuilder(baseUrl);
|
|
|
+ urlBuilder.append(appkey + "/");
|
|
|
+ urlBuilder.append(username + "/");
|
|
|
+ urlBuilder.append(sign);
|
|
|
+ try {
|
|
|
+ urlBuilder.append("?p=" + URLEncoder.encode(p, "UTF-8"));
|
|
|
+ } catch (UnsupportedEncodingException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ LogUtil.i(urlBuilder.toString());
|
|
|
+ IntentUtils.linkCommonWeb(ct, urlBuilder.toString(), "行旅国际", "", "", false, false, false);
|
|
|
+ } else {
|
|
|
+ ToastUtil.showToast(ct, R.string.networks_out);
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|