Browse Source

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

# Conflicts:
#	WeiChat/src/main/AndroidManifest.xml
RaoMeng 9 years ago
parent
commit
aa3bdaee91

+ 38 - 30
WeiChat/src/main/AndroidManifest.xml

@@ -410,9 +410,9 @@
             android:theme="@style/Theme.AppCompat.NoActionBar" />
         <activity
             android:name=".ui.erp.activity.oa.AddMeetingActivity"
-            android:label="新增会议" />
-        <activity android:name=".ui.erp.activity.oa.OAActivity"
-            />
+            android:label="新增会议"
+            android:theme="@style/OAThemeMeet" />
+        <activity android:name=".ui.erp.activity.oa.OAActivity" />
         <activity
             android:name=".ui.erp.activity.oa.StatisticsActivity"
             android:label="考勤统计" />
@@ -433,32 +433,36 @@
             android:launchMode="singleTask" />
         <activity
             android:name=".ui.erp.activity.oa.OutofficeActivity"
-            android:theme="@style/OAThemeOutOffice"
             android:configChanges="orientation|keyboardHidden"
-            android:windowSoftInputMode="adjustUnspecified|stateHidden"
-            android:label="外勤签到" />
+            android:label="外勤签到"
+            android:theme="@style/OAThemeOutOffice"
+            android:windowSoftInputMode="adjustUnspecified|stateHidden" />
         <activity
             android:name=".ui.erp.activity.oa.MeetDetailsActivity"
-            android:theme="@style/OAThemeMeet"
-            android:label="会议详情" />
+            android:label="会议详情"
+            android:theme="@style/OAThemeMeet" />
         <activity
             android:name=".ui.erp.activity.oa.OARegisterActivity"
-            android:label="会议签到" />
+            android:label="会议签到"
+            android:theme="@style/OAThemeMeet" />
         <activity
             android:name=".ui.erp.activity.crm.CustomerAddActivity"
             android:configChanges="orientation|keyboardHidden"
             android:theme="@style/CrmThemeBlue"
             android:windowSoftInputMode="adjustUnspecified|stateHidden" />
-        <activity android:name=".ui.erp.activity.crm.CustomerDetailActivity"
-            android:theme="@style/CrmThemeCustomer"/>
-        <activity android:name=".ui.erp.activity.crm.CustomerListActivity"
-            android:theme="@style/CrmThemeCustomer"/>
-        <activity android:name=".ui.erp.activity.crm.CustomerMutilSelectActivity"
-            android:theme="@style/CrmThemeCustomer"/>
+        <activity
+            android:name=".ui.erp.activity.crm.CustomerDetailActivity"
+            android:theme="@style/CrmThemeCustomer" />
+        <activity
+            android:name=".ui.erp.activity.crm.CustomerListActivity"
+            android:theme="@style/CrmThemeCustomer" />
+        <activity
+            android:name=".ui.erp.activity.crm.CustomerMutilSelectActivity"
+            android:theme="@style/CrmThemeCustomer" />
         <activity
             android:name=".ui.erp.activity.crm.SalesRankingActivity"
-            android:theme="@style/CrmThemeRank"
-            android:label="@string/title_activity_sales_ranking" />
+            android:label="@string/title_activity_sales_ranking"
+            android:theme="@style/CrmThemeRank" />
         <activity
             android:name=".ui.erp.activity.crm.VisitReportAddActivity"
             android:configChanges="orientation|keyboardHidden"
@@ -470,16 +474,17 @@
             android:windowSoftInputMode="adjustUnspecified|stateHidden" />
         <activity
             android:name=".ui.erp.activity.crm.VisitReportPlanActivity"
-            android:theme="@style/CrmThemeTask"
             android:configChanges="orientation|keyboardHidden"
+            android:theme="@style/CrmThemeTask"
             android:windowSoftInputMode="adjustUnspecified|stateHidden" />
         <activity
             android:name=".ui.erp.activity.crm.BusinessAddActivity"
             android:configChanges="orientation|keyboardHidden"
             android:theme="@style/CrmThemeBlue"
             android:windowSoftInputMode="adjustUnspecified|stateHidden" />
