Browse Source

提交类型 修改需求
提交内容 1修改首页Toolbar

Bitliker 8 years ago
parent
commit
ce74564c90
27 changed files with 206 additions and 75 deletions
  1. 1 7
      WeiChat/src/main/AndroidManifest.xml
  2. 32 15
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/MainActivity.java
  3. 4 12
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/message/MessageFragment.java
  4. 0 17
      WeiChat/src/main/res/layout/activity_main.xml
  5. 9 0
      WeiChat/src/main/res/values/styles.xml
  6. 10 0
      app_core/common/src/main/assets/work_menu.json
  7. 73 7
      app_core/common/src/main/java/com/core/base/SupportToolBarActivity.java
  8. 18 7
      app_core/common/src/main/java/com/core/utils/ToastUtil.java
  9. 1 1
      app_core/common/src/main/java/com/core/widget/crouton/Crouton.java
  10. BIN
      app_core/common/src/main/res/drawable-hdpi/common_toolbar_bg.png
  11. BIN
      app_core/common/src/main/res/drawable-hdpi/common_toolbar_message_bg.png
  12. BIN
      app_core/common/src/main/res/drawable-xhdpi/common_toolbar_bg.png
  13. BIN
      app_core/common/src/main/res/drawable-xhdpi/common_toolbar_message_bg.png
  14. BIN
      app_core/common/src/main/res/drawable-xxhdpi/common_toolbar_bg.png
  15. BIN
      app_core/common/src/main/res/drawable-xxhdpi/common_toolbar_message_bg.png
  16. 0 0
      app_core/common/src/main/res/drawable/ic_baseutil_back.xml
  17. 7 6
      app_core/common/src/main/res/layout/activity_main.xml
  18. 0 0
      app_core/common/src/main/res/layout/base_bar_layout.xml
  19. 2 2
      app_core/common/src/main/res/layout/common_toolbar.xml
  20. 15 0
      app_core/common/src/main/res/layout/include_toolbar.xml
  21. BIN
      app_modular/appmessages/src/main/res/drawable-hdpi/ic_quick_sign.png
  22. BIN
      app_modular/appmessages/src/main/res/drawable-xhdpi/ic_quick_sign.png
  23. BIN
      app_modular/appmessages/src/main/res/drawable-xxhdpi/ic_quick_sign.png
  24. 9 0
      app_modular/appmessages/src/main/res/menu/menu_message_fragment.xml
  25. 22 0
      app_modular/apputils/src/main/java/com/modular/apputils/utils/VoiceUtils.java
  26. BIN
      app_modular/apputils/src/main/res/raw/rec.mp3
  27. 3 1
      app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/utils/AutoErpSigninUitl.java

+ 1 - 7
WeiChat/src/main/AndroidManifest.xml

@@ -14,12 +14,10 @@
     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
     <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
     <uses-permission android:name="android.permission.INTERNET" />
-    <uses-permission android:name="android.permission.READ_LOGS" />
     <uses-permission android:name="android.permission.CALL_PHONE" />
     <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
     <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
     <uses-permission android:name="android.permission.GET_TASKS" />
-    <uses-permission android:name="android.permission.SET_DEBUG_APP" />
     <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
     <uses-permission android:name="android.permission.GET_ACCOUNTS" />
     <uses-permission android:name="android.permission.USE_CREDENTIALS" />
@@ -35,7 +33,6 @@
     <uses-permission android:name="android.permission.WAKE_LOCK" />
     <uses-permission android:name="android.permission.GET_TASKS" />
     <uses-permission android:name="android.permission.REORDER_TASKS" />
-    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
     <!-- 录音录像的权限 -->
     <uses-permission android:name="android.permission.RECORD_VIDEO" />
     <uses-permission android:name="android.permission.RECORD_AUDIO" />
@@ -49,8 +46,6 @@
     <!-- <uses-permission android:name="android.permission.INTERNET" /> -->
     <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
     <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
-    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
-    <uses-permission android:name="android.permission.READ_LOGS" />
     <uses-permission android:name="android.permission.GET_ACCOUNTS" />
     <uses-permission android:name="android.permission.USE_CREDENTIALS" />
     <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
@@ -65,7 +60,6 @@
     <uses-permission android:name="android.permission.READ_PHONE_STATE" />
     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
     <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
