package com.basic.security.fragment;
|
|
import android.view.View;
|
import android.view.ViewGroup;
|
import android.widget.BaseAdapter;
|
import android.widget.Button;
|
import android.widget.ImageView;
|
import android.widget.ListView;
|
import android.widget.TextView;
|
|
import com.basic.security.R;
|
import com.basic.security.base.BaseFragment;
|
import com.basic.security.manager.impl.cblite.BusinessListManager;
|
import com.basic.security.model.ModelAdapter;
|
import com.basic.security.utils.DateUtil;
|
import com.basic.security.widget.ConfirmDialog;
|
|
import org.androidannotations.annotations.AfterViews;
|
import org.androidannotations.annotations.Click;
|
import org.androidannotations.annotations.EFragment;
|
import org.androidannotations.annotations.ViewById;
|
|
import java.util.List;
|
|
|
@EFragment(R.layout.fragment_rule_list)
|
public class RuleListFragment extends BaseFragment {
|
|
@ViewById
|
Button rule_list_btn_add_rule;
|
@ViewById
|
ListView rule_list_lv_add_rule;
|
|
private List<ModelAdapter> businessList;
|
private BusinessListAdapter adapter;
|
private ConfirmDialog confirmDialog;
|
|
@AfterViews
|
public void init() {
|
businessList = BusinessListManager.getBusinessList();
|
rule_list_lv_add_rule.addHeaderView(View.inflate(getContext(), R.layout.add_rule_head, null));
|
adapter = new BusinessListAdapter();
|
rule_list_lv_add_rule.setAdapter(adapter);
|
|
}
|
|
@Click
|
void rule_list_btn_add_rule() { // 点击了新增规则按钮
|
mainActivity().showFragment((mainActivity()).fragment_rule_detail);
|
mainActivity().fragment_rule_detail.setBusinessDetailDocument(null, true);
|
}
|
|
@Override
|
public void show() {
|
refreshList();
|
}
|
|
public void refreshList() {
|
businessList = BusinessListManager.getBusinessList();
|
adapter.notifyDataSetChanged();
|
|
}
|
|
@Override
|
public void hide() {
|
if (mainActivity().currentFragment != mainActivity().fragment_rule_list) {
|
if (confirmDialog != null) {
|
confirmDialog.dismiss();
|
}
|
}
|
}
|
|
private class BusinessListAdapter extends BaseAdapter {
|
@Override
|
public int getCount() {
|
return businessList == null ? 0 : businessList.size();
|
}
|
|
@Override
|
public Object getItem(int position) {
|
return businessList.get(position);
|
}
|
|
@Override
|
public long getItemId(int position) {
|
return position;
|
}
|
|
@Override
|
public View getView(int position, View convertView, ViewGroup parent) {
|
View layout;
|
ViewHolder viewHolder;
|
if (convertView == null) {
|
layout = View.inflate(getContext(), R.layout.add_rule_item, null);
|
viewHolder = new ViewHolder();// 当前Item 的布局的子控件的引用的集合
|
viewHolder.name = layout.findViewById(R.id.add_rule_tv_name);
|
viewHolder.time = layout.findViewById(R.id.add_rule_tv_time);
|
viewHolder.delete = layout.findViewById(R.id.add_rule_iv_delete);
|
viewHolder.manage = layout.findViewById(R.id.add_rule_iv_manage);
|
viewHolder.edit = layout.findViewById(R.id.add_rule_iv_edit);
|
layout.setTag(viewHolder);//把该布局的 子控件的引用 绑定到该布局上
|
} else {
|
viewHolder = (ViewHolder) convertView.getTag();
|
layout = convertView;
|
}
|
final ModelAdapter businessDocument = businessList.get(position);
|
viewHolder.name.setText(businessDocument.getString("business_name"));
|
// 仅允许
|
if ("1".equals(businessDocument.getString("only_allow"))) {
|
String start_time = DateUtil.formatTime(Long.parseLong(businessDocument.getString("only_allow_start")), "yyyy/MM/dd HH:mm");
|
String end_time = DateUtil.formatTime(Long.parseLong(businessDocument.getString("only_allow_end")), "yyyy/MM/dd HH:mm");
|
viewHolder.time.setText(start_time + " —" + "\n" + "— " + end_time);
|
} else {// 从时间规则中选取的时间段
|
viewHolder.time.setText("————");
|
}
|
viewHolder.edit.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
mainActivity().fragment_rule_detail.setBusinessDetailDocument(businessDocument, false);
|
mainActivity().showFragment((mainActivity()).fragment_rule_detail);
|
}
|
});
|
|
viewHolder.delete.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View view) {
|
|
confirmDialog = new ConfirmDialog(mainActivity(), "确定要删除规则 " + businessDocument.getString("business_name") + " 吗?", "确认删除", "取消");
|
confirmDialog.show();
|
confirmDialog.setClickListener(new ConfirmDialog.ClickListenerInterface() {
|
@Override
|
public void doConfirm() {
|
BusinessListManager.deleteBusiness(businessDocument);
|
businessList.remove(position);
|
adapter.notifyDataSetChanged();
|
confirmDialog.dismiss();
|
}
|
|
@Override
|
public void doCancel() {
|
confirmDialog.dismiss();
|
}
|
});
|
}
|
});
|
|
viewHolder.manage.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
mainActivity().fragment_business_person.BusinessPersonData(businessDocument);
|
mainActivity().showFragment(mainActivity().fragment_business_person);
|
}
|
});
|
|
return layout;
|
}
|
|
class ViewHolder {
|
private TextView name, time;
|
private ImageView edit, delete, manage;
|
}
|
}
|
|
|
/**
|
// 以下为人员身份代码
|
@ViewById Button rule_list_btn_add_rule;
|
@ViewById ListView rule_list_lv_add_rule;
|
|
private List<ModelAdapter> list;
|
private MyAdapter adapter;
|
private Map<String, ModelAdapter> checkedRuleMap = new HashMap<>();
|
private ConfirmDialog confirmDialog;
|
|
@AfterViews public void init() {
|
|
list = RuleManager.getRuleList();
|
rule_list_lv_add_rule.addHeaderView(View.inflate(getContext(), R.layout.add_rule_head, null));
|
adapter = new MyAdapter();
|
rule_list_lv_add_rule.setAdapter(adapter);
|
|
}
|
|
@Click void rule_list_btn_add_rule() { // 点击了新增规则按钮
|
mainActivity().showFragment((mainActivity()).fragment_rule_detail);
|
// ((RuleDetailFragment) mainActivity().fragment_rule_detail).setRuleDetailDocument(null);
|
}
|
|
@AfterViews public void afterViews() {
|
}
|
|
@Override public void show() {
|
refreshList();
|
}
|
|
public void refreshList() {
|
|
list = RuleManager.getRuleList();
|
adapter.notifyDataSetChanged();
|
}
|
|
@Override public void hide() {
|
if (mainActivity().currentFragment != mainActivity().fragment_rule_list) {
|
if (confirmDialog != null) {
|
confirmDialog.dismiss();
|
}
|
}
|
}
|
|
private class MyAdapter extends BaseAdapter {
|
@Override public int getCount() {
|
return list == null ? 0 : list.size();
|
}
|
|
@Override public Object getItem(int i) {
|
return null;
|
}
|
|
@Override public long getItemId(int i) {
|
return 0;
|
}
|
|
@Override public View getView(int position, View convertView, ViewGroup parent) {
|
View layout;
|
ViewHolder viewHolder;
|
if (convertView == null) {
|
layout = View.inflate(getContext(), R.layout.add_rule_item, null);
|
viewHolder = new ViewHolder();// 当前Item 的布局的子控件的引用的集合
|
viewHolder.name = (TextView) layout.findViewById(R.id.add_rule_tv_name);
|
viewHolder.time = (TextView) layout.findViewById(R.id.add_rule_tv_time);
|
viewHolder.delete = (ImageView) layout.findViewById(R.id.add_rule_iv_delete);
|
viewHolder.edit = (ImageView) layout.findViewById(R.id.add_rule_iv_edit);
|
viewHolder.manage = (ImageView) layout.findViewById(R.id.add_rule_iv_manage);
|
layout.setTag(viewHolder);//把该布局的 子控件的引用 绑定到该布局上
|
} else {
|
viewHolder = (ViewHolder) convertView.getTag();
|
layout = convertView;
|
}
|
checkedRuleMap.clear();
|
final ModelAdapter mutableDocument = list.get(position);
|
viewHolder.name.setFaceDetailUI(mutableDocument.getString("name"));
|
|
if (mutableDocument.getString("name").contains("黑名单") || mutableDocument.getString("name").contains("管理员")) {
|
viewHolder.delete.setVisibility(View.GONE);
|
} else {
|
viewHolder.delete.setVisibility(View.VISIBLE);
|
}
|
// limit_time= "";// 1就是限制,0不限制
|
String limit_time = mutableDocument.getString("limit_time");
|
if (!TextUtils.isEmpty(limit_time) && limit_time.equals("1")) {
|
String start_time = DateUtil.formatTime(Long.parseLong(mutableDocument.getString("begin_time")), "yyyy/MM/dd HH:mm");
|
String end_time = DateUtil.formatTime(Long.parseLong(mutableDocument.getString("end_time")), "yyyy/MM/dd HH:mm");
|
viewHolder.time.setFaceDetailUI(start_time + " —" + "\n" + "— " + end_time);
|
} else {
|
viewHolder.time.setFaceDetailUI("————");
|
}
|
|
viewHolder.delete.setOnClickListener(new View.OnClickListener() {
|
@Override public void onClick(View view) {
|
|
if (mutableDocument.getId().equals(BaseSettingManager.getBaseSetting().getString("auto_register_identity_id"))) {
|
ToastUtil.show("无法删除自助注册默认身份");
|
return;
|
}
|
|
confirmDialog = new ConfirmDialog(mainActivity(), "确定要删除规则 " + mutableDocument.getString("name") + " 吗?", "确认删除", "取消");
|
confirmDialog.show();
|
confirmDialog.setClickListener(new ConfirmDialog.ClickListenerInterface() {
|
@Override public void doConfirm() {
|
RuleManager.deleteRule(mutableDocument);
|
list.remove(position);
|
adapter.notifyDataSetChanged();
|
confirmDialog.dismiss();
|
}
|
|
@Override public void doCancel() {
|
confirmDialog.dismiss();
|
}
|
});
|
}
|
});
|
viewHolder.edit.setOnClickListener(new View.OnClickListener() {
|
@Override public void onClick(View v) {
|
mainActivity().showFragment((mainActivity()).fragment_rule_detail);
|
// ((RuleDetailFragment) mainActivity().fragment_rule_detail).setRuleDetailDocument(mutableDocument);
|
}
|
});
|
|
viewHolder.manage.setOnClickListener(new View.OnClickListener() {
|
@Override public void onClick(View v) {
|
mainActivity().showFragment(mainActivity().fragment_business_person);
|
// mainActivity().showFragment(mainActivity().fragment_person_manage);
|
// ((MenuFragment) mainActivity().fragment_menu).setSelectedMenuItemBackground(
|
// ((MenuFragment) mainActivity().fragment_menu).person_manage
|
// );
|
// checkedRuleMap.put(mutableDocument.getId(), mutableDocument);
|
// ((FaceListFragment) mainActivity().fragment_face_list).findPersonList("已注册", checkedRuleMap);
|
}
|
});
|
|
return layout;
|
}
|
|
class ViewHolder {
|
private TextView name, time;
|
private ImageView edit, delete, manage;
|
}
|
} */
|
}
|