Browse Source

人员证照

master
kami 1 year ago
parent
commit
72d80c015f
  1. 7
      src/main/java/com/biutag/supervisiondata/event/ApplicationEvent.java
  2. 12
      src/main/java/com/biutag/supervisiondata/mapper/wdpc/WdpcPersonMapper.java
  3. 15
      src/main/java/com/biutag/supervisiondata/pojo/constants/Media.java
  4. 4
      src/main/java/com/biutag/supervisiondata/repository/WdpcPersonRepository.java
  5. 5
      src/main/java/com/biutag/supervisiondata/service/PersonalService.java
  6. 30
      src/main/java/com/biutag/supervisiondata/service/impl/PersonalServiceImpl.java

7
src/main/java/com/biutag/supervisiondata/event/ApplicationEvent.java

@ -162,13 +162,16 @@ public class ApplicationEvent {
// pointService.syncFamilySeriousIllness(initDomain(List.of(127)));
// pointService.syncPetitionDissatisfied(initDomain(List.of(128)));
// pointService.syncIsSpecialPeople(initDomain(List.of(129)));
pointService.syncSpecialPeopleType(initDomain(List.of(130)));
pointService.syncParentsRelationship(initDomain(List.of(131)));
// pointService.syncSpecialPeopleType(initDomain(List.of(130)));
// pointService.syncParentsRelationship(initDomain(List.of(131)));
// *********暂时不要**********
// riskTaskService.heightFight(initDomain(List.of(42)));
// pointService.syncKillSelf(initDomain(List.of(46)));
// policeService.contradictModelTask(initDomain(List.of(38)));
});
CompletableFutureUtil.runSync(() -> {
personalService.syncPersonImage();
});
}

12
src/main/java/com/biutag/supervisiondata/mapper/wdpc/WdpcPersonMapper.java

@ -1,10 +1,14 @@
package com.biutag.supervisiondata.mapper.wdpc;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.biutag.supervisiondata.pojo.domain.PersonImageInfo;
import com.biutag.supervisiondata.pojo.entity.wdpc.WdpcPerson;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import org.apache.ibatis.session.ResultHandler;
import java.util.List;
/**
* @author kami on 2024-12-11 16:35:08
@ -16,11 +20,11 @@ public interface WdpcPersonMapper extends BaseMapper<WdpcPerson> {
@Update("truncate table wdpc_person")
int truncateTable();
@Select(" select count(b.id_code) from dwd_ry_qbpt_sfzzzxx as a inner join csga_wdpcdb.wdpc_person as b \n" +
@Select(" select count(a.GMSFHM) from csga_dwd.dwd_ry_qbpt_sfzzzxx as a inner join csga_wdpcdb.wdpc_person as b " +
"on a.GMSFHM = b.id_code ")
int selectPersonImageCount();
@Select(" select a.GMSFHM as idCode,a.sdxp as image from dwd_ry_qbpt_sfzzzxx as a inner join csga_wdpcdb.wdpc_person as b \n" +
"on a.GMSFHM = b.id_code ")
int selectPersonImagePage(@Param("pageNo")Integer pageNo, @Param("pageSize")Integer pageSize);
@Select(" select a.GMSFHM as idCode,a.sdxp as image from csga_dwd.dwd_ry_qbpt_sfzzzxx as a inner join csga_wdpcdb.wdpc_person as b " +
"on a.GMSFHM = b.id_code limit #{pageNo}, #{pageSize}")
List<PersonImageInfo> selectPersonImagePage(@Param("pageNo")Integer pageNo, @Param("pageSize")Integer pageSize);
}

15
src/main/java/com/biutag/supervisiondata/pojo/constants/Media.java

@ -0,0 +1,15 @@
package com.biutag.supervisiondata.pojo.constants;
import lombok.experimental.UtilityClass;
import org.apache.ibatis.annotations.Update;
/**
* @author kami on 2024-12-12 11:12:09
* @version 0.0.1
* @since 1.8
*/
@UtilityClass
public class Media {
public static final String JPEG = "data:image/jpg;base64,";
}

4
src/main/java/com/biutag/supervisiondata/repository/WdpcPersonRepository.java

@ -12,4 +12,8 @@ import org.springframework.stereotype.Service;
*/
@Service
public class WdpcPersonRepository extends ServiceImpl<WdpcPersonMapper, WdpcPerson> {
void selectAndSave(int pageNo, int pageSize) {
}
}

5
src/main/java/com/biutag/supervisiondata/service/PersonalService.java

@ -54,4 +54,9 @@ public interface PersonalService {
* 同步人员到gbase
*/
void syncPerson();
/**
* 同步人员证照
*/
void syncPersonImage();
}

30
src/main/java/com/biutag/supervisiondata/service/impl/PersonalServiceImpl.java

@ -3,8 +3,10 @@ package com.biutag.supervisiondata.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.biutag.supervisiondata.common.interfaces.CompletableFutureUtil;
import com.biutag.supervisiondata.pojo.constants.Default;
import com.biutag.supervisiondata.pojo.constants.Media;
import com.biutag.supervisiondata.pojo.database.Contradiction;
import com.biutag.supervisiondata.pojo.database.PointOrg;
import com.biutag.supervisiondata.pojo.domain.PersonImageInfo;
import com.biutag.supervisiondata.pojo.entity.ads.GBaseSYRKXX;
import com.biutag.supervisiondata.pojo.entity.dwd.GBaseJJD;
import com.biutag.supervisiondata.pojo.entity.dwd.GBaseZDRY;
@ -509,6 +511,34 @@ public class PersonalServiceImpl implements PersonalService {
wdpcPersonRepository.saveBatch(personList, 10000);
}
private final RiskPersonInfoRepository infoRepository;
@Override
public void syncPersonImage() {
int total = wdpcPersonRepository.getBaseMapper().selectPersonImageCount();
log.info("有效头像共:{}", total);
List<PersonImageInfo> infoList;
List<RiskPersonInfo> infos;
for (int page = 1; ; page++) {
log.info("{}", page);
int pageNo = (page- 1) * 10000;
int pageSize = 10000;
infoList = wdpcPersonRepository.getBaseMapper().selectPersonImagePage(pageNo, pageSize);
infos = new ArrayList<>();
log.info("图像转base64开始:{}",infoList.size());
for (PersonImageInfo item : infoList) {
RiskPersonInfo info = new RiskPersonInfo();
info.setIdCode(item.getIdCode());
info.setImageBase64(Media.JPEG.concat(Base64.getEncoder().encodeToString(item.getImage())));
infos.add(info);
}
infoRepository.saveBatch(infos, 1000);
if(pageNo + pageSize >= total) {
break;
}
}
}
/**
* 通过身份证号查询实有人口
*

Loading…
Cancel
Save