-    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
     <uses-permission android:name="android.permission.VIBRATE" />
     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
     <uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
@@ -86,7 +80,6 @@
     <!-- 百度自动更新 -->
     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
     <uses-permission android:name="android.permission.READ_PHONE_STATE" />
-    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
     <uses-permission android:name="android.permission.INTERNET" />
     <uses-permission android:name="android.permission.GET_TASKS" />
     <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
@@ -286,6 +279,7 @@
             android:configChanges="keyboardHidden|orientation"
             android:hardwareAccelerated="false"
             android:label="@string/app_name"
+            android:theme="@style/MainBaseTheme"
             android:launchMode="singleTask"
             android:screenOrientation="portrait"
             android:windowSoftInputMode="stateUnspecified|adjustNothing">

+ 32 - 15
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/MainActivity.java

@@ -20,6 +20,7 @@ import android.os.PersistableBundle;
 import android.support.v4.app.Fragment;
 import android.support.v4.app.FragmentManager;
 import android.support.v4.app.FragmentTransaction;
+import android.support.v7.widget.Toolbar;
 import android.text.TextUtils;
 import android.util.DisplayMetrics;
 import android.util.Log;
@@ -51,7 +52,6 @@ import com.core.api.wxapi.ApiUtils;
 import com.core.app.AppConfig;
 import com.core.app.AppConstant;
 import com.core.app.MyApplication;
-import com.core.base.BaseActivity;
 import com.core.broadcast.MsgBroadcast;
 import com.core.dao.SignAutoLogDao;
 import com.core.dao.UserDao;
@@ -76,6 +76,7 @@ import com.core.xmpp.listener.AuthStateListener;
 import com.core.xmpp.model.SignAutoLogEntity;
 import com.modular.appmessages.presenter.MessagePresenter;
 import com.modular.apptasks.presenter.AutoPresenter;
+import com.core.base.SupportToolBarActivity;
 import com.modular.login.activity.LoginActivity;
 import com.uas.appcontact.listener.ImStatusListener;
 import com.uas.appcontact.ui.fragment.ContactsFragment;
@@ -107,7 +108,7 @@ import java.util.Map;
 import static android.view.View.GONE;
 
 
-public class MainActivity extends BaseActivity implements ImStatusListener, NetWorkObservable.NetWorkObserver, MessagePresenter.UnReaderListener, AuthStateListener {
+public class MainActivity extends SupportToolBarActivity implements ImStatusListener, NetWorkObservable.NetWorkObserver, MessagePresenter.UnReaderListener, AuthStateListener {
     private static final int LOG_SEND_REQUEST = 17519;
     public static String HASHCODE = "MainActivity";
     public static boolean isUnReadWork;   //判断我的空间是否有新内容
@@ -287,7 +288,7 @@ public class MainActivity extends BaseActivity implements ImStatusListener, NetW
                     mBusinessCircleFragment = new ContactsFragment();
                 }
                 changeFragment(mBusinessCircleFragment, TAG_BusinessCircle);//发现
-                getSupportActionBar().setTitle(getString(R.string.contact_title));
+                setTitle(getString(R.string.contact_title));
 
             } else if (checkedId == R.id.main_tab_three) {  //点击工作选项
                 if (mWorksFragment == null) {
@@ -297,9 +298,9 @@ public class MainActivity extends BaseActivity implements ImStatusListener, NetW
                 String role = com.core.utils.CommonUtil.getUserRole();
                 if (role.equals("2")) {
                     String master_ch = CommonUtil.getSharedPreferences(ct, "Master_ch");
-                    getSupportActionBar().setTitle(TextUtils.isEmpty(master_ch) ? getString(R.string.work_title) : master_ch);
+                    setTitle(TextUtils.isEmpty(master_ch) ? getString(R.string.work_title) : master_ch);
                 } else {
-                    getSupportActionBar().setTitle(getString(R.string.work_title));
+                    setTitle(getString(R.string.work_title));
                 }
                 //TODO 当前隐藏新功能提醒红点
                 main_tab_three_tv.setVisibility(View.INVISIBLE);
@@ -310,7 +311,7 @@ public class MainActivity extends BaseActivity implements ImStatusListener, NetW
 					mGroupChatFragment = new GroupChatFragment();
 				}
 				changeFragment(mGroupChatFragment, TAG_GROUP_CHAT);//群聊
-				getSupportActionBar().setTitle(R.string.group_chat);
+				setTitle(R.string.group_chat);
 			}*/
             else if (checkedId == R.id.main_tab_five) {
                 if (mMeFragment == null) {
@@ -318,7 +319,7 @@ public class MainActivity extends BaseActivity implements ImStatusListener, NetW
                 }
                 CommonUtil.setSharedPreferences(ct, com.core.app.Constants.NEW_ME_TAG, true);
                 changeFragment(mMeFragment, TAG_ME);//我
-                getSupportActionBar().setTitle(R.string.me);
+                setTitle(R.string.me);
             }
         }
     };
