Просмотр исходного кода

发布版本6.1.1

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

# Conflicts:
#	WeiChat/version.properties
Arison 8 лет назад
Родитель
Сommit
c8d56586b2
39 измененных файлов с 848 добавлено и 231 удалено
  1. 22 7
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/crm/ClientActivity.java
  2. 1 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/OAActivity.java
  3. 14 2
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/adapter/WorkMenuChildAdapter.java
  4. 24 3
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/adapter/WorkMenuParentAdapter.java
  5. 56 7
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/fragment/WorkPlatFragment.java
  6. 12 7
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/platform/task/TaskActivity.java
  7. 7 6
      WeiChat/src/main/res/layout/activity_report_query_criteria.xml
  8. 1 0
      WeiChat/src/main/res/values-en/strings.xml
  9. 1 0
      WeiChat/src/main/res/values-zh-rCN/strings.xml
  10. 1 0
      WeiChat/src/main/res/values-zh-rTW/strings.xml
  11. 1 0
      WeiChat/src/main/res/values/strings.xml
  12. 30 39
      app_core/common/src/main/assets/work_menu.json
  13. 16 16
      app_core/common/src/main/assets/work_menu_b2b.json
  14. 3 3
      app_core/common/src/main/assets/work_menu_personal.json
  15. BIN
      app_core/common/src/main/res/drawable-xxhdpi/received.png
  16. 2 0
      app_core/common/src/main/res/layout/activity_oamain.xml
  17. 101 0
      app_core/common/src/main/res/layout/input_error_msg.xml
  18. 12 0
      app_core/common/src/main/res/menu/wage_error.xml
  19. 39 0
      app_core/common/src/main/res/values-en/strings.xml
  20. 39 0
      app_core/common/src/main/res/values-zh-rCN/strings.xml
  21. 39 0
      app_core/common/src/main/res/values-zh-rTW/strings.xml
  22. 39 0
      app_core/common/src/main/res/values/strings.xml
  23. 4 0
      app_modular/appme/src/main/java/com/uas/appme/settings/activity/BRestActivity.java
  24. 8 0
      app_modular/appme/src/main/java/com/uas/appme/settings/activity/CheckWagesActivity.java
  25. 128 6
      app_modular/appme/src/main/java/com/uas/appme/settings/activity/WagesDetailsActivity.java
  26. 15 16
      app_modular/appme/src/main/res/layout/sigature_pop.xml
  27. 23 9
      app_modular/appme/src/main/res/layout/wages_details_activity.xml
  28. BIN
      app_modular/apputils/libs/alipaySdk-20170922.jar
  29. 1 1
      app_modular/apputils/src/main/java/com/modular/apputils/utils/SwitchUtil.java
  30. 11 12
      app_modular/apputils/src/main/java/com/modular/apputils/utils/playsdk/AliPlay.java
  31. 21 12
      app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/CustomerListActivity.java
  32. 71 64
      app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/SalesRankingActivity.java
  33. 8 2
      app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/TaskAddErpActivity.java
  34. 6 6
      app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/presenter/MissionPresenter.java
  35. 15 2
      app_modular/appworks/src/main/java/com/uas/appworks/adapter/WorkFuncSetChildAdapter.java
  36. 9 4
      app_modular/appworks/src/main/java/com/uas/appworks/adapter/WorkFuncSetParentAdapter.java
  37. 12 1
      app_modular/appworks/src/main/java/com/uas/appworks/adapter/WorkModuleSortAddAdapter.java
  38. 13 1
      app_modular/appworks/src/main/java/com/uas/appworks/adapter/WorkModuleSortDeleteAdapter.java
  39. 43 4
      app_modular/appworks/src/main/java/com/uas/appworks/model/WorkPlatModel.java

+ 22 - 7
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/crm/ClientActivity.java

@@ -34,6 +34,7 @@ import com.common.system.DisplayUtil;
 import com.core.app.Constants;
 import com.core.base.BaseActivity;
 import com.core.net.http.ViewUtil;
+import com.core.utils.ToastUtil;
 import com.core.utils.time.wheel.DatePicker;
 import com.github.mikephil.charting.charts.BarChart;
 import com.github.mikephil.charting.components.Legend;
@@ -253,8 +254,12 @@ public class ClientActivity extends BaseActivity implements View.OnClickListener
     }
 
     private void initData() {
-        sendHttpResquest();
-        isHasSubordinate(6);//下属
+        if (CommonUtil.isNetWorkConnected(ct)) {
+            sendHttpResquest();
+            isHasSubordinate(6);//下属
+        } else {
+            ToastUtil.showToast(ct, R.string.networks_out);
+        }
     }
 
 
