Kaynağa Gözat

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

FANGLH 8 yıl önce
ebeveyn
işleme
56bb78b484

+ 6 - 4
app_core/common/src/main/java/com/core/dao/historical/HistoricalRecordDao.java

@@ -4,6 +4,7 @@ import android.content.ContentValues;
 import android.database.Cursor;
 import android.database.Cursor;
 import android.database.sqlite.SQLiteDatabase;
 import android.database.sqlite.SQLiteDatabase;
 
 
+import com.core.db.CommonCursorWrapper;
 import com.core.db.DatabaseManager;
 import com.core.db.DatabaseManager;
 import com.core.db.DatabaseTables;
 import com.core.db.DatabaseTables;
 
 
@@ -24,8 +25,9 @@ public class HistoricalRecordDao {
     public static HistoricalRecordDao getInstance() {
     public static HistoricalRecordDao getInstance() {
         if (instance == null) {
         if (instance == null) {
             synchronized (HistoricalRecordDao.class) {
             synchronized (HistoricalRecordDao.class) {
-                if (instance == null)
+                if (instance == null) {
                     instance = new HistoricalRecordDao();
                     instance = new HistoricalRecordDao();
+                }
             }
             }
         }
         }
         return instance;
         return instance;
@@ -54,7 +56,7 @@ public class HistoricalRecordDao {
      * @return
      * @return
      */
      */
     public List<HistoricalRecordBean> getHistoricalRecordBeansById(String schemeId) {
     public List<HistoricalRecordBean> getHistoricalRecordBeansById(String schemeId) {
-        HistoricalRecordCursorWrapper cursor = queryHistoricalRecord(DatabaseTables.HistoricalRecordTable.Cols.SCHEME_ID + " = ?",
+        CommonCursorWrapper cursor = queryHistoricalRecord(DatabaseTables.HistoricalRecordTable.Cols.SCHEME_ID + " = ?",
                 new String[]{schemeId});
                 new String[]{schemeId});
 
 
         List<HistoricalRecordBean> historicalRecordBeans = new ArrayList<>();
         List<HistoricalRecordBean> historicalRecordBeans = new ArrayList<>();
@@ -123,7 +125,7 @@ public class HistoricalRecordDao {
      * @param whereArgs
      * @param whereArgs
      * @return
      * @return
      */
      */
-    public HistoricalRecordCursorWrapper queryHistoricalRecord(String whereCause, String[] whereArgs) {
+    public CommonCursorWrapper queryHistoricalRecord(String whereCause, String[] whereArgs) {
         SQLiteDatabase sqLiteDatabase = DatabaseManager.getInstance().openDatabase();
         SQLiteDatabase sqLiteDatabase = DatabaseManager.getInstance().openDatabase();
 
 
         Cursor cursor = sqLiteDatabase.query(DatabaseTables.HistoricalRecordTable.NAME, null,
         Cursor cursor = sqLiteDatabase.query(DatabaseTables.HistoricalRecordTable.NAME, null,
@@ -133,6 +135,6 @@ public class HistoricalRecordDao {
 
 
 //        DatabaseManager.getInstance().closeDatabase();
 //        DatabaseManager.getInstance().closeDatabase();
 
 
-        return new HistoricalRecordCursorWrapper(cursor);
+        return new CommonCursorWrapper(cursor);
     }
     }
 }
 }

+ 8 - 6
app_core/common/src/main/java/com/core/dao/historical/HistoricalRecordCursorWrapper.java → app_core/common/src/main/java/com/core/db/CommonCursorWrapper.java

@@ -1,22 +1,24 @@
-package com.core.dao.historical;
+package com.core.db;
 
 
 import android.database.Cursor;
 import android.database.Cursor;
 import android.database.CursorWrapper;
 import android.database.CursorWrapper;
 
 
-import com.core.db.DatabaseTables;
+import com.core.dao.historical.HistoricalRecordBean;
 
 
 /**
 /**
- * Created by RaoMeng on 2017/8/18.
- * 历史记录的CursorWrapper封装类
+ * @author RaoMeng
+ * @describe CursorWrapper封装类
+ * @date 2017/12/12 10:17
  */
  */
-public class HistoricalRecordCursorWrapper extends CursorWrapper {
+
+public class CommonCursorWrapper extends CursorWrapper {
 
 
     /**
     /**
      * Creates a cursor wrapper.
      * Creates a cursor wrapper.
      *
      *
      * @param cursor The underlying cursor to wrap.
      * @param cursor The underlying cursor to wrap.
      */
      */
-    public HistoricalRecordCursorWrapper(Cursor cursor) {
+    public CommonCursorWrapper(Cursor cursor) {
         super(cursor);
         super(cursor);
     }
     }
 
 

+ 21 - 21
app_core/common/src/main/java/com/core/db/DatabaseTables.java

@@ -4,32 +4,32 @@ package com.core.db;
  * Created by RaoMeng on 2017/8/14.
  * Created by RaoMeng on 2017/8/14.
  * 数据库表
  * 数据库表
  */
  */
-public class DatabaseTables {
-    public static final class HistoricalRecordTable {
-        public static final String NAME = "historical_record";
+public interface DatabaseTables {
+    interface HistoricalRecordTable {
+        String NAME = "historical_record";
 
 
-        public static final class Cols {
-            public static final String SCHEME_ID = "scheme_id";
-            public static final String SCHEME_NAME = "scheme_name";
-            public static final String SEARCH_FIELD = "search_field";
+        interface Cols {
+            String SCHEME_ID = "scheme_id";
+            String SCHEME_NAME = "scheme_name";
+            String SEARCH_FIELD = "search_field";
         }
         }
     }
     }
 
 
-    public static final class UUHelperTable {
-        public static final String NAME = "uu_helper";
+    interface UUHelperTable {
+        String NAME = "uu_helper";
 
 
-        public static final class Cols {
-            public static final String ID = "id";
-            public static final String USER_ID = "userId";
-            public static final String TIME_SEND = "timeSend";
-            public static final String DATE = "date";
-            public static final String IMAGE_URL = "imageUrl";
-            public static final String ICON_URL = "iconUrl";
-            public static final String LINK_URL = "linkUrl";
-            public static final String CONTENT = "content";
-            public static final String READED = "readed";
-            public static final String TITLE = "title";
-            public static final String TYPE = "type";
+        interface Cols {
+            String ID = "id";
+            String USER_ID = "userId";
+            String TIME_SEND = "timeSend";
+            String DATE = "date";
+            String IMAGE_URL = "imageUrl";
+            String ICON_URL = "iconUrl";
+            String LINK_URL = "linkUrl";
+            String CONTENT = "content";
+            String READED = "readed";
+            String TITLE = "title";
+            String TYPE = "type";
         }
         }
     }
     }
 }
 }

+ 141 - 0
app_core/common/src/main/java/com/core/widget/SearchActionView.java

@@ -0,0 +1,141 @@
+package com.core.widget;
+
+import android.app.Activity;
+import android.content.Context;
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.util.AttributeSet;
+import android.view.KeyEvent;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.inputmethod.EditorInfo;
+import android.widget.FrameLayout;
+import android.widget.ImageView;
+import android.widget.TextView;
+
+import com.core.app.R;
+import com.core.utils.CommonUtil;
+
+/**
+ * @author RaoMeng
+ * @describe
+ * @date 2017/12/22 10:17
+ */
+
+public class SearchActionView extends FrameLayout {
+    private ImageView mBackImageView, mMenuImageView, mVoiceImageView;
+    private OnVoiceCompleteListener mOnVoiceCompleteListener;
+    private OnEnterActionListener mOnEnterActionListener;
+    private OnMenuClickListener mOnMenuClickListener;
+    private ClearEditText mSearchEditText;
+
+    public void setOnVoiceCompleteListener(OnVoiceCompleteListener onVoiceCompleteListener) {
+        mOnVoiceCompleteListener = onVoiceCompleteListener;
+    }
+
+    public void setOnEnterActionListener(OnEnterActionListener onEnterActionListener) {
+        mOnEnterActionListener = onEnterActionListener;
+    }
+
+    public void setOnMenuClickListener(OnMenuClickListener onMenuClickListener) {
+        mOnMenuClickListener = onMenuClickListener;
+    }
+
+    public void setMenuImage(int menuImage) {
+        try {
+            mMenuImageView.setImageResource(menuImage);
+            mMenuImageView.setOnClickListener(new OnClickListener() {
+                @Override
+                public void onClick(View view) {
+                    if (mOnMenuClickListener != null) {
+                        mOnMenuClickListener.onMenuClick(view);
+                    }
+                }
+            });
+        } catch (Exception e) {
+
+        }
+
+    }
+
+    public SearchActionView(@NonNull Context context) {
+        super(context);
+        init(context, null, 0);
+    }
+
+    public SearchActionView(@NonNull Context context, @Nullable AttributeSet attrs) {
+        super(context, attrs);
+        init(context, attrs, 0);
+    }
+
+    public SearchActionView(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
+        super(context, attrs, defStyleAttr);
+        init(context, attrs, defStyleAttr);
+    }
+
+    private void init(final Context context, AttributeSet attrs, int defStyleAttr) {
+        LayoutInflater.from(context).inflate(R.layout.layout_search_action, this);
+
+        mBackImageView = (ImageView) findViewById(R.id.search_action_back_iv);
+        mMenuImageView = (ImageView) findViewById(R.id.search_action_menu_iv);
+        mVoiceImageView = (ImageView) findViewById(R.id.search_action_voice_iv);
+        mSearchEditText = (ClearEditText) findViewById(R.id.search_action_search_et);
+
+        mBackImageView.setOnClickListener(new OnClickListener() {
+            @Override
+            public void onClick(View view) {
+                ((Activity) getContext()).finish();
+                ((Activity) getContext()).overridePendingTransition(R.anim.anim_activity_back_in, R.anim.anim_activity_back_out);
+            }
+        });
+
+        mVoiceImageView.setOnClickListener(new OnClickListener() {
+            @Override
+            public void onClick(View view) {
+                CommonUtil.getVoiceText(context, mSearchEditText, new com.core.interfac.OnVoiceCompleteListener() {
+                    @Override
+                    public void onVoiceComplete() {
+                        if (mOnVoiceCompleteListener != null) {
+                            mOnVoiceCompleteListener.onVoiceComplete();
+                        }
+                    }
+                });
+            }
+        });
+
+        mSearchEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
+            @Override
+            public boolean onEditorAction(TextView textView, int actionId, KeyEvent keyEvent) {
+                if (actionId == EditorInfo.IME_ACTION_SEARCH
+                        || actionId == EditorInfo.IME_ACTION_SEND
+                        || (keyEvent != null && keyEvent.getAction() == KeyEvent.ACTION_DOWN && keyEvent.getKeyCode() == KeyEvent.KEYCODE_ENTER)) {
+                    if (mOnEnterActionListener != null) {
+                        mOnEnterActionListener.onEnterAction();
+                        return true;
+                    }
+                }
+                return false;
+            }
+        });
+    }
+
+    public void setSearchHint(String hint) {
+        mSearchEditText.setHint(hint);
+    }
+
+    public void setSearchHint(int hint) {
+        mSearchEditText.setHint(hint);
+    }
+
+    public interface OnVoiceCompleteListener {
+        void onVoiceComplete();
+    }
+
+    public interface OnEnterActionListener {
+        void onEnterAction();
+    }
+
+    public interface OnMenuClickListener {
+        void onMenuClick(View view);
+    }
+}

+ 31 - 0
app_core/common/src/main/java/com/core/widget/VoiceSearchView.java

@@ -5,9 +5,12 @@ import android.text.Editable;
 import android.text.TextUtils;
 import android.text.TextUtils;
 import android.text.TextWatcher;
 import android.text.TextWatcher;
 import android.util.AttributeSet;
 import android.util.AttributeSet;
+import android.view.KeyEvent;
 import android.view.LayoutInflater;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.View;
+import android.view.inputmethod.EditorInfo;
 import android.widget.RelativeLayout;
 import android.widget.RelativeLayout;
+import android.widget.TextView;
 
 
 import com.core.app.R;
 import com.core.app.R;
 import com.core.interfac.OnVoiceCompleteListener;
 import com.core.interfac.OnVoiceCompleteListener;
@@ -28,6 +31,7 @@ import java.util.regex.Pattern;
 public class VoiceSearchView extends RelativeLayout {
 public class VoiceSearchView extends RelativeLayout {
     private ClearEditText search_edit;
     private ClearEditText search_edit;
     private OnVoiceCompleteListener mOnVoiceCompleteListener;
     private OnVoiceCompleteListener mOnVoiceCompleteListener;
+    private OnEnterActionListener mOnEnterActionListener;
 
 
     public VoiceSearchView(Context context) {
     public VoiceSearchView(Context context) {
         this(context, null);
         this(context, null);
@@ -47,12 +51,31 @@ public class VoiceSearchView extends RelativeLayout {
                 btnVoice();
                 btnVoice();
             }
             }
         });
         });
+
+        search_edit.setOnEditorActionListener(new TextView.OnEditorActionListener() {
+            @Override
+            public boolean onEditorAction(TextView textView, int actionId, KeyEvent keyEvent) {
+                if (actionId == EditorInfo.IME_ACTION_SEARCH
+                        || actionId == EditorInfo.IME_ACTION_SEND
+                        || (keyEvent != null && keyEvent.getAction() == KeyEvent.ACTION_DOWN && keyEvent.getKeyCode() == KeyEvent.KEYCODE_ENTER)) {
+                    if (mOnEnterActionListener != null) {
+                        mOnEnterActionListener.onEnterAction();
+                        return true;
+                    }
+                }
+                return false;
+            }
+        });
     }
     }
 
 
     public void setHineText(String hine) {
     public void setHineText(String hine) {
         search_edit.setHint(hine);
         search_edit.setHint(hine);
     }
     }
 
 
+    public void setHineText(int hint) {
+        search_edit.setHint(hint);
+    }
+
     public void setText(String hine) {
     public void setText(String hine) {
         search_edit.setText(hine);
         search_edit.setText(hine);
     }
     }
@@ -89,6 +112,10 @@ public class VoiceSearchView extends RelativeLayout {
         mOnVoiceCompleteListener = onVoiceCompleteListener;
         mOnVoiceCompleteListener = onVoiceCompleteListener;
     }
     }
 
 
+    public void setOnEnterActionListener(OnEnterActionListener onEnterActionListener) {
+        mOnEnterActionListener = onEnterActionListener;
+    }
+
     public void addTextChangedListener(TextWatcher watcher) {
     public void addTextChangedListener(TextWatcher watcher) {
         search_edit.addTextChangedListener(watcher);
         search_edit.addTextChangedListener(watcher);
     }
     }
@@ -121,4 +148,8 @@ public class VoiceSearchView extends RelativeLayout {
             return nulltext;
             return nulltext;
         }
         }
     }
     }
+
+    public interface OnEnterActionListener {
+        void onEnterAction();
+    }
 }
 }

