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 implements ProductService { private final InitAccountService initAccountService; @Override public List getProductList() { UniSoftAccount uniSoftAccount = initAccountService.initAccountByAppInfo(UrlUtils.APP_ID, UrlUtils.APP_SECRET); // 创建参数集合 LinkedHashMap 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); } }