Bitliker 9 лет назад
Родитель
Сommit
4677f32a31
17 измененных файлов с 353 добавлено и 305 удалено
  1. 33 25
      WeiChat/src/main/AndroidManifest.xml
  2. 27 28
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/MainActivity.java
  3. 1 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/account/DataDownloadActivity.java
  4. 36 34
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/WebViewCommActivity.java
  5. 7 5
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/AddMeetTaskActivity.java
  6. 92 50
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/WorkDailyAddActivity.java
  7. 38 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/adapter/SubscriptionAdapter.java
  8. 0 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/net/ViewUtil.java
  9. 13 11
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/me/MeFragment.java
  10. 40 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/message/Subscription2Activity.java
  11. 8 2
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/message/SubscriptionActivity.java
  12. 0 26
      WeiChat/src/main/java/com/xzjmyk/pm/activity/util/CalculateUtil.java
  13. 0 109
      WeiChat/src/main/java/com/xzjmyk/pm/activity/util/JsonUtils.java
  14. 6 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/util/PreferenceUtils.java
  15. 22 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/view/MostHeightLinearLayout.java
  16. 13 0
      WeiChat/src/main/res/layout/activity_subscription2.xml
  17. 17 13
      WeiChat/src/main/res/layout/bigimage_subscription.xml

+ 33 - 25
WeiChat/src/main/AndroidManifest.xml

@@ -77,13 +77,13 @@
     <uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" />
     <uses-permission android:name="android.permission.EXPAND_STATUS_BAR" />
 
+    <!-- 适配Android N系统必需的ContentProvider写权限声明,写权限包含应用包名 -->
+    <!-- <uses-permission android:name="baidu.push.permission.WRITE_PUSHINFOPROVIDER.com.baidu.push.example" /> -->
+    <!-- <permission -->
+    <!-- android:name="baidu.push.permission.WRITE_PUSHINFOPROVIDER.com.baidu.push.example" -->
+    <!-- android:protectionLevel="normal"> -->
+    <!-- </permission> -->
 
-    <!-- 适配Android N系统必需的ContentProvider写权限声明,写权限包含应用包名-->
-    <!--<uses-permission android:name="baidu.push.permission.WRITE_PUSHINFOPROVIDER.com.baidu.push.example" />-->
-    <!--<permission-->
-    <!--android:name="baidu.push.permission.WRITE_PUSHINFOPROVIDER.com.baidu.push.example"-->
-    <!--android:protectionLevel="normal">-->
-    <!--</permission>-->
 
     <!-- 百度自动更新 -->
     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
@@ -131,7 +131,7 @@
                 <action android:name="cat.ereza.customactivityoncrash.RESTART" />
             </intent-filter>
         </activity>
-        <!--异常跳转页面-->
+        <!-- 异常跳转页面 -->
         <activity
             android:name=".CustomCrashActivity"
             android:process=":error_activity">
@@ -316,7 +316,7 @@
             android:enabled="true"
             android:process=":remote" />
 
-        <!--正式apikey-->
+        <!-- 正式apikey -->
         <meta-data
             android:name="com.baidu.lbsapi.API_KEY"
             android:value="KxANrz9HRWVqGGCm2cN8mXarpW0bBuYA" />
@@ -410,12 +410,12 @@
         <meta-data
             android:name="BDAPPKEY"
             android:value="EmEVqG9NiKchcSbkoGkiyG2F2rp8YNmf" />
-        <!--<meta-data-->
-        <!--android:name="BDAPPID"-->
-        <!--android:value="8037149" />-->
-        <!--<meta-data-->
-        <!--android:name="BDAPPKEY"-->
-        <!--android:value="GMZFDGbbchdQQXjpabX38rTlychRGnEF" />-->
+        <!-- <meta-data -->
+        <!-- android:name="BDAPPID" -->
+        <!-- android:value="8037149" /> -->
+        <!-- <meta-data -->
+        <!-- android:name="BDAPPKEY" -->
+        <!-- android:value="GMZFDGbbchdQQXjpabX38rTlychRGnEF" /> -->
 
         <service
             android:name="com.baidu.location.f"
@@ -619,7 +619,7 @@
         <!-- umeng api key -->
         <meta-data
             android:name="UMENG_APPKEY"
-            android:value="57ea27bb67e58e088c003bbf"></meta-data>
+            android:value="57ea27bb67e58e088c003bbf" />
         <!-- weixin -->
         <activity
             android:name=".wxapi.WXEntryActivity"
@@ -682,9 +682,10 @@
             android:name=".ui.erp.util.alarm.AlarmService"
             android:enabled="true"
             android:exported="true" />
+
         <activity android:name=".ui.erp.activity.form.DataFormDetailActivity" />
 
-        <!--百度推送相关-->
+        <!-- 百度推送相关 -->
         <!-- push必须的receviver和service声明 -->
         <receiver
             android:name="com.baidu.android.pushservice.PushServiceReceiver"
@@ -732,7 +733,8 @@
             android:exported="true" />
         <!-- push结束 -->
 
-        <!-- 适配Android N系统必需的ContentProvider声明,写权限包含应用包名-->
+
+        <!-- 适配Android N系统必需的ContentProvider声明,写权限包含应用包名 -->
         <provider
             android:name="com.baidu.android.pushservice.PushInfoProvider"
             android:authorities="com.xzjmyk.pm.activity.bdpush"
@@ -743,7 +745,8 @@
         <!-- baidu  push service start -->
         <!-- 用于接收系统消息以保证PushService正常运行 -->
         <!-- push富媒体,使用富媒体推送必须声明 -->
-        <!--   <activity
+        <!--
+           <activity
                android:name="com.baidu.android.pushservice.richmedia.MediaViewActivity"
                android:configChanges="orientation|keyboardHidden"
                android:label="MediaViewActivity" >
@@ -753,9 +756,11 @@
                android:configChanges="orientation|keyboardHidden"
                android:label="MediaListActivity"
                android:launchMode="singleTask" >
-           </activity>-->
+           </activity>
+        -->
         <!-- push富媒体结束 -->
 
+
         <!-- push应用定义消息receiver声明 -->
         <receiver android:name=".ui.PushNetMessageReceiver">
             <intent-filter android:priority="1000">
@@ -768,19 +773,22 @@
             </intent-filter>
         </receiver>
 
