From afdb5d648f8ddb87f2055f7d3a59b8725ec83d8e Mon Sep 17 00:00:00 2001
From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期三, 19 七月 2017 16:18:07 +0800
Subject: [PATCH] 

---
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/CheckInFragment.java |  126 ++++++++++++++++++++++++++++++++++++-----
 1 files changed, 109 insertions(+), 17 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 c1c6af4..11d8f56 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,13 +1,14 @@
 package cn.com.basic.face.fragment;
 
+import android.content.Context;
 import android.text.Editable;
 import android.text.TextWatcher;
 import android.view.View;
+import android.view.inputmethod.InputMethodManager;
 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;
@@ -32,7 +33,6 @@
 import org.xutils.http.RequestParams;
 
 import java.text.SimpleDateFormat;
-import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 
@@ -60,7 +60,7 @@
     @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;
+    private EditText 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)
@@ -69,6 +69,12 @@
     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 String visitorSearchText;
+    private String intervieweeSearchText;
+    private boolean ignoreSearchText = false;
+
+    private int pageNum = 1;
 
     private CheckInMng manager = CheckInMng.getInstance();
 
@@ -85,7 +91,21 @@
                 .setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
                     @Override
                     public void onCheckedChanged(RadioGroup radioGroup, int i) {
-                        reloadCheckInLeftList();
+                        if (fragment_check_in_left_visitor_radio.isChecked()) {
+                            List prevList = fragment_check_in_left_visitor.getPrevList();
+                            if (prevList == null || prevList.size() == 0) {
+                                reloadCheckInLeftList();
+                            } else {
+                                ignoreSearchText = true;
+                                fragment_check_in_left_search_edit_text.setText(visitorSearchText);
+                            }
+                        } else {
+                            fragment_check_in_left_search_edit_text.setText(intervieweeSearchText);
+                            List prevList = fragment_check_in_left_interviewee.getPrevList();
+                            if (prevList == null || prevList.size() == 0) {
+                                reloadCheckInLeftList();
+                            }
+                        }
                     }
                 });
 
@@ -100,18 +120,48 @@
         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(); }
+            public void afterTextChanged(Editable editable) {
+                if (fragment_check_in_left_visitor_radio.isChecked()) {
+                    visitorSearchText = editable.toString();
+                } else {
+                    intervieweeSearchText = editable.toString();
+                }
+                reloadCheckInLeftList();
+            }
         });
 
+    }
+
+    public void append() {
+        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(), pageNum, true);
+    }
+
+    public void addPageNum() {
+        pageNum++;
     }
 
     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());
+        if (ignoreSearchText) {
+            ignoreSearchText = false;
+        } else {
+            pageNum = 1;
+            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(), pageNum, false);
+        }
+    }
+
+    public void selectVisiteeRadio() {
+        fragment_check_in_left_interviewee_radio.callOnClick();
+        fragment_check_in_left_interviewee_radio.setChecked(true);
     }
 
     @Override
@@ -131,7 +181,7 @@
     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) { }
+    public void fragment_check_in_right_add_click(View view) { resetForm(); }
 
     @OnClick(R.id.fragment_check_in_right_save)
     public void fragment_check_in_right_save_click(View view) {
@@ -151,7 +201,9 @@
             return;
         }
         RequestParams params = new RequestParams();
-        params.addBodyParameter(Visit.FieldNames.visitReasonId, DictionaryMng.getInstance().getId(fragment_check_in_right_visitor_reason.getText().toString()));
+        String visitReasonId = DictionaryMng.getInstance().getId(fragment_check_in_right_visitor_reason.getText().toString());
+        params.addBodyParameter(Visit.FieldNames.visitReasonId, visitReasonId);
+        params.addBodyParameter(Visit.FieldNames.visitReason, 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());
@@ -159,22 +211,59 @@
         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(Visit.FieldNames.currentStateId, ""+CommonVariables.VisitType.VISITOR_ENTERED);
