Просмотр исходного кода

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

SpringBoots 8 лет назад
Родитель
Сommit
c02437bfb2
70 измененных файлов с 920 добавлено и 452 удалено
  1. 5 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/activity/DataInquiryActivity.java
  2. 394 280
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/activity/DataInquiryListActivity.java
  3. 7 3
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/activity/PDFDownloadActivity.java
  4. 38 22
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/activity/ReportQueryCriteriaActivity.java
  5. 5 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/activity/ReportStatisticsActivity.java
  6. 23 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/adapter/DataInquiryFlexAdapter.java
  7. 7 2
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/adapter/DataInquiryFlexChildAdapter.java
  8. 52 66
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/adapter/DataInquirySchemeConditionAdapter.java
  9. 91 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/adapter/DataInquiryTotalAdapter.java
  10. 1 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/adapter/ItemGridDataInquiryExactAdapter.java
  11. 1 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/adapter/ItemGridReportQueryExactAdapter.java
  12. 52 13
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/adapter/ReportQueryConditionAdapter.java
  13. 34 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/bean/DataInquiryTotalBean.java
  14. 9 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/bean/SchemeConditionBean.java
  15. 1 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/util/Constants.java
  16. 14 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/view/wheel/OASigninPicker.java
  17. 4 4
      WeiChat/src/main/res/drawable/selector_cancel_bg.xml
  18. 8 0
      WeiChat/src/main/res/drawable/selector_datainquiry_grid_item_bg.xml
  19. 9 0
      WeiChat/src/main/res/drawable/shape_blue_corner_white_bg.xml
  20. 2 2
      WeiChat/src/main/res/drawable/shape_corner_deep_blue_bg.xml
  21. 1 1
      WeiChat/src/main/res/drawable/shape_corner_shallow_blue_bg.xml
  22. 2 2
      WeiChat/src/main/res/drawable/shape_corner_white_bg.xml
  23. 2 2
      WeiChat/src/main/res/layout/action_data_inquiry_list.xml
  24. 3 1
      WeiChat/src/main/res/layout/activity_data_inquiry.xml
  25. 54 11
      WeiChat/src/main/res/layout/activity_data_inquiry_list.xml
  26. 5 4
      WeiChat/src/main/res/layout/activity_report_query_criteria.xml
  27. 4 5
      WeiChat/src/main/res/layout/item_grid_data_inquiry_exact.xml
  28. 3 4
      WeiChat/src/main/res/layout/item_grid_data_inquiry_menu.xml
  29. 8 2
      WeiChat/src/main/res/layout/item_list_data_inquiry.xml
  30. 12 7
      WeiChat/src/main/res/layout/item_list_data_inquiry_child.xml
  31. 21 14
      WeiChat/src/main/res/layout/item_list_data_inquiry_exact_query.xml
  32. 2 2
      WeiChat/src/main/res/layout/item_list_data_inquiry_menu.xml
  33. 41 0
      WeiChat/src/main/res/layout/item_list_data_inquiry_total.xml
  34. 2 0
      WeiChat/src/main/res/values/colors.xml
  35. 0 0
      app_third/android-pdf-viewer/build.gradle
  36. 0 0
      app_third/android-pdf-viewer/src/main/AndroidManifest.xml
  37. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/AnimationManager.java
  38. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/CacheManager.java
  39. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/DecodingAsyncTask.java
  40. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/DragPinchManager.java
  41. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/PDFView.java
  42. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/PagesLoader.java
  43. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/RenderingHandler.java
  44. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/exception/FileNotFoundException.java
  45. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/OnDrawListener.java
  46. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/OnErrorListener.java
  47. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/OnLoadCompleteListener.java
  48. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/OnPageChangeListener.java
  49. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/OnPageScrollListener.java
  50. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/OnRenderListener.java
  51. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/model/PagePart.java
  52. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/scroll/DefaultScrollHandle.java
  53. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/scroll/ScrollHandle.java
  54. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/source/AssetSource.java
  55. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/source/ByteArraySource.java
  56. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/source/DocumentSource.java
  57. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/source/FileSource.java
  58. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/source/InputStreamSource.java
  59. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/source/UriSource.java
  60. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/util/ArrayUtils.java
  61. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/util/Constants.java
  62. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/util/FileUtils.java
  63. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/util/MathUtils.java
  64. 0 0
      app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/util/Util.java
  65. 0 0
      app_third/android-pdf-viewer/src/main/res/drawable/default_scroll_handle_bottom.xml
  66. 0 0
      app_third/android-pdf-viewer/src/main/res/drawable/default_scroll_handle_left.xml
  67. 0 0
      app_third/android-pdf-viewer/src/main/res/drawable/default_scroll_handle_right.xml
  68. 0 0
      app_third/android-pdf-viewer/src/main/res/drawable/default_scroll_handle_top.xml
  69. 0 0
      app_third/android-pdf-viewer/src/main/res/values/attrs.xml
  70. 3 1
      settings.gradle

+ 5 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/activity/DataInquiryActivity.java

