package com.jiuqi.njt.register;
import java.util.ArrayList;
import java.util.List;
import com.amap.api.search.core.LatLonPoint;
import com.jiuqi.mobile.nigo.comeclose.bean.app.file.CollectionBean;
import com.jiuqi.mobile.nigo.comeclose.bean.app.gps.UserPositionBean;
import com.jiuqi.mobile.nigo.comeclose.bean.app.news.TaskNews;
import com.jiuqi.mobile.nigo.comeclose.bean.master.OrganizationBean;
import com.jiuqi.mobile.nigo.comeclose.manager.master.IOrganizationManager;
import com.jiuqi.njt.R;
import com.jiuqi.njt.data.MyApp;
import com.jiuqi.njt.data.OptsharepreInterface;
import com.jiuqi.njt.management.FregmentFileRepair;
import com.jiuqi.njt.model.ModuleType;
import com.jiuqi.njt.model.TableRawItem;
import com.jiuqi.njt.ui.NjtMainActivity;
import com.jiuqi.njt.util.TableRawUtils;
import com.jiuqi.njt.util.TitleBarUtil;
import com.jiuqi.njt.util.UIUtil;
import android.annotation.TargetApi;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.ViewStub;
import android.view.View.OnClickListener;
import android.widget.LinearLayout;
/**
* 收藏详情页面
* @author joe
*
*/
@TargetApi(Build.VERSION_CODES.FROYO)
public class ShowDetail extends Activity {
private MyApp application;
/**
* 报修按钮
*/
private View btnSubmit;
private LinearLayout tbLayoutNew;
/**
* 报修对象实体
*/
private UserPositionBean userPositionBean;
/**
* 收藏对象实体
*/
private CollectionBean collectionBean;
/**
* 农机局实体类
*/
private OrganizationBean organizationBean;
/**
* 所有的行数据
*/
private List<TableRawItem> rlistWithDraw = new ArrayList<TableRawItem>();
private Context context = this;
private OptsharepreInterface sharePre;
private LatLonPoint startPoint, endPoint;
private double mylat;
private double mylon;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
doinit();
}
private void doinit() {
initParam();
initWidgets();
initListeners();
initUI();
}
private void initParam() {
application = (MyApp) getApplication();
sharePre = new OptsharepreInterface(ShowDetail.this);
collectionBean = (CollectionBean) getIntent().getSerializableExtra("CollectionBean");
mylat = UIUtil.tryToDouble(sharePre.getPres("lat"));
mylon = UIUtil.tryToDouble(sharePre.getPres("lon"));
if (null != getIntent().getStringExtra("guid")&& !getIntent().getStringExtra("guid").equals("") ) {
//请求服务器
toQuery();
}
}
private void initWidgets() {
setContentView(R.layout.poi_detail);
View rlTitleBar = findViewById(R.id.titleBarStub);
TitleBarUtil.createTitleBar(this, rlTitleBar, "详细信息",
new OnClickListener() {
@Override
public void onClick(View v) {
ShowDetail.this.finish();
}
},
"首页",new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.setClass(ShowDetail.this, NjtMainActivity.class);
startActivity(intent);
ShowDetail.this.finish();
}
});
btnSubmit = findViewById(R.id.btnSubmit);
tbLayoutNew = (LinearLayout) findViewById(R.id.tbLayoutNew);
}
private void toQuery() {
Class[] parameterTypes = {String.class};
Object[] args={getIntent().getStringExtra("guid")};
RegisterUtils.executeTask(context, IOrganizationManager.class, "find", parameterTypes, args, true, new AllTaskInterface() {
@Override
public <T> void taskFinishReturn(T... result) {
if(null!=result){
organizationBean = new OrganizationBean();
organizationBean = (OrganizationBean)result[0];
startPoint = new LatLonPoint(mylat, mylon);
endPoint = new LatLonPoint(organizationBean.getOrganize().getLatitude(),
organizationBean.getOrganize().getLongitude());
rlistWithDraw.add(TableRawUtils.newTableRawItemWithOutDraw("信息类别:",organizationBean.getName()));
rlistWithDraw.add(TableRawUtils.newTableRawItemWithOutDraw("联系人:",organizationBean.getOrganize().getContactPersonal()));
rlistWithDraw.add(TableRawUtils.newTableRawItemWithPhoneDraw(ShowDetail.this, "联系电话:",organizationBean.getOrganize().getContactNumber()));
rlistWithDraw.add(TableRawUtils.newTableRawItemWithMapDraw(ShowDetail.this,"联系地址:",organizationBean.getArea().getFullName(),startPoint,endPoint));
UIUtil.ctreatTableRowsWithDraw(ShowDetail.this, tbLayoutNew, rlistWithDraw);
}
}
});
}
private void initListeners() {
btnSubmit.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.setClass(ShowDetail.this, FregmentFileRepair.class);
intent.putExtra("moduleType", ModuleType.wxgl);
intent.putExtra("UserPositionBean", userPositionBean);
startActivity(intent);
}
});
}
private void initUI() {
if (null != collectionBean) {
userPositionBean = new UserPositionBean();
userPositionBean.setUserName(collectionBean.getName());
userPositionBean.setGuid(collectionBean.getGuid());
/**
* 收藏种类:1.维修点 2.机手 3.合作社 4.加油站 5.经销商 6.服务机构
*/
String collectionType = "";
switch (collectionBean.getTypeOfCollection()) {
case 1:
collectionType = "维修点";
if (application.getIsLogin()) { // 如果登陆显示报修按钮
UIUtil.showView(btnSubmit);
}
break;
case 2:
collectionType = "机手";
break;
case 3:
collectionType = "合作社";
break;
case 4:
collectionType = "加油站";
break;
case 5:
collectionType = "经销商";
break;
case 6:
collectionType = "服务机构";
break;
default:
collectionType = "其他类别";
break;
}
rlistWithDraw.add(TableRawUtils.newTableRawItemWithOutDraw("信息类别:",collectionType));
rlistWithDraw.add(TableRawUtils.newTableRawItemWithAddFavorDraw(ShowDetail.this, "姓名:", collectionBean.getName(),true,collectionBean));
rlistWithDraw.add(TableRawUtils.newTableRawItemWithPhoneDraw(ShowDetail.this, "联系电话:", collectionBean.getPhone()));
} else {
if (null != getIntent().getStringExtra("flag")) {
//调接口返回的值
// rlistWithDraw.add(TableRawUtils.newTableRawItemWithOutDraw("信息类别:",organizationBean.getName()));
// rlistWithDraw.add(TableRawUtils.newTableRawItemWithAddFavorDraw(ShowDetail.this, "姓名:",organizationBean.getUserName(),OrganizationBean));
// rlistWithDraw.add(TableRawUtils.newTableRawItemWithPhoneDraw(ShowDetail.this, "联系电话:",organizationBean.getName()));
}else {
rlistWithDraw.add(TableRawUtils.newTableRawItemWithOutDraw("数据异常:","没有数据信息"));
}
}
UIUtil.ctreatTableRowsWithDraw(ShowDetail.this, tbLayoutNew, rlistWithDraw);
}
}