Browse Source

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

raomeng 8 years ago
parent
commit
6472077f4b
45 changed files with 336 additions and 305 deletions
  1. 1 1
      WeiChat/src/main/AndroidManifest.xml
  2. 33 2
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/MainActivity.java
  3. 5 3
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/OAActivity.java
  4. BIN
      WeiChat/src/main/res/drawable-hdpi/ic_meeting_address.png
  5. BIN
      WeiChat/src/main/res/drawable-hdpi/ic_meeting_time.png
  6. BIN
      WeiChat/src/main/res/drawable-hdpi/ic_metting_label.png
  7. BIN
      WeiChat/src/main/res/drawable-hdpi/ic_metting_people.png
  8. BIN
      WeiChat/src/main/res/drawable-xhdpi/ic_meeting_address.png
  9. BIN
      WeiChat/src/main/res/drawable-xhdpi/ic_meeting_time.png
  10. BIN
      WeiChat/src/main/res/drawable-xhdpi/ic_metting_label.png
  11. BIN
      WeiChat/src/main/res/drawable-xhdpi/ic_metting_people.png
  12. BIN
      WeiChat/src/main/res/drawable-xxhdpi/ic_meeting_address.png
  13. BIN
      WeiChat/src/main/res/drawable-xxhdpi/ic_meeting_time.png
  14. BIN
      WeiChat/src/main/res/drawable-xxhdpi/ic_metting_label.png
  15. BIN
      WeiChat/src/main/res/drawable-xxhdpi/ic_metting_people.png
  16. 0 4
      WeiChat/src/main/res/layout/activity_book_add.xml
  17. 12 5
      WeiChat/src/main/res/layout/activity_expense_reimbursement.xml
  18. 1 0
      WeiChat/src/main/res/layout/activity_workdaily_detail.xml
  19. 0 18
      WeiChat/src/main/res/layout/item_approval_enclosure.xml
  20. 31 5
      WeiChat/src/main/res/layout/item_mission.xml
  21. 0 1
      WeiChat/src/main/res/layout/item_pop_list.xml
  22. 23 0
      app_core/common/src/main/java/com/core/base/EasyFragment.java
  23. 21 0
      app_core/common/src/main/java/com/core/utils/CommonUtil.java
  24. 1 1
      app_core/common/src/main/java/com/core/utils/NotificationManage.java
  25. 8 3
      app_core/common/src/main/res/drawable/oa_next.xml
  26. 15 11
      app_core/common/src/main/res/layout/act_taskerp_add.xml
  27. 2 0
      app_core/common/src/main/res/layout/activity_common_docui.xml
  28. 0 18
      app_core/common/src/main/res/layout/item_approval_enclosure.xml
  29. 2 2
      app_core/common/src/main/res/layout/view_loading.xml
  30. 3 0
      app_core/common/src/main/res/values/colors.xml
  31. 1 1
      app_modular/appbooking/src/main/java/com/modular/booking/activity/services/BServicesActivity.java
  32. 0 5
      app_modular/appbooking/src/main/res/layout/activity_bbooking_add.xml
  33. 2 0
      app_modular/appcontact/src/main/java/com/uas/appcontact/ui/fragment/GroupChatFragment.java
  34. 36 1
      app_modular/appmessages/src/main/java/com/modular/appmessages/adapter/ApprovalAdapter.java
  35. 0 185
      app_modular/appmessages/src/main/java/com/modular/appmessages/adapter/MessageAdapter.java
  36. 54 8
      app_modular/appmessages/src/main/java/com/modular/appmessages/adapter/MessageNewAdapter.java
  37. 1 3
      app_modular/appmessages/src/main/java/com/modular/appmessages/presenter/MessagePresenter.java
  38. 27 0
      app_modular/appmessages/src/main/res/layout/item_approval_enclosure.xml
  39. 1 1
      app_modular/appmessages/src/main/res/layout/item_message_header.xml
  40. 19 7
      app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/UserSelectActivity.java
  41. 8 1
      app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/adapter/HListViewOneAdapter.java
  42. 13 7
      app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/activity/MeetingActivity.java
  43. 5 0
      app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/activity/form/DataFormDetailActivity.java
  44. 11 11
      app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/activity/form/FormListSelectActivity.java
  45. 0 1
      app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/utils/approvautils/NodeAdapter.java

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

@@ -110,7 +110,7 @@
     <application
         android:name="com.core.app.MyApplication"
         android:allowBackup="true"
-        android:hardwareAccelerated="false"
+        android:hardwareAccelerated="true"
         android:icon="@drawable/uuu"
         android:label="@string/app_name"
         android:largeHeap="true"

+ 33 - 2
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/MainActivity.java

@@ -14,6 +14,7 @@ import android.os.Build;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.IBinder;
+import android.os.Looper;
 import android.os.Message;
 import android.os.Messenger;
 import android.os.PersistableBundle;
@@ -67,6 +68,7 @@ import com.core.model.User;
 import com.core.model.WorkModel;
 import com.core.net.NetWorkObservable;
 import com.core.net.http.ViewUtil;
+import com.core.net.http.http.OAHttpHelper;
 import com.core.net.volley.ArrayResult;
 import com.core.net.volley.FastVolley;
 import com.core.net.volley.Result;
@@ -107,6 +109,8 @@ import java.util.HashMap;
 import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.Timer;
+import java.util.TimerTask;
 
 import static android.view.View.GONE;
 
@@ -284,12 +288,39 @@ public class MainActivity extends BaseActivity implements ImStatusListener, NetW
 //      animation.setRepeatCount(-1);//设置重复次数
         animation.setFillAfter(true);//动画执行完后是否停留在执行完的状态
         animation.setStartOffset(0);//执行前的等待时间
-        view.setTag(R.id.tag_key,animation);
+        view.setTag(R.id.tag_key, animation);
         return animation;
     }
 