@@ -45,7 +45,11 @@ public class DataInquiryActivity extends BaseActivity {
         mDataInquiryMenuListAdapter = new DataInquiryMenuListAdapter(this, mGridMenuDataInquiryBeans);
         mMenuListView.setAdapter(mDataInquiryMenuListAdapter);
 
-        getMenuData();
+        if (!CommonUtil.isNetWorkConnected(this)) {
+            ToastMessage(getString(R.string.networks_out));
+        } else {
+            getMenuData();
+        }
     }
 
     private void getMenuData() {

+ 394 - 280
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/activity/DataInquiryListActivity.java

@@ -31,8 +31,10 @@ import com.xzjmyk.pm.activity.audio.voicerecognition.JsonParser;
 import com.xzjmyk.pm.activity.ui.base.BaseActivity;
 import com.xzjmyk.pm.activity.ui.erp.activity.datainquiry.adapter.DataInquiryFlexAdapter;
 import com.xzjmyk.pm.activity.ui.erp.activity.datainquiry.adapter.DataInquirySchemeConditionAdapter;
+import com.xzjmyk.pm.activity.ui.erp.activity.datainquiry.adapter.DataInquiryTotalAdapter;
 import com.xzjmyk.pm.activity.ui.erp.activity.datainquiry.adapter.HistoricalRecordAdapter;
 import com.xzjmyk.pm.activity.ui.erp.activity.datainquiry.bean.DataInquiryFlexBean;
+import com.xzjmyk.pm.activity.ui.erp.activity.datainquiry.bean.DataInquiryTotalBean;
 import com.xzjmyk.pm.activity.ui.erp.activity.datainquiry.bean.GridMenuDataInquiryBean;
 import com.xzjmyk.pm.activity.ui.erp.activity.datainquiry.bean.SchemeConditionBean;
 import com.xzjmyk.pm.activity.ui.erp.activity.datainquiry.database.HistoricalRecordBean;
@@ -70,7 +72,7 @@ import java.util.Map;
 public class DataInquiryListActivity extends BaseActivity implements View.OnClickListener, TextView.OnEditorActionListener {
     private final int GET_DATA_RESULT = 0X11;
     private final int GET_QUERY_CRITERIA = 0X22;
-    private ImageView mBackImageView, mFilterImageView, mVoiceImageView;
+    private ImageView mBackImageView, mFilterImageView, mVoiceImageView, mTotalHideImageView, mTotalSpreadImageView;
     private ClearEditText mSearchEditText;
     private GridMenuDataInquiryBean.QueryScheme mQueryScheme;
     private String mCaller, mSchemeName, mSchemeId, mCondition;
@@ -80,8 +82,8 @@ public class DataInquiryListActivity extends BaseActivity implements View.OnClic
     private LinearLayout mFuzzyHistoryLl;
     private TextView mHistoryClearTv;
     private MyListView mHistoryDataLv;
-    private LinearLayout mExactWholeLl;
-    private LinearLayout mExactOptionLl;
+    private ListView mTotalLv;
+    private LinearLayout mExactWholeLl, mExactOptionLl, mTotalLl;
     private ListView mExactOptionLv;
     private TextView mExactOptionCancelTv;
     private TextView mExactOptionResetTv;
@@ -98,6 +100,9 @@ public class DataInquiryListActivity extends BaseActivity implements View.OnClic
     private DataInquiryFlexAdapter mDataInquiryFlexAdapter;
     private List<DataInquiryFlexBean.RowBean.RowChildBean> mAllRowChildBeans;
     private EmptyLayout mEmptyLayout;
+    private int mOldPosition = -1;
+    private DataInquiryTotalAdapter mDataInquiryTotalAdapter;
+    private List<DataInquiryTotalBean> mDataInquiryTotalBeans;
 
     private Handler mHandler = new Handler() {
         @Override
@@ -106,245 +111,20 @@ public class DataInquiryListActivity extends BaseActivity implements View.OnClic
                 case GET_QUERY_CRITERIA:
                     if (mDataListView.isRefreshing())
                         mDataListView.onRefreshComplete();
-                    String result = msg.getData().getString("result");
-                    if (result != null) {
-                        LogUtil.prinlnLongMsg("querycriteria", msg.getData().getString("result"));
-                        try {
-                            JSONObject resultObject = new JSONObject(result);
-                            JSONArray dataArray = resultObject.optJSONArray("data");
-                            if (dataArray != null) {
-                                String fuzzyHint = "";
-                                for (int i = 0; i < dataArray.length(); i++) {
-                                    JSONObject dataObject = dataArray.optJSONObject(i);
-                                    if (dataObject != null) {
-                                        SchemeConditionBean schemeConditionBean = new SchemeConditionBean();
-                                        String position = optStringNotNull(dataObject, "position");
-                                        String field = optStringNotNull(dataObject, "field");
-                                        boolean appCondition = dataObject.optBoolean("appCondition");
-                                        int width = (int) optLongNotNull(dataObject, "width");
-                                        String caption = optStringNotNull(dataObject, "caption");
-                                        String defaultValue = optStringNotNull(dataObject, "defaultValue");
-                                        String type = optStringNotNull(dataObject, "type");
-
-                                        if (appCondition && "S".equals(type)) {
-                                            fuzzyHint = fuzzyHint + caption + "/";
-                                        }
-
-                                        if (!dataObject.isNull("properties")) {
-                                            JSONArray properties = dataObject.optJSONArray("properties");
-                                            if (properties != null) {
-                                                List<SchemeConditionBean.Property> propertyList = new ArrayList<>();
-                                                for (int j = 0; j < properties.length(); j++) {
-                                                    JSONObject propertyObject = properties.optJSONObject(j);
-                                                    SchemeConditionBean.Property property = new SchemeConditionBean.Property();
-                                                    String value = optStringNotNull(propertyObject, "value");
-                                                    String display = optStringNotNull(propertyObject, "display");
-
-                                                    property.setDisplay(display);
-                                                    property.setValue(value);
-                                                    property.setState(false);
-
-                                                    propertyList.add(property);
-                                                }
-                                                schemeConditionBean.setProperties(propertyList);
-                                            }
-                                        } else {
-                                            ArrayList<SchemeConditionBean.Property> properties = new ArrayList<>();
-                                            if ("N".equals(type)) {
-                                                for (int m = 0; m < 2; m++) {
-                                                    SchemeConditionBean.Property property = new SchemeConditionBean.Property();
-                                                    properties.add(property);
-                                                }
-                                            } else if ("D".equals(type) || "CD".equals(type)) {
-                                                for (int m = 0; m < 2; m++) {
-                                                    SchemeConditionBean.Property property = new SchemeConditionBean.Property();
-                                                    if (m == 0) {
-                                                        property.setDisplay(getMonthFirstDay());
-                                                        property.setValue(getMonthFirstDay());
-                                                    } else if (m == 1) {
-                                                        property.setDisplay(getMonthLastDay());
-                                                        property.setValue(getMonthLastDay());
-                                                    }
-                                                    properties.add(property);
-                                                }
-                                            } else if ("CBG".equals(type) || "EC".equals(type) || "C".equals(type) || "R".equals(type)) {
-
-                                            } else {
-                                                SchemeConditionBean.Property property = new SchemeConditionBean.Property();
-                                                properties.add(property);
-                                            }
-                                            schemeConditionBean.setProperties(properties);
-                                        }
-
-                                        schemeConditionBean.setPosition(position);
-                                        schemeConditionBean.setField(field);
-                                        schemeConditionBean.setAppCondition(appCondition);
-                                        schemeConditionBean.setWidth(width);
-                                        schemeConditionBean.setCaption(caption);
-                                        schemeConditionBean.setDefaultValue(defaultValue);
-                                        schemeConditionBean.setType(type);
-
-                                        mAllSchemeConditions.add(schemeConditionBean);
-
-                                        if (schemeConditionBean.isAppCondition()) {
-                                            mAppSchemeConditions.add(schemeConditionBean);
-                                            if ("S".equals(type)) {
-                                                mfuzzySchemeConditionBeans.add(schemeConditionBean);
-                                            }
-                                        }
-                                    }
-                                }
-
-                                Collections.sort(mAllSchemeConditions);
-                                Collections.sort(mAppSchemeConditions);
-
-                                try {
-                                    mResetSchemeConditionBeans = deepCopy(mAppSchemeConditions);
-                                } catch (IOException e) {
-                                    e.printStackTrace();
-                                } catch (ClassNotFoundException e) {
-                                    e.printStackTrace();
-                                }
-
-                                mDataInquirySchemeConditionAdapter.notifyDataSetChanged();
-
-                                if (fuzzyHint.length() > 0) {
-                                    fuzzyHint = fuzzyHint.substring(0, fuzzyHint.length() - 1);
-                                    mSearchEditText.setHint(fuzzyHint);
-                                } else {
-                                    mSearchEditText.setHint("搜索");
-                                }
-                            }
-                        } catch (JSONException e) {
-                            e.printStackTrace();
-                        }
-
-                    }
+                    analysisCondition(msg);
                     getSchemeData();
                     break;
                 case GET_DATA_RESULT:
                     if (mDataListView.isRefreshing())
                         mDataListView.onRefreshComplete();
                     progressDialog.dismiss();
-                    result = msg.getData().getString("result");
-                    if (result != null) {
-                        if (mPageIndex == 1)
-                            mDataInquiryFlexBeans.clear();
-                        LogUtil.prinlnLongMsg("schemedata", msg.getData().getString("result"));
-                        try {
-                            JSONObject resultObject = new JSONObject(result);
-                            JSONArray listArray = resultObject.optJSONArray("listdata");
-                            if (listArray != null && listArray.length() > 0) {
-                                if (!TextUtils.isEmpty(mSearchField)) {
-                                    HistoricalRecordBean historicalRecordBean = new HistoricalRecordBean();
-                                    historicalRecordBean.setSchemeId(mSchemeId);
-                                    historicalRecordBean.setSchemeName(mSchemeName);
-                                    historicalRecordBean.setSearchField(mSearchField);
-                                    HistoricalRecordDao.getInstance().saveToHistoricalRecord(historicalRecordBean);
-
-                                    mHistoricalRecordBeans.clear();
-                                    List<HistoricalRecordBean> historicalRecordBeansById = HistoricalRecordDao.getInstance().getHistoricalRecordBeansById(mSchemeId);
-                                    if (historicalRecordBeansById.size() > 0) {
-                                        for (int i = 0; i < historicalRecordBeansById.size(); i++) {
-                                            if (i < 6) {
-                                                mHistoricalRecordBeans.add(historicalRecordBeansById.get(i));
-                                            }
-                                        }
-                                        mHistoricalRecordAdapter.notifyDataSetChanged();
-                                    }
-                                }
-
-                                for (int i = 0; i < listArray.length(); i++) {
-                                    mAllRowChildBeans = new ArrayList<>();
-                                    JSONObject dataObject = listArray.optJSONObject(i);
-                                    if (dataObject != null) {
-                                        DataInquiryFlexBean dataInquiryFlexBean = new DataInquiryFlexBean();
-                                        dataInquiryFlexBean.setIsFlex(false);
-
-                                        List<DataInquiryFlexBean.RowBean> rowBeans = new ArrayList<>();
-
-                                        for (int j = 0; j < mAllSchemeConditions.size(); j++) {
-                                            String field = mAllSchemeConditions.get(j).getField();
-                                            String type = mAllSchemeConditions.get(j).getType();
-                                            String value = dataObject.getString(field);
-                                            if (value != null) {
-                                                DataInquiryFlexBean.RowBean.RowChildBean rowChildBean = new DataInquiryFlexBean.RowBean.RowChildBean();
-                                                rowChildBean.setCaption(mAllSchemeConditions.get(j).getCaption());
-                                                if ("null".equals(value)) {
-                                                    rowChildBean.setValue("");
-                                                } else {
-                                                    if ("D".equals(type) || "CD".equals(type)) {
-                                                        value = value.substring(0, value.length() - 8);
-                                                    }
-                                                    rowChildBean.setValue(value);
-                                                }
-                                                rowChildBean.setWidth(mAllSchemeConditions.get(j).getWidth());
-
-                                                mAllRowChildBeans.add(rowChildBean);
-                                            }
-                                        }
-                                        List<DataInquiryFlexBean.RowBean.RowChildBean> shortChildBeans = new ArrayList<>();
-                                        List<DataInquiryFlexBean.RowBean.RowChildBean> longChildBeans = new ArrayList<>();
-                                        for (int k = 0; k < mAllRowChildBeans.size(); k++) {
-                                            DataInquiryFlexBean.RowBean.RowChildBean rowChildBean = mAllRowChildBeans.get(k);
-                                            if (rowChildBean.getWidth() <= 100) {
-                                                shortChildBeans.add(rowChildBean);
-                                            } else {
-                                                longChildBeans.add(rowChildBean);
-                                            }
-                                        }
-
-                                        for (int k = 0; k < (shortChildBeans.size() / 2); k++) {
-                                            DataInquiryFlexBean.RowBean rowBean = new DataInquiryFlexBean.RowBean();
-
-                                            List<DataInquiryFlexBean.RowBean.RowChildBean> childBeans = new ArrayList<>();
-                                            childBeans.add(shortChildBeans.get(k * 2));
-                                            childBeans.add(shortChildBeans.get((k * 2) + 1));
-
-                                            rowBean.setRowChildBeans(childBeans);
-
-                                            rowBeans.add(rowBean);
-                                        }
-
-                                        if ((shortChildBeans.size() % 2) != 0) {
-                                            DataInquiryFlexBean.RowBean rowBean = new DataInquiryFlexBean.RowBean();
-
-                                            List<DataInquiryFlexBean.RowBean.RowChildBean> childBeans = new ArrayList<>();
-                                            childBeans.add(shortChildBeans.get(shortChildBeans.size() - 1));
-
-                                            rowBean.setRowChildBeans(childBeans);
-
-                                            rowBeans.add(rowBean);
-                                        }
-
-                                        for (int k = 0; k < longChildBeans.size(); k++) {
-                                            DataInquiryFlexBean.RowBean rowBean = new DataInquiryFlexBean.RowBean();
-
-                                            List<DataInquiryFlexBean.RowBean.RowChildBean> childBeans = new ArrayList<>();
-                                            childBeans.add(longChildBeans.get(k));
-
-                                            rowBean.setRowChildBeans(childBeans);
-
-                                            rowBeans.add(rowBean);
-                                        }
-
-                                        dataInquiryFlexBean.setRowBeans(rowBeans);
-
-                                        mDataInquiryFlexBeans.add(dataInquiryFlexBean);
-                                    }
-                                }
-                                mDataInquiryFlexAdapter.notifyDataSetChanged();
-                            } else {
-                                mDataInquiryFlexAdapter.notifyDataSetChanged();
-                                mEmptyLayout.showEmpty();
-                            }
-
-                        } catch (JSONException e) {
-                            e.printStackTrace();
-                        }
-                    }
+                    analysisData(msg);
+                    break;
+                case 0x88:
+                    mTotalLl.setVisibility(View.GONE);
                     break;
                 case Constants.APP_SOCKETIMEOUTEXCEPTION:
+                    mTotalSpreadImageView.setVisibility(View.GONE);
                     if (mDataListView.isRefreshing())
                         mDataListView.onRefreshComplete();
                     progressDialog.dismiss();
@@ -423,6 +203,10 @@ public class DataInquiryListActivity extends BaseActivity implements View.OnClic
         mExactOptionCancelTv = (TextView) findViewById(R.id.data_inquiry_list_option_cancel_tv);
         mExactOptionResetTv = (TextView) findViewById(R.id.data_inquiry_list_option_reset_tv);
         mExactOptionConfirmTv = (TextView) findViewById(R.id.data_inquiry_list_option_confirm_tv);
+        mTotalLl = (LinearLayout) findViewById(R.id.data_inquiry_list_total_ll);
+        mTotalHideImageView = (ImageView) findViewById(R.id.data_inquiry_list_total_hide_iv);
+        mTotalSpreadImageView = (ImageView) findViewById(R.id.data_inquiry_list_total_spread_iv);
+        mTotalLv = (ListView) findViewById(R.id.data_inquiry_list_total_lv);
         mFuzzyViewBg = findViewById(R.id.data_inquiry_list_fuzzy_bg);
         mExactViewBg = findViewById(R.id.data_inquiry_list_exact_bg);
 
@@ -436,6 +220,7 @@ public class DataInquiryListActivity extends BaseActivity implements View.OnClic
         mResetSchemeConditionBeans = new ArrayList<>();
         mDataInquiryFlexBeans = new ArrayList<>();
         mAllRowChildBeans = new ArrayList<>();
+        mDataInquiryTotalBeans = new ArrayList<>();
         mInAnimation = AnimationUtils.loadAnimation(this, R.anim.anim_search_popin);
         mOutAnimation = AnimationUtils.loadAnimation(this, R.anim.anim_search_popout);
 
@@ -451,6 +236,10 @@ public class DataInquiryListActivity extends BaseActivity implements View.OnClic
         mDataInquiryFlexAdapter = new DataInquiryFlexAdapter(this, mDataInquiryFlexBeans);
         mDataListView.setAdapter(mDataInquiryFlexAdapter);
 
+        mDataInquiryTotalAdapter = new DataInquiryTotalAdapter(this, mDataInquiryTotalBeans);
+        mDataInquiryTotalAdapter.setHandler(mHandler);
+        mTotalLv.setAdapter(mDataInquiryTotalAdapter);
+
         Intent intent = getIntent();
         if (intent != null) {
             mQueryScheme = (GridMenuDataInquiryBean.QueryScheme) intent.getSerializableExtra("scheme");
@@ -471,6 +260,22 @@ public class DataInquiryListActivity extends BaseActivity implements View.OnClic
 
         mSearchEditText.setOnEditorActionListener(this);
 
+        mDataListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
+            @Override
+            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
+                int reallyPosition = (int) parent.getItemIdAtPosition(position);
+                if (CommonUtil.isRepeatClick()) {
+                    if (mOldPosition == reallyPosition) {
+                        mDataInquiryFlexAdapter.getObjects().get(reallyPosition).setIsFlex(!mDataInquiryFlexAdapter.getObjects().get(reallyPosition).isFlex());
+                        mDataInquiryFlexAdapter.notifyDataSetChanged();
+                    } else {
+                        mOldPosition = reallyPosition;
+                    }
+                }
+                mOldPosition = reallyPosition;
+            }
+        });
+
         mDataListView.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
             @Override
             public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) {
@@ -561,33 +366,314 @@ public class DataInquiryListActivity extends BaseActivity implements View.OnClic
         mHistoryDataLv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
             @Override
             public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
-                mFuzzyWholeLl.setVisibility(View.GONE);
-                mHistoryDataLv.setEnabled(false);
-                mSearchEditText.clearFocus();
                 HistoricalRecordBean historicalRecordBean = mHistoricalRecordAdapter.getObjects().get(position);
                 mSearchEditText.setText(historicalRecordBean.getSearchField());
-                mSearchField = historicalRecordBean.getSearchField();
 
-                if (!TextUtils.isEmpty(mSearchField)) {
-                    mCondition = "";
-                    for (int i = 0; i < mfuzzySchemeConditionBeans.size(); i++) {
-                        mCondition = mCondition + "(" + mfuzzySchemeConditionBeans.get(i).getField()
-                                + " like \'%" + mSearchField + "%\') or ";
+                searchEvent();
+            }
+        });
+
+        mTotalHideImageView.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                if (mTotalLl.getVisibility() == View.VISIBLE) {
+                    mTotalLl.setVisibility(View.GONE);
+                }
+                mTotalSpreadImageView.setVisibility(View.VISIBLE);
+            }
+        });
+
+        mTotalSpreadImageView.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                if (mTotalLl.getVisibility() == View.GONE) {
+                    mTotalLl.setVisibility(View.VISIBLE);
+                }
+            }
+        });
+    }
+
+
+    private void analysisData(Message msg) {
+        String result = msg.getData().getString("result");
+        if (result != null) {
+            mDataInquiryTotalBeans.clear();
+            if (mPageIndex == 1)
+                mDataInquiryFlexBeans.clear();
+            LogUtil.prinlnLongMsg("schemedata", msg.getData().getString("result"));
+            try {
+                JSONObject resultObject = new JSONObject(result);
+                JSONArray listArray = resultObject.optJSONArray("listdata");
+                JSONObject totalObject = resultObject.optJSONObject("summaryField");
+
+                if (totalObject != null) {
+                    for (int j = 0; j < mAllSchemeConditions.size(); j++) {
+                        String field = mAllSchemeConditions.get(j).getField();
+                        String caption = mAllSchemeConditions.get(j).getCaption();
+
+                        if (field != null) {
+                            if (!totalObject.isNull(field)) {
+                                DataInquiryTotalBean dataInquiryTotalBean = new DataInquiryTotalBean();
+                                double total = totalObject.optDouble(field);
+                                dataInquiryTotalBean.setCaption(caption);
+                                dataInquiryTotalBean.setField(field);
+                                dataInquiryTotalBean.setTotal(total);
+
+                                mDataInquiryTotalBeans.add(dataInquiryTotalBean);
+                            }
+                        }
                     }
-                    if (mCondition.length() >= 4) {
-                        mCondition = mCondition.substring(0, mCondition.length() - 4);
-                        mCondition = "(" + mCondition + ")";
+                }
+
+                if (mDataInquiryTotalBeans.size() > 0) {
+                    mTotalLl.setVisibility(View.VISIBLE);
+                    mTotalSpreadImageView.setVisibility(View.VISIBLE);
+                } else {
+                    mTotalLl.setVisibility(View.GONE);
+                    mTotalSpreadImageView.setVisibility(View.GONE);
+                }
+
+                mDataInquiryTotalAdapter.notifyDataSetChanged();
+
+                if (listArray != null && listArray.length() > 0) {
+                    if (!TextUtils.isEmpty(mSearchField)) {
+                        HistoricalRecordBean historicalRecordBean = new HistoricalRecordBean();
+                        historicalRecordBean.setSchemeId(mSchemeId);
+                        historicalRecordBean.setSchemeName(mSchemeName);
+                        historicalRecordBean.setSearchField(mSearchField);
+                        HistoricalRecordDao.getInstance().saveToHistoricalRecord(historicalRecordBean);
+
+                        mHistoricalRecordBeans.clear();
+                        List<HistoricalRecordBean> historicalRecordBeansById = HistoricalRecordDao.getInstance().getHistoricalRecordBeansById(mSchemeId);
+                        if (historicalRecordBeansById.size() > 0) {
+                            for (int i = 0; i < historicalRecordBeansById.size(); i++) {
+                                if (i < 6) {
+                                    mHistoricalRecordBeans.add(historicalRecordBeansById.get(i));
+                                }
+                            }
+                            mHistoricalRecordAdapter.notifyDataSetChanged();
+                        }
                     }
-                    Log.d("fuzzyCondition", mCondition);
 
-                    mPageIndex = 1;
-                    progressDialog.show();
-                    getSchemeData();
+                    for (int i = 0; i < listArray.length(); i++) {
+                        mAllRowChildBeans = new ArrayList<>();
+                        JSONObject dataObject = listArray.optJSONObject(i);
+                        if (dataObject != null) {
+                            DataInquiryFlexBean dataInquiryFlexBean = new DataInquiryFlexBean();
+                            dataInquiryFlexBean.setIsFlex(false);
+
+                            List<DataInquiryFlexBean.RowBean> rowBeans = new ArrayList<>();
+
+                            for (int j = 0; j < mAllSchemeConditions.size(); j++) {
+                                String field = mAllSchemeConditions.get(j).getField();
+                                String type = mAllSchemeConditions.get(j).getType();
+                                String caption = mAllSchemeConditions.get(j).getCaption();
+                                String value = dataObject.getString(field);
+
+                                if (value != null) {
+                                    DataInquiryFlexBean.RowBean.RowChildBean rowChildBean = new DataInquiryFlexBean.RowBean.RowChildBean();
+                                    rowChildBean.setCaption(caption);
+                                    if ("null".equals(value)) {
+                                        rowChildBean.setValue("");
+                                    } else {
+                                        if ("D".equals(type) || "CD".equals(type)) {
+                                            value = value.substring(0, value.length() - 8);
+                                        }
+                                        rowChildBean.setValue(value);
+                                    }
+                                    rowChildBean.setWidth(mAllSchemeConditions.get(j).getWidth());
+
+                                    mAllRowChildBeans.add(rowChildBean);
+                                }
+                            }
+                            List<DataInquiryFlexBean.RowBean.RowChildBean> shortChildBeans = new ArrayList<>();
+                            List<DataInquiryFlexBean.RowBean.RowChildBean> longChildBeans = new ArrayList<>();
+                            for (int k = 0; k < mAllRowChildBeans.size(); k++) {
+                                DataInquiryFlexBean.RowBean.RowChildBean rowChildBean = mAllRowChildBeans.get(k);
+                                if (rowChildBean.getWidth() <= 100) {
+                                    shortChildBeans.add(rowChildBean);
+                                } else {
+                                    longChildBeans.add(rowChildBean);
+                                }
+                            }
+
+                            for (int k = 0; k < (shortChildBeans.size() / 2); k++) {
+                                DataInquiryFlexBean.RowBean rowBean = new DataInquiryFlexBean.RowBean();
+
+                                List<DataInquiryFlexBean.RowBean.RowChildBean> childBeans = new ArrayList<>();
+                                childBeans.add(shortChildBeans.get(k * 2));
+                                childBeans.add(shortChildBeans.get((k * 2) + 1));
+
+                                rowBean.setRowChildBeans(childBeans);
+
+                                rowBeans.add(rowBean);
+                            }
+
+                            if ((shortChildBeans.size() % 2) != 0) {
+                                DataInquiryFlexBean.RowBean rowBean = new DataInquiryFlexBean.RowBean();
+
+                                List<DataInquiryFlexBean.RowBean.RowChildBean> childBeans = new ArrayList<>();
+                                childBeans.add(shortChildBeans.get(shortChildBeans.size() - 1));
+
+                                rowBean.setRowChildBeans(childBeans);
+
+                                rowBeans.add(rowBean);
+                            }
+
+                            for (int k = 0; k < longChildBeans.size(); k++) {
+                                DataInquiryFlexBean.RowBean rowBean = new DataInquiryFlexBean.RowBean();
+
+                                List<DataInquiryFlexBean.RowBean.RowChildBean> childBeans = new ArrayList<>();
+                                childBeans.add(longChildBeans.get(k));
+
+                                rowBean.setRowChildBeans(childBeans);
+
+                                rowBeans.add(rowBean);
+                            }
+
+                            dataInquiryFlexBean.setRowBeans(rowBeans);
+
+                            mDataInquiryFlexBeans.add(dataInquiryFlexBean);
+                        }
+                    }
+                    mDataInquiryFlexAdapter.notifyDataSetChanged();
+                } else {
+                    mDataInquiryFlexAdapter.notifyDataSetChanged();
+                    mEmptyLayout.showEmpty();
                 }
+
+            } catch (JSONException e) {
+                mDataInquiryFlexAdapter.notifyDataSetChanged();
+                if (mDataInquiryFlexBeans.size() == 0)
+                    mEmptyLayout.showEmpty();
+                e.printStackTrace();
             }
-        });
+        }
     }
 
