smcsServices.service( 'VisitInstitutionCacheService', [ '$rootScope','$http', 'BaseURL','DataSourceService', function( $rootScope,$http,BaseURL,DataSourceService ) {
var service = {
synVisit: function (synvtdatetime) {
$http({
method: 'post',
cache: false,
url: BaseURL + 'SysCommonCodeTransform/findVisitInstitution.do',
params: {
datetime: synvtdatetime
}
}).success(function(response, status, headers, config) {
try{
var obj=response.VisitInstitution;
var synobj=response.synvisitlist;
//测试开发 以后优化为动态创建表
var objstr=JSON.stringify(obj[0]);
console.log("obj[0]===="+objstr);
var objjson=JSON.parse(objstr);
for(var key in objjson){
console.log("objjson的key为===="+key);
}
//测试开发 以后优化为动态创建表
var db = DataSourceService.getConnection();
//console.log("synvisitlist synobj[0].syndatetime==="+synobj[0].syndatetime);
//var db = openDatabase('mydb14', '1.0', 'Test DB', 6 * 1024 * 1024);
db.transaction(function (tx) {
tx.executeSql('CREATE Table If Not Exists VisitInstitution (id,AKB020, AKB021,AKA020,AKA101)');
tx.executeSql('DELETE FROM syncachecode WHERE syntablename="VisitInstitution"');
tx.executeSql('INSERT INTO syncachecode (syntablename, syndatetime) VALUES ("VisitInstitution","'+synobj[0].syndatetime+'")');
for(var i=0;i<obj.length;i++){
var objAKB020=obj[i].AKB020+"";
var objAKB021=obj[i].AKB021+"";
var objAKA020=obj[i].AKA020+"";
var objAKA101=obj[i].AKA101+"";
if(synvtdatetime!="1970-01-01 00:00:00"){
//初始化时删除语句不执行。
//同步数据时先删除后插入。
tx.executeSql('DELETE FROM VisitInstitution WHERE ID=?', [obj[i].ID]);
}
tx.executeSql('INSERT INTO VisitInstitution (id,AKB020, AKB021,AKA020,AKA101) VALUES ("'+obj[i].ID+'","'+objAKB020+'","'+objAKB021+'","'+objAKA020+'","'+objAKA101+'")');
}
});
}catch(e){
console.log(e.name + " : " + e.message);
}
});
},
initSysCode: function () {
var syndatetime="";
//var db = openDatabase('mydb14', '1.0', 'Test DB', 6 * 1024 * 1024);
var db = DataSourceService.getConnection();
db.transaction(function (tx) {
tx.executeSql('select * from syncachecode where syntablename="VisitInstitution" ', [], function (tx, results) {
var len = results.rows.length;
syndatetime=results.rows.item(0)['syndatetime'];
console.log("前台数据库CenterReimburs的同步时间为"+results.rows.item(0)['syndatetime']);
service.synVisit(syndatetime);
}, null);
});
}
}
return service;
}]);
控制台:
obj[0]===={"AKA101":"11","AKB020":"02162001","AKB021":"西城区西长安街街道灵境社区卫生服务站","ID":"11010602162001","AKA020":"xcqxcajjdljsqwsfwz"}
objjson的key为====AKA101
objjson的key为====AKB020
objjson的key为====AKB021
objjson的key为====ID
objjson的key为====AKA020
web db 动态创建表
web SQL动态创建数据库表,和后台数据库同步。
第一次建表时mydatetime=“1970”年,以后的时后台返回的日期时间作为同步时间。