+    private Timer delayTimer;
+    private Runnable uiRunnable=new Runnable() {
+        @Override
+        public void run() {
+            if (main_tab_three != null) {
+                main_tab_three.startAnimation(getImgAnimation(main_tab_three));
+            }
+        }
+    };
+
+    private void delay() {
+        if (delayTimer == null) {
+            delayTimer = new Timer();
+        }
+        delayTimer.schedule(new TimerTask() {
+            @Override
+            public void run() {
+                OAHttpHelper.getInstance().post(uiRunnable);
+            }
+        }, 100);
+    }
+
     private void startAnimator(View view) {
-        view.startAnimation(getImgAnimation(view));
+        if (view != null && main_tab_three == view) {
+            delay();
+        } else {
+            view.startAnimation(getImgAnimation(view));
+
+        }
     }
 
     /**

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

@@ -807,6 +807,7 @@ public class OAActivity extends SupportToolBarActivity implements View.OnClickLi
             plist.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                 @Override
                 public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
+                    LogUtil.i("onItemClick");
                     Intent intent = null;
                     popupWindow.dismiss();
                     switch (position) {
@@ -836,14 +837,15 @@ public class OAActivity extends SupportToolBarActivity implements View.OnClickLi
                                     .putExtra("title", name);
                             break;
                     }
-                    if (intent != null)
+                    if (intent != null){
                         startActivityForResult(intent, 0x20);
+                    }
                 }
             });
             popupWindow =new PopupWindow(view);
 //                    new PopupWindow(view, windowManager.getDefaultDisplay().getWidth() / 3, windowManager.getDefaultDisplay().getHeight() / 3);
             popupWindow.setWidth(DisplayUtil.dip2px(ct,140));
-            popupWindow.setHeight(DisplayUtil.dip2px(ct,150));
+            popupWindow.setHeight(DisplayUtil.dip2px(ct,135));
             }
         // 使其聚集
         popupWindow.setFocusable(true);
@@ -860,7 +862,7 @@ public class OAActivity extends SupportToolBarActivity implements View.OnClickLi
         popupWindow.setBackgroundDrawable(getResources().getDrawable(R.drawable.top_bubble));
 //        popupWindow.setHeight(ViewGroup.LayoutParams.WRAP_CONTENT);
         // 显示的位置为:屏幕的宽度的一半-PopupWindow的高度的一半
-        popupWindow.showAsDropDown(parent, windowManager.getDefaultDisplay().getWidth()-DisplayUtil.dip2px(ct,10), 0);
+        popupWindow.showAsDropDown(parent, -DisplayUtil.dip2px(ct,100), 0);
     }
 
     private List<Map<String, Object>> getPopData() {

BIN
WeiChat/src/main/res/drawable-hdpi/ic_meeting_address.png


BIN
WeiChat/src/main/res/drawable-hdpi/ic_meeting_time.png


BIN
WeiChat/src/main/res/drawable-hdpi/ic_metting_label.png


BIN
WeiChat/src/main/res/drawable-hdpi/ic_metting_people.png


BIN
WeiChat/src/main/res/drawable-xhdpi/ic_meeting_address.png


BIN
WeiChat/src/main/res/drawable-xhdpi/ic_meeting_time.png


BIN
WeiChat/src/main/res/drawable-xhdpi/ic_metting_label.png


BIN
WeiChat/src/main/res/drawable-xhdpi/ic_metting_people.png


BIN
WeiChat/src/main/res/drawable-xxhdpi/ic_meeting_address.png


BIN
WeiChat/src/main/res/drawable-xxhdpi/ic_meeting_time.png


BIN
WeiChat/src/main/res/drawable-xxhdpi/ic_metting_label.png


BIN
WeiChat/src/main/res/drawable-xxhdpi/ic_metting_people.png


+ 0 - 4
WeiChat/src/main/res/layout/activity_book_add.xml

@@ -25,7 +25,6 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_marginLeft="40dp"
-                android:layout_marginTop="@dimen/padding"
                 android:text="*"
                 android:textColor="@color/red" />
             <TextView
@@ -51,7 +50,6 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_marginLeft="40dp"
-                android:layout_marginTop="@dimen/padding"
                 android:text="*"
                 android:textColor="@color/red" />
             <TextView
@@ -78,7 +76,6 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_marginLeft="40dp"
-                android:layout_marginTop="@dimen/padding"
                 android:text="*"
                 android:textColor="@color/red" />
             <TextView
@@ -107,7 +104,6 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_marginLeft="40dp"
-                android:layout_marginTop="@dimen/padding"
                 android:text="*"
                 android:textColor="@color/red" />
             <EditText

+ 12 - 5
WeiChat/src/main/res/layout/activity_expense_reimbursement.xml

@@ -35,7 +35,8 @@
                 <TextView
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
-                    android:layout_alignTop="@id/name_tv"
+                    android:layout_marginLeft="10dp"
+                    android:layout_marginTop="10dp"
                     android:layout_toRightOf="@id/name_tv"
                     android:text="*"
                     android:textColor="@color/red" />
@@ -50,7 +51,7 @@
                     android:layout_alignParentRight="true"
                     android:background="@null"
                     android:gravity="center_vertical|right"
-                    android:hint="@string/common_input"
+                    android:hint="@string/common_input2"
                     android:maxLength="30"
                     android:padding="10dp"
                     android:textColor="@color/dark_dark_grey"
@@ -77,13 +78,16 @@
                     android:text="@string/Reimbursement_type"
                     android:textColor="@color/text_main"
                     android:textSize="15sp" />
+
                 <TextView
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
-                    android:layout_alignTop="@id/type_left"
+                    android:layout_marginLeft="10dp"
+                    android:layout_marginTop="3dp"
                     android:layout_toRightOf="@id/type_left"
                     android:text="*"
                     android:textColor="@color/red" />
+
                 <com.andreabaccega.widget.FormEditText xmlns:editTextFormExample="http://schemas.android.com/apk/res-auto"
                     android:id="@+id/reimbursement_type_fet"
                     android:layout_width="wrap_content"
@@ -93,7 +97,7 @@
                     android:background="@null"
                     android:ellipsize="end"
                     android:gravity="center_vertical|right"
-                    android:hint="@string/common_select"
+                    android:hint="@string/common_select1"
                     android:padding="10dp"
                     android:singleLine="true"
                     android:textColor="@color/dark_dark_grey"
@@ -125,13 +129,16 @@
                     android:text="@string/currency"
                     android:textColor="@color/text_main"
                     android:textSize="15sp" />
+
                 <TextView
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
-                    android:layout_alignTop="@id/reimbursement_type"
+                    android:layout_marginLeft="10dp"
+                    android:layout_marginTop="3dp"
                     android:layout_toRightOf="@id/reimbursement_type"
                     android:text="*"
                     android:textColor="@color/red" />
+
                 <com.andreabaccega.widget.FormEditText xmlns:editTextFormExample="http://schemas.android.com/apk/res-auto"
                     android:id="@+id/reimbursement_currency_fet"
                     android:layout_width="100dp"

+ 1 - 0
WeiChat/src/main/res/layout/activity_workdaily_detail.xml

@@ -273,6 +273,7 @@
                     android:layout_width="match_parent"
                     android:layout_height="wrap_content"
                     android:visibility="visible"
+                    android:dividerHeight="0dp"
                     android:background="#ebe9e9"
                     >
                 </com.core.widget.MyListView>

+ 0 - 18
WeiChat/src/main/res/layout/item_approval_enclosure.xml

@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-              style="@style/approvalStyle">
-
-    <TextView
-        android:id="@+id/nameTv"
-        android:layout_marginTop="8dp"
-        android:layout_marginBottom="8dp"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:gravity="center|left"
-        android:layout_marginLeft="20dp"
-        android:layout_marginRight="20dp"
-        android:textColor="@color/titleBlue"/>
-
-
-
-</LinearLayout>

+ 31 - 5
WeiChat/src/main/res/layout/item_mission.xml

@@ -52,6 +52,13 @@
             android:textColor="@color/text_main"
             android:textSize="@dimen/text_main" />
 
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="match_parent"
+            android:layout_marginLeft="70dp"
+            android:layout_marginTop="4dp"
+            android:text="*"
+            android:textColor="@color/red"/>
         <TextView
             android:id="@+id/item_company_tv"
             android:layout_width="wrap_content"
@@ -62,7 +69,7 @@
             android:drawableRight="@drawable/company"
             android:ellipsize="end"
             android:gravity="center|right"
-            android:hint="@string/common_select"
+            android:hint="@string/common_select1"
             android:maxLines="2"
             android:textColor="@color/text_hine"
             android:textSize="@dimen/text_hine" />
@@ -92,6 +99,13 @@
             android:textColor="@color/text_main"
             android:textSize="@dimen/text_main" />
         <!--android:drawableRight="@drawable/addr_bule"-->
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="match_parent"
+            android:layout_marginLeft="70dp"
+            android:layout_marginTop="4dp"
+            android:text="*"
+            android:textColor="@color/red"/>
         <TextView
             android:id="@+id/item_companyaddr_tv"
             android:layout_width="wrap_content"
@@ -129,7 +143,13 @@
             android:text="@string/visit_aim"
             android:textColor="@color/text_main"
             android:textSize="@dimen/text_main" />
-
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="match_parent"
+            android:layout_marginLeft="70dp"
+            android:layout_marginTop="4dp"
+            android:text="*"
+            android:textColor="@color/red"/>
         <TextView
             android:id="@+id/item_remark_tv"
             android:layout_width="wrap_content"
@@ -138,7 +158,7 @@
             android:layout_toRightOf="@+id/remark_tag"
             android:drawableRight="@drawable/oa_next"
             android:gravity="center|right"
-            android:hint="@string/common_select"
+            android:hint="@string/common_select1"
             android:minHeight="@dimen/misson_item_height"
             android:textColor="@color/text_hine"
             android:textSize="@dimen/text_hine" />
@@ -371,7 +391,13 @@
             android:text="@string/expected_arrival_time"
             android:textColor="@color/text_main"
             android:textSize="@dimen/text_main" />
-
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="match_parent"
+            android:layout_marginLeft="100dp"
+            android:layout_marginTop="4dp"
+            android:text="*"
+            android:textColor="@color/red"/>
         <TextView
             android:id="@+id/item_reckontime_tv"
             android:layout_width="wrap_content"
@@ -379,7 +405,7 @@
             android:layout_alignParentRight="true"
             android:drawableRight="@drawable/oa_next"
             android:gravity="center"
-            android:hint="@string/common_select"
+            android:hint="@string/common_select1"
             android:textColor="@color/text_main"
             android:textSize="@dimen/text_hine" />
     </RelativeLayout>

+ 0 - 1
WeiChat/src/main/res/layout/item_pop_list.xml

@@ -1,7 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:clickable="true"
     android:background="@drawable/select_weixin_list_item"
     android:layout_height="wrap_content">
     <TextView

+ 23 - 0
app_core/common/src/main/java/com/core/base/EasyFragment.java

@@ -11,6 +11,9 @@ import android.support.v4.content.ContextCompat;
 import android.util.Log;
 import android.util.SparseArray;
 import android.view.LayoutInflater;
+import android.view.Menu;
+import android.view.MenuInflater;
+import android.view.MenuItem;
 import android.view.View;
 import android.view.ViewGroup;
 
@@ -64,6 +67,26 @@ public abstract class EasyFragment extends Fragment {
 	 */
 	protected abstract void onCreateView(Bundle savedInstanceState, boolean createView);
 
