|
|
@@ -6,15 +6,25 @@ import cn.reghao.jutil.jdk.result.Result;
|
|
|
import cn.reghao.jutil.jdk.serializer.JsonConverter;
|
|
|
import cn.reghao.jutil.tool.id.SnowFlake;
|
|
|
import cn.reghao.oss.sdk.model.dto.media.ImageInfo;
|
|
|
+import cn.reghao.tnb.account.api.iface.AccountQuery;
|
|
|
import cn.reghao.tnb.content.api.dto.TaobaoItem;
|
|
|
import cn.reghao.tnb.content.app.mall.db.mapper.ProductMapper;
|
|
|
import cn.reghao.tnb.content.app.mall.db.repository.MallRepository;
|
|
|
+import cn.reghao.tnb.content.app.mall.feign.UserDiscoveryClient;
|
|
|
+import cn.reghao.tnb.content.app.mall.feign.UserLoadBalancerClient;
|
|
|
import cn.reghao.tnb.content.app.mall.model.dto.ProductAddDto;
|
|
|
import cn.reghao.tnb.content.app.mall.model.po.Product;
|
|
|
import cn.reghao.tnb.content.app.mall.feign.UserFeignClient;
|
|
|
import cn.reghao.tnb.user.api.dto.UserInfo;
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.dubbo.config.annotation.DubboReference;
|
|
|
+import org.springframework.beans.factory.annotation.Qualifier;
|
|
|
+import org.springframework.cloud.client.ServiceInstance;
|
|
|
+import org.springframework.cloud.client.discovery.DiscoveryClient;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.util.LinkedMultiValueMap;
|
|
|
+import org.springframework.util.MultiValueMap;
|
|
|
+import org.springframework.web.client.RestTemplate;
|
|
|
|
|
|
import java.util.List;
|
|
|
|
|
|
@@ -22,22 +32,31 @@ import java.util.List;
|
|
|
* @author reghao
|
|
|
* @date 2024-04-16 11:00:17
|
|
|
*/
|
|
|
+@Slf4j
|
|
|
@Service
|
|
|
public class ProductService {
|
|
|
@DubboReference(check = false)
|
|
|
private OssService ossService;
|
|
|
+ @DubboReference(check = false, retries = 0, timeout = 1000, mock = "fallback")
|
|
|
+ private AccountQuery accountQuery;
|
|
|
|
|
|
private final int pageSize = 12;
|
|
|
private final SnowFlake idGenerator;
|
|
|
private final ProductMapper productMapper;
|
|
|
private final MallRepository mallRepository;
|
|
|
private final UserFeignClient userFeignClient;
|
|
|
+ private UserDiscoveryClient userDiscoveryClient;
|
|
|
+ private UserLoadBalancerClient userLoadBalancerClient;
|
|
|
|
|
|
- public ProductService(ProductMapper productMapper, MallRepository mallRepository, UserFeignClient userFeignClient) {
|
|
|
+ public ProductService(ProductMapper productMapper, MallRepository mallRepository,
|
|
|
+ UserFeignClient userFeignClient, UserDiscoveryClient userDiscoveryClient,
|
|
|
+ UserLoadBalancerClient userLoadBalancerClient) {
|
|
|
this.idGenerator = new SnowFlake(1L, 1L);
|
|
|
this.productMapper = productMapper;
|
|
|
this.mallRepository = mallRepository;
|
|
|
this.userFeignClient = userFeignClient;
|
|
|
+ this.userDiscoveryClient = userDiscoveryClient;
|
|
|
+ this.userLoadBalancerClient = userLoadBalancerClient;
|
|
|
}
|
|
|
|
|
|
public void add(TaobaoItem taobaoItem) {
|
|
|
@@ -78,6 +97,8 @@ public class ProductService {
|
|
|
long sellerId = product.getSellerId();
|
|
|
String userInfoJson = userFeignClient.getUserInfo(sellerId);
|
|
|
UserInfo userInfo = JsonConverter.jsonToObject(userInfoJson, UserInfo.class);
|
|
|
+ //UserInfo userInfo1 = userDiscoveryClient.getUserInfo(sellerId);
|
|
|
+ //UserInfo userInfo2 = userLoadBalancerClient.getUserInfo(sellerId);
|
|
|
|
|
|
return mallRepository.getProduct(itemId);
|
|
|
}
|