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 | 398 +++++++++++++++++++------------------------------------- 1 files changed, 136 insertions(+), 262 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 9ea07ae..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,15 +1,9 @@ package cn.com.basic.face.fragment; -import android.net.Uri; -import android.os.Bundle; -import android.support.v7.widget.LinearLayoutManager; 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.ImageView; import android.widget.LinearLayout; import android.widget.RadioButton; import android.widget.RadioGroup; @@ -17,321 +11,201 @@ import android.widget.Toast; import com.bsk.zhangbo.demoforbsk.R; -import cn.com.basic.face.adapter.VisitorRecyclerViewAdapter; -import cn.com.basic.face.base.MainUIBaseFragment; -import cn.com.basic.face.listeners.OkButtonClickedListener; -import cn.com.basic.face.service.DictionaryMng; -import cn.com.basic.face.service.VisitorCheckInMng; -import cn.com.basic.face.base.MainActivity; -import cn.com.basic.face.util.AppApi; + +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.widget.VisitPurposeDialog; -import cn.com.basic.face.widget.VisitorView; -import com.camnter.easyrecyclerview.widget.EasyRecyclerView; -import com.lidroid.xutils.ViewUtils; +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.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.VisitorQueryItem; +import cn.com.basic.face.discern.query.item.CheckInQueryItem; -/** - * Created by Administrator on 2017/2/20 0020. - */ - -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 VisitorView right, left; - private VisitorRecyclerViewAdapter mAdapter; - 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 TextView leftCompanyName; - private TextView leftIdentityNumber; - private ImageView leftPhoto; - private TextView leftMobilePhone; - private TextView rightDepartment; - private TextView rightPost; - private TextView rightMobilePhone; - private TextView rightTel; - //private TextView visitorReasonTv; - private List<String> visitPurposeList = new ArrayList<String>(); - private VisitorQueryItem selectedVisitor; - private VisitorQueryItem selectedInterviewee; - - @ViewInject(R.id.visitor_remark_et) - private EditText visitorRemarkEt; - @ViewInject(R.id.visitor_reason_tv) - 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; - private ImageView rightPhoto; - 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 VisitorRecyclerViewAdapter(getActivity(), Constant.VISITOR_FROM); - //mList.clear(); - mAdapter.setList(mList); - fragment_check_in_left_list_view.setAdapter(mAdapter); - int pageNum = 1; - VisitorCheckInMng.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 VisitorRecyclerViewAdapter(getActivity(), Constant.VISITOR_TO); - mAdapter.setVisitorToColor(VisitorRecyclerViewAdapter.TYPE_NAME); - //mList.clear(); - mAdapter.setList(mList); - fragment_check_in_left_list_view.setAdapter(mAdapter); - int pageNum1 = 1; - VisitorCheckInMng.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(VisitorRecyclerViewAdapter.TYPE_NAME); - mAdapter.setVisitorToColor(VisitorRecyclerViewAdapter.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(VisitorRecyclerViewAdapter.TYPE_DEPARTMENT); - mAdapter.setVisitorToColor(VisitorRecyclerViewAdapter.TYPE_DEPARTMENT); - sort(mList, true); - mAdapter.setList(mList); - fragment_check_in_left_list_view.setAdapter(mAdapter); + super.initListeners(); - break; - } - } - }); - visitorRegisterSearchEt.addTextChangedListener(new TextWatcher() { - @Override - 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 loadList() { - if (visitorRegisterRbLeft.isChecked()) { - VisitorCheckInMng.getInstance().findVisitorList(1+"", visitorRegisterSearchEt.getText().toString(), true); - } else { - VisitorCheckInMng.getInstance().findIntervieweeList(1+"", visitorRegisterSearchEt.getText().toString(), true); - } - } - - private void sort(List<VisitorQueryItem> list, final boolean sortedByDept) { - Collections.sort(list, new Comparator<VisitorQueryItem>() { - @Override - public int compare(VisitorQueryItem t1, VisitorQueryItem 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); + ((RadioGroup)getLeftView().findViewById(R.id.fragment_check_in_left_radio_group)) + .setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { + @Override + public void onCheckedChanged(RadioGroup radioGroup, int i) { + reloadCheckInLeftList(); } - } - String name1 = t1.getName()==null?"":t1.getName(); - String name2 = t2.getName()==null?"":t2.getName(); - return name1.compareTo(name2); - } + }); + + ((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(); } }); + } - - @Override - protected void initData() { - loadList(); + 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 View addLeftLayout() { - fragment_check_in_left = LayoutInflater.from(getActivity()).inflate(R.layout.fragment_check_in_left,null); - fragment_check_in_left_radio_group = (RadioGroup) fragment_check_in_left.findViewById(R.id.fragment_check_in_left_radio_group); - fragment_check_in_left_sort_radio_group = (RadioGroup) fragment_check_in_left.findViewById(R.id.fragment_check_in_left_sort_radio_group); - fragment_check_in_left_sort_type_linear_layout = (LinearLayout) fragment_check_in_left.findViewById(R.id.fragment_check_in_left_sort_type_linear_layout); - fragment_check_in_left_list_view = (EasyRecyclerView) fragment_check_in_left.findViewById(R.id.fragment_check_in_left_list_view); - LinearLayoutManager manager = new LinearLayoutManager(getActivity(),LinearLayoutManager.VERTICAL,false); - fragment_check_in_left_list_view.setLayoutManager(manager); - mAdapter = new VisitorRecyclerViewAdapter(getActivity(),Constant.VISITOR_FROM); - - ViewUtils.inject(this, fragment_check_in_left); - return fragment_check_in_left; - } - - @Override - public View addRightLayout() { - fragment_check_in_right = LayoutInflater.from(getActivity()).inflate(R.layout.fragment_check_in_right,null); - left = (VisitorView) fragment_check_in_right.findViewById(R.id.visitor_view_left); - left.setType(Constant.VISITOR_FROM); - left.setTitle(""); - leftCompanyName = (TextView) left.findViewById(R.id.visitor_view_left_company_name); - leftIdentityNumber = (TextView) left.findViewById(R.id.visitor_view_left_identity_number); - leftMobilePhone = (TextView) left.findViewById(R.id.visitor_view_left_phone); - leftPhoto = (ImageView) left.findViewById(R.id.visitor_view_left_photo); - - right = (VisitorView) fragment_check_in_right.findViewById(R.id.visitor_view_right); - right.setType(Constant.VISITOR_TO); - right.setTitle(""); - rightDepartment = (TextView) right.findViewById(R.id.view_visitor_right_deptartment); - rightPost = (TextView) right.findViewById(R.id.view_visitor_right_post); - rightMobilePhone = (TextView) right.findViewById(R.id.visitor_right_phone); - rightTel = (TextView) right.findViewById(R.id.visitor_right_tel); - rightPhoto = (ImageView) right.findViewById(R.id.visitor_view_right_photo); - - ViewUtils.inject(this, fragment_check_in_right); - return fragment_check_in_right; + 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.visitor_register_print) - public void print(View view) { + @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.visitor_register_add) - public void add(View view) { - - } - - @OnClick(R.id.visitor_register_save) - public void save(View view) { - if (selectedVisitor == null || selectedInterviewee == null) { + @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) { + 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); - VisitorCheckInMng.getInstance().add(params); + 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.visitor_reason_tv) - 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); + @OnClick(R.id.fragment_check_in_right_visitor_reason) + 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) { - left.setTitle(item.getName()); + public void checkInFromHomePage(CheckInQueryItem item) { + fragment_check_in_left_interviewee_radio.performClick(); } - public void visitorCheckIn(VisitorQueryItem item) { - left.setTitle(item.getName()); - leftMobilePhone.setText(item.getMobilePhone()); - leftCompanyName.setText(item.getCompanyName()); - leftIdentityNumber.setText(item.getIdentify()); - leftPhoto.setImageURI(Uri.parse(AppApi.CHENXINGGROUND_IMAGEURL_BASE + item.getImagePath())); + public CheckInRightVisitorCell getFragment_check_in_right_visitor_cell() { + return this.fragment_check_in_right_visitor_cell; } - 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 CheckInRightIntervieweeCell getFragment_check_in_right_interviewee_cell() { + return this.fragment_check_in_right_interviewee_cell; } - public void setVisitorInfo(VisitorQueryItem item) { - left.setTitle(item.getName()); - leftCompanyName.setText(item.getCompanyName()); - leftIdentityNumber.setText(item.getIdentify()); - leftMobilePhone.setText(item.getPhone()); - leftPhoto.setImageURI(Uri.parse(AppApi.CHENXINGGROUND_IMAGEURL_BASE + item.getImagePath())); - selectedVisitor = item; + public CheckInLeftInterviewee get_fragment_check_in_left_interviewee() { + return fragment_check_in_left_interviewee; } - public void setIntervieweeInfo(final VisitorQueryItem item) { - right.setTitle(item.getName()); - rightDepartment.setText(item.getDeptName()); - rightPost.setText(item.getPostName()); - rightMobilePhone.setOnClickListener(new View.OnClickListener(){ - @Override - public void onClick(View view) { - Toast.makeText(MainActivity.getInstance(), "姝e湪鍛煎彨鎵嬫満"+item.getMobilePhone(), Toast.LENGTH_SHORT).show(); - } - }); - rightTel.setOnClickListener(new View.OnClickListener(){ - @Override - public void onClick(View view) { - Toast.makeText(MainActivity.getInstance(), "姝e湪鍛煎彨搴ф満"+item.getPhone(), Toast.LENGTH_SHORT).show(); - } - }); - rightPhoto.setImageURI(Uri.parse(AppApi.CHENXINGGROUND_IMAGEURL_BASE + item.getImagePath())); - selectedInterviewee = item; + public CheckInLeftVisitor get_fragment_check_in_left_visitor() { + return fragment_check_in_left_visitor; } - public void setVisitPurposeList(List<String> visitPurposeList) { - this.visitPurposeList = visitPurposeList; + 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