-        <activity android:name=".ui.erp.activity.crm.CustomerListSelectActivity"
-            android:theme="@style/CrmThemeCustomer"/>
+        <activity
+            android:name=".ui.erp.activity.crm.CustomerListSelectActivity"
+            android:theme="@style/CrmThemeCustomer" />
         <activity android:name=".ui.erp.activity.oa.AddMeetMainActivity" />
         <activity
             android:name=".ui.erp.activity.oa.WorkLogsActivity"
@@ -506,35 +511,38 @@
             android:label="签到提醒" />
         <activity
             android:name=".ui.erp.activity.oa.MeetingActivity"
-            android:theme="@style/OAThemeMeet"
-            android:label="会议管理" />
+            android:label="会议管理"
+            android:theme="@style/OAThemeMeet" />
         <activity
             android:name=".ui.message.SubscripSetActivity"
             android:label="申请订阅" />
         <activity
             android:name=".ui.erp.activity.oa.OutofficeSetActivity"
-            android:theme="@style/OAThemeOutOffice"
-            android:label="签到设置" />
+            android:label="签到设置"
+            android:theme="@style/OAThemeOutOffice" />
         <activity android:name=".ui.erp.activity.oa.TestActivity" />
         <activity
             android:name=".ui.erp.activity.oa.OutSigninOKActivity"
-            android:theme="@style/OAThemeOutOffice"
-            android:label="签到详情" />
+            android:label="签到详情"
+            android:theme="@style/OAThemeOutOffice" />
         <activity
             android:name=".ui.erp.activity.crm.ContactManAddActivity"
             android:configChanges="orientation|keyboardHidden"
             android:windowSoftInputMode="adjustUnspecified|stateHidden" />
         <activity
             android:name=".ui.erp.activity.oa.SaveMeetActivity"
-            android:label="会议纪要" />
+            android:label="会议纪要"
+            android:theme="@style/OAThemeMeet" />
         <activity
             android:name=".ui.erp.activity.oa.UserSelectActivity"
             android:label="选择人员" />
-        <activity android:name=".ui.erp.activity.crm.BusinessStateActivity"
-            android:theme="@style/CrmThemeBlue"/>
+        <activity
+            android:name=".ui.erp.activity.crm.BusinessStateActivity"
+            android:theme="@style/CrmThemeBlue" />
         <activity
             android:name=".ui.erp.activity.oa.AddMeetTaskActivity"
-            android:label="会议任务" />
+            android:label="会议任务"
+            android:theme="@style/OAThemeMeet" />
         <activity
             android:name=".ui.erp.activity.oa.OAListActivity"
             android:label="外勤签到列表" />

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

