Browse Source

Merge branch 'draft' of https://gitlab.com/Arisono/SkWeiChat-Baidu into draft

Bitliker 8 years ago
parent
commit
a1e8ccce9c
32 changed files with 786 additions and 174 deletions
  1. 21 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/MyApplication.java
  2. 5 3
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/MainActivity.java
  3. 2 2
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/account/RegisterSelectActivity.java
  4. 1 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/base/BaseActivity.java
  5. 7 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/contanct/ContactsActivity.java
  6. 15 13
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/message/PersonalRegActivity.java
  7. 1 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/SelectCollisionActivity.java
  8. 3 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/WorkActivity.java
  9. 21 4
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/db/dao/ContactsDao.java
  10. 4 13
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/fragment/WorksFragment.java
  11. 37 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/model/QSCModel.java
  12. 7 2
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/net/ViewUtil.java
  13. 55 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/util/UserRoleUtils.java
  14. 4 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/me/MeFragment.java
  15. 6 4
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/me/SettingActivity.java
  16. 4 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/message/MessageFragment.java
  17. 26 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/platform/task/TaskAddErpActivity.java
  18. 179 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/util/QSComShowPpUtils.java
  19. 98 17
      WeiChat/src/main/java/com/xzjmyk/pm/activity/util/QSearchPpwindowUtils.java
  20. 36 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/xmpp/MyActivityManager.java
  21. 56 41
      WeiChat/src/main/res/layout/act_taskerp_add.xml
  22. 55 43
      WeiChat/src/main/res/layout/activity_setting.xml
  23. 32 0
      WeiChat/src/main/res/layout/com_show_menu.xml
  24. 66 0
      WeiChat/src/main/res/layout/com_show_ppitem.xml
  25. 12 10
      WeiChat/src/main/res/layout/fragment_me.xml
  26. 17 3
      WeiChat/src/main/res/layout/judge_qsearch_window.xml
  27. 7 3
      WeiChat/src/main/res/layout/personal_reg_activity.xml
  28. 2 2
      WeiChat/src/main/res/raw/versionconfiguration.properties
  29. 3 3
      app_core/imageload/build.gradle
  30. 3 3
      app_core/network/build.gradle
  31. 0 1
      app_third/libbdupdatesdk/src/main/res/values/bdp_update_strings.xml
  32. 1 1
      settings.gradle

+ 21 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/MyApplication.java

@@ -1,11 +1,13 @@
 package com.xzjmyk.pm.activity;
 
+import android.app.Activity;
 import android.app.Application;
 import android.content.Context;
 import android.content.pm.PackageManager;
 import android.graphics.Bitmap;
 import android.graphics.Bitmap.Config;
 import android.os.Build;
+import android.os.Bundle;
 import android.os.Environment;
 import android.os.Handler;
 import android.os.StrictMode;
@@ -49,6 +51,7 @@ import com.xzjmyk.pm.activity.util.SharedUtil;
 import com.xzjmyk.pm.activity.util.TimeUtils;
 import com.xzjmyk.pm.activity.view.AuthImageDownloader;
 import com.xzjmyk.pm.activity.volley.FastVolley;
+import com.xzjmyk.pm.activity.xmpp.MyActivityManager;
 
 import org.apache.http.cookie.Cookie;
 
@@ -146,7 +149,24 @@ public class MyApplication extends Application {
         } catch (PackageManager.NameNotFoundException e) {
             e.printStackTrace();
         }
-
+        registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks() {
+            @Override
+            public void onActivityCreated(Activity activity, Bundle savedInstanceState) {}
+            @Override
+            public void onActivityStarted(Activity activity) {}
+            @Override
+            public void onActivityResumed(Activity activity) {
+                MyActivityManager.getInstance().setCurrentActivity(activity);
+            }
+            @Override
+            public void onActivityPaused(Activity activity) {}
+            @Override
+            public void onActivityStopped(Activity activity) {}
+            @Override
+            public void onActivitySaveInstanceState(Activity activity, Bundle outState) {}
+            @Override
+            public void onActivityDestroyed(Activity activity) {}
+        });
     }
 
 

+ 5 - 3
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/MainActivity.java

@@ -154,6 +154,7 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
     private ContactFragment mBusinessCircleFragment;
     public static String BAIDU_PUSH = "BAIDUPUSH";
     public static String UU_STEP = "UUSTEP";
+    public static String Q_SEARCH = "Q_SEARCH";
     private boolean mXmppBind;
     private CoreService mCoreService;
     private boolean isPause = true;// 界面是否暂停
@@ -583,6 +584,7 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
         LogUtil.d("OnCreate end:" + DateFormatUtil.getDateTimeStr());
     }
 
+
     private Handler handler = new Handler();
     private Runnable runnable = new MyRunnable();
     private Boolean firstRed = true;
@@ -608,12 +610,12 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
     }
 
     private void hiQuickSearch() {
-        if (CommonUtil.isReleaseVersion()) return;
-        if (MainActivity.class == null) return;
+        int qs =  PreferenceUtils.getInt(MyApplication.getInstance(), MainActivity.Q_SEARCH);
+        if (CommonUtil.isReleaseVersion() || MainActivity.class == null || qs == 1) return;
         handler.postDelayed(new Runnable() {
             @Override
             public void run() {
-                QSearchPpwindowUtils.qSearchWindows(MainActivity.this);
+                 QSearchPpwindowUtils.qSearchWindows(MainActivity.this);
             }
         },4000);
     }

+ 2 - 2
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/account/RegisterSelectActivity.java

@@ -23,7 +23,7 @@ public class RegisterSelectActivity extends BaseActivity {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_register_select);
         ViewUtils.inject(this);
-        getSupportActionBar().setTitle("用户注册");
+        getSupportActionBar().setTitle("用户注册");
         person_btn.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
@@ -37,7 +37,7 @@ public class RegisterSelectActivity extends BaseActivity {
             public void onClick(View v) {
                 ViewUtil.webLinks(mContext,
                         "https://account.ubtob.com/sso/register",
-                        getString(R.string.login_register));
+                        "企业注册");
             }
         });
     }

+ 1 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/base/BaseActivity.java

@@ -105,7 +105,7 @@ public abstract class BaseActivity extends ActionBackActivity {
         }
     }
 
