@ -45,9 +45,7 @@ public class WdpcGrjdJsbryServiceService implements WdpcGrjdJsbryService {
@Override
public void syncPys ( TaskParamDomain domain ) {
List < WdpcGrjdJsbry > jsbryList = jsbryRepository . list ( new LambdaQueryWrapper < WdpcGrjdJsbry > ( )
. select ( WdpcGrjdJsbry : : getName , WdpcGrjdJsbry : : getIdCode , WdpcGrjdJsbry : : getActualTime ,
WdpcGrjdJsbry : : getActualId , WdpcGrjdJsbry : : getSuicideNumber , WdpcGrjdJsbry : : getHurtSelfNumber , WdpcGrjdJsbry : : getIllegalNumber , WdpcGrjdJsbry : : getDiseaseDescribe ) ) ;
List < WdpcGrjdJsbry > jsbryList = jsbryRepository . getBaseMapper ( ) . selectJSB ( ) ;
RiskTask task = taskRepository . create ( jsbryList . size ( ) , 59 ) ;
List < RiskModelTaskClue > oldList = Optional . ofNullable ( domain . getMap ( ) . get ( task . getModelId ( ) ) ) . orElse ( new ArrayList < > ( ) ) ;
@ -57,41 +55,28 @@ public class WdpcGrjdJsbryServiceService implements WdpcGrjdJsbryService {
List < RiskModelTaskClue > toInsert = new ArrayList < > ( ) ;
Map < String , List < WdpcGrjdJsbry > > map = jsbryList . stream ( ) . collect ( Collectors . groupingBy ( WdpcGrjdJsbry : : getIdCode ) ) ;
for ( Map . Entry < String , List < WdpcGrjdJsbry > > entry : map . entrySet ( ) ) {
RiskPersonal personal = personalMap . get ( entry . getKey ( ) ) ;
if ( oldClueMap . get ( entry . getKey ( ) ) ! = null | | personal = = null ) {
for ( WdpcGrjdJsbry entry : jsbryList ) {
RiskPersonal personal = personalMap . get ( entry . getIdCode ( ) ) ;
if ( oldClueMap . get ( entry . getIdCode ( ) ) ! = null | | personal = = null ) {
continue ;
}
StringBuilder text = new StringBuilder ( ) ;
LocalDateTime time = null ;
for ( WdpcGrjdJsbry wdpcGrjdJsbry : jsbryList ) {
if ( text . indexOf ( wdpcGrjdJsbry . getActualId ( ) . concat ( "," ) ) ! = - 1 ) continue ;
text . append ( wdpcGrjdJsbry . getActualId ( ) ) . append ( "," ) ;
try {
if ( time = = null ) {
time = LocalDate . parse ( wdpcGrjdJsbry . getActualTime ( ) , DateTimeFormatter . ofPattern ( "yyyyMMdd" ) ) . atTime ( 0 , 0 , 0 ) ;
continue ;
}
LocalDateTime tmp = LocalDate . parse ( wdpcGrjdJsbry . getActualTime ( ) , DateTimeFormatter . ofPattern ( "yyyyMMdd" ) ) . atTime ( 0 , 0 , 0 ) ;
if ( time . isBefore ( tmp ) ) {
time = tmp ;
}
} catch ( Exception ignored ) { }
}
try {
time = LocalDate . parse ( entry . getActualTime ( ) , DateTimeFormatter . ofPattern ( "yyyyMMdd" ) ) . atTime ( 0 , 0 , 0 ) ;
} catch ( Exception e ) { }
ClueData data = ClueData . builder ( )
. name ( personal . getName ( ) )
. id ( "psychosis" )
. idCode ( personal . getIdCode ( ) )
. tags ( List . of ( Default . PSYCHOSIS_TAG ) )
. score ( 5 )
. sourceData ( "该人员是精神障碍患者,诊断为:" . concat ( text . toString ( ) ) )
. sourceData ( "该人员是精神障碍患者,诊断为:" . concat ( entry . getActualId ( ) ) )
. eventTime ( time )
. build ( ) ;
toInsert . add ( DataUtil . createClueData ( task , data ) ) ;
}
if ( ! toInsert . isEmpty ( ) ) {
if ( ! toInsert . isEmpty ( ) ) {
clueService . saveClues ( toInsert , "B31是否有精神疾病" ) ;
}
taskRepository . updateTask ( task . getId ( ) , toInsert . size ( ) , 0 ) ;