KKSU
2024-11-15 2147ca2f66dd5ff83db5080988f4832bd10ac213
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
package cc.mrbird.febs.unisoftiot.api.service.impl;
 
import cc.mrbird.febs.unisoftiot.api.entity.Product;
import cc.mrbird.febs.unisoftiot.api.mapper.ProductMapper;
import cc.mrbird.febs.unisoftiot.api.service.InitAccountService;
import cc.mrbird.febs.unisoftiot.api.service.ProductService;
import cc.mrbird.febs.unisoftiot.api.vo.ApiProductVo;
import cc.mrbird.febs.unisoftiot.config.UniSoftAccount;
import cc.mrbird.febs.unisoftiot.enums.ProductRequestUrlEnum;
import cc.mrbird.febs.unisoftiot.utils.UrlUtils;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
 
import java.util.LinkedHashMap;
import java.util.List;
 
@Slf4j
@Service
@RequiredArgsConstructor
public class ProductServiceImpl extends ServiceImpl<ProductMapper, Product> implements ProductService {
 
    private final InitAccountService initAccountService;
    @Override
    public List<ApiProductVo> getProductList() {
        UniSoftAccount uniSoftAccount = initAccountService.initAccountByAppInfo(UrlUtils.APP_ID, UrlUtils.APP_SECRET);
 
        // 创建参数集合
        LinkedHashMap<String, Object> parameters = new LinkedHashMap<>();
        parameters.put("q", 1);
        String bodyStr = uniSoftAccount.requestHandler.sendSignedRequest(
                UrlUtils.BASE_URL, ProductRequestUrlEnum.PRODUCT_LIST.getRequestUrl(),
                parameters, ProductRequestUrlEnum.PRODUCT_LIST.getRequestMethod());
 
        JSONObject jsonObject = JSONUtil.parseObj(bodyStr);
        return jsonObject.getJSONArray("data").toList(ApiProductVo.class);
    }
}