feat:查询座位信息
This commit is contained in:
@@ -16,7 +16,7 @@
|
|||||||
<artifactId>script</artifactId>
|
<artifactId>script</artifactId>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<java.version>1.8</java.version>
|
<java.version>17</java.version>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
|
|||||||
@@ -27,4 +27,9 @@ public class UrlConstants {
|
|||||||
* 创建订单URL
|
* 创建订单URL
|
||||||
*/
|
*/
|
||||||
public final static String PROJECT_ORDER_CREATE_URL = BASE_URL + "/order/app/center/v3/create";
|
public final static String PROJECT_ORDER_CREATE_URL = BASE_URL + "/order/app/center/v3/create";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取演出座位信息
|
||||||
|
*/
|
||||||
|
public final static String PROJECT_SEAT_STATUS_URL = BASE_URL + "/performance/app/project/seatPlanStatus";
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -134,4 +134,10 @@ public class FPerformSeatInfo implements Serializable {
|
|||||||
* 演出id(总)
|
* 演出id(总)
|
||||||
*/
|
*/
|
||||||
private Long projectId;
|
private Long projectId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否售罄
|
||||||
|
* 0:否 1:是
|
||||||
|
*/
|
||||||
|
private Integer soldOut;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ public class ProjectOrderCreateReq {
|
|||||||
private Integer deliveryType;
|
private Integer deliveryType;
|
||||||
private String contactName;
|
private String contactName;
|
||||||
private String contactPhone;
|
private String contactPhone;
|
||||||
private Integer payment;
|
private BigDecimal payment;
|
||||||
private BigDecimal totalPrice;
|
private BigDecimal totalPrice;
|
||||||
private Long performId;
|
private Long performId;
|
||||||
private String projectId;
|
private String projectId;
|
||||||
|
|||||||
@@ -0,0 +1,20 @@
|
|||||||
|
package com.xiang.xservice.fwd.entity.resp.http.perform;
|
||||||
|
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Author: xiang
|
||||||
|
* @Date: 2025-07-25 16:10
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@AllArgsConstructor
|
||||||
|
@NoArgsConstructor
|
||||||
|
public class SeatPlanStatus {
|
||||||
|
private Integer seatPlanId;
|
||||||
|
private Integer performId;
|
||||||
|
private Boolean soldOutFlag;
|
||||||
|
private Integer enableNoTicketLabel;
|
||||||
|
private Integer standbyStatus;
|
||||||
|
}
|
||||||
@@ -22,4 +22,6 @@ public interface FwdPerformSeatInfoMapper {
|
|||||||
|
|
||||||
FPerformSeatInfo getPerformSeatInfoBySeatIdAndPerformIdAndProjectId(
|
FPerformSeatInfo getPerformSeatInfoBySeatIdAndPerformIdAndProjectId(
|
||||||
@Param("seatId") Long seatId, @Param("performId") Long performId, @Param("projectId") Long projectId);
|
@Param("seatId") Long seatId, @Param("performId") Long performId, @Param("projectId") Long projectId);
|
||||||
|
|
||||||
|
List<FPerformSeatInfo> getPerformSeatByProjectId(Long projectId);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -106,6 +106,8 @@ public class PullDataFromFWDJob {
|
|||||||
if (CollectionUtils.isNotEmpty(performInfo.getPerformInfo())) {
|
if (CollectionUtils.isNotEmpty(performInfo.getPerformInfo())) {
|
||||||
for (PerformDetail performDetail : performInfo.getPerformInfo()) {
|
for (PerformDetail performDetail : performInfo.getPerformInfo()) {
|
||||||
if (CollectionUtils.isNotEmpty(performDetail.getSeatPlans())) {
|
if (CollectionUtils.isNotEmpty(performDetail.getSeatPlans())) {
|
||||||
|
List<Long> seatPlanIds = performDetail.getSeatPlans().stream().map(SeatPlan::getSeatPlanId).toList();
|
||||||
|
|
||||||
for (SeatPlan seatPlan : performDetail.getSeatPlans()) {
|
for (SeatPlan seatPlan : performDetail.getSeatPlans()) {
|
||||||
FPerformSeatInfo fPerformSeatInfo = new FPerformSeatInfo();
|
FPerformSeatInfo fPerformSeatInfo = new FPerformSeatInfo();
|
||||||
fPerformSeatInfo.setSeatPlanId(seatPlan.getSeatPlanId());
|
fPerformSeatInfo.setSeatPlanId(seatPlan.getSeatPlanId());
|
||||||
|
|||||||
@@ -1,21 +1,20 @@
|
|||||||
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.entity.resp.http.perform.SeatPlanStatus;
|
||||||
|
import com.xiang.xservice.fwd.service.IPerformService;
|
||||||
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.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.RequestParam;
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Author: xiang
|
* @Author: xiang
|
||||||
@@ -27,6 +26,7 @@ import java.util.Objects;
|
|||||||
public class FwdOuterController {
|
public class FwdOuterController {
|
||||||
|
|
||||||
private final IPerformServiceHttp performServiceHttp;
|
private final IPerformServiceHttp performServiceHttp;
|
||||||
|
private final IPerformService performService;
|
||||||
|
|
||||||
@GetMapping("/getShowProjects")
|
@GetMapping("/getShowProjects")
|
||||||
public Result<ProjectsResp> getShowProjects() {
|
public Result<ProjectsResp> getShowProjects() {
|
||||||
@@ -47,16 +47,17 @@ public class FwdOuterController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/createOrder")
|
@PostMapping("/createOrder")
|
||||||
public Result<ProjectOrderCreateResp> createOrder(@RequestBody @Valid ProjectOrderCreateReq req) {
|
public Result<Void> createOrder(Long projectId) throws Exception {
|
||||||
req.setDeliveryType(1);
|
if (performService.createProjectOrder(projectId)) {
|
||||||
req.setBlackBox("0");
|
return Result.success("下单成功!");
|
||||||
req.setContactName("朱吉祥");
|
|
||||||
req.setContactPhone("15858717571");
|
|
||||||
ProjectOrderCreateResp projectOrder = performServiceHttp.createProjectOrder(req);
|
|
||||||
if (Objects.nonNull(projectOrder)) {
|
|
||||||
return Result.success("下单成功!", projectOrder);
|
|
||||||
}
|
}
|
||||||
return Result.success("下单失败!", null);
|
return Result.error("下单失败!");
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/getSeatPlanStatus")
|
||||||
|
public Result<SeatPlanStatus> getSeatPlanStatu (@RequestParam List<Long> ids) {
|
||||||
|
List<SeatPlanStatus> seatPlanStatusFromHttp = performServiceHttp.getSeatPlanStatusFromHttp(ids);
|
||||||
|
return Result.success("查询成功!", seatPlanStatusFromHttp);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,19 @@
|
|||||||
|
package com.xiang.xservice.fwd.service;
|
||||||
|
|
||||||
|
import com.xiang.xservice.fwd.entity.pojo.FPerformProjectInfo;
|
||||||
|
import com.xiang.xservice.fwd.entity.pojo.FPerformSeatInfo;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Author: xiang
|
||||||
|
* @Date: 2025-07-25 15:15
|
||||||
|
*/
|
||||||
|
public interface IPerformService {
|
||||||
|
|
||||||
|
FPerformProjectInfo getPerformByProjectId(Long projectId);
|
||||||
|
|
||||||
|
List<FPerformSeatInfo> getPerformSeatInfoByProjectId(Long projectId);
|
||||||
|
|
||||||
|
Boolean createProjectOrder(Long projectId) throws Exception;
|
||||||
|
}
|
||||||
@@ -5,6 +5,9 @@ import com.xiang.xservice.fwd.entity.resp.http.perform.Perform;
|
|||||||
import com.xiang.xservice.fwd.entity.resp.http.perform.ProjectInfoResp;
|
import com.xiang.xservice.fwd.entity.resp.http.perform.ProjectInfoResp;
|
||||||
import com.xiang.xservice.fwd.entity.resp.http.perform.ProjectOrderCreateResp;
|
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.entity.resp.http.perform.SeatPlanStatus;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
public interface IPerformServiceHttp {
|
public interface IPerformServiceHttp {
|
||||||
|
|
||||||
@@ -34,4 +37,13 @@ public interface IPerformServiceHttp {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
Perform getPerformsByProjectIdFromHttp(Long projectId);
|
Perform getPerformsByProjectIdFromHttp(Long projectId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* http请求获取座位状态信息
|
||||||
|
* @param seatPlanIds
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<SeatPlanStatus> getSeatPlanStatusFromHttp(List<Long> seatPlanIds);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,8 +2,10 @@ package com.xiang.xservice.fwd.service.impl;
|
|||||||
|
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.google.common.collect.Lists;
|
||||||
import com.google.common.collect.Maps;
|
import com.google.common.collect.Maps;
|
||||||
import com.xiang.xservice.basic.utils.HttpUtils;
|
import com.xiang.xservice.basic.utils.HttpUtils;
|
||||||
|
import com.xiang.xservice.basic.utils.JsonUtils;
|
||||||
import com.xiang.xservice.fwd.constants.CodeConstants;
|
import com.xiang.xservice.fwd.constants.CodeConstants;
|
||||||
import com.xiang.xservice.fwd.constants.UrlConstants;
|
import com.xiang.xservice.fwd.constants.UrlConstants;
|
||||||
import com.xiang.xservice.fwd.entity.req.ProjectOrderCreateReq;
|
import com.xiang.xservice.fwd.entity.req.ProjectOrderCreateReq;
|
||||||
@@ -11,12 +13,15 @@ import com.xiang.xservice.fwd.entity.resp.http.perform.Perform;
|
|||||||
import com.xiang.xservice.fwd.entity.resp.http.perform.ProjectInfoResp;
|
import com.xiang.xservice.fwd.entity.resp.http.perform.ProjectInfoResp;
|
||||||
import com.xiang.xservice.fwd.entity.resp.http.perform.ProjectOrderCreateResp;
|
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.entity.resp.http.perform.SeatPlanStatus;
|
||||||
import com.xiang.xservice.fwd.service.IPerformServiceHttp;
|
import com.xiang.xservice.fwd.service.IPerformServiceHttp;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
@@ -73,7 +78,7 @@ public class PerformServiceHttpServiceImpl implements IPerformServiceHttp {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
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), JsonUtils.toJsonString(req));
|
||||||
if (StringUtils.isBlank(respStr)) {
|
if (StringUtils.isBlank(respStr)) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@@ -111,6 +116,31 @@ public class PerformServiceHttpServiceImpl implements IPerformServiceHttp {
|
|||||||
return new Perform();
|
return new Perform();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<SeatPlanStatus> getSeatPlanStatusFromHttp(List<Long> seatPlanIds) {
|
||||||
|
StringBuilder seatIds = new StringBuilder();
|
||||||
|
for (Long seatPlanId : seatPlanIds) {
|
||||||
|
seatIds.append(seatPlanId).append(",");
|
||||||
|
}
|
||||||
|
Map<String, String> params = Maps.newHashMap();
|
||||||
|
params.put("seatPlanIds", seatIds.substring(0, seatIds.length() - 2));
|
||||||
|
params.put("type", "3");
|
||||||
|
String respStr = HttpUtils.doGet(UrlConstants.PROJECT_SEAT_STATUS_URL, buildFWDHeaders(UrlConstants.token), params);
|
||||||
|
if (StringUtils.isBlank(respStr)) {
|
||||||
|
return Lists.newArrayList();
|
||||||
|
}
|
||||||
|
log.info("【Http请求】 根据seatPlanIds:{}http请求查询演出座位信息结果:{}", seatPlanIds, respStr);
|
||||||
|
JSONObject resp = JSON.parseObject(respStr);
|
||||||
|
Integer code = (Integer) resp.get("code");
|
||||||
|
if (Objects.nonNull(code) && Objects.equals(code, CodeConstants.SUCCESS)) {
|
||||||
|
List<SeatPlanStatus> data = JSON.parseArray(resp.get("data").toString(), SeatPlanStatus.class);
|
||||||
|
if (CollectionUtils.isEmpty(data)) {
|
||||||
|
return Lists.newArrayList();
|
||||||
|
}
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
return Lists.newArrayList();
|
||||||
|
}
|
||||||
|
|
||||||
private Map<String, String> buildFWDHeaders(String token) {
|
private Map<String, String> buildFWDHeaders(String token) {
|
||||||
Map<String, String> headers = Maps.newHashMap();
|
Map<String, String> headers = Maps.newHashMap();
|
||||||
|
|||||||
@@ -0,0 +1,89 @@
|
|||||||
|
package com.xiang.xservice.fwd.service.impl;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson2.JSONObject;
|
||||||
|
import com.xiang.xservice.basic.xservice.dingTalk.service.DingTalkService;
|
||||||
|
import com.xiang.xservice.fwd.entity.pojo.FPerformProjectInfo;
|
||||||
|
import com.xiang.xservice.fwd.entity.pojo.FPerformSeatInfo;
|
||||||
|
import com.xiang.xservice.fwd.entity.req.ProjectOrderCreateReq;
|
||||||
|
import com.xiang.xservice.fwd.entity.resp.http.perform.ProjectOrderCreateResp;
|
||||||
|
import com.xiang.xservice.fwd.mapper.FwdPerformProjectInfoMapper;
|
||||||
|
import com.xiang.xservice.fwd.mapper.FwdPerformSeatInfoMapper;
|
||||||
|
import com.xiang.xservice.fwd.service.IPerformService;
|
||||||
|
import com.xiang.xservice.fwd.service.IPerformServiceHttp;
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Author: xiang
|
||||||
|
* @Date: 2025-07-25 15:16
|
||||||
|
*/
|
||||||
|
@Slf4j
|
||||||
|
@Service
|
||||||
|
@RequiredArgsConstructor
|
||||||
|
public class PerformServiceImpl implements IPerformService {
|
||||||
|
|
||||||
|
private final FwdPerformSeatInfoMapper fwdPerformSeatInfoMapper;
|
||||||
|
private final FwdPerformProjectInfoMapper fwdPerformProjectInfoMapper;
|
||||||
|
private final IPerformServiceHttp performServiceHttp;
|
||||||
|
private final DingTalkService dingTalkService;
|
||||||
|
@Value("${DingTalk.chatId}")
|
||||||
|
private String chatId;
|
||||||
|
// private static final List<Long> FREQUENT_IDS = List.of(50438548L, 35320661L, 50436621L, 50442739L);
|
||||||
|
private static final List<Long> FREQUENT_IDS = List.of(50438548L, 35320661L);
|
||||||
|
@Override
|
||||||
|
public FPerformProjectInfo getPerformByProjectId(Long projectId) {
|
||||||
|
return fwdPerformProjectInfoMapper.getProjectByProjectId(projectId);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<FPerformSeatInfo> getPerformSeatInfoByProjectId(Long projectId) {
|
||||||
|
return fwdPerformSeatInfoMapper.getPerformSeatByProjectId(projectId);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Boolean createProjectOrder(Long projectId) throws Exception {
|
||||||
|
FPerformProjectInfo performByProjectId = getPerformByProjectId(projectId);
|
||||||
|
if (Objects.isNull(performByProjectId)) {
|
||||||
|
log.info("该projectId:{}暂无演出信息", projectId);
|
||||||
|
return Boolean.FALSE;
|
||||||
|
}
|
||||||
|
List<FPerformSeatInfo> seatInfoByProjectId = getPerformSeatInfoByProjectId(projectId);
|
||||||
|
if (CollectionUtils.isEmpty(seatInfoByProjectId)) {
|
||||||
|
log.info("该projectId:{}暂无座位信息", projectId);
|
||||||
|
return Boolean.FALSE;
|
||||||
|
}
|
||||||
|
for (FPerformSeatInfo fPerformSeatInfo : seatInfoByProjectId) {
|
||||||
|
ProjectOrderCreateReq projectOrderCreateReq = new ProjectOrderCreateReq();
|
||||||
|
projectOrderCreateReq.setDeliveryType(1);
|
||||||
|
projectOrderCreateReq.setContactName("朱吉祥");
|
||||||
|
projectOrderCreateReq.setContactPhone("15858717571");
|
||||||
|
projectOrderCreateReq.setPayment(fPerformSeatInfo.getPrice().multiply(BigDecimal.valueOf(FREQUENT_IDS.size())).setScale(2));
|
||||||
|
projectOrderCreateReq.setTotalPrice(fPerformSeatInfo.getPrice().multiply(BigDecimal.valueOf(FREQUENT_IDS.size())).setScale(2, BigDecimal.ROUND_HALF_UP));
|
||||||
|
projectOrderCreateReq.setPerformId(fPerformSeatInfo.getPerformId());
|
||||||
|
projectOrderCreateReq.setProjectId(projectId.toString());
|
||||||
|
projectOrderCreateReq.setPrivilegeCodeList(new ArrayList<>());
|
||||||
|
projectOrderCreateReq.setAudienceCount(FREQUENT_IDS.size());
|
||||||
|
projectOrderCreateReq.setFrequentIds(FREQUENT_IDS);
|
||||||
|
projectOrderCreateReq.setSeatPlanIds(Collections.singletonList(fPerformSeatInfo.getSeatPlanId()));
|
||||||
|
projectOrderCreateReq.setBlackBox("0");
|
||||||
|
projectOrderCreateReq.setCombineTicketVos(null);
|
||||||
|
projectOrderCreateReq.setOrdinaryTicketVos(null);
|
||||||
|
ProjectOrderCreateResp projectOrder = performServiceHttp.createProjectOrder(projectOrderCreateReq);
|
||||||
|
if (Objects.nonNull(projectOrder)) {
|
||||||
|
log.info("下单成功,订单信息:{}", JSONObject.toJSONString(projectOrder));
|
||||||
|
dingTalkService.sendChatMessage(chatId, "订单编号:" + projectOrder.getOrderNo() + "下单成功!!!,请在两分钟之内付款");
|
||||||
|
return Boolean.TRUE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return Boolean.FALSE;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -28,6 +28,7 @@
|
|||||||
<result column="available_all_ticket_quantity" property="availableAllTicketQuantity" />
|
<result column="available_all_ticket_quantity" property="availableAllTicketQuantity" />
|
||||||
<result column="sale_time" property="saleTime" />
|
<result column="sale_time" property="saleTime" />
|
||||||
<result column="project_id" property="projectId" />
|
<result column="project_id" property="projectId" />
|
||||||
|
<result column="sold_out" property="soldOut"/>
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<sql id="Base_Column_List">
|
<sql id="Base_Column_List">
|
||||||
@@ -53,7 +54,8 @@
|
|||||||
available_ticket_quantity,
|
available_ticket_quantity,
|
||||||
available_all_ticket_quantity,
|
available_all_ticket_quantity,
|
||||||
sale_time,
|
sale_time,
|
||||||
project_id
|
project_id,
|
||||||
|
sold_out
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<insert id="insert" useGeneratedKeys="true" keyColumn="id" keyProperty="id" parameterType="com.xiang.xservice.fwd.entity.pojo.FPerformSeatInfo">
|
<insert id="insert" useGeneratedKeys="true" keyColumn="id" keyProperty="id" parameterType="com.xiang.xservice.fwd.entity.pojo.FPerformSeatInfo">
|
||||||
@@ -126,7 +128,10 @@
|
|||||||
sale_time,
|
sale_time,
|
||||||
</if>
|
</if>
|
||||||
<if test="null != projectId ">
|
<if test="null != projectId ">
|
||||||
project_id
|
project_id,
|
||||||
|
</if>
|
||||||
|
<if test="null != soldOut ">
|
||||||
|
sold_out
|
||||||
</if>
|
</if>
|
||||||
</trim>
|
</trim>
|
||||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
@@ -197,7 +202,10 @@
|
|||||||
#{saleTime},
|
#{saleTime},
|
||||||
</if>
|
</if>
|
||||||
<if test="null != projectId ">
|
<if test="null != projectId ">
|
||||||
#{projectId}
|
#{projectId},
|
||||||
|
</if>
|
||||||
|
<if test="null != soldOut ">
|
||||||
|
#{soldOut},
|
||||||
</if>
|
</if>
|
||||||
</trim>
|
</trim>
|
||||||
</insert>
|
</insert>
|
||||||
@@ -209,7 +217,7 @@
|
|||||||
status, max_sell_stock, sold_stock, left_stock, able_sale_quantity,
|
status, max_sell_stock, sold_stock, left_stock, able_sale_quantity,
|
||||||
ash_show, ash_show_desc, selectable, display,
|
ash_show, ash_show_desc, selectable, display,
|
||||||
available_ticket_quantity, available_all_ticket_quantity,
|
available_ticket_quantity, available_all_ticket_quantity,
|
||||||
sale_time, project_id
|
sale_time, project_id, sold_out
|
||||||
)
|
)
|
||||||
VALUES
|
VALUES
|
||||||
<foreach collection="list" item="item" separator=",">
|
<foreach collection="list" item="item" separator=",">
|
||||||
@@ -219,7 +227,7 @@
|
|||||||
#{item.status}, #{item.maxSellStock}, #{item.soldStock}, #{item.leftStock}, #{item.ableSaleQuantity},
|
#{item.status}, #{item.maxSellStock}, #{item.soldStock}, #{item.leftStock}, #{item.ableSaleQuantity},
|
||||||
#{item.ashShow}, #{item.ashShowDesc}, #{item.selectable}, #{item.display},
|
#{item.ashShow}, #{item.ashShowDesc}, #{item.selectable}, #{item.display},
|
||||||
#{item.availableTicketQuantity}, #{item.availableAllTicketQuantity},
|
#{item.availableTicketQuantity}, #{item.availableAllTicketQuantity},
|
||||||
#{item.saleTime}, #{item.projectId}
|
#{item.saleTime}, #{item.projectId}, #{item.soldOut}
|
||||||
)
|
)
|
||||||
</foreach>
|
</foreach>
|
||||||
|
|
||||||
@@ -251,7 +259,8 @@
|
|||||||
<if test="null != availableTicketQuantity ">available_ticket_quantity = #{availableTicketQuantity},</if>
|
<if test="null != availableTicketQuantity ">available_ticket_quantity = #{availableTicketQuantity},</if>
|
||||||
<if test="null != availableAllTicketQuantity ">available_all_ticket_quantity = #{availableAllTicketQuantity},</if>
|
<if test="null != availableAllTicketQuantity ">available_all_ticket_quantity = #{availableAllTicketQuantity},</if>
|
||||||
<if test="null != saleTime ">sale_time = #{saleTime},</if>
|
<if test="null != saleTime ">sale_time = #{saleTime},</if>
|
||||||
<if test="null != projectId ">project_id = #{projectId}</if>
|
<if test="null != projectId ">project_id = #{projectId},</if>
|
||||||
|
<if test="null != soldOut">sold_out = #{soldOut}</if>
|
||||||
</set>
|
</set>
|
||||||
WHERE id = #{id}
|
WHERE id = #{id}
|
||||||
</update>
|
</update>
|
||||||
@@ -269,5 +278,10 @@
|
|||||||
from fwd_perform_seat_info
|
from fwd_perform_seat_info
|
||||||
where seat_plan_id = #{seatId} and perform_id = #{performId} and project_id = #{projectId}
|
where seat_plan_id = #{seatId} and perform_id = #{performId} and project_id = #{projectId}
|
||||||
</select>
|
</select>
|
||||||
|
<select id="getPerformSeatByProjectId" resultType="com.xiang.xservice.fwd.entity.pojo.FPerformSeatInfo">
|
||||||
|
select <include refid="Base_Column_List"/>
|
||||||
|
from fwd_perform_seat_info
|
||||||
|
where project_id = #{projectId}
|
||||||
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
Reference in New Issue
Block a user