@@ -1178,13 +1183,23 @@ public class ClientActivity extends BaseActivity implements View.OnClickListener
                 switch (resId) {
                     case R.id.ib_ranking_condition://排名
                         // ToastUtil.showToast(ct, year + "-" + month);
-                        ib_ranking_condition.setText(month + "月");
-                        sendPersonalRank(year + month);
+                        if (CommonUtil.isNetWorkConnected(ct)) {
+                            ib_ranking_condition.setText(month + "月");
+                            sendPersonalRank(year + month);
+                        } else {
+                            ToastUtil.showToast(ct, R.string.networks_out);
+                        }
+
                         break;
                     case R.id.ib_index_condition://图表
                         //  ToastUtil.showToast(ct, year + "-" + month);
-                        ib_index_condition.setText(month + "月");
-                        sendTargets(year + month);
+                        if (CommonUtil.isNetWorkConnected(ct)) {
+                            ib_index_condition.setText(month + "月");
+                            sendTargets(year + month);
+                        } else {
+                            ToastUtil.showToast(ct, R.string.networks_out);
+                        }
+
                         break;
                   /*  case R.id.ib_sale_condition://销售
                         ToastUtil.showToast(ct, year + "-" + month );
@@ -1211,7 +1226,7 @@ public class ClientActivity extends BaseActivity implements View.OnClickListener
         ViewUtil.httpSendRequest(ct, url, param, mHandler, headers, what, null, null, "get");
     }
 
-    public  Intent getVisitClass(Context ct) {
+    public Intent getVisitClass(Context ct) {
         return new Intent(ct, VersionUtil.canShowCrm2_0() ? AddVisitReportActivity.class : VisitReportAddActivity.class);
     }
 }

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

@@ -466,7 +466,7 @@ public class OAActivity extends BaseActivity implements View.OnClickListener, Wo
         LinearLayout.LayoutParams linearParams = (LinearLayout.LayoutParams) viewPager.getLayoutParams(); // 取控件mGrid当前的布局参数   搜索
         linearParams.height = (getResources().getDisplayMetrics().heightPixels * 1 / 3);// 当控件的高强制设成50象素
         viewPager.setLayoutParams(linearParams); // 使设置好的布局参数应用到控件myGrid
-        pagerAdapter = new OACalenderViewPagerAdapter(ct);
+        pagerAdapter = new OACalenderViewPagerAdapter(ct,curDate);
         viewPager.setAdapter(pagerAdapter);
         viewPager.setCurrentItem(OACalenderViewPagerAdapter.MAX_NUM / 2);
         //判断是否是管理员

+ 14 - 2
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/adapter/WorkMenuChildAdapter.java

@@ -58,12 +58,24 @@ public class WorkMenuChildAdapter extends BaseAdapter {
     }
 
     private void initializeViews(WorkMenuBean.ModuleListBean object, ViewHolder holder) {
-        holder.workMenuChildNameTv.setText(object.getMenuName());
+        if (object.isLocalMenu()) {
+            try {
+                holder.workMenuChildNameTv.setText(mResources.getIdentifier(object.getMenuName(), "string", context.getPackageName()));
+            } catch (Exception e) {
+                holder.workMenuChildNameTv.setText(object.getMenuName());
+            }
+        } else {
+            holder.workMenuChildNameTv.setText(object.getMenuName());
+        }
         if (TextUtils.isEmpty(object.getMenuIcon())) {
             holder.workMenuChildIconIv.setImageResource(R.drawable.defaultpic);
         } else {
             if (object.isLocalMenu()) {
-                holder.workMenuChildIconIv.setImageResource(mResources.getIdentifier(object.getMenuIcon(), "drawable", context.getPackageName()));
+                try {
+                    holder.workMenuChildIconIv.setImageResource(mResources.getIdentifier(object.getMenuIcon(), "drawable", context.getPackageName()));
+                } catch (Exception e) {
+                    holder.workMenuChildIconIv.setImageResource(R.drawable.defaultpic);
+                }
             } else {
                 ImageLoaderUtil.getInstance().loadImage(object.getMenuIcon(), holder.workMenuChildIconIv);
             }

+ 24 - 3
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/adapter/WorkMenuParentAdapter.java

@@ -2,6 +2,7 @@ package com.xzjmyk.pm.activity.ui.erp.adapter;
 
 import android.content.Context;
 import android.content.Intent;
+import android.content.res.Resources;
 import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -33,6 +34,7 @@ public class WorkMenuParentAdapter extends BaseAdapter {
     private LayoutInflater layoutInflater;
     private WorkMenuChildAdapter mWorkMenuChildAdapter;
     private OnAddFuncClickListener mOnAddFuncClickListener;
+    private Resources mResources;
     private boolean isB2b = false;
 
     public WorkMenuParentAdapter(Context context, List<WorkMenuBean> objects) {
@@ -40,6 +42,7 @@ public class WorkMenuParentAdapter extends BaseAdapter {
         this.objects = objects;
         this.layoutInflater = LayoutInflater.from(context);
         isB2b = ApiUtils.getApiModel() instanceof ApiPlatform;
+        mResources = context.getResources();
     }
 
     public void setOnAddFuncClickListener(OnAddFuncClickListener onAddFuncClickListener) {
@@ -76,7 +79,15 @@ public class WorkMenuParentAdapter extends BaseAdapter {
     }
 
     private void initializeViews(WorkMenuBean object, ViewHolder holder) {
-        holder.workParentTitleTv.setText(object.getModuleName());
+        if (object.isLocalModule()) {
+            try {
+                holder.workParentTitleTv.setText(mResources.getIdentifier(object.getModuleName(), "string", context.getPackageName()));
+            } catch (Exception e) {
+                holder.workParentTitleTv.setText(object.getModuleName());
+            }
+        } else {
+            holder.workParentTitleTv.setText(object.getModuleName());
+        }
         List<WorkMenuBean.ModuleListBean> typeList = object.getModuleList();
         List<WorkMenuBean.ModuleListBean> typeListBeen = new ArrayList<>();
         for (int i = 0; i < typeList.size(); i++) {
@@ -91,7 +102,7 @@ public class WorkMenuParentAdapter extends BaseAdapter {
             moduleListBean.setIsLocalMenu(true);
             moduleListBean.setMenuActivity("com.modular.work.WorkFuncSetActivity");
             moduleListBean.setMenuIcon("add_picture");
-            moduleListBean.setMenuName("添加应用");
+            moduleListBean.setMenuName("str_work_add_func");
             moduleListBean.setMenuUrl("");
 
             typeListBeen.add(moduleListBean);
@@ -215,7 +226,17 @@ public class WorkMenuParentAdapter extends BaseAdapter {
                 break;
             case "com.modular.work.CommonDataFormActivity":
                 intent.putExtra("serve_id", caller);
-                intent.putExtra("title", moduleListBean.getMenuName());
+                String title = null;
+                if (moduleListBean.isLocalMenu()) {
+                    try {
+                        title = context.getString(mResources.getIdentifier(moduleListBean.getMenuName(), "string", context.getPackageName()));
+                    } catch (Exception e) {
+                        title = moduleListBean.getMenuName();
+                    }
+                } else {
+                    title = moduleListBean.getMenuName();
+                }
+                intent.putExtra("title", title);
                 break;
             default:
                 break;

+ 56 - 7
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/fragment/WorkPlatFragment.java

@@ -1,6 +1,7 @@
 package com.xzjmyk.pm.activity.ui.erp.fragment;
 
 import android.content.Intent;
+import android.content.res.Resources;
 import android.view.LayoutInflater;
 import android.view.Menu;
 import android.view.MenuInflater;
@@ -50,6 +51,7 @@ public class WorkPlatFragment extends BaseMVPFragment<WorkPlatPresenter> impleme
     private TextView mSetTextView;
     private List<WorkMenuBean> mCacheMenuTypeBeans;
     private String mUserId, mCompanyName, mMaster;
+    private Resources mResources;
 
     @Override
     protected WorkPlatPresenter initPresenter() {
@@ -80,6 +82,9 @@ public class WorkPlatFragment extends BaseMVPFragment<WorkPlatPresenter> impleme
             mWorkMenuParentAdapter = new WorkMenuParentAdapter(mContext, mWorkMenuBeans);
             mWorkMenuListView.setAdapter(mWorkMenuParentAdapter);
         }
+        if (mResources == null) {
+            mResources = mContext.getResources();
+        }
     }
 
     @Override
@@ -109,7 +114,7 @@ public class WorkPlatFragment extends BaseMVPFragment<WorkPlatPresenter> impleme
         if (isFirstLoad) {
             loadOrdersCaller();
         }
-        obtainCityIndustryService();
+//        obtainCityIndustryService();
     }
 
     private void getLocalMenu() {
@@ -278,18 +283,35 @@ public class WorkPlatFragment extends BaseMVPFragment<WorkPlatPresenter> impleme
                 String netModuleName = netWorkMenuBean.getModuleName();
                 List<WorkMenuBean.ModuleListBean> netModuleList = netWorkMenuBean.getModuleList();
                 for (WorkMenuBean cacheWorkMenuBean : mCacheMenuTypeBeans) {
-                    String cacheModuleName = cacheWorkMenuBean.getModuleName();
+                    String cacheModuleName = null;
+                    if (cacheWorkMenuBean.isLocalModule()) {
+                        try {
+                            cacheModuleName = getString(mResources.getIdentifier(cacheWorkMenuBean.getModuleName(), "string", mContext.getPackageName()));
+                        } catch (Exception e) {
+                            cacheModuleName = cacheWorkMenuBean.getModuleName();
+                        }
+                    } else {
+                        cacheModuleName = cacheWorkMenuBean.getModuleName();
+                    }
                     List<WorkMenuBean.ModuleListBean> cacheModuleList = cacheWorkMenuBean.getModuleList();
                     if (cacheModuleName.equals(netModuleName)) {
                         isExist = true;
                         cacheWorkMenuBean.setModuleId(netWorkMenuBean.getModuleId());
                         cacheWorkMenuBean.setModuleTag(netWorkMenuBean.getModuleTag());
-                        cacheWorkMenuBean.setModuleName(netWorkMenuBean.getModuleName());
                         for (WorkMenuBean.ModuleListBean netModuleListBean : netModuleList) {
                             boolean isFuncExist = false;
                             String netMenuName = netModuleListBean.getMenuName();
                             for (WorkMenuBean.ModuleListBean cacheModuleListBean : cacheModuleList) {
-                                String cacheMenuName = cacheModuleListBean.getMenuName();
+                                String cacheMenuName = null;
+                                if (cacheModuleListBean.isLocalMenu()) {
+                                    try {
+                                        cacheMenuName = getString(mResources.getIdentifier(cacheModuleListBean.getMenuName(), "string", mContext.getPackageName()));
+                                    } catch (Exception e) {
+                                        cacheMenuName = cacheModuleListBean.getMenuName();
+                                    }
+                                } else {
+                                    cacheMenuName = cacheModuleListBean.getMenuName();
+                                }
                                 if (cacheMenuName.equals(netMenuName)) {
                                     isFuncExist = true;
                                     if (!cacheModuleListBean.isLocalMenu()) {
@@ -311,7 +333,16 @@ public class WorkPlatFragment extends BaseMVPFragment<WorkPlatPresenter> impleme
                             WorkMenuBean.ModuleListBean cacheModuleListBean = cacheModuleList.get(i);
                             if (!cacheModuleListBean.isLocalMenu()) {
                                 boolean isCacheExist = false;
-                                String cacheMenuName = cacheModuleListBean.getMenuName();
+                                String cacheMenuName = null;
+                                if (cacheModuleListBean.isLocalMenu()) {
+                                    try {
+                                        cacheMenuName = getString(mResources.getIdentifier(cacheModuleListBean.getMenuName(), "string", mContext.getPackageName()));
+                                    } catch (Exception e) {
+                                        cacheMenuName = cacheModuleListBean.getMenuName();
+                                    }
+                                } else {
+                                    cacheMenuName = cacheModuleListBean.getMenuName();
+                                }
                                 for (WorkMenuBean.ModuleListBean netModuleListBean : netModuleList) {
                                     String netMenuName = netModuleListBean.getMenuName();
                                     if (cacheMenuName.equals(netMenuName)) {
@@ -337,9 +368,27 @@ public class WorkPlatFragment extends BaseMVPFragment<WorkPlatPresenter> impleme
                 WorkMenuBean cacheWorkMenuBean = mCacheMenuTypeBeans.get(i);
                 if (!cacheWorkMenuBean.isLocalModule()) {
                     boolean isCacheExist = false;
-                    String cacheModuleName = cacheWorkMenuBean.getModuleName();
+                    String cacheModuleName = null;
+                    if (cacheWorkMenuBean.isLocalModule()) {
+                        try {
+                            cacheModuleName = getString(mResources.getIdentifier(cacheWorkMenuBean.getModuleName(), "string", mContext.getPackageName()));
+                        } catch (Exception e) {
+                            cacheModuleName = cacheWorkMenuBean.getModuleName();
+                        }
+                    } else {
+                        cacheModuleName = cacheWorkMenuBean.getModuleName();
+                    }
                     for (WorkMenuBean netWorkMenuBean : netWorkMenuBeans) {
-                        String netModuleName = netWorkMenuBean.getModuleName();
+                        String netModuleName = null;
+                        if (netWorkMenuBean.isLocalModule()) {
+                            try {
+                                netModuleName = getString(mResources.getIdentifier(netWorkMenuBean.getModuleName(), "string", mContext.getPackageName()));
+                            } catch (Exception e) {
+                                netModuleName = netWorkMenuBean.getModuleName();
+                            }
+                        } else {
+                            netModuleName = netWorkMenuBean.getModuleName();
+                        }
                         if (cacheModuleName.equals(netModuleName)) {
                             isCacheExist = true;
                             break;

+ 12 - 7
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/platform/task/TaskActivity.java

@@ -42,6 +42,7 @@ import com.core.net.http.ViewUtil;
 import com.core.utils.CommonUtil;
 import com.core.utils.FlexJsonUtil;
 import com.core.utils.IntentUtils;
+import com.core.utils.ToastUtil;
 import com.core.widget.EmptyLayout;
 import com.core.widget.VoiceSearchView;
 import com.handmark.pulltorefresh.library.PullToRefreshBase;
@@ -72,7 +73,7 @@ import java.util.regex.PatternSyntaxException;
 @SuppressWarnings({"unused", "deprecation"})
 public class TaskActivity extends BaseActivity implements OnClickListener {
     //TODO 应要求修改先修改为2000,后面再优化
-    private final int PAGE_SIZE=2000;
+    private final int PAGE_SIZE = 2000;
     private EmptyLayout mEmptyLayout;
     private Context context;
     private PullToRefreshListView listview_main;
@@ -278,7 +279,11 @@ public class TaskActivity extends BaseActivity implements OnClickListener {
         new Thread(new getallprocess_run()).start();
 //        sendResquestForServer("START", 2);
         initHeaderView();//  头布局显示
-        sendResquestForServerAll(2, mCurrentPage);  // update TODO :出息进来请求所有任务数据
+        if (CommonUtil.isNetWorkConnected(ct)) {
+            sendResquestForServerAll(2, mCurrentPage);  // update TODO :出息进来请求所有任务数据
+        } else {
+            ToastUtil.showToast(ct, R.string.networks_out);
+        }
         initSearchEvent();
         /**注释:监听 */
         listview_main.setOnItemClickListener(new OnItemClickListener() {
@@ -329,14 +334,14 @@ public class TaskActivity extends BaseActivity implements OnClickListener {
                     Blowfish blowfish = new Blowfish("00" + d);
                     t = blowfish.encryptString(password);
                 }
-                Intent intent = new Intent("com.modular.main.WebViewLoadActivity" );
+                Intent intent = new Intent("com.modular.main.WebViewLoadActivity");
                 if (allList != null || !allList.isEmpty()) {
                     String url = allList.get(position - 1).getLink();
                     String master = allList.get(position - 1).getMaster();
                     if (master == null) {
                         master = CommonUtil.getSharedPreferences(context, "erp_master");
                     }
-                    IntentUtils.webLinks(context,url,t);
+                    IntentUtils.webLinks(context, url, t);
                     intent.putExtra("url", url);
                     intent.putExtra("t", t);
                     intent.putExtra("d", d);
@@ -410,11 +415,11 @@ public class TaskActivity extends BaseActivity implements OnClickListener {
 
                 for (int i = 0; i < real_List.size(); i++) {
                     boolean b = false;
-                    try{
+                    try {
                         b = getResult(real_List.get(i).getRecorder() + real_List.get(i).getDealpersoncode()
                                 + real_List.get(i).getStatus() + real_List.get(i).getTaskname()
                                 + real_List.get(i).getEndTime() + real_List.get(i).getDatetime(), strChche.trim());
-                    }catch (PatternSyntaxException e){
+                    } catch (PatternSyntaxException e) {
                         e.printStackTrace();
                     }
                     if (b) {
@@ -657,7 +662,7 @@ public class TaskActivity extends BaseActivity implements OnClickListener {
             Blowfish blowfish = new Blowfish("00" + d);
             t = blowfish.encryptString(password);
         }
-        Intent intent = new Intent("com.modular.main.WebViewLoadActivity" );
+        Intent intent = new Intent("com.modular.main.WebViewLoadActivity");
         intent.putExtra("url", url);
         intent.putExtra("t", t);
         intent.putExtra("d", d);

+ 7 - 6
WeiChat/src/main/res/layout/activity_report_query_criteria.xml

@@ -16,13 +16,13 @@
             android:layout_height="wrap_content"
             android:drawableLeft="@drawable/ic_remind_bell"
             android:drawablePadding="10dp"
-            android:text="@string/report_query_prompt"/>
+            android:text="@string/report_query_prompt" />
     </LinearLayout>
 
     <View
         android:layout_width="match_parent"
         android:layout_height="1dp"
-        android:background="@color/gray_light"/>
+        android:background="@color/gray_light" />
 
     <ListView
         android:id="@+id/report_query_criteria_lv"
@@ -32,8 +32,9 @@
         android:layout_weight="1"
         android:hardwareAccelerated="true"
         android:layerType="hardware"
+        android:overScrollMode="never"
         android:scrollbars="none"
-        android:scrollingCache="false"/>
+        android:scrollingCache="false" />
 
     <LinearLayout
         android:layout_width="match_parent"
@@ -52,7 +53,7 @@
             android:background="@drawable/selector_cancel_bg"
             android:gravity="center"
             android:text="@string/cancel"
-            android:textColor="@color/selector_cancel_text_color"/>
+            android:textColor="@color/selector_cancel_text_color" />
 
         <TextView
             android:id="@+id/report_query_criteria_reset_btn"
@@ -64,7 +65,7 @@
             android:background="@drawable/selector_confirm_bg"
             android:gravity="center"
             android:text="@string/reset"
-            android:textColor="@color/white"/>
+            android:textColor="@color/white" />
 
         <TextView
             android:id="@+id/report_query_criteria_confirm_btn"
@@ -75,6 +76,6 @@
             android:background="@drawable/selector_confirm_bg"
             android:gravity="center"
             android:text="@string/app_dialog_ok"
-            android:textColor="@color/white"/>
+            android:textColor="@color/white" />
     </LinearLayout>
 </LinearLayout>

+ 1 - 0
WeiChat/src/main/res/values-en/strings.xml

@@ -1440,5 +1440,6 @@
     <string name="download_paused">下载已暂停</string>
     <string name="str_reloading">正在加载....</string>
     <string name="sales_statistics">销售看板</string>
+    <string name="str_work_add_func">添加应用</string>
 
 </resources>

+ 1 - 0
WeiChat/src/main/res/values-zh-rCN/strings.xml

@@ -1552,5 +1552,6 @@
     <string name="download_paused">下载已暂停</string>
     <string name="str_reloading">正在加载....</string>
     <string name="sales_statistics">销售看板</string>
+    <string name="str_work_add_func">添加应用</string>
 
 </resources>

+ 1 - 0
WeiChat/src/main/res/values-zh-rTW/strings.xml

@@ -1541,5 +1541,6 @@
     <string name="download_paused">下载已暂停</string>
     <string name="str_reloading">正在加载....</string>
     <string name="sales_statistics">销售看板</string>
+    <string name="str_work_add_func">添加应用</string>
 
 </resources>

+ 1 - 0
WeiChat/src/main/res/values/strings.xml

@@ -1884,4 +1884,5 @@
     <string name="download_paused">下载已暂停</string>
     <string name="str_reloading">正在加载....</string>
     <string name="sales_statistics">销售看板</string>
+    <string name="str_work_add_func">添加应用</string>
 </resources>

+ 30 - 39
app_core/common/src/main/assets/work_menu.json

@@ -1,6 +1,6 @@
 [
   {
-    "moduleName": "UU应用",
+    "moduleName": "str_uu_application",
     "isLocalModule": true,
     "moduleTag": "uu_application",
     "moduleId": "",
@@ -8,7 +8,7 @@
     "moduleList": [
       {
         "isLocalMenu": true,
-        "menuName": "预约小秘书",
+        "menuName": "str_work_subscribe_secretary",
         "menuIcon": "ic_work_subscribe_secretary",
         "menuActivity": "com.modular.booking.BookingListActivity",
         "menuUrl": "",
@@ -17,7 +17,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "UU运动",
+        "menuName": "str_work_uu_sports",
         "menuIcon": "ic_work_uu_sports",
         "menuActivity": "com.modular.appme.UURanking",
         "menuUrl": "",
@@ -27,7 +27,7 @@
     ]
   },
   {
-    "moduleName": "行政办公",
+    "moduleName": "str_administrative_office",
     "isLocalModule": true,
     "moduleTag": "administrative_office",
     "moduleId": "",
@@ -35,7 +35,7 @@
     "moduleList": [
       {
         "isLocalMenu": true,
-        "menuName": "我的审批",
+        "menuName": "str_work_work_approval",
         "menuIcon": "ic_work_work_approval",
         "menuActivity": "com.modular.work.ProcessMsgActivity",
         "menuUrl": "",
@@ -44,7 +44,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "待办工作",
+        "menuName": "str_work_backlog",
         "menuIcon": "ic_work_backlog",
         "menuActivity": "com.modular.task.TaskActivity",
         "menuUrl": "",
@@ -53,7 +53,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "工作日历",
+        "menuName": "str_work_work_calendar",
         "menuIcon": "ic_work_work_calendar",
         "menuActivity": "com.modular.work.OAActivity",
         "menuUrl": "",
@@ -62,7 +62,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "工作汇报",
+        "menuName": "str_work_work_report",
         "menuIcon": "ic_work_work_report",
         "menuActivity": "com.modular.work.WorkReportMenuActivity",
         "menuUrl": "",
@@ -71,7 +71,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "打卡签到",
+        "menuName": "str_work_punch_clock",
         "menuIcon": "ic_work_punch_clock",
         "menuActivity": "com.modular.work.WorkActivity",
         "menuUrl": "",
@@ -80,7 +80,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "外勤签到",
+        "menuName": "str_work_outwork_sign",
         "menuIcon": "ic_work_outwork_sign",
         "menuActivity": "com.modular.work.MissionActivity",
         "menuUrl": "",
@@ -89,7 +89,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "考勤统计",
+        "menuName": "str_work_attendance_statistics",
         "menuIcon": "ic_work_attendance_statistics",
         "menuActivity": "com.modular.oa.StatisticsActivity",
         "menuUrl": "",
@@ -98,7 +98,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "加班申请",
+        "menuName": "str_work_overtime_request",
         "menuIcon": "ic_work_overtime_request",
         "menuActivity": "com.modular.form.DataFormDetailActivity",
         "menuUrl": "",
@@ -107,7 +107,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "请假申请",
+        "menuName": "str_work_leave_request",
         "menuIcon": "ic_work_leave_request",
         "menuActivity": "com.modular.form.DataFormDetailActivity",
         "menuUrl": "",
@@ -116,7 +116,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "出差申请",
+        "menuName": "str_work_travel_request",
         "menuIcon": "ic_work_travel_request",
         "menuActivity": "com.modular.form.DataFormDetailActivity",
         "menuUrl": "",
@@ -125,7 +125,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "费用报销",
+        "menuName": "str_work_expense_account",
         "menuIcon": "ic_work_expense_account",
         "menuActivity": "com.modular.oa.ExpenseReimbursementActivity",
         "menuUrl": "",
@@ -134,7 +134,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "会议管理",
+        "menuName": "str_work_meeting_manage",
         "menuIcon": "ic_work_meeting_manage",
         "menuActivity": "com.modular.oa.AddMeetingActivity",
         "menuUrl": "",
@@ -144,7 +144,7 @@
     ]
   },
   {
-    "moduleName": "客户关系管理",
+    "moduleName": "str_customer_relationship",
     "isLocalModule": true,
     "moduleTag": "customer_relationship",
     "moduleId": "",
@@ -152,7 +152,7 @@
     "moduleList": [
       {
         "isLocalMenu": true,
-        "menuName": "商机管理",
+        "menuName": "str_work_business_manage",
         "menuIcon": "ic_work_business_manage",
         "menuActivity": "com.modular.crm.BusinessActivity",
         "menuUrl": "",
@@ -161,7 +161,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "客户管理",
+        "menuName": "str_work_customer_manage",
         "menuIcon": "ic_work_customer_manage",
         "menuActivity": "com.modular.crm.CustomerListActivity",
         "menuUrl": "",
@@ -170,7 +170,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "客户拜访",
+        "menuName": "str_work_customer_visit",
         "menuIcon": "ic_work_customer_visit",
         "menuActivity": "com.modular.work.OAActivity",
         "menuUrl": "",
@@ -179,7 +179,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "销售看版",
+        "menuName": "str_work_sales_data",
         "menuIcon": "ic_work_sales_data",
         "menuActivity": "com.modular.crm.ClientActivity",
         "menuUrl": "",
@@ -188,7 +188,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "荣誉墙",
+        "menuName": "str_work_honor_rank",
         "menuIcon": "ic_work_honor_rank",
         "menuActivity": "com.modular.crm.SalesRankingActivity",
         "menuUrl": "",
@@ -198,7 +198,7 @@
     ]
   },
   {
-    "moduleName": "企业应用",
+    "moduleName": "str_enterprise_application",
     "isLocalModule": true,
     "moduleTag": "enterprise_application",
     "moduleId": "",
@@ -206,7 +206,7 @@
     "moduleList": [
       {
         "isLocalMenu": true,
-        "menuName": "数据查询",
+        "menuName": "str_work_data_inquiry",
         "menuIcon": "ic_work_data_inquiry",
         "menuActivity": "com.modular.company.DataInquiryActivity",
         "menuUrl": "",
@@ -215,7 +215,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "报表统计",
+        "menuName": "str_work_report_statistics",
         "menuIcon": "ic_work_report_statistics",
         "menuActivity": "com.modular.company.ReportStatisticsActivity",
         "menuUrl": "",
@@ -224,7 +224,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "实时看板",
+        "menuName": "str_work_real_time_subs",
         "menuIcon": "ic_work_real_time_subs",
         "menuActivity": "com.modular.company.RealTimeFormActivity",
         "menuUrl": "",
@@ -233,26 +233,17 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "订阅号管理",
+        "menuName": "str_work_subs_manage",
         "menuIcon": "ic_work_subs_manage",
         "menuActivity": "com.modular.company.SubcribeManageActivity",
         "menuUrl": "",
         "caller": "",
         "isHide": false
-      },
-      {
-        "isLocalMenu": true,
-        "menuName": "企业工资条",
-        "menuIcon": "ic_work_salary_bill",
-        "menuActivity": "",
-        "menuUrl": "",
-        "caller": "",
-        "isHide": false
       }
     ]
   },
   {
-    "moduleName": "优软云平台",
+    "moduleName": "str_usoft_cloud_platform",
     "isLocalModule": true,
     "moduleTag": "usoft_cloud_platform",
     "moduleId": "",
@@ -260,7 +251,7 @@
     "moduleList": [
       {
         "isLocalMenu": true,
-        "menuName": "B2B商务",
+        "menuName": "str_work_b2b_commerce",
         "menuIcon": "ic_work_b2b_commerce",
         "menuActivity": "com.modular.main.WebViewCommActivity",
         "menuUrl": "",
@@ -269,7 +260,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "优软商城",
+        "menuName": "str_work_usoft_mall",
         "menuIcon": "ic_work_usoft_mall",
         "menuActivity": "com.modular.main.WebViewCommActivity",
         "menuUrl": "",

+ 16 - 16
app_core/common/src/main/assets/work_menu_b2b.json

@@ -1,6 +1,6 @@
 [
   {
-    "moduleName": "UU应用",
+    "moduleName": "str_uu_application",
     "isLocalModule": true,
     "moduleTag": "uu_application",
     "moduleId": "",
@@ -8,7 +8,7 @@
     "moduleList": [
       {
         "isLocalMenu": true,
-        "menuName": "预约小秘书",
+        "menuName": "str_work_subscribe_secretary",
         "menuIcon": "ic_work_subscribe_secretary",
         "menuActivity": "com.modular.booking.BookingListActivity",
         "menuUrl": "",
@@ -17,7 +17,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "UU运动",
+        "menuName": "str_work_uu_sports",
         "menuIcon": "ic_work_uu_sports",
         "menuActivity": "com.modular.appme.UURanking",
         "menuUrl": "",
@@ -27,7 +27,7 @@
     ]
   },
   {
-    "moduleName": "行政办公",
+    "moduleName": "str_administrative_office",
     "isLocalModule": true,
     "moduleTag": "administrative_office",
     "moduleId": "",
@@ -35,7 +35,7 @@
     "moduleList": [
       {
         "isLocalMenu": true,
-        "menuName": "我的审批",
+        "menuName": "str_work_work_approval",
         "menuIcon": "ic_work_work_approval",
         "menuActivity": "com.modular.work.ProcessB2BActivity",
         "menuUrl": "",
@@ -44,7 +44,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "待办工作",
+        "menuName": "str_work_backlog",
         "menuIcon": "ic_work_backlog",
         "menuActivity": "com.modular.task.TaskB2BActivity",
         "menuUrl": "",
@@ -53,7 +53,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "工作日历",
+        "menuName": "str_work_work_calendar",
         "menuIcon": "ic_work_work_calendar",
         "menuActivity": "com.modular.work.OAActivity",
         "menuUrl": "",
@@ -62,7 +62,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "工作汇报",
+        "menuName": "str_work_work_report",
         "menuIcon": "ic_work_work_report",
         "menuActivity": "com.modular.plat.WorkDailyAddActivity",
         "menuUrl": "",
@@ -71,7 +71,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "打卡签到",
+        "menuName": "str_work_punch_clock",
         "menuIcon": "ic_work_punch_clock",
         "menuActivity": "com.modular.work.WorkActivity",
         "menuUrl": "",
@@ -80,7 +80,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "外勤签到",
+        "menuName": "str_work_outwork_sign",
         "menuIcon": "ic_work_outwork_sign",
         "menuActivity": "com.modular.work.MissionActivity",
         "menuUrl": "",
@@ -89,7 +89,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "加班申请",
+        "menuName": "str_work_overtime_request",
         "menuIcon": "ic_work_overtime_request",
         "menuActivity": "com.modular.plat.WorkExtraActivity",
         "menuUrl": "",
@@ -98,7 +98,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "请假申请",
+        "menuName": "str_work_leave_request",
         "menuIcon": "ic_work_leave_request",
         "menuActivity": "com.modular.oa.PlatLeaveAddActivity",
         "menuUrl": "",
@@ -107,7 +107,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "出差申请",
+        "menuName": "str_work_travel_request",
         "menuIcon": "ic_work_travel_request",
         "menuActivity": "com.modular.plat.TravelActivity",
         "menuUrl": "",
@@ -117,7 +117,7 @@
     ]
   },
   {
-    "moduleName": "优软云平台",
+    "moduleName": "str_usoft_cloud_platform",
     "isLocalModule": true,
     "moduleTag": "usoft_cloud_platform",
     "moduleId": "",
@@ -125,7 +125,7 @@
     "moduleList": [
       {
         "isLocalMenu": true,
-        "menuName": "B2B商务",
+        "menuName": "str_work_b2b_commerce",
         "menuIcon": "ic_work_b2b_commerce",
         "menuActivity": "com.modular.main.WebViewCommActivity",
         "menuUrl": "",
@@ -134,7 +134,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "优软商城",
+        "menuName": "str_work_usoft_mall",
         "menuIcon": "ic_work_usoft_mall",
         "menuActivity": "com.modular.main.WebViewCommActivity",
         "menuUrl": "",

+ 3 - 3
app_core/common/src/main/assets/work_menu_personal.json

@@ -1,6 +1,6 @@
 [
   {
-    "moduleName": "UU应用",
+    "moduleName": "str_uu_application",
     "isLocalModule": true,
     "moduleTag": "uu_application",
     "moduleId": "",
@@ -8,7 +8,7 @@
     "moduleList": [
       {
         "isLocalMenu": true,
-        "menuName": "预约小秘书",
+        "menuName": "str_work_subscribe_secretary",
         "menuIcon": "ic_work_subscribe_secretary",
         "menuActivity": "com.modular.booking.BookingListActivity",
         "menuUrl": "",
@@ -17,7 +17,7 @@
       },
       {
         "isLocalMenu": true,
-        "menuName": "UU运动",
+        "menuName": "str_work_uu_sports",
         "menuIcon": "ic_work_uu_sports",
         "menuActivity": "com.modular.appme.UURanking",
         "menuUrl": "",

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


+ 2 - 0
app_core/common/src/main/res/layout/activity_oamain.xml

@@ -10,6 +10,7 @@
     <LinearLayout
         android:layout_width="match_parent"
         android:layout_height="match_parent"
+        android:focusableInTouchMode="true"
         android:orientation="vertical">
 
         <LinearLayout
@@ -257,6 +258,7 @@
         <!--end 头布局-->
         <FrameLayout
             android:layout_width="match_parent"
+            android:focusableInTouchMode="true"
             android:layout_height="match_parent">
 
             <!--标签布局-->

+ 101 - 0
app_core/common/src/main/res/layout/input_error_msg.xml

@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:gravity="center_horizontal"
+    android:orientation="vertical"
+    android:paddingLeft="10dp"
+    android:paddingRight="10dp"
+    android:paddingTop="10dp"
+    android:background="@drawable/pop_round_bg">
+
+    <TextView
+        android:id="@+id/title_tv"
+        android:layout_width="match_parent"
+        android:layout_height="20dp"
+        android:gravity="center"
+        android:text="请输入你的问题"
+        android:textColor="@color/text_main"
+        android:textSize="@dimen/text_main" />
+
+    <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="10dp"
+        android:gravity="center"
+        android:orientation="horizontal">
+
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text=""
+            android:textColor="@color/text_main"
+            android:textSize="@dimen/text_main" />
+
+        <EditText
+            android:id="@+id/msg_et"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:background="@null"
+            android:maxLines="3"
+            android:maxLength="100"
+            android:hint="@string/common_input"
+            android:textColor="@color/text_main"
+            android:textSize="@dimen/text_main"
+            android:gravity="center_horizontal"
+            />
+        <EditText
+            android:id="@+id/editname_et2"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:background="@null"
+            android:ellipsize="end"
+            android:maxLines="1"
+            android:hint="@string/common_input2"
+            android:textColor="@color/text_main"
+            android:textSize="@dimen/text_main"
+            android:gravity="center_horizontal"
+            android:inputType="number"/>
+    </LinearLayout>
+
+
+
+    <View
+        android:layout_width="match_parent"
+        android:layout_height="2px"
+        android:layout_marginTop="10dp"
+        android:background="@color/item_line" />
+
+    <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="40dp"
+        android:orientation="horizontal"
+        android:textColor="@color/text_main"
+        android:textSize="@dimen/text_main">
+
+        <TextView
+            android:id="@+id/cancel1_tv"
+            android:layout_width="0dp"
+            android:layout_height="match_parent"
+            android:layout_weight="1"
+            android:gravity="center"
+            android:text="@string/cancel"
+            android:textColor="@color/text_main"
+            android:textSize="@dimen/text_main" />
+
+        <View
+            android:layout_width="2px"
+            android:layout_height="match_parent"
+            android:background="@color/item_line" />
+
+        <TextView
+            android:id="@+id/sure_tv"
+            android:layout_width="0dp"
+            android:layout_height="match_parent"
+            android:layout_weight="1"
+            android:gravity="center"
+            android:text="@string/common_sure"
+            android:textColor="@color/text_main"
+            android:textSize="@dimen/text_main" />
+    </LinearLayout>
+</LinearLayout>

+ 12 - 0
app_core/common/src/main/res/menu/wage_error.xml

@@ -0,0 +1,12 @@
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    xmlns:tools="http://schemas.android.com/tools"
+    tools:context="com.xzjmyk.pm.activity.MainActivity">
+
+    <item
+        android:tooltipText="报错"
+        android:id="@+id/wage_error"
+        android:title="报错"
+        app:showAsAction="ifRoom" />
+
+</menu>

+ 39 - 0
app_core/common/src/main/res/values-en/strings.xml

@@ -1437,4 +1437,43 @@
     <string name="usoft_science">优软科技</string>
     <string name="work_plat_setting">工作面板设置</string>
     <string name="complete">完成</string>
+
+    <!--工作台菜单-->
+    <string name="str_uu_application">UU应用</string>
+    <string name="str_work_subscribe_secretary">预约小秘书</string>
+    <string name="str_work_uu_sports">UU运动</string>
+
+    <string name="str_administrative_office">行政办公</string>
+    <string name="str_work_work_approval">我的审批</string>
+    <string name="str_work_backlog">待办工作</string>
+    <string name="str_work_work_calendar">工作日历</string>
+    <string name="str_work_work_report">工作汇报</string>
+    <string name="str_work_punch_clock">打卡签到</string>
+    <string name="str_work_outwork_sign">外勤签到</string>
+    <string name="str_work_attendance_statistics">考勤统计</string>
+    <string name="str_work_overtime_request">加班申请</string>
+    <string name="str_work_leave_request">请假申请</string>
+    <string name="str_work_travel_request">出差申请</string>
+    <string name="str_work_expense_account">费用报销</string>
+    <string name="str_work_meeting_manage">会议管理</string>
+
+    <string name="str_customer_relationship">客户关系管理</string>
+    <string name="str_work_business_manage">商机管理</string>
+    <string name="str_work_customer_manage">客户管理</string>
+    <string name="str_work_customer_visit">客户拜访</string>
+    <string name="str_work_sales_data">销售看板</string>
+    <string name="str_work_honor_rank">荣誉墙</string>
+
+    <string name="str_enterprise_application">企业应用</string>
+    <string name="str_work_data_inquiry">数据查询</string>
+    <string name="str_work_report_statistics">报表统计</string>
+    <string name="str_work_real_time_subs">实时看板</string>
+    <string name="str_work_subs_manage">订阅号管理</string>
+    <string name="str_work_salary_bill">企业工资条</string>
+
+    <string name="str_usoft_cloud_platform">优软云平台</string>
+    <string name="str_work_b2b_commerce">B2B商务</string>
+    <string name="str_work_usoft_mall">优软商城</string>
+    <!--工作台菜单-->
+
 </resources>

+ 39 - 0
app_core/common/src/main/res/values-zh-rCN/strings.xml

@@ -1550,4 +1550,43 @@
     <string name="usoft_science">优软科技</string>
     <string name="work_plat_setting">工作面板设置</string>
     <string name="complete">完成</string>
+
+    <!--工作台菜单-->
+    <string name="str_uu_application">UU应用</string>
+    <string name="str_work_subscribe_secretary">预约小秘书</string>
+    <string name="str_work_uu_sports">UU运动</string>
+
+    <string name="str_administrative_office">行政办公</string>
+    <string name="str_work_work_approval">我的审批</string>
+    <string name="str_work_backlog">待办工作</string>
+    <string name="str_work_work_calendar">工作日历</string>
+    <string name="str_work_work_report">工作汇报</string>
+    <string name="str_work_punch_clock">打卡签到</string>
+    <string name="str_work_outwork_sign">外勤签到</string>
+    <string name="str_work_attendance_statistics">考勤统计</string>
+    <string name="str_work_overtime_request">加班申请</string>
+    <string name="str_work_leave_request">请假申请</string>
+    <string name="str_work_travel_request">出差申请</string>
+    <string name="str_work_expense_account">费用报销</string>
+    <string name="str_work_meeting_manage">会议管理</string>
+
+    <string name="str_customer_relationship">客户关系管理</string>
+    <string name="str_work_business_manage">商机管理</string>
+    <string name="str_work_customer_manage">客户管理</string>
+    <string name="str_work_customer_visit">客户拜访</string>
+    <string name="str_work_sales_data">销售看板</string>
+    <string name="str_work_honor_rank">荣誉墙</string>
+
+    <string name="str_enterprise_application">企业应用</string>
+    <string name="str_work_data_inquiry">数据查询</string>
+    <string name="str_work_report_statistics">报表统计</string>
+    <string name="str_work_real_time_subs">实时看板</string>
+    <string name="str_work_subs_manage">订阅号管理</string>
+    <string name="str_work_salary_bill">企业工资条</string>
+
+    <string name="str_usoft_cloud_platform">优软云平台</string>
+    <string name="str_work_b2b_commerce">B2B商务</string>
+    <string name="str_work_usoft_mall">优软商城</string>
+    <!--工作台菜单-->
+
 </resources>

+ 39 - 0
app_core/common/src/main/res/values-zh-rTW/strings.xml

@@ -1538,4 +1538,43 @@
     <string name="usoft_science">优软科技</string>
     <string name="work_plat_setting">工作面板设置</string>
     <string name="complete">完成</string>
+
+    <!--工作台菜单-->
+    <string name="str_uu_application">UU应用</string>
+    <string name="str_work_subscribe_secretary">预约小秘书</string>
+    <string name="str_work_uu_sports">UU运动</string>
+
+    <string name="str_administrative_office">行政办公</string>
+    <string name="str_work_work_approval">我的审批</string>
+    <string name="str_work_backlog">待办工作</string>
+    <string name="str_work_work_calendar">工作日历</string>
+    <string name="str_work_work_report">工作汇报</string>
+    <string name="str_work_punch_clock">打卡签到</string>
+    <string name="str_work_outwork_sign">外勤签到</string>
+    <string name="str_work_attendance_statistics">考勤统计</string>
+    <string name="str_work_overtime_request">加班申请</string>
+    <string name="str_work_leave_request">请假申请</string>
+    <string name="str_work_travel_request">出差申请</string>
+    <string name="str_work_expense_account">费用报销</string>
+    <string name="str_work_meeting_manage">会议管理</string>
+
+    <string name="str_customer_relationship">客户关系管理</string>
+    <string name="str_work_business_manage">商机管理</string>
+    <string name="str_work_customer_manage">客户管理</string>
+    <string name="str_work_customer_visit">客户拜访</string>
+    <string name="str_work_sales_data">销售看板</string>
+    <string name="str_work_honor_rank">荣誉墙</string>
+
+    <string name="str_enterprise_application">企业应用</string>
+    <string name="str_work_data_inquiry">数据查询</string>
+    <string name="str_work_report_statistics">报表统计</string>
+    <string name="str_work_real_time_subs">实时看板</string>
+    <string name="str_work_subs_manage">订阅号管理</string>
+    <string name="str_work_salary_bill">企业工资条</string>
+
+    <string name="str_usoft_cloud_platform">优软云平台</string>
+    <string name="str_work_b2b_commerce">B2B商务</string>
+    <string name="str_work_usoft_mall">优软商城</string>
+    <!--工作台菜单-->
+
 </resources>

+ 39 - 0
app_core/common/src/main/res/values/strings.xml

@@ -1889,4 +1889,43 @@
     <string name="work_plat_setting">工作面板设置</string>
     <string name="complete">完成</string>
 
+
+    <!--工作台菜单-->
+    <string name="str_uu_application">UU应用</string>
+    <string name="str_work_subscribe_secretary">预约小秘书</string>
+    <string name="str_work_uu_sports">UU运动</string>
+
+    <string name="str_administrative_office">行政办公</string>
+    <string name="str_work_work_approval">我的审批</string>
+    <string name="str_work_backlog">待办工作</string>
+    <string name="str_work_work_calendar">工作日历</string>
+    <string name="str_work_work_report">工作汇报</string>
+    <string name="str_work_punch_clock">打卡签到</string>
+    <string name="str_work_outwork_sign">外勤签到</string>
+    <string name="str_work_attendance_statistics">考勤统计</string>
+    <string name="str_work_overtime_request">加班申请</string>
+    <string name="str_work_leave_request">请假申请</string>
+    <string name="str_work_travel_request">出差申请</string>
+    <string name="str_work_expense_account">费用报销</string>
+    <string name="str_work_meeting_manage">会议管理</string>
+
+    <string name="str_customer_relationship">客户关系管理</string>
+    <string name="str_work_business_manage">商机管理</string>
+    <string name="str_work_customer_manage">客户管理</string>
+    <string name="str_work_customer_visit">客户拜访</string>
+    <string name="str_work_sales_data">销售看板</string>
+    <string name="str_work_honor_rank">荣誉墙</string>
+
+    <string name="str_enterprise_application">企业应用</string>
+    <string name="str_work_data_inquiry">数据查询</string>
+    <string name="str_work_report_statistics">报表统计</string>
+    <string name="str_work_real_time_subs">实时看板</string>
+    <string name="str_work_subs_manage">订阅号管理</string>
+    <string name="str_work_salary_bill">企业工资条</string>
+
+    <string name="str_usoft_cloud_platform">优软云平台</string>
+    <string name="str_work_b2b_commerce">B2B商务</string>
+    <string name="str_work_usoft_mall">优软商城</string>
+    <!--工作台菜单-->
+
 </resources>

+ 4 - 0
app_modular/appme/src/main/java/com/uas/appme/settings/activity/BRestActivity.java

@@ -145,6 +145,10 @@ public class BRestActivity extends BaseActivity implements BRestAdapter.OnItemCl
 
 	@Override
 	public void onClick(View v) {
+		if (!CommonUtil.isNetWorkConnected(ct)) {
+			ToastMessage(getString(R.string.common_notlinknet));
+			return;
+		}
 		if (v.getId() == R.id.saveBtn) {
 			submitSave();
 		}else if (v.getId() == R.id.deleteBtn){

+ 8 - 0
app_modular/appme/src/main/java/com/uas/appme/settings/activity/CheckWagesActivity.java

@@ -76,6 +76,7 @@ public class CheckWagesActivity extends BaseActivity implements View.OnClickList
                     seconds_tv.setVisibility(View.INVISIBLE);
                     mWagesCodeBtn.setVisibility(View.VISIBLE);
                     isRun = false;
+                    SecondT = 59;
                 }
                 Log.i("HttpLogs",SecondT+"");
             }
@@ -239,6 +240,10 @@ public class CheckWagesActivity extends BaseActivity implements View.OnClickList
                 ToastMessage("请输入查询密码");
                 return;
             }
+            if (!CommonUtil.isNetWorkConnected(ct)){
+                ToastMessage(getString(R.string.common_notlinknet));
+                return;
+            }
             searchWage();
         }else if (id == R.id.cancel_tv){
             popupWindow.dismiss();
@@ -315,8 +320,11 @@ public class CheckWagesActivity extends BaseActivity implements View.OnClickList
                             .putExtra("checkYear",checkYear)
                             .putExtra("checkMonth",checkMonth)
                             .putExtra("WageDatas",o.toString()));
+                    finish();
                 }else if (o.toString().contains("reason")){
                     ToastMessage(JSON.parseObject(o.toString()).getString("reason"));
+                }else if (o.toString().contains("exceptionInfo")){
+                    ToastMessage(JSON.parseObject(o.toString()).getString("exceptionInfo"));
                 }
 
             }

+ 128 - 6
app_modular/appme/src/main/java/com/uas/appme/settings/activity/WagesDetailsActivity.java

@@ -1,15 +1,21 @@
 package com.uas.appme.settings.activity;
 
+import android.app.Activity;
 import android.graphics.Bitmap;
 import android.graphics.BitmapFactory;
 import android.os.Bundle;
 import android.os.Environment;
 import android.os.Handler;
+import android.util.DisplayMetrics;
 import android.util.Log;
 import android.view.Gravity;
 import android.view.LayoutInflater;
+import android.view.Menu;
+import android.view.MenuItem;
 import android.view.View;
+import android.view.WindowManager;
 import android.widget.Button;
+import android.widget.EditText;
 import android.widget.ImageView;
 import android.widget.LinearLayout;
 import android.widget.PopupWindow;
@@ -70,6 +76,8 @@ public class WagesDetailsActivity extends BaseActivity implements View.OnClickLi
     private ImageView clear_im;
     private String master;
     private String emcode;
+    private EditText msg_et;
+    private ImageView received_im;
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
@@ -106,15 +114,23 @@ public class WagesDetailsActivity extends BaseActivity implements View.OnClickLi
                             LogUtil.prinlnLongMsg("fanglh",JSON.toJSONString(kvModeList));
                         }
                     }
-                }else
-                    mEmptyLayout.showEmpty();
-            }else
-                mEmptyLayout.showEmpty();
+                }else{
+                   showEnty();
+                }
+            }else{
+                showEnty();
+            }
+
         } catch (Exception e) {
             e.printStackTrace();
         }
     }
 
+    private void showEnty() {
+        received_im.setVisibility(View.GONE);
+        mEmptyLayout.showEmpty();
+    }
+
     private EmptyLayout mEmptyLayout;
     private void initView() {
         //        emcode = MyApplication.getInstance().getLoginUserId();
@@ -138,6 +154,7 @@ public class WagesDetailsActivity extends BaseActivity implements View.OnClickLi
         mEmptyLayout.setShowEmptyButton(false);
         mEmptyLayout.setShowErrorButton(false);
         mEmptyLayout.setShowLoadingButton(false);
+        received_im = (ImageView) findViewById(R.id.received_im);
 //        findViewById(R.id.h_sign_tv).setOnClickListener(this);
 
         String result = getIntent().getStringExtra("WageDatas");
@@ -185,9 +202,46 @@ public class WagesDetailsActivity extends BaseActivity implements View.OnClickLi
             }else {
                 Toast.makeText(this,"您没有签名~", Toast.LENGTH_SHORT).show();
             }
+        }else if (v.getId() == R.id.sure_tv){
+            if (StringUtil.isEmpty(msg_et.getText().toString())){
+                ToastMessage("请输入你的问题");
+                return;
+            }
+            if (!CommonUtil.isNetWorkConnected(ct)){
+                ToastMessage(getString(R.string.common_notlinknet));
+                return;
+            }
+            doErrorMsgHandle();
+        }else if (v.getId() == R.id.cancel1_tv){
+            popupWindow.dismiss();
         }
     }
 
+    private void doErrorMsgHandle() {
+//        HttpClient httpClient = new HttpClient.Builder(Constants.IM_BASE_URL()).isDebug(true).build(true);
+        HttpClient httpClient = new HttpClient.Builder("http://192.168.253.58:8080/ERP/").isDebug(true).build(true);
+        httpClient.Api().send(new HttpClient.Builder()
+                .url("mobile/salary/salaryWrong.action")
+                .add("sl_id",sl_id)
+                .add("emcode",emcode)
+                .add("msg",msg_et.getText().toString())
+                .add("result",true)
+                .add("master", master)
+                .method(Method.POST)
+                .build(),new ResultSubscriber<>(new ResultListener<Object>() {
+            @Override
+            public void onResponse(Object o) {
+                if (!JSONUtil.validate(o.toString()) || o == null) return;
+                LogUtil.prinlnLongMsg("salaryWrong", o.toString()+"");
+                if (o.toString().contains("success") && JSON.parseObject(o.toString()).getBoolean("success")){
+                    ToastMessage("你的问题已提交");
+                    popupWindow.dismiss();
+                }
+
+            }
+        }));
+    }
+
     private void doNewSubmit(Bitmap pathBm, String plainpath) {
         String url = "http://192.168.253.58:8080/ERP/"+"mobile/salary/salaryBack.action";
         byte[] ppp = getBitmapByte(pathBm);
@@ -211,11 +265,10 @@ public class WagesDetailsActivity extends BaseActivity implements View.OnClickLi
                 ViewUtil.ToastMessage(ct, getString(R.string.Uploaded_successfully));
                 Log.i("doNewSubmit",JSON.parseObject(responseInfo.result).toJSONString());
                 if (JSONUtil.validate(responseInfo.result) && JSON.parseObject(responseInfo.result).getBoolean("success")) {
-                    Toast.makeText(ct,"提交成功",Toast.LENGTH_LONG).show();
+                    Toast.makeText(ct,"工资条签名提交成功",Toast.LENGTH_LONG).show();
                     closePopupWindow();
                 }
                 progressDialog.dismiss();
-                Toast.makeText(ct,getString(R.string.fangkui_success),Toast.LENGTH_LONG).show();
                 new Handler().postDelayed(new Runnable() {
                     @Override
                     public void run() {
@@ -305,4 +358,73 @@ public class WagesDetailsActivity extends BaseActivity implements View.OnClickLi
             setWindow.dismiss();
         DisplayUtil.backgroundAlpha(this, 1f);
     }
+
+    @Override
+    public boolean onCreateOptionsMenu(Menu menu) {
+        getMenuInflater().inflate(R.menu.wage_error, menu);
+        return super.onCreateOptionsMenu(menu);
+    }
+
+    @Override
+    public boolean onOptionsItemSelected(MenuItem item) {
+        if (item.getItemId() == R.id.wage_error){
+           showErrorWindow();
+        }
+        return super.onOptionsItemSelected(item);
+    }
+
+    private PopupWindow popupWindow;
+    private void showErrorWindow() {
+
+        // 一个自定义的布局,作为显示的内容
+        View contentView = LayoutInflater.from(ct).inflate(
+                R.layout.input_error_msg, null);
+
+        // 设置按钮的点击事件
+        msg_et = (EditText) contentView.findViewById(R.id.msg_et);
+        contentView.findViewById(R.id.cancel1_tv).setOnClickListener(this);
+        contentView.findViewById(R.id.sure_tv).setOnClickListener(this);
+
+        DisplayMetrics dm = getResources().getDisplayMetrics();
+        int w_screen = dm.widthPixels;
+        int h_screen = dm.heightPixels;
+        w_screen = DisplayUtil.dip2px(this, 300);
+        h_screen = DisplayUtil.dip2px(this, 300);
+
+        popupWindow = new PopupWindow(contentView, w_screen, h_screen, true);
+        popupWindow.setTouchable(true);
+        popupWindow.setOutsideTouchable(false);
+        // 如果不设置PopupWindow的背景,无论是点击外部区域还是Back键都无法dismiss弹框
+        popupWindow.setBackgroundDrawable(getResources().getDrawable(com.uas.appworks.R.drawable.pop_round_bg));
+        // 设置好参数之后再show
+        popupWindow.showAtLocation(contentView, Gravity.CENTER, 0, 0);
+        setbg(0.4f);
+    }
+    private void setbg(float alpha) {
+        setBackgroundAlpha(this, alpha);
+        if (popupWindow == null) return;
+        popupWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {
+            @Override
+            public void onDismiss() {
+                setBackgroundAlpha(WagesDetailsActivity.this, 1f);
+            }
+        });
+    }
+    /**
+     * 设置页面的透明度
+     * 兼容华为手机(在个别华为手机上 设置透明度会不成功)
+     *
+     * @param bgAlpha 透明度   1表示不透明
+     */
+    public void setBackgroundAlpha(Activity activity, float bgAlpha) {
+        WindowManager.LayoutParams lp = activity.getWindow().getAttributes();
+        lp.alpha = bgAlpha;
+        if (bgAlpha == 1) {
+            activity.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);//不移除该Flag的话,在有视频的页面上的视频会出现黑屏的bug
+        } else {
+            activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);//此行代码主要是解决在华为手机上半透明效果无效的bug
+        }
+        activity.getWindow().setAttributes(lp);
+    }
+
 }

+ 15 - 16
app_modular/appme/src/main/res/layout/sigature_pop.xml

@@ -40,12 +40,14 @@
             android:visibility="gone"/>
 
         <RelativeLayout
+            android:id="@+id/s_rl"
             android:layout_width="match_parent"
             android:layout_height="300dp"
             android:layout_alignParentTop="true"
             android:layout_centerHorizontal="true"
-            android:layout_marginTop="20dp"
-            android:background="@color/white">
+            android:layout_marginTop="30dp"
+            android:background="@color/white"
+            >
 
             <Button
                 android:id="@+id/hscreen_btn"
@@ -85,23 +87,20 @@
                 android:layout_gravity="center_horizontal"
                 android:background="@color/white" />
 
+
         </RelativeLayout>
+
+        <TextView
+            android:layout_below="@+id/s_rl"
+            android:gravity="center"
+            android:background="@color/white"
+            android:text="签名区域"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:padding="10dp"
+            android:layout_marginRight="10dp"/>
     </RelativeLayout>
-    <View
-        android:layout_marginTop="5dp"
-        android:layout_width="match_parent"
-        android:layout_height="2px"
-        android:background="@color/item_line" />
 
-    <TextView
-        android:gravity="center"
-        android:background="@color/white"
-        android:text="签名区域"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:padding="10dp"
-        android:layout_marginLeft="10dp"
-        android:layout_marginRight="10dp"/>
     <Button
         android:id="@+id/submit_btn"
         android:layout_width="match_parent"

+ 23 - 9
app_modular/appme/src/main/res/layout/wages_details_activity.xml

@@ -5,8 +5,7 @@
     android:orientation="vertical">
     <TextView
         android:background="@color/white"
-        android:paddingLeft="10dp"
-        android:paddingRight="10dp"
+        android:padding="10dp"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:text="公告:本月工资发放内容包括了上个月的餐补,请大家查看明细"/>
@@ -26,14 +25,29 @@
             android:layout_height="wrap_content"
             android:orientation="vertical">
 
-            <com.core.widget.MyListView
-
-                android:id="@+id/wages_lv"
+            <RelativeLayout
                 android:layout_width="match_parent"
-                android:layout_height="match_parent"
-                android:padding="10dp"
-                android:background="@color/white">
-            </com.core.widget.MyListView>
+                android:layout_height="wrap_content">
+
+                <com.core.widget.MyListView
+
+                    android:id="@+id/wages_lv"
+                    android:layout_width="match_parent"
+                    android:layout_height="match_parent"
+                    android:padding="10dp"
+                    android:background="@color/white">
+                </com.core.widget.MyListView>
+                <ImageView
+                    android:id="@+id/received_im"
+                    android:layout_alignBottom="@+id/wages_lv"
+                    android:layout_alignRight="@+id/wages_lv"
+                    android:layout_width="100dp"
+                    android:layout_height="100dp"
+                    android:src="@drawable/received"
+                    android:layout_margin="30dp"
+                    />
+            </RelativeLayout>
+
             <LinearLayout
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"

BIN
app_modular/apputils/libs/alipaySdk-20170922.jar


+ 1 - 1
app_modular/apputils/src/main/java/com/modular/apputils/utils/SwitchUtil.java

@@ -9,7 +9,7 @@ import com.common.config.BaseConfig;
 public class SwitchUtil {
 
     public static boolean showYiyuanjuan() {
-        return BaseConfig.isDebug()&&false;
+        return BaseConfig.isDebug() && false;
     }
 
     public static boolean showShebeiguanli() {

+ 11 - 12
app_modular/apputils/src/main/java/com/modular/apputils/utils/playsdk/AliPlay.java

@@ -7,7 +7,6 @@ import android.os.Looper;
 import android.os.Message;
 import android.text.TextUtils;
 
-import com.alipay.sdk.app.PayTask;
 import com.common.LogUtil;
 import com.common.thread.ThreadPool;
 import com.modular.apputils.listener.OnPlayListener;
@@ -91,16 +90,16 @@ public class AliPlay extends Handler {
     }
 
     private void payThread(Activity ct,  String orderInfo,  OnPlayListener onPlayListener) throws Exception {
-        PayTask alipay = new PayTask(ct);
-        LogUtil.i("orderInfo=" + orderInfo);
-        Map<String, String> result = alipay.payV2(orderInfo, true);
-        LogUtil.i(result.toString());
-        Message msg = new Message();
-        Bundle bundle = new Bundle();
-        bundle.putSerializable("onPlayListener", onPlayListener);
-        msg.setData(bundle);
-        msg.what = SDK_PAY_FLAG;
-        msg.obj = result;
-        sendMessage(msg);
+//        PayTask alipay = new PayTask(ct);
+//        LogUtil.i("orderInfo=" + orderInfo);
+//        Map<String, String> result = alipay.payV2(orderInfo, true);
+//        LogUtil.i(result.toString());
+//        Message msg = new Message();
+//        Bundle bundle = new Bundle();
+//        bundle.putSerializable("onPlayListener", onPlayListener);
+//        msg.setData(bundle);
+//        msg.what = SDK_PAY_FLAG;
+//        msg.obj = result;
+//        sendMessage(msg);
     }
 }

+ 21 - 12
app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/CustomerListActivity.java

@@ -35,6 +35,7 @@ import com.core.model.Employees;
 import com.core.model.EmployeesEntity;
 import com.core.net.http.ViewUtil;
 import com.core.utils.CommonUtil;
+import com.core.utils.ToastUtil;
 import com.core.utils.helper.AvatarHelper;
 import com.core.widget.EmptyLayout;
 import com.handmark.pulltorefresh.library.PullToRefreshBase;
@@ -87,7 +88,7 @@ public class CustomerListActivity extends BaseActivity implements View.OnClickLi
         initListener();
     }
 
-    private void initIds(){
+    private void initIds() {
 
         iv_head = (ImageView) findViewById(R.id.iv_head);
         tv_change = (TextView) findViewById(R.id.tv_change);
@@ -105,7 +106,11 @@ public class CustomerListActivity extends BaseActivity implements View.OnClickLi
         ct = this;
         getSupportActionBar().setTitle(getString(R.string.crmmain_client));
 
-        loadParams(3);
+        if (CommonUtil.isNetWorkConnected(ct)) {
+            loadParams(3);
+        } else {
+            ToastUtil.showToast(ct, R.string.networks_out);
+        }
 
         mAdapter = new BussinessDetailAdapter(ct, jsonArray);
         mlist.setAdapter(mAdapter);
@@ -155,14 +160,18 @@ public class CustomerListActivity extends BaseActivity implements View.OnClickLi
 
 
     public void changeOnChange(View v) {
-       if (v.getId() == R.id.tv_change){
-           showPopupWindow(v);
-       }
+        if (v.getId() == R.id.tv_change) {
+            showPopupWindow(v);
+        }
     }
 
     private void initData() {
         em_code = CommonUtil.getSharedPreferences(ct, "erp_username");
-        sendHttpResquest(Constants.HTTP_SUCCESS_INIT, kind, page, 0, "");
+        if (CommonUtil.isNetWorkConnected(ct)) {
+            sendHttpResquest(Constants.HTTP_SUCCESS_INIT, kind, page, 0, "");
+        } else {
+            ToastUtil.showToast(ct, R.string.networks_out);
+        }
         dbManager = new DBManager(ct);
         List<EmployeesEntity> db = dbManager.select_getEmployee(
                 new String[]{CommonUtil.getSharedPreferences(ct, "erp_master"),
@@ -195,15 +204,15 @@ public class CustomerListActivity extends BaseActivity implements View.OnClickLi
 
     @Override
     public boolean onOptionsItemSelected(MenuItem item) {
-        if (item.getItemId() == R.id.crm_data_add){
+        if (item.getItemId() == R.id.crm_data_add) {
             if (falg == 0) {
                 startActivity(new Intent(ct, CustomerAddActivity.class).putExtra("type", 1));//正式
             } else {
                 startActivity(new Intent(ct, CustomerAddActivity.class).putExtra("type", 0));//预录
             }
-        }else if (item.getItemId() == R.id.crm_data_find){
+        } else if (item.getItemId() == R.id.crm_data_find) {
             startActivity(new Intent(ct, CustomerListSelectActivity.class));
-        }else if (item.getItemId() == android.R.id.home){
+        } else if (item.getItemId() == android.R.id.home) {
             onBackPressed();
         }
         return true;
@@ -211,7 +220,7 @@ public class CustomerListActivity extends BaseActivity implements View.OnClickLi
 
     @Override
     public void onClick(View v) {
-        if (v.getId() == R.id.tv_count_unend){
+        if (v.getId() == R.id.tv_count_unend) {
             tv_count_total.setSelected(false);
             tv_count_end.setSelected(false);
             tv_count_unend.setSelected(true);
@@ -220,7 +229,7 @@ public class CustomerListActivity extends BaseActivity implements View.OnClickLi
 //                Crouton.makeText(this,"切换成功", 0xffff8888, 10000).show();
             page = 1;
             sendHttpResquest(Constants.HTTP_SUCCESS_INIT, kind, page, 0, "");
-        }else if (v.getId() == R.id.tv_count_end){
+        } else if (v.getId() == R.id.tv_count_end) {
             tv_count_total.setSelected(false);
             tv_count_end.setSelected(true);
             tv_count_unend.setSelected(false);
@@ -229,7 +238,7 @@ public class CustomerListActivity extends BaseActivity implements View.OnClickLi
             jsonArray.clear();
 //                Crouton.makeText(this,"切换成功", Style.CONFIRM).show();
             sendHttpResquest(Constants.HTTP_SUCCESS_INIT, kind, page, 0, "");
-        }else if (v.getId() == R.id.tv_count_total){
+        } else if (v.getId() == R.id.tv_count_total) {
             tv_count_total.setSelected(true);
             tv_count_end.setSelected(false);
             tv_count_unend.setSelected(false);

+ 71 - 64
app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/SalesRankingActivity.java

@@ -22,6 +22,7 @@ import com.core.app.Constants;
 import com.core.base.BaseActivity;
 import com.core.net.http.ViewUtil;
 import com.core.utils.CommonUtil;
+import com.core.utils.ToastUtil;
 import com.core.utils.helper.AvatarHelper;
 import com.core.utils.time.wheel.DatePicker;
 import com.handmark.pulltorefresh.library.PullToRefreshBase;
@@ -44,13 +45,15 @@ import static com.uas.appworks.R.id.list_business;
  * @param:
  * @return:
  */
-public class SalesRankingActivity extends BaseActivity {
+public class
+SalesRankingActivity extends BaseActivity {
     private BussinessDetailAdapter mAdapter;
     private TextView tv_date_title;
     private PullToRefreshGridView mlist;
     private TextView tv_msg;
     private ArrayList<Business> mData = new ArrayList<Business>();
     private Context ct;
+
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
@@ -64,12 +67,16 @@ public class SalesRankingActivity extends BaseActivity {
     private void initListener() {
         mlist.setEnabled(false);
         mlist.setMode(PullToRefreshBase.Mode.DISABLED);
-     
+
     }
 
     private void initData() {
-        sendHttpResquest(Constants.HTTP_SUCCESS_INIT,DateFormatUtil.getStrDate4Date(new Date(),
-                "yyyyMM"));
+        if (CommonUtil.isNetWorkConnected(ct)) {
+            sendHttpResquest(Constants.HTTP_SUCCESS_INIT, DateFormatUtil.getStrDate4Date(new Date(),
+                    "yyyyMM"));
+        } else {
+            ToastUtil.showToast(ct, R.string.networks_out);
+        }
         for (int i = 0; i < 22; i++) {
             Business model = new Business();
             model.setNum("013223" + i);
@@ -90,8 +97,8 @@ public class SalesRankingActivity extends BaseActivity {
         mlist = (PullToRefreshGridView) findViewById(list_business);
         tv_msg = (TextView) findViewById(R.id.tv_msg);
 
-        tv_date_title.setText(DateFormatUtil.getStrDate4Date(new Date(),"yyyy年MM月")+getString(R.string.crmmain_wall_of_fame));
-       
+        tv_date_title.setText(DateFormatUtil.getStrDate4Date(new Date(), "yyyy年MM月") + getString(R.string.crmmain_wall_of_fame));
+
     }
 
 
@@ -100,16 +107,17 @@ public class SalesRankingActivity extends BaseActivity {
         getMenuInflater().inflate(R.menu.main_sale_ranking, menu);
         return true;
     }
+
     /**
-      * @desc:日历类
-      * @author:Arison on 2016/8/1
-      */
+     * @desc:日历类
+     * @author:Arison on 2016/8/1
+     */
     private Calendar calendar = Calendar.getInstance();
 
     @Override
     public boolean onOptionsItemSelected(MenuItem item) {
-        if (item.getItemId() ==  R.id.sale_date_select){
-            DatePicker picker = new DatePicker(this,DatePicker.YEAR_MONTH);
+        if (item.getItemId() == R.id.sale_date_select) {
+            DatePicker picker = new DatePicker(this, DatePicker.YEAR_MONTH);
             picker.setRange(1950, 2030);
             picker.setAnimationStyle(R.style.Animation_CustomPopup);
             picker.setSelectedItem(
@@ -118,13 +126,13 @@ public class SalesRankingActivity extends BaseActivity {
             picker.setOnDatePickListener(new DatePicker.OnYearMonthPickListener() {
                 @Override
                 public void onDatePicked(String year, String month) {
-                    sendHttpResquest(Constants.HTTP_SUCCESS_INIT,year+month);
-                    tv_date_title.setText(year+getString(R.string.shorthand_year)+month+getString(R.string.sShorthand_month)
-                            +getString(R.string.crmmain_wall_of_fame));
+                    sendHttpResquest(Constants.HTTP_SUCCESS_INIT, year + month);
+                    tv_date_title.setText(year + getString(R.string.shorthand_year) + month + getString(R.string.sShorthand_month)
+                            + getString(R.string.crmmain_wall_of_fame));
                 }
             });
             picker.show();
-        }else if (item.getItemId() == android.R.id.home){
+        } else if (item.getItemId() == android.R.id.home) {
             onBackPressed();
         }
         return true;
@@ -143,7 +151,7 @@ public class SalesRankingActivity extends BaseActivity {
 
         @Override
         public int getCount() {
-            return mdata==null?0:mdata.size();
+            return mdata == null ? 0 : mdata.size();
         }
 
         @Override
@@ -162,19 +170,19 @@ public class SalesRankingActivity extends BaseActivity {
             if (convertView == null) {
                 convertView = inflater.inflate(R.layout.item_sale_ranking, null);
                 holder = new ViewHolder();
-                holder.tv_money= (TextView) convertView.findViewById(R.id.tv_sale_num);
-                holder.tv_name= (TextView) convertView.findViewById(R.id.tv_sale_name);
-                holder.tv_depart= (TextView) convertView.findViewById(R.id.tv_sale_dep);
-                holder.iv_head=(ImageView)convertView.findViewById(R.id.iv_sale_head);
-                holder.tv_desc=(TextView)convertView.findViewById(R.id.tv_sale_desc);
+                holder.tv_money = (TextView) convertView.findViewById(R.id.tv_sale_num);
+                holder.tv_name = (TextView) convertView.findViewById(R.id.tv_sale_name);
+                holder.tv_depart = (TextView) convertView.findViewById(R.id.tv_sale_dep);
+                holder.iv_head = (ImageView) convertView.findViewById(R.id.iv_sale_head);
+                holder.tv_desc = (TextView) convertView.findViewById(R.id.tv_sale_desc);
                 convertView.setTag(holder);
             } else {
                 holder = (ViewHolder) convertView.getTag();
             }
             holder.tv_name.setText(mdata.getJSONObject(position).getString("name"));
-            holder.tv_money.setText(mdata.getJSONObject(position).getFloatValue("id")+"万元");
+            holder.tv_money.setText(mdata.getJSONObject(position).getFloatValue("id") + "万元");
             holder.tv_depart.setText(mdata.getJSONObject(position).getString("position")
-            +"\n"+mdata.getJSONObject(position).getString("depart"));
+                    + "\n" + mdata.getJSONObject(position).getString("depart"));
             holder.tv_desc.setText(mdata.getJSONObject(position).getString("desc"));
             AvatarHelper.getInstance().display(
                     mdata.getJSONObject(position).getString("imId")
@@ -193,45 +201,44 @@ public class SalesRankingActivity extends BaseActivity {
     }
 
 
-
-    private Handler mHandler=new Handler(){
+    private Handler mHandler = new Handler() {
         @Override
         public void handleMessage(Message msg) {
-            switch (msg.what){
+            switch (msg.what) {
                 case Constants.HTTP_SUCCESS_INIT:
                     progressDialog.dismiss();
                     Log.i(TAG, "handleMessage:" + msg.getData().getString("result"));
-                    JSONObject ranklist= JSON.parseObject(msg.getData().getString("result")).getJSONObject("ranklist");
-                    JSONArray sales =ranklist.getJSONArray("sales");
-                    JSONArray profits =ranklist.getJSONArray("profits");
-                    if (sales!=null&&profits!=null){
-                        JSONArray rootArray=new JSONArray();
-                        JSONObject s=new JSONObject();
-                        JSONObject p=new JSONObject();
-                        
-                        float s_id=sales.getFloatValue(0);
-                        String s_name=sales.getString(1);
-                        String s_position=sales.getString(2);
-                        String s_depart=sales.getString(3);
-                        int s_imid=sales.getIntValue(4);
-                        s.put("id",s_id);
-                        s.put("name",s_name);
-                        s.put("position",s_position);
-                        s.put("depart",s_depart);
-                        s.put("imId",s_imid);
-                        s.put("desc","销售总额冠军");
-                        
-                        float p_id=profits.getFloatValue(0);
-                        String p_name=profits.getString(1);
-                        String p_position=profits.getString(2);
-                        String p_depart=profits.getString(3);
-                        int p_imid=profits.getIntValue(4);
-                        p.put("id",p_id);
-                        p.put("name",p_name);
-                        p.put("position",p_position);
-                        p.put("depart",p_depart);
+                    JSONObject ranklist = JSON.parseObject(msg.getData().getString("result")).getJSONObject("ranklist");
+                    JSONArray sales = ranklist.getJSONArray("sales");
+                    JSONArray profits = ranklist.getJSONArray("profits");
+                    if (sales != null && profits != null) {
+                        JSONArray rootArray = new JSONArray();
+                        JSONObject s = new JSONObject();
+                        JSONObject p = new JSONObject();
+
+                        float s_id = sales.getFloatValue(0);
+                        String s_name = sales.getString(1);
+                        String s_position = sales.getString(2);
+                        String s_depart = sales.getString(3);
+                        int s_imid = sales.getIntValue(4);
+                        s.put("id", s_id);
+                        s.put("name", s_name);
+                        s.put("position", s_position);
+                        s.put("depart", s_depart);
+                        s.put("imId", s_imid);
+                        s.put("desc", "销售总额冠军");
+
+                        float p_id = profits.getFloatValue(0);
+                        String p_name = profits.getString(1);
+                        String p_position = profits.getString(2);
+                        String p_depart = profits.getString(3);
+                        int p_imid = profits.getIntValue(4);
+                        p.put("id", p_id);
+                        p.put("name", p_name);
+                        p.put("position", p_position);
+                        p.put("depart", p_depart);
                         p.put("imId", p_imid);
-                        p.put("desc","毛利润冠军");
+                        p.put("desc", "毛利润冠军");
                         rootArray.add(0, s);
                         rootArray.add(1, p);
 
@@ -239,12 +246,12 @@ public class SalesRankingActivity extends BaseActivity {
                         mlist.setAdapter(mAdapter);
                         mlist.setVisibility(View.VISIBLE);
                         tv_msg.setVisibility(View.GONE);
-                    }else{
+                    } else {
                         //空数据处理
-                        JSONArray rootArray=new JSONArray();
+                        JSONArray rootArray = new JSONArray();
                         mAdapter = new BussinessDetailAdapter(ct, rootArray);
                         mlist.setAdapter(mAdapter);
-                        
+
                         mlist.setVisibility(View.GONE);
                         tv_msg.setText(getString(R.string.crm_nodatas));
                         tv_msg.setVisibility(View.VISIBLE);
@@ -259,12 +266,12 @@ public class SalesRankingActivity extends BaseActivity {
         }
     };
 
-    private void sendHttpResquest(int what,String date){
+    private void sendHttpResquest(int what, String date) {
         progressDialog.show();
-        String url= CommonUtil.getAppBaseUrl(ct)+"mobile/crm/getRankList.action";
-        Map<String,Object> params=new HashMap<>();
-        params.put("condition", "and to_char(pi_date,'yyyymm')="+ date);
-        LinkedHashMap<String , Object> headers=new LinkedHashMap<>();
+        String url = CommonUtil.getAppBaseUrl(ct) + "mobile/crm/getRankList.action";
+        Map<String, Object> params = new HashMap<>();
+        params.put("condition", "and to_char(pi_date,'yyyymm')=" + date);
+        LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
         headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
         ViewUtil.httpSendRequest(ct, url, params, mHandler, headers, what, null, null, "post");
     }

+ 8 - 2
app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/TaskAddErpActivity.java

@@ -28,6 +28,7 @@ import com.core.model.SelectEmUser;
 import com.core.net.http.ViewUtil;
 import com.core.utils.CommonUtil;
 import com.core.utils.RecognizerDialogUtil;
+import com.core.utils.ToastUtil;
 import com.core.utils.time.wheel.DateTimePicker;
 import com.core.widget.view.selectcalendar.SelectCalendarActivity;
 import com.core.xmpp.utils.audio.voicerecognition.JsonParser;
@@ -247,9 +248,14 @@ public class TaskAddErpActivity extends BaseActivity implements View.OnClickList
         if (item.getItemId() == android.R.id.home) {
             onBackPressed();
         } else if (item.getItemId() == R.id.save) {
-            if (save == 0 && MyApplication.getInstance().isNetworkActive()) {
-                dosaveJudge();
+            if (MyApplication.getInstance().isNetworkActive()) {
+                if (save == 0) {
+                    dosaveJudge();
+                }
+            } else {
+                ToastUtil.showToast(ct, R.string.networks_out);
             }
+
         }
         return true;
     }

+ 6 - 6
app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/presenter/MissionPresenter.java

@@ -219,7 +219,7 @@ public class MissionPresenter implements IMissionPresenter, OnHttpResultListener
         String name = CommonUtil.getName();
         /***formStore***/
         if (!isB2b) {
-//            formStore.put("mp_id", "");//请求的id MOBILE_OUTPLAN_SEQ
+            formStore.put("mp_id", id);//请求的id MOBILE_OUTPLAN_SEQ
             formStore.put("mp_code", code);//code MOBILE_OUTPLAN_SEQ
         }
         formStore.put("mp_visittime", TimeUtils.f_long_2_str(System.currentTimeMillis()));
@@ -248,8 +248,8 @@ public class MissionPresenter implements IMissionPresenter, OnHttpResultListener
         params.put("mpd_remark", StringUtil.toHttpString(entity.getRemark()));
         params.put("mpd_distance", BaiduMapUtil.getInstence().getDistance(entity.getLatLng()));
         params.put("mpd_arrivedate", entity.getVisitTime());
-//        if (!isB2b)
-//            params.put("mpd_mpid", "");
+        if (!isB2b)
+            params.put("mpd_mpid", id);
         params.put("mpd_company", entity.getCompanyName());
         params.put("mpd_address", entity.getCompanyAddr());
         param.put("caller", "lp");
@@ -514,10 +514,10 @@ public class MissionPresenter implements IMissionPresenter, OnHttpResultListener
                         if (isJSON && JSON.parseObject(message).getBoolean("success")) {
                             int mpd_id = JSON.parseObject(message).getIntValue("mpd_id");
                             int id = 0;
-                            if (bundle != null) {
+                            if (bundle != null)
                                 id = bundle.getInt("id");
-                            }
-                            id = JSON.parseObject(message).getIntValue("mp_id");
+                            if (id == 0)
+                                id = JSON.parseObject(message).getIntValue("mp_id") - 1;
                             MissionModel entity = bundle.getParcelable("data");
                             if (mpd_id != 0 && entity != null) {//保存数据库
                                 entity.setId(mpd_id);

+ 15 - 2
app_modular/appworks/src/main/java/com/uas/appworks/adapter/WorkFuncSetChildAdapter.java

@@ -54,12 +54,25 @@ public class WorkFuncSetChildAdapter extends RecyclerView.Adapter<WorkFuncSetChi
 
     @Override
     public void onBindViewHolder(final ChildViewHolder holder, final int position) {
-        holder.mTextView.setText(mModuleListBeans.get(position).getMenuName());
+        if (mModuleListBeans.get(position).isLocalMenu()) {
+            try {
+                holder.mTextView.setText(mResources.getIdentifier(mModuleListBeans.get(position).getMenuName(), "string", mContext.getPackageName()));
+            } catch (Exception e) {
+                holder.mTextView.setText(mModuleListBeans.get(position).getMenuName());
+            }
+        } else {
+            holder.mTextView.setText(mModuleListBeans.get(position).getMenuName());
+        }
+
         if (TextUtils.isEmpty(mModuleListBeans.get(position).getMenuIcon())) {
             holder.mImageView.setImageResource(R.drawable.defaultpic);
         } else {
             if (mModuleListBeans.get(position).isLocalMenu()) {
-                holder.mImageView.setImageResource(mResources.getIdentifier(mModuleListBeans.get(position).getMenuIcon(), "drawable", mContext.getPackageName()));
+                try {
+                    holder.mImageView.setImageResource(mResources.getIdentifier(mModuleListBeans.get(position).getMenuIcon(), "drawable", mContext.getPackageName()));
+                } catch (Exception e) {
+                    holder.mImageView.setImageResource(R.drawable.defaultpic);
+                }
             } else {
                 ImageLoaderUtil.getInstance().loadImage(mModuleListBeans.get(position).getMenuIcon(), holder.mImageView);
             }

+ 9 - 4
app_modular/appworks/src/main/java/com/uas/appworks/adapter/WorkFuncSetParentAdapter.java

@@ -7,13 +7,11 @@ import android.os.Build;
 import android.support.v7.widget.GridLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.support.v7.widget.helper.ItemTouchHelper;
-import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.TextView;
 
-import com.core.widget.RecyclerViewGridDivider;
 import com.uas.appworks.R;
 import com.uas.appworks.model.bean.WorkMenuBean;
 
@@ -52,10 +50,17 @@ public class WorkFuncSetParentAdapter extends RecyclerView.Adapter<WorkFuncSetPa
 
     @Override
     public void onBindViewHolder(final ParentViewHolder holder, final int position) {
-        Log.d("ParentAdapter", "onBindViewHolder");
         holder.setIsRecyclable(false);
         WorkMenuBean workMenuBean = mWorkMenuBeans.get(position);
-        holder.titleTextView.setText(workMenuBean.getModuleName());
+        if (workMenuBean.isLocalModule()) {
+            try {
+                holder.titleTextView.setText(mResources.getIdentifier(workMenuBean.getModuleName(), "string", mContext.getPackageName()));
+            } catch (Exception e) {
+                holder.titleTextView.setText(workMenuBean.getModuleName());
+            }
+        } else {
+            holder.titleTextView.setText(workMenuBean.getModuleName());
+        }
         final List<WorkMenuBean.ModuleListBean> mModuleListBeans = workMenuBean.getModuleList();
         final WorkFuncSetChildAdapter mChildAdapter = new WorkFuncSetChildAdapter(mContext, mModuleListBeans);
         GridLayoutManager gridLayoutManager = new GridLayoutManager(mContext, 4);

+ 12 - 1
app_modular/appworks/src/main/java/com/uas/appworks/adapter/WorkModuleSortAddAdapter.java

@@ -1,6 +1,7 @@
 package com.uas.appworks.adapter;
 
 import android.content.Context;
+import android.content.res.Resources;
 import android.support.v7.widget.RecyclerView;
 import android.view.LayoutInflater;
 import android.view.MotionEvent;
@@ -24,6 +25,7 @@ import java.util.List;
 public class WorkModuleSortAddAdapter extends RecyclerView.Adapter<WorkModuleSortAddAdapter.MyViewHolder> {
     private Context mContext;
     private List<WorkMenuBean> mWorkMenuBeans;
+    private Resources mResources;
     private OnItemClickListener mOnItemClickListener;
     private OnItemLongClickListener mOnItemLongClickListener;
     private OnItemDragListener mOnItemDragListener;
@@ -52,6 +54,7 @@ public class WorkModuleSortAddAdapter extends RecyclerView.Adapter<WorkModuleSor
     public WorkModuleSortAddAdapter(Context context, List<WorkMenuBean> workMenuBeans) {
         mContext = context;
         this.mWorkMenuBeans = workMenuBeans;
+        mResources = mContext.getResources();
     }
 
     class MyViewHolder extends RecyclerView.ViewHolder {
@@ -77,7 +80,15 @@ public class WorkModuleSortAddAdapter extends RecyclerView.Adapter<WorkModuleSor
     @Override
     public void onBindViewHolder(final MyViewHolder holder, final int position) {
         final WorkMenuBean msg = mWorkMenuBeans.get(position);
-        holder.contentTv.setText(msg.getModuleName());
+        if (msg.isLocalModule()){
+            try {
+                holder.contentTv.setText(mResources.getIdentifier(msg.getModuleName(), "string", mContext.getPackageName()));
+            } catch (Exception e) {
+                holder.contentTv.setText(msg.getModuleName());
+            }
+        }else {
+            holder.contentTv.setText(msg.getModuleName());
+        }
 
         holder.wholeItem.setOnClickListener(new View.OnClickListener() {
             @Override

+ 13 - 1
app_modular/appworks/src/main/java/com/uas/appworks/adapter/WorkModuleSortDeleteAdapter.java

@@ -1,6 +1,7 @@
 package com.uas.appworks.adapter;
 
 import android.content.Context;
+import android.content.res.Resources;
 import android.support.v7.widget.RecyclerView;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -21,6 +22,7 @@ import java.util.List;
 
 public class WorkModuleSortDeleteAdapter extends RecyclerView.Adapter<WorkModuleSortDeleteAdapter.MyViewHolder> {
     private Context mContext;
+    private Resources mResources;
     private List<WorkMenuBean> mWorkMenuBeans;
     private OnAddItemClickListener mOnAddItemClickListener;
 
@@ -31,6 +33,7 @@ public class WorkModuleSortDeleteAdapter extends RecyclerView.Adapter<WorkModule
     public WorkModuleSortDeleteAdapter(Context context, List<WorkMenuBean> workMenuBeans) {
         mContext = context;
         this.mWorkMenuBeans = workMenuBeans;
+        mResources = mContext.getResources();
     }
 
     public void setOnAddItemClickListener(OnAddItemClickListener onAddItemClickListener) {
@@ -45,7 +48,16 @@ public class WorkModuleSortDeleteAdapter extends RecyclerView.Adapter<WorkModule
 
     @Override
     public void onBindViewHolder(final MyViewHolder holder, final int position) {
-        holder.contentTextView.setText(mWorkMenuBeans.get(position).getModuleName());
+        if (mWorkMenuBeans.get(position).isLocalModule()) {
+            try {
+                holder.contentTextView.setText(mResources.getIdentifier(mWorkMenuBeans.get(position).getModuleName(), "string", mContext.getPackageName()));
+            } catch (Exception e) {
+                holder.contentTextView.setText(mWorkMenuBeans.get(position).getModuleName());
+            }
+
+        } else {
+            holder.contentTextView.setText(mWorkMenuBeans.get(position).getModuleName());
+        }
         holder.addImageView.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View view) {

+ 43 - 4
app_modular/appworks/src/main/java/com/uas/appworks/model/WorkPlatModel.java

@@ -1,6 +1,7 @@
 package com.uas.appworks.model;
 
 import android.content.Context;
+import android.content.res.Resources;
 import android.support.annotation.NonNull;
 
 import com.alibaba.fastjson.JSON;
@@ -32,6 +33,7 @@ import java.util.List;
 public class WorkPlatModel implements IWorkPlatModel {
     private List<WorkMenuBean> mMenuTypeBeen;
     private HttpClient mHttpClient;
+    private Resources mResources;
 
     @Override
     public void uasRequest(Context context, final Request request, final WorkPlatCallback workCallback) {
@@ -105,6 +107,7 @@ public class WorkPlatModel implements IWorkPlatModel {
     }
 
     private void loadWorkMenuCache(final Context context, final WorkPlatCallback workCallback, final int what) {
+        mResources = context.getResources();
         String cacheJson = CommonUtil.getUniqueSharedPreferences(context, Constants.WORK_MENU_CACHE);
         String localJson = null;
         String role = CommonUtil.getUserRole();
@@ -126,13 +129,31 @@ public class WorkPlatModel implements IWorkPlatModel {
             // TODO: 2017/11/15 循环逻辑待优化
             for (WorkMenuBean cacheWorkMenuBean : cacheWorkMenuBeans) {
                 String cacheModuleTag = cacheWorkMenuBean.getModuleTag();
-                String cacheModuleName = cacheWorkMenuBean.getModuleName();
+                String cacheModuleName = null;
+                if (cacheWorkMenuBean.isLocalModule()) {
+                    try {
+                        cacheModuleName = context.getString(mResources.getIdentifier(cacheWorkMenuBean.getModuleName(), "string", context.getPackageName()));
+                    } catch (Exception e) {
+                        cacheModuleName = cacheWorkMenuBean.getModuleName();
+                    }
+                } else {
+                    cacheModuleName = cacheWorkMenuBean.getModuleName();
+                }
                 List<WorkMenuBean.ModuleListBean> cacheTypeList = cacheWorkMenuBean.getModuleList();
                 boolean isWorkMenuExist = false;
 
                 for (WorkMenuBean localWorkMenuBean : localWorkMenuBeans) {
                     String localModuleTag = localWorkMenuBean.getModuleTag();
-                    String localModuleName = localWorkMenuBean.getModuleName();
+                    String localModuleName = null;
+                    if (localWorkMenuBean.isLocalModule()) {
+                        try {
+                            localModuleName = context.getString(mResources.getIdentifier(localWorkMenuBean.getModuleName(), "string", context.getPackageName()));
+                        } catch (Exception e) {
+                            localModuleName = localWorkMenuBean.getModuleName();
+                        }
+                    } else {
+                        localModuleName = localWorkMenuBean.getModuleName();
+                    }
                     List<WorkMenuBean.ModuleListBean> localModuleList = localWorkMenuBean.getModuleList();
                     if (localModuleName.equals(cacheModuleName)) {
                         isWorkMenuExist = true;
@@ -195,10 +216,28 @@ public class WorkPlatModel implements IWorkPlatModel {
             for (WorkMenuBean localWorkMenuBean : localWorkMenuBeans) {
                 boolean isExist = false;
                 String localModuleTag = localWorkMenuBean.getModuleTag();
-                String localModuleName = localWorkMenuBean.getModuleName();
+                String localModuleName = null;
+                if (localWorkMenuBean.isLocalModule()) {
+                    try {
+                        localModuleName = context.getString(mResources.getIdentifier(localWorkMenuBean.getModuleName(), "string", context.getPackageName()));
+                    } catch (Exception e) {
+                        localModuleName = localWorkMenuBean.getModuleName();
+                    }
+                } else {
+                    localModuleName = localWorkMenuBean.getModuleName();
+                }
                 for (WorkMenuBean workMenuBean : mMenuTypeBeen) {
                     String moduleTag = workMenuBean.getModuleTag();
-                    String moduleName = workMenuBean.getModuleName();
+                    String moduleName = null;
+                    if (workMenuBean.isLocalModule()) {
+                        try {
+                            moduleName = context.getString(mResources.getIdentifier(workMenuBean.getModuleName(), "string", context.getPackageName()));
+                        } catch (Exception e) {
+                            moduleName = workMenuBean.getModuleName();
+                        }
+                    } else {
+                        moduleName = workMenuBean.getModuleName();
+                    }
                     if (localModuleName.equals(moduleName)) {
                         isExist = true;
                         break;