|
|
@@ -14,6 +14,7 @@ import com.izouma.nineth.config.RedisKeys;
|
|
|
import com.izouma.nineth.domain.Collection;
|
|
|
import com.izouma.nineth.domain.*;
|
|
|
import com.izouma.nineth.dto.*;
|
|
|
+import com.izouma.nineth.dto.oasis.OasisLoginDTO;
|
|
|
import com.izouma.nineth.enums.AssetStatus;
|
|
|
import com.izouma.nineth.enums.AuthStatus;
|
|
|
import com.izouma.nineth.enums.AuthorityName;
|
|
|
@@ -57,6 +58,7 @@ import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
|
|
|
import org.springframework.security.crypto.password.PasswordEncoder;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import javax.management.openmbean.OpenMBeanAttributeInfoSupport;
|
|
|
import javax.persistence.criteria.CriteriaBuilder;
|
|
|
import javax.persistence.criteria.CriteriaQuery;
|
|
|
import javax.persistence.criteria.Predicate;
|
|
|
@@ -892,8 +894,22 @@ public class UserService {
|
|
|
public Map<String, Object> oasisInfo(Long userId) {
|
|
|
Map<String, Object> map = new HashMap<>();
|
|
|
map.put("nickName", SecurityUtils.getAuthenticatedUser().getNickname());
|
|
|
- map.put("oasisIds", assetRepo.findAllByOwnerIdAndStatusAndOasisIdNotNull(userId, AssetStatus.NORMAL).stream()
|
|
|
- .map(Asset::getOasisId).collect(Collectors.toSet()));
|
|
|
+ List<Asset> assets = assetRepo.findAllByOwnerIdAndStatusAndOasisIdNotNull(userId, AssetStatus.NORMAL);
|
|
|
+ List<OasisLoginDTO> oasisLoginDTOS = new ArrayList<>();
|
|
|
+ assets.forEach(asset -> {
|
|
|
+ OasisLoginDTO oasisLoginDTO = new OasisLoginDTO();
|
|
|
+ oasisLoginDTO.setOasisId(asset.getOasisId());
|
|
|
+ oasisLoginDTO.setAssetId(asset.getId());
|
|
|
+ Collection collection = collectionRepo.findFirstByOnShelfAndAssetId(true, asset.getId());
|
|
|
+ if (collection != null) {
|
|
|
+ oasisLoginDTO.setUrl(generalProperties.getHost() + "/9th/productDetail/" + collection
|
|
|
+ .getId() + "?id=" + collection.getId());
|
|
|
+ } else {
|
|
|
+ oasisLoginDTO.setUrl("未公开展示");
|
|
|
+ }
|
|
|
+ oasisLoginDTOS.add(oasisLoginDTO);
|
|
|
+ });
|
|
|
+ map.put("oasisInfo", oasisLoginDTOS);
|
|
|
map.put("avatar", SecurityUtils.getAuthenticatedUser().getAvatar());
|
|
|
return map;
|
|
|
}
|