Browse Source

提交内容 新代码上传
提交内容 设备管理和行旅国际的修改上传

Bitliker 8 years ago
parent
commit
b4847b6a7c

+ 3 - 3
WeiChat/version.properties

@@ -1,5 +1,5 @@
-#Wed Mar 21 15:17:22 CST 2018
-debugName=311
+#Fri Mar 23 15:27:00 CST 2018
+debugName=325
 versionName=624
-debugCode=311
+debugCode=325
 versionCode=163

+ 19 - 15
app_modular/appmessages/src/main/java/com/modular/appmessages/activity/MsgThirdWebActivity.java

@@ -11,6 +11,7 @@ import android.webkit.WebChromeClient;
 import android.webkit.WebView;
 
 import com.common.LogUtil;
+import com.common.data.TextUtil;
 import com.core.utils.CommonUtil;
 import com.core.utils.IntentUtils;
 import com.modular.apputils.utils.OpenFilesUtils;
@@ -20,6 +21,8 @@ import com.modular.appmessages.R;
 import com.modular.apputils.network.FileDownloader;
 import com.uas.appworks.OA.erp.activity.CommonDocDetailsActivity;
 
+import org.w3c.dom.Text;
+
 import java.io.File;
 
 /**
@@ -50,11 +53,19 @@ public class MsgThirdWebActivity extends MessageWebActivity {
                 Intent intent = getIntent();
                 if (intent != null) {
                     String title = intent.getStringExtra(IntentUtils.KEY_TITLE);
-                        String caller = intent.getStringExtra("caller");
-                        int keyValue = intent.getIntExtra("keyValue", 0);
-                        LogUtil.i("onJsAlert caller=" + caller);
-                        LogUtil.i("onJsAlert keyValue=" + keyValue);
-                        startActivity(caller, keyValue);
+                    String caller = intent.getStringExtra("caller");
+                    int keyValue = intent.getIntExtra("keyValue", -1);
+                    if (!TextUtils.isEmpty(title) && !TextUtils.isEmpty(caller) && keyValue != -1) {
+                        startActivity(new Intent(ct, CommonDocDetailsActivity.class)
+                                .putExtra("caller", caller)
+                                .putExtra("keyValue", keyValue)
+                                .putExtra("title", title)
+                                .putExtra("device", false)
+                                .putExtra("message", true)
+                                .putExtra("status", "已审批"));
+                    }
+
+
                 }
                 result.cancel();
                 return true;
@@ -69,7 +80,7 @@ public class MsgThirdWebActivity extends MessageWebActivity {
             synCookies(ct, url);
         }
         String downLoadUrl = CommonUtil.getAppBaseUrl(ct) + "common/downloadbyId.action";
-        if (!TextUtils.isEmpty(url)&&url.startsWith(downLoadUrl)) {
+        if (!TextUtils.isEmpty(url) && url.startsWith(downLoadUrl)) {
             requestPermissionByLoadFile(url);
         } else {
             view.loadUrl(url);
@@ -78,7 +89,7 @@ public class MsgThirdWebActivity extends MessageWebActivity {
     }
 
 
-    private void requestPermissionByLoadFile(final String url){
+    private void requestPermissionByLoadFile(final String url) {
         requestPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE, new Runnable() {
             @Override
             public void run() {
@@ -91,6 +102,7 @@ public class MsgThirdWebActivity extends MessageWebActivity {
             }
         });
     }
+
     private void downFile(String downloadUrl) {
         final CustomProgressDialog progressDialog = CustomProgressDialog.createDialog(ct);
         progressDialog.setTitile("正在预览");
@@ -144,12 +156,4 @@ public class MsgThirdWebActivity extends MessageWebActivity {
         fileDownloader.download(0L);
     }
 
-    private void startActivity(String caller, int keyValue) {
-        startActivity(new Intent(ct, CommonDocDetailsActivity.class)
-                .putExtra("caller", caller)
-                .putExtra("keyValue", keyValue)
-                .putExtra("device", false)
-                .putExtra("message", true)
-                .putExtra("status", "已审批"));
-    }
 }

+ 16 - 0
app_modular/apputils/src/main/java/com/modular/apputils/utils/TravelUtils.java

@@ -0,0 +1,16 @@
+package com.modular.apputils.utils;
+
+/**
+ * Created by Bitlike on 2018/3/23.
+ */
+
+public class TravelUtils {
+
+    //TODO 差旅卡号
+    public static String getTraveCode(String master) {
+        switch (master) {
+            default:
+                return master;
+        }
+    }
+}