@@ -105,6 +105,7 @@ public class DetailTaskActivity extends BaseActivity implements OnClickListener
                     Boolean falg = object.getBoolean("success");
                     if (falg) {
                         ViewUtil.ShowMessageTitle(ct, "操作成功!");
+                        setResult(0x20, new Intent());
                         goBackMenu();
                     } else {
                         ViewUtil.ShowMessageTitle(ct, "操作失败!");
@@ -264,7 +265,6 @@ public class DetailTaskActivity extends BaseActivity implements OnClickListener
                 Map<String, String> param = new HashMap<String, String>();
                 if (!StringUtils.isEmpty(et_task_name.getText().toString())) {
                     param.put("ra_id", taskId);
-
                     param.put("record", et_task_name.getText().toString());
                     sendDataToServer("plm/record/endBillTask.action", param);
                 } else {

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

@@ -28,6 +28,7 @@ import com.xzjmyk.pm.activity.MyApplication;
 import com.xzjmyk.pm.activity.R;
 import com.xzjmyk.pm.activity.ui.base.BaseActivity;
 import com.xzjmyk.pm.activity.util.BaiduMapUtil;
+import com.xzjmyk.pm.activity.util.StringUtils;
 
 import java.util.List;
 
@@ -92,13 +93,14 @@ public class LocationMapActivity extends BaseActivity implements OnGetPoiSearchR
 
     private void init() {
         String addr = getIntent().getStringExtra("addr");
+        String addr2 = MyApplication.getInstance().getBdLocationHelper().getName();
         mPoiSearch = PoiSearch.newInstance();
         BdLocationHelper locationHelper = MyApplication.getInstance().getBdLocationHelper();
         point = new LatLng(locationHelper.getLatitude(), locationHelper.getLongitude());
         myPoInfo = new PoiInfo();
         myPoInfo.location = point;
         myPoInfo.address = locationHelper.getAddress();
-        myPoInfo.name = addr == null ? "我的位置" : addr;
+        myPoInfo.name = addr == null ? (StringUtils.isEmpty(addr2) ? "我的位置" : addr2) : addr;
     }
 
     @Override

+ 13 - 7
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/MeetDetailsActivity.java

@@ -28,6 +28,7 @@ import com.xzjmyk.pm.activity.util.BaiduMapUtil;
 import com.xzjmyk.pm.activity.util.StringUtils;
 import com.xzjmyk.pm.activity.util.TimeUtils;
 import com.xzjmyk.pm.activity.util.ToastUtil;
+import com.xzjmyk.pm.activity.view.crouton.Crouton;
 
 import java.util.HashMap;
 import java.util.LinkedHashMap;
@@ -169,11 +170,7 @@ public class MeetDetailsActivity extends BaseActivity implements View.OnClickLis
         findViewById(R.id.location_tag).setOnClickListener(this);
         findViewById(R.id.add_task_ll).setOnClickListener(this);
         if (entity == null) return;
-        if (entity.getMa_recorder() != null && !MyApplication.getInstance().mLoginUser.getNickName().equals(entity.getMa_recorder()) || "已结束".equals(status_tv.getText().toString().trim())) {
-            end_meet_tv.setVisibility(View.GONE);
-        } else {
-            end_meet_tv.setVisibility(View.VISIBLE);
-        }
+
         //设置会议 地点、介绍、发起人、标签
         addr_tv.setText(entity.getMa_mrname() == null ? "未填写" : entity.getMa_mrname());
         sub_tv.setText(entity.getMa_remark() == null ? "" : entity.getMa_remark());
@@ -197,6 +194,11 @@ public class MeetDetailsActivity extends BaseActivity implements View.OnClickLis
         long endLongTime = TimeUtils.f_str_2_long(entity.getMa_endtime());
         oa_meeting_end.setText(TimeUtils.long2str(startLongTime, "MM月dd"));
         oa_meeting_end_date.setText(TimeUtils.long2str(endLongTime, "HH:mm"));
+        if (entity.getMa_recorder() != null && !MyApplication.getInstance().mLoginUser.getNickName().equals(entity.getMa_recorder()) || "已结束".equals(status_tv.getText().toString().trim())) {
+            end_meet_tv.setVisibility(View.GONE);
+        } else {
+            end_meet_tv.setVisibility(View.VISIBLE);
+        }
     }
 
     String baseUrl;
@@ -300,7 +302,10 @@ public class MeetDetailsActivity extends BaseActivity implements View.OnClickLis
                 break;
             case R.id.meet_save://会议纪要
                 if (!user_tv.getText().toString().trim().equals(MyApplication.getInstance().mLoginUser.getNickName().trim())) {
-                    ToastUtil.showToast(ct, "你不是会议管理员,没有权限编写会议纪要");
+                    Crouton.makeText(ct, "你不是会议管理员,没有权限编写会议纪要");
+                    return;
+                } else if ("已结束".equals(status_tv.getText().toString().trim())) {
+                    Crouton.makeText(ct, "当前会议已经结束,不能在填写会议纪要");
                     return;
                 }
                 StringBuilder name = new StringBuilder();
@@ -371,7 +376,8 @@ public class MeetDetailsActivity extends BaseActivity implements View.OnClickLis
         if (data == null) return;
         if (requestCode == 0x11 && resultCode == LocationMapActivity.REQUCODE) {
             PoiInfo poi = data.getParcelableExtra(LocationMapActivity.REQUESTNAME);
-            location_tv.setText(poi.address);
+            if (poi == null) return;
+            location_tv.setText(poi.address == null ? "" : poi.address);
         }
 
     }

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

@@ -6,6 +6,7 @@ import android.os.Handler;
 import android.os.Message;
 import android.text.Editable;
 import android.text.TextWatcher;
+import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.Menu;
 import android.view.MenuItem;