+        params.addBodyParameter(Visit.FieldNames.warning, visitor.getWarning());
 
-        params.addBodyParameter(VisitDetail.FieldNames.stateId, ""+CommonVariables.StatusID.VISITOR_ENTERED);
+        params.addBodyParameter(VisitDetail.FieldNames.stateId, ""+CommonVariables.VisitType.VISITOR_ENTERED);
         params.addBodyParameter(VisitDetail.FieldNames.createTime, sdf.format(new Date()));
-        params.addBodyParameter(VisitDetail.FieldNames.deviceId, BaseApplication.getInstance().getDevice().getDeviceId());
-
-        CheckInMng.getInstance().add(params);
+        params.addBodyParameter(VisitDetail.FieldNames.deviceId, BaseApplication.getInstance().getAndroidDevice().getDeviceId());
+        CheckInMng.getInstance().add(params, visitReasonId);
     }
 
-    @OnClick(R.id.fragment_check_in_right_visitor_reason)
+    @OnClick(R.id.fragment_check_in_right_visitor_reason_text_view)
+    public void fragment_check_in_right_visitor_reason_linear_layout_click(View view) {
+        //fragment_check_in_right_visitor_reason_click(view);
+    }
+
+    //@OnClick(R.id.fragment_check_in_right_visitor_reason)
     public void fragment_check_in_right_visitor_reason_click(View view) {
+
+    }
+
+    @OnClick(R.id.fragment_check_in_right_visitor_reason_more)
+    public void fragment_check_in_right_visitor_reason_more_click(View view) {
+        InputMethodManager imm = (InputMethodManager)MainActivity.getInstance().getSystemService(
+                Context.INPUT_METHOD_SERVICE);
+        imm.hideSoftInputFromWindow(fragment_check_in_right_visitor_reason.getWindowToken(), 0);
         new SelectDialog(getView(), Constant.DialogSelectType.VISIT_REASON, new OkClickedListener() {
             public void onSelected(String value) {
                 fragment_check_in_right_visitor_reason.setText(value);
             }
-        });
+        }, fragment_check_in_right_visitor_reason.getText().toString());
+//        fragment_check_in_right_visitor_reason.setFocusable(false);
+//        fragment_check_in_right_visitor_reason.setClickable(false);
+    }
+
+    @OnClick(R.id.fragment_check_in_right_parent)
+    public void fragment_check_in_right_linear_layout_click(View view) {
+        InputMethodManager imm = (InputMethodManager)MainActivity.getInstance().getSystemService(
+                Context.INPUT_METHOD_SERVICE);
+        imm.hideSoftInputFromWindow(fragment_check_in_right_visitor_reason.getWindowToken(), 0);
+    }
+
+    @OnClick(R.id.fragment_check_in_left_parent)
+    public void fragment_check_in_left_parent_click(View view) {
+        InputMethodManager imm = (InputMethodManager)MainActivity.getInstance().getSystemService(
+                Context.INPUT_METHOD_SERVICE);
+        imm.hideSoftInputFromWindow(fragment_check_in_right_visitor_reason.getWindowToken(), 0);
+    }
+
+    @OnClick(R.id.fragment_check_in_right_visitor_reason_edit)
+    public void fragment_check_in_right_visitor_reason_edit_click(View view) {
+        fragment_check_in_right_visitor_reason.setFocusableInTouchMode(true);
+        fragment_check_in_right_visitor_reason.requestFocus();
+        InputMethodManager imm = (InputMethodManager)MainActivity.getInstance().getSystemService(Context.INPUT_METHOD_SERVICE);
+        imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0);
     }
 
     public void checkInFromHomePage(CheckInQueryItem item) {
@@ -204,5 +293,8 @@
         fragment_check_in_right_visitor_cell.resetForm();
     }
 
+    public void setVisitReasonText(String value) {
+        fragment_check_in_right_visitor_reason.setText(value);
+    }
 
 }

--
Gitblit v1.8.0