public class MainActivity extends AppCompatActivity implements MainView {
String url="http://172.17.8.100/ks/product/getCarts?uid=51";
private MainPresenter mainPresenter;
private List<Bean> data1;
private RecyclerView recyclerView;
private ShopCarAdapter adapter;
private CheckBox checkbox_all;
private TextView text_jq;
private TextView jiesuan;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mainPresenter = new MainPresenterIml(new MainModelIml(),this);
text_jq = findViewById(R.id.text_jq);
jiesuan = findViewById(R.id.jiesuan);
recyclerView = findViewById(R.id.recycler);
checkbox_all = findViewById(R.id.checkbox_all);
//创建适配器
adapter = new ShopCarAdapter(this);
//设置布局管理器
LinearLayoutManager manager=new LinearLayoutManager(this);
manager.setOrientation(LinearLayoutManager.VERTICAL);
//设置布局管理器
recyclerView.setLayoutManager(manager);
recyclerView.setAdapter(adapter);
//全选反选
checkbox_all.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//定义选中
boolean checked = checkbox_all.isChecked();
//定义总价格
float priceall=0;
//定义总数量
int numall=0;
for (int i = 0; i <data1.size() ; i++) {
data1.get(i).setCheck(checked);
List<Listss> list = data1.get(i).getList();
for (int j=0;j<list.size();j++){
list.get(j).setCheck(checked);
if (checked){
String price = list.get(j).getPrice();
String num = list.get(j).getNum();
float price1 = Float.parseFloat(price);
int num1 = Integer.parseInt(num);
priceall=priceall+price1*num1;
numall=numall+num1;
}else{
priceall=0;
numall=0;
}
}
}
text_jq.setText(priceall+"");
jiesuan.setText("去结算("+numall+")");
adapter.setlist(data1);
}
});
//商家选中计算价钱
adapter.setOnCallBackListener(new ShopCarAdapter.OnCallBackListener() {
@Override
public void chang(List<Bean> data1) {
float allprice=0;
int allnum=0;
for (int i = 0; i <data1.size() ; i++) {
boolean check = data1.get(i).isCheck();
if (check){//商家选中
List<Listss> list = data1.get(i).getList();
for (int j=0;j<list.size();j++){
String price1 = list.get(j).getPrice();
String num1= list.get(j).getNum();
int num2 = Integer.parseInt(num1);
float price2 = Float.parseFloat(price1);
allprice=allprice+price2*num2;
allnum=allnum+num2;
}
}else{//商家未选中商品选中
List<Listss> list = data1.get(i).getList();
for (int j=0;j<list.size();j++){
if (list.get(j).isCheck()){
String price1 = list.get(j).getPrice();
String num1= list.get(j).getNum();
int num2 = Integer.parseInt(num1);
float price2 = Float.parseFloat(price1);
allprice=allprice+price2*num2;
allnum=allnum+num2;
}
}
}
}
text_jq.setText(allprice+"");
jiesuan.setText("去结算("+allnum+")");
}
});
mainPresenter.shopcar(0,url);
}
@Override
protected void onDestroy() {
super.onDestroy();
}
@Override
public void success(int type, String data) {
if (type==0){
Gson gson=new Gson();
Json json = gson.fromJson(data, Json.class);
data1 = json.getData();
data1.remove(0);
adapter.setlist(data1);
}
}
@Override
public void fail(String error) {
}
}