+    private void analysisCondition(Message msg) {
+        String result = msg.getData().getString("result");
+        if (result != null) {
+            LogUtil.prinlnLongMsg("querycriteria", msg.getData().getString("result"));
+            try {
+                JSONObject resultObject = new JSONObject(result);
+                JSONArray dataArray = resultObject.optJSONArray("data");
+                if (dataArray != null) {
+                    String fuzzyHint = "";
+                    for (int i = 0; i < dataArray.length(); i++) {
+                        JSONObject dataObject = dataArray.optJSONObject(i);
+                        if (dataObject != null) {
+                            SchemeConditionBean schemeConditionBean = new SchemeConditionBean();
+                            String position = optStringNotNull(dataObject, "position");
+                            String field = optStringNotNull(dataObject, "field");
+                            boolean appCondition = dataObject.optBoolean("appCondition");
+                            int width = (int) optLongNotNull(dataObject, "width");
+                            String caption = optStringNotNull(dataObject, "caption");
+                            String defaultValue = optStringNotNull(dataObject, "defaultValue");
+                            String type = optStringNotNull(dataObject, "type");
+                            String table = optStringNotNull(dataObject, "table");
+
+                            if (!dataObject.isNull("properties")) {
+                                JSONArray properties = dataObject.optJSONArray("properties");
+                                if (properties != null) {
+                                    List<SchemeConditionBean.Property> propertyList = new ArrayList<>();
+                                    for (int j = 0; j < properties.length(); j++) {
+                                        JSONObject propertyObject = properties.optJSONObject(j);
+                                        SchemeConditionBean.Property property = new SchemeConditionBean.Property();
+                                        String value = optStringNotNull(propertyObject, "value");
+                                        String display = optStringNotNull(propertyObject, "display");
+
+                                        property.setDisplay(display);
+                                        property.setValue(value);
+                                        property.setState(false);
+
+                                        propertyList.add(property);
+                                    }
+                                    schemeConditionBean.setProperties(propertyList);
+                                }
+                            } else {
+                                ArrayList<SchemeConditionBean.Property> properties = new ArrayList<>();
+                                if ("N".equals(type)) {
+                                    for (int m = 0; m < 2; m++) {
+                                        SchemeConditionBean.Property property = new SchemeConditionBean.Property();
+                                        properties.add(property);
+                                    }
+                                } else if ("D".equals(type) || "CD".equals(type)) {
+                                    for (int m = 0; m < 2; m++) {
+                                        SchemeConditionBean.Property property = new SchemeConditionBean.Property();
+                                        if (m == 0) {
+                                            property.setDisplay(getMonthFirstDay());
+                                            property.setValue(getMonthFirstDay());
+                                        } else if (m == 1) {
+                                            property.setDisplay(getMonthLastDay());
+                                            property.setValue(getMonthLastDay());
+                                        }
+                                        properties.add(property);
+                                    }
+                                } else if ("CBG".equals(type) || "EC".equals(type) || "C".equals(type) || "R".equals(type)) {
+
+                                } else {
+                                    SchemeConditionBean.Property property = new SchemeConditionBean.Property();
+                                    property.setValue(defaultValue);
+                                    property.setDisplay(defaultValue);
+                                    properties.add(property);
+                                }
+                                schemeConditionBean.setProperties(properties);
+                            }
+
+                            schemeConditionBean.setPosition(position);
+                            schemeConditionBean.setField(field);
+                            schemeConditionBean.setAppCondition(appCondition);
+                            schemeConditionBean.setWidth(width);
+                            schemeConditionBean.setCaption(caption);
+                            schemeConditionBean.setDefaultValue(defaultValue);
+                            schemeConditionBean.setType(type);
+                            schemeConditionBean.setTable(table);
+
+                            mAllSchemeConditions.add(schemeConditionBean);
+
+                            if (schemeConditionBean.isAppCondition()) {
+                                mAppSchemeConditions.add(schemeConditionBean);
+                                if ("S".equals(type)) {
+                                    mfuzzySchemeConditionBeans.add(schemeConditionBean);
+                                }
+                            }
+                        }
+                    }
+
+                    Collections.sort(mAllSchemeConditions);
+                    Collections.sort(mAppSchemeConditions);
+
+                    try {
+                        mResetSchemeConditionBeans = deepCopy(mAppSchemeConditions);
+                    } catch (IOException e) {
+                        e.printStackTrace();
+                    } catch (ClassNotFoundException e) {
+                        e.printStackTrace();
+                    }
+
+                    mDataInquirySchemeConditionAdapter.notifyDataSetChanged();
+
+                    for (int i = 0; i < mAppSchemeConditions.size(); i++) {
+                        if ("S".equals(mAppSchemeConditions.get(i).getType())) {
+                            fuzzyHint = fuzzyHint + mAppSchemeConditions.get(i).getCaption() + "/";
+                        }
+                    }
+                    if (fuzzyHint.length() > 0) {
+                        fuzzyHint = fuzzyHint.substring(0, fuzzyHint.length() - 1);
+                        mSearchEditText.setHint(fuzzyHint);
+                    } else {
+                        mSearchEditText.setHint("搜索");
+                    }
+                }
+            } catch (JSONException e) {
+                e.printStackTrace();
+            }
+
+        }
+    }
+
+
     @Override
     public void onClick(View v) {
         switch (v.getId()) {
@@ -655,23 +741,35 @@ public class DataInquiryListActivity extends BaseActivity implements View.OnClic
             if ("N".equals(schemeConditionBean.getType()) && schemeConditionBean.getProperties().size() == 2) {
                 if (!TextUtils.isEmpty(schemeConditionBean.getProperties().get(0).getDisplay())
                         && !TextUtils.isEmpty(schemeConditionBean.getProperties().get(1).getDisplay())) {
-                    mCondition = mCondition + "(" + schemeConditionBean.getField()
+                    mCondition = mCondition + "("
+                            + (TextUtils.isEmpty(schemeConditionBean.getTable()) ? "" : (schemeConditionBean.getTable() + "."))
+                            + schemeConditionBean.getField()
                             + " >= " + schemeConditionBean.getProperties().get(0).getDisplay()
-                            + " and " + schemeConditionBean.getField()
+                            + " and "
+                            + (TextUtils.isEmpty(schemeConditionBean.getTable()) ? "" : (schemeConditionBean.getTable() + "."))
+                            + schemeConditionBean.getField()
                             + " <= " + schemeConditionBean.getProperties().get(1).getDisplay() + ") and ";
 
                 } else if (!TextUtils.isEmpty(schemeConditionBean.getProperties().get(0).getDisplay())) {
-                    mCondition = mCondition + "(" + schemeConditionBean.getField()
+                    mCondition = mCondition + "("
+                            + (TextUtils.isEmpty(schemeConditionBean.getTable()) ? "" : (schemeConditionBean.getTable() + "."))
+                            + schemeConditionBean.getField()
                             + " >= " + schemeConditionBean.getProperties().get(0).getDisplay() + ") and ";
                 } else if (!TextUtils.isEmpty(schemeConditionBean.getProperties().get(1).getDisplay())) {
-                    mCondition = mCondition + "(" + schemeConditionBean.getField()
+                    mCondition = mCondition + "("
+                            + (TextUtils.isEmpty(schemeConditionBean.getTable()) ? "" : (schemeConditionBean.getTable() + "."))
+                            + schemeConditionBean.getField()
                             + " <= " + schemeConditionBean.getProperties().get(1).getDisplay() + ") and ";
                 }
 
             } else if (("D".equals(schemeConditionBean.getType()) || "CD".equals(schemeConditionBean.getType())) && schemeConditionBean.getProperties().size() == 2) {
-                mCondition = mCondition + "(" + schemeConditionBean.getField()
+                mCondition = mCondition + "("
+                        + (TextUtils.isEmpty(schemeConditionBean.getTable()) ? "" : (schemeConditionBean.getTable() + "."))
+                        + schemeConditionBean.getField()
                         + " >= to_date(\'" + schemeConditionBean.getProperties().get(0).getDisplay()
-                        + "\',\'yyyy-MM-dd\') and " + schemeConditionBean.getField()
+                        + "\',\'yyyy-MM-dd\') and "
+                        + (TextUtils.isEmpty(schemeConditionBean.getTable()) ? "" : (schemeConditionBean.getTable() + "."))
+                        + schemeConditionBean.getField()
                         + " <= to_date(\'" + schemeConditionBean.getProperties().get(1).getDisplay()
                         + "\',\'yyyy-MM-dd\')) and ";
             } else if ("CBG".equals(schemeConditionBean.getType()) || "C".equals(schemeConditionBean.getType())
@@ -681,7 +779,9 @@ public class DataInquiryListActivity extends BaseActivity implements View.OnClic
                 for (int j = 0; j < schemeConditionBean.getProperties().size(); j++) {
                     if (schemeConditionBean.getProperties().get(j).isState()) {
                         selectedCount++;
-                        gridCondition = gridCondition + schemeConditionBean.getField() + " = \'"
+                        gridCondition = gridCondition
+                                + (TextUtils.isEmpty(schemeConditionBean.getTable()) ? "" : (schemeConditionBean.getTable() + "."))
+                                + schemeConditionBean.getField() + " = \'"
                                 + schemeConditionBean.getProperties().get(j).getValue() + "\' or ";
                     }
                 }
@@ -693,9 +793,11 @@ public class DataInquiryListActivity extends BaseActivity implements View.OnClic
             } else {
                 if (schemeConditionBean.getProperties().size() == 1) {
                     if (!TextUtils.isEmpty(schemeConditionBean.getProperties().get(0).getDisplay())) {
-                        mCondition = mCondition + "(" + schemeConditionBean.getField()
-                                + " = \'" + schemeConditionBean.getProperties().get(0).getDisplay() + "\')"
-                                + " and ";
+                        mCondition = mCondition + "("
+                                + (TextUtils.isEmpty(schemeConditionBean.getTable()) ? "" : (schemeConditionBean.getTable() + "."))
+                                + schemeConditionBean.getField()
+                                + " like \'%" + schemeConditionBean.getProperties().get(0).getDisplay()
+                                + "%\') and ";
                     }
                 }
             }
@@ -724,6 +826,8 @@ public class DataInquiryListActivity extends BaseActivity implements View.OnClic
                 String s = mSearchEditText.getText().toString() + CommonUtil.getPlaintext(text);
                 mSearchEditText.setText(s);
                 mSearchEditText.setSelection(s.length());
+
+                searchEvent();
             }
 
             @Override
@@ -740,14 +844,27 @@ public class DataInquiryListActivity extends BaseActivity implements View.OnClic
         if (actionId == EditorInfo.IME_ACTION_SEARCH
                 || actionId == EditorInfo.IME_ACTION_SEND
                 || (event != null && event.getAction() == KeyEvent.ACTION_DOWN && event.getKeyCode() == KeyEvent.KEYCODE_ENTER)) {
-            if (!CommonUtil.isNetWorkConnected(this)) {
-                ToastMessage(getString(R.string.networks_out));
-            } else {
-                String searchField = mSearchEditText.getText().toString().trim();
-                if (!TextUtils.isEmpty(searchField)) {
+            searchEvent();
+            return true;
+        }
+        return false;
+    }
+
+    private void searchEvent() {
+        if (!CommonUtil.isNetWorkConnected(this)) {
+            ToastMessage(getString(R.string.networks_out));
+        } else {
+            String searchField = mSearchEditText.getText().toString().trim();
+            if (!TextUtils.isEmpty(searchField)) {
+                if (mfuzzySchemeConditionBeans.size() == 0) {
+                    ToastMessage("该方案没有可用于模糊查询的字段!");
+                    mSearchEditText.setText("");
+                } else {
                     mCondition = "";
                     for (int i = 0; i < mfuzzySchemeConditionBeans.size(); i++) {
-                        mCondition = mCondition + "(" + mfuzzySchemeConditionBeans.get(i).getField()
+                        mCondition = mCondition + "("
+                                + (TextUtils.isEmpty(mfuzzySchemeConditionBeans.get(i).getTable()) ? "" : (mfuzzySchemeConditionBeans.get(i).getTable() + "."))
+                                + mfuzzySchemeConditionBeans.get(i).getField()
                                 + " like \'%" + searchField + "%\') or ";
                     }
                     if (mCondition.length() >= 4) {
@@ -756,22 +873,19 @@ public class DataInquiryListActivity extends BaseActivity implements View.OnClic
                     }
 
                     Log.d("fuzzyCondition", mCondition);
-
-                } else {
-                    mCondition = "1 = 1";
                 }
-                mPageIndex = 1;
-                mSearchField = searchField;
-                mSearchEditText.clearFocus();
-                mFuzzyWholeLl.setVisibility(View.GONE);
-                mHistoryDataLv.setEnabled(false);
-                progressDialog.show();
-                getSchemeData();
-            }
 
-            return true;
+            } else {
+                mCondition = "1 = 1";
+            }
+            mPageIndex = 1;
+            mSearchField = searchField;
+            mSearchEditText.clearFocus();
+            mFuzzyWholeLl.setVisibility(View.GONE);
+            mHistoryDataLv.setEnabled(false);
+            progressDialog.show();
+            getSchemeData();
         }
-        return false;
     }
 
     private void getSchemeData() {

+ 7 - 3
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/activity/PDFDownloadActivity.java

@@ -38,7 +38,7 @@ public class PDFDownloadActivity extends BaseActivity implements View.OnClickLis
     private RelativeLayout mDownloadRelativeLayout;
     private LinearLayout mErrorLinearLayout;
     private String downloadUrl = "", mReportName = "";
-    private String mCondition;
+    private String mCondition, mTitle;
 
     private Handler mHandler = new Handler() {
         @Override
@@ -91,7 +91,7 @@ public class PDFDownloadActivity extends BaseActivity implements View.OnClickLis
         mPDFView.fromFile(fileName)
 //                .pages(0, 2, 1, 3, 3, 3) // all pages are displayed by default
                 .enableSwipe(true) // allows to block changing pages using swipe
-                .swipeHorizontal(true)
+//                .swipeHorizontal(true)
                 .enableDoubletap(true)
                 .defaultPage(0)
                         // allows to draw something on the current page, usually visible in the middle of the screen
@@ -131,8 +131,12 @@ public class PDFDownloadActivity extends BaseActivity implements View.OnClickLis
         if (intent != null) {
             mCondition = intent.getStringExtra("condition");
             mReportName = intent.getStringExtra("reportName");
+            mTitle = intent.getStringExtra("title");
         }
 
+        if (mTitle != null)
+            getSupportActionBar().setTitle(mTitle);
+
 //        downloadUrl = com.xzjmyk.pm.activity.ui.erp.util.Constants.getAppBaseUrl(this)
 //                + "report/pdf/data?u=" + CommonUtil.getSharedPreferences(ct, "erp_master")
 //                + "&pf=phone&r=" + mReportName + "&w=" + mCondition;
@@ -202,6 +206,6 @@ public class PDFDownloadActivity extends BaseActivity implements View.OnClickLis
 
     @Override
     public void onInitiallyRendered(int nbPages, float pageWidth, float pageHeight) {
-        mPDFView.fitToWidth();
+//        mPDFView.fitToWidth();
     }
 }

+ 38 - 22
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/activity/ReportQueryCriteriaActivity.java

@@ -53,7 +53,7 @@ public class ReportQueryCriteriaActivity extends BaseActivity implements View.On
     private ListView mOptionListView;
     private TextView mCancelTextView, mResetTextView, mConfirmTextView;
     private GridMenuReportStatisticsBean.ListBean mReportInfo;
-    private String mCondition = "";
+    private String mCondition = "", mDefaultCondition = "";
     private List<ReportConditionBean> mReportConditionBeans, mResetReportConditionBeans;
     private ReportQueryConditionAdapter mReportQueryConditionAdapter;
 
@@ -68,6 +68,7 @@ public class ReportQueryCriteriaActivity extends BaseActivity implements View.On
                         LogUtil.prinlnLongMsg("querycriteria", msg.getData().getString("result"));
                         try {
                             JSONObject resultObject = new JSONObject(result);
+                            mDefaultCondition = optStringNotNull(resultObject, "defaultCondition");
                             JSONArray conditionArray = resultObject.optJSONArray("listCondition");
                             if (conditionArray != null) {
                                 String fuzzyHint = "";
@@ -108,10 +109,10 @@ public class ReportQueryCriteriaActivity extends BaseActivity implements View.On
                                             } else if ("D".equals(type) || "CD".equals(type)) {
                                                 for (int m = 0; m < 2; m++) {
                                                     ReportConditionBean.Property property = new ReportConditionBean.Property();
-                                                    if (m == 0){
+                                                    if (m == 0) {
                                                         property.setDisplay(getMonthFirstDay());
                                                         property.setValue(getMonthFirstDay());
-                                                    }else if (m == 1){
+                                                    } else if (m == 1) {
                                                         property.setDisplay(getMonthLastDay());
                                                         property.setValue(getMonthLastDay());
                                                     }
@@ -186,6 +187,10 @@ public class ReportQueryCriteriaActivity extends BaseActivity implements View.On
         if (intent != null) {
             mReportInfo = (GridMenuReportStatisticsBean.ListBean) intent.getSerializableExtra("reportinfo");
         }
+
+        if (mReportInfo != null) {
+            getSupportActionBar().setTitle(mReportInfo.getTitle() == null ? "" : mReportInfo.getTitle());
+        }
     }
 
     private void initEvents() {
@@ -195,19 +200,24 @@ public class ReportQueryCriteriaActivity extends BaseActivity implements View.On
     }
 
     private void initDatas() {
-        if (mReportInfo != null) {
-            progressDialog.show();
-            String url = Constants.getAppBaseUrl(this) + "mobile/qry/reportCondition.action";
-            Map<String, Object> params = new HashMap<>();
-            params.put("caller", mReportInfo.getCaller());
-            params.put("title", mReportInfo.getTitle());
-            LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
-            headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
-            ViewUtil.httpSendRequest(this, url, params, mHandler, headers, GET_OPTION_DATA, null, null, "post");
+        if (!CommonUtil.isNetWorkConnected(this)) {
+            ToastMessage(getString(R.string.networks_out));
         } else {
-            ToastMessage("方案信息获取失败!");
+            if (mReportInfo != null) {
+                progressDialog.show();
+                String url = Constants.getAppBaseUrl(this) + "mobile/qry/reportCondition.action";
+                Map<String, Object> params = new HashMap<>();
+                params.put("caller", mReportInfo.getCaller());
+                params.put("title", mReportInfo.getTitle());
+                LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
+                headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
+                ViewUtil.httpSendRequest(this, url, params, mHandler, headers, GET_OPTION_DATA, null, null, "post");
+            } else {
+                ToastMessage("方案信息获取失败!");
+            }
         }
 
+
     }
 
     @Override
@@ -324,18 +334,24 @@ public class ReportQueryCriteriaActivity extends BaseActivity implements View.On
         }
 
         Log.d("exactCondition", mCondition);
+        Log.d("defaultCondition", mDefaultCondition);
 
-        if (mCondition.length() == 0) {
-            ToastMessage("请确认报表查询条件");
-        } else {
-            Intent intent = new Intent();
-            intent.setClass(this, PDFDownloadActivity.class);
-            intent.putExtra("condition", mCondition);
-            if (mReportInfo != null)
-                intent.putExtra("reportName", mReportInfo.getReportName());
 
-            startActivity(intent);
+        Intent intent = new Intent();
+        intent.setClass(this, PDFDownloadActivity.class);
+        if (mCondition.length() != 0) {
+            intent.putExtra("condition", mCondition);
+        } else if (!TextUtils.isEmpty(mDefaultCondition)) {
+            intent.putExtra("condition", mDefaultCondition);
+        } else {
+            ToastMessage("请确定查询条件!");
+            return;
+        }
+        if (mReportInfo != null) {
+            intent.putExtra("reportName", mReportInfo.getReportName());
+            intent.putExtra("title", mReportInfo.getTitle());
         }
+        startActivity(intent);
     }
 
     public String optStringNotNull(JSONObject json, String key) {

+ 5 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/activity/ReportStatisticsActivity.java

@@ -48,7 +48,11 @@ public class ReportStatisticsActivity extends BaseActivity {
         mReportStatisticsMenuListAdapter = new ReportStatisticsMenuListAdapter(this, mGridMenuReportStatisticsBeans);
         mMenuListView.setAdapter(mReportStatisticsMenuListAdapter);
 
-        getMenuData();
+        if (!CommonUtil.isNetWorkConnected(this)) {
+            ToastMessage(getString(R.string.networks_out));
+        } else {
+            getMenuData();
+        }
     }
 
     private void getMenuData() {

+ 23 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/adapter/DataInquiryFlexAdapter.java

@@ -6,6 +6,7 @@ import android.view.View;
 import android.view.ViewGroup;
 import android.widget.BaseAdapter;
 import android.widget.ImageView;
+import android.widget.RelativeLayout;
 
 import com.xzjmyk.pm.activity.R;
 import com.xzjmyk.pm.activity.ui.erp.activity.datainquiry.bean.DataInquiryFlexBean;
@@ -31,6 +32,10 @@ public class DataInquiryFlexAdapter extends BaseAdapter {
         this.objects = objects;
     }
 
+    public List<DataInquiryFlexBean> getObjects() {
+        return objects;
+    }
+
     @Override
     public int getCount() {
         return objects.size();
@@ -57,6 +62,11 @@ public class DataInquiryFlexAdapter extends BaseAdapter {
     }
 
     private void initializeViews(final DataInquiryFlexBean object, ViewHolder holder) {
+        holder.itemDataInquiryFlexLv.setEnabled(false);
+        holder.itemDataInquiryFlexLv.setFocusable(false);
+        holder.itemDataInquiryFlexLv.setClickable(false);
+        holder.itemDataInquiryFlexLv.setPressed(false);
+
         List<DataInquiryFlexBean.RowBean> rowBeans = new ArrayList<>();
         if (object.isFlex()) {
             rowBeans = object.getRowBeans();
@@ -82,15 +92,28 @@ public class DataInquiryFlexAdapter extends BaseAdapter {
                 notifyDataSetChanged();
             }
         });
+
+//        holder.itemDataInquiryFlexRl.setOnClickListener(new View.OnClickListener() {
+//            @Override
+//            public void onClick(View v) {
+//                if (CommonUtil.isRepeatClick()) {
+//                    object.setIsFlex(!object.isFlex());
+//                    notifyDataSetChanged();
+//                }
+//            }
+//        });
     }
 
     protected class ViewHolder {
+        private RelativeLayout itemDataInquiryFlexRl;
         private ImageView itemDataInquiryFlexIv;
         private MyListView itemDataInquiryFlexLv;
 
         public ViewHolder(View view) {
+            itemDataInquiryFlexRl = (RelativeLayout) view.findViewById(R.id.item_data_inquiry_flex_rl);
             itemDataInquiryFlexIv = (ImageView) view.findViewById(R.id.item_data_inquiry_flex_iv);
             itemDataInquiryFlexLv = (MyListView) view.findViewById(R.id.item_data_inquiry_flex_lv);
         }
     }
+
 }

+ 7 - 2
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/adapter/DataInquiryFlexChildAdapter.java

@@ -52,11 +52,16 @@ public class DataInquiryFlexChildAdapter extends BaseAdapter {
             convertView = layoutInflater.inflate(R.layout.item_list_data_inquiry_child, null);
             convertView.setTag(new ViewHolder(convertView));
         }
-        initializeViews((DataInquiryFlexBean.RowBean) getItem(position), (ViewHolder) convertView.getTag());
+        initializeViews((DataInquiryFlexBean.RowBean) getItem(position), (ViewHolder) convertView.getTag(), position);
         return convertView;
     }
 
-    private void initializeViews(DataInquiryFlexBean.RowBean object, ViewHolder holder) {
+    private void initializeViews(DataInquiryFlexBean.RowBean object, ViewHolder holder, int position) {
+        if (position == getCount() - 1 && getCount() > 2) {
+            LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(holder.itemDataInquiryChildCaptionTv1.getLayoutParams());
+            layoutParams.setMargins(0, 0, 0, 2);
+            holder.itemDataInquiryChildCaptionTv1.setLayoutParams(layoutParams);
+        }
         if (object.getRowChildBeans().size() == 1) {
             holder.itemDataInquiryChildLl2.setVisibility(View.GONE);
 

+ 52 - 66
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/adapter/DataInquirySchemeConditionAdapter.java

@@ -20,9 +20,7 @@ import com.xzjmyk.pm.activity.util.CalendarUtils;
 import com.xzjmyk.pm.activity.view.MyGridView;
 import com.xzjmyk.pm.activity.view.wheel.OASigninPicker;
 
-import java.text.SimpleDateFormat;
 import java.util.ArrayList;
-import java.util.Calendar;
 import java.util.List;
 
 /**
@@ -134,24 +132,6 @@ public class DataInquirySchemeConditionAdapter extends BaseAdapter {
                     }
                 });
 
-                /*holder.numEdittext1.setOnTouchListener(new View.OnTouchListener() {
-                    @Override
-                    public boolean onTouch(View v, MotionEvent event) {
-                        mTouchPosition = (int) holder.numEdittext1.getTag();
-                        mTouchIndex = 1;
-                        return false;
-                    }
-                });
-
-                holder.numEdittext2.setOnTouchListener(new View.OnTouchListener() {
-                    @Override
-                    public boolean onTouch(View v, MotionEvent event) {
-                        mTouchPosition = (int) holder.numEdittext2.getTag();
-                        mTouchIndex = 2;
-                        return false;
-                    }
-                });*/
-
                 holder.numEdittext1.setOnFocusChangeListener(new View.OnFocusChangeListener() {
                     @Override
                     public void onFocusChange(View v, boolean hasFocus) {
@@ -205,27 +185,62 @@ public class DataInquirySchemeConditionAdapter extends BaseAdapter {
                 holder.textviewLl.setVisibility(View.VISIBLE);
                 holder.gridview.setVisibility(View.GONE);
 
-                holder.textview1.setText(getMonthFirstDay());
-                holder.textview2.setText(getMonthLastDay());
+                mProperties = object.getProperties();
 
-                object.getProperties().get(0).setDisplay(getMonthFirstDay());
-                object.getProperties().get(0).setValue(getMonthFirstDay());
-                object.getProperties().get(1).setDisplay(getMonthLastDay());
-                object.getProperties().get(1).setValue(getMonthLastDay());
+                if (mProperties != null && mProperties.size() == 2) {
+                    holder.textview1.setText(mProperties.get(0).getDisplay());
+                    holder.textview2.setText(mProperties.get(1).getDisplay());
+                }
 
-                mProperties = object.getProperties();
+                holder.textview1.setOnClickListener(new View.OnClickListener() {
+                    @Override
+                    public void onClick(View v) {
+                        String time1 = holder.textview1.getText().toString();
+                        String[] times1 = time1.split("-");
+                        if (times1.length >= 3) {
+                            showDateDialog(times1[0], times1[1], times1[2], holder.textview1, object, 0);
+                        } else {
+                            showDateDialog(null, null, null, holder.textview1, object, 0);
+                        }
+                    }
+                });
+
+                holder.textview2.setOnClickListener(new View.OnClickListener() {
+                    @Override
+                    public void onClick(View v) {
+                        String time2 = holder.textview2.getText().toString();
+                        String[] times2 = time2.split("-");
+                        if (times2.length >= 3) {
+                            showDateDialog(times2[0], times2[1], times2[2], holder.textview2, object, 1);
+                        } else {
+                            showDateDialog(null, null, null, holder.textview2, object, 1);
+                        }
+                    }
+                });
 
                 holder.calendar1.setOnClickListener(new View.OnClickListener() {
                     @Override
                     public void onClick(View v) {
-                        showDateDialog(holder.textview1, object, 0);
+                        String time1 = holder.textview1.getText().toString();
+                        String[] times1 = time1.split("-");
+                        if (times1.length >= 3) {
+                            showDateDialog(times1[0], times1[1], times1[2], holder.textview1, object, 0);
+                        } else {
+                            showDateDialog(null, null, null, holder.textview1, object, 0);
+                        }
                     }
                 });
 
                 holder.calendar2.setOnClickListener(new View.OnClickListener() {
                     @Override
                     public void onClick(View v) {
-                        showDateDialog(holder.textview2, object, 1);
+                        String time2 = holder.textview2.getText().toString();
+                        String[] times2 = time2.split("-");
+                        if (times2.length >= 3) {
+                            showDateDialog(times2[0], times2[1], times2[2], holder.textview2, object, 1);
+                        } else {
+                            showDateDialog(null, null, null, holder.textview2, object, 1);
+                        }
                     }
                 });
                 break;
@@ -330,14 +345,6 @@ public class DataInquirySchemeConditionAdapter extends BaseAdapter {
                     }
                 });
 
-                /*holder.stringEdittext.setOnTouchListener(new View.OnTouchListener() {
-                    @Override
-                    public boolean onTouch(View v, MotionEvent event) {
-                        mTouchPosition = (int) v.getTag();
-                        return false;
-                    }
-                });*/
-
                 holder.stringEdittext.setOnFocusChangeListener(new View.OnFocusChangeListener() {
                     @Override
                     public void onFocusChange(View v, boolean hasFocus) {
@@ -362,35 +369,14 @@ public class DataInquirySchemeConditionAdapter extends BaseAdapter {
         }
     }
 
-    /**
-     * 得到本月的第一天
-     */
-    public static String getMonthFirstDay() {
-        Calendar calendar = Calendar.getInstance();
-        calendar.set(Calendar.DAY_OF_MONTH, calendar
-                .getActualMinimum(Calendar.DAY_OF_MONTH));
-//        calendar.set( Calendar.DATE, 1);
-        SimpleDateFormat simpleFormate = new SimpleDateFormat("yyyy-MM-dd");
-        return simpleFormate.format(calendar.getTime());
-    }
-
-    /**
-     * 得到本月的最后一天
-     */
-    public static String getMonthLastDay() {
-        Calendar calendar = Calendar.getInstance();
-        calendar.set(Calendar.DAY_OF_MONTH, calendar
-                .getActualMaximum(Calendar.DAY_OF_MONTH));
-//        calendar.set( Calendar.DATE, 1);
-//        calendar.roll(Calendar.DATE, - 1);
-        SimpleDateFormat simpleFormate = new SimpleDateFormat("yyyy-MM-dd");
-        return simpleFormate.format(calendar.getTime());
-    }
-
-    private void showDateDialog(final TextView tv, SchemeConditionBean object, int i) {
-        OASigninPicker picker = new OASigninPicker((Activity) context);
-        picker.setRange(CalendarUtils.getCurrentYear(), CalendarUtils.getCurrentMonth(), CalendarUtils.getCurrentDate());
-        picker.setSelectedItem(CalendarUtils.getCurrentYear(), CalendarUtils.getCurrentMonth(), CalendarUtils.getCurrentDate());
+    private void showDateDialog(String year, String month, String day, final TextView tv, SchemeConditionBean object, int i) {
+        OASigninPicker picker = new OASigninPicker((Activity) context, 2000, 2030);
+        picker.setRange(2030, 12, 31);
+        try {
+            picker.setSelectedItem(Integer.parseInt(year), Integer.parseInt(month), Integer.parseInt(day));
+        } catch (Exception e) {
+            picker.setSelectedItem(CalendarUtils.getCurrentYear(), CalendarUtils.getCurrentMonth(), CalendarUtils.getCurrentDate());
+        }
         picker.setOnDateTimePickListener(new OASigninPicker.OnDateTimePickListener() {
             @Override
             public void setTime(String year, String month, String day) {

+ 91 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/adapter/DataInquiryTotalAdapter.java

@@ -0,0 +1,91 @@
+package com.xzjmyk.pm.activity.ui.erp.activity.datainquiry.adapter;
+
+import android.content.Context;
+import android.os.Handler;
+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.xzjmyk.pm.activity.R;
+import com.xzjmyk.pm.activity.ui.erp.activity.datainquiry.bean.DataInquiryTotalBean;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class DataInquiryTotalAdapter extends BaseAdapter {
+    private List<DataInquiryTotalBean> objects = new ArrayList<DataInquiryTotalBean>();
+    private Handler mHandler;
+
+    private Context context;
+    private LayoutInflater layoutInflater;
+
+    public DataInquiryTotalAdapter(Context context, List<DataInquiryTotalBean> objects) {
+        this.context = context;
+        this.layoutInflater = LayoutInflater.from(context);
+        this.objects = objects;
+    }
+
+    public List<DataInquiryTotalBean> getObjects() {
+        return objects;
+    }
+
+    public void setHandler(Handler handler) {
+        mHandler = handler;
+    }
+
+    @Override
+    public int getCount() {
+        return objects.size();
+    }
+
+    @Override
+    public DataInquiryTotalBean getItem(int position) {
+        return objects.get(position);
+    }
+
+    @Override
+    public long getItemId(int position) {
+        return position;
+    }
+
+    @Override
+    public View getView(int position, View convertView, ViewGroup parent) {
+        if (convertView == null) {
+            convertView = layoutInflater.inflate(R.layout.item_list_data_inquiry_total, null);
+            convertView.setTag(new ViewHolder(convertView));
+        }
+        initializeViews((DataInquiryTotalBean) getItem(position), (ViewHolder) convertView.getTag(), position);
+        return convertView;
+    }
+
+    private void initializeViews(DataInquiryTotalBean object, ViewHolder holder, int position) {
+        holder.dataInquiryItemTotalCaption.setText("当前合计" + object.getCaption() + ":");
+        holder.dataInquiryItemTotalValue.setText(object.getTotal() + "");
+
+        holder.dataInquiryItemTotalDeleteIv.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                objects.remove(position);
+                notifyDataSetChanged();
+                if (objects.size() == 0 && mHandler != null) {
+                    mHandler.sendEmptyMessage(0x88);
+                }
+            }
+        });
+    }
+
+    protected class ViewHolder {
+        private TextView dataInquiryItemTotalCaption;
+        private TextView dataInquiryItemTotalValue;
+        private ImageView dataInquiryItemTotalDeleteIv;
+
+        public ViewHolder(View view) {
+            dataInquiryItemTotalCaption = (TextView) view.findViewById(R.id.data_inquiry_item_total_caption);
+            dataInquiryItemTotalValue = (TextView) view.findViewById(R.id.data_inquiry_item_total_value);
+            dataInquiryItemTotalDeleteIv = (ImageView) view.findViewById(R.id.data_inquiry_item_total_delete_iv);
+        }
+    }
+}

+ 1 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/adapter/ItemGridDataInquiryExactAdapter.java

@@ -53,7 +53,7 @@ public class ItemGridDataInquiryExactAdapter extends BaseAdapter {
     private void initializeViews(SchemeConditionBean.Property object, ViewHolder holder) {
         holder.itemDataInquiryExactGridTv.setText(object.getDisplay());
         if (object.isState()) {
-            holder.itemDataInquiryExactGridTv.setTextColor(context.getResources().getColor(R.color.blue));
+            holder.itemDataInquiryExactGridTv.setTextColor(context.getResources().getColor(R.color.data_inquiry_gird_menu_color1));
         } else {
             holder.itemDataInquiryExactGridTv.setTextColor(context.getResources().getColor(android.R.color.black));
         }

+ 1 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/adapter/ItemGridReportQueryExactAdapter.java

@@ -53,7 +53,7 @@ public class ItemGridReportQueryExactAdapter extends BaseAdapter {
     private void initializeViews(ReportConditionBean.Property object, ViewHolder holder) {
         holder.itemDataInquiryExactGridTv.setText(object.getDisplay());
         if (object.isState()) {
-            holder.itemDataInquiryExactGridTv.setTextColor(context.getResources().getColor(R.color.blue));
+            holder.itemDataInquiryExactGridTv.setTextColor(context.getResources().getColor(R.color.data_inquiry_gird_menu_color1));
         } else {
             holder.itemDataInquiryExactGridTv.setTextColor(context.getResources().getColor(android.R.color.black));
         }

+ 52 - 13
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/adapter/ReportQueryConditionAdapter.java

@@ -182,27 +182,62 @@ public class ReportQueryConditionAdapter extends BaseAdapter {
                 holder.textviewLl.setVisibility(View.VISIBLE);
                 holder.gridview.setVisibility(View.GONE);
 
-                holder.textview1.setText(getMonthFirstDay());
-                holder.textview2.setText(getMonthLastDay());
+                mProperties = object.getProperties();
 
-                object.getProperties().get(0).setDisplay(getMonthFirstDay());
-                object.getProperties().get(0).setValue(getMonthFirstDay());
-                object.getProperties().get(1).setDisplay(getMonthLastDay());
-                object.getProperties().get(1).setValue(getMonthLastDay());
+                if (mProperties != null && mProperties.size() == 2) {
+                    holder.textview1.setText(mProperties.get(0).getDisplay());
+                    holder.textview2.setText(mProperties.get(1).getDisplay());
+                }
 
-                mProperties = object.getProperties();
+                holder.textview1.setOnClickListener(new View.OnClickListener() {
+                    @Override
+                    public void onClick(View v) {
+                        String time1 = holder.textview1.getText().toString();
+                        String[] times1 = time1.split("-");
+                        if (times1.length >= 3) {
+                            showDateDialog(times1[0], times1[1], times1[2], holder.textview1, object, 0);
+                        } else {
+                            showDateDialog(null, null, null, holder.textview1, object, 0);
+                        }
+                    }
+                });
+
+                holder.textview2.setOnClickListener(new View.OnClickListener() {
+                    @Override
+                    public void onClick(View v) {
+                        String time2 = holder.textview2.getText().toString();
+                        String[] times2 = time2.split("-");
+                        if (times2.length >= 3) {
+                            showDateDialog(times2[0], times2[1], times2[2], holder.textview2, object, 1);
+                        } else {
+                            showDateDialog(null, null, null, holder.textview2, object, 1);
+                        }
+                    }
+                });
 
                 holder.calendar1.setOnClickListener(new View.OnClickListener() {
                     @Override
                     public void onClick(View v) {
-                        showDateDialog(holder.textview1, object, 0);
+                        String time1 = holder.textview1.getText().toString();
+                        String[] times1 = time1.split("-");
+                        if (times1.length >= 3) {
+                            showDateDialog(times1[0], times1[1], times1[2], holder.textview1, object, 0);
+                        } else {
+                            showDateDialog(null, null, null, holder.textview1, object, 0);
+                        }
                     }
                 });
 
                 holder.calendar2.setOnClickListener(new View.OnClickListener() {
                     @Override
                     public void onClick(View v) {
-                        showDateDialog(holder.textview2, object, 1);
+                        String time2 = holder.textview2.getText().toString();
+                        String[] times2 = time2.split("-");
+                        if (times2.length >= 3) {
+                            showDateDialog(times2[0], times2[1], times2[2], holder.textview2, object, 1);
+                        } else {
+                            showDateDialog(null, null, null, holder.textview2, object, 1);
+                        }
                     }
                 });
                 break;
@@ -355,10 +390,14 @@ public class ReportQueryConditionAdapter extends BaseAdapter {
         return simpleFormate.format(calendar.getTime());
     }
 
-    private void showDateDialog(final TextView tv, ReportConditionBean object, int i) {
-        OASigninPicker picker = new OASigninPicker((Activity) context);
-        picker.setRange(CalendarUtils.getCurrentYear(), CalendarUtils.getCurrentMonth(), CalendarUtils.getCurrentDate());
-        picker.setSelectedItem(CalendarUtils.getCurrentYear(), CalendarUtils.getCurrentMonth(), CalendarUtils.getCurrentDate());
+    private void showDateDialog(String year, String month, String day, final TextView tv, ReportConditionBean object, int i) {
+        OASigninPicker picker = new OASigninPicker((Activity) context, 2000, 2030);
+        picker.setRange(2030, 12, 31);
+        try {
+            picker.setSelectedItem(Integer.parseInt(year), Integer.parseInt(month), Integer.parseInt(day));
+        } catch (Exception e) {
+            picker.setSelectedItem(CalendarUtils.getCurrentYear(), CalendarUtils.getCurrentMonth(), CalendarUtils.getCurrentDate());
+        }
         picker.setOnDateTimePickListener(new OASigninPicker.OnDateTimePickListener() {
             @Override
             public void setTime(String year, String month, String day) {

+ 34 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/bean/DataInquiryTotalBean.java

@@ -0,0 +1,34 @@
+package com.xzjmyk.pm.activity.ui.erp.activity.datainquiry.bean;
+
+/**
+ * Created by RaoMeng on 2017/9/2.
+ */
+public class DataInquiryTotalBean {
+    private String mField;
+    private String mCaption;
+    private double mTotal;
+
+    public String getField() {
+        return mField;
+    }
+
+    public void setField(String field) {
+        mField = field;
+    }
+
+    public String getCaption() {
+        return mCaption;
+    }
+
+    public void setCaption(String caption) {
+        mCaption = caption;
+    }
+
+    public double getTotal() {
+        return mTotal;
+    }
+
+    public void setTotal(double total) {
+        mTotal = total;
+    }
+}

+ 9 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/datainquiry/bean/SchemeConditionBean.java

@@ -15,6 +15,15 @@ public class SchemeConditionBean implements Serializable, Comparable<SchemeCondi
     private boolean mAppCondition;
     private String mDefaultValue;
     private List<Property> mProperties;
+    private String mTable;
+
+    public String getTable() {
+        return mTable;
+    }
+
+    public void setTable(String table) {
+        mTable = table;
+    }
 
     public String getPosition() {
         return mPosition;

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

@@ -300,6 +300,7 @@ public class Constants {
         if (ct == null) return "";
         String baseUrl = CommonUtil.getSharedPreferences(ct, "erp_baseurl");
         return baseUrl;
+//        return "http://192.168.253.58:8080/ERP/";
     }
 
     public static String IM_BASE_URL = "http://113.105.74.140:8092/";

+ 14 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/view/wheel/OASigninPicker.java

@@ -52,6 +52,20 @@ public class OASigninPicker extends WheelPicker {
         }
     }
 
+    public OASigninPicker(Activity activity, int startYear, int endYear) {
+        super(activity);
+        textSize = 16;//年月日时分,比较宽,设置字体小一点才能显示完整
+        for (int i = startYear; i <= endYear; i++) {
+            years.add(String.valueOf(i));
+        }
+        for (int i = 1; i <= 12; i++) {
+            months.add(DateUtils.fillZero(i));
+        }
+        for (int i = 1; i <= 31; i++) {
+            days.add(DateUtils.fillZero(i));
+        }
+    }
+
     @NonNull
     @Override
     protected View makeCenterView() {

+ 4 - 4
WeiChat/src/main/res/drawable/selector_cancel_bg.xml

@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <selector xmlns:android="http://schemas.android.com/apk/res/android">
-    <item android:drawable="@drawable/shape_corner_shallow_blue_bg" android:state_selected="true"/>
-    <item android:drawable="@drawable/shape_corner_shallow_blue_bg" android:state_pressed="true"/>
-    <item android:drawable="@drawable/shape_corner_shallow_blue_bg" android:state_checked="true"/>
-    <item android:drawable="@drawable/shape_corner_white_bg"/>
+    <item android:drawable="@drawable/shape_corner_deep_blue_bg" android:state_selected="true"/>
+    <item android:drawable="@drawable/shape_corner_deep_blue_bg" android:state_pressed="true"/>
+    <item android:drawable="@drawable/shape_corner_deep_blue_bg" android:state_checked="true"/>
+    <item android:drawable="@drawable/shape_blue_corner_white_bg"/>
 </selector>

+ 8 - 0
WeiChat/src/main/res/drawable/selector_datainquiry_grid_item_bg.xml

@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+    <item android:drawable="@color/me_menu_item_press" android:state_checked="true"/>
+    <item android:drawable="@color/me_menu_item_press" android:state_pressed="true"/>
+    <item android:drawable="@color/me_menu_item_press" android:state_selected="true"/>
+
+    <item android:drawable="@color/white"/>
+</selector>

+ 9 - 0
WeiChat/src/main/res/drawable/shape_blue_corner_white_bg.xml

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+       android:shape="rectangle">
+    <corners android:radius="6dp"/>
+    <stroke
+        android:width="1dp"
+        android:color="@color/titleBlue"/>
+    <solid android:color="@color/white"/>
+</shape>

+ 2 - 2
WeiChat/src/main/res/drawable/shape_corner_deep_blue_bg.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">
-    <corners android:radius="10dp"/>
-    <solid android:color="@color/LightBlue"/>
+    <corners android:radius="6dp"/>
+    <solid android:color="#2386cb"/>
 </shape>

+ 1 - 1
WeiChat/src/main/res/drawable/shape_corner_shallow_blue_bg.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">
-    <corners android:radius="10dp"/>
+    <corners android:radius="6dp"/>
     <solid android:color="@color/titleBlue"/>
 </shape>

+ 2 - 2
WeiChat/src/main/res/drawable/shape_corner_white_bg.xml

@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="utf-8"?>
 <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">
-    <corners android:radius="10dp"/>
+    <corners android:radius="6dp"/>
     <stroke
         android:width="1dp"
-        android:color="@color/titleBlue"/>
+        android:color="#cfcfcf"/>
     <solid android:color="@color/white"/>
 </shape>

+ 2 - 2
WeiChat/src/main/res/layout/action_data_inquiry_list.xml

@@ -8,8 +8,8 @@
 
     <ImageView
         android:id="@+id/back"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
+        android:layout_width="24dp"
+        android:layout_height="24dp"
         android:layout_centerVertical="true"
         android:src="@drawable/ic_action_back"/>
 

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

@@ -9,5 +9,7 @@
     <ListView
         android:id="@+id/data_inquiry_menu_lv"
         android:layout_width="match_parent"
-        android:layout_height="match_parent"/>
+        android:layout_height="match_parent"
+        android:divider="@color/gray_light"
+        android:dividerHeight="1dp"/>
 </LinearLayout>

+ 54 - 11
WeiChat/src/main/res/layout/activity_data_inquiry_list.xml

@@ -6,14 +6,59 @@
                 android:focusableInTouchMode="true"
                 android:orientation="vertical">
 
-    <com.handmark.pulltorefresh.library.PullToRefreshListView
-        android:id="@+id/data_inquiry_list_ptlv"
+    <LinearLayout
         android:layout_width="match_parent"
         android:layout_height="match_parent"
-        android:divider="@color/gray_light"
-        android:dividerHeight="1dp"
-        android:layerType="software"
-        android:scrollingCache="false"/>
+        android:orientation="vertical">
+
+        <com.handmark.pulltorefresh.library.PullToRefreshListView
+            android:id="@+id/data_inquiry_list_ptlv"
+            android:layout_width="match_parent"
+            android:layout_height="0dp"
+            android:layout_weight="1"
+            android:divider="@color/gray_light"
+            android:dividerHeight="1dp"
+            android:layerType="software"
+            android:scrollingCache="false"/>
+
+        <ImageView
+            android:id="@+id/data_inquiry_list_total_spread_iv"
+            android:layout_width="match_parent"
+            android:layout_height="30dp"
+            android:background="@color/white"
+            android:scaleType="centerInside"
+            android:src="@drawable/ic_menu_spread"/>
+    </LinearLayout>
+
+    <LinearLayout
+        android:id="@+id/data_inquiry_list_total_ll"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_alignParentBottom="true"
+        android:background="@color/white"
+        android:orientation="vertical"
+        android:visibility="gone">
+
+        <RelativeLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:padding="8dp">
+
+            <ImageView
+                android:id="@+id/data_inquiry_list_total_hide_iv"
+                android:layout_width="24dp"
+                android:layout_height="24dp"
+                android:layout_alignParentRight="true"
+                android:layout_marginRight="5dp"
+                android:src="@drawable/node_delete"/>
+        </RelativeLayout>
+
+        <ListView
+            android:id="@+id/data_inquiry_list_total_lv"
+            android:layout_width="match_parent"
+            android:layout_height="140dp"
+            android:layout_marginBottom="10dp"/>
+    </LinearLayout>
 
     <LinearLayout
         android:id="@+id/data_inquiry_list_fuzzy_ll"
@@ -33,6 +78,7 @@
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
                 android:background="@color/white"
+                android:clickable="true"
                 android:orientation="horizontal"
                 android:padding="16dp">
 
@@ -92,12 +138,9 @@
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
                 android:background="@color/background"
-                android:orientation="horizontal"
-                android:paddingBottom="20dp"
-                android:paddingLeft="10dp"
-                android:paddingRight="10dp"
                 android:clickable="true"
-                android:paddingTop="10dp">
+                android:orientation="horizontal"
+                android:padding="10dp">
 
                 <TextView
                     android:id="@+id/data_inquiry_list_option_cancel_tv"

+ 5 - 4
WeiChat/src/main/res/layout/activity_report_query_criteria.xml

@@ -3,6 +3,7 @@
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
+    android:background="@color/white"
     android:orientation="vertical">
 
     <LinearLayout
@@ -27,16 +28,16 @@
         android:id="@+id/report_query_criteria_lv"
         android:layout_width="match_parent"
         android:layout_height="0dp"
+        android:layout_marginTop="10dp"
         android:layout_weight="1"/>
 
     <LinearLayout
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
+        android:background="@color/background"
+        android:clickable="true"
         android:orientation="horizontal"
-        android:paddingBottom="20dp"
-        android:paddingLeft="10dp"
-        android:paddingRight="10dp"
-        android:paddingTop="10dp">
+        android:padding="10dp">
 
         <TextView
             android:id="@+id/report_query_criteria_cancel_btn"

+ 4 - 5
WeiChat/src/main/res/layout/item_grid_data_inquiry_exact.xml

@@ -2,15 +2,14 @@
 <LinearLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:layout_height="46dp">
+    android:layout_height="wrap_content">
 
     <TextView
         android:id="@+id/item_data_inquiry_exact_grid_tv"
         android:layout_width="match_parent"
-        android:layout_height="46dp"
-        android:background="@drawable/selector_me_menu_item_bg"
-        android:gravity="center"
-        android:maxLines="2"
+        android:layout_height="wrap_content"
+        android:background="@drawable/selector_datainquiry_grid_item_bg"
         android:padding="6dp"
+        android:singleLine="true"
         android:textSize="14sp"/>
 </LinearLayout>

+ 3 - 4
WeiChat/src/main/res/layout/item_grid_data_inquiry_menu.xml

@@ -21,12 +21,11 @@
     <TextView
         android:id="@+id/grid_data_inquiry_menu_content"
         android:layout_width="match_parent"
-        android:layout_height="50dp"
+        android:layout_height="wrap_content"
         android:layout_marginTop="10dp"
+        android:ellipsize="end"
         android:gravity="center_horizontal"
-        android:maxHeight="200dp"
-        android:maxLines="3"
-        android:minHeight="20dp"
+        android:lines="2"
         android:textSize="14sp"
         tools:text="BOM"/>
 </LinearLayout>

+ 8 - 2
WeiChat/src/main/res/layout/item_list_data_inquiry.xml

@@ -1,8 +1,10 @@
 <?xml version="1.0" encoding="utf-8"?>
 <RelativeLayout
+    android:id="@+id/item_data_inquiry_flex_rl"
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:layout_height="match_parent">
+    android:layout_height="match_parent"
+    android:descendantFocusability="blocksDescendants">
 
 
     <ImageView
@@ -11,7 +13,9 @@
         android:layout_height="wrap_content"
         android:layout_alignParentBottom="true"
         android:layout_alignParentRight="true"
-        android:padding="10dp"
+        android:paddingBottom="10dp"
+        android:paddingRight="10dp"
+        android:paddingTop="10dp"
         android:src="@drawable/ic_menu_retract"/>
 
 
@@ -20,6 +24,8 @@
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:layout_toLeftOf="@id/item_data_inquiry_flex_iv"
+        android:clickable="false"
         android:divider="@null"
+        android:focusable="false"
         android:scrollbars="none"/>
 </RelativeLayout>

+ 12 - 7
WeiChat/src/main/res/layout/item_list_data_inquiry_child.xml

@@ -16,16 +16,19 @@
         <TextView
             android:id="@+id/item_data_inquiry_child_caption_tv1"
             android:layout_width="60dp"
-            android:layout_height="match_parent"
+            android:layout_height="wrap_content"
+            android:ellipsize="end"
+            android:maxLines="2"
+            android:textColor="@color/data_inquiry_caption_textcolor"
             android:textSize="14sp"
             />
 
         <TextView
             android:id="@+id/item_data_inquiry_child_value_tv1"
             android:layout_width="match_parent"
-            android:layout_height="match_parent"
+            android:layout_height="wrap_content"
             android:layout_marginLeft="6dp"
-            android:gravity="center_vertical"
+            android:textColor="@color/data_inquiry_value_textcolor"
             android:textSize="14sp"/>
     </LinearLayout>
 
@@ -39,18 +42,20 @@
         <TextView
             android:id="@+id/item_data_inquiry_child_caption_tv2"
             android:layout_width="60dp"
-            android:layout_height="match_parent"
+            android:layout_height="wrap_content"
+            android:ellipsize="end"
+            android:maxLines="2"
+            android:textColor="@color/data_inquiry_caption_textcolor"
             android:textSize="14sp"
             />
 
         <TextView
             android:id="@+id/item_data_inquiry_child_value_tv2"
             android:layout_width="match_parent"
-            android:layout_height="match_parent"
+            android:layout_height="wrap_content"
             android:layout_marginLeft="6dp"
-            android:gravity="center_vertical"
+            android:textColor="@color/data_inquiry_value_textcolor"
             android:textSize="14sp"/>
     </LinearLayout>
 
-
 </LinearLayout>

+ 21 - 14
WeiChat/src/main/res/layout/item_list_data_inquiry_exact_query.xml

@@ -2,7 +2,7 @@
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
               xmlns:tools="http://schemas.android.com/tools"
               android:layout_width="match_parent"
-              android:layout_height="wrap_content"
+              android:layout_height="100dp"
               android:descendantFocusability="beforeDescendants"
               android:gravity="center_vertical"
               android:orientation="horizontal"
@@ -11,10 +11,14 @@
     <TextView
         android:id="@+id/item_data_inquiry_exact_caption_tv"
         android:layout_width="80dp"
-        android:layout_height="wrap_content"
-        android:gravity="center"
-        android:textSize="16sp"
+        android:layout_height="36dp"
+        android:layout_gravity="left"
         android:layout_marginRight="10dp"
+        android:gravity="center_vertical"
+        android:maxLines="2"
+        android:paddingLeft="6dp"
+        android:ellipsize="end"
+        android:textSize="14sp"
         tools:text="caption"/>
 
     <EditText
@@ -22,7 +26,8 @@
         android:layout_width="match_parent"
         android:layout_height="36dp"
         android:background="@drawable/shape_corner_white_bg"
-        android:gravity="center"
+        android:gravity="center_vertical"
+        android:paddingLeft="10dp"
         android:textSize="14sp"
         android:visibility="gone"/>
 
@@ -40,9 +45,10 @@
             android:layout_height="36dp"
             android:layout_weight="1"
             android:background="@drawable/shape_corner_white_bg"
-            android:gravity="center"
-            android:textSize="14sp"
-            android:inputType="number"/>
+            android:gravity="center_vertical"
+            android:inputType="number"
+            android:paddingLeft="10dp"
+            android:textSize="14sp"/>
 
         <TextView
             android:layout_width="wrap_content"
@@ -58,10 +64,11 @@
             android:layout_width="0dp"
             android:layout_height="36dp"
             android:layout_weight="1"
-            android:textSize="14sp"
             android:background="@drawable/shape_corner_white_bg"
-            android:gravity="center"
-            android:inputType="number"/>
+            android:gravity="center_vertical"
+            android:inputType="number"
+            android:paddingLeft="10dp"
+            android:textSize="14sp"/>
     </LinearLayout>
 
     <LinearLayout
@@ -76,7 +83,7 @@
             android:layout_width="0dp"
             android:layout_height="36dp"
             android:layout_weight="1"
-            android:background="@drawable/shape_corner_white_bg"
+            android:background="@drawable/shape_blue_corner_white_bg"
             android:gravity="center_vertical">
 
             <TextView
@@ -84,8 +91,8 @@
                 android:layout_width="0dp"
                 android:layout_height="match_parent"
                 android:layout_weight="1"
-                android:textSize="14sp"
                 android:gravity="center"
+                android:textSize="14sp"
                 tools:text="2017-08-15"/>
 
             <ImageView
@@ -107,7 +114,7 @@
             android:layout_width="0dp"
             android:layout_height="36dp"
             android:layout_weight="1"
-            android:background="@drawable/shape_corner_white_bg"
+            android:background="@drawable/shape_blue_corner_white_bg"
             android:gravity="center_vertical">
 
             <TextView

+ 2 - 2
WeiChat/src/main/res/layout/item_list_data_inquiry_menu.xml

@@ -13,8 +13,8 @@
 
         <View
             android:id="@+id/data_inquiry_modul_view"
-            android:layout_width="8dp"
-            android:layout_height="16dp"
+            android:layout_width="6dp"
+            android:layout_height="12dp"
             android:layout_marginLeft="10dp" />
 
         <TextView

+ 41 - 0
WeiChat/src/main/res/layout/item_list_data_inquiry_total.xml

@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:gravity="center_vertical"
+    android:orientation="horizontal"
+    android:padding="4dp">
+
+    <TextView
+        android:id="@+id/data_inquiry_item_total_caption"
+        android:layout_width="0dp"
+        android:layout_weight="1"
+        android:layout_height="wrap_content"
+        android:ellipsize="end"
+        android:maxLines="2"
+        android:gravity="right|center_vertical"
+        android:textSize="14sp"
+        tools:text="current whoal:"/>
+
+    <TextView
+        android:id="@+id/data_inquiry_item_total_value"
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:ellipsize="end"
+        android:maxLines="2"
+        android:layout_marginLeft="6dp"
+        android:layout_weight="1"
+        android:gravity="center_vertical"
+        android:textColor="@color/titleBlue"
+        android:textSize="14sp"
+        tools:text="349013718.270345"/>
+
+    <ImageView
+        android:id="@+id/data_inquiry_item_total_delete_iv"
+        android:layout_width="14dp"
+        android:layout_height="14dp"
+        android:layout_marginRight="14dp"
+        android:src="@drawable/to_back"/>
+</LinearLayout>

+ 2 - 0
WeiChat/src/main/res/values/colors.xml

@@ -335,4 +335,6 @@
     <color name="data_inquiry_gird_menu_color4">#f57474</color>
     <color name="data_inquiry_gird_menu_color5">#8bd67f</color>
     <color name="data_inquiry_gird_menu_color6">#68d2c9</color>
+    <color name="data_inquiry_caption_textcolor">#999999</color>
+    <color name="data_inquiry_value_textcolor">#333333</color>
 </resources>

+ 0 - 0
android-pdf-viewer/build.gradle → app_third/android-pdf-viewer/build.gradle


+ 0 - 0
android-pdf-viewer/src/main/AndroidManifest.xml → app_third/android-pdf-viewer/src/main/AndroidManifest.xml


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/AnimationManager.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/AnimationManager.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/CacheManager.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/CacheManager.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/DecodingAsyncTask.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/DecodingAsyncTask.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/DragPinchManager.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/DragPinchManager.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/PDFView.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/PDFView.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/PagesLoader.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/PagesLoader.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/RenderingHandler.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/RenderingHandler.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/exception/FileNotFoundException.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/exception/FileNotFoundException.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/OnDrawListener.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/OnDrawListener.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/OnErrorListener.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/OnErrorListener.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/OnLoadCompleteListener.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/OnLoadCompleteListener.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/OnPageChangeListener.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/OnPageChangeListener.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/OnPageScrollListener.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/OnPageScrollListener.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/OnRenderListener.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/OnRenderListener.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/model/PagePart.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/model/PagePart.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/scroll/DefaultScrollHandle.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/scroll/DefaultScrollHandle.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/scroll/ScrollHandle.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/scroll/ScrollHandle.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/source/AssetSource.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/source/AssetSource.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/source/ByteArraySource.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/source/ByteArraySource.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/source/DocumentSource.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/source/DocumentSource.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/source/FileSource.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/source/FileSource.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/source/InputStreamSource.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/source/InputStreamSource.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/source/UriSource.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/source/UriSource.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/util/ArrayUtils.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/util/ArrayUtils.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/util/Constants.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/util/Constants.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/util/FileUtils.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/util/FileUtils.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/util/MathUtils.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/util/MathUtils.java


+ 0 - 0
android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/util/Util.java → app_third/android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/util/Util.java


+ 0 - 0
android-pdf-viewer/src/main/res/drawable/default_scroll_handle_bottom.xml → app_third/android-pdf-viewer/src/main/res/drawable/default_scroll_handle_bottom.xml


+ 0 - 0
android-pdf-viewer/src/main/res/drawable/default_scroll_handle_left.xml → app_third/android-pdf-viewer/src/main/res/drawable/default_scroll_handle_left.xml


+ 0 - 0
android-pdf-viewer/src/main/res/drawable/default_scroll_handle_right.xml → app_third/android-pdf-viewer/src/main/res/drawable/default_scroll_handle_right.xml


+ 0 - 0
android-pdf-viewer/src/main/res/drawable/default_scroll_handle_top.xml → app_third/android-pdf-viewer/src/main/res/drawable/default_scroll_handle_top.xml


+ 0 - 0
android-pdf-viewer/src/main/res/values/attrs.xml → app_third/android-pdf-viewer/src/main/res/values/attrs.xml


+ 3 - 1
settings.gradle

@@ -1,5 +1,5 @@
 //主工程
-include ':WeiChat', 'message', ':android-pdf-viewer'
+include ':WeiChat', 'message'
 
 //核心模块
 include ':network'
@@ -19,6 +19,7 @@ include ':library-viewpager-indicator'
 include ':materialdialogs'
 include ':MPAndroidChart'
 include ':pullToRefershLibraryMy'
+include ':android-pdf-viewer'
 
 //核心模块
 project(':network').projectDir = new File('app_core/network')
@@ -38,3 +39,4 @@ project(':materialdialogs').projectDir = new File('app_third/materialdialogs')
 project(':MPAndroidChart').projectDir = new File('app_third/MPAndroidChart')
 project(':libfloatingactionbutton').projectDir = new File('app_third/libfloatingactionbutton')
 project(':library-swipemenu_lv').projectDir = new File('app_third/library-swipemenu_lv')
+project(':android-pdf-viewer').projectDir = new File('app_third/android-pdf-viewer')