Browse Source

最近查询业务bug修复

raomeng 8 years ago
parent
commit
4610ce4708

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

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          package="com.xzjmyk.pm.activity">
+<manifest package="com.xzjmyk.pm.activity"
+          xmlns:android="http://schemas.android.com/apk/res/android">
 
     <uses-sdk
         android:minSdkVersion="11"
@@ -595,10 +595,10 @@
         <activity
             android:name=".ui.erp.activity.crm.TaskAddActivity"
             android:configChanges="orientation|keyboardHidden"
-            android:windowSoftInputMode="adjustUnspecified|stateHidden" >
+            android:windowSoftInputMode="adjustUnspecified|stateHidden">
             <intent-filter>
-                <action android:name="com.modular.appworks.TaskAddActivity"/>
-                <category android:name="android.intent.category.DEFAULT"/>
+                <action android:name="com.modular.appworks.TaskAddActivity" />
+                <category android:name="android.intent.category.DEFAULT" />
             </intent-filter>
         </activity>
         <activity
@@ -817,14 +817,12 @@
         <!-- 百度推送相关结束 -->
 
 
-
         <activity
             android:name=".ui.erp.activity.oa.DestinationActivity"
             android:label="@string/activity_select_aims" />
         <!-- 动态表单 -->
 
 
-
         <service
             android:name=".util.oa.AutoErpService"
             android:enabled="true"
@@ -843,7 +841,7 @@
         <activity
             android:name=".ui.erp.activity.oa.SelectRemarkActivity"
             android:label="@string/activity_visit_aims"
-            android:windowSoftInputMode="stateUnspecified|adjustNothing" >
+            android:windowSoftInputMode="stateUnspecified|adjustNothing">
             <intent-filter>
                 <action android:name="com.modular.appworks.SelectRemarkActivity" />
                 <category android:name="android.intent.category.DEFAULT" />
@@ -854,16 +852,16 @@
             android:name=".ui.erp.activity.oa.FlihtsTimeActivity"
             android:label="@string/work_time_setting">
             <intent-filter>
-                <action android:name="com.modular.appworks.FlihtsTimeActivity"/>
-                <category android:name="android.intent.category.DEFAULT"/>
+                <action android:name="com.modular.appworks.FlihtsTimeActivity" />
+                <category android:name="android.intent.category.DEFAULT" />
             </intent-filter>
         </activity>
         <activity
             android:name=".ui.erp.activity.oa.FlightsDateActivity"
-            android:label="@string/work_day_setting" >
+            android:label="@string/work_day_setting">
             <intent-filter>
-                <action android:name="com.modular.appworks.FlightsDateActivity"/>
-                <category android:name="android.intent.category.DEFAULT"/>
+                <action android:name="com.modular.appworks.FlightsDateActivity" />
+                <category android:name="android.intent.category.DEFAULT" />
             </intent-filter>
         </activity>
 
@@ -884,7 +882,7 @@
             android:name=".ui.erp.activity.oa.SelectCollisionActivity"
             android:configChanges="keyboardHidden|orientation"
             android:label="@string/select_join_number"
-            android:windowSoftInputMode="stateUnspecified|adjustNothing" >
+            android:windowSoftInputMode="stateUnspecified|adjustNothing">
             <intent-filter>
                 <action android:name="com.modular.main.SelectCollisionActivity" />
                 <category android:name="android.intent.category.DEFAULT" />
@@ -960,10 +958,10 @@
 
         <activity
             android:name=".ui.erp.activity.oa.FlihtsDateSelectActivity"
-            android:label="@string/work_day" >
+            android:label="@string/work_day">
             <intent-filter>
-                <action android:name="com.modular.appworks.FlihtsDateSelectActivity"/>
-                <category android:name="android.intent.category.DEFAULT"/>
+                <action android:name="com.modular.appworks.FlihtsDateSelectActivity" />
+                <category android:name="android.intent.category.DEFAULT" />
             </intent-filter>
         </activity>
         <activity android:name=".ui.erp.activity.ADActivity" />