-
         <!-- 在百度开发者中心查询应用的API Key -->
         <meta-data
             android:name="api_key"
             android:value="EmEVqG9NiKchcSbkoGkiyG2F2rp8YNmf" />
 
-        <!--测试apikey-->
-        <!--<meta-data
+        <!-- 测试apikey -->
+        <!--
+            <meta-data
             android:name="api_key"
-            android:value="03kY3VdsbU2khqSf8X1GbGRC" />-->
+            android:value="03kY3VdsbU2khqSf8X1GbGRC" />
+        -->
+
 
-        <!--百度推送相关结束-->
+        <!-- 百度推送相关结束 -->
 
+        <activity android:name=".ui.message.Subscription2Activity"></activity>
     </application>
 
-</manifest>
+</manifest>

+ 27 - 28
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/MainActivity.java

@@ -44,6 +44,7 @@ import com.xzjmyk.pm.activity.ui.circle.BusinessCircleFragment;
 import com.xzjmyk.pm.activity.ui.erp.fragment.ContactFragment;
 import com.xzjmyk.pm.activity.ui.erp.fragment.WorksFragment;
 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.alarm.AlarmService;
 import com.xzjmyk.pm.activity.ui.find.MyFriendFragment;
 import com.xzjmyk.pm.activity.ui.groupchat.GroupChatFragment;
@@ -78,11 +79,7 @@ import java.util.List;
  */
 public class MainActivity extends BaseActivity implements NetWorkObservable.NetWorkObserver, AuthStateListener {
     public static String HASHCODE = "MainActivity";
-    public static final String TIME_MAIN = "TIMEMAIN";
-    public static long timeMin = -1;
     public static boolean isUnReadWork;   //判断我的空间是否有新内容
-    public final static int SIP_SERVER_PORT = 5060;// 端口
-    public final static String EXTRAT_SIP_SESSION_ID = "SipSession";
     private static final String TAG_MESSAGE = "message";
     private static final String TAG_MY = "myfriend";
     private static final String TAG_NEARBY = "nearby";
@@ -222,7 +219,6 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
                 }
                 changeFragment(mMeFragment, TAG_ME);//我
                 getSupportActionBar().setTitle(R.string.me);
-                unWorkReadTV.setVisibility(View.GONE);
             }
         }
     };
@@ -238,6 +234,7 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
         }
         HashMap<String, String> params = new HashMap<String, String>();
         params.put("access_token", MyApplication.getInstance().mAccessToken);
