From d17be73f53c21c5ceae03fe8494c195f0bbf4abf Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期三, 29 三月 2017 14:10:19 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/com/bsk/zhangbo/demoforbsk/ui/fragment/VisitorRegisterFragment.java | 242 ++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 223 insertions(+), 19 deletions(-) diff --git a/VisitFace/DemoForBsk/app/src/main/java/com/bsk/zhangbo/demoforbsk/ui/fragment/VisitorRegisterFragment.java b/VisitFace/DemoForBsk/app/src/main/java/com/bsk/zhangbo/demoforbsk/ui/fragment/VisitorRegisterFragment.java index bda899e..a8d5a9d 100644 --- a/VisitFace/DemoForBsk/app/src/main/java/com/bsk/zhangbo/demoforbsk/ui/fragment/VisitorRegisterFragment.java +++ b/VisitFace/DemoForBsk/app/src/main/java/com/bsk/zhangbo/demoforbsk/ui/fragment/VisitorRegisterFragment.java @@ -1,27 +1,48 @@ package com.bsk.zhangbo.demoforbsk.ui.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; +import android.widget.TextView; +import android.widget.Toast; import com.bsk.zhangbo.demoforbsk.R; import com.bsk.zhangbo.demoforbsk.adapter.VisitorRecyclerViewAdapter; import com.bsk.zhangbo.demoforbsk.base.MainUIBaseFragment; +import com.bsk.zhangbo.demoforbsk.listeners.OkButtonClickedListener; +import com.bsk.zhangbo.demoforbsk.service.DictionaryMng; +import com.bsk.zhangbo.demoforbsk.service.VisitorCheckInMng; import com.bsk.zhangbo.demoforbsk.ui.activity.MainActivity; +import com.bsk.zhangbo.demoforbsk.util.AppApi; import com.bsk.zhangbo.demoforbsk.util.Constant; +import com.bsk.zhangbo.demoforbsk.widget.VisitPurposePopup; import com.bsk.zhangbo.demoforbsk.widget.VisitorView; import com.camnter.easyrecyclerview.widget.EasyRecyclerView; import com.lidroid.xutils.ViewUtils; +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.Collections; +import java.util.Comparator; 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.IntervieweeQueryItem; +import cn.com.basic.face.discern.query.item.VisitorQueryItem; /** * Created by Administrator on 2017/2/20 0020. @@ -31,12 +52,36 @@ private View mViewLeft,mViewRight; private RadioGroup mRGTop,mRGClass; private LinearLayout mLlRadioGroupClass; - private VisitorView mVisitorTo,mVisitorFrom; + private VisitorView right, left; private VisitorRecyclerViewAdapter mAdapter; private EasyRecyclerView mRecyclerView; - private List mList; + private List mList = new ArrayList();; private static VisitorRegisterFragment instance = new VisitorRegisterFragment(); + 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.visitor_register_search_et) + private EditText visitorRegisterSearchEt; + @ViewInject(R.id.visitor_register_rb_left) + private RadioButton visitorRegisterRbLeft; + @ViewInject(R.id.visitor_register_check_department) + private RadioButton visitorRegisterCheckDepartment; + private ImageView rightPhoto; public static VisitorRegisterFragment getInstance() { return instance; @@ -54,17 +99,25 @@ public void onCheckedChanged(RadioGroup radioGroup, int i) { switch (radioGroup.getCheckedRadioButtonId()){ case R.id.visitor_register_rb_left: + //Toast.makeText(MainActivity.getInstance(), "鏉ヨ浜哄憳", Toast.LENGTH_SHORT).show(); mLlRadioGroupClass.setVisibility(View.GONE); mAdapter = new VisitorRecyclerViewAdapter(getActivity(), Constant.VISITOR_FROM); + //mList.clear(); mAdapter.setList(mList); mRecyclerView.setAdapter(mAdapter); + int pageNum = 1; + VisitorCheckInMng.getInstance().findVisitorList(pageNum+"", visitorRegisterSearchEt.getText().toString(), true); break; case R.id.visitor_register_rb_right: + //Toast.makeText(MainActivity.getInstance(), "琚浜哄憳", Toast.LENGTH_SHORT).show(); mLlRadioGroupClass.setVisibility(View.VISIBLE); mAdapter = new VisitorRecyclerViewAdapter(getActivity(), Constant.VISITOR_TO); mAdapter.setVisitorToColor(VisitorRecyclerViewAdapter.TYPE_NAME); + //mList.clear(); mAdapter.setList(mList); mRecyclerView.setAdapter(mAdapter); + int pageNum1 = 1; + VisitorCheckInMng.getInstance().findIntervieweeList(pageNum1+"", visitorRegisterSearchEt.getText().toString(), true); break; } } @@ -76,29 +129,65 @@ case R.id.visitor_register_check_name: // mAdapter.setVisitorToTextColor(VisitorRecyclerViewAdapter.TYPE_NAME); mAdapter.setVisitorToColor(VisitorRecyclerViewAdapter.TYPE_NAME); + sort(mList, false); mAdapter.setList(mList); mRecyclerView.setAdapter(mAdapter); break; case R.id.visitor_register_check_department: // mAdapter.setVisitorToTextColor(VisitorRecyclerViewAdapter.TYPE_DEPARTMENT); mAdapter.setVisitorToColor(VisitorRecyclerViewAdapter.TYPE_DEPARTMENT); + sort(mList, true); mAdapter.setList(mList); mRecyclerView.setAdapter(mAdapter); + 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); + } + } + String name1 = t1.getName()==null?"":t1.getName(); + String name2 = t2.getName()==null?"":t2.getName(); + return name1.compareTo(name2); + } + }); + } + @Override protected void initData() { - - mList = new ArrayList(); - for (int i=0;i<25;i++){ - mList.add(""); - } - mAdapter.setList(mList); - mRecyclerView.setAdapter(mAdapter); + loadList(); } @Override @@ -119,13 +208,24 @@ @Override public View addRightLayout() { mViewRight = LayoutInflater.from(getActivity()).inflate(R.layout.visitor_register_right,null); - mVisitorFrom = (VisitorView) mViewRight.findViewById(R.id.visitor_from); - mVisitorTo = (VisitorView) mViewRight.findViewById(R.id.visitor_to); - mVisitorFrom.setType(Constant.VISITOR_FROM); - mVisitorTo.setType(Constant.VISITOR_TO); - mVisitorFrom.setTitle("dasfasdfasdf"); - mVisitorTo.setTitle("dasfasdfasdf"); - ViewUtils.inject(this, mVisitorTo); + left = (VisitorView) mViewRight.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) mViewRight.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, mViewRight); return mViewRight; } @@ -134,16 +234,120 @@ MainActivity.selectPage(0); } + @OnClick(R.id.visitor_register_print) + public void print(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) { + 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()); + + VisitorCheckInMng.getInstance().add(params); + } + + @OnClick(R.id.visitor_reason_tv) + public void visitorReason(View view) { + VisitPurposePopup popup1 = new VisitPurposePopup(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 visitorCheckIn(FacePhotoItem item) { - mVisitorFrom.setTitle(item.getName()); + left.setTitle(item.getName()); + } + + 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())); + /* + left = (VisitorView) mViewRight.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); + leftPhone = (TextView) left.findViewById(R.id.visitor_view_left_phone); + leftPhoto = (ImageView) left.findViewById(R.id.visitor_view_left_photo); + + right = (VisitorView) mViewRight.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); + */ + } 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.notifyDataSetChanged(); + mAdapter.setList(mList); + mRecyclerView.setAdapter(mAdapter); + } + + 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 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 void setVisitPurposeList(List<String> visitPurposeList) { + this.visitPurposeList = visitPurposeList; } } -- Gitblit v1.8.0