package com.example.shop.fragment;
import android.content.DialogInterface;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v7.app.AlertDialog;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.TextView;
import com.example.shop.OKhttpUtils;
import com.example.shop.R;
import com.example.shop.adapter.GwcAdapter;
import com.example.shop.bean.GWCbean;
import com.google.gson.Gson;
import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.Response;
/**
* 作用:
* 作者:李倩 on 2017/10/12 08:29
*/
public class ShoppingCartFour extends Fragment {
View view;
RecyclerView rec;
GwcAdapter adapter;
private boolean editorStatus = false;
private boolean isSelectAll = false;
Button btn_delete;
CheckBox select_all;
TextView four_price;
float price;
int sum;
List<GWCbean.DatasBean.CartListBean.GoodsBean> cart_list;
Handler handler=new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
adapter=new GwcAdapter(cart_list,getActivity(),select_all);
rec.setAdapter(adapter);
adapter.notifyDataSetChanged();
//给控件设置初始值
for(int j = 0; j <cart_list.size();j++){
price+=Float.parseFloat(cart_list.get(j).getGoods_price());
}
sum = cart_list.size();
four_price.setText("共计"+sum+"件商品,共计"+price+"元");
}
};
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
view=View.inflate(getActivity(), R.layout.shoppingcartfour,null);
initview();
initdata();
return view;
}
private void initview() {
rec=view.findViewById(R.id.recyclerview);
LinearLayoutManager mar=new LinearLayoutManager(getActivity());
rec.setLayoutManager(mar);
four_price= view.findViewById(R.id.four_price);
select_all= view.findViewById(R.id.select_all);
btn_delete=view.findViewById(R.id.btn_delete);
//全选
select_all.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (select_all.isChecked()){
for (int i = 0; i <cart_list.size() ; i++) {
cart_list.get(i).setState(true);
}
}else{
for (int i = 0; i <cart_list.size() ; i++) {
cart_list.get(i).setState(false);
}
}
handler.sendEmptyMessageDelayed(1,100);
}
});
/**
* 删除
*/
btn_delete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
new AlertDialog.Builder(getActivity())
.setTitle("确认")
.setMessage("确定删除吗?")
.setNegativeButton("否", null)
.setPositiveButton("是", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
for (int j = 0; j <cart_list.size(); j++) {
if (cart_list.get(j).setState(true)){
HashMap<String,String> hmap=new HashMap();
hmap.put("key","10e9711e09cf5c191bc34b0eb74b01a5");
hmap.put("cart_id",cart_list.get(j).getCart_id());
OKhttpUtils.getInstance().doPost("http://169.254.51.153/mobile/index.php?act=member_cart&op=cart_del", hmap, new Callback() {
@Override
public void onFailure(Call call, IOException e) {
}
@Override
public void onResponse(Call call, Response response) throws IOException {
}
});
cart_list.remove(j);
adapter.notifyDataSetChanged();
}
}
}
}).create().show();
}
});
}
private void initdata() {
HashMap<String,String> map=new HashMap<>();
map.put("key","10e9711e09cf5c191bc34b0eb74b01a5");
OKhttpUtils.getInstance().doPost("http://169.254.206.40/mobile/index.php?act=member_cart&op=cart_list", map, new Callback() {
@Override
public void onFailure(Call call, IOException e) {
}
@Override
public void onResponse(Call call, Response response) throws IOException {
String str = response.body().string();
GWCbean json = new Gson().fromJson(str,GWCbean.class);
cart_list= json.getDatas().getCart_list().get(0).getGoods();
handler.sendEmptyMessageDelayed(1,100);
//设置checkbox为false
for(int i=0;i<cart_list.size();i++){
cart_list.get(i).setState(false);
}
}
});
}
//自定义的方法,接收Adapter传过来的数据
public void setData(int a ,int b){
sum+=a;
price+=b;
four_price.setText("共计"+sum+"件商品,共计"+price+"元");
}
}
package com.example.shop;
import android.content.Intent;
import android.graphics.drawable.BitmapDrawable;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.Gravity;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.PopupWindow;
import android.widget.TextView;
import android.widget.Toast;
import com.example.shop.bean.XQGoodsData;
import com.nostra13.universalimageloader.core.ImageLoader;
import java.io.IOException;
import java.util.HashMap;
import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.Response;
public class XQgoodsActivity extends AppCompatActivity {
private ImageView mImage,pop_img;
private TextView mtv1,pop_price,jia,jian,count;
private TextView mtv2;
private TextView mtv3;
private TextView mtv4;
private TextView mTextView5;
private TextView mTextView41;
Button pop_send;
XQGoodsData data;
int index=0;
int id;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_xqgoods);
initView();
initdata();
}
private void initView() {
mImage = (ImageView) findViewById(R.id.image);
mtv1 = (TextView) findViewById(R.id.tv1);
mtv2 = (TextView) findViewById(R.id.tv2);
mtv3 = (TextView) findViewById(R.id.tv3);
mtv4 = (TextView) findViewById(R.id.tv4);
mTextView41 = (TextView) findViewById(R.id.textView41);
mTextView5 = (TextView) findViewById(R.id.textView5);
mTextView41.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(XQgoodsActivity.this,"加载购物车",Toast.LENGTH_SHORT).show();
/* new PopupWindow(XQgoodsActivity.this, LinearLayout.LayoutParams.MATCH_PARENT,true);*/
View view1=View.inflate(XQgoodsActivity.this, R.layout.popuwidow,null);
pop_img= view1.findViewById(R.id.pop_img);
pop_price= view1.findViewById(R.id.pop_price);
pop_send= view1.findViewById(R.id.pop_send);
jia=view1.findViewById(R.id.jia);
jian= view1.findViewById(R.id.jian);
count= view1.findViewById(R.id.count);
PopupWindow pp= new PopupWindow(view1, LinearLayout.LayoutParams.MATCH_PARENT,1000,true);
pp.setOutsideTouchable(true);
pp.setBackgroundDrawable(new BitmapDrawable());
pp.setAnimationStyle(R.style.mypopwindow_anim_style);
pp.showAtLocation(view1, Gravity.BOTTOM,0,0);
ImageLoader.getInstance().displayImage(data.getDatas().getGoods_list().get(id).getGoods_image_url(),pop_img);
pop_price.setText(data.getDatas().getGoods_list().get(id).getGoods_price());
jia.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
index++;
count.setText(index+"");
}
});
jian.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (index>0){
index--;
count.setText(index+"");
}else{
Toast.makeText(XQgoodsActivity.this,"--------",Toast.LENGTH_SHORT).show();
}
}
});
pop_send.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
HashMap<String,String>hashMap=new HashMap<String, String>();
hashMap.put("key","10e9711e09cf5c191bc34b0eb74b01a5");
hashMap.put("goods_id",data.getDatas().getGoods_list().get(id).getGoods_id());
hashMap.put("quantity","1");
OKhttpUtils.getInstance().doPost("http://169.254.206.40/mobile/index.php?act=member_cart&op=cart_add", hashMap, new Callback() {
@Override
public void onFailure(Call call, IOException e) {
System.out.println("asa");
}
@Override
public void onResponse(Call call, Response response) throws IOException {
System.out.println(response.body().string()+"aaaaaaaaa");
}
});
}
});
}
});
mTextView5.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(XQgoodsActivity.this,"立即购买",Toast.LENGTH_SHORT).show();
finish();
}
});
}
private void initdata() {
Intent intent=getIntent();
id = intent.getIntExtra("id",0);
data = (XQGoodsData) intent.getSerializableExtra("data");
mtv1.setText(data.getDatas().getGoods_list().get(id).getGoods_name());
mtv2.setText(data.getDatas().getGoods_list().get(id).getGoods_jingle());
mtv3.setText("¥"+data.getDatas().getGoods_list().get(id).getGoods_price());
mtv4.setText("销量"+data.getDatas().getGoods_list().get(id).getGoods_salenum());
ImageLoader.getInstance().displayImage(data.getDatas().getGoods_list().get(id).getGoods_image_url(),mImage);
}
}
package com.example.shop.activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import com.example.shop.R;
public class InfoActivity extends AppCompatActivity {
private Button but_login;
private Button but_reg;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
initview();
}
private void initview() {
but_login = (Button) findViewById(R.id.button);
but_reg = (Button) findViewById(R.id.but_reg);
but_reg.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent=new Intent(InfoActivity.this,RegActivity.class);
startActivity(intent);
}
});
but_login.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent=new Intent(InfoActivity.this,logActivity.class);
startActivity(intent);
}
});
findViewById(R.id.log_iv).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
finish();
}
});
}
}
package com.example.shop.activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import com.example.shop.OKhttpUtils;
import com.example.shop.R;
import com.example.shop.bean.LoginBean;
import com.google.gson.Gson;
import java.io.IOException;
import java.util.HashMap;
import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.Response;
public class logActivity extends AppCompatActivity {
private ImageView mIvLog;
private ImageView mImgLog;
private Button mLgBut;
private EditText mEtNameLog;
private EditText mEtPwdLog;
SharedPreferences sp;
SharedPreferences.Editor editor;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_log);
sp=getSharedPreferences("config",MODE_PRIVATE);
editor=sp.edit();
initView();
}
private void initView() {
mIvLog = (ImageView) findViewById(R.id.log_iv);
mImgLog = (ImageView) findViewById(R.id.log_img);
mLgBut = (Button) findViewById(R.id.but_lg);
mEtNameLog = (EditText) findViewById(R.id.log_et_name);
mEtPwdLog = (EditText) findViewById(R.id.log_et_pwd);
mLgBut.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
HashMap<String,String> hashMap=new HashMap<String, String>();
hashMap.put("username",mEtNameLog.getText().toString());
hashMap.put("password",mEtPwdLog.getText().toString());
hashMap.put("client","android");
OKhttpUtils.getInstance().doPost("http://169.254.206.40/mobile/index.php?act=login", hashMap, new Callback() {
@Override
public void onFailure(Call call, IOException e) {
}
@Override
public void onResponse(Call call, Response response) throws IOException {
String restlt = response.body().string();
Log.i("----------", "onResponse: "+restlt);
Gson gson=new Gson();
LoginBean loginBean = gson.fromJson(restlt, LoginBean.class);
if (loginBean.getCode()==200){
runOnUiThread(new Runnable() {
@Override
public void run() {
editor.putBoolean("loginisno",false);
editor.commit();
// Intent intent=new Intent(logActivity.this, MainActivity.class);
// startActivity(intent);
finish();
}
});
}
}
});
}
});
}
}
package com.example.shop.activity;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import com.example.shop.OKhttpUtils;
import com.example.shop.R;
import java.io.IOException;
import java.util.HashMap;
import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.Response;
public class RegActivity extends AppCompatActivity {
private ImageView mIvLog;
private ImageView mImgLog;
private EditText mNameEt;
private EditText mPwdEt;
private EditText mPwd2Et;
private EditText mEmEt;
private Button mZhuce;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_reg);
initView();
}
private void initView() {
mIvLog = (ImageView) findViewById(R.id.log_iv);
mImgLog = (ImageView) findViewById(R.id.log_img);
mNameEt = (EditText) findViewById(R.id.et_name);
mPwdEt = (EditText) findViewById(R.id.et_pwd);
mPwd2Et = (EditText) findViewById(R.id.et_pwd2);
mEmEt = (EditText) findViewById(R.id.et_em);
mZhuce = (Button) findViewById(R.id.zhuce);
mZhuce.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
HashMap<String,String> map=new HashMap<String, String>();
map.put("username",mNameEt.getText().toString());
map.put("password",mPwdEt.getText().toString());
map.put("password_confirm",mPwd2Et.getText().toString());
map.put("email",mEmEt.getText().toString());
map.put("client","android");
OKhttpUtils.getInstance().doPost("http://169.254.206.40/mobile/index.php?act=login&op=register", map, new Callback() {
@Override
public void onFailure(Call call, IOException e) {
}
@Override
public void onResponse(Call call, Response response) throws IOException {
String s = response.body().string();
Log.i("=========", "onResponse: "+s);
finish();
}
});
}
});
}
}
package com.example.shop.adapter;
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import com.example.shop.R;
import com.example.shop.bean.ShopData;
import com.nostra13.universalimageloader.core.ImageLoader;
/**
* 作用:
* 作者:李倩 on 2017/10/14 08:32
*/
public class RecyAdaper extends RecyclerView.Adapter<RecyAdaper.viewHolder>{
ShopData data;
Context context;
public RecyAdaper(ShopData data, Context context) {
this.data = data;
this.context = context;
}
@Override
public viewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view=View.inflate(context, R.layout.homepage_item,null);
viewHolder holder=new viewHolder(view);
return holder;
}
@Override
public void onBindViewHolder(viewHolder holder, int position) {
holder.tv_title.setText(data.getData().getGoodsBrief().get(position).getGoods_name());
holder.tv_price.setText(data.getData().getGoodsBrief().get(position).getMarket_price()+"");
ImageLoader.getInstance().displayImage(data.getData().getGoodsBrief().get(position).getGoods_img(),holder.iv);
}
@Override
public int getItemCount() {
return data==null ? 0:data.getData().getGoodsBrief().size();
}
class viewHolder extends RecyclerView.ViewHolder{
TextView tv_title,tv_price;
ImageView iv;
public viewHolder(View itemView) {
super(itemView);
tv_title= itemView.findViewById(R.id.tv_title);
tv_price= itemView.findViewById(R.id.tv_price);
iv=itemView.findViewById(R.id.items_iv);
}
}
}