public class DetailsActivity extends AppCompatActivity implements ShowView {
private XBanner xbanner;
private TextView details_name;
private TextView details_price;
private String picture;
private DetailsBean.ResultBean xresult;
private ArrayList<SyncBean> list;
private ShowPresenter showPresenter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_details);
showPresenter = new ShowPresenter();
showPresenter.attachView(this);
//初始化控件
xbanner = findViewById(R.id.xbanner);
details_name = findViewById(R.id.details_name);
ImageView goods = findViewById(R.id.goods);
details_price = findViewById(R.id.details_price);
Intent intent = getIntent();
int id = intent.getExtras().getInt("id");
showPresenter.getData(Apis.DetailsUrl+id);
goods.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showPresenter.getDat(Apis.SelectShopCarUrl);
}
});
}
@Override
public void getData(String data) {
Gson gson = new Gson();
DetailsBean detailsBean = gson.fromJson(data, DetailsBean.class);
xresult = detailsBean.getResult();
details_name.setText(xresult.getCommodityName());
details_price.setText(xresult.getPrice()+"");
picture = xresult.getPicture();
String[] split = picture.split(",");
ArrayList<String> list = new ArrayList<>();
for (int i=0;i<split.length;i++){
list.add(split[i]);
}
xbanner.loadImage(new XBanner.XBannerAdapter() {
@Override
public void loadBanner(XBanner banner, Object model, View view, int position) {
Glide.with(DetailsActivity.this).load(model).into((ImageView) view);
}
});
xbanner.setData(list,null);
xbanner.setPageTransformer(Transformer.Accordion);
xbanner.setPageChangeDuration(2000);
}
@Override
public void getDat(String data) {
Gson gson = new Gson();
SelectShopBean selectShopBean = gson.fromJson(data, SelectShopBean.class);
List<SelectShopBean.ResultBean> result = selectShopBean.getResult();
list = new ArrayList<>();
for (int i = 0; i <result.size();i++) {
list.add(new SyncBean(result.get(i).getCommodityId(),1));
}
list.add(new SyncBean(xresult.getCommodityId(),1));
String s = gson.toJson(list);
showPresenter.getSyncData(Apis.SyncShopCar,s);
}
@Override
public void getSyncData(String data) {
try {
JSONObject jsonObject = new JSONObject(data);
String status = jsonObject.getString("status");
if(status.equals("0000")){
Toast.makeText(DetailsActivity.this,"同步成功",Toast.LENGTH_LONG).show();
}else {
Toast.makeText(DetailsActivity.this,"同步失败",Toast.LENGTH_LONG).show();
}
} catch (JSONException e) {
e.printStackTrace();
}
}
}