Browse Source

测试版本

Bitliker 9 years ago
parent
commit
d6279f4df6

+ 5 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/BdLocationHelper.java

@@ -26,6 +26,7 @@ public class BdLocationHelper {
     private boolean isLocationUpdate;// 本次程序启动后,位置有没有成功更新一次
     private boolean isLocationUpdate;// 本次程序启动后,位置有没有成功更新一次
     private LocationClient mLocationClient = null;
     private LocationClient mLocationClient = null;
     private int mFaildCount = 0;
     private int mFaildCount = 0;
+    private int resultCode;
     private List<Poi> pois;
     private List<Poi> pois;
 
 
     BdLocationHelper(Context context) {
     BdLocationHelper(Context context) {
@@ -82,6 +83,7 @@ public class BdLocationHelper {
             if (location != null) {
             if (location != null) {
                 resultCode = location.getLocType();
                 resultCode = location.getLocType();
             }
             }
+            BdLocationHelper.this.resultCode=resultCode;
             // 百度定位失败
             // 百度定位失败
             if (resultCode != BDLocation.TypeGpsLocation && resultCode != BDLocation.TypeCacheLocation
             if (resultCode != BDLocation.TypeGpsLocation && resultCode != BDLocation.TypeCacheLocation
                     && resultCode != BDLocation.TypeOffLineLocation && resultCode != BDLocation.TypeNetWorkLocation) {
                     && resultCode != BDLocation.TypeOffLineLocation && resultCode != BDLocation.TypeNetWorkLocation) {
@@ -195,4 +197,7 @@ public class BdLocationHelper {
         void result(boolean isOk);
         void result(boolean isOk);
     }
     }
 
 
+    public int getResultCode() {
+        return resultCode;
+    }
 }
 }

+ 15 - 5
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/crm/VisitReportAddActivity.java

@@ -32,6 +32,7 @@ import com.xzjmyk.pm.activity.ui.erp.view.SingleDialog;
 import com.xzjmyk.pm.activity.util.BaiduMapUtil;
 import com.xzjmyk.pm.activity.util.BaiduMapUtil;
 import com.xzjmyk.pm.activity.util.DateFormatUtil;
 import com.xzjmyk.pm.activity.util.DateFormatUtil;
 import com.xzjmyk.pm.activity.util.StringUtils;
 import com.xzjmyk.pm.activity.util.StringUtils;
+import com.xzjmyk.pm.activity.view.crouton.Crouton;
 import com.xzjmyk.pm.activity.view.wheel.DateTimePicker;
 import com.xzjmyk.pm.activity.view.wheel.DateTimePicker;
 
 
 import java.util.ArrayList;
 import java.util.ArrayList;
@@ -164,12 +165,21 @@ public class VisitReportAddActivity extends BaseActivity implements View.OnClick
     public boolean onOptionsItemSelected(MenuItem item) {
     public boolean onOptionsItemSelected(MenuItem item) {
         switch (item.getItemId()) {
         switch (item.getItemId()) {
             case R.id.btn_save:
             case R.id.btn_save:
-                CodeUtil.getInstance().getCode(ct, "VisitRecord", new CodeUtil.OnCodeLinstener() {
-                    @Override
-                    public void callBack(String code) {
-                        sendHttpResquest(Constants.HTTP_SUCCESS_INIT, code);
+                if (CommonUtil.isNetWorkConnected(ct)) {
+                    String start = tv_date_start.getText().toString().trim();
+                    String end = tv_date_end.getText().toString().trim();
+                    if (!StringUtils.isEmpty(start) && !StringUtils.isEmpty(end) && start.compareTo(end) < 0) {
+                        CodeUtil.getInstance().getCode(ct, "VisitRecord", new CodeUtil.OnCodeLinstener() {
+                            @Override
+                            public void callBack(String code) {
+                                sendHttpResquest(Constants.HTTP_SUCCESS_INIT, code);
+                            }
+                        });
+                    } else {
+                        Crouton.makeText(ct, "开始时间不能小于结束时间");
                     }
                     }
-                });
+                } else
+                    Crouton.makeText(ct, "网络连接错误,请检查网络");
                 break;
                 break;
             case android.R.id.home:
             case android.R.id.home:
                 onBackPressed();
                 onBackPressed();

+ 30 - 10
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/fragment/SigninFragment.java

@@ -1,8 +1,8 @@
 package com.xzjmyk.pm.activity.ui.erp.fragment;
 package com.xzjmyk.pm.activity.ui.erp.fragment;
 
 
-import android.Manifest;
 import android.content.Context;
 import android.content.Context;
 import android.content.Intent;
 import android.content.Intent;
+import android.location.LocationManager;
 import android.os.Bundle;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.Handler;
 import android.os.Message;
 import android.os.Message;
@@ -39,7 +39,6 @@ import com.xzjmyk.pm.activity.ui.erp.util.StringUtils;
 import com.xzjmyk.pm.activity.ui.tool.ThreadUtil;
 import com.xzjmyk.pm.activity.ui.tool.ThreadUtil;
 import com.xzjmyk.pm.activity.util.BaiduMapUtil;
 import com.xzjmyk.pm.activity.util.BaiduMapUtil;
 import com.xzjmyk.pm.activity.util.CalendarUtils;
 import com.xzjmyk.pm.activity.util.CalendarUtils;
-import com.xzjmyk.pm.activity.util.PermissionUtil;
 import com.xzjmyk.pm.activity.util.TimeUtils;
 import com.xzjmyk.pm.activity.util.TimeUtils;
 import com.xzjmyk.pm.activity.view.crouton.Crouton;
 import com.xzjmyk.pm.activity.view.crouton.Crouton;
 import com.xzjmyk.pm.activity.view.wheel.OASigninPicker;
 import com.xzjmyk.pm.activity.view.wheel.OASigninPicker;
@@ -241,8 +240,18 @@ public class SigninFragment extends EasyFragment implements View.OnClickListener
         listener();
         listener();
     }
     }
 
 
+    private boolean isOpenGps() {
+        LocationManager locationManager = (LocationManager) getContext().
+                getSystemService(Context.LOCATION_SERVICE);
+        return locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);
+    }
+
     //获取网络时间
     //获取网络时间
     private void getTimeByNet() {
     private void getTimeByNet() {
+        if (!CommonUtil.isNetWorkConnected(ct)) {
+            Crouton.makeText(ct, "当前网络不可用,请检查网络连接");
+            return;
+        }
         new Thread() {
         new Thread() {
             @Override
             @Override
             public void run() {
             public void run() {
@@ -284,7 +293,7 @@ public class SigninFragment extends EasyFragment implements View.OnClickListener
                 try {
                 try {
                     while (isRunable) {
                     while (isRunable) {
                         locationHelper.requestLocation();
                         locationHelper.requestLocation();
-                        Thread.sleep(10000);
+                        Thread.sleep(15000);
                     }
                     }
                 } catch (InterruptedException e) {
                 } catch (InterruptedException e) {
                     e.printStackTrace();
                     e.printStackTrace();
@@ -295,8 +304,15 @@ public class SigninFragment extends EasyFragment implements View.OnClickListener
         locationHelper.setListener(new BdLocationHelper.OnBaiduResultListener() {
         locationHelper.setListener(new BdLocationHelper.OnBaiduResultListener() {
             @Override
             @Override
             public void result(boolean isOk) {
             public void result(boolean isOk) {
-                if (isOk)
-                    setBaiduLocation();
+                int resultCode = MyApplication.getInstance().getBdLocationHelper().getResultCode();
+                if (isOk) {
+                    if (resultCode != 66)
+                        setBaiduLocation();
+                } else {
+                    if (resultCode == 62) {
+                        Crouton.makeText(ct, "定位失败,请查看是否开启定位权限", 2000);
+                    }
+                }
             }
             }
         });
         });
     }
     }
@@ -308,7 +324,7 @@ public class SigninFragment extends EasyFragment implements View.OnClickListener
         loaction = MyApplication.getInstance().getBdLocationHelper().getName();
         loaction = MyApplication.getInstance().getBdLocationHelper().getName();
         addr = MyApplication.getInstance().getBdLocationHelper().getAddress();
         addr = MyApplication.getInstance().getBdLocationHelper().getAddress();
         unoffice_mm.setText(setDistance());
         unoffice_mm.setText(setDistance());
-//        Crouton.makeText(ct, "longitude=" + longitude + "   latitude=" + latitude + "\n   addr" + addr);
+        Crouton.makeText(ct, "当前位置=" + addr + "距离=" + setDistance(), 2000);
         office_addr.setText(Html.fromHtml("<font color=\'#575757\'>当前位置  " + "</font><font color=\'#000000\'>" + addr + "</font>"));
         office_addr.setText(Html.fromHtml("<font color=\'#575757\'>当前位置  " + "</font><font color=\'#000000\'>" + addr + "</font>"));
     }
     }
 
 
@@ -321,10 +337,14 @@ public class SigninFragment extends EasyFragment implements View.OnClickListener
         office_addr.setText(Html.fromHtml("<font color=\'#575757\'>当前位置  " + "</font><font color=\'#000000\'>" + addr + "</font>"));
         office_addr.setText(Html.fromHtml("<font color=\'#575757\'>当前位置  " + "</font><font color=\'#000000\'>" + addr + "</font>"));
         loadNetData(System.currentTimeMillis());//获取打卡班次信息
         loadNetData(System.currentTimeMillis());//获取打卡班次信息
         //判断是否有定位权限
         //判断是否有定位权限
-        PermissionUtil util = new PermissionUtil(ct);
-        String[] permission = {Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION};
-        if (!util.hasPermissionGranted(permission)) {
-            Crouton.makeText(ct, "定位权限被禁止,请到设置中打开", 3000);
+//        PermissionUtil util = new PermissionUtil(ct);
+//        String[] permission = {Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION};
+//
+//        if (!util.hasPermissionGranted(permission)) {
+//            Crouton.makeText(ct, "定位权限被禁止,请到设置中打开", 3000);
+//        }
+        if (!isOpenGps()) {
+            Crouton.makeText(ct, "为了更好体验,请打开GPS", 3000);
         }
         }
     }
     }