+
+	private MenuItem.OnMenuItemClickListener omOnMenuItemClickListener= new MenuItem.OnMenuItemClickListener() {
+		@Override
+		public boolean onMenuItemClick(MenuItem menuItem) {
+			onOptionsItemSelected(menuItem);
+			return false;
+		}
+	};
+	@Override
+	public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+		if (menu!=null){
+			for (int i=0;i<menu.size();i++){
+				MenuItem item = menu.getItem(i);
+				if (item!=null){
+					item.setOnMenuItemClickListener(omOnMenuItemClickListener);
+				}
+			}
+		}
+		super.onCreateOptionsMenu(menu, inflater);
+	}
 	public View getmRootView() {
 		return mRootView;
 	}

+ 21 - 0
app_core/common/src/main/java/com/core/utils/CommonUtil.java

@@ -52,6 +52,7 @@ import com.core.dao.DBManager;
 import com.core.dao.SignAutoLogDao;
 import com.core.interfac.OnVoiceCompleteListener;
 import com.core.model.EmployeesEntity;
+import com.core.net.http.http.OAHttpHelper;
 import com.core.xmpp.model.SignAutoLogEntity;
 import com.core.xmpp.utils.audio.voicerecognition.JsonParser;
 import com.iflytek.cloud.RecognizerResult;
@@ -887,7 +888,27 @@ public class CommonUtil {
         }
 
     }
