Browse Source

修改部分翻译内容
修复外勤地址不能提交成功问题
修复在消息首页,自动打卡以后不能刷新列表数据问题

Bitliker 9 years ago
parent
commit
8cb85994d1

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

@@ -2,7 +2,7 @@
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     package="com.xzjmyk.pm.activity"
-    android:versionCode="86"
+    android:versionCode="87"
     android:versionName="5.7.2">
 
     <uses-sdk

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

@@ -205,7 +205,6 @@ public class OAActivity extends BaseActivity implements View.OnClickListener, Wo
                     case 0x13:
                         array = JSON.parseObject(message).getJSONArray("listdata");//获取到数据
                         if (array != null) {
-
                             for (int i = 0; i < array.size(); i++) {
                                 JSONObject object = array.getJSONObject(i);
                                 String MM_CALLER = object.getString("MM_CALLER");

+ 22 - 25
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/OAMainActivity.java

@@ -52,7 +52,6 @@ import static com.xzjmyk.pm.activity.R.id.more_ll;
 public class OAMainActivity extends OABaseActivity implements View.OnClickListener, IOAView {
     @ViewInject(R.id.oamain_pull_sv)
     private PullToRefreshScrollView oamain_pull_sv;
-
     @ViewInject(R.id.subord_log_tag)
     private View subord_log_tag;
     @ViewInject(R.id.my_log_tag)
@@ -61,7 +60,6 @@ public class OAMainActivity extends OABaseActivity implements View.OnClickListen
     private TextView subord_log;
     @ViewInject(R.id.my_log)
     private TextView my_log;
-
     @ViewInject(R.id.date_tv)
     private TextView date_tv;
     @ViewInject(R.id.mcvCalendar)
@@ -98,7 +96,6 @@ public class OAMainActivity extends OABaseActivity implements View.OnClickListen
         setContentView(layoutId);
         ViewUtils.inject(this);
         initData();
-        initView();
         initEvent();
     }
 
@@ -112,19 +109,28 @@ public class OAMainActivity extends OABaseActivity implements View.OnClickListen
     public boolean onOptionsItemSelected(MenuItem item) {
         switch (item.getItemId()) {
             case R.id.add_item:
+                showPopWindown(getWindow().findViewById(R.id.add_item));
                 return true;
         }
         return super.onOptionsItemSelected(item);
     }
 
+    private void showPopWindown(View view) {
+        //TODO 编写弹出框
+    }
+
     private void initData() {
         isB2b = ApiUtils.getApiModel() instanceof ApiPlatform;
         setDays(System.currentTimeMillis());
-        presenter = new OAPresenter(this);
-        presenter.start(getIntent());
+        presenter = new OAPresenter(this, getIntent());
     }
 
     private void initEvent() {
+        emptyLayout = new EmptyLayout(ct, listview);
+        emptyLayout.setShowLoadingButton(false);
+        emptyLayout.setShowEmptyButton(false);
+        emptyLayout.setShowErrorButton(false);
+        emptyLayout.setEmptyViewRes(R.layout.oa_empty_list);
         if (!isB2b) {
             findViewById(R.id.meeting_tv).setOnClickListener(this);
             findViewById(R.id.cancel_more).setOnClickListener(this);//取消更多
@@ -145,7 +151,7 @@ public class OAMainActivity extends OABaseActivity implements View.OnClickListen
         oamain_pull_sv.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener<ScrollView>() {
             @Override
             public void onRefresh(PullToRefreshBase<ScrollView> refreshView) {
-                presenter.loadSchedule();
+                presenter.loadSchedule(-1);
             }
         });
 
@@ -176,13 +182,6 @@ public class OAMainActivity extends OABaseActivity implements View.OnClickListen
         });
     }
 
-    private void initView() {
-        emptyLayout = new EmptyLayout(ct, listview);
-        emptyLayout.setShowLoadingButton(false);
-        emptyLayout.setShowEmptyButton(false);
-        emptyLayout.setShowErrorButton(false);
-        emptyLayout.setEmptyViewRes(R.layout.oa_empty_list);
-    }
 
     @Override
     public void onClick(View v) {
@@ -236,10 +235,10 @@ public class OAMainActivity extends OABaseActivity implements View.OnClickListen
                 }
                 break;
             case more_ll:
-                ClickMore(more_table_ll.getVisibility() == View.VISIBLE);
+                clickMore(more_table_ll.getVisibility() == View.VISIBLE);
                 break;
             case R.id.cancel_more:
-                ClickMore(true);
+                clickMore(true);
                 break;
             case R.id.subord_log:
                 presenter.changeTag(false);
