feat:下单

This commit is contained in:
xiang
2026-05-05 17:28:14 +08:00
parent d551427821
commit 66a69a4968
16 changed files with 728 additions and 13 deletions

View File

@@ -0,0 +1,73 @@
package com.xiang.common.service;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
import com.google.common.collect.Maps;
import com.xiang.common.enums.YcCodeTypeEnum;
import com.xiang.common.pojo.code.YcCodeBaseResponse;
import com.xiang.common.pojo.code.YcCodeDataResp;
import com.xiang.common.pojo.code.YcCodeRequest;
import com.xiang.common.utils.HttpService;
import lombok.extern.slf4j.Slf4j;
import org.checkerframework.checker.nullness.qual.Nullable;
import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.Objects;
@Service
@Slf4j
public class CodeServiceImpl implements ICodeService {
// 云码平台接口api
private static final String YUN_CODE_API_URL = "http://api.jfbym.com/api/YmServer/customApi";
@Override
public String templateCodeResolve(String image) {
YcCodeBaseResponse<YcCodeDataResp> resp = baseCodeResolve(YcCodeTypeEnum.YC_10118.getType(), image, null);
if (Objects.isNull(resp)) {
return null;
}
Integer code = resp.getCode();
if (200 == code) {
String data = resp.getData().getData();
StringBuilder result = new StringBuilder();
for (int i = 0; i < data.length(); i++) {
result.append(data.charAt(i)).append(",");
}
return result.substring(0, result.length() - 1);
}
return null;
}
@Override
public String codeResolve(String image, String extra) {
YcCodeBaseResponse<YcCodeDataResp> resp = baseCodeResolve(YcCodeTypeEnum.YC_6246.getType(), image, extra);
if (Objects.isNull(resp)) {
return null;
}
Integer code = resp.getCode();
if (200 == code) {
return resp.getData().getData();
}
return null;
}
@Override
public YcCodeBaseResponse<YcCodeDataResp> baseCodeResolve(Integer type, String image, String extra) {
HashMap<String, String> header = Maps.newHashMap();
header.put("Content-Type", "application/json");
YcCodeRequest ycCodeRequest = new YcCodeRequest();
ycCodeRequest.setImage(image);
ycCodeRequest.setToken("9LQ1ATKVEeO8Arhq-HavXzpHvkzdZz_r7ydmqlYhp9c");
ycCodeRequest.setType(type);
ycCodeRequest.setExtra(extra);
String resp = HttpService.doPost(YUN_CODE_API_URL, header, JSON.toJSONString(ycCodeRequest));
return JSON.parseObject(resp, new TypeReference<YcCodeBaseResponse<YcCodeDataResp>>() {
});
}
}