+    /**
+     * 关闭软键盘
+     *
+     * @param mContext  上下文
+     */
+    public static void closeKeybord( final Activity mContext) {
+
+        if (mContext != null) {
+            LogUtil.i("gong","closeKeybord");
+            OAHttpHelper.getInstance().postDelayed(new Runnable() {
+                @Override
+                public void run() {
+                    InputMethodManager imm = (InputMethodManager) mContext
+                            .getSystemService(Context.INPUT_METHOD_SERVICE);
+                    LogUtil.i("gong", "closeKeybord  showshow");
+                    imm.hideSoftInputFromWindow(mContext.getWindow().getDecorView().getWindowToken(), 0);
+                }
+            }, 100);
+        }
 
+    }
     public static boolean isBiteman() {
         String baseUrl = getSharedPreferences(MyApplication.getInstance(), "erp_base");
         return !StringUtil.isEmpty(baseUrl) && baseUrl.contains("http://202.104.151.184:8099/ERP/");

+ 1 - 1
app_core/common/src/main/java/com/core/utils/NotificationManage.java

@@ -39,7 +39,7 @@ public class NotificationManage {
     private void sendNotification(Context context, int icon, String title, String group, String content, Class<? extends Activity> clazz) {
         NotificationManager mNotificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
         NotificationCompat.Builder builder = new NotificationCompat.Builder(context.getApplicationContext());
-        builder.setDefaults(Notification.DEFAULT_SOUND | Notification.DEFAULT_VIBRATE);
+//        builder.setDefaults(Notification.DEFAULT_SOUND | Notification.DEFAULT_VIBRATE);
         builder.setAutoCancel(true);
         builder.setContentTitle(title);
         builder.setContentText(content);

+ 8 - 3
app_core/common/src/main/res/drawable/oa_next.xml

@@ -1,4 +1,9 @@
-<vector android:height="24dp" android:viewportHeight="1024"
-    android:viewportWidth="1024" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
-    <path android:fillColor="#D4D4D4" android:pathData="M769.79,476.03 L416.48,125.92c-18.85,-18.66 -49.22,-18.53 -67.87,0.32 -18.66,18.82 -18.53,49.22 0.32,67.87l319.46,316.58 -318.18,321.06c-18.66,18.82 -18.53,49.22 0.32,67.87 9.34,9.28 21.57,13.92 33.79,13.92 12.35,0 24.7,-4.74 34.08,-14.21l350.11,-353.31c0.51,-0.51 0.67,-1.25 1.18,-1.79 0.13,-0.13 0.29,-0.16 0.42,-0.29C788.74,525.09 788.64,494.69 769.79,476.03z"/>
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="10dp"
+    android:height="15dp"
+    android:viewportHeight="1024"
+    android:viewportWidth="1024">
+    <path
+        android:fillColor="#D4D4D4"
+        android:pathData="M769.79,476.03 L416.48,125.92c-18.85,-18.66 -49.22,-18.53 -67.87,0.32 -18.66,18.82 -18.53,49.22 0.32,67.87l319.46,316.58 -318.18,321.06c-18.66,18.82 -18.53,49.22 0.32,67.87 9.34,9.28 21.57,13.92 33.79,13.92 12.35,0 24.7,-4.74 34.08,-14.21l350.11,-353.31c0.51,-0.51 0.67,-1.25 1.18,-1.79 0.13,-0.13 0.29,-0.16 0.42,-0.29C788.74,525.09 788.64,494.69 769.79,476.03z" />
 </vector>

+ 15 - 11
app_core/common/src/main/res/layout/act_taskerp_add.xml

@@ -26,7 +26,8 @@
             <TextView
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:layout_alignTop="@id/tv_title"
+                android:layout_marginLeft="10dp"
+                android:layout_marginTop="6dp"
                 android:layout_toRightOf="@id/tv_title"
                 android:text="*"
                 android:textColor="@color/red" />
@@ -37,7 +38,7 @@
                 android:layout_toRightOf="@+id/tv_title"
                 android:background="@null"
                 android:gravity="right|center_vertical"
-                android:hint="@string/common_input" />
+                android:hint="@string/common_input2" />
         </RelativeLayout>
 
         <RelativeLayout
@@ -56,9 +57,9 @@
             <TextView
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:layout_alignTop="@id/detailsTV"
+                android:layout_marginLeft="10dp"
+                android:layout_marginTop="6dp"
                 android:layout_toRightOf="@id/detailsTV"
-                android:layout_marginTop="@dimen/padding"
                 android:text="*"
                 android:textColor="@color/red" />
             <ImageView
@@ -78,7 +79,7 @@
             android:layout_height="100dp"
             android:layout_marginBottom="10dp"
             android:background="@color/white"
-            android:hint="@string/common_input"
+            android:hint="@string/common_input2"
             android:paddingLeft="10dp"
             android:textSize="15sp" />
 
@@ -96,8 +97,9 @@
                 android:text="@string/task_executor" />
             <TextView
                 android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:layout_alignTop="@id/tv_task_peoples"
+                android:layout_height="wrap_content"      
+                android:layout_marginLeft="2dp"
+                android:layout_marginTop="20dp"
                 android:layout_toRightOf="@id/tv_task_peoples"
                 android:text="*"
                 android:textColor="@color/red" />
@@ -152,7 +154,8 @@
             <TextView
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:layout_alignTop="@id/tv_startime"
+                android:layout_marginLeft="10dp"
+                android:layout_marginTop="6dp"
                 android:layout_toRightOf="@id/tv_startime"
                 android:text="*"
                 android:textColor="@color/red" />
@@ -163,7 +166,7 @@
                 android:layout_toRightOf="@+id/tv_startime"
                 android:background="@null"
                 android:gravity="right"
-                android:hint="@string/common_select" />
+                android:hint="@string/common_select1" />
         </RelativeLayout>
 
         <View
@@ -189,7 +192,8 @@
             <TextView
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:layout_alignTop="@id/tv_task_startime"
+                android:layout_marginLeft="10dp"
+                android:layout_marginTop="6dp"
                 android:layout_toRightOf="@id/tv_task_startime"
                 android:text="*"
                 android:textColor="@color/red" />
@@ -200,7 +204,7 @@
                 android:layout_toRightOf="@+id/tv_task_startime"
                 android:background="@null"
                 android:gravity="right"
-                android:hint="@string/common_select" />
+                android:hint="@string/common_select1" />
 
         </RelativeLayout>
         <!--

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

@@ -187,6 +187,8 @@
                 android:layout_height="wrap_content"
                 android:layout_marginBottom="10dp"
                 android:background="#ebe9e9"
+                android:divider="@color/white"
+                android:dividerHeight="0dp"
                 android:focusableInTouchMode="false"
                 android:visibility="visible"></com.core.widget.MyListView>
 

+ 0 - 18
app_core/common/src/main/res/layout/item_approval_enclosure.xml

@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-              style="@style/approvalStyle">
-
-    <TextView
-        android:id="@+id/nameTv"
-        android:layout_marginTop="8dp"
-        android:layout_marginBottom="8dp"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:gravity="center|left"
-        android:layout_marginLeft="20dp"
-        android:layout_marginRight="20dp"
-        android:textColor="@color/titleBlue"/>
-
-
-
-</LinearLayout>

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

@@ -16,8 +16,8 @@
         android:src="@drawable/ic_loading" /> -->
       <ProgressBar
         android:id="@+id/imageViewLoading"
-        android:layout_width="50dp"
-        android:layout_height="50dp"
+        android:layout_width="40dp"
+        android:layout_height="40dp"
         android:layout_centerInParent="true"
         android:indeterminateDrawable="@drawable/frame_loading" />
 

+ 3 - 0
app_core/common/src/main/res/values/colors.xml

@@ -352,4 +352,7 @@
 
     <color name="common_pop_item_normal">#CCFFFFFF</color>
     <color name="common_pop_item_pressed">#D8D8D8</color>
+    <color name="meeting_end_status">#9B9B9B</color>
+    <color name="meeting_start_status">#3BAE7E</color>
+    <color name="meeting_before_status">#FF0000</color>
 </resources>

+ 1 - 1
app_modular/appbooking/src/main/java/com/modular/booking/activity/services/BServicesActivity.java

@@ -118,7 +118,7 @@ public class BServicesActivity extends OABaseActivity implements View.OnClickLis
         drawBg = getResources().getDrawable(R.color.antionbarcolor);
         //  drawBg.setAlpha(0);
         // bar.setSplitBackgroundDrawable(new ColorDrawable(Color.parseColor("#330000ff")));
-        bar.setBackgroundDrawable(drawBg);
+//        bar.setBackgroundDrawable(drawBg);
         bar.setCustomView(view);
 
 

+ 0 - 5
app_modular/appbooking/src/main/res/layout/activity_bbooking_add.xml

@@ -33,7 +33,6 @@
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_marginLeft="40dp"
-                    android:layout_marginTop="@dimen/padding"
                     android:text="*"
                     android:textColor="@color/red" />
                 <TextView
@@ -61,7 +60,6 @@
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_marginLeft="40dp"
-                    android:layout_marginTop="@dimen/padding"
                     android:text="*"
                     android:textColor="@color/red" />
                 <TextView
@@ -89,7 +87,6 @@
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_marginLeft="40dp"
-                    android:layout_marginTop="@dimen/padding"
                     android:text="*"
                     android:textColor="@color/red" />
                 <TextView
@@ -120,7 +117,6 @@
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_marginLeft="40dp"
-                    android:layout_marginTop="@dimen/padding"
                     android:text="*"
                     android:textColor="@color/red" />
                 <TextView
@@ -152,7 +148,6 @@
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_marginLeft="40dp"
-                    android:layout_marginTop="@dimen/padding"
                     android:text="*"
                     android:textColor="@color/red" />
                 <EditText

+ 2 - 0
app_modular/appcontact/src/main/java/com/uas/appcontact/ui/fragment/GroupChatFragment.java

@@ -21,6 +21,7 @@ import android.widget.TextView;
 
 import com.android.volley.Response.ErrorListener;
 import com.android.volley.VolleyError;
+import com.common.LogUtil;
 import com.common.data.CalendarUtil;
 import com.common.data.StringUtil;
 import com.common.ui.ProgressDialogUtil;
@@ -100,6 +101,7 @@ public class GroupChatFragment extends EasyFragment {
     @Override
     public boolean onOptionsItemSelected(MenuItem item) {
         if (item.getItemId() == R.id.add_item) {
+            LogUtil.i("onOptionsItemSelected");
 //            startActivity(new Intent(getActivity(), SelectContactsActivity.class));
             startActivity(new Intent("com.modular.groupchat.CreateGroupActivity"));
         }

+ 36 - 1
app_modular/appmessages/src/main/java/com/modular/appmessages/adapter/ApprovalAdapter.java

@@ -117,6 +117,7 @@ public class ApprovalAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
             case Approval.SETUPTASK:
                 return new BaseRVViewHodler(parent);
             case Approval.ENCLOSURE://单行列表
+                return new EnclosureViewHolder(parent);
             case Approval.TAG:
                 return new TagViewHolder(parent);
             case Approval.POINTS:
@@ -137,6 +138,8 @@ public class ApprovalAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
                 bindTitleView((TitleViewHolder) holder, position);
             } else if (holder instanceof BaseRVViewHodler) {
                 bindBaseRVView((BaseRVViewHodler) holder, position);
+            } else if (holder instanceof EnclosureViewHolder) {
+                bindEnclosureView((EnclosureViewHolder) holder, position);
             } else if (holder instanceof TagViewHolder) {
                 bindTAGView((TagViewHolder) holder, position);
             } else if (holder instanceof PointsViewHolder) {
@@ -302,6 +305,23 @@ public class ApprovalAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
 
     }
 
+    private void bindEnclosureView(EnclosureViewHolder holder, final int position) {
+        String name = approvals.get(position).getCaption();
+        holder.enclosureTv.setText(TextUtils.isEmpty(name) ? "" : name);
+        holder.enclosureTv.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                gotoReadEnclosure(approvals.get(position));
+            }
+        });
+
+        if ((position + 1) < ListUtils.getSize(approvals) && approvals.get(position).getType() != approvals.get(position + 1).getType()) {
+            holder.endView.setVisibility(View.VISIBLE);
+        } else {
+            holder.endView.setVisibility(View.GONE);
+        }
+    }
+
     private void bindTAGView(TagViewHolder holder, final int position) {
         holder.valuesRG.setVisibility(View.GONE);
         String name = approvals.get(position).getCaption();
@@ -499,7 +519,7 @@ public class ApprovalAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
             if (isWeb(approval.getValues())) {
                 setViewShowAble(true, holder.valueWeb);
                 setViewShowAble(false, holder.valueEt, holder.valueTv);
-                LogUtil.i(approval.getValues());
+                LogUtil.i("isWeb" + approval.getValues());
                 holder.valueWeb.loadDataWithBaseURL(null, approval.getValues(), "text/html", "utf-8", null);
             } else {
                 setViewShowAble(true, holder.valueTv);
@@ -623,6 +643,21 @@ public class ApprovalAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
         }
     }
 
+    private class EnclosureViewHolder extends RecyclerView.ViewHolder {
+        TextView enclosureTv;
+        View endView;
+
+        public EnclosureViewHolder(ViewGroup parent) {
+            this(LayoutInflater.from(ct).inflate(R.layout.item_approval_enclosure, parent, false));
+        }
+
+        public EnclosureViewHolder(View itemView) {
+            super(itemView);
+            enclosureTv = itemView.findViewById(R.id.nameTv);
+            endView = itemView.findViewById(R.id.endView);
+        }
+    }
+
     private class TagViewHolder extends RecyclerView.ViewHolder {
         TextView nameTv;
         View padding, line;

+ 0 - 185
app_modular/appmessages/src/main/java/com/modular/appmessages/adapter/MessageAdapter.java

@@ -1,185 +0,0 @@
-package com.modular.appmessages.adapter;
-
-import android.content.Context;
-import android.text.Html;
-import android.text.TextUtils;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.BaseAdapter;
-import android.widget.ImageView;
-import android.widget.TextView;
-
-import com.common.data.ListUtils;
-import com.common.data.StringUtil;
-import com.core.app.MyApplication;
-import com.core.model.Friend;
-import com.core.model.XmppMessage;
-import com.core.utils.TimeUtils;
-import com.core.utils.helper.AvatarHelper;
-import com.core.utils.sortlist.BaseSortModel;
-import com.core.xmpp.utils.HtmlUtils;
-import com.modular.appmessages.R;
-
-import java.util.List;
-
-/**
- * Created by Bitliker on 2017/3/1.
- */
-
-public class MessageAdapter extends BaseAdapter {
-
-    private List<BaseSortModel<Friend>> mFriendList;
-    private Context mContext;
-
-    public MessageAdapter(List<BaseSortModel<Friend>> mFriendList, Context mContext) {
-        this.mFriendList = mFriendList;
-        this.mContext = mContext;
-    }
-
-    public List<BaseSortModel<Friend>> getmFriendList() {
-        return mFriendList;
-    }
-
-    public void setmFriendList(List<BaseSortModel<Friend>> mFriendList) {
-        this.mFriendList = mFriendList;
-    }
-
-    @Override
-    public int getCount() {
-        return ListUtils.isEmpty(mFriendList) ? 0 : mFriendList.size();
-    }
-
-    @Override
-    public Object getItem(int position) {
-        return mFriendList.get(position).getBean();
-    }
-
-    @Override
-    public long getItemId(int position) {
-        return position;
-    }
-
-    @Override
-    public View getView(int position, View convertView, ViewGroup parent) {
-        Friend friend = (Friend) getItem(position);
-        ViewHolder holder = null;
-        if (convertView == null) {
-            convertView = LayoutInflater.from(mContext).inflate(R.layout.item_message_header, null);
-            holder = new ViewHolder();
-            holder.avatar_img = (ImageView) convertView.findViewById(R.id.headerImg);
-            holder.num_tv = (TextView) convertView.findViewById(R.id.headerNumTv);
-            holder.nick_name_tv = (TextView) convertView.findViewById(R.id.titleTv);
-            holder.content_tv = (TextView) convertView.findViewById(R.id.headerSubTv);
-            holder.time_tv = (TextView) convertView.findViewById(R.id.timeTv);
-            convertView.setTag(holder);
-        } else {
-            holder = (ViewHolder) convertView.getTag();
-        }
-        bindView(holder, friend);
-        return convertView;
-    }
-
-    private void bindView(ViewHolder holder, Friend friend) {
-        holder.avatar_img.setBackgroundResource(R.color.transparent);
-        //设置头像
-        if (friend.getType() == XmppMessage.TYPE_ERP) {
-            doShowMsgPhotos(holder, friend);
-            holder.time_tv.setText(TimeUtils.getFriendlyTimeDesc(MyApplication.getInstance(), friend.getTimeSend()));
-        } else if (friend.getType() == XmppMessage.TYPE_UUHELPER) {
-            holder.time_tv.setText(TimeUtils.getFriendlyTimeDesc(MyApplication.getInstance(), friend.getTimeSend()));
-            holder.avatar_img.setImageResource( R.drawable.icon_uuhelper);
-        } else {
-            if (friend.getRoomFlag() == 0) {// 这是单个人
-                AvatarHelper.getInstance().display(friend.getUserId(), holder.avatar_img, false, false);//每次刷新都会去删除此人缓存
-            } else {
-                if (TextUtils.isEmpty(friend.getRoomCreateUserId())) {
-                    holder.avatar_img.setImageResource(R.drawable.qunliao);
-                } else {
-                    AvatarHelper.getInstance().displayAvatarPng(friend.getRoomCreateUserId(), holder.avatar_img, true);// 目前在备注名放房间的创建者Id
-                }
-            }
-            holder.time_tv.setText(TimeUtils.getFriendlyTimeDesc(MyApplication.getInstance(), friend.getTimeSend()));
-        }
-
-        //设置名字和时间
-        holder.nick_name_tv.setText(friend.getRemarkName() != null ? friend.getRemarkName() : friend.getNickName());
-        //设置内容数据显示
-        CharSequence content = "";
-        if (friend.getType() == XmppMessage.TYPE_TEXT) {
-            String s = StringUtil.replaceSpecialChar(friend.getContent());
-            content = HtmlUtils.transform200SpanString(s.replaceAll("\n", "\r\n"), true);
-        } else {
-            content = friend.getContent();
-        }
-        if (!TextUtils.isEmpty(content)) {
-            holder.content_tv.setText(Html.fromHtml(content.toString()));
-        } else {
-            holder.content_tv.setText("");
-        }
-        //设置红点显示数量
-        if (friend.getUnReadNum() > 0) {
-            String numStr = friend.getUnReadNum() >= 99 ? "99+" : friend.getUnReadNum() + "";
-            holder.num_tv.setText(numStr);
-            holder.num_tv.setVisibility(View.VISIBLE);
-        } else {
-            holder.num_tv.setVisibility(View.GONE);
-        }
-
-    }
-
-    private void doShowMsgPhotos(ViewHolder holder, Friend friend) {
-        String msg_type = friend.getDescription();
-        if (!TextUtils.isEmpty(msg_type)) {
-            int imageurl = 0;
-            switch (msg_type) {
-                case "note": // 通知公告
-                    imageurl = R.drawable.home_image_03_u;
-                    break;
-                case "common": // 普通知会
-                    imageurl = R.drawable.putongzhihui;
-                    break;
-                case "b2b": // b2b提醒
-                    imageurl = R.drawable.b2btixing;
-                    break;
-                case "crm":  // CRM提醒
-                    imageurl = R.drawable.crmtixing;
-                    break;
-                case "kpi": // 考勤提醒
-                    imageurl = R.drawable.kaoqintixing;
-                    break;
-                case "meeting": // 会议提醒
-                    imageurl = R.drawable.huiyitixing;
-                    break;
-                case "process": // 审批知会
-                    imageurl = R.drawable.shenpizhihui;
-                    break;
-                case "job": // 稽核提醒
-                    imageurl = R.drawable.jihetixing;
-                    break;
-                case "system": // 知会消息
-                    imageurl = R.drawable.zhihuixiaoxi;
-                    break;
-                case "task": // 任务提醒
-                    imageurl = R.drawable.home_image_02_u;
-                    break;
-                default:
-                    imageurl = R.drawable.gongzuotixing;
-            }
-            holder.avatar_img.setImageResource(imageurl);
-        }
-    }
-
-    class ViewHolder {
-        //头像
-        ImageView avatar_img;
-        //数目
-        TextView num_tv;
-        //名字
-        TextView nick_name_tv;
-        //内容
-        TextView content_tv;
-        //时间
-        TextView time_tv;
-    }
-}

+ 54 - 8
app_modular/appmessages/src/main/java/com/modular/appmessages/adapter/MessageNewAdapter.java

@@ -1,6 +1,7 @@
 package com.modular.appmessages.adapter;
 
 import android.content.Context;
+import android.graphics.Bitmap;
 import android.support.v7.widget.RecyclerView;
 import android.text.Html;
 import android.text.TextUtils;
@@ -10,6 +11,7 @@ import android.view.ViewGroup;
 import android.widget.ImageView;
 import android.widget.TextView;
 
+import com.common.LogUtil;
 import com.common.data.ListUtils;
 import com.common.data.StringUtil;
 import com.core.app.MyApplication;
@@ -23,6 +25,10 @@ import com.core.xmpp.utils.HtmlUtils;
 import com.modular.appmessages.R;
 import com.modular.appmessages.model.MessageHeader;
 import com.modular.appmessages.model.MessageNew;
+import com.nostra13.universalimageloader.core.DisplayImageOptions;
+import com.nostra13.universalimageloader.core.ImageLoader;
+import com.nostra13.universalimageloader.core.assist.FailReason;
+import com.nostra13.universalimageloader.core.assist.ImageLoadingListener;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -113,24 +119,25 @@ public class MessageNewAdapter extends RecyclerView.Adapter<MessageNewAdapter.Vi
     @Override
     public void onBindViewHolder(ViewHolder viewHolder, int i) {
         MessageNew model = models.get(i);
-        viewHolder.itemView.setTag(R.id.tag_key,i);
-        viewHolder.itemView.setTag(R.id.tag_key2,model);
+        viewHolder.itemView.setTag(R.id.tag_key, i);
+        viewHolder.itemView.setTag(R.id.tag_key2, model);
         if (model != null && model.getT() != null) {
             if (model.getT() instanceof MessageHeader) {
-                bindHeader((MessageHeader) model.getT(), viewHolder);
+                bindHeader((MessageHeader) model.getT(), viewHolder,i);
             } else if (model.getT() instanceof BaseSortModel) {
                 BaseSortModel baseSortModel = (BaseSortModel) model.getT();
                 if (baseSortModel.getBean() instanceof Friend) {
-                    bindView(viewHolder, (Friend) baseSortModel.getBean());
+                    bindView(viewHolder, (Friend) baseSortModel.getBean(), i);
                 }
             }
         }
     }
 
 
-    private void bindHeader(MessageHeader model, ViewHolder hodler) {
+    private void bindHeader(MessageHeader model, ViewHolder hodler,int position) {
         hodler.itemView.setOnLongClickListener(null);
         hodler.itemView.setOnClickListener(mOnClickListener);
+        hodler.headerImg.setTag(position);
         if (model != null) {
             hodler.headerImg.setImageResource(model.getIcon());
             if (model.getRedNum() > 0) {
@@ -183,7 +190,7 @@ public class MessageNewAdapter extends RecyclerView.Adapter<MessageNewAdapter.Vi
         }
     };
 
-    private void bindView(ViewHolder holder, Friend friend) {
+    private void bindView(final ViewHolder holder, Friend friend, final int position) {
         holder.itemView.setOnLongClickListener(mOnLongClickListener);
         holder.itemView.setOnClickListener(mOnClickListener);
         holder.headerImg.setBackgroundResource(R.color.transparent);
@@ -196,7 +203,41 @@ public class MessageNewAdapter extends RecyclerView.Adapter<MessageNewAdapter.Vi
             holder.headerImg.setImageResource(R.drawable.icon_uuhelper);
         } else {
             if (friend.getRoomFlag() == 0) {// 这是单个人
-                AvatarHelper.getInstance().display(friend.getUserId(), holder.headerImg, false, false);//每次刷新都会去删除此人缓存
+                String url = AvatarHelper.getInstance().getAvatarUrl(friend.getUserId(), false);
+                holder.headerImg.setTag(position);
+                ImageLoader.getInstance().displayImage(url, holder.headerImg, mNormalImageOptions, new ImageLoadingListener() {
+                    @Override
+                    public void onLoadingStarted(String s, View view) {
+                        LogUtil.i("gong","onLoadingStarted");
+                    }
+
+                    @Override
+                    public void onLoadingFailed(String s, View view, FailReason failReason) {
+                        LogUtil.i("gong","onLoadingFailed");
+                        if (holder.headerImg.getTag() != null && holder.headerImg.getTag() instanceof Integer) {
+                            int item = (int) holder.headerImg.getTag();
+                            if (item == position) {
+                                holder.headerImg.setImageResource(R.drawable.avatar_round);
+                            }
+                        }
+                    }
+
+                    @Override
+                    public void onLoadingComplete(String s, View view, Bitmap bitmap) {
+                        LogUtil.i("gong","onLoadingComplete");
+                        if (holder.headerImg.getTag() != null && holder.headerImg.getTag() instanceof Integer) {
+                            int item = (int) holder.headerImg.getTag();
+                            if (item == position) {
+                                holder.headerImg.setImageBitmap(bitmap);
+                            }
+                        }
+                    }
+
+                    @Override
+                    public void onLoadingCancelled(String s, View view) {
+                        LogUtil.i("gong","onLoadingCancelled");
+                    }
+                });
             } else {
                 if (TextUtils.isEmpty(friend.getRoomCreateUserId())) {
                     holder.headerImg.setImageResource(R.drawable.qunliao);
@@ -232,7 +273,12 @@ public class MessageNewAdapter extends RecyclerView.Adapter<MessageNewAdapter.Vi
         }
 
     }
-
+    DisplayImageOptions   mNormalImageOptions = new DisplayImageOptions.Builder()
+            .bitmapConfig(Bitmap.Config.RGB_565)
+                .cacheInMemory(true)
+                .cacheOnDisc(true)
+                .resetViewBeforeLoading(false)
+                .build();
     private void doShowMsgPhotos(ViewHolder holder, Friend friend) {
         String msg_type = friend.getDescription();
         if (!TextUtils.isEmpty(msg_type)) {

+ 1 - 3
app_modular/appmessages/src/main/java/com/modular/appmessages/presenter/MessagePresenter.java

@@ -38,10 +38,8 @@ import com.core.model.XmppMessage;
 import com.core.net.http.http.OAHttpHelper;
 import com.core.net.http.http.OnHttpResultListener;
 import com.core.net.http.http.Request;
-import com.core.net.utils.NetUtils;
 import com.core.utils.CommonUtil;
 import com.core.utils.TimeUtils;
-import com.core.utils.ToastUtil;
 import com.core.utils.sortlist.BaseSortModel;
 import com.core.utils.sortlist.PingYinUtil;
 import com.core.xmpp.dao.ChatMessageDao;
@@ -909,7 +907,7 @@ public class MessagePresenter implements OnHttpResultListener {
     }
 
     public WorkModel getCurrentWork() {
-        List<WorkModel> workModels = WorkModelDao.getInstance().queryAuto();
+        List<WorkModel> workModels = WorkModelDao.getInstance().query(true);
         WorkModel workModel = null;
         String newsTime = DateFormatUtil.long2Str(DateFormatUtil.HM);
         if (!ListUtils.isEmpty(workModels)) {

+ 27 - 0
app_modular/appmessages/src/main/res/layout/item_approval_enclosure.xml

@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:orientation="vertical"
+    android:background="@color/white">
+
+    <TextView
+        android:layout_marginTop="2dp"
+        android:layout_marginBottom="2dp"
+        android:id="@+id/nameTv"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginLeft="20dp"
+        android:background="@drawable/bg_enclosure"
+        android:paddingLeft="@dimen/padding"
+        android:paddingRight="@dimen/padding"
+        android:text="附件"
+        android:textColor="@color/text_main"
+        android:textSize="12sp" />
+    <View
+        android:layout_width="match_parent"
+        android:layout_height="10dp"
+        android:visibility="gone"
+        android:id="@+id/endView"
+        />
+</LinearLayout>

+ 1 - 1
app_modular/appmessages/src/main/res/layout/item_message_header.xml

@@ -23,7 +23,7 @@
             android:background="@color/transparent"
             android:contentDescription="@string/app_name"
             android:padding="1dp"
-            android:src="@drawable/icon_message_huisuo" />
+            android:src="@drawable/avatar_round" />
 
         <TextView
             android:id="@+id/headerNumTv"

+ 19 - 7
app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/UserSelectActivity.java

@@ -33,6 +33,7 @@ import com.core.net.http.ViewUtil;
 import com.core.utils.CommonUtil;
 import com.core.utils.FlexJsonUtil;
 import com.core.widget.ClearEditText;
+import com.core.widget.EmptyLayout;
 import com.handmark.pulltorefresh.library.PullToRefreshBase;
 import com.handmark.pulltorefresh.library.PullToRefreshListView;
 import com.uas.appworks.R;
@@ -98,6 +99,8 @@ public class UserSelectActivity extends BaseActivity {
                             listview.setAdapter(adapter);
                         } else
                             adapter.setUsers(list);
+                    }else{
+                        mEmptyLayout.showEmpty();
                     }
 
                     //判断selectList不为空
@@ -125,6 +128,8 @@ public class UserSelectActivity extends BaseActivity {
                             listview.setAdapter(adapter);
                         } else
                             adapter.setUsers(list);
+                    }else{
+                        mEmptyLayout.showEmpty();
                     }
                     if (selectedList != null && selectedList.size() != 0) {
                         for (int i = 0; i < list.size(); i++) {
@@ -145,10 +150,10 @@ public class UserSelectActivity extends BaseActivity {
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
-        if (getIntent() != null && getIntent().getIntExtra("reid", -1) != -1) {
-            setTheme(getSharedPreferences("cons", MODE_PRIVATE).getInt("theme",
-                    getIntent().getIntExtra("reid", -1)));
-        }
+//        if (getIntent() != null && getIntent().getIntExtra("reid", -1) != -1) {
+//            setTheme(getSharedPreferences("cons", MODE_PRIVATE).getInt("theme",
+//                    getIntent().getIntExtra("reid", -1)));
+//        }
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_meet_select);
         listview = (PullToRefreshListView) findViewById(R.id.listview);
@@ -168,14 +173,21 @@ public class UserSelectActivity extends BaseActivity {
         initView();
         init();
     }
-
+private EmptyLayout mEmptyLayout;
     private void initView() {
        setTitle(R.string.select_user);
-        View view = LayoutInflater.from(this).inflate(R.layout.view_empty, null);
-        listview.setEmptyView(view);
+//        View view = LayoutInflater.from(this).inflate(R.layout.view_empty, null);
+//        listview.setEmptyView(view);
         adapter = new MeetSelectAdapter();
         listview.setAdapter(adapter);
         listview.setMode(PullToRefreshBase.Mode.DISABLED);
+
+        mEmptyLayout = new EmptyLayout(this, listview.getRefreshableView());
+        mEmptyLayout.setShowLoadingButton(false);
+        mEmptyLayout.setShowEmptyButton(false);
+        mEmptyLayout.setShowErrorButton(false);
+        mEmptyLayout.setEmptyMessage("暂无数据");
+
         search_edit.addTextChangedListener(new TextWatcher() {
             @Override
             public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {

+ 8 - 1
app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/adapter/HListViewOneAdapter.java

@@ -85,7 +85,7 @@ public class HListViewOneAdapter extends BaseAdapter {
                     if (index!=0){
                         holder.tv_item[i].setText("●");
                         holder.tv_item[i].setTextSize(TypedValue.COMPLEX_UNIT_DIP, 23);
-                        holder.tv_item[i].setTextColor(Color.parseColor(items.get(i)));
+                        holder.tv_item[i].setTextColor(getColor(items.get(i)));
 //                        holder.tv_item[i].setMinWidth(CommonUtil.dip2px(ct, 50));
 //                        holder.tv_item[i].setMinHeight(CommonUtil.dip2px(ct, 50));
                     }else{
@@ -99,6 +99,13 @@ public class HListViewOneAdapter extends BaseAdapter {
         return view;
     }
 
+    private int getColor(String color){
+        try{
+            return Color.parseColor(color);
+        }catch (Exception e){
+            return 0xe9e9e9;
+        }
+    }
   public  class ViewHolder {
       public TextView[] tv_item;
       public  LinearLayout ll_root;

+ 13 - 7
app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/activity/MeetingActivity.java

@@ -272,14 +272,20 @@ public class MeetingActivity extends BaseActivity  {
             //当系统时间<开始时间 会议状态为未开始,
             // 当会议开始时间<系统时间会议状态为进行中,当会议发起人点击结束会议按钮,
             // 状态更新为已结束,否则即使超过会议结束时间状态也是进行中
-            String str = entities.get(i).getMa_stage();
-            if (str == null || str.trim().length() <= 0) {
-                if (TimeUtils.f_str_2_long(entities.get(i).getMa_starttime())<= System.currentTimeMillis())
-                    str = getResources().getString(R.string.doing);
-                else
-                    str = getResources().getString(R.string.not_bigan);
+            String status = entities.get(i).getMa_stage();
+            int statusColor=R.color.meeting_end_status;
+            if (status == null || status.trim().length() <= 0) {
+                if (TimeUtils.f_str_2_long(entities.get(i).getMa_starttime())<= System.currentTimeMillis()){
+                    status = getResources().getString(R.string.doing);
+                    statusColor=R.color.meeting_start_status;
+                }
+                else{
+                    status = getResources().getString(R.string.not_bigan);
+                    statusColor=R.color.meeting_end_status;
+                }
             }
-            entities.get(i).setMa_stage(str);
+            entities.get(i).setMa_stage(status);
+            viewholder.oa_meeting_status_tv.setTextColor(getResources().getColor(statusColor));
             viewholder.oa_meeting_status_tv.setText(entities.get(i).getMa_stage());
             long startLong = TimeUtils.f_str_2_long(entities.get(i).getMa_starttime());
             long endLong = TimeUtils.f_str_2_long(entities.get(i).getMa_endtime());

+ 5 - 0
app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/activity/form/DataFormDetailActivity.java

@@ -1510,6 +1510,11 @@ public class DataFormDetailActivity extends BaseActivity implements View.OnClick
 
     }
 
+    @Override
+    protected void onDestroy() {
+        CommonUtil.closeKeybord(this);
+        super.onDestroy();
+    }
 
     private void paseSelectDbFind(JSONObject object) throws Exception {
         List<Data> tempLists = mAdapter.getmListData().get(0).getDatas();

+ 11 - 11
app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/activity/form/FormListSelectActivity.java

@@ -170,17 +170,18 @@ public class FormListSelectActivity extends BaseActivity implements View.OnClick
 
     private void initIDs() {
         mlistview = findViewById(R.id.lv_sale_list);
-        voiceSearchView =findViewById(R.id.voiceSearchView);
+        voiceSearchView = findViewById(R.id.voiceSearchView);
         ivDeleteText = findViewById(R.id.iv_DeleteText);
     }
 
     private static final String TAG = "FormListSelectActivity";
+
     private void initView() {
         Intent intent = getIntent();
         caller = intent.getStringExtra("caller");
         from = intent.getStringExtra("from");
-        statusKey  =intent.getStringExtra("statusKey");
-        LogUtil.d(TAG,"statusKey:"+statusKey);
+        statusKey = intent.getStringExtra("statusKey");
+        LogUtil.d(TAG, "statusKey:" + statusKey);
         if (!StringUtil.isEmpty(intent.getStringExtra("title"))) {
             setTitle(intent.getStringExtra("title"));
         }
@@ -191,11 +192,11 @@ public class FormListSelectActivity extends BaseActivity implements View.OnClick
         key = user + master + caller;
         calendar = Calendar.getInstance();
         sBroadcast = new StateBroadcast();
-        
+
         IntentFilter intentFilter = new IntentFilter();
         intentFilter.addAction("com.erp.sale.dataupdate");
         registerReceiver(sBroadcast, intentFilter);
-        
+
         mlistview.setFilterTouchEvents(false);
         mlistview.setMode(PullToRefreshBase.Mode.BOTH);
         mlistview.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
@@ -280,7 +281,6 @@ public class FormListSelectActivity extends BaseActivity implements View.OnClick
             }
         });
 
-     
 
         voiceSearchView.addTextChangedListener(new TextWatcher() {
             @Override
@@ -310,8 +310,7 @@ public class FormListSelectActivity extends BaseActivity implements View.OnClick
             }
         });
 
-        
-        
+
         mlistview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
 
             @Override
@@ -341,8 +340,8 @@ public class FormListSelectActivity extends BaseActivity implements View.OnClick
 //                } else {
 //                    statusKey = "ct_status";
 //                }
-                if (StringUtil.isEmpty(statusKey)){
-                    statusKey="ct_status";
+                if (StringUtil.isEmpty(statusKey)) {
+                    statusKey = "ct_status";
                 }
                 if (StringUtil.isEmpty(pfField)) {
                     pfField = keyField;
@@ -395,7 +394,7 @@ public class FormListSelectActivity extends BaseActivity implements View.OnClick
                         startActivity(new Intent(mContext,
                                 DataFormDetailActivity.class)
                                 .putExtra("caller", caller)
-                                .putExtra("title",getToolBarTitle().toString())
+                                .putExtra("title", getToolBarTitle().toString())
                                 .putExtra("status", status)
                                 .putExtra("id", keyId));
                     }
@@ -491,6 +490,7 @@ public class FormListSelectActivity extends BaseActivity implements View.OnClick
 
     @Override
     protected void onDestroy() {
+        CommonUtil.closeKeybord(this);
         super.onDestroy();
         unregisterReceiver(sBroadcast);
     }

+ 0 - 1
app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/utils/approvautils/NodeAdapter.java

@@ -74,7 +74,6 @@ public class NodeAdapter extends BaseAdapter {
     private void bindNodeView(NodeViewHolder holder, int position) {
         Approval approval = approvals.get(position);
         holder.padding.setVisibility(View.GONE);
-
         if (position == 0) {
             holder.lineTop.setVisibility(View.GONE);
         } else {