xuxiuxi
2017-07-23 d585985fbcbc7d9a33c13b0e62152c695c7e6d06


git-svn-id: http://192.168.1.226/svn/proxy@840 454eff88-639b-444f-9e54-f578c98de674
4个文件已修改
118 ■■■■■ 已修改文件
VisitFace/DemoForBsk/app/src/main/assets/db/aibatis_test_db 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java 96 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/DemoForBsk/app/src/main/res/values/strings.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/DemoForBsk/app/src/main/assets/db/aibatis_test_db
Binary files differ
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java
@@ -11,6 +11,7 @@
import cn.com.basic.face.discern.entity.VisitDetail;
import cn.com.basic.face.discern.query.condition.AttendanceQueryCondition;
import cn.com.basic.face.discern.query.condition.CheckInQueryCondition;
import cn.com.basic.face.discern.query.item.OfflineAttenderRegisterItem;
import cn.com.basic.face.discern.query.item.OfflineVisitItem;
import cn.com.basic.face.fragment.CheckInFragment;
import cn.com.basic.face.service.sqlite.CheckInDao;
@@ -186,8 +187,25 @@
    }
    public void sendOfflineCheckInToServer() {
    public void sendOfflineCheckInToServer(Integer mysqlVisitorId, long sqliteVisitorId) {
        RequestParams params = new RequestParams();
        List<OfflineAttenderRegisterItem> offlineAttenderRegisterItems = CheckInDao.getInstance().readOfflineAttenderFromLocal(sqliteVisitorId);
        for (OfflineAttenderRegisterItem item : offlineAttenderRegisterItems) {
            params.setUri(AppApi.BASE_URL +AppApi.VISIT_ADD);
            params.addBodyParameter(Visit.FieldNames.deviceCompanyId, BaseApplication.getInstance().getAndroidDevice().getCompanyId());
            x.http().post(params, new BaseCommonCallBack() {
                @Override
                public void success() {
                    SqliteSqlUtil.insert(getExtraList(SqliteSqlBean.class));
                    Toast.makeText(BaseApplication.getInstance(),"添加成功", Toast.LENGTH_SHORT).show();
                    CheckInFragment.getInstance().resetForm();
//                    if (visitReasonId == null || "".equals(visitReasonId)) {
//                        DictionaryMng.getInstance().loadVisitReasonList();
//                    }
                }
            });
        }
    }
    public boolean hasOfflineCheckInData() {
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java
@@ -17,6 +17,7 @@
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;
@@ -221,4 +222,99 @@
        }
        return resultBean;
    }
    public List<OfflineVisitItem> readOfflineVisitItemFromLocal(long registerId) {
        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" +
                        "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 entity
     */
    public void addOfflineVisit(OfflineVisitItem entity) {
        String sql =
                "INSERT INTO visit (\n" +
                        "    visit_id,\n" +
                        "    visit_reason_id,\n" +
                        "    remark,\n" +
                        "    enter_time,\n" +
                        "    exit_time,\n" +
                        "    visitor_type_id,\n" +
                        "    visitor_id,\n" +
                        "    visitor_company_id,\n" +
                        "    visitee_id,\n" +
                        "    visitee_company_id,\n" +
                        "    current_state_id,\n" +
                        "    warning,\n" +
                        "    update_time,\n" +
                        "    is_synchron,\n" +
                        "    device_company_id\n" +
                        ")\n" +
                        "VALUES\n" +
                        "    (\n" +
                        " '"+entity.getVisitId()+"', "+
                        " '"+entity.getVisitReasonId()+"', "+
                        " '"+entity.getRemark()+"', "+
                        " '"+entity.getEnterTime()+"', "+
                        " '"+entity.getExitTime()+"', "+
                        " '"+entity.getVisitorTypeId()+"', "+
                        " '"+entity.getVisitorId()+"', "+
                        " '"+entity.getVisitorCompanyId()+"', "+
                        " '"+entity.getVisiteeId()+"', "+
                        " '"+entity.getVisiteeCompanyId()+"', "+
                        " '"+entity.getCurrentStateId()+"', "+
                        " '"+entity.getWarning()+"', "+
                        " '"+entity.getUpdateTime()+"', "+
                        " 'N', "+
                        " '"+entity.getDeviceCompanyId()+"' "+
                        "    )";
        MainActivity.getInstance().db.execSQL(sql);
    }
}
VisitFace/DemoForBsk/app/src/main/res/values/strings.xml
@@ -32,7 +32,7 @@
    <string name="base_information">基本信息</string>
    <string name="visitor_information">来访信息</string>
    <string name="number">序号</string>
    <string name="attendance_time">考勤时间</string>
    <string name="attendance_time">时间</string>
    <string name="attendance_address">地点</string>
    <string name="attendance_type">考勤类型</string>
    <string name="device_set">本机系统设置</string>