From c0bc8da86f09a1e8b418e801ca15c43534d3cbd9 Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期一, 17 四月 2017 11:21:24 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/CheckInFragment.java | 264 +++++++++++++++++++++------------------------------- 1 files changed, 109 insertions(+), 155 deletions(-) diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/CheckInFragment.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/CheckInFragment.java index 091a3c7..3743201 100644 --- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/CheckInFragment.java +++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/CheckInFragment.java @@ -1,70 +1,62 @@ 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.CheckInQueryItem; -public class CheckInFragment extends MainUIBaseFragment { +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; - - private CheckInRightCellAdapter mAdapter; - private List mList = new ArrayList();; - - @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; @ViewInject(R.id.fragment_check_in_right_interviewee_cell) - private CheckInIntervieweeCell 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_list_view) - private EasyRecyclerView fragment_check_in_left_list_view; + @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) @@ -80,168 +72,107 @@ private CheckInMng manager = CheckInMng.getInstance(); - 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; - } - - private List<String> visitPurposeList = new ArrayList<String>(); - @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); - return fragment_check_in_right; - } - - @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); - CheckInMng.getInstance().findVisitorList("1", fragment_check_in_left_search_edit_text.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.set_fragment_check_in_left_sort_radio_group_type(CheckInRightCellAdapter.TYPE_NAME); - CheckInMng.getInstance().findIntervieweeList("1", fragment_check_in_left_search_edit_text.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.set_fragment_check_in_left_sort_radio_group_type(CheckInRightCellAdapter.TYPE_NAME); - sort(mList, false); - refresh_fragment_check_in_left_list_view(); - break; - case R.id.fragment_check_in_left_sort_by_dept_radio_button: - mAdapter.set_fragment_check_in_left_sort_radio_group_type(CheckInRightCellAdapter.TYPE_DEPARTMENT); - sort(mList, true); - refresh_fragment_check_in_left_list_view(); - break; - } - } - }); + 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) { loadList(); } + public void afterTextChanged(Editable editable) { reloadCheckInLeftList(); } }); + } - public void loadList() { - if (fragment_check_in_left_visitor_radio.isChecked()) { - manager.findVisitorList(1+"", fragment_check_in_left_search_edit_text.getText().toString(), true); - } else { - manager.findIntervieweeList(1+"", fragment_check_in_left_search_edit_text.getText().toString(), true); - } - } - - public void listChanged(List list, boolean isClear) { - if (isClear) { - mList.clear(); - } - if (fragment_check_in_left_sort_by_dept_radio_button.isChecked()) { - sort(list, false); - } else { - sort(list, true); - } - mList.addAll(list); - refresh_fragment_check_in_left_list_view(); - } - - private void refresh_fragment_check_in_left_list_view() { - mAdapter.setList(mList); - fragment_check_in_left_list_view.setAdapter(mAdapter); - } - - 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); - } - }); + 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 - protected void initData() { loadList(); } + public void setMenuVisibility(boolean menuVisible) { + super.setMenuVisibility(menuVisible); + if (menuVisible) { + reloadCheckInLeftList(); + } + } @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) { + 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) { + 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+ fragment_check_in_right_visitor_reason.getText().toString())); + 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.visitorPersonId, visitor.getId()); - params.addBodyParameter(Visit.FieldNames.visiteePersonId, interviewee.getId()); + 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); + + 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) { - fragment_check_in_right_visitor_reason.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); } }); } @@ -250,8 +181,31 @@ fragment_check_in_left_interviewee_radio.performClick(); } - public void setVisitPurposeList(List<String> visitPurposeList) { - this.visitPurposeList = visitPurposeList; + public CheckInRightVisitorCell getFragment_check_in_right_visitor_cell() { + return this.fragment_check_in_right_visitor_cell; + } + + public CheckInRightIntervieweeCell getFragment_check_in_right_interviewee_cell() { + return this.fragment_check_in_right_interviewee_cell; + } + + public CheckInLeftInterviewee get_fragment_check_in_left_interviewee() { + return fragment_check_in_left_interviewee; + } + + 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(); + } + + public void setVisitReasonText(String value) { + fragment_check_in_right_visitor_reason.setText(value); } } -- Gitblit v1.8.0