package com.jiuqi.njt.ui;
import java.util.ArrayList;
import java.util.List;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.ViewStub;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import com.jiuqi.mobile.nigo.comeclose.bean.client.CooperAndGroupBean;
import com.jiuqi.mobile.nigo.comeclose.bean.client.Single;
import com.jiuqi.njt.R;
import com.jiuqi.njt.adapter.TreeViewSingleAdapter;
import com.jiuqi.njt.model.UserTreeElement;
import com.jiuqi.njt.son.TakePosition;
import com.jiuqi.njt.util.TitleBarUtil;
import com.jiuqi.njt.util.UIUtil;
public class GjhfActivity extends AbstractNjtActivity02 implements OnClickListener {
private EditText find;
private Button sure;
private Button textDesc;
private Button findkey;
private ListView listview;
public ViewStub rlTitleBar;
private TreeViewSingleAdapter treeViewAdapter;
// /显示的数量
private ArrayList<UserTreeElement> showUserCount = new ArrayList<UserTreeElement>();
// /总的节点数
private ArrayList<UserTreeElement> allUserlist = new ArrayList<UserTreeElement>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
protected void initWidgets() {
setContentView(R.layout.expandlist);
initTitleBar();
find = (EditText) this.findViewById(R.id.find);
findkey = (Button) this.findViewById(R.id.findkey);
sure = (Button) this.findViewById(R.id.sure);
textDesc = (Button) this.findViewById(R.id.textDesc);
listview = (ListView) this.findViewById(R.id.userlist);
}
protected void initTitleBar() {
rlTitleBar = (ViewStub) findViewById(R.id.titleBarStub);
TitleBarUtil.createTitleBar(this, rlTitleBar, "轨迹回放",
new OnClickListener() {
@Override
public void onClick(View v) {
GjhfActivity.this.finish();
}
});
}
protected void initListeners() {
findkey.setOnClickListener(this);
sure.setOnClickListener(this);
textDesc.setOnClickListener(this);
}
protected void initUI() {
sure.setVisibility(Button.GONE);
textDesc.setVisibility(Button.GONE);
}
protected void doQuery(){
findKey = find.getText().toString();
getUserTask = new GetUserTask();
getUserTask.execute();
}
@Override
protected void onQueryComplete() {
initListview();
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.findkey:
if(UIUtil.isFastDoubleClick()){
return;
}
doQuery();
break;
default:
break;
}
}
private void initListview() {
initialData();
treeViewAdapter = new TreeViewSingleAdapter(this,showUserCount ,allUserlist);
listview.setAdapter(treeViewAdapter);
listview.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// ViewHolder vHollder = (ViewHolder) view.getTag();
UserTreeElement treeElements = showUserCount.get(position);
if(!treeElements.isCooper()&&!treeElements.getParent().equals("00")){
String targetName = treeElements.getOutlineTitle();
String targetSim = treeElements.getSim();
Intent intent = new Intent(GjhfActivity.this,TakePosition.class);
intent.putExtra("name", targetName);
intent.putExtra("sim", targetSim);
startActivity(intent);
}
}
});
}
private void initialData() {
if (null != parent) {
//初始化数据
showUserCount.clear();
allUserlist.clear();
List<CooperAndGroupBean> cooperAndGroups = parent.getChildren();
UserTreeElement parentElement = new UserTreeElement(parent.getParent().getGuid(), parent.getParent().getName(), false, true , "00", 0, false,"","",parent.getParent().getIsCooper()==1?true:false);
showUserCount.add(parentElement);
for (int i = 0; i < cooperAndGroups.size(); i++) {
CooperAndGroupBean bean = cooperAndGroups.get(i);
Single singleGroup = bean.getParent();
// String id, String outlineTitle,boolean mhasParent, boolean mhasChild, String parent, int level,boolean expanded
if (singleGroup.getIsCooper() == 1) {
UserTreeElement treeElements = new UserTreeElement(singleGroup.getGuid(), singleGroup.getName(), false, bean.getChildren()!=null&&bean.getChildren().size()>0, parent.getParent().getGuid(), 1, false,"","",true);
allUserlist.add(treeElements);
List<CooperAndGroupBean> s = bean.getChildren();
for (CooperAndGroupBean b : s) {
UserTreeElement userEle= new UserTreeElement(b.getParent().getGuid(),b.getParent().getName(), true, false, singleGroup.getGuid(), 2, false,b.getParent().getSim(),b.getParent().isActive()?"":"(未激活)",parent.getParent().getIsCooper()==1?true:false);
allUserlist.add(userEle);
}
}else{
UserTreeElement treeElements = new UserTreeElement(singleGroup.getGuid(), singleGroup.getName(), false, bean.getChildren()!=null&&bean.getChildren().size()>0, parent.getParent().getGuid(), 1, false,singleGroup.getSim(),singleGroup.isActive()?"":"(未激活)",false);
allUserlist.add(treeElements);
}
}
}
}
}