From c468bdae8f833ee80d4b2175c6043267a6fb3501 Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期五, 28 七月 2017 12:23:08 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SurveillanceMng.java | 3 + VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/AttendanceMng.java | 9 ++++ VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/VisitMng.java | 10 +++++ VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java | 53 ++++++++++++++++++++++++++ VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/DateUtil.java | 22 +++++++++++ 5 files changed, 97 insertions(+), 0 deletions(-) diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/AttendanceMng.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/AttendanceMng.java index 5fcb38e..bc08bdd 100644 --- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/AttendanceMng.java +++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/AttendanceMng.java @@ -115,4 +115,13 @@ } } + public void removeLastMonthData() { + try { + String sql = "delete from attendance a where 1=1 and a.time< '" + DateUtil.getPreviousMonthLastDay() + "'"; + MainActivity.getInstance().db.execSQL(sql); + } catch (Exception e) { + e.printStackTrace(); + } + + } } diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java index 05370b0..45ee940 100644 --- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java +++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java @@ -1,5 +1,7 @@ package cn.com.basic.face.service; +import android.database.Cursor; +import android.database.sqlite.SQLiteDatabase; import android.widget.Toast; import cn.com.basic.face.base.BaseApplication; @@ -31,6 +33,7 @@ import cn.com.basic.face.discern.common.BaseCommonCallBack; import cn.com.basic.face.discern.query.item.CheckInQueryItem; import cn.com.basic.face.util.CharacterParser; +import cn.com.basic.face.util.DateUtil; import cn.com.basic.face.util.SqliteSqlUtil; //鐧昏 @@ -212,4 +215,54 @@ public boolean hasOfflineCheckInData() { return CheckInDao.getInstance().hasOfflineCheckInData(); } + + public void removeVisitorLastMonthData() { + try { + SQLiteDatabase db = MainActivity.getInstance().db; + 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(); + sql += " AND ( f.device_company_id != " + deviceCompanyId+" OR f.device_company_id IS NULL"+")"; + + sql+=" order by a.name_en"; + + String count = "select count(*) as count from (" + sql + " ) _table"; + sql += " LIMIT 0, 100000"; + List<CheckInQueryItem> list = new ArrayList<CheckInQueryItem>(); + int b = list.size(); + CheckInQueryItem cqi = null; + Cursor c = db.rawQuery(sql,new String[]{}); + while (c.moveToNext()) { + cqi = new CheckInQueryItem(); + cqi.setRegisterId(c.getString(c.getColumnIndex("register_id"))); + list.add(cqi); + } + for (CheckInQueryItem item : list) { + String sql1 = "delete from register a where 1=1 and a.register_id = '" + item.getRegisterId() + "'"; + MainActivity.getInstance().db.execSQL(sql1); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + } diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SurveillanceMng.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SurveillanceMng.java index 3932137..0cebae6 100644 --- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SurveillanceMng.java +++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SurveillanceMng.java @@ -109,5 +109,8 @@ } } + public void removePhotoFileWhenStorageIsSlow() { + + } } diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/VisitMng.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/VisitMng.java index 4dd5048..7817d88 100644 --- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/VisitMng.java +++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/VisitMng.java @@ -16,6 +16,7 @@ import cn.com.basic.face.discern.query.item.VisitQueryItem; import cn.com.basic.face.service.sqlite.VisitDao; import cn.com.basic.face.util.AppApi; +import cn.com.basic.face.util.DateUtil; public class VisitMng extends BaseMng { @@ -84,4 +85,13 @@ } } + public void removeLastMonthData() { + try { + String sql = "delete from visit a where 1=1 and a.enter_time< '" + DateUtil.getPreviousMonthLastDay() + "'"; + MainActivity.getInstance().db.execSQL(sql); + } catch (Exception e) { + e.printStackTrace(); + } + } + } diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/DateUtil.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/DateUtil.java index 82fea88..122bfdb 100644 --- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/DateUtil.java +++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/DateUtil.java @@ -1,6 +1,7 @@ package cn.com.basic.face.util; import java.text.SimpleDateFormat; +import java.util.Calendar; import java.util.Date; public class DateUtil { @@ -33,5 +34,26 @@ } } + public static String getPreviousMonthLastDay() { + Calendar aCalendar = Calendar.getInstance(); + // add -1 month to current month + aCalendar.add(Calendar.MONTH, -1); + // set DATE to 1, so first date of previous month + aCalendar.set(Calendar.DATE, 1); + + Date firstDateOfPreviousMonth = aCalendar.getTime(); + + // set actual maximum date of previous month + aCalendar.set(Calendar.DATE, aCalendar.getActualMaximum(Calendar.DAY_OF_MONTH)); + //read it + Date lastDateOfPreviousMonth = aCalendar.getTime(); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + try { + return sdf.format(lastDateOfPreviousMonth) + " 23:59:59"; + } catch (Exception e) { + e.printStackTrace(); + return ""; + } + } } -- Gitblit v1.8.0