@@ -488,12 +489,14 @@ public class MainActivity extends BaseActivity implements ImStatusListener, NetW
         }
     };
 
+    @Override
+    public boolean needNavigation() {
+        return false;
+    }
+
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
-        LogUtil.d("OnCreate start:" + DateFormatUtil.long2Str(DateFormatUtil.YMD_HMS));
-        getSupportActionBar().setDisplayShowHomeEnabled(false);
-        getSupportActionBar().setDisplayHomeAsUpEnabled(false);
         setContentView(R.layout.activity_main);
         SIP_USERNAME = MyApplication.getInstance().mLoginUser.getUserId();
         String host = mConfig.MeetingHost;
@@ -580,7 +583,7 @@ public class MainActivity extends BaseActivity implements ImStatusListener, NetW
         autoPresenter = AutoPresenter.onCreate();
 //		startService(new Intent(MainActivity.this, AutoErpService.class));
         LogUtil.d("OnCreate end:" + DateFormatUtil.long2Str(DateFormatUtil.YMD_HMS));
-       
+
     }
 
     private AutoPresenter autoPresenter;
@@ -953,6 +956,20 @@ public class MainActivity extends BaseActivity implements ImStatusListener, NetW
         if (addFragment.isDetached())
             fragmentTransaction.attach(addFragment);
         mLastFragment = addFragment;
+
+        if (addFragment == mWorksFragment) {
+            hideToolBar();
+        } else {
+            showToolBar();
+            Toolbar mToolBar = getCommonToolBar();
+            if (mToolBar != null) {
+                if (addFragment == mMessageFragment) {
+                    mToolBar.setBackgroundResource(R.drawable.common_toolbar_message_bg);
+                } else {
+                    mToolBar.setBackgroundResource(R.drawable.common_toolbar_bg);
+                }
+            }
+        }
         fragmentTransaction.commitAllowingStateLoss();
     }
 
@@ -981,12 +998,12 @@ public class MainActivity extends BaseActivity implements ImStatusListener, NetW
      */
     private void updateMessageTitle() {
         if (mImStatus == AuthStateListener.AUTH_STATE_NOT) {
-            getSupportActionBar().setTitle(R.string.msg_offline);
+            setTitle(R.string.msg_offline);
             // mMessageFragment.setNetNoticeVisiable(true);
         } else if (mImStatus == AuthStateListener.AUTH_STATE_ING) {
-            getSupportActionBar().setTitle(R.string.msg_connect);
+            setTitle(R.string.msg_connect);
         } else if (mImStatus == AuthStateListener.AUTH_STATE_SUCCESS) {
-            getSupportActionBar().setTitle(R.string.msg_online);
+            setTitle(R.string.msg_online);
             // mMessageFragment.setNetNoticeVisiable(false);
         }
     }
@@ -1103,4 +1120,4 @@ public class MainActivity extends BaseActivity implements ImStatusListener, NetW
         updateMsgUnReadTv();
     }
 
-}
+}

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

@@ -5,11 +5,9 @@ import android.content.Context;
 import android.content.Intent;
 import android.os.Bundle;
 import android.provider.Settings;
-import android.support.constraint.ConstraintLayout;
 import android.support.v7.widget.AppCompatTextView;
 import android.text.Editable;
 import android.text.TextUtils;
-import android.view.ContextMenu;
 import android.view.Gravity;
 import android.view.LayoutInflater;
 import android.view.Menu;
@@ -23,15 +21,11 @@ import android.widget.ImageButton;
 import android.widget.ImageView;
 import android.widget.LinearLayout;
 import android.widget.PopupWindow;