+ 2 - 1
app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/DeviceCycleCountInfoActivity.java

@@ -292,7 +292,7 @@ public class DeviceCycleCountInfoActivity extends BaseActivity implements View.O
         } else {
             if (JSONUtil.getBoolean(object, "success")) {
                 ToastUtil.showToast(ct, "盘亏成功");
-                loadGridData(page=1);
+                loadGridData(page = 1);
                 loadData(false);
             }
 
@@ -373,6 +373,7 @@ public class DeviceCycleCountInfoActivity extends BaseActivity implements View.O
         kindTv.setText(devkind);
         actionqtyTv.setText(Html.fromHtml("<u>" + actionqty + "</u>"));
         unactionqtyTv.setText(Html.fromHtml("<u>" + unactionqty + "</u>"));
+        LogUtil.i("message=" + message);
     }
 
     private void handleSubmitCycle(String message) throws Exception {

+ 128 - 5
app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/activity/BusinessTravelActivity.java

@@ -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);
+        }
+    }
 }

+ 2 - 1
app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/adapter/BusinessTravelAdapter.java

@@ -22,6 +22,7 @@ import com.core.net.utils.NetUtils;
 import com.core.utils.CommonUtil;
 import com.core.utils.IntentUtils;
 import com.core.utils.ToastUtil;
+import com.modular.apputils.utils.TravelUtils;
 import com.modular.apputils.widget.TravelDirectionView;
 import com.uas.appworks.OA.platform.model.BusinessTravel;
 import com.uas.appworks.R;
@@ -380,7 +381,7 @@ public class BusinessTravelAdapter extends RecyclerView.Adapter<RecyclerView.Vie
         map.put("fpd_id", model.getId());
         map.put("master", CommonUtil.getMaster());
         map.put("baseUrl", CommonUtil.getAppBaseUrl(ct));
-        map.put("emCode", CommonUtil.getEmcode());
+        map.put("emCode",  TravelUtils.getTraveCode(CommonUtil.getMaster()));
         String p = JSONUtil.map2JSON(map);
         turn2Web(p);
     }

+ 1 - 1
app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/model/BusinessTravel.java