-    private View getRootView() {
+    public View getRootView() {
         return ((ViewGroup) findViewById(android.R.id.content)).getChildAt(0);
     }
 

+ 7 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/contanct/ContactsActivity.java

@@ -215,6 +215,8 @@ public class ContactsActivity extends OABaseActivity implements ContactsAdapter.
                     models.clear();
                     models.addAll(cacheData);
                     adapter.notifyDataSetChanged();
+                    //查询需要优化
+                    getStateByPhones(cacheData);
                     if (models.size()==0){
                         emptyLayout.showEmpty();
                     }
@@ -359,7 +361,7 @@ public class ContactsActivity extends OABaseActivity implements ContactsAdapter.
             @Override
             public void run() {
               final List<ContactsModel> lists=  getLocalContactsByDB();
-               if (!ListUtils.isEmpty(lists)||!isHasNet){
+               if (!ListUtils.isEmpty(lists)&&!isHasNet){
                    LogUtil.d("Test","缓存不为空!");
                    getStateByPhones(lists);
                    OAHttpHelper.getInstance().post(new Runnable() {
@@ -477,6 +479,7 @@ public class ContactsActivity extends OABaseActivity implements ContactsAdapter.
                             if (isfriend.equals("0")){
                                 model.setType(2);//非好友
                                 model.setImid(String.valueOf(_id));
+                               // contactsDao.update(model,String.valueOf(_id));
                             }else if (isfriend.equals("1")){
                                 model.setType(1);//好友
                                 model.setImid(String.valueOf(_id));
@@ -542,6 +545,9 @@ public class ContactsActivity extends OABaseActivity implements ContactsAdapter.
                        
                      
                       ContactsModel tData=  models.get(position);
+                      if (StringUtils.isEmpty(tData.getWhichsys())){
+                          tData.setWhichsys("");
+                      }
                       tData.setType(1);
                       LogUtil.d("Test","tdata:"+JSON.toJSONString(tData));
                       contactsDao.update(tData);

+ 15 - 13
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/message/PersonalRegActivity.java

@@ -41,9 +41,9 @@ import java.util.Map;
 
 public class PersonalRegActivity extends BaseActivity implements View.OnClickListener{
     @ViewInject(R.id.phone_et)
-    private EditText phone_et;
+    private FormEditText phone_et;
     @ViewInject(R.id.password_et)
-    private EditText password_et;
+    private FormEditText password_et;
     @ViewInject(R.id.name_et)
     private FormEditText name_et;
     @ViewInject(R.id.male_et)
@@ -130,26 +130,28 @@ public class PersonalRegActivity extends BaseActivity implements View.OnClickLis
     }
 
     private void registerJudge() {
-        if (StringUtils.isEmpty(phone_et.getText().toString())){
+      /*  if (StringUtils.isEmpty(phone_et.getText().toString())){
             ToastMessage(getString(R.string.input_phone_number));
             return;
-        }
+        }*/
 
-        if (StringUtils.isEmpty(password_et.getText().toString())){
+       /* if (!StringUtils.isEmpty(password_et.getText().toString())){
             ToastMessage(getString(R.string.please_input_password));
             return;
         }
-
-        md5_password = Md5Util.toMD5(password_et.getText().toString());
-        if (!name_et.testValidity()){
-            return;
-        }
-        if (StringUtils.isEmpty(name_et.getText().toString())){
+*/
+       /* if (StringUtils.isEmpty(name_et.getText().toString())){
             ToastMessage(getString(R.string.input_name));
             return;
+        }*/
+        if (phone_et.testValidity() && password_et.testValidity() && name_et.testValidity()){
+            if(!CommonUtil.isNetWorkConnected(this)){
+                ToastMessage(getString(R.string.common_notlinknet));
+            }else {
+                md5_password = Md5Util.toMD5(password_et.getText().toString());
+                doRegiter();
+            }
         }
-        
-        doRegiter();
 
     }
 

+ 1 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/SelectCollisionActivity.java

@@ -107,7 +107,7 @@ public class SelectCollisionActivity extends OABaseActivity implements ISelectAc
         sidebar.setOnTouchingLetterChangedListener(new SideBar.OnTouchingLetterChangedListener() {
             @Override
             public void onTouchingLetterChanged(String s) {
-                if (adapter == null || ListUtils.isEmpty(adapter.getListData())) return;
+                if (adapter == null || ListUtils.isEmpty(adapter.getListData()) || StringUtils.isEmpty(s)) return;
                 // 该字母首次出现的位置
                 if ("↑".equals(s)) {
                     listView.setSelection(0);

+ 3 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/WorkActivity.java

@@ -34,6 +34,7 @@ import com.xzjmyk.pm.activity.ui.erp.presenter.WorkPresenter;
 import com.xzjmyk.pm.activity.ui.erp.presenter.imp.IWorkView;
 import com.xzjmyk.pm.activity.ui.erp.util.ListUtils;
 import com.xzjmyk.pm.activity.ui.erp.util.StringUtils;
+import com.xzjmyk.pm.activity.ui.erp.util.UserRoleUtils;
 import com.xzjmyk.pm.activity.ui.erp.util.WifiReceiverUtil;
 import com.xzjmyk.pm.activity.ui.me.OfficeAddressSettingsActivity;
 import com.xzjmyk.pm.activity.ui.me.SignSeniorSettingActivity;
@@ -144,6 +145,8 @@ public class WorkActivity extends OABaseActivity implements View.OnClickListener
         findViewById(R.id.signin_btn).setOnClickListener(this);
         findViewById(R.id.unoffice_).setOnClickListener(this);
         date_tv.setOnClickListener(this);
+
+        
     }
 
     @Override

+ 21 - 4
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/db/dao/ContactsDao.java

@@ -164,13 +164,30 @@ public class ContactsDao {
     public  void update(ContactsModel model){
         SQLiteDatabase db=  DatabaseManager.getInstance().openDatabase();
         String sql = "update tbl_contacts"
-                + " set tf_type=?"
+                + " set tf_type=? , tf_imId=? "
                 + " where tf_ownerId=? and tf_whichSys=? and tf_imId=?;";
         SQLiteStatement sta = db.compileStatement(sql);
         sta.bindLong(1, model.getType());
-        sta.bindString(2, model.getOwnerId());
-        sta.bindString(3, model.getWhichsys());
-        sta.bindString(4, model.getImid());
+        sta.bindString(2, model.getImid());
+        sta.bindString(3, model.getOwnerId());
+        sta.bindString(4, model.getWhichsys());
+        sta.bindString(5, model.getImid());
+        long row=  sta.executeInsert();
+        DatabaseManager.getInstance().closeDatabase();
+    }
+
+    //针对本地通讯录  model的字段为空
+    public  void update(ContactsModel model,String imId){
+        SQLiteDatabase db=  DatabaseManager.getInstance().openDatabase();
+        String sql = "update tbl_contacts"
+                + " set tf_type=? , tf_imId=? "
+                + " where tf_ownerId=? and tf_whichSys=? and tf_imId=?;";
+        SQLiteStatement sta = db.compileStatement(sql);
+        sta.bindLong(1, model.getType());
+        sta.bindString(2, imId);
+        sta.bindString(3, model.getOwnerId());
+        sta.bindString(4, model.getWhichsys());
+        sta.bindString(5, model.getImid());
         long row=  sta.executeInsert();
         DatabaseManager.getInstance().closeDatabase();
     }

+ 4 - 13
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/fragment/WorksFragment.java

@@ -12,7 +12,7 @@ import android.widget.TextView;
 import com.lidroid.xutils.view.annotation.ViewInject;
 import com.xzjmyk.pm.activity.MyApplication;
 import com.xzjmyk.pm.activity.R;
-import com.xzjmyk.pm.activity.ui.base.XutilsFragment;
+import com.xzjmyk.pm.activity.ui.base.EasyFragment;
 import com.xzjmyk.pm.activity.ui.erp.activity.ErpMenActivity;
 import com.xzjmyk.pm.activity.ui.erp.activity.crm.ClientActivity;
 import com.xzjmyk.pm.activity.ui.erp.activity.oa.OAActivity;
@@ -21,6 +21,7 @@ import com.xzjmyk.pm.activity.ui.erp.net.ViewUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.CommonUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.Constants;
 import com.xzjmyk.pm.activity.ui.erp.util.StringUtils;
+import com.xzjmyk.pm.activity.ui.erp.util.UserRoleUtils;
 import com.xzjmyk.pm.activity.util.ToastUtil;
 import com.xzjmyk.pm.activity.wxapi.ApiPlatform;
 import com.xzjmyk.pm.activity.wxapi.ApiUtils;
@@ -29,7 +30,7 @@ import com.xzjmyk.pm.activity.wxapi.ApiUtils;
  * @desc:工作
  * @author:Administrator on 2016/1/30 16:15
  */
-public class WorksFragment extends XutilsFragment implements View.OnClickListener {
+public class WorksFragment extends EasyFragment implements View.OnClickListener {
     private static final String HASHCODE = "WorksFragment";
     private static final String TIME_MILL = "TIMEMILL";
     private String TAG = "WorksFragment";
@@ -98,22 +99,12 @@ public class WorksFragment extends XutilsFragment implements View.OnClickListene
             tv_business_num.setVisibility(View.GONE);
             tv_desc_business.setVisibility(View.GONE);
             iv_business_desc.setVisibility(View.GONE);
-          
         }
-        
- 
         show_new_function_ll.setOnClickListener(this);
-      //  int new_function_notice = PreferenceUtils.getInt(MyApplication.getInstance(), MainActivity.NEW_FUNCTION_NOTICE);
-//        if (new_function_notice == 1) {
-//            show_new_function_ll.setVisibility(View.INVISIBLE);
-//        } else {
-//            //TODO 发布版本先隐藏
-//            show_new_function_ll.setVisibility(View.INVISIBLE);
-//        }
-
         if (platform){
             my_client_rl.setVisibility(View.GONE);
         }
+        UserRoleUtils.checkUserRole(this,getmRootView());
     }
 
     @Override

+ 37 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/model/QSCModel.java

@@ -0,0 +1,37 @@
+package com.xzjmyk.pm.activity.ui.erp.model;
+
+/**
+ * Created by FANGlh on 2017/8/7.
+ * function:
+ */
+
+public class QSCModel  {
+
+    String key1;
+    String key2;
+    String key3;
+
+    public String getKey1() {
+        return key1;
+    }
+
+    public void setKey1(String key1) {
+        this.key1 = key1;
+    }
+
+    public String getKey2() {
+        return key2;
+    }
+
+    public void setKey2(String key2) {
+        this.key2 = key2;
+    }
+
+    public String getKey3() {
+        return key3;
+    }
+
+    public void setKey3(String key3) {
+        this.key3 = key3;
+    }
+}

+ 7 - 2
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/net/ViewUtil.java

@@ -711,7 +711,7 @@ public class ViewUtil {
      */
     private static void showDialogCompany(String json, String phone, String password) {
         List<LoginEntity> logMsg = JSON.parseArray(json, LoginEntity.class);
-        erpEntities = new ArrayList<LoginEntity>();
+        erpEntities = new ArrayList<>();
         LoginEntity logB2b = null;
         if (logMsg != null && !logMsg.isEmpty()) {
             for (int i = 0; i < logMsg.size(); i++) {
@@ -752,13 +752,15 @@ public class ViewUtil {
                         //选择
                         showDialogB2B(phone, password, sModel);
                     } else {
-                        //默认
+                        //个人用户
+                        
                         CommonUtil.setSharedPreferences(MyApplication.getInstance().getApplicationContext(), "spaceId", String.valueOf(sModel.get(0).getId()));
                         CommonUtil.setSharedPreferences(MyApplication.getInstance().getApplicationContext(), "companyName", String.valueOf(sModel.get(0).getName()));
                         CommonUtil.setSharedPreferences(MyApplication.getInstance().getApplicationContext(), "companyEnUu", String.valueOf(sModel.get(0).getEnuu()));
                         LoginB2BTask(phone, password, sModel.get(0).getId());//登录B2B
                     }
                 }else{
+                    CommonUtil.setSharedPreferences(MyApplication.getInstance().getApplicationContext(), "userRole", "1");
                     if (ct!=null) {
                         ct.startActivity(new Intent(ct, MainActivity.class));
                     }
@@ -1060,5 +1062,8 @@ public class ViewUtil {
         CommonUtil.clearSharedPreferences(ct, "b2b_uu");
         CommonUtil.clearSharedPreferences(ct, "Master_ch");
         CommonUtil.clearSharedPreferences(ct, "erp_emname");
+        CommonUtil.clearSharedPreferences(ct, "userRole");
+        
+        
     }
 }

+ 55 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/util/UserRoleUtils.java

@@ -0,0 +1,55 @@
+package com.xzjmyk.pm.activity.ui.erp.util;
+
+import android.view.View;
+
+import com.xzjmyk.pm.activity.MyApplication;
+import com.xzjmyk.pm.activity.R;
+import com.xzjmyk.pm.activity.ui.erp.fragment.WorksFragment;
+import com.xzjmyk.pm.activity.ui.me.MeFragment;
+import com.xzjmyk.pm.activity.ui.me.SettingActivity;
+import com.xzjmyk.pm.activity.ui.message.MessageFragment;
+
+/**
+ * Created by Arison on 2017/8/7.
+ */
+
+public class UserRoleUtils {
+
+    public static void checkUserRole(Object fragment, View view) {
+        String userRole= CommonUtil.getSharedPreferences(MyApplication.getInstance(),"userRole");
+        try {
+            if (!StringUtils.isEmpty(userRole)){
+                if (userRole.equals("1")){//个人用户
+                    if (fragment instanceof MessageFragment){
+                        view.findViewById(R.id.schedule_rl).setVisibility(View.GONE);//审批流
+                        view.findViewById(R.id.waitting_work_rl).setVisibility(View.GONE);//待办工作
+                        view.findViewById(R.id.subscribe_rl).setVisibility(View.GONE);//我的订阅
+                    }
+                    if (fragment instanceof WorksFragment){
+                        view.findViewById(R.id.rl_uas_sys).setVisibility(View.GONE);
+                        view.findViewById(R.id.my_client_rl).setVisibility(View.GONE);
+                        view.findViewById(R.id.setting_rl).setVisibility(View.GONE);
+                    }
+                    if (fragment instanceof MeFragment){
+                        view.findViewById(R.id.rl_company_change).setVisibility(View.GONE);
+                        view.findViewById(R.id.rl_master_change).setVisibility(View.GONE);
+                    }
+                    if (fragment instanceof SettingActivity){
+                        view.findViewById(R.id.sign_in_rl).setVisibility(View.GONE);
+                        view.findViewById(R.id.sign_out_rl).setVisibility(View.GONE);
+                    }
+                }
+                if (userRole.equals("2")){//uas用户
+    
+                }
+                if(userRole.equals("3")){//平台用户
+    
+                }
+            }else{
+    
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
+}

+ 4 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/me/MeFragment.java

@@ -45,6 +45,7 @@ import com.xzjmyk.pm.activity.ui.erp.util.FlexJsonUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.JsonValidator;
 import com.xzjmyk.pm.activity.ui.erp.util.LogUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.StringUtils;
+import com.xzjmyk.pm.activity.ui.erp.util.UserRoleUtils;
 import com.xzjmyk.pm.activity.ui.erp.view.MasterDialog;
 import com.xzjmyk.pm.activity.ui.tool.SingleImagePreviewActivity;
 import com.xzjmyk.pm.activity.util.PermissionUtil;
@@ -253,7 +254,7 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
     private void initView() {
         ct = getActivity();
         findViewById(R.id.my_data_rl).setOnClickListener(this);
-        findViewById(my_friend_rl).setOnClickListener(this);
+        findViewById(R.id.my_friend_rl).setOnClickListener(this);
         findViewById(R.id.my_space_rl).setOnClickListener(this);
         findViewById(R.id.local_video_rl).setOnClickListener(this);
         findViewById(R.id.setting_rl).setOnClickListener(this);
@@ -330,6 +331,8 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
         CommonUtil.clearSharedPreferences(ct, "seting");
         CommonUtil.clearSharedPreferences(ct, "seting_1");
         doHITask(); // TODO 测试按钮
+
+        UserRoleUtils.checkUserRole(this,getmRootView());
     }
 
     private void doHITask() {

+ 6 - 4
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/me/SettingActivity.java

@@ -41,7 +41,7 @@ import com.xzjmyk.pm.activity.db.dao.VideoFileDao;
 import com.xzjmyk.pm.activity.helper.LoginHelper;
 import com.xzjmyk.pm.activity.sp.UserSp;
 import com.xzjmyk.pm.activity.ui.MainActivity;
-import com.xzjmyk.pm.activity.ui.base.ActionBackActivity;
+import com.xzjmyk.pm.activity.ui.base.BaseActivity;
 import com.xzjmyk.pm.activity.ui.erp.activity.me.FeedbackActivity;
 import com.xzjmyk.pm.activity.ui.erp.activity.oa.FlightsActivity;
 import com.xzjmyk.pm.activity.ui.erp.activity.oa.MissionSetActivity;
@@ -52,6 +52,7 @@ import com.xzjmyk.pm.activity.ui.erp.entity.InAndExitTimeEntity;
 import com.xzjmyk.pm.activity.ui.erp.net.ViewUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.CommonUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.Constants;
+import com.xzjmyk.pm.activity.ui.erp.util.UserRoleUtils;
 import com.xzjmyk.pm.activity.ui.erp.view.SwitchView;
 import com.xzjmyk.pm.activity.ui.tool.WebViewActivity;
 import com.xzjmyk.pm.activity.util.DisplayUtil;
@@ -70,7 +71,7 @@ import java.io.File;
 /**
  * 设置
  */
-public class SettingActivity extends ActionBackActivity implements View.OnClickListener {
+public class SettingActivity extends BaseActivity implements View.OnClickListener {
 
     private Button mExitBtn;
     private TextView mCacheTv;
@@ -103,7 +104,7 @@ public class SettingActivity extends ActionBackActivity implements View.OnClickL
 
     @ViewInject(R.id.tv_help_new)
     private TextView tv_help_new;
-  
+
 
     @ViewInject(R.id.language_us_rl)
     private RelativeLayout language_us_rl;
@@ -271,6 +272,7 @@ public class SettingActivity extends ActionBackActivity implements View.OnClickL
         } else {
             language_us_rl.setVisibility(View.VISIBLE);
         }
+        UserRoleUtils.checkUserRole(this,getRootView());
     }
 
     private boolean isServiceRunning(String servicename) { // 判断某个服务是否已经运行
@@ -374,7 +376,7 @@ public class SettingActivity extends ActionBackActivity implements View.OnClickL
             break;
             case R.id.about_us_rl:// 关于我们
                 startActivity(new Intent(mContext, AboutActivity.class));
-              
+
                 break;
             case R.id.share_rl:
                 share();

+ 4 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/message/MessageFragment.java

@@ -37,6 +37,7 @@ import com.xzjmyk.pm.activity.ui.erp.util.Constants;
 import com.xzjmyk.pm.activity.ui.erp.util.ListUtils;
 import com.xzjmyk.pm.activity.ui.erp.util.LogUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.StringUtils;
+import com.xzjmyk.pm.activity.ui.erp.util.UserRoleUtils;
 import com.xzjmyk.pm.activity.ui.erp.view.VoiceSearchView;
 import com.xzjmyk.pm.activity.ui.platform.task.TaskB2BActivity;
 import com.xzjmyk.pm.activity.util.DateFormatUtil;
@@ -229,9 +230,12 @@ public class MessageFragment extends EasyFragment implements IMessageView,   Vie
             subscribe_rl.setVisibility(View.VISIBLE);
 //            news_notice_rl.setVisibility(View.GONE);
         }
+        UserRoleUtils.checkUserRole(this,view);
         return view;
     }
 
+  
+
     private void showPopupWindow() {
         if (setWindow == null) initPopupWindow();
         setWindow.showAtLocation(mContext.getWindow().getDecorView().

+ 26 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/platform/task/TaskAddErpActivity.java

@@ -15,11 +15,15 @@ import android.widget.TextView;
 import android.widget.Toast;
 
 import com.alibaba.fastjson.JSON;
+import com.iflytek.cloud.RecognizerResult;
+import com.iflytek.cloud.SpeechError;
+import com.iflytek.cloud.ui.RecognizerDialogListener;
 import com.lidroid.xutils.ViewUtils;
 import com.lidroid.xutils.view.annotation.ViewInject;
 import com.xzjmyk.pm.activity.AppConstant;
 import com.xzjmyk.pm.activity.MyApplication;
 import com.xzjmyk.pm.activity.R;
+import com.xzjmyk.pm.activity.audio.voicerecognition.JsonParser;
 import com.xzjmyk.pm.activity.bean.oa.SelectEmUser;
 import com.xzjmyk.pm.activity.ui.base.BaseActivity;
 import com.xzjmyk.pm.activity.ui.erp.activity.form.SelectCalendarActivity;
@@ -31,6 +35,7 @@ import com.xzjmyk.pm.activity.ui.erp.util.ListUtils;
 import com.xzjmyk.pm.activity.ui.erp.util.OACheckUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.StringUtils;
 import com.xzjmyk.pm.activity.ui.erp.util.oa.OAConfig;
+import com.xzjmyk.pm.activity.ui.erp.util.oa.RecognizerDialogUtil;
 import com.xzjmyk.pm.activity.util.TimeUtils;
 import com.xzjmyk.pm.activity.view.TagGroup;
 import com.xzjmyk.pm.activity.view.wheel.DateTimePicker;
@@ -45,7 +50,7 @@ import java.util.Map;
  * Created by FANGlh on 2017/3/30.
  * function:erp添加任务界面同步于b2b任务添加界面
  */
-public class TaskAddErpActivity extends BaseActivity implements View.OnClickListener {
+public class TaskAddErpActivity extends BaseActivity implements View.OnClickListener,RecognizerDialogListener {
     private static final int TASK_ADD_ERP = 0x330;
     @ViewInject(R.id.et_title)
     private EditText et_title;
@@ -59,6 +64,8 @@ public class TaskAddErpActivity extends BaseActivity implements View.OnClickList
     private TextView et_startime;
     @ViewInject(R.id.et_endtime)
     private TextView et_endtime;
+    @ViewInject(R.id.voice_search_iv)
+    private ImageView voice_search_iv;
 
     private String[] tagValues;
     private int save = 0;
@@ -108,6 +115,13 @@ public class TaskAddErpActivity extends BaseActivity implements View.OnClickList
         String current_time = TimeUtils.f_long_2_str(System.currentTimeMillis());
         et_startime.setText(current_time);
         et_endtime.setText(current_time);
+
+        voice_search_iv.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                RecognizerDialogUtil.showRecognizerDialog(ct,TaskAddErpActivity.this);
+            }
+        });
     }
 
     @Override
@@ -341,4 +355,15 @@ public class TaskAddErpActivity extends BaseActivity implements View.OnClickList
             }
         }
     };
+
+    @Override
+    public void onResult(RecognizerResult recognizerResult, boolean b) {
+        String text = JsonParser.parseIatResult(recognizerResult.getResultString());
+        et_task_detail.setText(et_task_detail.getText().toString() + CommonUtil.getPlaintext(text));
+    }
+
+    @Override
+    public void onError(SpeechError speechError) {
+
+    }
 }

+ 179 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/util/QSComShowPpUtils.java

@@ -0,0 +1,179 @@
+package com.xzjmyk.pm.activity.util;
+
+import android.content.Context;
+import android.content.Intent;
+import android.os.Bundle;
+import android.util.DisplayMetrics;
+import android.util.Log;
+import android.view.Gravity;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.AdapterView;
+import android.widget.BaseAdapter;
+import android.widget.PopupWindow;
+import android.widget.TextView;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONException;
+import com.alibaba.fastjson.JSONObject;
+import com.xzjmyk.pm.activity.MyApplication;
+import com.xzjmyk.pm.activity.R;
+import com.xzjmyk.pm.activity.ui.erp.activity.secretary.BookingDetailActivity;
+import com.xzjmyk.pm.activity.ui.erp.model.QSCModel;
+import com.xzjmyk.pm.activity.ui.erp.model.book.BookingModel;
+import com.xzjmyk.pm.activity.ui.erp.util.ListUtils;
+import com.xzjmyk.pm.activity.ui.erp.util.LogUtil;
+import com.xzjmyk.pm.activity.view.MyListView;
+import com.xzjmyk.pm.activity.xmpp.MyActivityManager;
+
+import java.util.ArrayList;
+
+/**
+ * Created by FANGlh on 2017/8/7.
+ * function:
+ */
+
+public class QSComShowPpUtils {
+    public QSComShowPpUtils() {
+    }
+    public static void qSComShowPp(final int code, ArrayList<QSCModel> qscModelsList, final String realList){
+        View contentView = LayoutInflater.from(MyActivityManager.getCurrentActivity()).inflate(R.layout.com_show_menu, null);
+        DisplayMetrics dm =MyActivityManager.getCurrentActivity().getResources().getDisplayMetrics();
+        int w_screen = dm.widthPixels;
+        int h_screen = dm.heightPixels;
+        w_screen = DisplayUtil.dip2px(MyActivityManager.getCurrentActivity(), 350);
+        h_screen = DisplayUtil.dip2px(MyActivityManager.getCurrentActivity(), 400);
+        final PopupWindow popupWindow = new PopupWindow(contentView, w_screen, h_screen, true);
+        popupWindow.setTouchable(true);
+        popupWindow.setOutsideTouchable(false);
+        // 如果不设置PopupWindow的背景,无论是点击外部区域还是Back键都无法dismiss弹框
+        popupWindow.setBackgroundDrawable( MyActivityManager.getCurrentActivity().getResources().getDrawable(R.drawable.pop_round_bg));
+        // 设置好参数之后再show
+        popupWindow.showAtLocation(contentView, Gravity.CENTER, 0, 0);
+        QSearchPpwindowUtils.setbg(MyActivityManager.getCurrentActivity(),popupWindow,0.4f);
+        TextView title_tv = (TextView) contentView.findViewById(R.id.title);
+        initTitle(code,title_tv);
+
+        MyListView mlist = (MyListView) contentView.findViewById(R.id.qs_common_mlist);
+
+        mlist.setOnItemClickListener(new AdapterView.OnItemClickListener() {
+            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
+//                enterItemJudge(code,position,realList,view);
+                popupWindow.dismiss();
+            }
+        });
+        LogUtil.prinlnLongMsg("qscModelsList1",JSON.toJSONString(qscModelsList));
+        Log.d("CurrentActivity()",MyActivityManager.getCurrentActivity()+"null");
+
+        ComShowAdapter mAdapter = new ComShowAdapter(MyApplication.getInstance());
+        mAdapter.setModels(qscModelsList);
+        mlist.setAdapter(mAdapter);
+    }
+
+    private static void initTitle(int code, TextView title_tv) {
+        String title = "";
+        switch (code){
+            case 0x01:
+                title = "我的预约";
+                break;
+
+            default:
+        }
+        title_tv.setText(title+"");
+    }
+
+    private static void enterItemJudge(int code, int position, String realList, View view) {
+        switch (code){
+            case 0x01:
+                try {
+                    JSONArray array = JSON.parseArray(realList);
+                    JSONObject object = array.getJSONObject(position);
+                    BookingModel model = new BookingModel();
+                    model.setAb_address(object.getString("ab_address"));
+                    model.setAb_bman(object.getString("ab_bman"));
+                    model.setAb_bmanid(object.getString("ab_bmanid"));
+                    model.setAb_confirmstatus(object.getString("ab_confirmstatus"));
+                    model.setAb_content(object.getString("ab_content"));
+                    model.setAb_endtime(object.getString("ab_endtime"));
+                    model.setAb_id(object.getString("ab_id"));
+                    model.setAb_latitude(object.getString("ab_latitude"));
+                    model.setAb_longitude(object.getString("ab_longitude"));
+                    model.setAb_recorddate(object.getString("ab_recorddate"));
+                    model.setAb_recordid(object.getString("ab_recordid"));
+                    model.setAb_recordman(object.getString("ab_recordman"));
+                    model.setAb_sharestatus(object.getString("ab_sharestatus"));
+                    model.setAb_starttime(object.getString("ab_starttime"));
+                    model.setAb_type(object.getString("ab_type"));
+                    Bundle bundle = new Bundle();
+                    bundle.putParcelable("model", model);
+                    bundle.putBoolean("isShared", true);
+                    MyActivityManager.getCurrentActivity().startActivity(
+                            new Intent(MyActivityManager.getCurrentActivity(), BookingDetailActivity.class)
+                            .putExtras(bundle)
+                    );
+                }catch (JSONException e){
+                    e.printStackTrace();
+                }catch (Exception e) {
+                    e.printStackTrace();
+                }
+                break;
+            case 0x02:
+                break;
+                default:
+        }
+    }
+
+    private static class ComShowAdapter extends BaseAdapter{
+        private ArrayList<QSCModel> models;
+        private Context mContext;
+        public ComShowAdapter(Context mContext){
+            this.mContext = mContext;
+        }
+        public ArrayList<QSCModel> getModels() {
+            return models;
+        }
+        public void setModels(ArrayList<QSCModel> models) {
+            this.models = models;
+            LogUtil.prinlnLongMsg("qscModelsList2",JSON.toJSONString(models)+"null?");
+        }
+        @Override
+        public int getCount() {
+            return ListUtils.isEmpty(getModels()) ? 0 : getModels().size();
+        }
+        @Override
+        public Object getItem(int position) {
+            return models.get(position);
+        }
+        @Override
+        public long getItemId(int position) {
+            return position;
+        }
+
+        @Override
+        public View getView(int position, View convertView, ViewGroup parent) {
+            QsViewHolder viewHolder = null;
+            if (convertView == null){
+                viewHolder = new QsViewHolder();
+                convertView = View.inflate(mContext,R.layout.com_show_ppitem,null);
+                viewHolder.key1 = (TextView) convertView.findViewById(R.id.key1Tv);
+                viewHolder.key2 = (TextView) convertView.findViewById(R.id.key2Tv);
+                viewHolder.key3 = (TextView) convertView.findViewById(R.id.key3Tv);
+                convertView.setTag(viewHolder);
+            }else {
+                viewHolder = (QsViewHolder) convertView.getTag();
+            }
+
+            viewHolder.key1.setText(getModels().get(position).getKey1()+"");
+            viewHolder.key2.setText(getModels().get(position).getKey2()+"");
+            viewHolder.key3.setText(getModels().get(position).getKey3()+"");
+            return convertView;
+        }
+        class QsViewHolder {
+            TextView key1;
+            TextView key2;
+            TextView key3;
+        }
+    }
+}

+ 98 - 17
WeiChat/src/main/java/com/xzjmyk/pm/activity/util/QSearchPpwindowUtils.java

@@ -13,21 +13,32 @@ import android.widget.PopupWindow;
 import android.widget.Toast;
 
 import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import com.iflytek.cloud.RecognizerResult;
 import com.iflytek.cloud.SpeechError;
 import com.iflytek.cloud.ui.RecognizerDialogListener;
 import com.xzjmyk.pm.activity.MyApplication;
 import com.xzjmyk.pm.activity.R;
 import com.xzjmyk.pm.activity.audio.voicerecognition.JsonParser;
+import com.xzjmyk.pm.activity.ui.MainActivity;
+import com.xzjmyk.pm.activity.ui.erp.model.QSCModel;
+import com.xzjmyk.pm.activity.ui.erp.model.book.BookingModel;
 import com.xzjmyk.pm.activity.ui.erp.net.ViewUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.CommonUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.Constants;
 import com.xzjmyk.pm.activity.ui.erp.util.JsonValidator;
+import com.xzjmyk.pm.activity.ui.erp.util.LogUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.oa.RecognizerDialogUtil;
+import com.xzjmyk.pm.activity.xmpp.MyActivityManager;
 
+import java.util.ArrayList;
+import java.util.Date;
 import java.util.HashMap;
+import java.util.HashSet;
 import java.util.LinkedHashMap;
 import java.util.Map;
+import java.util.Set;
 
 /**
  * Created by FANGlh on 2017/8/4.
@@ -35,7 +46,6 @@ import java.util.Map;
  */
 
 public class QSearchPpwindowUtils{
-
     public QSearchPpwindowUtils() {
     }
 
@@ -46,7 +56,7 @@ public class QSearchPpwindowUtils{
         int w_screen = dm.widthPixels;
         int h_screen = dm.heightPixels;
         w_screen = DisplayUtil.dip2px(activity, 250);
-        h_screen = DisplayUtil.dip2px(activity, 100);
+        h_screen = DisplayUtil.dip2px(activity, 150);
         final PopupWindow  popupWindow = new PopupWindow(contentView, w_screen, h_screen, true);
         popupWindow.setTouchable(true);
         popupWindow.setOutsideTouchable(false);
@@ -55,10 +65,18 @@ public class QSearchPpwindowUtils{
         // 设置好参数之后再show
         popupWindow.showAtLocation(contentView, Gravity.CENTER, 0, 0);
         setbg(activity,popupWindow,0.4f);
+        contentView.findViewById(R.id.next_tv).setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                popupWindow.dismiss();  //下次进入再说
+                isqSearch[0] = false;
+            }
+        });
         contentView.findViewById(R.id.no_tv).setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
-                popupWindow.dismiss();  //不进行快速搜索
+                PreferenceUtils.putInt(MainActivity.Q_SEARCH, 1);
+                popupWindow.dismiss();  //不再提示
                 isqSearch[0] = false;
             }
         });
@@ -75,31 +93,34 @@ public class QSearchPpwindowUtils{
                             }
                         }
                         @Override
-                        public void onError(SpeechError speechError) {}
+                        public void onError(SpeechError speechError) {
+                        }
                     });
+//                    handlerQSearch(activity,"预约你");
                     popupWindow.dismiss();
                 }
             }
         },6000);
     }
 
-    private static void handlerQSearch(Activity activity,String text) {
-        Toast.makeText(activity,text,Toast.LENGTH_LONG).show();
+    private static void handlerQSearch(Activity activity, String text) {
         Log.i("handlerQSearch",text+"");
+        String url=null;
+        Map<String,Object> params = new HashMap<>();
 
         if (text.contains("预约")){
-            String url =   "common/attach/change.action";
-            Map<String,Object> params = new HashMap<>();
-            params.put("table","FeePlease");
-            params.put("update","fb_attach='"+""+"'");
-            params.put("condition","fp_id = ");
-            params.put("type","删除附件");
-
-            CommonHttp(activity,url,params);
+            url =   Constants.IM_BASE_URL + "user/appBookingList";
+            params.put("token", MyApplication.getInstance().mAccessToken);
+            params.put("userid", MyApplication.getInstance().mLoginUser.getUserId());
+            params.put("telephone",MyApplication.getInstance().mLoginUser.getTelephone());
+            params.put("yearmonth", DateFormatUtil.getStrDate4Date(new Date(System.currentTimeMillis()), "yyyyMM"));
+        }else {
+            Toast.makeText(MyActivityManager.getCurrentActivity(),"导航"+text+"功能未实现",Toast.LENGTH_LONG).show();
         }
+        CommonHttp(activity,url,params);
+
     }
-    private static void CommonHttp(Activity activity, String url, Map<String, Object> params) {
-        String comurl = com.xzjmyk.pm.activity.ui.erp.util.Constants.getAppBaseUrl(activity) + url;
+    private static void CommonHttp(Activity activity, String comurl, Map<String, Object> params) {
         LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
         headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(activity, "sessionId"));
         ViewUtil.httpSendRequest(activity, comurl, params, cHandler, headers, 0x01, null, null, "get");
@@ -115,6 +136,8 @@ public class QSearchPpwindowUtils{
                 case 0x01:
                     if (!StringUtils.isEmpty(result)){
                         Log.i("0x01result", result);
+//                        QSearchDatasUtils.handleBookDatas(result);
+                        handleBookDatas(0x01,result);
                     }
                     break;
                 case 0x02:
@@ -139,10 +162,68 @@ public class QSearchPpwindowUtils{
             }
         }
     };
+
+    private static void handleBookDatas(int handleCode, String result) {
+        try {
+            final ArrayList<BookingModel> BookingModelList = new ArrayList<>();
+            final ArrayList<QSCModel>  qscModelsList = new ArrayList<>();
+            if (JSON.parseObject(result).getString("resultMsg") != null) {
+                return;
+            }
+            JSONArray jsonArray = JSON.parseArray(JSON.parseObject(result).getString("bookinglist"));
+            if (jsonArray != null) {
+                Set<Integer> tags = new HashSet<>();
+                for (int i = 0; i < jsonArray.size(); i++) {
+                    JSONObject object = jsonArray.getJSONObject(i);
+                    BookingModel model = new BookingModel();
+                    QSCModel qscModel = new QSCModel();
+                    model.setAb_address(object.getString("ab_address"));
+                    model.setAb_bman(object.getString("ab_bman"));
+                    model.setAb_bmanid(object.getString("ab_bmanid"));
+                    model.setAb_confirmstatus(object.getString("ab_confirmstatus"));
+                    model.setAb_content(object.getString("ab_content"));
+                    model.setAb_endtime(object.getString("ab_endtime"));
+                    model.setAb_id(object.getString("ab_id"));
+                    model.setAb_latitude(object.getString("ab_latitude"));
+                    model.setAb_longitude(object.getString("ab_longitude"));
+                    model.setAb_recorddate(object.getString("ab_recorddate"));
+                    model.setAb_recordid(object.getString("ab_recordid"));
+                    model.setAb_recordman(object.getString("ab_recordman"));
+                    model.setAb_sharestatus(object.getString("ab_sharestatus"));
+                    model.setAb_starttime(object.getString("ab_starttime"));
+                    model.setAb_type(object.getString("ab_type"));
+                    tags.add(Integer.valueOf(model.getAb_starttime().substring(8, 10)));
+
+                    qscModel.setKey1(object.getString("ab_recordman"));
+                    qscModel.setKey2(object.getString("ab_starttime"));
+                    qscModel.setKey3(object.getString("ab_content"));
+//                    if (model.getAb_starttime().contains(DateFormatUtil.getStrDate4Date(new Date(System.currentTimeMillis()), "yyyy-MM-dd"))) {
+                        BookingModelList.add(model);
+                        qscModelsList.add(qscModel);
+//                    }
+
+                    if (i == jsonArray.size() - 1){
+                        LogUtil.prinlnLongMsg("qscModelsList",JSON.toJSONString(qscModelsList));
+                        LogUtil.prinlnLongMsg("BookingModelList",JSON.toJSONString(BookingModelList));
+                        QSComShowPpUtils.qSComShowPp(0x01,qscModelsList,BookingModelList.toString());
+
+                    }
+
+                }
+            }
+
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+
+    }
+
+
+
     public static void ToastMessage(String message) {
         ViewUtil.ToastMessage(MyApplication.getInstance(), message);
     }
-    private  static void setbg(final Activity activity , PopupWindow popupWindow, float alpha) {
+    public  static void setbg(final Activity activity , PopupWindow popupWindow, float alpha) {
         setBackgroundAlpha(activity, alpha);
         if (popupWindow == null) return;
         popupWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {

+ 36 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/xmpp/MyActivityManager.java

@@ -0,0 +1,36 @@
+package com.xzjmyk.pm.activity.xmpp;
+
+import android.app.Activity;
+
+import java.lang.ref.WeakReference;
+
+/**
+ * Created by FANGlh on 2017/8/7.
+ * function:
+ */
+
+public class MyActivityManager {
+    private static MyActivityManager sInstance = new MyActivityManager();
+    private static WeakReference<Activity> sCurrentActivityWeakRef;
+
+
+    private MyActivityManager() {
+
+    }
+
+    public static MyActivityManager getInstance() {
+        return sInstance;
+    }
+
+    public static Activity getCurrentActivity() {
+        Activity currentActivity = null;
+        if (sCurrentActivityWeakRef != null) {
+            currentActivity = sCurrentActivityWeakRef.get();
+        }
+        return currentActivity;
+    }
+
+    public void setCurrentActivity(Activity activity) {
+        sCurrentActivityWeakRef = new WeakReference<Activity>(activity);
+    }
+}

+ 56 - 41
WeiChat/src/main/res/layout/act_taskerp_add.xml

@@ -42,7 +42,63 @@
                android:gravity="bottom"
                 android:layout_marginLeft="10dp"
                 android:text="@string/task_detail"/>
+            <ImageView
+                android:id="@+id/voice_search_iv"
+                android:background="@drawable/btn_yuyin_nor"
+                android:visibility="visible"
+                android:layout_marginRight="20dp"
+                android:layout_alignParentRight="true"
+                android:layout_width="20dp"
+                android:layout_height="20dp"
+                android:layout_marginTop="8dp"
+                />
+
+            <RelativeLayout
+                style="@style/form_relative_customer"
+                android:layout_height="90dp"
+                android:layout_alignParentLeft="true"
+                android:layout_alignParentStart="true"
+                android:layout_alignParentTop="true"
+                android:layout_marginTop="103dp"
+                android:background="@color/white">
+
+                <TextView
+                    android:id="@+id/tv_task_peoples"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_centerVertical="true"
+                    android:layout_marginLeft="10dp"
+                    android:text="@string/task_executor" />
+
+                <ScrollView
+                    android:layout_width="wrap_content"
+                    android:layout_height="match_parent"
+                    android:layout_marginBottom="5dp"
+                    android:layout_marginLeft="10dp"
+                    android:layout_marginTop="5dp"
+                    android:layout_toLeftOf="@+id/iv_find"
+                    android:layout_toRightOf="@+id/tv_task_peoples"
+                    android:scrollbars="none">
+
+                    <com.xzjmyk.pm.activity.view.TagGroup
+                        android:id="@+id/et_task_people"
+                        style="@style/TagGroup"
+                        android:layout_width="wrap_content"
+                        android:layout_height="fill_parent"
+                        android:background="@null" />
+                </ScrollView>
+
+                <ImageView
+                    android:id="@+id/iv_find"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_alignParentRight="true"
+                    android:layout_centerVertical="true"
+                    android:layout_marginRight="20dp"
+                    android:src="@drawable/icon_find_voice" />
+
             </RelativeLayout>
+        </RelativeLayout>
         <EditText
             android:id="@+id/et_task_detail"
             android:background="@color/white"
@@ -52,48 +108,7 @@
             android:paddingLeft="10dp"
             android:layout_marginBottom="10dp"
             android:hint="@string/common_input" />
-        
-        <RelativeLayout
-            style="@style/form_relative_customer"
-            android:background="@color/white"
-            android:layout_height="90dp">
-
-            <TextView
-                android:id="@+id/tv_task_peoples"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:layout_centerVertical="true"
-                android:layout_marginLeft="10dp"
-                android:text="@string/task_executor" />
 
-            <ScrollView
-                android:layout_width="wrap_content"
-                android:layout_height="match_parent"
-                android:layout_marginBottom="5dp"
-                android:layout_marginLeft="10dp"
-                android:layout_marginTop="5dp"
-                android:layout_toLeftOf="@+id/iv_find"
-                android:layout_toRightOf="@+id/tv_task_peoples"
-                android:scrollbars="none">
-
-                <com.xzjmyk.pm.activity.view.TagGroup
-                    android:id="@+id/et_task_people"
-                    style="@style/TagGroup"
-                    android:layout_width="wrap_content"
-                    android:layout_height="fill_parent"
-                    android:background="@null" />
-            </ScrollView>
-
-            <ImageView
-                android:id="@+id/iv_find"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:layout_alignParentRight="true"
-                android:layout_centerVertical="true"
-                android:layout_marginRight="20dp"
-                android:src="@drawable/icon_find_voice" />
-
-        </RelativeLayout>
         <View
             android:layout_width="match_parent"
             android:layout_height="0.5dp"

+ 55 - 43
WeiChat/src/main/res/layout/activity_setting.xml

@@ -84,6 +84,13 @@
                 android:background="@drawable/selector_me_menu_item_bg"
                 android:visibility="gone">
 
+                <View
+                    android:id="@+id/view2"
+                    android:layout_width="match_parent"
+                    android:layout_height="@dimen/line"
+                    android:layout_alignParentBottom="true"
+                    android:background="@color/item_line" />
+
                 <TextView
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
@@ -103,17 +110,19 @@
                     android:contentDescription="@string/app_name" />
             </RelativeLayout>
 
-            <View
-                android:layout_width="match_parent"
-                android:layout_height="@dimen/line"
-                android:background="@color/item_line" />
-
             <RelativeLayout
                 android:id="@+id/uu_step_rl"
                 style="@style/IMTbleLine1"
                 android:background="@drawable/selector_me_menu_item_bg"
                 android:visibility="visible">
 
+                <View
+                    android:id="@+id/view3"
+                    android:layout_alignParentBottom="true"
+                    android:layout_width="match_parent"
+                    android:layout_height="@dimen/line"
+                    android:background="@color/item_line" />
+
                 <TextView
                     android:id="@+id/uu_step_text"
                     android:layout_width="wrap_content"
@@ -154,16 +163,19 @@
 
             </RelativeLayout>
 
-            <View
-                android:layout_width="match_parent"
-                android:layout_height="@dimen/line"
-                android:background="@color/item_line" />
             <!--设置关闭推送-->
             <RelativeLayout
                 android:id="@+id/close_push_rl"
                 style="@style/IMTbleLine1"
                 android:background="@drawable/selector_me_menu_item_bg">
 
+                <View
+                    android:id="@+id/view4"
+                    android:layout_alignParentBottom="true"
+                    android:layout_width="match_parent"
+                    android:layout_height="@dimen/line"
+                    android:background="@color/item_line" />
+
                 <TextView
                     android:id="@+id/push_setting_text"
                     android:layout_width="wrap_content"
@@ -181,15 +193,19 @@
                     android:layout_alignParentRight="true"
                     android:layout_centerVertical="true" />
             </RelativeLayout>
-            <View
-                android:layout_width="match_parent"
-                android:layout_height="@dimen/line"
-                android:background="@color/item_line" />
 
             <RelativeLayout
                 android:id="@+id/sign_in_rl"
                 style="@style/IMTbleLine"
                 android:background="@drawable/selector_me_menu_item_bg">
+
+                <View
+                    android:id="@+id/view5"
+                    android:layout_alignParentBottom="true"
+                    android:layout_width="match_parent"
+                    android:layout_height="@dimen/line"
+                    android:background="@color/item_line" />
+
                 <TextView
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
@@ -217,15 +233,17 @@
                     android:textColor="@android:color/white"
                     android:textSize="10.0dip" />
             </RelativeLayout>
-            <View
-                android:layout_width="match_parent"
-                android:layout_height="@dimen/line"
-                android:background="@color/item_line" />
 
             <RelativeLayout
                 android:id="@+id/sign_out_rl"
                 style="@style/IMTbleLine"
                 android:background="@drawable/selector_me_menu_item_bg">
+                <View
+                    android:id="@+id/view5"
+                    android:layout_alignParentBottom="true"
+                    android:layout_width="match_parent"
+                    android:layout_height="@dimen/line"
+                    android:background="@color/item_line" />
                 <TextView
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
@@ -253,15 +271,16 @@
                     android:textColor="@android:color/white"
                     android:textSize="10.0dip" />
             </RelativeLayout>
-            <View
-                android:layout_width="match_parent"
-                android:layout_height="@dimen/line"
-                android:background="@color/item_line" />
 
             <RelativeLayout
                 android:id="@+id/booking_set_rl"
                 style="@style/IMTbleLine"
                 android:background="@drawable/selector_me_menu_item_bg">
+                <View
+                    android:layout_alignParentBottom="true"
+                    android:layout_width="match_parent"
+                    android:layout_height="@dimen/line"
+                    android:background="@color/item_line" />
                 <TextView
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
@@ -290,16 +309,16 @@
                     android:textSize="10.0dip" />
             </RelativeLayout>
             <!--清除缓存-->
-            <View
-                android:layout_width="match_parent"
-                android:layout_height="@dimen/line"
-                android:background="@color/item_line" />
 
             <RelativeLayout
                 android:id="@+id/clear_cache_rl"
                 style="@style/IMTbleLine"
                 android:background="@drawable/selector_me_menu_item_bg">
-
+                <View
+                    android:layout_alignParentBottom="true"
+                    android:layout_width="match_parent"
+                    android:layout_height="@dimen/line"
+                    android:background="@color/item_line" />
                 <TextView
                     android:id="@+id/cache_text"
                     android:layout_width="wrap_content"
@@ -328,11 +347,6 @@
                     android:contentDescription="@string/app_name" />
             </RelativeLayout>
 
-            <View
-                android:layout_width="match_parent"
-                android:layout_height="@dimen/line"
-                android:background="@color/item_line" />
-
             <RelativeLayout
                 android:id="@+id/use_help_rl"
                 style="@style/IMTbleLine"
@@ -415,7 +429,11 @@
                 android:id="@+id/about_us_rl"
                 style="@style/IMTbleLine"
                 android:background="@drawable/selector_me_menu_item_bg">
-
+                <View
+                    android:layout_alignParentBottom="true"
+                    android:layout_width="match_parent"
+                    android:layout_height="@dimen/line"
+                    android:background="@color/item_line" />
                 <TextView
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
@@ -435,11 +453,6 @@
                     android:contentDescription="@string/app_name" />
             </RelativeLayout>
 
-            <View
-                android:layout_width="match_parent"
-                android:layout_height="@dimen/line"
-                android:background="@color/item_line" />
-
             <RelativeLayout
                 android:id="@+id/share_rl"
                 style="@style/IMTbleLine"
@@ -470,7 +483,11 @@
                 style="@style/IMTbleLine"
                 android:background="@drawable/selector_me_menu_item_bg"
                 android:clickable="true">
-
+                <View
+                    android:layout_alignParentBottom="true"
+                    android:layout_width="match_parent"
+                    android:layout_height="@dimen/line"
+                    android:background="@color/item_line" />
                 <TextView
                     android:id="@+id/version_text"
                     android:layout_width="wrap_content"
@@ -499,11 +516,6 @@
                     android:contentDescription="@string/app_name" />
             </RelativeLayout>
 
-            <View
-                android:layout_width="match_parent"
-                android:layout_height="@dimen/line"
-                android:background="@color/item_line" />
-
             <Button
                 android:id="@+id/exit_btn"
                 android:layout_width="match_parent"

+ 32 - 0
WeiChat/src/main/res/layout/com_show_menu.xml

@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="350dp"
+    android:layout_height="400dp"
+    android:background="@color/bg_main"
+    android:orientation="vertical">
+
+    <TextView
+        android:id="@+id/title"
+        android:padding="10dp"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:text="tltle"
+        android:background="@color/bg_main"
+        android:visibility="visible"
+        android:gravity="center_horizontal"
+        />
+    <com.xzjmyk.pm.activity.ui.erp.view.CustomerScrollView
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:fillViewport="true"
+        android:scrollbars="none">
+       <com.xzjmyk.pm.activity.view.MyListView
+           android:id="@+id/qs_common_mlist"
+           android:layout_width="match_parent"
+           android:layout_height="wrap_content"
+           android:visibility="visible"
+           android:background="#ebe9e9">
+
+       </com.xzjmyk.pm.activity.view.MyListView>
+    </com.xzjmyk.pm.activity.ui.erp.view.CustomerScrollView>
+</LinearLayout>

+ 66 - 0
WeiChat/src/main/res/layout/com_show_ppitem.xml

@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="horizontal"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:background="@drawable/selector_me_menu_item_bg">
+    <ImageView
+        android:visibility="gone"
+        android:id="@+id/photo_img"
+        android:layout_width="40dp"
+        android:layout_height="40dp"
+        android:contentDescription="@string/app_name"
+        android:layout_marginLeft="10dp"
+        android:layout_marginTop="12dp"
+        android:src="@drawable/common_header_boy" />
+    <de.hdodenhof.circleimageview.CircleImageView
+        android:visibility="gone"
+        android:id="@+id/photo_me"
+        android:layout_width="40dp"
+        android:layout_height="40dp"
+        android:contentDescription="@string/app_name"
+        android:layout_marginLeft="10dp"
+        android:layout_marginTop="12dp"
+        android:src="@drawable/common_header_boy"/>
+    <LinearLayout
+        android:orientation="vertical"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:background="@drawable/selector_me_menu_item_bg">
+        <RelativeLayout
+            android:layout_width="match_parent"
+            android:layout_height="match_parent">
+            <TextView
+                android:id="@+id/key1Tv"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_margin="10dp"
+                android:textSize="15sp"
+                android:text="采购单-2013212"
+                android:maxLength="12"
+                android:singleLine="true"
+                android:ellipsize="end"
+                android:textColor="@color/light_gray"/>
+
+            <TextView
+                android:id="@+id/key2Tv"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_margin="10dp"
+                android:layout_alignParentRight="true"
+                android:text="2016-10-09 09:11"
+                android:textColor="@color/light_gray"/>
+        </RelativeLayout>
+
+        <TextView
+            android:id="@+id/key3Tv"
+            android:layout_marginLeft="10dp"
+            android:layout_marginBottom="10dp"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="状态"
+            android:textColor="@color/light_gray"
+            android:autoText="false"
+            />
+    </LinearLayout>
+</LinearLayout>

+ 12 - 10
WeiChat/src/main/res/layout/fragment_me.xml

@@ -232,14 +232,13 @@
             android:layout_height="@dimen/line"
             android:background="@color/item_line" />
 
-
         <View
             android:layout_width="match_parent"
             android:layout_height="@dimen/line"
             android:layout_marginLeft="10dp"
             android:layout_marginRight="10dp"
-            android:layout_marginTop="7dp"
-            android:background="@color/item_line" />
+            android:layout_marginTop="7dp" />
+    
         <!--公司-->
         <!--账套-->
         <RelativeLayout
@@ -247,6 +246,15 @@
             style="@style/IMTbleLine_UP_Me"
             android:background="@drawable/selector_me_menu_item_bg">
 
+            <View
+                android:id="@+id/view"
+                android:layout_width="match_parent"
+                android:layout_height="@dimen/line"
+                android:layout_marginLeft="10dp"
+                android:layout_marginRight="10dp"
+                android:layout_alignParentBottom="true"
+                android:background="@color/item_line" />
+
             <TextView
                 android:id="@+id/company_text"
                 android:layout_width="wrap_content"
@@ -278,13 +286,6 @@
                 android:contentDescription="@string/app_name" />
         </RelativeLayout>
 
-        <View
-            android:layout_width="match_parent"
-            android:layout_height="@dimen/line"
-            android:layout_marginLeft="10dp"
-            android:layout_marginRight="10dp"
-            android:background="@color/item_line" />
-
         <RelativeLayout
             android:id="@+id/rl_master_change"
             style="@style/IMTbleLine_UP_Me"
@@ -326,6 +327,7 @@
             android:layout_height="@dimen/line"
             android:layout_marginLeft="10dp"
             android:layout_marginRight="10dp"
+            android:visibility="gone"
             android:background="@color/item_line" />
 
         <RelativeLayout

+ 17 - 3
WeiChat/src/main/res/layout/judge_qsearch_window.xml

@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="250dp"
-    android:layout_height="100dp"
+    android:layout_height="150dp"
     android:orientation="vertical"
     android:layout_gravity="center"
     android:background="@drawable/pop_round_bg">
@@ -20,7 +20,7 @@
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:gravity="center"
-        android:text="即将进行语音快速搜索,请在语音框出来后说“预约” "
+        android:text="语音导航即将开始,请在语音框出来后说“预约” "
         android:textColor="@color/black"
         android:textSize="15sp"/>
     <View
@@ -28,7 +28,7 @@
         android:layout_height="0.3dp"
         android:background="@color/button_invalid"/>
     <TextView
-        android:id="@+id/no_tv"
+        android:id="@+id/next_tv"
         android:layout_width="match_parent"
         android:layout_height="0dp"
         android:layout_weight="2"
@@ -37,5 +37,19 @@
         android:text="下次进入再说"
         android:minHeight="45dp"
         android:textSize="15sp"/>
+    <View
+        android:layout_width="match_parent"
+        android:layout_height="0.3dp"
+        android:background="@color/button_invalid"/>
+    <TextView
+        android:id="@+id/no_tv"
+        android:layout_width="match_parent"
+        android:layout_height="0dp"
+        android:layout_weight="2"
+        android:gravity="center"
+        android:textColor="@color/red"
+        android:text="不再提示"
+        android:minHeight="45dp"
+        android:textSize="15sp"/>
 
 </LinearLayout>

+ 7 - 3
WeiChat/src/main/res/layout/personal_reg_activity.xml

@@ -38,7 +38,7 @@
                 android:layout_width="@dimen/line"
                 android:layout_height="30dp"
                 android:background="@color/white"/>
-            <EditText
+            <com.andreabaccega.widget.FormEditText
                 android:id="@+id/phone_et"
                 android:layout_width="match_parent"
                 android:layout_height="40dp"
@@ -50,6 +50,8 @@
                 android:textSize="15sp"
                 android:inputType="number"
                 android:maxLength="11"
+                whatever:customRegexp="^((13[1-9])|(15[^4])|(18[0,2,3,5-9])|(17[0-8])|(147))\\d{8}$"
+                whatever:testErrorString="请输入正确的手机号"
                 />
         </LinearLayout>
         <LinearLayout
@@ -73,7 +75,7 @@
                 android:layout_width="@dimen/line"
                 android:layout_height="30dp"
                 android:background="@color/white"/>
-            <EditText
+            <com.andreabaccega.widget.FormEditText
                 android:id="@+id/password_et"
                 android:layout_width="match_parent"
                 android:layout_height="40dp"
@@ -84,7 +86,9 @@
                 android:textColorHint="@color/white"
                 android:textSize="15sp"
                 android:inputType="textPassword"
-                android:maxLength="6"
+                android:maxLength="12"
+                whatever:customRegexp="^[0-9a-zA-Z]{6,12}$"
+                whatever:testErrorString="请输入6-12位密码(仅限数字+字母组合)"
                 />
         </LinearLayout>
     <LinearLayout

+ 2 - 2
WeiChat/src/main/res/raw/versionconfiguration.properties

@@ -1,3 +1,3 @@
 #发布版本状态改为true,测试版本状态为false
-#release_version = false
-release_version=false
+release_version = false
+#release_version=true

+ 3 - 3
app_core/imageload/build.gradle

@@ -2,13 +2,13 @@ apply plugin: 'com.android.library'
 
 
 android {
-    compileSdkVersion 25
-    buildToolsVersion "25.0.3"
+    compileSdkVersion 24
+    buildToolsVersion "25.0.0"
 
 
     defaultConfig {
         minSdkVersion 9
-        targetSdkVersion 25
+        targetSdkVersion 24
         versionCode 1
         versionName "1.0"
 

+ 3 - 3
app_core/network/build.gradle

@@ -2,13 +2,13 @@ apply plugin: 'com.android.library'
 
 
 android {
-    compileSdkVersion 25
-    buildToolsVersion "25.0.3"
+    compileSdkVersion 24
+    buildToolsVersion "25.0.0"
 
 
     defaultConfig {
         minSdkVersion 9
-        targetSdkVersion 25
+        targetSdkVersion 24
         versionCode 1
         versionName "1.0"
 

+ 0 - 1
app_third/libbdupdatesdk/src/main/res/values/bdp_update_strings.xml

@@ -1,7 +1,6 @@
 <resources>
 
     <string name="bdp_update_request_net_error">网络错误,请重试</string>
-    
     <string name="bdp_update_title_download">发现新版本</string>
     <string name="bdp_update_title_install">发现新版本安装包</string>
     <string name="bdp_update_title_as">提示</string>

+ 1 - 1
settings.gradle

@@ -30,4 +30,4 @@ project(':pullToRefershLibraryMy').projectDir = new File('app_third/pullToRefers
 project(':materialdialogs').projectDir = new File('app_third/materialdialogs')
 project(':MPAndroidChart').projectDir = new File('app_third/MPAndroidChart')
 project(':libfloatingactionbutton').projectDir = new File('app_third/libfloatingactionbutton')
-project(':library-swipemenu_lv').projectDir = new File('app_third/library-swipemenu_lv')
+project(':library-swipemenu_lv').projectDir = new File('app_third/library-swipemenu_lv')