+ 59 - 0
app_core/common/src/main/res/layout/layout_search_action.xml

@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout android:id="@+id/top"
+                xmlns:android="http://schemas.android.com/apk/res/android"
+                android:layout_width="match_parent"
+                android:layout_height="?attr/actionBarSize"
+                android:background="@color/antionbarcolor">
+
+    <ImageView
+        android:id="@+id/search_action_back_iv"
+        android:layout_width="24dp"
+        android:layout_height="24dp"
+        android:layout_centerVertical="true"
+        android:src="@drawable/ic_action_back" />
+
+    <ImageView
+        android:id="@+id/search_action_menu_iv"
+        android:layout_width="wrap_content"
+        android:layout_height="match_parent"
+        android:layout_alignParentRight="true"
+        android:layout_centerVertical="true"
+        android:maxWidth="40dp" />
+
+    <RelativeLayout
+        android:layout_width="match_parent"
+        android:layout_height="36dp"
+        android:layout_centerInParent="true"
+        android:layout_marginLeft="40dp"
+        android:layout_marginRight="40dp"
+        android:visibility="visible">
+
+        <com.core.widget.ClearEditText
+            android:id="@+id/search_action_search_et"
+            android:layout_width="fill_parent"
+            android:layout_height="fill_parent"
+            android:layout_centerVertical="true"
+            android:background="@drawable/search_input"
+            android:drawableLeft="@drawable/search"
+            android:drawableRight="@drawable/search_clear"
+            android:hint="@string/search"
+            android:imeOptions="actionSearch"
+            android:inputType="text"
+            android:paddingRight="26dp"
+            android:textColor="@color/dark_grey"
+            android:textColorHint="@color/grey"
+            android:textSize="14sp" />
+
+        <ImageView
+            android:id="@+id/search_action_voice_iv"
+            android:layout_width="20dp"
+            android:layout_height="20dp"
+            android:layout_alignParentRight="true"
+            android:layout_alignRight="@+id/search_edit"
+            android:layout_centerVertical="true"
+            android:layout_marginRight="6dp"
+            android:background="@drawable/btn_yuyin_nor"
+            android:visibility="visible" />
+    </RelativeLayout>
+
+</RelativeLayout>

