package com.quark.adapter;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.json.JSONException;
import org.json.JSONObject;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.android.volley.AuthFailureError;
import com.android.volley.DefaultRetryPolicy;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.carson.constant.ConstantForSaveList;
import com.carson.loadpic.SwipeAdapter;
import com.carson.loadpic.SwipeLayout;
import com.qingmu.jianzhidaren.R;
import com.quark.common.ToastUtil;
import com.quark.common.Url;
import com.parttime.main.MainTabActivity;
import com.quark.model.GuangchangModle;
import com.quark.volley.VolleySington;
public class MyJianZhiCollectedAdapter extends SwipeAdapter {
private ViewHolder holder;
private List<GuangchangModle> list;
private Context context;
private String cancelCollectUrl;
private RequestQueue queue;
private SharedPreferences sp;
private String user_id;
private boolean isFromShareFlag;
private SwipeLayout swipeLayout;
public MyJianZhiCollectedAdapter(Context context,
List<GuangchangModle> list, boolean isFromShareFlag) {
this.list = list;
this.context = context;
this.isFromShareFlag = isFromShareFlag;
cancelCollectUrl = Url.USER_CANCEL_COLLECT + "?token="
+ MainTabActivity.token;
sp = context.getSharedPreferences("jrdr.setting", Context.MODE_PRIVATE);
user_id = sp.getString("userId", "");
}
private static class ViewHolder {
TextView type;
TextView title;
TextView date;
TextView addreess;
TextView dates;
TextView freeNumber;
TextView salary;
ImageView baozhengjinImv;
ImageView chaojiImv;
RelativeLayout deleteLayout, starLayout;// 左滑删除收藏,分享
}
/**
* 取消收藏
*/
private void cancelCollectJianzhi(final String activity_id) {
queue = VolleySington.getInstance().getRequestQueue();
StringRequest request = new StringRequest(Request.Method.POST,
cancelCollectUrl, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
try {
JSONObject js = new JSONObject(response);
JSONObject jss = js.getJSONObject("ResponseStatus");
String status = jss.getString("status");
if ("1".equals(status)) {
// collectedImv
// .setImageResource(R.drawable.activity_un_collected);
// ToastUtil.showShortToast("取消收藏成功");
// jianzhi.setCollected(0);
} else {
// ToastUtil.showShortToast("网络不好,取消收藏失败");
}
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
}
}) {
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> map = new HashMap<String, String>();
map.put("user_id", user_id);
map.put("activity_id", activity_id);
return map;
}
};
queue.add(request);
request.setRetryPolicy(new DefaultRetryPolicy(
ConstantForSaveList.DEFAULTRETRYTIME * 1000, 1, 1.0f));
}
@Override
public int getSwipeLayoutResourceId(int position) {
return R.id.swipeLayout;
}
@Override
public View generateView(int position, ViewGroup parent) {
View v = LayoutInflater.from(context).inflate(R.layout.item_collected,
null);
swipeLayout = (SwipeLayout) v
.findViewById(getSwipeLayoutResourceId(position));
swipeLayout.addSwipeListener(new SwipeLayout.SwipeListener() {
@Override
public void onUpdate(SwipeLayout layout, int leftOffset,
int topOffset) {
}
@Override
public void onOpen(SwipeLayout layout) {
// YoYo.with(Techniques.Tada).duration(500).delay(100).playOn(layout.findViewById(R.id.trash));
}
@Override
public void onHandRelease(SwipeLayout layout, float xvel, float yvel) {
}
@Override
public void onClose(SwipeLayout layout) {
}
});
return v;
}
@Override
public void fillValues(final int i, View convertView) {
ViewHolder holder = new ViewHolder();
holder.type = (TextView) convertView.findViewById(R.id.type);
holder.title = (TextView) convertView.findViewById(R.id.title);
holder.date = (TextView) convertView.findViewById(R.id.date);
holder.addreess = (TextView) convertView.findViewById(R.id.addreess);
holder.dates = (TextView) convertView.findViewById(R.id.dates);
holder.freeNumber = (TextView) convertView
.findViewById(R.id.freeNumber);
holder.salary = (TextView) convertView.findViewById(R.id.salary);
holder.baozhengjinImv = (ImageView) convertView
.findViewById(R.id.baozhengjin_icon_img);
holder.chaojiImv = (ImageView) convertView
.findViewById(R.id.chaoji_icon_img);
holder.deleteLayout = (RelativeLayout) convertView
.findViewById(R.id.delete_button);
holder.starLayout = (RelativeLayout) convertView
.findViewById(R.id.star_button);
// 如果是分享过来的则分享显示,删除隐藏
if (isFromShareFlag) {
holder.starLayout.setVisibility(View.GONE);
holder.deleteLayout.setVisibility(View.GONE);
} else {
holder.starLayout.setVisibility(View.GONE);
holder.deleteLayout.setVisibility(View.VISIBLE);
}
// 分享兼职
holder.starLayout.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// 回调接口到chatactivity
Intent intent = new Intent(); // Itent就是我们要发送的内容
intent.setAction("com.carson.share.jianzhi"); // 设置你这个广播的action
intent.putExtra("activity_id", list.get(i).getActivity_id()
+ "");
intent.putExtra("title", list.get(i).getTitle());
intent.putExtra("pay", list.get(i).getPay());
intent.putExtra("pay_type", list.get(i).getPay_type());
intent.putExtra("job_place", list.get(i).getCounty());
intent.putExtra("start_time", list.get(i).getStart_time());
intent.putExtra("left_count", list.get(i).getLeft_count());
context.sendBroadcast(intent); // 发送广播
ToastUtil.showShortToast("活动分享成功^_^");
((Activity) context).finish();// 销毁收藏界面
}
});
holder.deleteLayout.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// 删除收藏列表
cancelCollectJianzhi(list.get(i).getActivity_id() + "");
list.remove(i);
notifyDataSetChanged();
}
});
String typestr = list.get(i).getType();
holder.type.setText(typestr);
if (typestr.equals("派发")) {
holder.type.setBackgroundResource(R.color.type_paifa);
}
if (typestr.equals("促销")) {
holder.type.setBackgroundResource(R.color.type_chuxiao);
}
if (typestr.equals("其他")) {
holder.type.setBackgroundResource(R.color.type_qita);
}
if (typestr.equals("家教")) {
holder.type.setBackgroundResource(R.color.type_jiajiao);
}
if (typestr.equals("服务员")) {
holder.type.setBackgroundResource(R.color.type_fuwuyuan);
holder.type.setText("服务");
}
if (typestr.equals("礼仪")) {
holder.type.setBackgroundResource(R.color.type_liyi);
}
if (typestr.equals("安保人员")) {
holder.type.setText("安保");
holder.type.setBackgroundResource(R.color.type_baoanrenyuan);
}
if (typestr.equals("模特")) {
holder.type.setBackgroundResource(R.color.type_mote);
}
if (typestr.equals("主持")) {
holder.type.setBackgroundResource(R.color.type_zhuchi);
}
if (typestr.equals("翻译")) {
holder.type.setBackgroundResource(R.color.type_fanyi);
}
if (typestr.equals("工作人员")) {
holder.type.setText("工作");
holder.type.setBackgroundResource(R.color.type_gongzuorenyuan);
}
if (typestr.equals("话务")) {
holder.type.setBackgroundResource(R.color.type_huawu);
}
if (typestr.equals("充场")) {
holder.type.setBackgroundResource(R.color.type_chongchang);
}
if (typestr.equals("演艺")) {
holder.type.setBackgroundResource(R.color.type_yanyi);
}
if (typestr.equals("访谈")) {
holder.type.setBackgroundResource(R.color.type_fangtan);
}
holder.title.setText(list.get(i).getTitle());
String datestr = list.get(i).getStart_time();
if (datestr.length() > 5) {
datestr = datestr.substring(5, datestr.length());
}
holder.date.setText(datestr);
holder.addreess.setText(list.get(i).getCounty());
holder.dates.setText(datestr + "(" + list.get(i).getDays() + "天)");
holder.freeNumber.setText(list.get(i).getLeft_count() + "人");
if (list.get(i).getPay_type() == 1) {
holder.salary.setText(list.get(i).getPay() + "元/时");
} else {
holder.salary.setText(list.get(i).getPay() + "元/天");
}
if (list.get(i).getApply() == 2) {
} else if (list.get(i).getApply() == 1) {
} else {
}
// 是否显示保证金,超级标签 0表示没有,1表示有
if (list.get(i).getGuarantee() == 0) {
holder.baozhengjinImv.setVisibility(View.GONE);
} else {
holder.baozhengjinImv.setVisibility(View.VISIBLE);
}
if (list.get(i).getSuperJob() == 0) {
holder.chaojiImv.setVisibility(View.GONE);
} else {
holder.chaojiImv.setVisibility(View.VISIBLE);
}
}
@Override
public int getCount() {
return list.size() == 0 ? 0 : list.size();
}
@Override
public Object getItem(int arg0) {
return swipeLayout;
}
@Override
public long getItemId(int position) {
return position;
}
}