@@ -251,7 +250,7 @@ public class OAMainActivity extends OABaseActivity implements View.OnClickListen
     }
 
     /*start by Event*/
-    private void ClickMore(boolean visible) {
+    private void clickMore(boolean visible) {
         if (!isB2b) {
             Animation mAnimation = null;
             if (visible) {
@@ -279,22 +278,20 @@ public class OAMainActivity extends OABaseActivity implements View.OnClickListen
 
     @Override
     public void showModel(List<OAModel> models) {
-        if (ListUtils.isEmpty(models)) {
+        if (oamain_pull_sv.isRefreshing()) oamain_pull_sv.onRefreshComplete();
+        if (ListUtils.isEmpty(models))
             emptyLayout.showEmpty();
+        if (mAdapter == null) {
+            mAdapter = new OAAdapter(ct, new OAHttpUtil(), models);
+            listview.setAdapter(mAdapter);
         } else {
-            if (mAdapter == null) {
-                mAdapter = new OAAdapter(ct, new OAHttpUtil(), models);
-                listview.setAdapter(mAdapter);
-            } else {
-                mAdapter.setModels(models);
-                mAdapter.notifyDataSetChanged();
-            }
+            mAdapter.setModels(models);
+            mAdapter.notifyDataSetChanged();
         }
     }
 
     @Override
     public void selectTag(boolean isMe) {
-        LogUtil.i("isMe==" + isMe);
         ok_scale.setVisibility(isMe ? View.INVISIBLE : View.VISIBLE);
         my_log_tag.setBackgroundColor(getResources().getColor(isMe ? R.color.darkorange : R.color.item_line));
         my_log.setTextColor(getResources().getColor(isMe ? R.color.darkorange : R.color.dimgrey));

+ 19 - 15
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/presenter/MissionPresenter.java

@@ -195,7 +195,7 @@ public class MissionPresenter implements IMissionPresenter, OnHttpResultListener
             params.put("mpd_detno", position + 1);
         if (!isB2b)
             params.put("mpd_id", "");
-        params.put("mpd_kind", entity.getType() == 1 ?getStrByResources(R.string.half_day)
+        params.put("mpd_kind", entity.getType() == 1 ? getStrByResources(R.string.half_day)
                 : getStrByResources(R.string.all_day));
         params.put("mpd_remark", StringUtils.string2Json(entity.getRemark()));
         params.put("mpd_distance", BaiduMapUtil.getInstence().getDistance(entity.getLatLng()));
@@ -232,7 +232,8 @@ public class MissionPresenter implements IMissionPresenter, OnHttpResultListener
     //保存外勤计划目的地
     private void saveOutAddress(MissionModel entity) {
         if (entity.getLatLng() == null || entity.getLatLng().latitude == 0 || entity.getLatLng().longitude == 0) {
-            if (iMission != null) iMission.showToast(R.string.not_save_illegal_bill, R.color.load_warning);
+            if (iMission != null)
+                iMission.showToast(R.string.not_save_illegal_bill, R.color.load_warning);
             return;
         }
         //获取网络数据
@@ -250,8 +251,10 @@ public class MissionPresenter implements IMissionPresenter, OnHttpResultListener
         formStore.put("Md_visittime", entity.getVisitTime());//预计时间
         formStore.put("Md_longitude", entity.getLatLng().longitude);//经度
         formStore.put("Md_latitude", entity.getLatLng().latitude);//纬度
-        formStore.put("enuu", CommonUtil.getSharedPreferences(MyApplication.getInstance().getApplicationContext(), "companyEnUu"));
-        formStore.put("emcode", CommonUtil.getSharedPreferences(MyApplication.getInstance().getApplicationContext(), "b2b_uu"));
+        if (isB2b) {
+            formStore.put("enuu", CommonUtil.getSharedPreferences(MyApplication.getInstance().getApplicationContext(), "companyEnUu"));
+            formStore.put("emcode", CommonUtil.getEmcode());
+        }
         param.put("formStore", StringUtils.mapToJson(formStore));
         Bundle bundle = new Bundle();
         String url = isB2b ? ApiConfig.getInstance(ApiUtils.getApiModel()).getmApiBase().saveOutAddress :
@@ -274,32 +277,32 @@ public class MissionPresenter implements IMissionPresenter, OnHttpResultListener
             if (iMission != null)
                 iMission.showToast(getStrByResources(R.string.you_destination)
                         + i +
-                        getStrByResources(R.string.visit_company)+ getStrByResources(R.string.not_edit), R.color.load_warning);
+                        getStrByResources(R.string.visit_company) + getStrByResources(R.string.not_edit), R.color.load_warning);
             return false;
         } else if (StringUtils.isEmpty(e.getCompanyAddr())) {
             if (iMission != null)
-                iMission.showToast(getStrByResources(R.string.you_destination)  + i +
-                        getStrByResources(R.string.visit_address)+ getStrByResources(R.string.not_edit), R.color.load_warning);
+                iMission.showToast(getStrByResources(R.string.you_destination) + i +
+                        getStrByResources(R.string.visit_address) + getStrByResources(R.string.not_edit), R.color.load_warning);
             return false;
         } else if (e.getLatLng() == null) {
             if (iMission != null)
-                iMission.showToast(getStrByResources(R.string.you_destination)+ i + getStrByResources(R.string.location_error_try_agen), R.color.load_warning);
+                iMission.showToast(getStrByResources(R.string.you_destination) + i + getStrByResources(R.string.location_error_try_agen), R.color.load_warning);
             return false;
         } else if (StringUtils.isEmpty(e.getVisitTime())) {
             if (iMission != null)
-                iMission.showToast(getStrByResources(R.string.you_destination)   + i +
-                        getStrByResources(R.string.expected_arrival_time)+ getStrByResources(R.string.not_edit), R.color.load_warning);
+                iMission.showToast(getStrByResources(R.string.you_destination) + i +
+                        getStrByResources(R.string.expected_arrival_time) + getStrByResources(R.string.not_edit), R.color.load_warning);
             return false;
         } else if (StringUtils.isEmpty(e.getRemark())) {
-            if (iMission != null) iMission.showToast(getStrByResources(R.string.you_destination) + i +
-                    getStrByResources(R.string.visit_aim)+ getStrByResources(R.string.not_edit), R.color.load_warning);
+            if (iMission != null)
+                iMission.showToast(getStrByResources(R.string.you_destination) + i +
+                        getStrByResources(R.string.visit_aim) + getStrByResources(R.string.not_edit), R.color.load_warning);
             return false;
         }
         return true;
     }
 
 
-
     //获取外勤计划列表
     private void loadMissionByDB() {
         //没有网络情况下获取缓存的数据
@@ -391,7 +394,8 @@ public class MissionPresenter implements IMissionPresenter, OnHttpResultListener
                         }
                         if (iMission != null) iMission.dimssLoading();
                         int position = bundle.getInt("position", -1);//成功保存第几个目标
-                        if (iMission != null) iMission.showToast(R.string.save_ok, R.color.load_submit);
+                        if (iMission != null)
+                            iMission.showToast(R.string.save_ok, R.color.load_submit);
                         if (iMission != null) {
                             iMission.changModelStatus(1, position);
                         }
@@ -471,7 +475,7 @@ public class MissionPresenter implements IMissionPresenter, OnHttpResultListener
             loadMissionByDB();
     }
 
-    private String getStrByResources(int id){
+    private String getStrByResources(int id) {
         return MyApplication.getInstance().getResources().getString(id);
     }
 }

+ 56 - 17
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/presenter/OAPresenter.java

@@ -4,6 +4,7 @@ import android.content.Intent;
 import android.os.Bundle;
 
 import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.xzjmyk.pm.activity.R;
 import com.xzjmyk.pm.activity.ui.erp.model.oa.OAModel;
@@ -25,6 +26,7 @@ import com.xzjmyk.pm.activity.wxapi.ApiUtils;
 import java.util.ArrayList;
 import java.util.Calendar;
 import java.util.HashMap;
+import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
 
@@ -33,9 +35,10 @@ import java.util.Map;
  */
 
 public class OAPresenter implements OnHttpResultListener {
-    private final int LOAD_SUBORD = 0x12;//下拉下属数据
     private final int LOAD_SCHEDULE = 0x11;//获取数据
-    private IOAView ioaView;
+    private final int LOAD_SUBORD = 0x12;//下拉下属数据
+    private final int LOAD_POPDATA = 0x13;//下拉列表数据
+    private final IOAView ioaView;
     private final boolean isB2b;
     private boolean haveSubord = false;
     private boolean isMe = false;//判断当前选择的tag是我的工作日历吗
@@ -43,17 +46,20 @@ public class OAPresenter implements OnHttpResultListener {
     private List<OAModel> otherModels;
     private long curDate;//当前日期
     private OAHttpUtil util = new OAHttpUtil();
+    private ArrayList<Map<String, Object>> menusMap = null;
 
 
-    public OAPresenter(IOAView ioaView) {
+    public OAPresenter(IOAView ioaView, Intent intent) {
         if (ioaView == null)
             new NullPointerException("IOAView is Null");
         this.ioaView = ioaView;
         isB2b = ApiUtils.getApiModel() instanceof ApiPlatform;
+        start(intent);
     }
 
-    public void start(Intent intent) {
+    private void start(Intent intent) {
         ioaView.selectTag(isMe);
+        menusMap = new ArrayList<>();
         loadInit();
     }
 
@@ -67,18 +73,20 @@ public class OAPresenter implements OnHttpResultListener {
         selectTag(isMe);
     }
 
-
+    /*初始化下载*/
     private void loadInit() {
         //获取是否管理员
         CommonInterface.getInstance().judgeManager(null);
         //获取外勤设置
         CommonInterface.getInstance().getOutSetInfo(null);
         curDate = System.currentTimeMillis();
-        loadSchedule();
+        loadSchedule(curDate);
         if (isB2b) {
             haveSubord = true;
-        } else
-            loadSubord();
+            return;
+        }
+        loadSubord();
+        loadPopdata();
     }
 
     /*点击日期,对数据进行筛选*/
@@ -87,14 +95,10 @@ public class OAPresenter implements OnHttpResultListener {
         showModel(false);
     }
 
-    /*更换月份,获取数据*/
-    public void loadSchedule(long date) {
-        curDate = date;
-        loadSchedule();
-    }
 
     /*获取数据列表*/
-    public void loadSchedule() {
+    public void loadSchedule(long date) {
+        if (date!=-1) curDate = date;
         ioaView.showLoading();
         //获取网络数据
         Map<String, Object> param = new HashMap<>();
@@ -110,8 +114,21 @@ public class OAPresenter implements OnHttpResultListener {
         OAHttpHelper.getInstance().requestHttp(request, this);
     }
 
+    /*获取菜单列表数据*/
+    private void loadPopdata() {
+        ioaView.showLoading();
+        String url = "mobile/oa/getmenuconfig.action";
+        Map<String, Object> param = new HashMap<>();
+        param.put("emcode", CommonUtil.getEmcode());
+        Request request = new Request.Bulider()
+                .setMode(Request.Mode.GET)
+                .setParam(param)
+                .setUrl(url)
+                .setWhat(LOAD_POPDATA).bulid();
+        OAHttpHelper.getInstance().requestHttp(request, this);
+    }
 
-    /* 获取下属     */
+    /*获取下属*/
     private void loadSubord() {
         ioaView.showLoading();
         Map<String, Object> param = new HashMap<>();
@@ -168,6 +185,23 @@ public class OAPresenter implements OnHttpResultListener {
                 haveSubord = !isMe;
                 selectTag(isMe);
                 break;
+            case LOAD_POPDATA:
+                handlerPopdata(object.getJSONArray("listdata"));
+                break;
+        }
+    }
+
+
+    private void handlerPopdata(JSONArray array) throws Exception {
+        if (ListUtils.isEmpty(array)) return;
+        for (int i = 0; i < array.size(); i++) {
+            JSONObject object = array.getJSONObject(i);
+            String MM_CALLER = object.getString("MM_CALLER");
+            String MM_NAME = object.getString("MM_NAME");
+            Map<String, Object> temp = new LinkedHashMap<>();
+            temp.put("item_name", MM_NAME);
+            temp.put("item_caller", MM_CALLER);
+            menusMap.add(temp);
         }
     }
 
@@ -178,10 +212,15 @@ public class OAPresenter implements OnHttpResultListener {
         showModel(true);
     }
 
-    private void showModel(boolean changeTaskList) {
+    /**
+     * 将数据显示到列表中
+     *
+     * @param neerChangeTaskList 是否需要该变任务列表标记
+     */
+    private void showModel(boolean neerChangeTaskList) {
         try {
             List<OAModel> models = isMe ? meModels : otherModels;
-            if (changeTaskList)
+            if (neerChangeTaskList)
                 setTaskList(models);
             showModel(models);
         } catch (Exception e) {

+ 6 - 3
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/view/calender/month/MonthCalendarView.java

@@ -8,7 +8,6 @@ import android.util.SparseArray;
 
 import com.xzjmyk.pm.activity.R;
 import com.xzjmyk.pm.activity.ui.erp.util.ListUtils;
-import com.xzjmyk.pm.activity.ui.erp.util.LogUtil;
 import com.xzjmyk.pm.activity.ui.erp.view.calender.OnCalendarClickListener;
 
 import java.util.Calendar;
@@ -22,6 +21,7 @@ public class MonthCalendarView extends ViewPager implements OnMonthClickListener
     private MonthAdapter mMonthAdapter;
     private OnCalendarClickListener mOnCalendarClickListener;
     private MonthView monthView;
+    private int oldDay=-1;
 
 
     public MonthCalendarView(Context context) {
@@ -46,6 +46,7 @@ public class MonthCalendarView extends ViewPager implements OnMonthClickListener
 
     @Override
     public void onClickThisMonth(int year, int month, int day) {
+        oldDay=day;
         if (mOnCalendarClickListener != null) {
             mOnCalendarClickListener.onClickDate(year, month, day);
         }
@@ -75,17 +76,19 @@ public class MonthCalendarView extends ViewPager implements OnMonthClickListener
     private OnPageChangeListener mOnPageChangeListener = new OnPageChangeListener() {
         @Override
         public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
+
         }
 
         @Override
         public void onPageSelected(int position) {
-            LogUtil.i("onPageSelected position ");
             monthView = mMonthAdapter.getViews().get(getCurrentItem());
             if (monthView != null) {
-                monthView.clickThisMonth(monthView.getSelectYear(), monthView.getSelectMonth(), monthView.getSelectDay());
+                int day=oldDay==-1?monthView.getSelectDay():oldDay ;
+                monthView.clickThisMonth(monthView.getSelectYear(), monthView.getSelectMonth(),day);
                 if (mOnCalendarClickListener != null) {
                     mOnCalendarClickListener.onPageChange(monthView.getSelectYear(), monthView.getSelectMonth(), monthView.getSelectDay());
                 }
+                oldDay=day;
             }
         }
 

+ 2 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/view/calender/month/MonthView.java

@@ -227,6 +227,8 @@ public class MonthView extends View {
             } else {
                 mPaint.setColor(mNormalDayColor);
             }
+            if (dayString.equals(String.valueOf(mCurrDay)) && mCurrMonth == mSelMonth && mCurrYear == mSelYear)
+                dayString = "今";
             canvas.drawText(dayString, startX, startY, mPaint);
             mHolidayOrLunarText[row][column] = CalendarUtils.getHolidayFromSolar(mSelYear, mSelMonth, mDaysText[row][column]);
         }

+ 145 - 60
WeiChat/src/main/res/layout/activity_oa_b2b_table.xml

@@ -5,61 +5,117 @@
     android:background="#6A6A6A"
     android:orientation="vertical">
 
-
     <LinearLayout
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
-        android:orientation="horizontal"
         android:layout_marginTop="10dp"
+        android:orientation="horizontal"
         android:paddingBottom="10dp">
 
-        <TextView
-            android:id="@+id/work_tv"
+        <FrameLayout
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            android:layout_marginTop="2dp"
-            android:layout_weight="1"
-            android:drawablePadding="@dimen/drawable_padding"
-            android:drawableTop="@drawable/oa_1"
-            android:gravity="center"
-            android:text="打卡签到"
-            android:textColor="@color/white" />
+            android:layout_weight="1">
 
-        <TextView
-            android:id="@+id/mission_tv"
+            <ImageView
+                android:id="@+id/work_alart"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="top|right"
+                android:layout_marginRight="@dimen/drawable_padding"
+                android:src="@drawable/hongdian"
+                android:visibility="gone" />
+
+            <TextView
+                android:id="@+id/work_tv"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:layout_marginTop="2dp"
+                android:drawablePadding="@dimen/drawable_padding"
+                android:drawableTop="@drawable/oa_1"
+                android:gravity="center"
+                android:text="打卡签到"
+                android:textColor="@color/white" />
+        </FrameLayout>
+
+        <FrameLayout
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            android:layout_marginTop="2dp"
-            android:layout_weight="1"
-            android:drawablePadding="@dimen/drawable_padding"
-            android:drawableTop="@drawable/oa_2"
-            android:gravity="center"
-            android:text="外勤签到"
-            android:textColor="@color/white" />
+            android:layout_weight="1">
 
-        <TextView
-            android:id="@+id/worklog_tv"
+            <ImageView
+                android:id="@+id/mission_alart"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="top|right"
+                android:layout_marginRight="@dimen/drawable_padding"
+                android:src="@drawable/hongdian"
+                android:visibility="gone" />
+
+            <TextView
+                android:id="@+id/mission_tv"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:layout_marginTop="2dp"
+                android:layout_weight="1"
+                android:drawablePadding="@dimen/drawable_padding"
+                android:drawableTop="@drawable/oa_2"
+                android:gravity="center"
+                android:text="外勤签到"
+                android:textColor="@color/white" />
+        </FrameLayout>
+
+        <FrameLayout
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            android:layout_marginTop="2dp"
-            android:layout_weight="1"
-            android:drawablePadding="@dimen/drawable_padding"
-            android:drawableTop="@drawable/oa_4"
-            android:gravity="center"
-            android:text="工作日报"
-            android:textColor="@color/white" />
+            android:layout_weight="1">
 
-        <TextView
-            android:id="@+id/leave_tv"
+            <ImageView
+                android:id="@+id/worklog_alart"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="top|right"
+                android:layout_marginRight="@dimen/drawable_padding"
+                android:src="@drawable/hongdian"
+                android:visibility="gone" />
+
+            <TextView
+                android:id="@+id/worklog_tv"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:layout_marginTop="2dp"
+                android:drawablePadding="@dimen/drawable_padding"
+                android:drawableTop="@drawable/oa_4"
+                android:gravity="center"
+                android:text="工作日报"
+                android:textColor="@color/white" />
+        </FrameLayout>
+
+        <FrameLayout
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            android:layout_marginTop="2dp"
-            android:layout_weight="1"
-            android:drawablePadding="@dimen/drawable_padding"
-            android:drawableTop="@drawable/oa_5"
-            android:gravity="center"
-            android:text="请假申请"
-            android:textColor="@color/white" />
+            android:layout_weight="1">
+
+            <ImageView
+                android:id="@+id/leave_alart"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="top|right"
+                android:layout_marginRight="@dimen/drawable_padding"
+                android:src="@drawable/hongdian"
+                android:visibility="gone" />
+
+            <TextView
+                android:id="@+id/leave_tv"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:layout_marginTop="2dp"
+                android:drawablePadding="@dimen/drawable_padding"
+                android:drawableTop="@drawable/oa_5"
+                android:gravity="center"
+                android:text="请假申请"
+                android:textColor="@color/white" />
+        </FrameLayout>
     </LinearLayout>
 
     <LinearLayout
@@ -68,44 +124,72 @@
         android:orientation="horizontal"
         android:paddingBottom="10dp">
 
-        <TextView
-            android:id="@+id/outtask_tv"
+        <FrameLayout
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            android:layout_marginTop="2dp"
-            android:layout_weight="1"
-            android:drawablePadding="@dimen/drawable_padding"
-            android:drawableTop="@drawable/oa_chuchai"
-            android:gravity="center"
-            android:text="出差申请"
-            android:textColor="@color/white" />
+            android:layout_weight="1">
 
-        <TextView
-            android:id="@+id/overtime_tv"
+            <ImageView
+                android:id="@+id/outtask_alart"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="top|right"
+                android:layout_marginRight="@dimen/drawable_padding"
+                android:src="@drawable/hongdian"
+                android:visibility="gone" />
+
+            <TextView
+                android:id="@+id/outtask_tv"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:layout_marginTop="2dp"
+                android:drawablePadding="@dimen/drawable_padding"
+                android:drawableTop="@drawable/oa_chuchai"
+                android:gravity="center"
+                android:text="出差申请"
+                android:textColor="@color/white" />
+        </FrameLayout>
+
+        <FrameLayout
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            android:layout_marginTop="2dp"
-            android:layout_weight="1"
-            android:drawablePadding="@dimen/drawable_padding"
-            android:drawableTop="@drawable/oa_jiaban"
-            android:gravity="center"
-            android:text="加班申请"
-            android:textColor="@color/white" />
+            android:layout_weight="1">
+
+            <ImageView
+                android:id="@+id/overtime_alart"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="top|right"
+                android:layout_marginRight="@dimen/drawable_padding"
+                android:src="@drawable/hongdian"
+                android:visibility="gone" />
+
+            <TextView
+                android:id="@+id/overtime_tv"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:layout_marginTop="2dp"
+                android:drawablePadding="@dimen/drawable_padding"
+                android:drawableTop="@drawable/oa_jiaban"
+                android:gravity="center"
+                android:text="加班申请"
+                android:textColor="@color/white" />
+        </FrameLayout>
 
         <TextView
             android:layout_width="0dp"
             android:layout_height="wrap_content"
             android:layout_marginTop="2dp"
-            android:visibility="invisible"
             android:layout_weight="1"
             android:drawablePadding="@dimen/drawable_padding"
             android:drawableTop="@drawable/oa_chuchai"
             android:gravity="center"
             android:text="出差申请"
-            android:textColor="@color/white" />
+            android:textColor="@color/white"
+            android:visibility="invisible" />
+
         <TextView
             android:layout_width="0dp"
-            android:visibility="invisible"
             android:layout_height="wrap_content"
             android:layout_marginTop="2dp"
             android:layout_weight="1"
@@ -113,7 +197,8 @@
             android:drawableTop="@drawable/oa_chuchai"
             android:gravity="center"
             android:text="出差申请"
-            android:textColor="@color/white" />
+            android:textColor="@color/white"
+            android:visibility="invisible" />
     </LinearLayout>
 </LinearLayout>
 

+ 182 - 74
WeiChat/src/main/res/layout/activity_oa_erp_table.xml

@@ -9,52 +9,104 @@
     <LinearLayout
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
+        android:layout_marginTop="10dp"
         android:orientation="horizontal"
         android:paddingBottom="10dp">
 
-        <TextView
-            android:id="@+id/work_tv"
+        <FrameLayout
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            android:layout_marginTop="2dp"
-            android:layout_weight="1"
-            android:drawablePadding="@dimen/drawable_padding"
-            android:drawableTop="@drawable/oa_1"
-            android:gravity="center"
-            android:text="打卡签到"
-            android:textColor="@color/white" />
-
-        <TextView
-            android:id="@+id/mission_tv"
+            android:layout_weight="1">
+
+            <ImageView
+                android:id="@+id/work_alart"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="top|right"
+                android:layout_marginRight="@dimen/drawable_padding"
+                android:src="@drawable/hongdian"
+                android:visibility="gone" />
+
+            <TextView
+                android:id="@+id/work_tv"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:layout_marginTop="2dp"
+                android:drawablePadding="@dimen/drawable_padding"
+                android:drawableTop="@drawable/oa_1"
+                android:gravity="center"
+                android:text="打卡签到"
+                android:textColor="@color/white" />
+        </FrameLayout>
+
+        <FrameLayout
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            android:layout_marginTop="2dp"
-            android:layout_weight="1"
-            android:drawablePadding="@dimen/drawable_padding"
-            android:drawableTop="@drawable/oa_2"
-            android:gravity="center"
-            android:text="外勤签到"
-            android:textColor="@color/white" />
-
-        <TextView
-            android:id="@+id/worklog_tv"
+            android:layout_weight="1">
+
+            <ImageView
+                android:id="@+id/mission_alart"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="top|right"
+                android:layout_marginRight="@dimen/drawable_padding"
+                android:src="@drawable/hongdian"
+                android:visibility="gone" />
+
+            <TextView
+                android:id="@+id/mission_tv"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:layout_marginTop="2dp"
+                android:layout_weight="1"
+                android:drawablePadding="@dimen/drawable_padding"
+                android:drawableTop="@drawable/oa_2"
+                android:gravity="center"
+                android:text="外勤签到"
+                android:textColor="@color/white" />
+        </FrameLayout>
+
+        <FrameLayout
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            android:layout_marginTop="2dp"
-            android:layout_weight="1"
-            android:drawablePadding="@dimen/drawable_padding"
-            android:drawableTop="@drawable/oa_4"
-            android:gravity="center"
-            android:text="工作日报"
-            android:textColor="@color/white" />
-
-        <LinearLayout
+            android:layout_weight="1">
+
+            <ImageView
+                android:id="@+id/worklog_alart"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="top|right"
+                android:layout_marginRight="@dimen/drawable_padding"
+                android:src="@drawable/hongdian"
+                android:visibility="gone" />
+
+            <TextView
+                android:id="@+id/worklog_tv"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:layout_marginTop="2dp"
+                android:drawablePadding="@dimen/drawable_padding"
+                android:drawableTop="@drawable/oa_4"
+                android:gravity="center"
+                android:text="工作日报"
+                android:textColor="@color/white" />
+        </FrameLayout>
+
+        <RelativeLayout
             android:id="@+id/more_ll"
             android:layout_width="0dp"
             android:layout_height="wrap_content"
             android:layout_marginTop="2dp"
-            android:layout_weight="1"
-            android:orientation="vertical">
+            android:layout_weight="1">
+
+            <ImageView
+                android:id="@+id/more_alart"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_alignParentRight="true"
+                android:layout_marginRight="@dimen/drawable_padding"
+                android:src="@drawable/hongdian"
+                android:visibility="gone" />
 
             <ImageView
                 android:id="@+id/more_img"
@@ -67,11 +119,12 @@
                 android:id="@+id/more_tv"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
-                android:layout_marginTop="5dp"
+                android:layout_below="@id/more_img"
+                android:layout_marginTop="@dimen/drawable_padding"
                 android:gravity="center"
                 android:text="更多"
                 android:textColor="@color/white" />
-        </LinearLayout>
+        </RelativeLayout>
     </LinearLayout>
 
     <LinearLayout
@@ -80,54 +133,109 @@
         android:orientation="horizontal"
         android:paddingBottom="10dp">
 
-        <TextView
-            android:id="@+id/meeting_tv"
+        <FrameLayout
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            android:layout_marginTop="2dp"
-            android:layout_weight="1"
-            android:drawablePadding="@dimen/drawable_padding"
-            android:drawableTop="@drawable/oa_3"
-            android:gravity="center"
-            android:text="会议管理"
-            android:textColor="@color/white" />
-
-        <TextView
-            android:id="@+id/leave_tv"
+            android:layout_weight="1">
+
+            <ImageView
+                android:id="@+id/meeting_alart"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="top|right"
+                android:layout_marginRight="@dimen/drawable_padding"
+                android:src="@drawable/hongdian"
+                android:visibility="gone" />
+
+            <TextView
+                android:id="@+id/meeting_tv"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:layout_marginTop="2dp"
+                android:drawablePadding="@dimen/drawable_padding"
+                android:drawableTop="@drawable/oa_3"
+                android:gravity="center"
+                android:text="会议管理"
+                android:textColor="@color/white" />
+        </FrameLayout>
+
+        <FrameLayout
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            android:layout_marginTop="2dp"
-            android:layout_weight="1"
-            android:drawablePadding="@dimen/drawable_padding"
-            android:drawableTop="@drawable/oa_5"
-            android:gravity="center"
-            android:text="请假申请"
-            android:textColor="@color/white" />
-
-        <TextView
-            android:id="@+id/outtask_tv"
+            android:layout_weight="1">
+
+            <ImageView
+                android:id="@+id/leave_alart"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="top|right"
+                android:layout_marginRight="@dimen/drawable_padding"
+                android:src="@drawable/hongdian"
+                android:visibility="gone" />
+
+            <TextView
+                android:id="@+id/leave_tv"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:layout_marginTop="2dp"
+                android:drawablePadding="@dimen/drawable_padding"
+                android:drawableTop="@drawable/oa_5"
+                android:gravity="center"
+                android:text="请假申请"
+                android:textColor="@color/white" />
+        </FrameLayout>
+
+        <FrameLayout
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            android:layout_marginTop="2dp"
-            android:layout_weight="1"
-            android:drawablePadding="@dimen/drawable_padding"
-            android:drawableTop="@drawable/oa_chuchai"
-            android:gravity="center"
-            android:text="出差申请"
-            android:textColor="@color/white" />
-
-        <TextView
-            android:id="@+id/overtime_tv"
+            android:layout_weight="1">
+
+            <ImageView
+                android:id="@+id/outtask_alart"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="top|right"
+                android:layout_marginRight="@dimen/drawable_padding"
+                android:src="@drawable/hongdian"
+                android:visibility="gone" />
+
+            <TextView
+                android:id="@+id/outtask_tv"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:layout_marginTop="2dp"
+                android:drawablePadding="@dimen/drawable_padding"
+                android:drawableTop="@drawable/oa_chuchai"
+                android:gravity="center"
+                android:text="出差申请"
+                android:textColor="@color/white" />
+        </FrameLayout>
+
+        <FrameLayout
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            android:layout_marginTop="2dp"
-            android:layout_weight="1"
-            android:drawablePadding="@dimen/drawable_padding"
-            android:drawableTop="@drawable/oa_jiaban"
-            android:gravity="center"
-            android:text="加班申请"
-            android:textColor="@color/white" />
+            android:layout_weight="1">
+
+            <ImageView
+                android:id="@+id/overtime_alart"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_gravity="top|right"
+                android:layout_marginRight="@dimen/drawable_padding"
+                android:src="@drawable/hongdian"
+                android:visibility="gone" />
 
+            <TextView
+                android:id="@+id/overtime_tv"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:layout_marginTop="2dp"
+                android:drawablePadding="@dimen/drawable_padding"
+                android:drawableTop="@drawable/oa_jiaban"
+                android:gravity="center"
+                android:text="加班申请"
+                android:textColor="@color/white" />
+        </FrameLayout>
     </LinearLayout>
 </LinearLayout>
 

+ 1 - 2
WeiChat/src/main/res/layout/fragment_me.xml

@@ -519,8 +519,7 @@
             android:id="@+id/test_rl"
             style="@style/IMTbleLine_UP_Me"
             android:layout_marginTop="7dp"
-            android:background="@drawable/selector_me_menu_item_bg"
-            android:visibility="gone">
+            android:background="@drawable/selector_me_menu_item_bg">
 
             <TextView
                 android:layout_width="wrap_content"