|
|
@@ -38,11 +38,14 @@ import com.xzjmyk.pm.activity.view.MyListView;
|
|
|
import org.json.JSONException;
|
|
|
import org.json.JSONObject;
|
|
|
|
|
|
+import java.util.Calendar;
|
|
|
import java.util.Date;
|
|
|
import java.util.HashMap;
|
|
|
+import java.util.HashSet;
|
|
|
import java.util.LinkedHashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
+import java.util.Set;
|
|
|
|
|
|
public class OAActivity extends BaseActivity implements View.OnClickListener, AdapterView.OnItemSelectedListener {
|
|
|
private static final int whatVisit = 0x10,//拜访报告接口
|
|
|
@@ -74,22 +77,19 @@ public class OAActivity extends BaseActivity implements View.OnClickListener, Ad
|
|
|
@ViewInject(R.id.date_tv)
|
|
|
private TextView date_tv; //当前月份
|
|
|
|
|
|
- private PopupMenu poAddMenu;
|
|
|
private int typeWhat = -1;
|
|
|
-
|
|
|
+ private Set<Integer> set;
|
|
|
private String date;
|
|
|
- private List<Map<String, Object>> mapList;
|
|
|
- private List<Map<String, Object>> taskList;
|
|
|
- private List<Map<String, Object>> visitList;
|
|
|
- private List<Map<String, Object>> scheduleList;
|
|
|
- private MyListViewAdapter adapter;
|
|
|
+ private List<Map<String, Object>> taskList;//任务列表
|
|
|
+ private List<Map<String, Object>> visitList;//拜访列表
|
|
|
+ private List<Map<String, Object>> scheduleList;//日程列表
|
|
|
+ private MyListViewAdapter adapter; //
|
|
|
|
|
|
private Handler handler = new Handler() {
|
|
|
@Override
|
|
|
public void handleMessage(Message msg) {
|
|
|
progressDialog.dismiss();
|
|
|
String message = (String) msg.getData().get("result");
|
|
|
- typeWhat = msg.what;
|
|
|
switch (msg.what) {
|
|
|
case whatVisit:
|
|
|
try {
|
|
|
@@ -98,7 +98,8 @@ public class OAActivity extends BaseActivity implements View.OnClickListener, Ad
|
|
|
ToastUtil.showToast(ct, "数据返回错误");
|
|
|
return;
|
|
|
}
|
|
|
- mapList = JsonUtils.parseListKeyMaps("visitplan", message);
|
|
|
+ visitList = JsonUtils.parseListKeyMaps("visitplan", message);
|
|
|
+ addTaskDate("vp_status", visitList);
|
|
|
updateUI();
|
|
|
} catch (JSONException e) {
|
|
|
e.printStackTrace();
|
|
|
@@ -111,7 +112,8 @@ public class OAActivity extends BaseActivity implements View.OnClickListener, Ad
|
|
|
ToastUtil.showToast(ct, "数据返回错误");
|
|
|
return;
|
|
|
}
|
|
|
- mapList = JsonUtils.parseListKeyMaps("taskMsg", message);
|
|
|
+ taskList = JsonUtils.parseListKeyMaps("taskMsg", message);
|
|
|
+ addTaskDate("status", taskList);
|
|
|
updateUI();
|
|
|
} catch (JSONException e) {
|
|
|
e.printStackTrace();
|
|
|
@@ -125,7 +127,8 @@ public class OAActivity extends BaseActivity implements View.OnClickListener, Ad
|
|
|
ToastUtil.showToast(ct, "数据返回错误");
|
|
|
return;
|
|
|
}
|
|
|
- mapList = JsonUtils.parseListKeyMaps("scheduleMsg", message);
|
|
|
+ scheduleList = JsonUtils.parseListKeyMaps("scheduleMsg", message);
|
|
|
+ addTaskDate("status", scheduleList);
|
|
|
updateUI();
|
|
|
} catch (JSONException e) {
|
|
|
e.printStackTrace();
|
|
|
@@ -146,12 +149,30 @@ public class OAActivity extends BaseActivity implements View.OnClickListener, Ad
|
|
|
} catch (JSONException e) {
|
|
|
e.printStackTrace();
|
|
|
}
|
|
|
-
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
|
|
|
+ private void addTaskDate(String status, List<Map<String, Object>> list) {
|
|
|
+ if (set == null)
|
|
|
+ set = new HashSet();
|
|
|
+ for (Map<String, Object> en : list) {
|
|
|
+ if (en.get(status) == null || "null".equals(en.get(status) + "") || "FINISHED".equals(en.get(status).toString().trim())) {
|
|
|
+ if (en.get("enddate") != null && !"null".equals(en.get("enddate"))) {
|
|
|
+ String timeStr = (String) en.get("enddate");
|
|
|
+ long time = TimeUtils.f_str_2_long(timeStr);
|
|
|
+ Calendar c = Calendar.getInstance();
|
|
|
+ c.setTimeInMillis(time);
|
|
|
+ set.add(c.get(Calendar.DAY_OF_MONTH));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (set != null && set.size() > 0) {
|
|
|
+ picker.setTaskDay(set);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
protected void onCreate(Bundle savedInstanceState) {
|
|
|
super.onCreate(savedInstanceState);
|
|
|
@@ -159,6 +180,7 @@ public class OAActivity extends BaseActivity implements View.OnClickListener, Ad
|
|
|
ViewUtils.inject(this);
|
|
|
initView();
|
|
|
}
|
|
|
+
|
|
|
private void initView() {
|
|
|
baseUrl = CommonUtil.getSharedPreferences(this, "erp_baseurl");
|
|
|
rootScrollView.requestDisallowInterceptTouchEvent(false);
|
|
|
@@ -174,7 +196,10 @@ public class OAActivity extends BaseActivity implements View.OnClickListener, Ad
|
|
|
}
|
|
|
|
|
|
private void initData() {
|
|
|
-// loadNetData()
|
|
|
+ //先下拉三个列表数据
|
|
|
+ loadNetData(whatTask);
|
|
|
+ loadNetData(whatVisit);
|
|
|
+ loadNetData(whatSchedule);
|
|
|
}
|
|
|
|
|
|
//获取网络数据
|
|
|
@@ -183,7 +208,6 @@ public class OAActivity extends BaseActivity implements View.OnClickListener, Ad
|
|
|
//获取网络数据
|
|
|
String url = baseUrl + "mobile/crm/getVisitPlan.action";
|
|
|
String date = TimeUtils.long2str(System.currentTimeMillis(), "yyyyMM");
|
|
|
- Log.i("gongpengming", date);
|
|
|
switch (what) {
|
|
|
case whatVisit:
|
|
|
url = baseUrl + "mobile/crm/getVisitPlan.action";
|
|
|
@@ -208,6 +232,8 @@ public class OAActivity extends BaseActivity implements View.OnClickListener, Ad
|
|
|
final Map<String, Object> param = new HashMap<>();
|
|
|
param.put("emcode", CommonUtil.getSharedPreferences(this, "erp_username"));
|
|
|
param.put("date", date);
|
|
|
+ if (what == whatTask)
|
|
|
+ param.put("status", 1);
|
|
|
param.put("page", pager);
|
|
|
param.put("pageSize", 10);
|
|
|
param.put("sessionId", CommonUtil.getSharedPreferences(this, "sessionId"));
|
|
|
@@ -219,7 +245,23 @@ public class OAActivity extends BaseActivity implements View.OnClickListener, Ad
|
|
|
private void updateUI() {
|
|
|
if (adapter == null)
|
|
|
adapter = new MyListViewAdapter();
|
|
|
- adapter.setData(mapList);
|
|
|
+ List<Map<String, Object>> mapList = null;
|
|
|
+ switch (typeWhat) {
|
|
|
+ case whatSchedule:
|
|
|
+ if (scheduleList != null)
|
|
|
+ mapList = scheduleList;
|
|
|
+ break;
|
|
|
+ case whatTask:
|
|
|
+ if (taskList != null)
|
|
|
+ mapList = taskList;
|
|
|
+ break;
|
|
|
+ case whatVisit:
|
|
|
+ if (visitList != null)
|
|
|
+ mapList = visitList;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ if (mapList != null)
|
|
|
+ adapter.setData(mapList);
|
|
|
}
|
|
|
|
|
|
private void updateUI(int i, int completenum, int complrate, int notcomplnum) {
|
|
|
@@ -275,22 +317,25 @@ public class OAActivity extends BaseActivity implements View.OnClickListener, Ad
|
|
|
case 0:
|
|
|
break;
|
|
|
case 1:
|
|
|
- if (mapList != null)
|
|
|
- mapList.clear();
|
|
|
+ typeWhat = whatTask;
|
|
|
+ if (taskList == null) {//如果前一次请求失败
|
|
|
+ loadNetData(whatTask);
|
|
|
+ }
|
|
|
updateUI();
|
|
|
- loadNetData(whatTask);
|
|
|
break;
|
|
|
case 2:
|
|
|
- if (mapList != null)
|
|
|
- mapList.clear();
|
|
|
+ typeWhat = whatSchedule;
|
|
|
+ if (scheduleList == null) {
|
|
|
+ loadNetData(whatSchedule);
|
|
|
+ }
|
|
|
updateUI();
|
|
|
- loadNetData(whatSchedule);
|
|
|
break;
|
|
|
case 3:
|
|
|
- if (mapList != null)
|
|
|
- mapList.clear();
|
|
|
+ typeWhat = whatVisit;
|
|
|
+ if (visitList == null) {
|
|
|
+ loadNetData(whatVisit);
|
|
|
+ }
|
|
|
updateUI();
|
|
|
- loadNetData(whatVisit);
|
|
|
break;
|
|
|
}
|
|
|
break;
|
|
|
@@ -347,6 +392,8 @@ public class OAActivity extends BaseActivity implements View.OnClickListener, Ad
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private PopupMenu poAddMenu;
|
|
|
+
|
|
|
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
|
|
|
private void popAdd(View view) {
|
|
|
//点击添加按钮
|
|
|
@@ -456,7 +503,6 @@ public class OAActivity extends BaseActivity implements View.OnClickListener, Ad
|
|
|
name = (String) mapList.get(postin).get("taskname");
|
|
|
addr = "结束时间:" + mapList.get(postin).get("enddate");
|
|
|
object = (String) mapList.get(postin).get("handler");
|
|
|
- Log.i("gongpengming", mapList.get(postin).get("status") + "");
|
|
|
if (mapList.get(postin).get("status") == null || "null".equals(mapList.get(postin).get("status") + ""))
|
|
|
status = "未完成";
|
|
|
else
|
|
|
@@ -486,7 +532,4 @@ public class OAActivity extends BaseActivity implements View.OnClickListener, Ad
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- enum Mode{
|
|
|
-
|
|
|
- }
|
|
|
}
|