package cn.com.basic.face.fragment; import android.text.Editable; import android.text.TextWatcher; import android.view.Gravity; 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 com.bsk.zhangbo.demoforbsk.R; import cn.com.basic.face.base.LeftRightBaseFragment; import cn.com.basic.face.listeners.OkButtonClickedListener; 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.widget.CheckInIntervieweeCell; import cn.com.basic.face.widget.CheckInLeftListView; import cn.com.basic.face.widget.CheckInRightVisitorCell; import cn.com.basic.face.widget.VisitReasonDialog; import com.lidroid.xutils.view.annotation.ViewInject; import com.lidroid.xutils.view.annotation.event.OnClick; import org.xutils.http.RequestParams; import java.util.ArrayList; 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.CheckInQueryItem; public class CheckInFragment extends LeftRightBaseFragment { private static CheckInFragment instance = new CheckInFragment(); public static CheckInFragment getInstance() { return instance; } private View fragment_check_in_left; private View fragment_check_in_right; @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 CheckInIntervieweeCell 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_list_view) private CheckInLeftListView fragment_check_in_left_list_view; @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(); private List visitPurposeList = new ArrayList(); @Override public int[] getLeftRightLayoutIds() { return new int[]{R.layout.fragment_check_in_left, R.layout.fragment_check_in_right}; } @Override protected void initListeners() { super.initListeners(); ((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) {} public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {} public void afterTextChanged(Editable editable) { reloadCheckInLeftList(); } }); } private void reloadCheckInLeftList() { fragment_check_in_left_sort_type_linear_layout.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(); } } @OnClick(R.id.fragment_check_in_left_back) public void fragment_check_in_left_back_click(View view) { MainActivity.selectPage(0); } @OnClick(R.id.fragment_check_in_right_print) public void fragment_check_in_right_print_click(View view) { } @OnClick(R.id.fragment_check_in_right_add) public void fragment_check_in_right_add_click(View view) { } @OnClick(R.id.fragment_check_in_right_save) 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 || interviewee == null) { return; } RequestParams params = new RequestParams(); params.addBodyParameter(Visit.FieldNames.matterId, DictionaryMng.getInstance().getId(CommonVariables.DictionaryType.VISIT_PURPOSE+ fragment_check_in_right_visitor_reason.getText().toString())); params.addBodyParameter(Visit.FieldNames.remark, fragment_check_in_right_remark.getText().toString()); params.addBodyParameter(Visit.FieldNames.visitorPersonId, visitor.getId()); params.addBodyParameter(Visit.FieldNames.visiteePersonId, interviewee.getId()); params.addBodyParameter(Visit.FieldNames.visitorCompanyId, visitor.getCompanyId()); params.addBodyParameter(Visit.FieldNames.visiteeCompanyId, interviewee.getCompanyId()); CheckInMng.getInstance().add(params); } @OnClick(R.id.fragment_check_in_right_visitor_reason) public void fragment_check_in_right_visitor_reason_click(View view) { VisitReasonDialog visitReasonDialog = new VisitReasonDialog(getActivity(),visitPurposeList,"请选择拜访事由"); visitReasonDialog.showAtLocation(getView(), Gravity.CENTER,0,0); visitReasonDialog.addOkButtonClickedListener(new OkButtonClickedListener() { @Override public void onItemSelected(int position, Object o, String item) { fragment_check_in_right_visitor_reason.setText(item); } }); } public void checkInFromHomePage(CheckInQueryItem item) { fragment_check_in_left_interviewee_radio.performClick(); } public void setVisitPurposeList(List visitPurposeList) { this.visitPurposeList = visitPurposeList; } public CheckInRightVisitorCell getFragment_check_in_right_visitor_cell() { return this.fragment_check_in_right_visitor_cell; } public CheckInIntervieweeCell getFragment_check_in_right_interviewee_cell() { return this.fragment_check_in_right_interviewee_cell; } public CheckInLeftListView get_fragment_check_in_left_list_view() { return fragment_check_in_left_list_view; } }