@@ -313,6 +314,7 @@ public class MeetingActivity extends BaseActivity {
     @Override
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
         if (data == null) return;
+        Log.i("gongpengming","onActivityResult");
         if (requestCode == this.requestCode) {
             if (resultCode == 0x14) {
                 if ("data".equals(data.getStringExtra("data"))) {
@@ -320,6 +322,7 @@ public class MeetingActivity extends BaseActivity {
                     loadNetData(1);
                 }
             } else if (resultCode == 0x15) {
+                Log.i("gongpengming","resultCode == 0x15");
                 int i = data.getIntExtra("item", -1);
                 if (i >= 0 && data.getBooleanExtra("data", false)) {//是否结束会议
                     entities = adapter.getData();

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

@@ -38,7 +38,9 @@ import com.xzjmyk.pm.activity.ui.erp.activity.crm.VisitReportAddActivity;
 import com.xzjmyk.pm.activity.ui.erp.activity.crm.VisitReportPlanActivity;
 import com.xzjmyk.pm.activity.ui.erp.net.ViewUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.CommonUtil;
+import com.xzjmyk.pm.activity.ui.erp.util.ListUtils;
 import com.xzjmyk.pm.activity.ui.erp.util.StringUtils;
+import com.xzjmyk.pm.activity.ui.erp.view.EmptyLayout;
 import com.xzjmyk.pm.activity.util.CalendarUtils;
 import com.xzjmyk.pm.activity.util.DisplayUtil;
 import com.xzjmyk.pm.activity.util.TimeUtils;
@@ -87,6 +89,8 @@ public class OAActivity extends BaseActivity implements View.OnClickListener {
     private ArrayList<OABean> meBeans = null;
     private ArrayList<OABean> otherBeans = null;
     private MyListViewAdapter adapter;
+    private EmptyLayout mEmptyLayout;
+
     private Handler handler = new Handler() {
         @Override
         public void handleMessage(Message msg) {
@@ -95,9 +99,10 @@ public class OAActivity extends BaseActivity implements View.OnClickListener {
             switch (msg.what) {
                 case WHAT_LOAD:
                     JSONObject jsonObject = JSON.parseObject(message);
-                    if (jsonObject.isEmpty()) return;
+                    if (jsonObject.isEmpty())
+                        return;
                     loadSuccess(jsonObject);
-                    rootScrollView.smoothScrollTo(0, 20);
+                    setTop();
                     break;
             }
         }
@@ -130,22 +135,14 @@ public class OAActivity extends BaseActivity implements View.OnClickListener {
         }
         Calendar c = Calendar.getInstance();
         ArrayList<OABean> chche = new ArrayList<>();
-        int ok = 0;
         for (OABean b : tag == 1 ? meBeans : otherBeans) {
             String time = b.getStartdate() == null ? b.getEnddate() : b.getStartdate();
             if (time == null) continue;
             c.setTimeInMillis(TimeUtils.f_str_2_long(time));
-            if (c.get(Calendar.DAY_OF_MONTH) == CalendarUtils.getCurrentDate()) {
+            if (c.get(Calendar.DAY_OF_MONTH) == CalendarUtils.getCurrentDate()) {//当前天的任务
                 chche.add(b);
-                if (StringUtils.isEmpty(b.getStatus())) continue;
-                if ("已完成".equals(b.getStatus()) || "已拜访".equals(b.getStatus())) {
-                    ok += 0;
-                }
             }
         }
-        all_task_num.setText("工作日历:" + chche.size());
-        ok_task_num.setText("已完成:" + ok);
-        uok_task_num.setText("未完成:" + (chche.size() - ok));
         if (adapter == null) {
             adapter = new MyListViewAdapter(chche);
             listview.setAdapter(adapter);
@@ -153,7 +150,6 @@ public class OAActivity extends BaseActivity implements View.OnClickListener {
             adapter.setBeans(chche);
         }
         setTaskDay(tag == 1 ? meBeans : otherBeans);
-
     }
 
     private void setTaskDay(List<OABean> beans) {
@@ -162,8 +158,15 @@ public class OAActivity extends BaseActivity implements View.OnClickListener {
         for (OABean b : beans) {
             String time = b.getStartdate() == null ? b.getEnddate() : b.getStartdate();
             if (time == null) continue;
-            c.setTimeInMillis(TimeUtils.f_str_2_long(time));
-            tasks.add(c.get(Calendar.DAY_OF_MONTH));
+            if (getIntent() == null || getIntent().getIntExtra("type", 0) != 1) {//非crm
+                c.setTimeInMillis(TimeUtils.f_str_2_long(time));
+                tasks.add(c.get(Calendar.DAY_OF_MONTH));
+            } else {//crm
+                if (b != null && b.getClient() != null) {
+                    c.setTimeInMillis(TimeUtils.f_str_2_long(time));
+                    tasks.add(c.get(Calendar.DAY_OF_MONTH));
+                }
+            }
         }
         int[] t = new int[tasks.size()];
         for (int i = 0; i < tasks.size(); i++) {
@@ -310,9 +313,14 @@ public class OAActivity extends BaseActivity implements View.OnClickListener {
 
     private void initView() {
         chaneTAG(true);
+        mEmptyLayout = new EmptyLayout(this, listview);
+        mEmptyLayout.setShowLoadingButton(false);
+        mEmptyLayout.setShowEmptyButton(false);
+        mEmptyLayout.setShowErrorButton(false);
         initData();
         setListener();
         loadNetData();
+        listview.setFocusable(false);
     }
 
     private void initData() {
@@ -321,7 +329,6 @@ public class OAActivity extends BaseActivity implements View.OnClickListener {
         picker.setSelectMore(false);
         adapter = new MyListViewAdapter();
         listview.setAdapter(adapter);
-        rootScrollView.smoothScrollTo(0, 20);
         date_tv.setText(TimeUtils.long2str(System.currentTimeMillis(), "yyyy-MM-dd") + "  " + TimeUtils.getWeek(System.currentTimeMillis()));
         //CRM链入 隐藏菜单
         if (getIntent() == null || getIntent().getIntExtra("type", 0) != 1) return;
@@ -475,16 +482,36 @@ public class OAActivity extends BaseActivity implements View.OnClickListener {
                 } catch (NullPointerException e) {
                     e.printStackTrace();
                 } finally {
-                    all_task_num.setText("工作日历:" + (ok + noOk));
-                    ok_task_num.setText("已完成:" + ok);
-                    uok_task_num.setText("未完成:" + noOk);
                     adapter.setBeans(beans);
-                    rootScrollView.smoothScrollTo(0, 20);
+                    setTop();
                 }
             }
         });
     }
 
+    private void setTop() {
+//        rootScrollView.smoothScrollTo(0, 20);
+//        rootScrollView.scrollTo(0, 0);
+    }
+
+    private void setPoithNum(List<OABean> beans) {
+        int ok = 0, noOk = 0;
+        if (!ListUtils.isEmpty(beans)) {
+            for (OABean b : beans) {
+                if (StringUtils.isEmpty(b.getStatus())) continue;
+                if ("已完成".equals(b.getStatus()) || "已拜访".equals(b.getStatus())) {
+                    ok++;
+                } else {
+                    noOk++;
+                }
+            }
+        }
+        all_task_num.setText("工作日历:" + (ok + noOk));
+        ok_task_num.setText("已完成:" + ok);
+        uok_task_num.setText("未完成:" + noOk);
+    }
+
+
     /**
      * 点击我和我的下属的工作日志中的标识变化
      *
@@ -499,7 +526,6 @@ public class OAActivity extends BaseActivity implements View.OnClickListener {
             ok_scale.setVisibility(View.GONE);
             my_log_tag.setBackgroundResource(R.color.darkorange);
             my_client_log_tag.setBackgroundDrawable(null);
-            rootScrollView.smoothScrollTo(0, 20);
             if (adapter != null && meBeans != null) {
                 adapter.setBeans(meBeans);
                 setTaskDay(meBeans);
@@ -514,7 +540,7 @@ public class OAActivity extends BaseActivity implements View.OnClickListener {
                 setTaskDay(otherBeans);
             }
         }
-
+        setTop();
     }
 
     //列表适配器
@@ -525,21 +551,23 @@ public class OAActivity extends BaseActivity implements View.OnClickListener {
         }
 
         public MyListViewAdapter(List<OABean> beans) {
+            if (ListUtils.isEmpty(beans)) mEmptyLayout.showEmpty();
             this.beans = getBeans(beans);
         }
 
         private List<OABean> getBeans(List<OABean> beans) {
             List<OABean> chche = new ArrayList<>();
             if (beans == null) return null;
-            if (getIntent() == null || getIntent().getIntExtra("type", 0) != 1) {//crm
+            if (getIntent() == null || getIntent().getIntExtra("type", 0) != 1) {
                 chche = beans;
-            } else {
+            } else {//crm
                 //只显示拜访
                 for (OABean e : beans)
                     if (e != null && e.getClient() != null) {
                         chche.add(e);
                     }
             }
+            setPoithNum(chche);
             return chche;
         }
 
@@ -549,8 +577,8 @@ public class OAActivity extends BaseActivity implements View.OnClickListener {
 
         public void setBeans(List<OABean> beans) {
             this.beans = getBeans(beans);
+            if (ListUtils.isEmpty(beans)) mEmptyLayout.showEmpty();
             notifyDataSetChanged();
-                rootScrollView.smoothScrollTo(0, 20);
         }
 
         @Override
@@ -604,9 +632,9 @@ public class OAActivity extends BaseActivity implements View.OnClickListener {
                         intent.putExtra("performer", CommonUtil.getSharedPreferences(ct, "erp_username"));//处理人编号
                         intent.putExtra("taskcode", chche.getTaskcode());//处理人编号
                         intent.putExtra("ra_taskid", chche.getRa_taskid());//取回复内容id
-                        intent.putExtra("taskid", chche.getTaskcode());//编号
+                        intent.putExtra("taskid", chche.getRa_id() + "");//编号
                         intent.putExtra("endtime", chche.getEnddate());
-                        startActivity(intent);
+                        startActivityForResult(intent, 0x20);
                     }
                 }
             });

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

@@ -6,7 +6,6 @@ import android.os.Handler;
 import android.os.Message;
 import android.text.Editable;
 import android.text.TextWatcher;
-import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.Menu;
 import android.view.MenuItem;

+ 15 - 11
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/adapter/SigninAdapter.java

@@ -2,7 +2,6 @@ package com.xzjmyk.pm.activity.ui.erp.adapter;
 
 import android.content.Context;
 import android.support.v7.widget.RecyclerView;
-import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
@@ -13,6 +12,7 @@ import com.xzjmyk.pm.activity.bean.oa.Signin;
 import com.xzjmyk.pm.activity.db.dao.SigninDao;
 import com.xzjmyk.pm.activity.ui.erp.fragment.SigninFragment;
 import com.xzjmyk.pm.activity.ui.erp.util.ListUtils;
+import com.xzjmyk.pm.activity.util.StringUtils;
 import com.xzjmyk.pm.activity.util.TimeUtils;
 
 import java.util.ArrayList;
@@ -64,29 +64,33 @@ public class SigninAdapter extends RecyclerView.Adapter<SigninAdapter.ViewHoler>
                 end = "";
         if (!ListUtils.isEmpty(b.getSigninList()) && b.getSigninList().size() > 0) {
             holder.signin.setText(b.getSigninList().get(0));//填充时间
-            holder.signin2.setText(b.getSigninList().get(b.getSigninList().size() - 1));//填充时间
-            Log.i("gongpengming", b.getStartTime() + "     " + b.getStartSignin() + "    " + getNext90(b.getStartTime(), true) + "    " + b.getSigninList().get(0));
             start = getTag(b.getStartTime(), b.getStartSignin(), getNext90(b.getStartTime(), true), b.getSigninList().get(0), true);
-            Log.i("gongpengming", b.getEndTime() + "     " + getNext90(b.getEndTime(), false) + "    " + b.getEndSignnin() + "    " + b.getSigninList().get(b.getSigninList().size() - 1));
-            end = getTag(b.getEndTime(), getNext90(b.getEndTime(), false), b.getEndSignnin(), b.getSigninList().get(b.getSigninList().size() - 1), false);
+            if (b.getSigninList().size() != 1) {
+                String signin = b.getSigninList().get(b.getSigninList().size() - 1);
+                if (signin.compareTo(b.getEndTime()) > 0 && signin.compareTo(b.getEndSignnin()) < 0)
+                    holder.signin2.setText(b.getSigninList().get(b.getSigninList().size() - 1));//填充时间
+                end = getTag(b.getEndTime(), getNext90(b.getEndTime(), false), b.getEndSignnin(), b.getSigninList().get(b.getSigninList().size() - 1), false);
+            }
         } else {
             start = end = "-1";
         }
-        Log.i("gongpengming", "start=" + start);
-        Log.i("gongpengming", "end=" + end);
         //处理标识
-        if ("-1".equals(start)) {//当前时间还没有到达上班时间,不能显示缺勤
+        if (StringUtils.isEmpty(start) || "-1".equals(start)) {//当前时间还没有到达上班时间,不能显示缺勤
             holder.tag.setVisibility(View.GONE);
         } else {
             holder.tag.setText(start);
             holder.tag.setVisibility(View.VISIBLE);
         }
         //处理标识
-        if ("-1".equals(end)) {//当前时间还没有到达下班时间
+        if (StringUtils.isEmpty(end) || "-1".equals(end)) {//当前时间还没有到达下班时间
             holder.tag2.setVisibility(View.GONE);
         } else {
-            holder.tag2.setText(end);
-            holder.tag2.setVisibility(View.VISIBLE);
+            if (StringUtils.isEmpty(holder.tag2.getText().toString()))
+                holder.tag2.setVisibility(View.GONE);
+            else {
+                holder.tag2.setText(end);
+                holder.tag2.setVisibility(View.VISIBLE);
+            }
         }
     }
 

+ 1 - 2
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/fragment/OutofficeFragment.java

@@ -238,9 +238,8 @@ public class OutofficeFragment extends EasyFragment implements View.OnClickListe
             } else if (resultCode == 0x12) {
                 boolean isOK = data.getBooleanExtra("result", false);
                 if (isOK) {
-//                    signinAble(false);
                     sigNum++;
-                    num_tv.setText("" + sigNum);
+                    num_tv.setText(Html.fromHtml("<u>" + sigNum + "</u>"));
                 }
             }
         }

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

@@ -10,6 +10,7 @@ import android.support.v7.app.AlertDialog;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.text.Html;
+import android.text.Spanned;
 import android.view.View;
 import android.widget.ImageView;
 import android.widget.TextView;
@@ -125,7 +126,10 @@ public class SigninFragment extends EasyFragment implements View.OnClickListener
                     break;
                 case 0x13:
                     //签到成功
-                    signinOK();
+                    if (JSON.parseObject(message).containsKey("success") && JSON.parseObject(message).getBoolean("success"))
+                        signinOK();
+                    else
+                        Crouton.makeText(ct, "签到失败");
                     break;
                 default:
                     break;
@@ -152,7 +156,8 @@ public class SigninFragment extends EasyFragment implements View.OnClickListener
         if (data == null) return;
         if (requestCode == 0x14 && resultCode == LocationMapActivity.REQUCODE) {
             PoiInfo poi = data.getParcelableExtra(LocationMapActivity.REQUESTNAME);
-            office_addr.setText("考勤地点:" + poi.name);
+            if (poi == null) return;
+            office_addr.setText("考勤地点:" + poi.name == null ? "" : poi.name);
             latitude = poi.location.latitude;
             longitude = poi.location.longitude;
             unoffice_mm.setText(setDistance());
@@ -188,7 +193,9 @@ public class SigninFragment extends EasyFragment implements View.OnClickListener
                 intent = new Intent(ct, LocationMapActivity.class);
                 startActivityForResult(intent, 0x14);
                 break;
-
+            default:
+                Crouton.makeText(ct, "系统没有找到你的排班信息,请联系管理员处理");
+                ct.finish();
         }
     }
 
@@ -272,13 +279,13 @@ public class SigninFragment extends EasyFragment implements View.OnClickListener
     /**
      * setData
      */
-    private String setDistance() {
+    private Spanned setDistance() {
         String dis = BaiduMapUtil.getInstence().getDistance(companyX, companyY, latitude, longitude);
-        String re = "";
+        Spanned re = null;
         try {
             if (!StringUtils.isEmpty(dis)) {
                 distance = (int) Double.parseDouble(dis);
-                re = "" + Html.fromHtml("<font color=\'#858585\'>距离考勤地点: " + (distance == -1 ? -1 : distance) + "米    " + "</font><font color=\'#f02387\'><U>地点微调</U></font>");
+                re = Html.fromHtml("<font color=\'#858585\'>距离考勤地点: " + (distance == -1 ? -1 : distance) + "米     " + "</font><font color=\'#f02387\'><U>地点微调</U></font>");
             }
         } catch (ClassCastException e) {
             e.printStackTrace();
@@ -296,6 +303,7 @@ public class SigninFragment extends EasyFragment implements View.OnClickListener
                 beans.get(i).getSigninList().add(time);
             }
         }
+        Crouton.makeText(ct, "签到成功,请重试或联系管理员!!");
         setDataForAdapter(beans);
     }
 

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

@@ -194,6 +194,10 @@ public class ViewUtil {
             public void run() {
                 boolean isNetHas = CommonUtil.isNetWorkConnected(ct);
                 if (isNetHas) {
+                    Log.i("gongpengming", "url=" + url);
+                    for (String s : params.keySet()) {
+                        Log.i("gongpengming", "key=" + s + "  @@ values=" + params.get(s));
+                    }
                     String result = getDataFromServer(url, params, request);
                     Log.i("result", "http:" + result);
                     if (result != null) {

+ 20 - 2
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/view/CalendarPopup.java

@@ -1,16 +1,34 @@
 package com.xzjmyk.pm.activity.ui.erp.view;
 
 import android.content.Context;
+import android.util.AttributeSet;
+import android.view.LayoutInflater;
+import android.widget.LinearLayout;
+import android.widget.ListView;
+
+import com.xzjmyk.pm.activity.R;
 
 /**
  * Created by gongpengming on 2016/9/5.
  */
-public class CalendarPopup {
+public class CalendarPopup extends LinearLayout {
+
 
-    private CalendarPopup(Context ct) {
+    public CalendarPopup(Context context) {
+        this(context, null);
+    }
 
+    public CalendarPopup(Context context, AttributeSet attrs) {
+        super(context, attrs);
+        LayoutInflater.from(context).inflate(R.layout.calender_popup, this, false);
+        ListView list_yeas = (ListView) findViewById(R.id.list_yeas);
+        ListView list_month = (ListView) findViewById(R.id.list_month);
+        ListView list_day = (ListView) findViewById(R.id.list_day);
+        ListView list_hh = (ListView) findViewById(R.id.list_hh);
+        ListView list_mm = (ListView) findViewById(R.id.list_mm);
     }
 
+
     public class Builder {
         Context ct;
 

+ 1 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/view/CalendarView.java

@@ -208,7 +208,7 @@ public class CalendarView extends View implements View.OnTouchListener {
         int x = getXByIndex(index);
         int y = getYByIndex(index);
         if (downDate != null && downIndex == index)
-            surface.datePaint.setColor(0xFFFFFF);
+            surface.datePaint.setColor(surface.bgColor);
         else
             surface.datePaint.setColor(color);
         float cellY = surface.monthHeight + surface.weekHeight + (y - 1)

+ 1 - 3
WeiChat/src/main/res/layout/activity_oa.xml

@@ -1,13 +1,11 @@
 <?xml version="1.0" encoding="utf-8"?>
 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:tools="http://schemas.android.com/tools"
     android:id="@+id/oa_rootview"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:background="#EBE9E9"
     android:focusable="true"
-    android:focusableInTouchMode="true"
-    tools:context="com.xzjmyk.pm.activity.ui.erp.activity.crm.ClientActivity">
+    android:focusableInTouchMode="true">
 
     <LinearLayout
         android:layout_width="match_parent"

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

@@ -65,7 +65,6 @@
         android:layout_below="@+id/item_status_tv"
         android:layout_marginTop="10dp"
         android:clickable="true"
-        android:paddingLeft="10dp"
-        android:paddingRight="10dp"
+        android:padding="15dp"
         android:src="@drawable/oa_doit" />
 </RelativeLayout>