Browse Source

Merge pull request '指标导入' (#81) from master into V3

Reviewed-on: http://git.lrdaiot.cn:9000/thing/thing_api/pulls/81
qingyuan_dev_new
李帅 1 year ago
parent
commit
33fddc70ce
  1. 2
      modules/thing/src/main/java/com/thing/thing/dict/service/impl/IotThingDictServiceImpl.java
  2. 20
      modules/thing/src/main/java/com/thing/thing/dictRelation/service/impl/IotThingDictRelationServiceImpl.java

2
modules/thing/src/main/java/com/thing/thing/dict/service/impl/IotThingDictServiceImpl.java

@ -198,7 +198,7 @@ public class IotThingDictServiceImpl extends BaseServiceImpl<IotThingDictMapper,
public Integer findMaxSort(Integer isDefault) {
QueryWrapper queryWrapper = QueryWrapper
.create()
.select(max(IOT_THING_DICT_ENTITY.SORT)).eq(String.valueOf(IOT_THING_DICT_ENTITY.IS_DEFAULT), 1);
.select(max(IOT_THING_DICT_ENTITY.SORT)).eq(IotThingDictEntity::getIsDefault,1);
Integer sort = mapper.selectOneByQueryAs(queryWrapper, Integer.class);
return Objects.isNull(sort) ? 0 : sort;
}

20
modules/thing/src/main/java/com/thing/thing/dictRelation/service/impl/IotThingDictRelationServiceImpl.java

@ -46,6 +46,7 @@ import org.springframework.web.multipart.MultipartFile;
import java.util.*;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicLong;
import java.util.function.Function;
import java.util.stream.Collectors;
@ -536,10 +537,23 @@ public class IotThingDictRelationServiceImpl extends BaseServiceImpl<IotThingDic
).toList();
dictService.saveBatch(dictEntities);
}
List<IotThingDictRelationEntity> iotThingDictRelationEntities = ConvertUtils.sourceToTarget(list, IotThingDictRelationEntity.class);
mapper.insertBatch(iotThingDictRelationEntities);
iotThingDictRelationEntities.forEach(entity -> cache.updateAccurateKeyEntity(CacheNameEnum.THING_DICT_RELATION,
List<IotThingDictRelationEntity> iotThingDictRelationEntities = mapper.selectListByQuery(QueryWrapper.create().eq(IotThingDictRelationEntity::getEntityId, optional.get().getId())
.in(IotThingDictRelationEntity::getCode, codes));
Long maxSort = 0L;
if(CollectionUtils.isNotEmpty(iotThingDictRelationEntities)){
list = list.stream().filter(e -> iotThingDictRelationEntities.stream().noneMatch(d -> StringUtils.equals(d.getCode(), e.getCode()))).toList();
maxSort = iotThingDictRelationEntities.stream().mapToLong(IotThingDictRelationEntity::getSort).max().getAsLong();
}
AtomicLong sort = new AtomicLong(maxSort);
List<IotThingDictRelationEntity> insertList = ConvertUtils.sourceToTarget(list, IotThingDictRelationEntity.class);
insertList.forEach(e -> {
e.setSort(sort.incrementAndGet());
e.setEntityId(optional.get().getId());
e.setTemplateMark(optional.get().getTemplateMark());
});
mapper.insertBatch(insertList);
insertList.forEach(entity -> cache.updateAccurateKeyEntity(CacheNameEnum.THING_DICT_RELATION,
entity.getTenantCode()+CacheInit.KEY+entity.getEntityCode()+CacheInit.KEY+entity.getCode()+CacheInit.KEY+entity.getId(),ConvertUtils.sourceToTarget(entity, IotThingDictRelationDTO.class)));
}
}

Loading…
Cancel
Save