@ -98,17 +98,20 @@ public class IdcServiceImpl implements IdcService {
/*下载任务*/
@Override
public BaseResponse download ( HttpServletRequest request , Map < String , Object > params ) {
return statusFile ( params , "basic_export_status" ) ;
return statusFile ( params , "basic_export_status" ) ;
}
@Override
public BaseResponse uploadStatus ( HttpServletRequest request , Map < String , Object > params ) {
return statusFile ( params , "basic_upload_status" ) ;
return statusFile ( params , "basic_upload_status" ) ;
}
@Override
public BaseResponse downloadStatus ( HttpServletRequest request , Map < String , Object > params ) {
return statusFile ( params , "basic_download_status" ) ;
return statusFile ( params , "basic_download_status" ) ;
}
private BaseResponse statusFile ( Map < String , Object > params , String tableName ) {
private BaseResponse statusFile ( Map < String , Object > params , String tableName ) {
String id = "" ;
if ( params . containsKey ( "taskId" ) & & params . get ( "taskId" ) ! = null ) {
id = params . get ( "taskId" ) . toString ( ) ;
@ -119,9 +122,9 @@ public class IdcServiceImpl implements IdcService {
Map < String , Object > map = map = dbDao . get ( "select * from " + tableName + " where id='" + id + "'" ) ;
if ( map = = null )
return ResultVOUtils . error ( 9000 , "下载任务不存在" ) ;
return ResultVOUtils . error ( 9000 , "下载任务不存在" + tableName ) ;
if ( ! ( map . get ( "cacheFilePath" ) ! = null & & FileUtils . isFileExist ( map . get ( "cacheFilePath" ) . toString ( ) ) ) )
return ResultVOUtils . error ( 9000 , "下载文件不存在 ") ;
return ResultVOUtils . error ( 9000 , "下载文件不存在 - " + tableName ) ;
String json = FileUtils . readFileAll ( map . get ( "cacheFilePath" ) . toString ( ) ) ;
JSONObject object = JSON . parseObject ( json ) ;
@ -211,8 +214,7 @@ public class IdcServiceImpl implements IdcService {
String [ ] syncTables = TableUtils . syncTables ( ) ;
for ( int i = 0 ; i < syncTables . length ; i + + ) {
String [ ] tnames = syncTables [ i ] . split ( "/" ) ;
boolean sync = ( ( tnames [ 0 ] = = null | | StringUtils . isEmpty ( tnames [ 0 ] ) | | ( tnames [ 0 ] ! = null & & tnames [ 0 ] . equals ( "null" ) ) ) & &
( tnames [ 1 ] = = null | | StringUtils . isEmpty ( tnames [ 1 ] ) | | ( tnames [ 1 ] ! = null & & tnames [ 1 ] . equals ( "null" ) ) ) ) | |
boolean sync = StringUtils . isEmpty ( tnames [ 0 ] ) | |
( ! StringUtils . isEmpty ( tnames [ 0 ] ) & & map ! = null & & map . get ( tnames [ 0 ] ) ! = null & & map . get ( tnames [ 0 ] ) . toString ( ) . equals ( "1" ) ) ;
saveIdcLog ( "---" , "" , map . get ( tnames [ 0 ] ) + syncTables [ i ] , 0 , 0 ) ;
if ( sync ) {
@ -226,23 +228,23 @@ public class IdcServiceImpl implements IdcService {
/*单独表调用, tableName可只传表名, 如传完整参数按SYNCS_TABLES格式*/
@Override
public BaseResponse onceSync ( String tableName , boolean isUpload ) {
String tnames = tableName . contains ( "/" ) ? tableName : "//" + tableName + "///////" ;
public BaseResponse onceSync ( String tableName , boolean isUpload ) {
String tnames = tableName . contains ( "/" ) ? tableName : "//" + tableName + "///////" ;
String [ ] ts = tnames . split ( "/" ) ;
String ip = "" ;
String ip = "" ;
Map < String , Object > map = dbDao . get ( "select * from sync_data_set limit 1" ) ;
if ( isUpload ) {
if ( isUpload ) {
if ( ! ( map . get ( "syncIp" ) ! = null & & ! StringUtils . isEmpty ( map . get ( "syncIp" ) . toString ( ) ) ) ) {
logger . error ( "中继服务地址未配置" ) ;
return ResultVOUtils . error ( 9999 , "中继服务地址未配置" ) ;
}
ip = map . get ( "syncIp" ) . toString ( ) ;
}
if ( ! StringUtils . isEmpty ( ts [ 0 ] ) ) {
if ( ! ( map ! = null & & map . get ( ts [ 0 ] ) ! = null & & map . get ( ts [ 0 ] ) . equals ( "1" ) ) )
if ( ! StringUtils . isEmpty ( ts [ 0 ] ) ) {
if ( ! ( map ! = null & & map . get ( ts [ 0 ] ) ! = null & & map . get ( ts [ 0 ] ) . equals ( "1" ) ) )
return ResultVOUtils . error ( 9999 , "当前不允许生成" ) ;
}
if ( syncData ( tnames , isUpload , ip ) )
if ( syncData ( tnames , isUpload , ip ) )
return ResultVOUtils . success ( ) ;
return ResultVOUtils . error ( 9999 , "系统错误" ) ;
}
@ -255,16 +257,16 @@ public class IdcServiceImpl implements IdcService {
String lastUpdateTime = getUpdateTime ( tnames [ 2 ] + "." + tnames [ 0 ] ) ;
Date nowUpdateTime = new Date ( ) ;
// if (!StringUtils.isEmpty(tnames[0])) {
// if (!StringUtils.isEmpty(tnames[0])) {
List < Map < String , String > > keyList = dbDao . listKeyMysql ( tnames [ 2 ] ) ;
String keyColumn = keyList ! = null & & keyList . size ( ) > 0 ? keyList . get ( 0 ) . get ( "columnName" ) . toString ( ) : "id" ;
Map < String , Object > map = new HashMap < String , Object > ( ) ;
String sqlWhere = "" ;
String updateTimeColumn = tnames [ 6 ] ;
if ( StringUtils . isEmpty ( updateTimeColumn ) ) {
Map < String , Object > tMap = dbDao . get ( "select column_name columnName from information_schema.columns where column_name='updateTime' and lower(table_name) = lower('" + tnames [ 0 ] + "') and table_schema = (select database()) limit 1" ) ;
updateTimeColumn = tMap ! = null ? "updateTime" : "" ;
if ( StringUtils . isEmpty ( updateTimeColumn ) ) {
Map < String , Object > tMap = dbDao . get ( "select column_name columnName from information_schema.columns where column_name='updateTime' and lower(table_name) = lower('" + tnames [ 0 ] + "') and table_schema = (select database()) limit 1" ) ;
updateTimeColumn = tMap ! = null ? "updateTime" : "" ;
}
@ -360,7 +362,6 @@ public class IdcServiceImpl implements IdcService {
}
public BaseResponse downlaodSuccess ( HttpServletRequest request , Map < String , Object > params ) {
String sql = "update basic_export_status set receiveStatus='1',endTime=now() where id='" + params . get ( "taskId" ) + "'" ;
dbDao . update ( sql ) ;
@ -369,15 +370,17 @@ public class IdcServiceImpl implements IdcService {
@Override
public BaseResponse receiveJson ( HttpServletRequest request , Map < String , Object > params ) {
public BaseResponse receiveJson ( HttpServletRequest request , Map < String , Object > params ) {
return ResultVOUtils . success ( ) ;
}
@Override
public BaseResponse uploadFile ( HttpServletRequest request ,
String content , MultipartFile [ ] files ) {
String content , MultipartFile [ ] files ) {
return ResultVOUtils . success ( ) ;
}
/****/
@Override
public BaseResponse receive ( HttpServletRequest request ,
@ -545,7 +548,7 @@ public class IdcServiceImpl implements IdcService {
int childNum = - 1 ;
/*子表*/
String [ ] syncTables = TableUtils . syncTables ( ) ;
if ( ! StringUtils . isEmpty ( tableKey ) ) {
if ( ! StringUtils . isEmpty ( tableKey ) ) {
for ( String str : syncTables ) {
if ( str . contains ( "/" + tableKey + "/" ) ) {
childNum + + ;
@ -605,7 +608,7 @@ public class IdcServiceImpl implements IdcService {
String fileNames = list . get ( m ) . get ( filePathColumn ) . toString ( ) ;
String [ ] str = fileNames . split ( "," ) ;
for ( int r = 0 ; r < str . length ; r + + ) {
if ( ! StringUtils . isEmpty ( str [ r ] ) & & FileUtils . isFileExist ( filePath + filePathSlash + "register/file/image2/" + str [ r ] ) )
if ( ! StringUtils . isEmpty ( str [ r ] ) & & FileUtils . isFileExist ( filePath + filePathSlash + "register/file/image2/" + str [ r ] ) )
files . add ( filePath + filePathSlash + "register/file/image2/" + str [ r ] ) ;
}
}
@ -628,7 +631,7 @@ public class IdcServiceImpl implements IdcService {
if ( childList . get ( i ) . get ( chidTnames [ 7 ] ) ! = null ) {
String [ ] str = childList . get ( i ) . get ( chidTnames [ 7 ] ) . toString ( ) . split ( "," ) ;
for ( int s = 0 ; s < str . length ; s + + ) {
if ( ! StringUtils . isEmpty ( str [ s ] ) & & FileUtils . isFileExist ( filePath + filePathSlash + "register/file/image2/" + str [ s ] ) )
if ( ! StringUtils . isEmpty ( str [ s ] ) & & FileUtils . isFileExist ( filePath + filePathSlash + "register/file/image2/" + str [ s ] ) )
files . add ( filePath + filePathSlash + "register/file/image2/" + str [ s ] ) ;
}
}
@ -682,7 +685,8 @@ public class IdcServiceImpl implements IdcService {
}
/*增加同步任务状态*/
private void syncAddTaskStatus ( Map < String , Object > json , int scheduleType , boolean success , Date startTime , boolean isEnd ) {
private void syncAddTaskStatus ( Map < String , Object > json , int scheduleType , boolean success , Date startTime ,
boolean isEnd ) {
try {
String content = JSON . toJSONString ( json ) ;
String datePath = DateUtil . formatDate ( new Date ( ) , "yyyy-MM-dd" ) ;
@ -725,7 +729,8 @@ public class IdcServiceImpl implements IdcService {
}
private boolean analyMiddle ( String host , JSONObject jsonObject , MultipartFile [ ] files , boolean isUpload , boolean isToDB ) {
private boolean analyMiddle ( String host , JSONObject jsonObject , MultipartFile [ ] files , boolean isUpload ,
boolean isToDB ) {
if ( jsonObject . get ( "data" ) ! = null ) {
String tableName = "" ;
String uniqueColumn = "" ;
@ -788,7 +793,9 @@ public class IdcServiceImpl implements IdcService {
/*解析到数据库*/
/*按表名解析数据到数据库,子表暂未处理*/
private boolean analyToDB ( String host , String tableName , String uniqueColumn , String filePathColumn , List < Map < String , Object > > list , boolean isUpload ) {
private boolean analyToDB ( String host , String tableName , String uniqueColumn , String
filePathColumn , List < Map < String , Object > > list , boolean isUpload ) {
String tName = DBAUtils . tableRealName ( tableName ) ;
String sql = "replace " + tName + "(" ;
@ -804,7 +811,7 @@ public class IdcServiceImpl implements IdcService {
if ( col > 0 )
sql + = "," ;
columnList . get ( i ) . put ( "attrName" , columnList . get ( i ) . get ( "columnName" ) ) ;
sql + = columnList . get ( i ) . get ( "columnName" ) . toString ( ) ;
sql + = "`" + columnList . get ( i ) . get ( "columnName" ) . toString ( ) + "`" ;
col + + ;
if ( uniqueColumn ! = null & & columnList . get ( i ) . get ( "columnKey" ) ! = null & & ( "," + uniqueColumn + "," ) . contains ( "," + columnList . get ( i ) . get ( "columnName" ) + "," ) ) {
keyColumn [ key ] = columnList . get ( i ) . get ( "columnName" ) . toString ( ) ;
@ -1075,7 +1082,8 @@ public class IdcServiceImpl implements IdcService {
}
/*由表名获取数据*/
private Map < String , Object > getData ( String messageType , String tableName , Map < String , Object > params , Map < String , Object > whereParams ) {
private Map < String , Object > getData ( String messageType , String
tableName , Map < String , Object > params , Map < String , Object > whereParams ) {
List < Map < String , Object > > list = getList ( tableName , whereParams ) ;
Map < String , Object > map = new HashMap < String , Object > ( ) ;
map . put ( "messageId" , CustomUtil . getId ( ) ) ;
@ -1092,7 +1100,8 @@ public class IdcServiceImpl implements IdcService {
}
private SystemParamConfigEntity getSystemParamConfig ( String paramKey , String paramName , String defaultValue , String paramExplain ) {
private SystemParamConfigEntity getSystemParamConfig ( String paramKey , String paramName , String
defaultValue , String paramExplain ) {
SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService . selectByParamKey ( paramKey ) ;
if ( systemParamConfigEntity = = null | | ( systemParamConfigEntity ! = null & & StringUtils . isEmpty ( systemParamConfigEntity . getParamKey ( ) ) ) ) {
systemParamConfigEntity = new SystemParamConfigEntity ( ) ;