-import android.widget.ScrollView;
 import android.widget.TextView;
 
-import com.alibaba.fastjson.JSON;
-import com.common.LogUtil;
 import com.common.data.DateFormatUtil;
 import com.common.data.ListUtils;
 import com.common.data.StringUtil;
-import com.common.data.TextUtil;
 import com.common.preferences.PreferenceUtils;
 import com.common.system.DisplayUtil;
 import com.core.api.wxapi.ApiPlatform;
@@ -48,11 +42,8 @@ import com.core.widget.MyListView;
 import com.core.widget.RedView;
 import com.core.widget.VoiceSearchView;
 import com.core.widget.listener.EditChangeListener;
-import com.handmark.pulltorefresh.library.PullToRefreshBase;
-import com.handmark.pulltorefresh.library.PullToRefreshScrollView;
 import com.lidroid.xutils.ViewUtils;
 import com.lidroid.xutils.view.annotation.ViewInject;
-import com.modular.appmessages.activity.ApprovalListActivity;
 import com.modular.appmessages.activity.ProcessB2BActivity;
 import com.modular.appmessages.activity.ProcessMsgActivity;
 import com.modular.appmessages.activity.Subscription2Activity;
@@ -127,13 +118,13 @@ public class MessageFragment extends EasyFragment implements IMessageView, View.
 
     @Override
     public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