@@ -214,7 +214,7 @@ public class BusinessTravel {
     }
 
     public String getRealFee() {
-        return realFee;
+        return TextUtils.isEmpty(realFee) ? "" : (realFee + "元");
     }
 
     public String getExpecteFee() {

BIN
app_modular/appworks/src/main/res/drawable-hdpi/icon_click_menu.png


BIN
app_modular/appworks/src/main/res/drawable-xhdpi/icon_click_menu.png


BIN
app_modular/appworks/src/main/res/drawable-xxhdpi/icon_click_menu.png


+ 7 - 9
app_modular/appworks/src/main/res/layout/item_bus_travel_air.xml

@@ -19,10 +19,8 @@
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_marginLeft="@dimen/padding"
-            android:layout_marginTop="@dimen/padding"
+            android:layout_marginBottom="@dimen/padding"
             android:gravity="center_horizontal"
-            android:paddingBottom="5dp"
-            android:paddingTop="5dp"
             android:text="单程机票:671283"
             android:textColor="@color/white"
             android:textSize="@dimen/text_hine" />
@@ -42,7 +40,7 @@
             android:layout_width="match_parent"
             android:layout_height="@dimen/line"
             android:layout_below="@id/codeTv"
-            android:background="@color/white" />
+            android:background="@color/item_line" />
 
         <LinearLayout
             android:id="@+id/fromLL"
@@ -198,7 +196,7 @@
             android:layout_alignTop="@id/orderTypeTv"
             android:layout_marginRight="@dimen/padding"
             android:text="A30H"
-            android:textColor="@color/indianred"
+            android:textColor="@color/hintColor"
             android:textSize="@dimen/text_main" />
 
         <TextView
@@ -279,7 +277,7 @@
             android:layout_marginRight="@dimen/padding"
             android:layout_marginTop="@dimen/padding"
             android:text="行程"
-            android:textColor="@color/text_hine" />
+            android:textColor="@color/hintColor" />
 
         <TextView
             android:id="@+id/tripTv"
@@ -301,7 +299,7 @@
             android:layout_marginRight="@dimen/padding"
             android:layout_marginTop="@dimen/padding"
             android:text="往返时间:"
-            android:textColor="@color/text_hine" />
+            android:textColor="@color/hintColor" />
 
         <TextView
             android:id="@+id/dateTv"
@@ -323,7 +321,7 @@
             android:layout_marginRight="@dimen/padding"
             android:layout_marginTop="@dimen/padding"
             android:text="席别:"
-            android:textColor="@color/text_hine" />
+            android:textColor="@color/hintColor" />
 
         <TextView
             android:id="@+id/levelTv"
@@ -346,7 +344,7 @@
             android:layout_marginRight="@dimen/padding"
             android:layout_marginTop="@dimen/padding"
             android:text="预计费用:"
-            android:textColor="@color/text_hine" />
+            android:textColor="@color/hintColor" />
 
         <TextView
             android:id="@+id/expecteFeeTv"

+ 3 - 5
app_modular/appworks/src/main/res/layout/item_bus_travel_hotel.xml

@@ -18,11 +18,9 @@
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_marginLeft="@dimen/padding"
-            android:layout_marginTop="@dimen/padding"
             android:gravity="center_horizontal"
-            android:paddingBottom="5dp"
-            android:paddingTop="5dp"
             android:text="住宿"
+            android:layout_marginBottom="@dimen/padding"
             android:textColor="@color/white"
             android:textSize="@dimen/text_hine" />
 
@@ -41,7 +39,7 @@
             android:layout_width="match_parent"
             android:layout_height="@dimen/line"
             android:layout_below="@id/codeTv"
-            android:background="@color/white" />
+            android:background="@color/item_line" />
 
         <TextView
             android:id="@+id/levelTv"
@@ -63,7 +61,7 @@
             android:layout_toRightOf="@id/levelTv"
             android:text="香格里拉酒店"
             android:textColor="@color/white"
-            android:textSize="@dimen/textXL" />
+            android:textSize="@dimen/text_main" />
 
         <TextView
             android:id="@+id/whenLongTv"

+ 26 - 0
app_modular/appworks/src/main/res/layout/pop_click_menu.xml

@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+
+    android:layout_height="200dp">
+
+    <ImageView
+        android:id="@+id/clickImage"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_alignParentRight="true"
+        android:paddingRight="@dimen/padding"
+        android:src="@drawable/icon_click_menu" />
+
+    <TextView
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_alignBottom="@id/clickImage"
+        android:layout_toLeftOf="@id/clickImage"
+        android:gravity="right"
+        android:padding="@dimen/padding"
+        android:text="点击这里预定"
+        android:textColor="#5f95dd"
+        android:textSize="@dimen/textXXL" />
+
+</RelativeLayout>

+ 8 - 0
app_modular/appworks/src/main/res/menu/menu_add_travel.xml

@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto">
+
+    <item android:id="@+id/addTravel"
+        android:title="预定"
+        app:showAsAction="always"/>
+</menu>