+        params.put("pageSize", "1");
         StringJsonArrayRequest<CircleMessage> request = new StringJsonArrayRequest<CircleMessage>(
                 config.MSG_LIST, new Response.ErrorListener() {
             @Override
@@ -248,33 +245,22 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
             public void onResponse(ArrayResult<CircleMessage> result) {
                 boolean success = Result.defaultParser(ct, result, false);
                 if (success) {
-                    List<CircleMessage> datas = result.getData();
-                    if (datas != null && datas.size() > 0) { // 没有更多数据
-                        CircleMessage data = datas.get(0);
-                        long newTime = data.getTime();  //获取最新时间
-                        long oldTime = PreferenceUtils.getLong(mContext, TIME_MAIN); //获取以前时间
-                        if (newTime > oldTime) {//当有新消息
-                            if (!data.getUserId().equals(MyApplication.getInstance().mLoginUser.getUserId())) {
-                                unWorkReadTV.setVisibility(View.VISIBLE);
-                                if (mMeFragment != null)
-                                    mMeFragment.setChangerRemain(false);
-                                timeMin = newTime;
-                                isUnReadWork = true;
-                            } else {
-                                PreferenceUtils.putLong(ct, TIME_MAIN, newTime); //获取以前时间
-                            }
+                    //获取到数据
+                    try {
+                        List<CircleMessage> datas = result.getData();
+                        if (ListUtils.isEmpty(datas)) return;
+                        long time = datas.get(0).getTime();
+                        String userId = datas.get(0).getUserId();
+                        Long oldTime = PreferenceUtils.getLong("TIMEMAIN", -1);
+                        if (!userId.equals(MyApplication.getInstance().mLoginUser.getUserId()) && oldTime < time) {
+                            setShowUnRead(true);
                         } else {
-                            unWorkReadTV.setVisibility(View.GONE);
-                            isUnReadWork = false;
+                            setShowUnRead(false);
                         }
-                    } else {
-                        unWorkReadTV.setVisibility(View.GONE);
-                        isUnReadWork = false;
+                    } catch (Exception e) {
                     }
-
                 } else {
-                    unWorkReadTV.setVisibility(View.GONE);
-                    isUnReadWork = false;
+                    setShowUnRead(false);
                 }
             }
         }, CircleMessage.class, params);
@@ -284,6 +270,19 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
         mFastVolley.addDefaultRequest(HASHCODE, request);
     }
 
+
+    private void setShowUnRead(boolean isUnRead) {
+        isUnReadWork = isUnRead;
+        if (isUnRead) {
+            unWorkReadTV.setVisibility(View.VISIBLE);
+        } else {
+            unWorkReadTV.setVisibility(View.GONE);
+        }
+        if (mMeFragment == null) return;
+        mMeFragment.setChangerRemain(!isUnRead);
+
+    }
+
     /***********************
      * 未读数量的更新功能
      *****************/

+ 1 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/account/DataDownloadActivity.java

@@ -295,7 +295,7 @@ public class DataDownloadActivity extends BaseActivity {
         }, new StringJsonArrayRequest.Listener<AttentionUser>() {
             @Override
             public void onResponse(ArrayResult<AttentionUser> result) {
-                boolean success = Result.defaultParser(mContext, result, true);
+                boolean success = Result.defaultParser(mContext, result, false);
                 Log.i("DataDownload", "我的关注:" + JSON.toJSONString(result));
                 Log.i("DataDownload", "success:" + success);
                 //服务器此处返回用户不存在,理论上是不能去掉success判断的

+ 36 - 34
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/WebViewCommActivity.java

@@ -6,6 +6,7 @@ import android.content.Intent;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.Message;
+import android.util.Log;
 import android.view.Menu;
 import android.view.MenuItem;
 import android.view.View;
@@ -67,7 +68,7 @@ public class WebViewCommActivity extends BaseActivity implements View.OnClickLis
     private TextView mNextTv;
     private List<Object> mReadSubs;
 
-    private  Handler hander = new Handler() {
+    private Handler hander = new Handler() {
         @Override
         public void handleMessage(Message msg) {
             if (msg.what == reCode) {
@@ -76,11 +77,12 @@ public class WebViewCommActivity extends BaseActivity implements View.OnClickLis
                 try {
                     JSONObject jsonObject = new JSONObject(result);
                     boolean success = JSON.parseObject(result).getBoolean("success");
+
                     if (success) {
                         if (!jsonObject.isNull("sessionId")) {
                             CommonUtil.setSharedPreferences(WebViewCommActivity.this, "sessionId", jsonObject.getString("sessionId"));
                         }
-                        doNextLoadURL();  //不敢加  当第一次加载出现错误登录erp然后进行第二次登录操作后再次加载操作
+                        doNextLoadURL();
                     }
                 } catch (JSONException e) {
                     e.printStackTrace();
@@ -95,9 +97,9 @@ public class WebViewCommActivity extends BaseActivity implements View.OnClickLis
         } else {
             clearCookie();
         }
-        Map<String,String> headers=new HashMap<>();
-        headers.put("clientType","uas client");
-        webView.getRefreshableView().loadUrl(url,headers);
+        Map<String, String> headers = new HashMap<>();
+        headers.put("clientType", "uas client");
+        webView.getRefreshableView().loadUrl(url, headers);
     }
 
     @SuppressLint("SetJavaScriptEnabled")
@@ -120,24 +122,24 @@ public class WebViewCommActivity extends BaseActivity implements View.OnClickLis
         String StartApp = intent.getStringExtra("isStartApp");//参数账套
 
         mSubsAct = intent.getStringExtra("subsact");
-        mPosition = intent.getIntExtra("position",-1);
+        mPosition = intent.getIntExtra("position", -1);
         mSubscriptionMessages = (ArrayList<SubscriptionMessage>) intent.getSerializableExtra("subsdata");
 
-        if (mSubsAct != null && mSubsAct.equals("subsDetail")){
-            url = mSubsurl  + "?numId=" + mSubscriptionMessages.get(mPosition).getNUM_ID_()
+        if (mSubsAct != null && mSubsAct.equals("subsDetail")) {
+            url = mSubsurl + "?numId=" + mSubscriptionMessages.get(mPosition).getNUM_ID_()
                     + "&mainId=" + mSubscriptionMessages.get(mPosition).getINSTANCE_ID_()
                     + "&insId=" + mSubscriptionMessages.get(mPosition).getID_()
                     + "&title=" + mSubscriptionMessages.get(mPosition).getTITLE_();
-            if (mSubscriptionMessages.size() == 1){
+            if (mSubscriptionMessages.size() == 1) {
                 mPreTv.setVisibility(View.GONE);
                 mNextTv.setVisibility(View.GONE);
-            }else if (mPosition == 0){
+            } else if (mPosition == 0) {
                 mPreTv.setVisibility(View.GONE);
                 mNextTv.setVisibility(View.VISIBLE);
-            }else if (mPosition == mSubscriptionMessages.size() - 1){
+            } else if (mPosition == mSubscriptionMessages.size() - 1) {
                 mPreTv.setVisibility(View.VISIBLE);
                 mNextTv.setVisibility(View.GONE);
-            }else {
+            } else {
                 mPreTv.setVisibility(View.VISIBLE);
                 mNextTv.setVisibility(View.VISIBLE);
             }
@@ -168,13 +170,13 @@ public class WebViewCommActivity extends BaseActivity implements View.OnClickLis
                 login(this);
         }
         webView.getRefreshableView().getSettings().setJavaScriptEnabled(true);
-      //  webView.getRefreshableView().getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE); //设置 缓存模式
+        //  webView.getRefreshableView().getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE); //设置 缓存模式
         webView.getRefreshableView().getSettings().setDomStorageEnabled(true);
         webView.getRefreshableView().getSettings().setDatabaseEnabled(true);
         webView.getRefreshableView().getSettings().setAppCacheEnabled(true);
         // 修改ua使得web端正确判断
-        
-        String ua =  webView.getRefreshableView().getSettings().getUserAgentString();
+
+        String ua = webView.getRefreshableView().getSettings().getUserAgentString();
         webView.getRefreshableView().getSettings().setUserAgentString(ua + " uasClient");
 
         if (isCookie) {
@@ -182,10 +184,10 @@ public class WebViewCommActivity extends BaseActivity implements View.OnClickLis
         } else {
             clearCookie();
         }
-        Map<String,String> headers=new HashMap<>();
-        headers.put("client-name","uasClient");
-      //  url="http://192.168.253.132:9090/platform-b2c/?client=true";
-        webView.getRefreshableView().loadUrl(url,headers);
+        Map<String, String> headers = new HashMap<>();
+        headers.put("client-name", "uasClient");
+        //  url="http://192.168.253.132:9090/platform-b2c/?client=true";
+        webView.getRefreshableView().loadUrl(url, headers);
         webView.getRefreshableView().setWebViewClient(new WebViewClient() {
             @Override
             public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
@@ -230,7 +232,7 @@ public class WebViewCommActivity extends BaseActivity implements View.OnClickLis
 
     @Override
     public void onClick(View v) {
-        switch (v.getId()){
+        switch (v.getId()) {
             case R.id.web_previous_tv:
                 mPosition--;
                 break;
@@ -238,34 +240,34 @@ public class WebViewCommActivity extends BaseActivity implements View.OnClickLis
                 mPosition++;
                 break;
         }
-        if (mSubscriptionMessages != null){
+        if (mSubscriptionMessages != null) {
             mReadSubs.add(mPosition);
             getSupportActionBar().setTitle(mSubscriptionMessages.get(mPosition).getTITLE_());
-            if (mPosition == 0){
+            if (mPosition == 0) {
                 mPreTv.setVisibility(View.GONE);
                 mNextTv.setVisibility(View.VISIBLE);
-            }else if (mPosition == mSubscriptionMessages.size() - 1){
+            } else if (mPosition == mSubscriptionMessages.size() - 1) {
                 mPreTv.setVisibility(View.VISIBLE);
                 mNextTv.setVisibility(View.GONE);
-            }else {
+            } else {
                 mPreTv.setVisibility(View.VISIBLE);
                 mNextTv.setVisibility(View.VISIBLE);
             }
-            url = mSubsurl  + "?numId=" + mSubscriptionMessages.get(mPosition).getNUM_ID_()
+            url = mSubsurl + "?numId=" + mSubscriptionMessages.get(mPosition).getNUM_ID_()
                     + "&mainId=" + mSubscriptionMessages.get(mPosition).getINSTANCE_ID_()
                     + "&insId=" + mSubscriptionMessages.get(mPosition).getID_()
                     + "&title=" + mSubscriptionMessages.get(mPosition).getTITLE_();
-            Map<String,String> headers=new HashMap<>();
-            headers.put("client-name","uasClient");
-            webView.getRefreshableView().loadUrl(url,headers);
+            Map<String, String> headers = new HashMap<>();
+            headers.put("client-name", "uasClient");
+            webView.getRefreshableView().loadUrl(url, headers);
         }
     }
 
     @Override
     protected void onPause() {
         super.onPause();
-        if (!mReadSubs.isEmpty()){
-            List<Integer> singleElement = (List)CommonUtil.getSingleElement(mReadSubs);
+        if (!mReadSubs.isEmpty()) {
+            List<Integer> singleElement = (List) CommonUtil.getSingleElement(mReadSubs);
             ArrayList<Integer> readIntegers = new ArrayList<>();
             readIntegers.addAll(singleElement);
             Intent intent = new Intent();
@@ -326,15 +328,15 @@ public class WebViewCommActivity extends BaseActivity implements View.OnClickLis
     }
 
     private void login(Context context) {
-        ViewUtil.ct = this;
+        ViewUtil.ct = MyApplication.getInstance();
         ViewUtil.LoginERPTask(this, hander, reCode);
         PreferenceUtils.putLong(context, TIME, System.currentTimeMillis());
     }
 
     @Override
     public void onBackPressed() {
-        if (!mReadSubs.isEmpty()){
-            List<Integer> singleElement = (List)CommonUtil.getSingleElement(mReadSubs);
+        if (!mReadSubs.isEmpty()) {
+            List<Integer> singleElement = (List) CommonUtil.getSingleElement(mReadSubs);
             ArrayList<Integer> readIntegers = new ArrayList<>();
             readIntegers.addAll(singleElement);
             Intent intent = new Intent();
@@ -369,7 +371,7 @@ public class WebViewCommActivity extends BaseActivity implements View.OnClickLis
                         SHARE_MEDIA.WEIXIN_FAVORITE,
                         SHARE_MEDIA.MORE)
                         .withTitle(getSupportActionBar().getTitle().toString())
-                        .withText("UU互联 Android客户端"+ DeviceInfoUtil.getVersionName(mContext))
+                        .withText("UU互联 Android客户端" + DeviceInfoUtil.getVersionName(mContext))
                         .withMedia(new UMImage(activity, "http://img.my.csdn.net/uploads/201609/30/1475204542_1365.png"))
                         .withTargetUrl(url)
                         .setCallback(CommonUtil.umShareListener)

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

@@ -104,6 +104,8 @@ public class AddMeetTaskActivity extends BaseActivity {
                 }, 1000);
             else
                 loadNetData();
+        } else if (requestCode == 0x21 && resultCode == 0x20) {
+            loadNetData();
         }
     }
 
@@ -126,11 +128,11 @@ public class AddMeetTaskActivity extends BaseActivity {
                 intent.putExtra("taskemcode", object.containsKey("recorder") ? object.getString("recorder") : null);//发起人
                 intent.putExtra("tasktime", object.containsKey("ra_startdate") ? object.getString("ra_startdate") : null);//发起时间
                 intent.putExtra("endtime", object.containsKey("ra_enddate") ? object.getString("ra_enddate") : null);
-                intent.putExtra("performer", object.containsKey("resourcename") ? object.getString("resourcename") : "未填写");//处理人编号
-                intent.putExtra("taskcode", object.containsKey("taskcode") ? object.getString("taskcode") : null);//处理人编号
+                intent.putExtra("performer", object.containsKey("resourcename") ? object.getString("resourcename") : "未填写");//处理人名字
+                intent.putExtra("taskcode", object.containsKey("ra_resourcecode") ? object.getString("ra_resourcecode") : null);//处理人编号
                 intent.putExtra("ra_taskid", object.containsKey("ra_taskid") ? object.getString("ra_taskid") : null);//取回复内容id
                 intent.putExtra("taskid", object.containsKey("ra_id") ? object.getString("ra_id") : null);//编号
-                startActivity(intent);
+                startActivityForResult(intent, 0x21);
             }
         });
         loadNetData();
@@ -219,8 +221,8 @@ public class AddMeetTaskActivity extends BaseActivity {
             holder.name_tv.setText(object.containsKey("recorder") ? object.getString("recorder") : "");
             holder.theme_tv.setText(object.containsKey("description") ? object.getString("description") : "");
             holder.status_tv.setText(object.containsKey("ra_status") ? object.getString("ra_status") : "进行中");
-            holder.headler_tv.setText("执行人:" + (object.containsKey("resourcename") ? object.getString("resourcename") : "无"));
-            String name = object.containsKey("resourcename") ? object.getString("resourcename") : "";
+            String name = object.containsKey("ra_resourcename") ? object.getString("ra_resourcename") : "";
+            holder.headler_tv.setText("执行人:" + (StringUtils.isEmpty(name) ? "无" : name));
             if (name != null && name.length() > 0) {
                 String str = name.substring(0, 1);
                 holder.head_img.setText(str == null ? "" : str);

+ 92 - 50
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/WorkDailyAddActivity.java

@@ -6,20 +6,16 @@ import android.os.Bundle;
 import android.os.Handler;
 import android.os.Message;
 import android.support.v7.app.AlertDialog;
-import android.text.Editable;
-import android.text.TextWatcher;
 import android.util.Log;
 import android.view.Menu;
 import android.view.MenuItem;
 import android.view.MotionEvent;
 import android.view.View;
-import android.widget.Button;
 import android.widget.EditText;
 import android.widget.ImageView;
 import android.widget.Toast;
 
 import com.alibaba.fastjson.JSON;
-import com.andreabaccega.widget.FormEditText;
 import com.xzjmyk.pm.activity.R;
 import com.xzjmyk.pm.activity.ui.base.BaseActivity;
 import com.xzjmyk.pm.activity.ui.circle.SendShuoshuoActivity;
@@ -86,11 +82,13 @@ public class WorkDailyAddActivity extends BaseActivity implements View.OnTouchLi
             }
         }
     };
+
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         initView();
     }
+
     @Override
     public boolean onCreateOptionsMenu(Menu menu) {
         getMenuInflater().inflate(R.menu.menu_list, menu);
@@ -105,17 +103,16 @@ public class WorkDailyAddActivity extends BaseActivity implements View.OnTouchLi
         }
         return super.onOptionsItemSelected(item);
     }
-   public void  initView(){
-       setContentView(R.layout.activity_add_work_daily);
-       getSupportActionBar().setTitle("工作日报");
 
-       add_summary = (EditText) findViewById(R.id.add_work_daily_summary_et);
-       add_plan = (EditText) findViewById(R.id.add_work_daily_plan_et);
-       add_experience = (EditText) findViewById(R.id.add_work_daily_experience_et);
-       add_submit = (ImageView) findViewById(R.id.add_work_daily_submit_iv);
-       share_experience = (ImageView) findViewById(R.id.add_work_daily_sharing_experience_im);
+    public void initView() {
+        setContentView(R.layout.activity_add_work_daily);
+        getSupportActionBar().setTitle("工作日报");
+        add_summary = (EditText) findViewById(R.id.add_work_daily_summary_et);
+        add_plan = (EditText) findViewById(R.id.add_work_daily_plan_et);
+        add_experience = (EditText) findViewById(R.id.add_work_daily_experience_et);
+        add_submit = (ImageView) findViewById(R.id.add_work_daily_submit_iv);
+        share_experience = (ImageView) findViewById(R.id.add_work_daily_sharing_experience_im);
 /*
-
        //工作总结不为空及字数限制提醒
        add_summary.addTextChangedListener(new TextWatcher() {
            @Override
@@ -159,42 +156,42 @@ public class WorkDailyAddActivity extends BaseActivity implements View.OnTouchLi
        });
 */
 
-       add_submit.setOnClickListener(new View.OnClickListener() {
-           @Override
-           public void onClick(View v) {
-             //  if(add_summary.testValidity()){
-                   sendAble();
-           //    }
-           }
-       });
-       share_experience.setOnClickListener(new View.OnClickListener() {
-           @Override
-           public void onClick(View v) {
-               if(StringUtils.isEmpty(add_experience.getText().toString())){
-                   ToastMessage("请先填写工作心得再分享");
-               }else{
-                   new android.app.AlertDialog
-                           .Builder(mContext)
-                           .setTitle("温馨提示")
-                           .setMessage("你将进行工作心得分享至朋友圈操作,是否继续?")
-                           .setNegativeButton("取消",null)
+        add_submit.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                //  if(add_summary.testValidity()){
+                sendAble();
+                //    }
+            }
+        });
+        share_experience.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                if (StringUtils.isEmpty(add_experience.getText().toString())) {
+                    ToastMessage("请先填写工作心得再分享");
+                } else {
+                    new android.app.AlertDialog
+                            .Builder(mContext)
+                            .setTitle("温馨提示")
+                            .setMessage("你将进行工作心得分享至朋友圈操作,是否继续?")
+                            .setNegativeButton("取消", null)
 
-                           .setPositiveButton("确定", new DialogInterface.OnClickListener() {
-                               @Override
-                               public void onClick(DialogInterface dialog, int which) {
-                                   Intent intent = new Intent(WorkDailyAddActivity.this, SendShuoshuoActivity.class);
-                                   intent.putExtra("Experience",add_experience.getText().toString());
-                                   intent.putExtra("type", 0);
-                                   startActivity(intent);
-                               }
-                           }).show();
-               }
-           }
-       });
+                            .setPositiveButton("确定", new DialogInterface.OnClickListener() {
+                                @Override
+                                public void onClick(DialogInterface dialog, int which) {
+                                    Intent intent = new Intent(WorkDailyAddActivity.this, SendShuoshuoActivity.class);
+                                    intent.putExtra("Experience", add_experience.getText().toString());
+                                    intent.putExtra("type", 0);
+                                    startActivity(intent);
+                                }
+                            }).show();
+                }
+            }
+        });
 
     }
 
-    private  void showsubmitDialog() {
+    private void showsubmitDialog() {
         new AlertDialog
                 .Builder(mContext)
                 .setTitle("温馨提示")
@@ -207,6 +204,7 @@ public class WorkDailyAddActivity extends BaseActivity implements View.OnTouchLi
                     }
                 }).show();
     }
+
     private void sendAble() {
         StringBuilder builder = new StringBuilder();
         if (!StringUtils.isEmpty(add_summary.getText().toString())) {
@@ -228,20 +226,23 @@ public class WorkDailyAddActivity extends BaseActivity implements View.OnTouchLi
         showsubmitDialog();
     }
 
-    private void sendWorkDailyByErp(String s1,String s2,String s3) {
+    private void sendWorkDailyByErp(String s1, String s2, String s3) {
+        s1= string2Json(s1);
+        s2= string2Json(s2);
+        s3= string2Json(s3);
         String url = CommonUtil.getSharedPreferences(ct, "erp_baseurl") + "mobile/addWorkReport.action";
         Map<String, Object> formStoreMap = new HashMap<>();
         formStoreMap.put("wd_empcode", CommonUtil.getSharedPreferences(ct, "erp_username"));
         formStoreMap.put("wd_comment", s1);
         formStoreMap.put("wd_plan", s2);
         formStoreMap.put("wd_experience", s3);
-        String formStore = StringUtils.mapToJson(formStoreMap);        HashMap<String, Object> params = new HashMap<>();
+        String formStore = StringUtils.mapToJson(formStoreMap);
+        HashMap<String, Object> params = new HashMap<>();
         params.put("caller", "WorkDaily");
         params.put("formStore", formStore);
         LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
         headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
         ViewUtil.httpSendRequest(this, url, params, handler, headers, 0x12, null, null, "get");
-
         Log.i("handleMessage: ", formStore);
     }
 
@@ -249,8 +250,8 @@ public class WorkDailyAddActivity extends BaseActivity implements View.OnTouchLi
     public boolean onTouch(View v, MotionEvent event) {
         //触摸的是EditText并且当前EditText可以滚动则将事件交给EditText处理;否则将事件交由其父类处理
         if ((v.getId() == R.id.add_work_daily_summary_et && CommonUtil.canVerticalScroll(add_summary))
-                ||(v.getId() == R.id.add_work_daily_experience_et && CommonUtil.canVerticalScroll(add_experience))
-                ||(v.getId() == R.id.add_work_daily_plan_et && CommonUtil.canVerticalScroll(add_plan))){
+                || (v.getId() == R.id.add_work_daily_experience_et && CommonUtil.canVerticalScroll(add_experience))
+                || (v.getId() == R.id.add_work_daily_plan_et && CommonUtil.canVerticalScroll(add_plan))) {
             v.getParent().requestDisallowInterceptTouchEvent(true);
             if (event.getAction() == MotionEvent.ACTION_UP) {
                 v.getParent().requestDisallowInterceptTouchEvent(false);
@@ -258,4 +259,45 @@ public class WorkDailyAddActivity extends BaseActivity implements View.OnTouchLi
         }
         return false;
     }
+
+    /**
+     * JSON字符串特殊字符处理,比如:“\A1;1300”
+     * @param s
+     * @return String
+     */
+    public String string2Json(String s) {
+        StringBuffer sb = new StringBuffer();
+        for (int i=0; i<s.length(); i++) {
+            char c = s.charAt(i);
+            switch (c){
+                case '\"':
+                    sb.append("\\\"");
+                    break;
+                case '\\':
+                    sb.append("\\\\");
+                    break;
+                case '/':
+                    sb.append("\\/");
+                    break;
+                case '\b':
+                    sb.append("\\b");
+                    break;
+                case '\f':
+                    sb.append("\\f");
+                    break;
+                case '\n':
+                    sb.append("\\n");
+                    break;
+                case '\r':
+                    sb.append("\\r");
+                    break;
+                case '\t':
+                    sb.append("\\t");
+                    break;
+                default:
+                    sb.append(c);
+            }
+        }
+        return sb.toString();
+    }
 }

+ 38 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/adapter/SubscriptionAdapter.java

@@ -0,0 +1,38 @@
+package com.xzjmyk.pm.activity.ui.erp.adapter;
+
+import android.support.v7.widget.RecyclerView;
+import android.view.View;
+import android.view.ViewGroup;
+
+/**
+ * Created by Bitliker on 2016/11/16.
+ */
+
+public class SubscriptionAdapter extends RecyclerView.Adapter<SubscriptionAdapter.SubViewHolder> {
+
+
+    @Override
+    public SubViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
+        return null;
+    }
+
+    @Override
+    public void onBindViewHolder(SubViewHolder holder, int position) {
+
+    }
+
+    @Override
+    public int getItemCount() {
+        return 0;
+    }
+
+    class SubViewHolder extends RecyclerView.ViewHolder{
+
+        public SubViewHolder(View itemView) {
+            super(itemView);
+        }
+    }
+
+
+
+}

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

@@ -844,7 +844,6 @@ public class ViewUtil {
             }
         });
 
-
     }
 
     // 登录ERP

