| | |
| | | package cn.com.basic.face.fragment;
|
| | |
|
| | | import android.os.Bundle;
|
| | | import android.text.Editable;
|
| | | import android.text.TextWatcher;
|
| | | import android.view.Gravity;
|
| | | import android.view.LayoutInflater;
|
| | | import android.view.View;
|
| | | import android.widget.EditText;
|
| | | import android.widget.LinearLayout;
|
| | | import android.widget.RadioButton;
|
| | | import android.widget.RadioGroup;
|
| | | import android.widget.TextView;
|
| | | import android.widget.Toast;
|
| | |
|
| | | import com.bsk.zhangbo.demoforbsk.R;
|
| | |
|
| | | import cn.com.basic.face.adapter.CheckInRightCellAdapter;
|
| | | import cn.com.basic.face.base.MainUIBaseFragment;
|
| | | import cn.com.basic.face.listeners.OkButtonClickedListener;
|
| | | import cn.com.basic.face.base.BaseApplication;
|
| | | import cn.com.basic.face.base.LeftRightBaseFragment;
|
| | | import cn.com.basic.face.dialog.SelectDialog;
|
| | | import cn.com.basic.face.discern.entity.VisitDetail;
|
| | | import cn.com.basic.face.util.Constant;
|
| | | import cn.com.basic.face.util.OkClickedListener;
|
| | | import cn.com.basic.face.service.DictionaryMng;
|
| | | import cn.com.basic.face.service.CheckInMng;
|
| | | import cn.com.basic.face.base.MainActivity;
|
| | | import cn.com.basic.face.util.Constant;
|
| | | import cn.com.basic.face.widget.CheckInIntervieweeCell;
|
| | | import cn.com.basic.face.widget.CheckInRightVisitorCell;
|
| | | import cn.com.basic.face.widget.VisitPurposeDialog;
|
| | | import com.camnter.easyrecyclerview.widget.EasyRecyclerView;
|
| | | import com.lidroid.xutils.ViewUtils;
|
| | | import cn.com.basic.face.widget.checkin.CheckInLeftVisitor;
|
| | | import cn.com.basic.face.widget.checkin.CheckInRightIntervieweeCell;
|
| | | import cn.com.basic.face.widget.checkin.CheckInLeftInterviewee;
|
| | | import cn.com.basic.face.widget.checkin.CheckInRightVisitorCell;
|
| | |
|
| | | import com.lidroid.xutils.view.annotation.ViewInject;
|
| | | import com.lidroid.xutils.view.annotation.event.OnClick;
|
| | |
|
| | | import org.xutils.http.RequestParams;
|
| | |
|
| | | import java.text.SimpleDateFormat;
|
| | | import java.util.ArrayList;
|
| | | import java.util.Collections;
|
| | | import java.util.Comparator;
|
| | | import java.util.Date;
|
| | | import java.util.List;
|
| | |
|
| | | import cn.com.basic.face.discern.common.CommonVariables;
|
| | | import cn.com.basic.face.discern.entity.Visit;
|
| | | import cn.com.basic.face.discern.query.item.FacePhotoItem;
|
| | | import cn.com.basic.face.discern.query.item.CheckInQueryItem;
|
| | |
|
| | | public class CheckInFragment extends MainUIBaseFragment {
|
| | | private View fragment_check_in_left;
|
| | | private View fragment_check_in_right;
|
| | | @ViewInject(R.id.fragment_check_in_left_radio_group)
|
| | | private RadioGroup fragment_check_in_left_radio_group;
|
| | | @ViewInject(R.id.fragment_check_in_left_sort_radio_group)
|
| | | private RadioGroup fragment_check_in_left_sort_radio_group;
|
| | | @ViewInject(R.id.fragment_check_in_left_sort_type_linear_layout)
|
| | | private LinearLayout fragment_check_in_left_sort_type_linear_layout;
|
| | | private CheckInIntervieweeCell fragment_check_in_right_interviewee_cell;
|
| | | private CheckInRightVisitorCell fragment_check_in_right_visitor_cell;
|
| | | private CheckInRightCellAdapter mAdapter;
|
| | | @ViewInject(R.id.fragment_check_in_left_list_view)
|
| | | private EasyRecyclerView fragment_check_in_left_list_view;
|
| | | private List mList = new ArrayList();;
|
| | | public class CheckInFragment extends LeftRightBaseFragment {
|
| | |
|
| | | private static CheckInFragment instance = new CheckInFragment();
|
| | | private List<String> visitPurposeList = new ArrayList<String>();
|
| | | private CheckInQueryItem selectedVisitor;
|
| | | private CheckInQueryItem selectedInterviewee;
|
| | |
|
| | | @ViewInject(R.id.fragment_check_in_right_remark)
|
| | | private EditText visitorRemarkEt;
|
| | | @ViewInject(R.id.fragment_check_in_right_visitor_reason)
|
| | | private TextView visitorReasonTv;
|
| | | @ViewInject(R.id.fragment_check_in_left_search_edit_text)
|
| | | private EditText visitorRegisterSearchEt;
|
| | | @ViewInject(R.id.fragment_check_in_left_visitor_radio)
|
| | | private RadioButton visitorRegisterRbLeft;
|
| | | @ViewInject(R.id.fragment_check_in_left_sort_by_dept_radio_button)
|
| | | private RadioButton visitorRegisterCheckDepartment;
|
| | | @ViewInject(R.id.fragment_check_in_left_interviewee_radio)
|
| | | private RadioButton fragment_check_in_left_interviewee_radio;
|
| | |
|
| | | public static CheckInFragment getInstance() {
|
| | | return instance;
|
| | | }
|
| | | |
| | | @ViewInject(R.id.fragment_check_in_left_sort_type_linear_layout)
|
| | | private LinearLayout fragment_check_in_left_sort_type_linear_layout;
|
| | | @ViewInject(R.id.fragment_check_in_right_interviewee_cell)
|
| | | private CheckInRightIntervieweeCell fragment_check_in_right_interviewee_cell;
|
| | | @ViewInject(R.id.fragment_check_in_right_visitor_cell)
|
| | | private CheckInRightVisitorCell fragment_check_in_right_visitor_cell;
|
| | | @ViewInject(R.id.fragment_check_in_left_visitor)
|
| | | private CheckInLeftVisitor fragment_check_in_left_visitor;
|
| | | @ViewInject(R.id.fragment_check_in_left_interviewee)
|
| | | private CheckInLeftInterviewee fragment_check_in_left_interviewee;
|
| | | @ViewInject(R.id.fragment_check_in_right_remark)
|
| | | private EditText fragment_check_in_right_remark;
|
| | | @ViewInject(R.id.fragment_check_in_right_visitor_reason)
|
| | | private TextView fragment_check_in_right_visitor_reason;
|
| | | @ViewInject(R.id.fragment_check_in_left_search_edit_text)
|
| | | private EditText fragment_check_in_left_search_edit_text;
|
| | | @ViewInject(R.id.fragment_check_in_left_visitor_radio)
|
| | | private RadioButton fragment_check_in_left_visitor_radio;
|
| | | @ViewInject(R.id.fragment_check_in_left_sort_by_dept_radio_button)
|
| | | private RadioButton fragment_check_in_left_sort_by_dept_radio_button;
|
| | | @ViewInject(R.id.fragment_check_in_left_interviewee_radio)
|
| | | private RadioButton fragment_check_in_left_interviewee_radio;
|
| | |
|
| | | private CheckInMng manager = CheckInMng.getInstance();
|
| | |
|
| | | @Override
|
| | | protected void initViews(View view, Bundle savedInstanceState) {
|
| | | super.initViews(view, savedInstanceState);
|
| | | public int[] getLeftRightLayoutIds() {
|
| | | return new int[]{R.layout.fragment_check_in_left, R.layout.fragment_check_in_right};
|
| | | }
|
| | |
|
| | | @Override
|
| | | protected void initListeners() {
|
| | | fragment_check_in_left_radio_group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
|
| | | @Override
|
| | | public void onCheckedChanged(RadioGroup radioGroup, int i) {
|
| | | switch (radioGroup.getCheckedRadioButtonId()){
|
| | | case R.id.fragment_check_in_left_visitor_radio:
|
| | | fragment_check_in_left_sort_type_linear_layout.setVisibility(View.GONE);
|
| | | mAdapter = new CheckInRightCellAdapter(getActivity(), Constant.VISITOR_CELL);
|
| | | //mList.clear();
|
| | | mAdapter.setList(mList);
|
| | | fragment_check_in_left_list_view.setAdapter(mAdapter);
|
| | | int pageNum = 1;
|
| | | CheckInMng.getInstance().findVisitorList(pageNum+"", visitorRegisterSearchEt.getText().toString(), true);
|
| | | break;
|
| | | case R.id.fragment_check_in_left_interviewee_radio:
|
| | | fragment_check_in_left_sort_type_linear_layout.setVisibility(View.VISIBLE);
|
| | | mAdapter = new CheckInRightCellAdapter(getActivity(), Constant.INTERVIEWEE_CELL);
|
| | | mAdapter.setVisitorToColor(CheckInRightCellAdapter.TYPE_NAME);
|
| | | //mList.clear();
|
| | | mAdapter.setList(mList);
|
| | | fragment_check_in_left_list_view.setAdapter(mAdapter);
|
| | | int pageNum1 = 1;
|
| | | CheckInMng.getInstance().findIntervieweeList(pageNum1+"", visitorRegisterSearchEt.getText().toString(), true);
|
| | | break;
|
| | | }
|
| | | }
|
| | | });
|
| | | fragment_check_in_left_sort_radio_group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
|
| | | @Override
|
| | | public void onCheckedChanged(RadioGroup radioGroup, int i) {
|
| | | switch (radioGroup.getCheckedRadioButtonId()){
|
| | | case R.id.fragment_check_in_left_sort_by_name_radio_button:
|
| | | // mAdapter.setVisitorToTextColor(CheckInRightCellAdapter.TYPE_NAME);
|
| | | mAdapter.setVisitorToColor(CheckInRightCellAdapter.TYPE_NAME);
|
| | | sort(mList, false);
|
| | | mAdapter.setList(mList);
|
| | | fragment_check_in_left_list_view.setAdapter(mAdapter);
|
| | | break;
|
| | | case R.id.fragment_check_in_left_sort_by_dept_radio_button:
|
| | | // mAdapter.setVisitorToTextColor(CheckInRightCellAdapter.TYPE_DEPARTMENT);
|
| | | mAdapter.setVisitorToColor(CheckInRightCellAdapter.TYPE_DEPARTMENT);
|
| | | sort(mList, true);
|
| | | mAdapter.setList(mList);
|
| | | fragment_check_in_left_list_view.setAdapter(mAdapter);
|
| | | super.initListeners();
|
| | |
|
| | | break;
|
| | | }
|
| | | }
|
| | | });
|
| | | visitorRegisterSearchEt.addTextChangedListener(new TextWatcher() {
|
| | | @Override
|
| | | ((RadioGroup)getLeftView().findViewById(R.id.fragment_check_in_left_radio_group))
|
| | | .setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
|
| | | @Override
|
| | | public void onCheckedChanged(RadioGroup radioGroup, int i) {
|
| | | reloadCheckInLeftList();
|
| | | }
|
| | | });
|
| | |
|
| | | ((RadioGroup)getLeftView().findViewById(R.id.fragment_check_in_left_sort_radio_group))
|
| | | .setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
|
| | | @Override
|
| | | public void onCheckedChanged(RadioGroup radioGroup, int i) {
|
| | | reloadCheckInLeftList();
|
| | | }
|
| | | });
|
| | |
|
| | | fragment_check_in_left_search_edit_text.addTextChangedListener(new TextWatcher() {
|
| | | public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {}
|
| | | @Override
|
| | | public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {}
|
| | | @Override
|
| | | public void afterTextChanged(Editable editable) {
|
| | | loadList();
|
| | | }
|
| | | public void afterTextChanged(Editable editable) { reloadCheckInLeftList(); }
|
| | | });
|
| | |
|
| | | }
|
| | |
|
| | | public void loadList() {
|
| | | if (visitorRegisterRbLeft.isChecked()) {
|
| | | CheckInMng.getInstance().findVisitorList(1+"", visitorRegisterSearchEt.getText().toString(), true);
|
| | | } else {
|
| | | CheckInMng.getInstance().findIntervieweeList(1+"", visitorRegisterSearchEt.getText().toString(), true);
|
| | | private void reloadCheckInLeftList() {
|
| | | fragment_check_in_left_sort_type_linear_layout.setVisibility(!fragment_check_in_left_visitor_radio.isChecked()?View.VISIBLE:View.GONE);
|
| | | fragment_check_in_left_interviewee.setVisibility(!fragment_check_in_left_visitor_radio.isChecked()?View.VISIBLE:View.GONE);
|
| | | fragment_check_in_left_visitor.setVisibility(fragment_check_in_left_visitor_radio.isChecked()?View.VISIBLE:View.GONE);
|
| | | manager.findCheckInLeftList(fragment_check_in_left_visitor_radio.isChecked(),
|
| | | fragment_check_in_left_sort_by_dept_radio_button.isChecked(),
|
| | | fragment_check_in_left_search_edit_text.getText().toString());
|
| | | }
|
| | |
|
| | | @Override
|
| | | public void setMenuVisibility(boolean menuVisible) {
|
| | | super.setMenuVisibility(menuVisible);
|
| | | if (menuVisible) {
|
| | | reloadCheckInLeftList();
|
| | | }
|
| | | }
|
| | |
|
| | | private void sort(List<CheckInQueryItem> list, final boolean sortedByDept) {
|
| | | Collections.sort(list, new Comparator<CheckInQueryItem>() {
|
| | | @Override
|
| | | public int compare(CheckInQueryItem t1, CheckInQueryItem t2) {
|
| | | if (sortedByDept) {
|
| | | String dept1Name = t1.getDeptName()==null?"":t1.getDeptName();
|
| | | String dept2Name = t2.getDeptName()==null?"":t2.getDeptName();
|
| | | if(!dept1Name.equals(dept2Name)) {
|
| | | return dept1Name.compareTo(dept2Name);
|
| | | }
|
| | | }
|
| | | String name1 = t1.getName()==null?"":t1.getName();
|
| | | String name2 = t2.getName()==null?"":t2.getName();
|
| | | return name1.compareTo(name2);
|
| | | }
|
| | | });
|
| | | }
|
| | |
|
| | |
|
| | | @Override
|
| | | protected void initData() { loadList(); }
|
| | |
|
| | | @Override
|
| | | public View addLeftLayout() {
|
| | | fragment_check_in_left = LayoutInflater.from(getActivity()).inflate(R.layout.fragment_check_in_left,null);
|
| | | ViewUtils.inject(this, fragment_check_in_left);
|
| | |
|
| | | mAdapter = new CheckInRightCellAdapter(getActivity(),Constant.VISITOR_CELL);
|
| | |
|
| | | return fragment_check_in_left;
|
| | | }
|
| | |
|
| | | @Override
|
| | | public View addRightLayout() {
|
| | | fragment_check_in_right = LayoutInflater.from(getActivity()).inflate(R.layout.fragment_check_in_right,null);
|
| | | ViewUtils.inject(this, fragment_check_in_right);
|
| | | fragment_check_in_right_visitor_cell = (CheckInRightVisitorCell) fragment_check_in_right.findViewById(R.id.fragment_check_in_right_visitor_cell);
|
| | |
|
| | | fragment_check_in_right_interviewee_cell = (CheckInIntervieweeCell) fragment_check_in_right.findViewById(R.id.fragment_check_in_right_interviewee_cell);
|
| | |
|
| | |
|
| | | return fragment_check_in_right;
|
| | | }
|
| | |
|
| | | @OnClick(R.id.fragment_check_in_left_back)
|
| | | public void back(View view) {
|
| | | public void fragment_check_in_left_back_click(View view) {
|
| | | MainActivity.selectPage(0);
|
| | | }
|
| | |
|
| | | @OnClick(R.id.fragment_check_in_right_print)
|
| | | public void print(View view) {
|
| | |
|
| | | }
|
| | | public void fragment_check_in_right_print_click(View view) { }
|
| | |
|
| | | @OnClick(R.id.fragment_check_in_right_add)
|
| | | public void add(View view) {
|
| | |
|
| | | }
|
| | | public void fragment_check_in_right_add_click(View view) { }
|
| | |
|
| | | @OnClick(R.id.fragment_check_in_right_save)
|
| | | public void save(View view) {
|
| | | if (selectedVisitor == null || selectedInterviewee == null) {
|
| | | public void fragment_check_in_right_save_click(View view) {
|
| | | CheckInQueryItem visitor = fragment_check_in_right_visitor_cell.getVisitor();
|
| | | CheckInQueryItem interviewee = fragment_check_in_right_interviewee_cell.getInterviewee();
|
| | | if (visitor == null) {
|
| | | Toast.makeText(MainActivity.getInstance(), "请选择来访人员", Toast.LENGTH_SHORT).show();
|
| | | return;
|
| | | }
|
| | | if (interviewee == null) {
|
| | | Toast.makeText(MainActivity.getInstance(), "请选择被访人员", Toast.LENGTH_SHORT).show();
|
| | | return;
|
| | | }
|
| | | String right_visitor_reason = fragment_check_in_right_visitor_reason.getText().toString().trim();
|
| | | if (right_visitor_reason.length() == 0) {
|
| | | Toast.makeText(MainActivity.getInstance(), "拜访事由不能为空", Toast.LENGTH_SHORT).show();
|
| | | return;
|
| | | }
|
| | | RequestParams params = new RequestParams();
|
| | | params.addBodyParameter(Visit.FieldNames.matterId, DictionaryMng.getInstance().getId(CommonVariables.DictionaryType.VISIT_PURPOSE+visitorReasonTv.getText().toString()));
|
| | | params.addBodyParameter(Visit.FieldNames.remark, visitorRemarkEt.getText().toString());
|
| | | params.addBodyParameter(Visit.FieldNames.visitorPersonId, selectedVisitor.getId());
|
| | | params.addBodyParameter(Visit.FieldNames.visiteePersonId, selectedInterviewee.getId());
|
| | | params.addBodyParameter(Visit.FieldNames.visitorCompanyId, selectedVisitor.getCompanyId());
|
| | | params.addBodyParameter(Visit.FieldNames.visiteeCompanyId, selectedInterviewee.getCompanyId());
|
| | | params.addBodyParameter(Visit.FieldNames.visitReasonId, DictionaryMng.getInstance().getId(fragment_check_in_right_visitor_reason.getText().toString()));
|
| | | params.addBodyParameter(Visit.FieldNames.remark, fragment_check_in_right_remark.getText().toString());
|
| | | params.addBodyParameter(Visit.FieldNames.visitorId, visitor.getRegisterId());
|
| | | params.addBodyParameter(Visit.FieldNames.visiteeId, interviewee.getRegisterId());
|
| | | params.addBodyParameter(Visit.FieldNames.visitorCompanyId, visitor.getCompanyId());
|
| | | params.addBodyParameter(Visit.FieldNames.visiteeCompanyId, interviewee.getCompanyId());
|
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
| | | params.addBodyParameter(Visit.FieldNames.enterTime, sdf.format(new Date()));
|
| | | params.addBodyParameter(Visit.FieldNames.currentStateId, ""+CommonVariables.StatusID.VISITOR_ENTERED);
|
| | |
|
| | | //visit detail
|
| | | params.addBodyParameter(VisitDetail.FieldNames.stateId, ""+CommonVariables.StatusID.VISITOR_ENTERED);
|
| | | params.addBodyParameter(VisitDetail.FieldNames.createTime, sdf.format(new Date()));
|
| | | params.addBodyParameter(VisitDetail.FieldNames.deviceId, BaseApplication.getInstance().getDevice().getDeviceId());
|
| | |
|
| | | CheckInMng.getInstance().add(params);
|
| | | }
|
| | |
|
| | | @OnClick(R.id.fragment_check_in_right_visitor_reason)
|
| | | public void visitorReason(View view) {
|
| | | VisitPurposeDialog popup1 = new VisitPurposeDialog(getActivity(),visitPurposeList,"请选择拜访事由");
|
| | | popup1.showAtLocation(getView(), Gravity.CENTER,0,0);
|
| | | popup1.addOkButtonClickedListener(new OkButtonClickedListener() {
|
| | | @Override
|
| | | public void onItemSelected(int position, Object o, String item) {
|
| | | visitorReasonTv.setText(item);
|
| | | public void fragment_check_in_right_visitor_reason_click(View view) {
|
| | | new SelectDialog(getView(), Constant.DialogSelectType.VISIT_REASON, new OkClickedListener() {
|
| | | public void onSelected(String value) {
|
| | | fragment_check_in_right_visitor_reason.setText(value);
|
| | | }
|
| | | });
|
| | | }
|
| | |
|
| | | public void visitorCheckIn(FacePhotoItem item) {
|
| | | // fragment_check_in_right_visitor_cell.setTitle(item.getName());
|
| | | }
|
| | |
|
| | | public void visitorCheckIn(CheckInQueryItem item) {
|
| | | public void checkInFromHomePage(CheckInQueryItem item) {
|
| | | fragment_check_in_left_interviewee_radio.performClick();
|
| | | fragment_check_in_right_visitor_cell.setVisitorInfo(item);
|
| | | selectedVisitor = item;
|
| | | }
|
| | |
|
| | | public void listChanged(List list, boolean isClear) {
|
| | | if (isClear) {
|
| | | mList.clear();
|
| | | }
|
| | | if (visitorRegisterCheckDepartment.isChecked()) {
|
| | | sort(list, false);
|
| | | } else {
|
| | | sort(list, true);
|
| | | }
|
| | | mList.addAll(list);
|
| | | mAdapter.setList(mList);
|
| | | fragment_check_in_left_list_view.setAdapter(mAdapter);
|
| | | public CheckInRightVisitorCell getFragment_check_in_right_visitor_cell() {
|
| | | return this.fragment_check_in_right_visitor_cell;
|
| | | }
|
| | |
|
| | | public void setVisitorInfo(CheckInQueryItem item) {
|
| | | fragment_check_in_right_visitor_cell.setVisitorInfo(item);
|
| | | selectedVisitor = item;
|
| | | public CheckInRightIntervieweeCell getFragment_check_in_right_interviewee_cell() {
|
| | | return this.fragment_check_in_right_interviewee_cell;
|
| | | }
|
| | |
|
| | | public void setIntervieweeInfo(final CheckInQueryItem item) {
|
| | | fragment_check_in_right_interviewee_cell.setIntervieweeInfo(item);
|
| | | selectedInterviewee = item;
|
| | | public CheckInLeftInterviewee get_fragment_check_in_left_interviewee() {
|
| | | return fragment_check_in_left_interviewee;
|
| | | }
|
| | |
|
| | | public void setVisitPurposeList(List<String> visitPurposeList) {
|
| | | this.visitPurposeList = visitPurposeList;
|
| | | public CheckInLeftVisitor get_fragment_check_in_left_visitor() {
|
| | | return fragment_check_in_left_visitor;
|
| | | }
|
| | |
|
| | | public void resetForm() {
|
| | | fragment_check_in_right_visitor_reason.setText("");
|
| | | fragment_check_in_right_remark.setText("");
|
| | | fragment_check_in_right_interviewee_cell.resetForm();
|
| | | fragment_check_in_right_visitor_cell.resetForm();
|
| | | }
|
| | |
|
| | |
|
| | | }
|