+ 4 - 0
app_modular/appworks/src/main/java/com/uas/appworks/activity/DeviceQueryActivity.java

@@ -138,6 +138,10 @@ public class DeviceQueryActivity extends BaseMVPActivity<WorkPlatPresenter> impl
             mClass = intent.getStringExtra(Constants.FLAG.DEVICE_CLASS);
             mClass = intent.getStringExtra(Constants.FLAG.DEVICE_CLASS);
         }
         }
 
 
+        if (TextUtils.isEmpty(mCaller)) {
+            mCaller = "Device";
+        }
+
         if (!TextUtils.isEmpty(mClass)) {
         if (!TextUtils.isEmpty(mClass)) {
             mBaseCondition = "(dc_class = \'" + mClass + "\')";
             mBaseCondition = "(dc_class = \'" + mClass + "\')";
             mCondition = mBaseCondition;
             mCondition = mBaseCondition;

+ 10 - 4
app_modular/appworks/src/main/java/com/uas/appworks/datainquiry/activity/DataInquiryListActivity.java

@@ -113,14 +113,17 @@ public class DataInquiryListActivity extends BaseActivity implements View.OnClic
                     }
                     }
                     String result = msg.getData().getString("result");
                     String result = msg.getData().getString("result");
                     analysisCondition(result);
                     analysisCondition(result);