+ 13 - 11
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/me/MeFragment.java

@@ -46,7 +46,6 @@ import com.xzjmyk.pm.activity.ui.erp.util.JsonValidator;
 import com.xzjmyk.pm.activity.ui.erp.util.StringUtils;
 import com.xzjmyk.pm.activity.ui.erp.util.ViewUtil;
 import com.xzjmyk.pm.activity.ui.erp.view.MasterDialog;
-import com.xzjmyk.pm.activity.ui.erp.view.SelectPicPopupWindow;
 import com.xzjmyk.pm.activity.ui.tool.SingleImagePreviewActivity;
 import com.xzjmyk.pm.activity.util.PreferenceUtils;
 import com.xzjmyk.pm.activity.util.ToastUtil;
@@ -98,7 +97,7 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
     private Context ct;
     public MasterDialog mDialog;
 
-    private Handler mhandler =  new Handler() {
+    private Handler mhandler = new Handler() {
         @Override
         public void handleMessage(Message msg) {
             switch (msg.what) {
@@ -210,7 +209,12 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
         if (createView) {
             setHasOptionsMenu(true);
             initView();
-            iv_remain.setVisibility(MainActivity.isUnReadWork ? View.GONE : View.VISIBLE);
+            iv_remain.post(new Runnable() {
+                @Override
+                public void run() {
+                    iv_remain.setVisibility(MainActivity.isUnReadWork ? View.VISIBLE : View.GONE);
+                }
+            });
         }
     }
 
@@ -315,10 +319,7 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
                 MainActivity.isUnReadWork = false;
                 Intent intent = new Intent(getActivity(), BusinessCircleActivity.class);
                 intent.putExtra(AppConstant.EXTRA_CIRCLE_TYPE, AppConstant.CIRCLE_TYPE_MY_BUSINESS);
-                if (MainActivity.timeMin != -1 && MainActivity.timeMin != PreferenceUtils.getLong(getActivity(), MainActivity.TIME_MAIN)) {
-                    PreferenceUtils.putLong(getActivity(), MainActivity.TIME_MAIN, MainActivity.timeMin); //获取以前时间
-                } else {
-                }
+                PreferenceUtils.putLong(getActivity(), "TIMEMAIN", System.currentTimeMillis() / 1000);
                 startActivity(intent);
                 break;
             case R.id.my_space_rl:// 我的空间
@@ -331,7 +332,7 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
                 break;
             case R.id.setting_rl:// 设置
                 //startActivity(new Intent(getActivity(), DataFormDetailActivity.class));
-               startActivity(new Intent(getActivity(), SettingActivity.class));
+                startActivity(new Intent(getActivity(), SettingActivity.class));
                 break;
             case R.id.app_scan_code_rl://APP二维码
                 ImageView imageView = new ImageView(getActivity());
@@ -380,14 +381,15 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
             AvatarHelper.getInstance().displayAvatar(MyApplication.getInstance().mLoginUser.getUserId(), mAvatarImg, true);
             mNickNameTv.setText(MyApplication.getInstance().mLoginUser.getNickName());
         }
-
         if (requestCode == REQUEST_CODE && resultCode == Activity.RESULT_OK && data != null) {
             data.setClass(getActivity(), CaptureResultActivity.class);
             startActivity(data);
         }
+
     }
 
-    public void setChangerRemain(boolean isRead) {//isRead:true 已阅读   false: 未阅读
+    //isRead:true 已阅读   false: 未阅读
+    public void setChangerRemain(boolean isRead) {
         iv_remain.setVisibility(isRead ? View.GONE : View.VISIBLE);
     }
 
@@ -427,7 +429,7 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
             ViewUtil.httpSendRequest(ct, url, params, mhandler, headers, 2, null, null, "get");
         } else {
             String masterlist = CommonUtil.getSharedPreferences(ct, "erp_masterlist");
-            Log.i("bbb",masterlist);
+            Log.i("bbb", masterlist);
             List<Master> mList = JSON.parseArray(masterlist, Master.class);
             if (CommonUtil.isDialogShowing(mDialog)) {
                 return;

+ 40 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/message/Subscription2Activity.java

@@ -0,0 +1,40 @@
+package com.xzjmyk.pm.activity.ui.message;
+
+import android.os.Bundle;
+import android.support.v4.widget.SwipeRefreshLayout;
+
+import com.lidroid.xutils.ViewUtils;
+import com.lidroid.xutils.view.annotation.ViewInject;
+import com.xzjmyk.pm.activity.R;
+import com.xzjmyk.pm.activity.ui.base.BaseActivity;
+
+public class Subscription2Activity extends BaseActivity {
+    @ViewInject(R.id.swiperefresh)
+    private SwipeRefreshLayout swiperefresh;
+    @ViewInject(R.id.recycler)
+    private SwipeRefreshLayout recycler;
+
+//    private long
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.activity_subscription2);
+        ViewUtils.inject(this);
+        init();
+        initView();
+        initEvent();
+    }
+
+    private void initEvent() {
+
+    }
+
+    private void initView() {
+
+    }
+
+    private void init() {
+
+    }
+}

+ 8 - 2
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/message/SubscriptionActivity.java

@@ -21,6 +21,7 @@ import android.widget.TextView;
 import com.alibaba.fastjson.JSON;
 import com.handmark.pulltorefresh.library.PullToRefreshBase;
 import com.handmark.pulltorefresh.library.PullToRefreshListView;
+import com.xzjmyk.pm.activity.MyApplication;
 import com.xzjmyk.pm.activity.R;
 import com.xzjmyk.pm.activity.bean.message.SortSubsrciprion;
 import com.xzjmyk.pm.activity.bean.message.SubscriptionMessage;
@@ -37,6 +38,7 @@ import com.xzjmyk.pm.activity.util.LoadLocalImageUtil;
 import com.xzjmyk.pm.activity.util.TimeUtils;
 import com.xzjmyk.pm.activity.util.ToastUtil;
 import com.xzjmyk.pm.activity.view.MyListView;
+import com.xzjmyk.pm.activity.view.crouton.Style;
 
 import java.util.ArrayList;
 import java.util.Calendar;
@@ -320,6 +322,10 @@ public class SubscriptionActivity extends BaseActivity {
 
     //获取数据
     public void loadNetData(long date) {
+        if (!MyApplication.getInstance().isNetworkActive()) {
+            ViewUtil.ToastMessage(ct, ct.getResources().getString(R.string.networks_out), Style.holoRedLight, 2000);
+            return;
+        }
         //获取网络数据
         String url = baseUrl + "common/desktop/subs/getSubs.action";
         final Map<String, Object> param = new HashMap<>();
@@ -334,7 +340,7 @@ public class SubscriptionActivity extends BaseActivity {
     @Override
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
         super.onActivityResult(requestCode, resultCode, data);
-        if (requestCode == REQUEST_SUBS_DETAIL && resultCode == 22 && data != null){
+        if (requestCode == REQUEST_SUBS_DETAIL && resultCode == 22 && data != null) {
             ArrayList<Integer> readSubs = data.getIntegerArrayListExtra("readsubs");
             SortSubsrciprion sortSubsrciprion = sortSubsrciprions.get(mClickPos);
             sortSubsrciprions.remove(mClickPos);
@@ -522,7 +528,7 @@ public class SubscriptionActivity extends BaseActivity {
                     intent_web.putExtra("subsact", "subsDetail");
                     intent_web.putExtra("position", i);
                     intent_web.putExtra("subsdata", beans);
-                    SubscriptionActivity.this.startActivityForResult(intent_web,REQUEST_SUBS_DETAIL);
+                    SubscriptionActivity.this.startActivityForResult(intent_web, REQUEST_SUBS_DETAIL);
 
                     if (bean.getSTATUS_() == 0) {//当点击未读消息
                         SubscriptionDao.getInstance().UpdateStatus(bean.getID_() + "", true);

+ 0 - 26
WeiChat/src/main/java/com/xzjmyk/pm/activity/util/CalculateUtil.java

@@ -1,26 +0,0 @@
-package com.xzjmyk.pm.activity.util;
-
-/**
- * Created by gongpm on 2016/7/27.
- * 计算工具类
- */
-public class CalculateUtil {
-    private static CalculateUtil instance;
-
-    private CalculateUtil() {
-    }
-
-    public static CalculateUtil getInstance() {
-        if (instance == null) {
-            synchronized (CalculateUtil.class) {
-                instance = new CalculateUtil();
-            }
-        }
-        return instance;
-    }
-
-
-
-
-
-}

+ 0 - 109
WeiChat/src/main/java/com/xzjmyk/pm/activity/util/JsonUtils.java

@@ -1,109 +0,0 @@
-package com.xzjmyk.pm.activity.util;
-
-import org.json.JSONArray;
-import org.json.JSONObject;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-/**
- * 解析json
- * update gongpm 2016/07/27
- */
-public class JsonUtils {
-
-    /**
-     * 解析List<Map<String,String>>集合
-     *
-     * @param key
-     * @param json
-     * @return
-     */
-    public static List<Map<String, Object>> parseListKeyMaps(String key, String json) {
-        List<Map<String, Object>> list = new ArrayList<>();
-        try {
-            JSONObject jsonObject = new JSONObject(json);
-            JSONArray jsonArray = jsonObject.getJSONArray(key);
-            for (int i = 0; i < jsonArray.length(); i++) {
-                JSONObject jsonObject2 = jsonArray.getJSONObject(i);
-                Map<String, Object> map = new HashMap<>();
-                Iterator<String> iterator = jsonObject2.keys();
-                while (iterator.hasNext()) {
-                    String json_key = iterator.next();
-                    Object json_value = jsonObject2.get(json_key);
-                    if (json_value == null) {
-                        json_value = "";
-                    }
-                    map.put(json_key, json_value);
-                }
-                list.add(map);
-            }
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
-        return list;
-    }
-
-
-    /**
-     * 解析List<Map<String,String>>集合
-     *
-     * @param
-     * @param json
-     * @return
-     */
-    public static List<Map<String, String>> parseListMaps(String json) {
-        List<Map<String, String>> list = new ArrayList<Map<String, String>>();
-        try {
-            JSONArray jsonArray = new JSONArray(json);
-            for (int i = 0; i < jsonArray.length(); i++) {
-                JSONObject jsonObject2 = jsonArray.getJSONObject(i);
-                Map<String, String> map = new HashMap<String, String>();
-                Iterator<String> iterator = jsonObject2.keys();
-                while (iterator.hasNext()) {
-                    String json_key = iterator.next();
-                    Object json_value = jsonObject2.get(json_key);
-                    if (json_value == null) {
-                        json_value = "";
-                    }
-                    map.put(json_key, "" + json_value);
-                }
-                list.add(map);
-            }
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
-        return list;
-    }
-
-
-    /**
-     * 解析map 集合
-     *
-     * @param key
-     * @param json
-     * @return
-     */
-    public static HashMap<String, String> parseMaps(String key, String json) {
-        HashMap<String, String> map = new HashMap<String, String>();
-        try {
-            JSONObject jsonObject = new JSONObject(json);
-            String string = jsonObject.getString(key);
-            JSONObject jsonObject2 = new JSONObject(string);
-            Iterator<String> iterator = jsonObject2.keys();
-            while (iterator.hasNext()) {
-                String json_key = iterator.next();
-                Object json_value = jsonObject2.get(json_key);
-                if (json_value == null) {
-                    json_value = "";
-                }
-                map.put(json_key, "" + json_value);
-            }
-        } catch (Exception e) {
-        }
-        return map;
-    }
-}

+ 6 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/util/PreferenceUtils.java

@@ -4,6 +4,8 @@ import android.content.Context;
 import android.content.SharedPreferences;
 import android.content.SharedPreferences.Editor;
 
+import com.xzjmyk.pm.activity.MyApplication;
+
 /**
  * SharedPreferences存储数据类
  */
@@ -108,6 +110,10 @@ public class PreferenceUtils {
 		SharedPreferences sp = getPreferences(context);
 		return sp.getLong(key, defValue);
 	}
+	public static Long getLong( String key,long defValue){
+		SharedPreferences sp = getPreferences(MyApplication.getInstance());
+		return sp.getLong(key, defValue);
+	}
 	public static Long getLong(Context context,String key){
 		SharedPreferences sp = getPreferences(context);
 		return getLong(context, key, 1l);

+ 22 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/view/MostHeightLinearLayout.java

@@ -0,0 +1,22 @@
+package com.xzjmyk.pm.activity.view;
+
+import android.content.Context;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.view.View;
+
+/**
+ * Created by Bitliker on 2016/11/16.
+ */
+
+public class MostHeightLinearLayout extends LinearLayoutManager {
+    public MostHeightLinearLayout(Context context) {
+        super(context);
+    }
+
+    @Override
+    public void onMeasure(RecyclerView.Recycler recycler, RecyclerView.State state, int widthSpec, int heightSpec) {
+        heightSpec = View.MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2, View.MeasureSpec.AT_MOST);//
+        super.onMeasure(recycler, state, widthSpec, heightSpec);
+    }
+}

+ 13 - 0
WeiChat/src/main/res/layout/activity_subscription2.xml

@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<android.support.v4.widget.SwipeRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:id="@+id/swiperefresh"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    tools:context="com.xzjmyk.pm.activity.ui.message.Subscription2Activity">
+
+    <android.support.v7.widget.RecyclerView
+        android:id="@+id/recycler"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent" />
+</android.support.v4.widget.SwipeRefreshLayout>

+ 17 - 13
WeiChat/src/main/res/layout/bigimage_subscription.xml

@@ -8,14 +8,26 @@
         android:id="@+id/small_ll"
         android:layout_width="match_parent"
         android:layout_height="60dp"
+        android:orientation="horizontal"
         android:padding="3dp"
-        android:visibility="gone"
-        android:orientation="horizontal">
+        android:visibility="gone">
+
+        <TextView
+            android:id="@+id/isre_tv"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_alignTop="@+id/small_img"
+            android:layout_toLeftOf="@+id/small_img"
+            android:maxLines="3"
+            android:padding="8dp"
+            android:textSize="14sp" />
 
         <TextView
             android:id="@+id/small_tv"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
+            android:layout_alignParentLeft="true"
+            android:layout_toLeftOf="@id/isre_tv"
             android:maxLines="3"
             android:padding="5dp"
             android:textSize="@dimen/text_main" />
@@ -25,21 +37,13 @@
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:layout_alignParentBottom="true"
-            android:layout_toLeftOf="@+id/small_img"
+            android:layout_alignParentLeft="true"
+            android:layout_toLeftOf="@id/isre_tv"
             android:ellipsize="end"
             android:lines="1"
             android:padding="4dp"
             android:textSize="@dimen/text_min" />
 
-        <TextView
-            android:id="@+id/isre_tv"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_alignTop="@+id/small_img"
-            android:layout_toLeftOf="@+id/small_img"
-            android:maxLines="3"
-            android:padding="8dp"
-            android:textSize="14sp" />
 
         <ImageView
             android:id="@+id/small_img"
@@ -90,9 +94,9 @@
             android:id="@+id/big_isre_tv"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
+            android:layout_alignParentBottom="true"
             android:layout_alignParentRight="true"
             android:layout_margin="10dp"
-            android:layout_alignParentBottom="true"
             android:layout_marginBottom="5dp"
             android:textSize="@dimen/text_hine" />
     </RelativeLayout>