package cn.com.basic.face.service.sync.down; /** * Created by Administrator on 2017/7/25 0025. */ import org.xutils.http.RequestParams; import org.xutils.x; import java.text.SimpleDateFormat; import cn.com.basic.face.base.BaseApplication; import cn.com.basic.face.discern.common.BaseCommonCallBack; import cn.com.basic.face.discern.common.SqliteSqlBean; import cn.com.basic.face.service.sqlite.SynchronRecordDao; import cn.com.basic.face.util.AppApi; import cn.com.basic.face.util.SqliteSqlUtil; /** * 数据向下同步服务接口 * Created by SJW * 2017/7/18 0018. */ public class DataDownSyn { public static DataDownSyn instance = new DataDownSyn(); public static DataDownSyn getInstance() { return instance; } /*** * 向下同步,请求服务端,本地更新对应的数据库 * @param tableName 表名 * @return */ public void serviceToClient(final String tableName) { try { RequestParams params = getParams(tableName); x.http().post(params, new BaseCommonCallBack() { public void success() { Long time=(Long)resultBean.getData(); SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String synTime = format.format(time); if(SynchronRecordDao.getInstance().getSynRecord(tableName)==null){ SynchronRecordDao.getInstance().insertSynRecord(tableName,synTime); }else{ SynchronRecordDao.getInstance().updateSynRecord(tableName,synTime); } SqliteSqlUtil.insert(getExtraList(SqliteSqlBean.class)); } }); } catch (Exception e) { e.printStackTrace(); } } public static RequestParams getParams(String tableName) { RequestParams params = new RequestParams(AppApi.BASE_URL + AppApi.DOWN_SYNCHRON); params.addBodyParameter("tableName", tableName); params.addBodyParameter("synDate", SynchronRecordDao.getInstance().getSynRecord(tableName)==null?"":SynchronRecordDao.getInstance().getSynRecord(tableName).getSynchronTime()); params.addBodyParameter("deviceCompanyId", BaseApplication.getInstance().getAndroidDevice().getCompanyId()); return params; } }