@@ -1028,12 +1026,14 @@
             android:windowSoftInputMode="adjustPan" />
         <activity android:name=".ui.erp.activity.datainquiry.activity.ReportStatisticsMoreMenuActivity" />
         <activity android:name=".ui.erp.activity.datainquiry.activity.PDFDownloadActivity" />
+        <activity android:name=".ui.erp.activity.datainquiry.activity.DataInquirySearchActivity" />
+        <activity android:name=".ui.erp.activity.datainquiry.activity.ReportQuerySearchActivity" />
 
         <activity android:name="com.core.widget.view.selectcalendar.SelectCalendarActivity" />
         <activity android:name=".ui.erp.activity.oa.NavigationActivity">
             <intent-filter>
-                <action android:name="com.modular.appworks.NavigationActivity"/>
-                <category android:name="android.intent.category.DEFAULT"/>
+                <action android:name="com.modular.appworks.NavigationActivity" />
+                <category android:name="android.intent.category.DEFAULT" />
             </intent-filter>
         </activity>
     </application>

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

@@ -57,6 +57,7 @@ public class DataInquiryActivity extends BaseActivity {
     private DrawableCenterTextView mSearchTextView;
     private String mCurrentMaster;
     private String mCurrentUser;
+    boolean flag = false;
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
@@ -107,6 +108,7 @@ public class DataInquiryActivity extends BaseActivity {
                             }
                         }, 500);
                 } else {
+                    flag = true;
                     getMenuData();
                 }
             }
@@ -202,7 +204,7 @@ public class DataInquiryActivity extends BaseActivity {
         mCurrentUser = com.xzjmyk.pm.activity.util.oa.CommonUtil.getSharedPreferences(this, "erp_username");
     }
 