-                    getSchemeData();
                     break;
                     break;
                 case GET_DATA_RESULT:
                 case GET_DATA_RESULT:
                     if (mDataListView.isRefreshing()) {
                     if (mDataListView.isRefreshing()) {
                         mDataListView.onRefreshComplete();
                         mDataListView.onRefreshComplete();
                     }
                     }
                     progressDialog.dismiss();
                     progressDialog.dismiss();
-                    analysisData(msg);
+                    if (mAllSchemeConditions == null || mAllSchemeConditions.size() == 0) {
+                        mEmptyLayout.showEmpty();
+                    } else {
+                        analysisData(msg);
+                    }
                     break;
                     break;
                 case 0x88:
                 case 0x88:
                     mTotalLl.setVisibility(View.GONE);
                     mTotalLl.setVisibility(View.GONE);
@@ -479,7 +482,6 @@ public class DataInquiryListActivity extends BaseActivity implements View.OnClic
 
 
                 mDataInquiryTotalAdapter.notifyDataSetChanged();
                 mDataInquiryTotalAdapter.notifyDataSetChanged();
 
 
-//                mDataListView.setVisibility(View.VISIBLE);
                 if (listArray != null && listArray.length() > 0) {
                 if (listArray != null && listArray.length() > 0) {
                     if (!TextUtils.isEmpty(mSearchField)) {
                     if (!TextUtils.isEmpty(mSearchField)) {
                         HistoricalRecordBean historicalRecordBean = new HistoricalRecordBean();
                         HistoricalRecordBean historicalRecordBean = new HistoricalRecordBean();
@@ -629,7 +631,8 @@ public class DataInquiryListActivity extends BaseActivity implements View.OnClic
             try {
             try {
                 JSONObject resultObject = new JSONObject(result);
                 JSONObject resultObject = new JSONObject(result);
                 JSONArray dataArray = resultObject.optJSONArray("data");
                 JSONArray dataArray = resultObject.optJSONArray("data");
-                if (dataArray != null) {
+                if (dataArray != null && dataArray.length() > 0) {
+                    getSchemeData();
                     String fuzzyHint = "";
                     String fuzzyHint = "";
                     for (int i = 0; i < dataArray.length(); i++) {
                     for (int i = 0; i < dataArray.length(); i++) {
                         JSONObject dataObject = dataArray.optJSONObject(i);
                         JSONObject dataObject = dataArray.optJSONObject(i);
@@ -748,6 +751,9 @@ public class DataInquiryListActivity extends BaseActivity implements View.OnClic
                     } else {
                     } else {
                         mSearchEditText.setHint("搜索");
                         mSearchEditText.setHint("搜索");
                     }
                     }
+                } else {
+                    progressDialog.dismiss();
+                    mEmptyLayout.showEmpty();
                 }
                 }
             } catch (JSONException e) {
             } catch (JSONException e) {
                 e.printStackTrace();
                 e.printStackTrace();