同步不调用 mapFunction 生成接口,调整数据添加速度
This commit is contained in:
parent
cd344bc3f0
commit
c18565cf21
@ -35,6 +35,17 @@ public interface RtsDistributeDAO {
|
||||
" #{record.dsc,jdbcType=VARCHAR},#{record.isSync,jdbcType=BIT})</script>")
|
||||
void customerSyncInsert(@Param("record") RtsDistribute record);
|
||||
|
||||
@Insert("<script>" +
|
||||
"insert into rts_distribute (id,map_id, source_subject_id, forever,`status`, create_time, update_time,start_time, end_time, creator_id,dsc,is_sync)" +
|
||||
" values" +
|
||||
"<foreach collection=\"list\" item=\"item\" index=\"index\" separator=\",\"> " +
|
||||
" (#{item.id,jdbcType=BIGINT},#{item.mapId,jdbcType=BIGINT}, #{item.sourceSubjectId,jdbcType=BIGINT}, #{item.forever,jdbcType=BIT}, " +
|
||||
" #{item.status,jdbcType=INTEGER}, #{item.createTime,jdbcType=TIMESTAMP}, #{item.updateTime,jdbcType=TIMESTAMP}, " +
|
||||
" #{item.startTime,jdbcType=TIMESTAMP}, #{item.endTime,jdbcType=TIMESTAMP}, #{item.creatorId,jdbcType=BIGINT}, " +
|
||||
" #{item.dsc,jdbcType=VARCHAR},#{item.isSync,jdbcType=BIT})" +
|
||||
"</foreach>" +
|
||||
"</script>")
|
||||
void customerSyncBatchInsert(@Param("list") List<RtsDistribute> record);
|
||||
/**
|
||||
* 状态参考 {@link PermissionDistributeStatusEnum}
|
||||
*/
|
||||
|
@ -5,6 +5,7 @@ import club.joylink.rtss.entity.permission.RtsPermissionDistributeRefExample;
|
||||
import java.util.List;
|
||||
|
||||
import club.joylink.rtss.vo.permission.distribute.DistributeDataVO;
|
||||
import org.apache.ibatis.annotations.Insert;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
@ -25,6 +26,17 @@ public interface RtsPermissionDistributeRefDAO {
|
||||
" where 1 = 1 and A.distribute_id = #{disId}" +
|
||||
"</script>")
|
||||
List<DistributeDataVO.DistributePermissionVO> selectTimeOut();
|
||||
|
||||
@Insert("<script>" +
|
||||
"insert into rts_permission_distribute_ref (distribute_id, permission_id, amount,remains, is_sync)" +
|
||||
" values " +
|
||||
"<foreach collection=\"list\" item=\"item\" index=\"index\" separator=\",\"> " +
|
||||
"(#{item.distributeId,jdbcType=BIGINT}, #{item.permissionId,jdbcType=BIGINT}, #{item.amount,jdbcType=INTEGER},\n" +
|
||||
" #{item.remains,jdbcType=INTEGER}, #{item.isSync,jdbcType=BIT})" +
|
||||
"</foreach>" +
|
||||
"</script>")
|
||||
void batchInsert(@Param("list") List<RtsPermissionDistributeRef> refList);
|
||||
|
||||
long countByExample(RtsPermissionDistributeRefExample example);
|
||||
|
||||
int deleteByExample(RtsPermissionDistributeRefExample example);
|
||||
|
@ -98,12 +98,12 @@ public class OldPermissionDataSyncService {
|
||||
SYNC_RESULT_LIST.clear();
|
||||
try{
|
||||
truncateAllTable();
|
||||
MapInfoExample example = new MapInfoExample();
|
||||
/*MapInfoExample example = new MapInfoExample();
|
||||
example.createCriteria().andStatusEqualTo("1" );
|
||||
List<MapInfo> mapInfoList = this.mapInfoDAO.selectByExample(example);
|
||||
for (MapInfo mapInfo : mapInfoList) {
|
||||
this.generate(mapInfo);
|
||||
}
|
||||
}*/
|
||||
this.abilityService.autoSynchMapSystemData(0L);
|
||||
}catch (Exception e){
|
||||
log.error("用户权限初始化失败 msg:" + e.getMessage(),e);
|
||||
@ -210,15 +210,26 @@ public class OldPermissionDataSyncService {
|
||||
}
|
||||
|
||||
private void insertDistribute(List<DistributeDataVO> distributeDataVOList){
|
||||
List<RtsPermissionDistributeRef> allRefList = Lists.newArrayList();
|
||||
List<RtsDistribute> disList = Lists.newArrayList();
|
||||
|
||||
for (DistributeDataVO dataVO : distributeDataVOList) {
|
||||
RtsDistribute rd = PermissionDistributeConvertor.convertDistributeDataVoTo(dataVO,dataVO.getCreatorId());
|
||||
rd.setIsSync(true);
|
||||
this.rtsDistributeDAO.customerSyncInsert(rd);
|
||||
disList.add(rd);
|
||||
List<RtsPermissionDistributeRef> refList = PermissionDistributeConvertor.convertDistributeRefListTo(dataVO.getPermissionIds(),null);
|
||||
|
||||
for (RtsPermissionDistributeRef ref : refList) {
|
||||
ref.setIsSync(true);
|
||||
this.distributeRefDAO.insert(ref);
|
||||
allRefList.add(ref);
|
||||
}
|
||||
|
||||
}
|
||||
if(!CollectionUtils.isEmpty(disList)){
|
||||
rtsDistributeDAO.customerSyncBatchInsert(disList);
|
||||
}
|
||||
if(!CollectionUtils.isEmpty(allRefList)){
|
||||
distributeRefDAO.batchInsert(allRefList);
|
||||
}
|
||||
}
|
||||
private void insertUserPermission(List<PermissionSubject> psList){
|
||||
|
Loading…
Reference in New Issue
Block a user