-    private void getRecentBrowse() {
+    private synchronized void getRecentBrowse() {
         try {
             String dataInquiryMenuRecentCache = CommonUtil.getSharedPreferences(this,
                     mCurrentUser + mCurrentMaster + com.xzjmyk.pm.activity.ui.erp.activity.datainquiry.Constants.CONSTANT.DATA_INQUIRY_MENU_RECENT_CACHE);
@@ -211,26 +213,36 @@ public class DataInquiryActivity extends BaseActivity {
                 mDataInquiryGirdItemBeans.clear();
 
                 List<DataInquiryGirdItemBean> recentBrowse = JSON.parseArray(dataInquiryMenuRecentCache, DataInquiryGirdItemBean.class);
+                List<DataInquiryGirdItemBean> resultBrowse = new ArrayList<>();
                 for (int i = 0; i < recentBrowse.size(); i++) {
                     DataInquiryGirdItemBean inquiryGirdItemBean = recentBrowse.get(i);
                     boolean isExist = false;
-                    if (dataInquiryBeans != null)
+                    if (dataInquiryBeans != null) {
+                        loop:
                         for (int j = 0; j < dataInquiryBeans.size(); j++) {
                             List<GridMenuDataInquiryBean.QueryScheme> querySchemes = dataInquiryBeans.get(j).getQuerySchemes();
                             if (querySchemes != null)
                                 for (int k = 0; k < querySchemes.size(); k++) {
                                     if (inquiryGirdItemBean.getIconText().equals(querySchemes.get(k).getScheme())) {
                                         isExist = true;
-                                        break;
+                                        break loop;
                                     }
                                 }
                         }
 
-                    if (i < 9 && isExist) {
-                        mDataInquiryGirdItemBeans.add(inquiryGirdItemBean);
+                        if (i < 9 && isExist) {
+                            mDataInquiryGirdItemBeans.add(inquiryGirdItemBean);
+                            resultBrowse.add(recentBrowse.get(i));
+                        }
                     }
+
                 }
 
+                String recentJson = JSON.toJSON(resultBrowse).toString();
+                CommonUtil.setSharedPreferences(DataInquiryActivity.this
+                        , mCurrentUser + mCurrentMaster + com.xzjmyk.pm.activity.ui.erp.activity.datainquiry.Constants.CONSTANT.DATA_INQUIRY_MENU_RECENT_CACHE
+                        , recentJson);
+
                 mDataInquiryMenuGridAdapter.notifyDataSetChanged();
             }
 
@@ -323,7 +335,8 @@ public class DataInquiryActivity extends BaseActivity {
                     }
                     mDataInquiryMenuListAdapter.notifyDataSetChanged();
 
-                    refreshRecentHeader();
+                    if (flag)
+                        refreshRecentHeader();
                 }
             } catch (JSONException e) {
                 e.printStackTrace();
@@ -343,6 +356,7 @@ public class DataInquiryActivity extends BaseActivity {
             if (headerViewsCount == 1)
                 refreshableView.addHeaderView(mRecentBrowseLl);
         }
+        flag = false;
     }
 
 

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

@@ -101,8 +101,8 @@ public class DataInquirySearchActivity extends BaseActivity {
             @Override
             public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                 DataInquiryGirdItemBean dataInquiryGirdItemBean = new DataInquiryGirdItemBean();
-                dataInquiryGirdItemBean.setColor(mDataInquirySearchBeanList.get(position).getColor());
-                dataInquiryGirdItemBean.setIconText(mDataInquirySearchBeanList.get(position).getQueryScheme().getScheme());
+                dataInquiryGirdItemBean.setColor(mDataInquirySearchAdapter.getObjects().get(position).getColor());
+                dataInquiryGirdItemBean.setIconText(mDataInquirySearchAdapter.getObjects().get(position).getQueryScheme().getScheme());
 
                 String dataInquiryMenuRecentCache = CommonUtil.getSharedPreferences(DataInquirySearchActivity.this,
                         mCurrentUser + mCurrentMaster + com.xzjmyk.pm.activity.ui.erp.activity.datainquiry.Constants.CONSTANT.DATA_INQUIRY_MENU_RECENT_CACHE);
@@ -112,7 +112,8 @@ public class DataInquirySearchActivity extends BaseActivity {
                         recentBrowse = JSON.parseArray(dataInquiryMenuRecentCache, DataInquiryGirdItemBean.class);
 
                         for (int i = 0; i < recentBrowse.size(); i++) {
-                            if (mDataInquirySearchBeanList.get(position).getQueryScheme().getScheme() != null && mDataInquirySearchBeanList.get(position).getQueryScheme().getScheme().equals(recentBrowse.get(i).getIconText())) {
+                            if (mDataInquirySearchAdapter.getObjects().get(position).getQueryScheme().getScheme() != null
+                                    && mDataInquirySearchAdapter.getObjects().get(position).getQueryScheme().getScheme().equals(recentBrowse.get(i).getIconText())) {
                                 recentBrowse.remove(i);
                             }
                         }

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

@@ -122,8 +122,8 @@ public class ReportQuerySearchActivity extends BaseActivity {
             @Override
             public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                 DataInquiryGirdItemBean dataInquiryGirdItemBean = new DataInquiryGirdItemBean();
-                dataInquiryGirdItemBean.setColor(mQuerySearchBeanList.get(position).getColor());
-                dataInquiryGirdItemBean.setIconText(mQuerySearchBeanList.get(position).getListBean().getTitle());
+                dataInquiryGirdItemBean.setColor(mReportQuerySearchAdapter.getObjects().get(position).getColor());
+                dataInquiryGirdItemBean.setIconText(mReportQuerySearchAdapter.getObjects().get(position).getListBean().getTitle());
 
                 String dataInquiryMenuRecentCache = CommonUtil.getSharedPreferences(ReportQuerySearchActivity.this,
                         mCurrentUser + mCurrentMaster + Constants.CONSTANT.REPORT_QUERY_MENU_RECENT_CACHE);
@@ -133,7 +133,7 @@ public class ReportQuerySearchActivity extends BaseActivity {
                         recentBrowse = JSON.parseArray(dataInquiryMenuRecentCache, DataInquiryGirdItemBean.class);
 
                         for (int i = 0; i < recentBrowse.size(); i++) {
-                            if (mQuerySearchBeanList.get(position).getListBean().getTitle() != null && mQuerySearchBeanList.get(position).getListBean().getTitle().equals(recentBrowse.get(i).getIconText())) {
+                            if (mReportQuerySearchAdapter.getObjects().get(position).getListBean().getTitle() != null && mQuerySearchBeanList.get(position).getListBean().getTitle().equals(recentBrowse.get(i).getIconText())) {
                                 recentBrowse.remove(i);
                             }
                         }

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

@@ -59,6 +59,7 @@ public class ReportStatisticsActivity extends BaseActivity {
     private DrawableCenterTextView mSearchTextView;
     private String mCurrentMaster;
     private String mCurrentUser;
+    boolean flag = false;
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
@@ -106,6 +107,7 @@ public class ReportStatisticsActivity extends BaseActivity {
                             }
                         }, 500);
                 } else {
+                    flag = true;
                     getMenuData();
                 }
             }
@@ -213,9 +215,10 @@ public class ReportStatisticsActivity extends BaseActivity {
             if (headerViewsCount == 1)
                 refreshableView.addHeaderView(mRecentBrowseLl);
         }
+        flag = false;
     }
 
-    private void getRecentBrowse() {
+    private synchronized void getRecentBrowse() {
         try {
             String reportRecentMenuRecentCache = CommonUtil.getSharedPreferences(this,
                     mCurrentUser + mCurrentMaster + com.xzjmyk.pm.activity.ui.erp.activity.datainquiry.Constants.CONSTANT.REPORT_QUERY_MENU_RECENT_CACHE);
@@ -224,26 +227,36 @@ public class ReportStatisticsActivity extends BaseActivity {
                 mDataInquiryGirdItemBeans.clear();
 
                 List<DataInquiryGirdItemBean> recentBrowse = JSON.parseArray(reportRecentMenuRecentCache, DataInquiryGirdItemBean.class);
+                List<DataInquiryGirdItemBean> resultBrowse = new ArrayList<>();
                 for (int i = 0; i < recentBrowse.size(); i++) {
                     DataInquiryGirdItemBean inquiryGirdItemBean = recentBrowse.get(i);
                     boolean isExist = false;
-                    if (reportStatisticsBeans != null)
+                    if (reportStatisticsBeans != null) {
+                        loop:
                         for (int j = 0; j < reportStatisticsBeans.size(); j++) {
                             List<GridMenuReportStatisticsBean.ListBean> reportList = reportStatisticsBeans.get(j).getList();
                             if (reportList != null)
                                 for (int k = 0; k < reportList.size(); k++) {
                                     if (inquiryGirdItemBean.getIconText().equals(reportList.get(k).getTitle())) {
                                         isExist = true;
-                                        break;
+                                        break loop;
                                     }
                                 }
                         }
 
-                    if (i < 9 && isExist) {
-                        mDataInquiryGirdItemBeans.add(inquiryGirdItemBean);
+                        if (i < 9 && isExist) {
+                            mDataInquiryGirdItemBeans.add(inquiryGirdItemBean);
+                            resultBrowse.add(recentBrowse.get(i));
+                        }
                     }
+
                 }
 
+                String recentJson = JSON.toJSON(recentBrowse).toString();
+                CommonUtil.setSharedPreferences(ReportStatisticsActivity.this
+                        , mCurrentUser + mCurrentMaster + com.xzjmyk.pm.activity.ui.erp.activity.datainquiry.Constants.CONSTANT.REPORT_QUERY_MENU_RECENT_CACHE
+                        , recentJson);
+
                 mDataInquiryMenuGridAdapter.notifyDataSetChanged();
             }
 
@@ -327,6 +340,8 @@ public class ReportStatisticsActivity extends BaseActivity {
                     }
                     mReportStatisticsMenuListAdapter.notifyDataSetChanged();
                     //setListViewHeightBasedOnChildren(mMenuListView);
+                    if (flag)
+                        refreshRecentHeader();
                 }
             } catch (JSONException e) {
                 e.printStackTrace();