feat:创建订单接口

This commit is contained in:
Zhujx
2025-07-25 15:15:27 +08:00
parent 6c8b828ca0
commit 19add26e64
3 changed files with 26 additions and 51 deletions

View File

@@ -3,7 +3,6 @@ package com.xiang.xservice.fwd.entity.req;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import org.checkerframework.checker.units.qual.A;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.List; import java.util.List;
@@ -22,6 +21,8 @@ public class ProjectOrderCreateReq {
private List<PrivilegeCode> privilegeCodeList; private List<PrivilegeCode> privilegeCodeList;
private Integer audienceCount; private Integer audienceCount;
private List<Long> frequentIds; private List<Long> frequentIds;
private List<Long> seatPlanId; private List<Long> seatPlanIds;
private String blackBox; private String blackBox;
private String combineTicketVos;
private String ordinaryTicketVos;
} }

View File

@@ -1,15 +1,22 @@
package com.xiang.xservice.fwd.server; package com.xiang.xservice.fwd.server;
import com.xiang.xservice.basic.common.resp.Result; import com.xiang.xservice.basic.common.resp.Result;
import com.xiang.xservice.fwd.entity.req.ProjectOrderCreateReq;
import com.xiang.xservice.fwd.entity.resp.http.perform.Perform; import com.xiang.xservice.fwd.entity.resp.http.perform.Perform;
import com.xiang.xservice.fwd.entity.resp.http.perform.ProjectOrderCreateResp;
import com.xiang.xservice.fwd.entity.resp.http.perform.ProjectsResp; import com.xiang.xservice.fwd.entity.resp.http.perform.ProjectsResp;
import com.xiang.xservice.fwd.service.IPerformServiceHttp; import com.xiang.xservice.fwd.service.IPerformServiceHttp;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.validation.Valid;
import java.util.Objects;
/** /**
* @Author: xiang * @Author: xiang
* @Date: 2025-07-24 16:55 * @Date: 2025-07-24 16:55
@@ -39,4 +46,17 @@ public class FwdOuterController {
return Result.success("查询成功!", performsByProjectIdFromHttp); return Result.success("查询成功!", performsByProjectIdFromHttp);
} }
@PostMapping("/createOrder")
public Result<ProjectOrderCreateResp> createOrder(@RequestBody @Valid ProjectOrderCreateReq req) {
req.setDeliveryType(1);
req.setBlackBox("0");
req.setContactName("朱吉祥");
req.setContactPhone("15858717571");
ProjectOrderCreateResp projectOrder = performServiceHttp.createProjectOrder(req);
if (Objects.nonNull(projectOrder)) {
return Result.success("下单成功!", projectOrder);
}
return Result.success("下单失败!", null);
}
} }

View File

@@ -75,7 +75,7 @@ public class PerformServiceHttpServiceImpl implements IPerformServiceHttp {
public ProjectOrderCreateResp createProjectOrder(ProjectOrderCreateReq req) { public ProjectOrderCreateResp createProjectOrder(ProjectOrderCreateReq req) {
String respStr = HttpUtils.doPost(UrlConstants.PROJECT_ORDER_CREATE_URL, buildFWDHeaders(UrlConstants.token), JSON.toJSONString(req)); String respStr = HttpUtils.doPost(UrlConstants.PROJECT_ORDER_CREATE_URL, buildFWDHeaders(UrlConstants.token), JSON.toJSONString(req));
if (StringUtils.isBlank(respStr)) { if (StringUtils.isBlank(respStr)) {
return new ProjectOrderCreateResp(); return null;
} }
log.info("【Http请求】 http请求创建订单结果:{}", respStr); log.info("【Http请求】 http请求创建订单结果:{}", respStr);
JSONObject resp = JSON.parseObject(respStr); JSONObject resp = JSON.parseObject(respStr);
@@ -83,11 +83,11 @@ public class PerformServiceHttpServiceImpl implements IPerformServiceHttp {
if (Objects.nonNull(code) && Objects.equals(code, CodeConstants.SUCCESS)) { if (Objects.nonNull(code) && Objects.equals(code, CodeConstants.SUCCESS)) {
ProjectOrderCreateResp projectOrderCreateResp = JSON.parseObject(resp.get("data").toString(), ProjectOrderCreateResp.class); ProjectOrderCreateResp projectOrderCreateResp = JSON.parseObject(resp.get("data").toString(), ProjectOrderCreateResp.class);
if (Objects.isNull(projectOrderCreateResp)) { if (Objects.isNull(projectOrderCreateResp)) {
return new ProjectOrderCreateResp(); return null;
} }
return projectOrderCreateResp; return projectOrderCreateResp;
} }
return new ProjectOrderCreateResp(); return null;
} }
@Override @Override
@@ -126,50 +126,4 @@ public class PerformServiceHttpServiceImpl implements IPerformServiceHttp {
} }
return headers; return headers;
} }
public static void main(String[] args) {
Map<String, String> headers = Maps.newHashMap();
String req = "{" +
" \"deliveryType\": 1," +
" \"contactName\": \"朱吉祥\"," +
" \"contactPhone\": \"15858717571\"," +
" \"combineTicketVos\": null," +
" \"ordinaryTicketVos\": null," +
" \"payment\": 999," +
" \"totalPrice\": 999," +
" \"performId\": 2772," +
" \"projectId\": \"5881698656\"," +
" \"privilegeCodeList\": []," +
" \"audienceCount\": 1," +
" \"frequentIds\": [" +
" 35320661" +
" ]," +
" \"seatPlanIds\": [" +
" 14118," +
" 14117" +
" ]," +
" \"blackBox\": \":0\"" +
"}";
headers.put("content-type", "application/json");
headers.put("Host", "api.livelab.com.cn");
headers.put("Connection", "keep-alive");
headers.put("platform-type", "%E7%BA%B7%E7%8E%A9%E5%B2%9B%E5%BE%AE%E4%BF%A1%E5%B0%8F%E7%A8%8B%E5%BA%8F");
headers.put("x-fwd-anonymousId", "ocXac5C25MY5O3UM_EfL0oTgm7Jw");
headers.put("User-Agent", "Mozilla/5.0 (iPhone; CPU iPhone OS 18_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/8.0.61(0x18003d2e) NetType/WIFI Language/zh_CN");
headers.put("X-REQUEST-STARTTIME", String.valueOf(System.currentTimeMillis()));
headers.put("Authorization", UrlConstants.token);
String respStr = HttpUtils.doPost(UrlConstants.PROJECT_ORDER_CREATE_URL, headers, req);
if (StringUtils.isBlank(respStr)) {
log.info("1");
}
JSONObject resp = JSON.parseObject(respStr);
Integer code = (Integer) resp.get("code");
if (Objects.nonNull(code) && Objects.equals(code, CodeConstants.SUCCESS)) {
ProjectOrderCreateResp projectInfoResp = JSON.parseObject(resp.get("data").toString(), ProjectOrderCreateResp.class);
if (Objects.isNull(projectInfoResp)) {
log.info("2");
}
}
log.info("查询结果:{}", resp);
}
} }