-        inflater.inflate(R.menu.add_new, menu);
+        inflater.inflate(R.menu.menu_message_fragment, menu);
         super.onCreateOptionsMenu(menu, inflater);
     }
 
     @Override
     public boolean onOptionsItemSelected(MenuItem item) {
-        if (item.getItemId() == R.id.add) {
+        if (item.getItemId() == R.id.quick_sign) {
             setSignViewData();
         }
         return super.onOptionsItemSelected(item);
@@ -159,8 +150,9 @@ public class MessageFragment extends EasyFragment implements IMessageView, View.
     public void onResume() {
         super.onResume();
         presenter.loadData();
-        if (!mSignRefreshLayout.isEnablePullDown()) {
+        if (PreferenceUtils.getBoolean("hasAutoSign", false)) {
             mSignRefreshLayout.setSignShow();
+            PreferenceUtils.putBoolean("hasAutoSign",false);
         }
     }
 

+ 0 - 17
WeiChat/src/main/res/layout/activity_main.xml

@@ -1,17 +0,0 @@
-<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:fitsSystemWindows="true">
-    <FrameLayout
-        android:id="@+id/main_content"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:layout_above="@+id/main_tab_radio_group" >
-    </FrameLayout>
-    <include
-        android:id="@+id/main_tab_radio_group"
-        android:layout_width="match_parent"
-        android:layout_height="60dp"
-        android:layout_alignParentBottom="true"
-        layout="@layout/layout_main_tab_radio_group" />
-</RelativeLayout>

+ 9 - 0
WeiChat/src/main/res/values/styles.xml

@@ -38,6 +38,15 @@
         <item name="styleLoadingLayout">@style/LoadingLayoutStyle</item>
     </style>
 
+    <style name="MainBaseTheme" parent="Theme.AppCompat.Light.NoActionBar">
+        <item name="android:buttonStyle">@android:style/Widget.Button</item>
+        <item name="android:windowAnimationStyle">@style/IMAnimationStyle</item>
+        <item name="android:listViewStyle">@style/IMListView</item>
+        <item name="homeAsUpIndicator">@drawable/actionbar_up_indicator</item>
+        <item name="android:windowDisablePreview">true</item>
+        <item name="styleLoadingLayout">@style/LoadingLayoutStyle</item>
+    </style>
+
 
     <!-- Application theme. -->
     <style name="AppTheme" parent="AppBaseTheme">

+ 10 - 0
app_core/common/src/main/assets/work_menu.json

@@ -6,6 +6,16 @@
     "moduleId": "",
     "moduleVisible": true,
     "moduleList": [
+      {
+        "isLocalMenu": true,
+        "menuName": "产城服务",
+        "menuIcon": "ic_work_city_industry_service",
+        "menuActivity": "com.modular.cityIndustry.CityIndustryServiceMainActivity",
+        "menuTag": "local_city_industry",
+        "menuUrl": "",
+        "caller": "",
+        "isHide": false
+      },
       {
         "isLocalMenu": true,
         "menuName": "str_work_subscribe_secretary",

+ 73 - 7
app_modular/apputils/src/main/java/com/modular/apputils/activity/SupportToolBarActivity.java → app_core/common/src/main/java/com/core/base/SupportToolBarActivity.java

@@ -1,25 +1,30 @@
-package com.modular.apputils.activity;
+package com.core.base;
 
+import android.annotation.SuppressLint;
+import android.content.Context;
 import android.graphics.drawable.Drawable;
 import android.os.Bundle;
+import android.support.annotation.LayoutRes;
 import android.support.annotation.Nullable;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.AppCompatTextView;
 import android.support.v7.widget.Toolbar;
 import android.text.TextUtils;
+import android.view.LayoutInflater;
 import android.view.MenuItem;
 import android.view.View;
+import android.view.ViewGroup;
 import android.view.ViewStub;
 import android.widget.FrameLayout;
 import android.widget.TextView;
 
-import com.modular.apputils.R;
+import com.core.app.R;
+import com.core.utils.StatusBarUtil;
+import com.core.utils.ToastUtil;
 
 /**
  * Created by Bitlike on 2018/5/3.
  */
 
-public class SupportToolBarActivity extends AppCompatActivity {
+public class SupportToolBarActivity extends BaseActivity {
     private FrameLayout contentFl;
     private Toolbar commonToolBar;
     private TextView commonTitleTv;
@@ -40,11 +45,13 @@ public class SupportToolBarActivity extends AppCompatActivity {
         commonToolBar = findViewById(R.id.commonToolBar);
         commonTitleTv = findViewById(R.id.commonTitleTv);
         if (commonToolBar != null) {
+            StatusBarUtil.immersive(this, 0x00000000, 0.0f);
             setSupportActionBar(commonToolBar);
             getSupportActionBar().setDisplayShowTitleEnabled(false);
+            StatusBarUtil.setPaddingSmart(this, commonToolBar);
         }
         if (needNavigation()) {
-            setNavigation(0, null,null);
+            setNavigation(0, null, null);
         }
         commonTitleTv.setText(getTitle());
     }
@@ -56,7 +63,7 @@ public class SupportToolBarActivity extends AppCompatActivity {
      * @param icon            返回图标(当iconId小于0时)
      * @param onClickListener 导航键监听事件
      */
-    public  final void setNavigation(int iconId, Drawable icon, View.OnClickListener onClickListener) {
+    public final void setNavigation(int iconId, Drawable icon, View.OnClickListener onClickListener) {
         if (iconId > 0) {
             commonToolBar.setNavigationIcon(iconId);
         } else if (icon != null) {
@@ -154,4 +161,63 @@ public class SupportToolBarActivity extends AppCompatActivity {
         return commonToolBar;
     }
 
+
+    @Override
+    public void setContentView(View contentView) {
+        setContentView(contentView, null);
+    }
+
+    @SuppressLint("ResourceType")
+    @Override
+    public void setContentView(@LayoutRes int layoutId) {
+        if (layoutId > 0) {
+            if (contentFl != null) {
+                LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
+                inflater.inflate(layoutId, contentFl);
+            } else {
+                super.setContentView(layoutId);
+            }
+        }
+    }
+
+    @Override
+    public void setContentView(View contentView, ViewGroup.LayoutParams params) {
+        if (contentView != null) {
+            if (contentFl != null) {
+                contentFl.removeAllViews();
+                if (params == null) {
+                    params = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
+                            ViewGroup.LayoutParams.MATCH_PARENT);
+                }
+                contentFl.addView(contentView, params);
+            } else {
+                super.setContentView(contentView);
+            }
+        }
+    }
+
+
+    public void showToast(CharSequence message) {
+        if (contentFl != null && !TextUtils.isEmpty(message)) {
+            ToastUtil.showToast(this, message, contentFl);
+        } else {
+            ToastUtil.showToast(this, message);
+        }
+    }
+
+    public void showToast(int messageId) {
+        if (contentFl != null && messageId != 0) {
+            ToastUtil.showToast(this, messageId, contentFl);
+        } else {
+            ToastUtil.showToast(this, messageId);
+        }
+    }
+
+    public FrameLayout getContentFl() {
+        return contentFl;
+    }
+
+    public Toolbar getCommonToolBar() {
+        return commonToolBar;
+    }
 }

+ 18 - 7
app_core/common/src/main/java/com/core/utils/ToastUtil.java

@@ -4,6 +4,7 @@ import android.app.Activity;
 import android.content.Context;
 import android.graphics.Color;
 import android.text.Editable;
+import android.text.TextUtils;
 import android.text.TextWatcher;
 import android.util.Log;
 import android.view.Gravity;
@@ -12,8 +13,8 @@ import android.widget.EditText;
 import android.widget.TextView;
 import android.widget.Toast;
 
-import com.common.data.StringUtil;
 import com.core.app.R;
+import com.core.base.SupportToolBarActivity;
 import com.core.widget.crouton.Crouton;
 import com.core.widget.crouton.Style;
 
@@ -79,22 +80,32 @@ public class ToastUtil {
         showToast(context, R.string.data_exception);
     }
 
-    public static void showToast(Context context, String message) {
-        if (context == null || StringUtil.isEmpty(message)) {
+    public static void showToast(Context context, CharSequence message) {
+        if (context == null || TextUtils.isEmpty(message)) {
             return;
         }
-        Crouton.makeText(context, message);
+        ViewGroup vg = null;
+        if (context instanceof SupportToolBarActivity) {
+            vg = ((SupportToolBarActivity) context).getContentFl();
+        }
+        if (vg != null) {
+            showToast(context, message, vg);
+        } else {
+            Crouton.makeText(context, message);
+        }
+
+
     }
 
     public static void showToast(Context context, int resId) {
         if (context == null) {
             return;
         }
-        Crouton.makeText(context, context.getString(resId));
+        showToast(context,context.getString(resId));
     }
 
-    public static void showToast(Context context, String message, ViewGroup viewGroup) {
-        if (context == null || StringUtil.isEmpty(message)) {
+    public static void showToast(Context context, CharSequence message, ViewGroup viewGroup) {
+        if (context == null || TextUtils.isEmpty(message)) {
             return;
         }
         Crouton.makeText((Activity) context, message, Style.holoGreenLight, 1000, viewGroup).show();

+ 1 - 1
app_core/common/src/main/java/com/core/widget/crouton/Crouton.java

@@ -195,7 +195,7 @@ public final class Crouton {
             makeText((Activity) ct, message, ct.getResources().getColor(color), 1000).show();
     }
 
-    public static void makeText(Context ct, String message) {
+    public static void makeText(Context ct, CharSequence message) {
         try {
             makeText((Activity) ct, message, Style.holoGreenLight, 1000).show();
         } catch (Exception e) {

BIN
app_core/common/src/main/res/drawable-hdpi/common_toolbar_bg.png


BIN
app_core/common/src/main/res/drawable-hdpi/common_toolbar_message_bg.png


BIN
app_core/common/src/main/res/drawable-xhdpi/common_toolbar_bg.png


BIN
app_core/common/src/main/res/drawable-xhdpi/common_toolbar_message_bg.png


BIN
app_core/common/src/main/res/drawable-xxhdpi/common_toolbar_bg.png


BIN
app_core/common/src/main/res/drawable-xxhdpi/common_toolbar_message_bg.png


+ 0 - 0
app_modular/apputils/src/main/res/drawable/ic_baseutil_back.xml → app_core/common/src/main/res/drawable/ic_baseutil_back.xml


+ 7 - 6
app_core/common/src/main/res/layout/activity_main.xml

@@ -1,17 +1,18 @@
 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:fitsSystemWindows="true">
+    android:layout_height="match_parent">
+
     <FrameLayout
         android:id="@+id/main_content"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
-        android:layout_above="@+id/main_tab_radio_group" >
-    </FrameLayout>
+        android:layout_above="@+id/main_tab_radio_group"
+      />
+
     <include
         android:id="@+id/main_tab_radio_group"
+        layout="@layout/layout_main_tab_radio_group"
         android:layout_width="match_parent"
         android:layout_height="60dp"
-        android:layout_alignParentBottom="true"
-        layout="@layout/layout_main_tab_radio_group" />
+        android:layout_alignParentBottom="true" />
 </RelativeLayout>

+ 0 - 0
app_modular/apputils/src/main/res/layout/base_bar_layout.xml → app_core/common/src/main/res/layout/base_bar_layout.xml


+ 2 - 2
app_modular/apputils/src/main/res/layout/common_toolbar.xml → app_core/common/src/main/res/layout/common_toolbar.xml

@@ -3,7 +3,7 @@
     android:id="@+id/commonToolBar"
     android:layout_width="match_parent"
     android:layout_height="?attr/actionBarSize"
-    android:background="?attr/colorPrimary">
+    android:background="@drawable/common_toolbar_bg">
 
     <TextView
         android:id="@+id/commonTitleTv"
@@ -11,6 +11,6 @@
         android:layout_height="wrap_content"
         android:layout_gravity="left|center_vertical"
         android:text="@string/app_name"
-        android:textColor="?android:attr/textColorPrimary"
+        android:textColor="@color/white"
         android:textSize="18sp" />
 </android.support.v7.widget.Toolbar>

+ 15 - 0
app_core/common/src/main/res/layout/include_toolbar.xml

@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/common_toolbar"
+    android:layout_width="match_parent"
+    android:background="@drawable/common_toolbar_message_bg"
+    android:layout_height="?attr/actionBarSize">
+
+    <TextView
+        android:id="@+id/common_title"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="@string/app_name"
+        android:textColor="@color/cadetblue" />
+
+</android.support.v7.widget.Toolbar>

BIN
app_modular/appmessages/src/main/res/drawable-hdpi/ic_quick_sign.png


BIN
app_modular/appmessages/src/main/res/drawable-xhdpi/ic_quick_sign.png


BIN
app_modular/appmessages/src/main/res/drawable-xxhdpi/ic_quick_sign.png


+ 9 - 0
app_modular/appmessages/src/main/res/menu/menu_message_fragment.xml

@@ -0,0 +1,9 @@
+<?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/quick_sign"
+        app:showAsAction="always"
+        android:icon="@drawable/ic_quick_sign"
+        android:title="快捷打卡" />
+</menu>

+ 22 - 0
app_modular/apputils/src/main/java/com/modular/apputils/utils/VoiceUtils.java

@@ -0,0 +1,22 @@
+package com.modular.apputils.utils;
+
+import android.media.Ringtone;
+import android.media.RingtoneManager;
+import android.net.Uri;
+
+import com.common.preferences.PreferenceUtils;
+import com.core.app.MyApplication;
+import com.modular.apputils.R;
+
+public class VoiceUtils {
+
+    public static void signVoice() {
+        if (PreferenceUtils.getBoolean("signVoiceAble", true)) {
+            //TODO 语音播放
+            Uri notification = Uri.parse("android.resource://"+ MyApplication.getInstance().getPackageName()+"/"+ R.raw.rec);
+            Ringtone r = RingtoneManager.getRingtone( MyApplication.getInstance().getApplicationContext(), notification);
+            r.play();
+
+        }
+    }
+}

BIN
app_modular/apputils/src/main/res/raw/rec.mp3


+ 3 - 1
app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/utils/AutoErpSigninUitl.java

@@ -19,7 +19,6 @@ import com.common.data.JSONUtil;
 import com.common.data.ListUtils;
 import com.common.data.StringUtil;
 import com.common.preferences.PreferenceUtils;
-import com.common.system.SystemUtil;
 import com.common.thread.ThreadUtil;
 import com.core.api.wxapi.ApiConfig;
 import com.core.api.wxapi.ApiPlatform;
@@ -46,6 +45,7 @@ import com.core.utils.NotificationManage;
 import com.core.utils.OnGetDrivingRouteResult;
 import com.core.utils.TimeUtils;
 import com.core.utils.WorkHandlerUtil;
+import com.modular.apputils.utils.VoiceUtils;
 import com.uas.appworks.OA.erp.activity.MissionActivity;
 import com.uas.appworks.OA.erp.activity.WorkActivity;
 import com.uas.appworks.R;
@@ -429,6 +429,8 @@ public class AutoErpSigninUitl implements OnHttpResultListener {
                         if (saveOk) {
                             Intent intent = new Intent(OAConfig.AUTO_SIGIN_ALART);
                             LocalBroadcastManager.getInstance(MyApplication.getInstance()).sendBroadcast(intent);
+                            PreferenceUtils.putBoolean("hasAutoSign",true);
+                            VoiceUtils.signVoice();
                         }
                     }
                     loadLog(bundle);