From d9ffa50c7e8d6b8c3157690aef8e2a70af1d1695 Mon Sep 17 00:00:00 2001
From: houxiao <houxiao@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期三, 09 八月 2017 13:58:01 +0800
Subject: [PATCH] rtps server (not ok)
---
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java | 283 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 282 insertions(+), 1 deletions(-)
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java
index 941da8a..7b5c1b0 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java
@@ -1,6 +1,287 @@
package cn.com.basic.face.service.sqlite;
-public class CheckInDao {
+import android.content.ContentValues;
+import android.database.Cursor;
+import android.database.CursorJoiner;
+import android.database.sqlite.SQLiteDatabase;
+import org.xutils.http.RequestParams;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import cn.com.basic.face.base.BaseApplication;
+import cn.com.basic.face.base.Config;
+import cn.com.basic.face.base.MainActivity;
+import cn.com.basic.face.discern.common.CommonVariables;
+import cn.com.basic.face.discern.common.ResultBean;
+import cn.com.basic.face.discern.entity.Visit;
+import cn.com.basic.face.discern.entity.VisitDetail;
+import cn.com.basic.face.discern.query.item.CheckInQueryItem;
+import cn.com.basic.face.discern.query.item.OfflineAttenderRegisterItem;
+import cn.com.basic.face.discern.query.item.OfflineVisitItem;
+
+
+public class CheckInDao extends BaseDao{
+
+ public static CheckInDao instance = new CheckInDao();
+ public static CheckInDao getInstance() {
+ return instance;
+ }
+
+ /**
+ * 鏉ヨ鐧昏宸﹁竟鍒楄〃
+ * @param searchText
+ * @param pageNum
+ * @param isVisitorList true涓鸿瀹㈠垪琛紝false涓轰汉鍛樺垪琛�
+ * 杩斿洖 ResultBean {
+ * ....
+ * CheckInQueryItem
+ * }
+ */
+ public ResultBean findCheckInLeftList(boolean isVisitorList, String searchText, int pageNum) {
+ {
+ SQLiteDatabase db = MainActivity.getInstance().db;
+ ResultBean resultBean = new ResultBean();
+ try {
+ String sql="SELECT" +
+ " a.register_id," +
+ "a.username," +
+ "a.surveillance_photo," +
+ "d.company_name," +
+ "a.tel," +
+ "a.identify_num," +
+ "b.dept_name," +
+ "d.company_id," +
+ "e.post_name," +
+ "a.mobile_phone," +
+ "a.warning," +
+ "a.company" +
+ " FROM" +
+ " register a" +
+ " LEFT JOIN company d ON d.company_id = a.company_id" +
+ " LEFT JOIN department b ON a.department_id = b.dept_id" +
+ " LEFT JOIN post e ON e.post_id = a.post_id" +
+ " LEFT JOIN ( SELECT register_id, device_company_id from employee ) f ON f.register_id = a.register_id" +
+ " WHERE" +
+ " 1 = 1";
+ String deviceCompanyId = BaseApplication.getInstance().getAndroidDevice().getCompanyId();
+ if(isVisitorList) {
+ sql += " AND ( f.device_company_id != " + deviceCompanyId+" OR f.device_company_id IS NULL"+")";
+ }else{
+ sql += " AND ( f.device_company_id = " + deviceCompanyId + " or a.visitor_or_attender='attender')";
+ }
+
+ if(searchText != null && !searchText.trim().isEmpty()) {
+ sql += " AND a.username LIKE '%"+ searchText + "%'";
+ }
+ sql+=" order by a.name_en";
+
+ String count = "select count(*) as count from (" + sql + " ) _table";
+ sql += " LIMIT " + getStartIndex(pageNum) + "," + CommonVariables.Page.DEFAULT_PAGE_SIZE;
+ List<CheckInQueryItem> list = new ArrayList<CheckInQueryItem>();
+ int b = list.size();
+ CheckInQueryItem cqi = null;
+ Cursor c = db.rawQuery(sql,new String[]{});
+ Cursor c_count = db.rawQuery(count,new String[]{});
+ while (c.moveToNext()) {
+ cqi = new CheckInQueryItem();
+ cqi.setRegisterId(c.getString(c.getColumnIndex("register_id")));
+ cqi.setUsername(c.getString(c.getColumnIndex("username")));
+ cqi.setSurveillancePhoto(c.getString(c.getColumnIndex("surveillance_photo")));
+ cqi.setCompanyName(c.getString(c.getColumnIndex("company_name")));
+ cqi.setTel(c.getString(c.getColumnIndex("tel")));
+ cqi.setIdentifyNum(c.getString(c.getColumnIndex("identify_num")));
+ cqi.setDeptName(c.getString(c.getColumnIndex("dept_name")));
+ cqi.setCompanyId(c.getString(c.getColumnIndex("company_id")));
+ cqi.setPostName(c.getString(c.getColumnIndex("post_name")));
+ cqi.setMobilePhone(c.getString(c.getColumnIndex("mobile_phone")));
+ String company = c.getString(c.getColumnIndex("company"));
+ if (company != null && !"".equals(company)) {
+ cqi.setCompanyName(company);
+ }
+ cqi.setWarning(c.getString(c.getColumnIndex("warning")));
+ list.add(cqi);
+ }
+ Integer total = null;
+ while (c_count.moveToNext()) {
+ total = c_count.getInt(c_count.getColumnIndex("count"));
+ }
+ resultBean.setTotalPages(getTotalPageSize(total));
+ resultBean.setPageNum(pageNum);
+ resultBean.setData(list);
+ return resultBean;
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return resultBean;
+ }
+ }
+
+ public boolean hasOfflineCheckInData() {
+ Cursor c = MainActivity.getInstance().db.rawQuery("select count(*) from visit where 1=1 and is_synchron='N'", new String[]{});
+ c.moveToFirst();
+ return c.getInt(0) > 0 ? true : false;
+ }
+
+ public ResultBean findCheckInLeftVisitorListByVisitorId(String registerId) {
+ SQLiteDatabase db = MainActivity.getInstance().db;
+ ResultBean resultBean = new ResultBean();
+ try {
+ String sql="SELECT" +
+ " a.register_id," +
+ " a.username," +
+ " a.surveillance_photo," +
+ " d.company_name," +
+ " a.tel," +
+ " a.identify_num," +
+ " b.dept_name," +
+ " d.company_id," +
+ " e.post_name," +
+ " a.mobile_phone," +
+ " a.warning" +
+ " FROM" +
+ " register a" +
+ " LEFT JOIN company d ON d.company_id = a.company_id" +
+ " LEFT JOIN department b ON a.department_id = b.dept_id" +
+ " LEFT JOIN post e ON e.post_id = a.post_id" +
+ " WHERE" +
+ " 1 = 1";
+ sql += " AND a.register_id='"+ registerId + "'";
+ sql+=" order by a.name_en";
+
+ String count = "select count(*) as count from (" + sql + " ) _table";
+ sql += " LIMIT " + getStartIndex(1) + "," + CommonVariables.Page.DEFAULT_PAGE_SIZE;
+ List<CheckInQueryItem> list = new ArrayList<CheckInQueryItem>();
+ int b = list.size();
+ CheckInQueryItem cqi = null;
+ Cursor c = db.rawQuery(sql,new String[]{});
+ Cursor c_count = db.rawQuery(count,new String[]{});
+ while (c.moveToNext()) {
+ cqi = new CheckInQueryItem();
+ cqi.setRegisterId(c.getString(c.getColumnIndex("register_id")));
+ cqi.setUsername(c.getString(c.getColumnIndex("username")));
+ cqi.setSurveillancePhoto(c.getString(c.getColumnIndex("surveillance_photo")));
+ cqi.setCompanyName(c.getString(c.getColumnIndex("company_name")));
+ cqi.setTel(c.getString(c.getColumnIndex("tel")));
+ cqi.setIdentifyNum(c.getString(c.getColumnIndex("identify_num")));
+ cqi.setDeptName(c.getString(c.getColumnIndex("dept_name")));
+ cqi.setCompanyId(c.getString(c.getColumnIndex("company_id")));
+ cqi.setPostName(c.getString(c.getColumnIndex("post_name")));
+ cqi.setMobilePhone(c.getString(c.getColumnIndex("mobile_phone")));
+ cqi.setWarning(c.getString(c.getColumnIndex("warning")));
+ list.add(cqi);
+ }
+ Integer total = null;
+ while (c_count.moveToNext()) {
+ total = c_count.getInt(c_count.getColumnIndex("count"));
+ }
+ resultBean.setTotalPages(getTotalPageSize(total));
+ resultBean.setPageNum(1);
+ resultBean.setData(list);
+ return resultBean;
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return resultBean;
+ }
+
+ public List<OfflineVisitItem> readOfflineVisitItemFromLocal() {
+ String sql = "SELECT\n" +
+ " a.visit_id,\n" +
+ " a.visit_reason_id,\n" +
+ " a.remark,\n" +
+ " a.enter_time,\n" +
+ " a.exit_time,\n" +
+ " a.visitor_type_id,\n" +
+ " a.visitor_id,\n" +
+ " a.visitor_company_id,\n" +
+ " a.visitee_id,\n" +
+ " a.visitee_company_id,\n" +
+ " a.current_state_id,\n" +
+ " a.warning,\n" +
+ " a.update_time,\n" +
+ " a.is_synchron,\n" +
+ " a.create_time,\n" +
+ " a.device_company_id\n" +
+ "FROM\n" +
+ " visit a\n" +
+ "WHERE\n" +
+ " 1 = 1\n" +
+ "AND a.is_synchron = 'N'\n" +
+ " limit 1";
+// "AND visitor_id = '"+registerId+"'";
+ List<OfflineVisitItem> items = new ArrayList<>();
+ Cursor c = MainActivity.getInstance().db.rawQuery(sql, new String[]{});
+ while (c.moveToNext()) {
+ OfflineVisitItem item = new OfflineVisitItem();
+ item.setVisitId(c.getString(c.getColumnIndex("visit_id")));
+ item.setVisitReasonId(c.getString(c.getColumnIndex("visit_reason_id")));
+ item.setRemark(c.getString(c.getColumnIndex("remark")));
+ item.setEnterTime(c.getString(c.getColumnIndex("enter_time")));
+ item.setExitTime(c.getString(c.getColumnIndex("exit_time")));
+ item.setVisitorTypeId(c.getString(c.getColumnIndex("visitor_type_id")));
+ item.setVisitorId(c.getString(c.getColumnIndex("visitor_id")));
+ item.setVisitorCompanyId(c.getString(c.getColumnIndex("visitor_company_id")));
+ item.setVisiteeId(c.getString(c.getColumnIndex("visitee_id")));
+ item.setVisiteeCompanyId(c.getString(c.getColumnIndex("visitee_company_id")));
+ item.setCurrentStateId(c.getString(c.getColumnIndex("current_state_id")));
+ item.setWarning(c.getString(c.getColumnIndex("warning")));
+ item.setUpdateTime(c.getString(c.getColumnIndex("update_time")));
+ item.setIsSynchron(c.getString(c.getColumnIndex("is_synchron")));
+ item.setDeviceCompanyId(c.getString(c.getColumnIndex("device_company_id")));
+ item.setCreateTime(c.getString(c.getColumnIndex("create_time")));
+ items.add(item);
+ }
+ return items;
+ }
+
+ /**
+ * 绂荤嚎瀛樺偍璁垮鐧昏淇℃伅
+ * @param item
+ */
+ public long addOfflineVisit(OfflineVisitItem item) {
+ ContentValues contentValues = new ContentValues();
+ contentValues.put("visit_id",item.getVisitId());
+ contentValues.put("visit_reason_id",item.getVisitReasonId());
+ contentValues.put("visit_reason",item.getVisitReason());
+ contentValues.put("remark",item.getRemark());
+ contentValues.put("enter_time",item.getEnterTime());
+ contentValues.put("exit_time",item.getExitTime());
+ contentValues.put("visitor_type_id",item.getVisitorTypeId());
+ contentValues.put("visitor_id",item.getVisitorId());
+ contentValues.put("visitor_company_id",item.getVisitorCompanyId());
+ contentValues.put("visitee_id",item.getVisiteeId());
+ contentValues.put("visitee_company_id",item.getVisiteeCompanyId());
+ contentValues.put("current_state_id",item.getCurrentStateId());
+ contentValues.put("warning",item.getWarning());
+ contentValues.put("update_time",item.getUpdateTime());
+ contentValues.put("is_synchron",item.getIsSynchron());
+ contentValues.put("device_company_id",item.getDeviceCompanyId());
+ contentValues.put("create_time",item.getCreateTime());
+ contentValues.put("device_id", item.getDeviceId());
+
+ long registerId = MainActivity.getInstance().db.insert("visit", "", contentValues);
+ return registerId;
+ }
+
+
+ public void updateVisitorId(String sqliteVisitorId, String mysqlVisitorId) {
+ if (sqliteVisitorId == null || "".equals(sqliteVisitorId.trim())
+ || mysqlVisitorId == null || "".equals(mysqlVisitorId.trim())
+ ) {
+ return;
+ }
+ MainActivity.getInstance().db.execSQL("update visit set visitor_id='"+mysqlVisitorId+"' where 1=1 and visitor_id='"+sqliteVisitorId+"'");
+ }
+
+ public void updateVisiteeId(String sqliteVisiteeId, String mysqlVisiteeId) {
+ if (sqliteVisiteeId == null || "".equals(sqliteVisiteeId.trim())
+ || mysqlVisiteeId == null || "".equals(mysqlVisiteeId.trim())
+ ) {
+ return;
+ }
+ MainActivity.getInstance().db.execSQL("update visit set visitee_id='"+mysqlVisiteeId+"' where 1=1 and visitee_id='"+sqliteVisiteeId+"'");
+ }
}
--
Gitblit v1.8.0