xuxiuxi
2017-03-28 d5acf96e62637819d1cd55b516dd03e9232e3971
VisitFace/DemoForBsk/app/src/main/java/com/bsk/zhangbo/demoforbsk/ui/fragment/VisitorRegisterFragment.java
@@ -2,8 +2,10 @@
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
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.RadioGroup;
@@ -13,16 +15,28 @@
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.Constant;
import com.bsk.zhangbo.demoforbsk.widget.SingleSelectionPopup;
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;
@@ -49,7 +63,15 @@
    private TextView mDutyTv;
    private TextView mPhoneTv;
    private TextView mTelTv;
    //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;
    public static VisitorRegisterFragment getInstance() {
        return instance;
@@ -89,12 +111,14 @@
                    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;
@@ -102,6 +126,22 @@
            }
        });
    }
    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) {
                    if(!t1.getDeptName().equals(t2.getDeptName())) {
                        return t1.getDeptName().compareTo(t2.getDeptName());
                    }
                }
                return t1.getName().compareTo(t2.getName());
            }
        });
    }
    @Override
    protected void initData() {
@@ -114,6 +154,9 @@
            item.setIdentify("1001"+i);
            item.setImagePath("test.png");
            item.setPhone("136913486"+i);
            item.setMobilePhone("1369134876"+i);
            item.setPostName("职务"+i);
            item.setDeptName("部门"+(i%4));
            mList.add(item);
        }
        mAdapter.setList(mList);
@@ -145,7 +188,6 @@
        fromPhone = (TextView)mVisitorFrom.findViewById(R.id.visitor_view_from_phone);
        visitorPhoto = (ImageView)mVisitorFrom.findViewById(R.id.visitor_view_from_photo);
        mVisitorTo = (VisitorView) mViewRight.findViewById(R.id.visitor_to);
        mDepartmentTv = (TextView)mVisitorTo.findViewById(R.id.view_visitor_to_deptartment);
@@ -156,15 +198,56 @@
        mVisitorFrom.setType(Constant.VISITOR_FROM);
        mVisitorTo.setType(Constant.VISITOR_TO);
        mVisitorFrom.setTitle("dasfasdfasdf");
        mVisitorTo.setTitle("dasfasdfasdf");
        mVisitorFrom.setTitle("");
        mVisitorTo.setTitle("");
        ViewUtils.inject(this, mVisitorTo);
        ViewUtils.inject(this, mViewRight);
        return mViewRight;
    }
    @OnClick(R.id.visitor_register_back)
    public void back(View view) {
        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) {
@@ -184,25 +267,26 @@
        companyNameTv.setText(item.getCompanyName());
        identity.setText(item.getIdentify());
        fromPhone.setText(item.getPhone());
        selectedVisitor = item;
    }
    public void setIntervieweeInfo(VisitorQueryItem item) {
    public void setIntervieweeInfo(final VisitorQueryItem item) {
        mVisitorTo.setTitle(item.getName());
        mDepartmentTv.setText("部门");
        mDutyTv.setText("财务");
        mDepartmentTv.setText(item.getDeptName());
        mDutyTv.setText(item.getPostName());
        mPhoneTv.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View view) {
                Toast.makeText(MainActivity.getInstance(), "正在呼叫手机", Toast.LENGTH_SHORT).show();
                Toast.makeText(MainActivity.getInstance(), "正在呼叫手机"+item.getMobilePhone(), Toast.LENGTH_SHORT).show();
            }
        });
        mTelTv.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View view) {
                Toast.makeText(MainActivity.getInstance(), "正在呼叫座机", Toast.LENGTH_SHORT).show();
                Toast.makeText(MainActivity.getInstance(), "正在呼叫座机"+item.getPhone(), Toast.LENGTH_SHORT).show();
            }
        });
        selectedInterviewee = item;
    }
    public void setVisitPurposeList(List<String> visitPurposeList) {