|
@@ -15,6 +15,7 @@ import beilv.common.utils.DictUtils;
|
|
import beilv.common.utils.uuid.IdUtils;
|
|
import beilv.common.utils.uuid.IdUtils;
|
|
import beilv.site.domain.BeilvSite;
|
|
import beilv.site.domain.BeilvSite;
|
|
import beilv.site.service.IBeilvSiteService;
|
|
import beilv.site.service.IBeilvSiteService;
|
|
|
|
+import beilv.system.service.ISysMemberService;
|
|
import beilv.usermembershipcard.domain.MemberStream;
|
|
import beilv.usermembershipcard.domain.MemberStream;
|
|
import beilv.usermembershipcard.domain.UserMembershipCard;
|
|
import beilv.usermembershipcard.domain.UserMembershipCard;
|
|
import beilv.usermembershipcard.service.IUserMembershipCardService;
|
|
import beilv.usermembershipcard.service.IUserMembershipCardService;
|
|
@@ -27,6 +28,7 @@ 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.servlet.http.HttpServletRequest;
|
|
import java.text.ParseException;
|
|
import java.text.ParseException;
|
|
import java.text.SimpleDateFormat;
|
|
import java.text.SimpleDateFormat;
|
|
import java.time.LocalDate;
|
|
import java.time.LocalDate;
|
|
@@ -53,41 +55,51 @@ public class bootACourseController extends BaseController {
|
|
@Autowired
|
|
@Autowired
|
|
private IUserMembershipCardService userMembershipCardService;
|
|
private IUserMembershipCardService userMembershipCardService;
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private ISysMemberService sysMemberService;
|
|
|
|
+
|
|
/**
|
|
/**
|
|
- * 查询基础信息
|
|
|
|
|
|
+ * 查询球馆列表
|
|
*/
|
|
*/
|
|
- @PostMapping("/getVenueList")
|
|
|
|
- public AjaxResult getVenueList(){
|
|
|
|
|
|
+ /*@PostMapping("/getVenueList")
|
|
|
|
+ public AjaxResult getVenueList() {
|
|
//获取球场列表
|
|
//获取球场列表
|
|
List<BeilvVenue> resultList = venueService.selectBeilvVenueList(new BeilvVenue());
|
|
List<BeilvVenue> resultList = venueService.selectBeilvVenueList(new BeilvVenue());
|
|
return AjaxResult.success(resultList);
|
|
return AjaxResult.success(resultList);
|
|
- }
|
|
|
|
|
|
+ }*/
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 根据场馆id查询其具有的场地类型
|
|
|
|
+ */
|
|
|
|
+ /*@PostMapping("/getSiteType")
|
|
|
|
+ public AjaxResult getSiteType(@RequestBody BeilvSite beilvSite) {
|
|
|
|
+ List<Map<String, String>> siteType = siteService.selectSiteTypeByVenueId(beilvSite);
|
|
|
|
+
|
|
|
|
+ siteType.forEach(map -> {
|
|
|
|
+ map.put("siteTypeLabel", DictUtils.getDictLabel("site_type", map.get("siteType")));
|
|
|
|
+ });
|
|
|
|
+ return AjaxResult.success(siteType);
|
|
|
|
+ }*/
|
|
|
|
|
|
/**
|
|
/**
|
|
* 根据场馆id获取下面的球场信息
|
|
* 根据场馆id获取下面的球场信息
|
|
- * @param beilvSite venueId(场馆id)
|
|
|
|
|
|
+ *
|
|
|
|
+ * @param beilvSite venueId(场馆id) 默认值8
|
|
*/
|
|
*/
|
|
@PostMapping("/getSiteList")
|
|
@PostMapping("/getSiteList")
|
|
- public AjaxResult getSiteList(@RequestBody BeilvSite beilvSite){
|
|
|
|
- //根据球场id, 获取下面所有的场地信息
|
|
|
|
|
|
+ public AjaxResult getSiteList(@RequestBody BeilvSite beilvSite) {
|
|
|
|
+ beilvSite.setVenueId(8L);
|
|
|
|
+ UserMembershipCard userMembershipCard = new UserMembershipCard();
|
|
|
|
+ userMembershipCard.setUserId(beilvSite.getUserId());
|
|
|
|
+ userMembershipCard.setCardType(beilvSite.getSiteType());
|
|
|
|
+ userMembershipCard.setState("3");
|
|
|
|
+ //获取会员卡集合
|
|
|
|
+ HashMap<String, Object> result = new HashMap<>();
|
|
|
|
+ result.put("cardList", userMembershipCardService.selectUserMembershipCardList(userMembershipCard));
|
|
List<BeilvSite> beilvSites = siteService.selectBeilvSiteList(beilvSite);
|
|
List<BeilvSite> beilvSites = siteService.selectBeilvSiteList(beilvSite);
|
|
- Set<String> siteTypeSite = new HashSet<>();
|
|
|
|
-
|
|
|
|
- //遍历场地信息, 获取球场下所有的场地类型
|
|
|
|
beilvSites.forEach(site->{
|
|
beilvSites.forEach(site->{
|
|
- siteTypeSite.add(site.getSiteType());
|
|
|
|
- });
|
|
|
|
-
|
|
|
|
- List<String> siteTypeList = new ArrayList<>();
|
|
|
|
- //遍历场地类型, 获取场地类型的Label
|
|
|
|
- siteTypeSite.forEach(siteType->{
|
|
|
|
- siteTypeList.add(DictUtils.getDictLabel("site_type",siteType));
|
|
|
|
|
|
+ site.setCoverList(new ArrayList<>(Arrays.asList(site.getCover().split(","))));
|
|
});
|
|
});
|
|
-
|
|
|
|
- HashMap<String, Object> result = new HashMap<>();
|
|
|
|
- //放入LabelList
|
|
|
|
- result.put("siteType", siteTypeList);
|
|
|
|
- //放入球场List
|
|
|
|
result.put("siteList", beilvSites);
|
|
result.put("siteList", beilvSites);
|
|
return AjaxResult.success(result);
|
|
return AjaxResult.success(result);
|
|
}
|
|
}
|
|
@@ -97,24 +109,24 @@ public class bootACourseController extends BaseController {
|
|
* 有返回会员卡信息集合
|
|
* 有返回会员卡信息集合
|
|
* 没有返回空集合
|
|
* 没有返回空集合
|
|
*/
|
|
*/
|
|
- @PostMapping("/hasClubCard")
|
|
|
|
- public AjaxResult hasClubCard(@RequestBody BootACourseBO course){
|
|
|
|
|
|
+ /*@PostMapping("/hasClubCard")
|
|
|
|
+ public AjaxResult hasClubCard(@RequestBody BootACourseBO course) {
|
|
UserMembershipCard userMembershipCard = new UserMembershipCard();
|
|
UserMembershipCard userMembershipCard = new UserMembershipCard();
|
|
userMembershipCard.setUserId(course.getUserId());
|
|
userMembershipCard.setUserId(course.getUserId());
|
|
userMembershipCard.setCardType(course.getTicketType());
|
|
userMembershipCard.setCardType(course.getTicketType());
|
|
userMembershipCard.setState("3");
|
|
userMembershipCard.setState("3");
|
|
- return AjaxResult.success(userMembershipCardService.selectUserMembershipCardList(userMembershipCard));
|
|
|
|
- }
|
|
|
|
|
|
+ return AjaxResult.success();
|
|
|
|
+ }*/
|
|
|
|
|
|
/**
|
|
/**
|
|
* 查询可购票的场次信息
|
|
* 查询可购票的场次信息
|
|
* 请求参数:
|
|
* 请求参数:
|
|
- * 日期: yyyy-MM-dd
|
|
|
|
- * 场地类型: site_type字典
|
|
|
|
- * 球场id:
|
|
|
|
|
|
+ * 日期: yyyy-MM-dd
|
|
|
|
+ * 场地类型: site_type字典
|
|
|
|
+ * 球场id:
|
|
*/
|
|
*/
|
|
@PostMapping("/getTicketList")
|
|
@PostMapping("/getTicketList")
|
|
- public AjaxResult getTicketList(@RequestBody AdmissionTicket admissionTicket){
|
|
|
|
|
|
+ public AjaxResult getTicketList(@RequestBody AdmissionTicket admissionTicket) {
|
|
//设置查询状态: 可以预定的时段
|
|
//设置查询状态: 可以预定的时段
|
|
// admissionTicket.setAdmissionTicketStatus("0");
|
|
// admissionTicket.setAdmissionTicketStatus("0");
|
|
//查询可用时段
|
|
//查询可用时段
|
|
@@ -125,12 +137,13 @@ public class bootACourseController extends BaseController {
|
|
/**
|
|
/**
|
|
* 购票接口
|
|
* 购票接口
|
|
* 用户id, 场次id, 会员卡id
|
|
* 用户id, 场次id, 会员卡id
|
|
|
|
+ *
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
@PostMapping("/addCourse")
|
|
@PostMapping("/addCourse")
|
|
- public AjaxResult addCourse(@RequestBody BootACourseBO course){
|
|
|
|
|
|
+ public AjaxResult addCourse(@RequestBody BootACourseBO course) {
|
|
//根据场次id 关联球馆表, 获取球馆允许提前多少分钟可以退票
|
|
//根据场次id 关联球馆表, 获取球馆允许提前多少分钟可以退票
|
|
- Date refund = calculationTime(ticketService.getThresholdValue(course.getTicketId()));
|
|
|
|
|
|
+ Date refund = calculationTime(ticketService.getThresholdValue(course.getTicketId()));
|
|
|
|
|
|
|
|
|
|
//生成订单编号
|
|
//生成订单编号
|
|
@@ -151,7 +164,7 @@ public class bootACourseController extends BaseController {
|
|
|
|
|
|
|
|
|
|
//验证场次是否可用
|
|
//验证场次是否可用
|
|
- if(courseService.isOk(course)){
|
|
|
|
|
|
+ if (courseService.isOk(course)) {
|
|
//调用会员卡接口减少次数
|
|
//调用会员卡接口减少次数
|
|
MemberStream memberStream = new MemberStream();
|
|
MemberStream memberStream = new MemberStream();
|
|
memberStream.setUserCardId(course.getClubCardId());
|
|
memberStream.setUserCardId(course.getClubCardId());
|
|
@@ -171,8 +184,8 @@ public class bootACourseController extends BaseController {
|
|
ticketService.updateBeilvAdmissionTicket(admissionTicket);
|
|
ticketService.updateBeilvAdmissionTicket(admissionTicket);
|
|
|
|
|
|
return toAjax(courseService.addCourse(bootACourse));
|
|
return toAjax(courseService.addCourse(bootACourse));
|
|
- }else{
|
|
|
|
- return AjaxResult.error("当前场次已被预订");
|
|
|
|
|
|
+ } else {
|
|
|
|
+ return AjaxResult.error("当前场次已被预订");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -180,7 +193,8 @@ public class bootACourseController extends BaseController {
|
|
* 查询订单
|
|
* 查询订单
|
|
*/
|
|
*/
|
|
@PostMapping("/getCourseList")
|
|
@PostMapping("/getCourseList")
|
|
- public AjaxResult getCourseList(@RequestBody BootACourseBO courseBO){
|
|
|
|
|
|
+ public AjaxResult getCourseList(@RequestBody BootACourseBO courseBO) {
|
|
|
|
+ courseBO.setUserId(courseBO.getUserId());
|
|
return AjaxResult.success(courseService.getCourseList(courseBO));
|
|
return AjaxResult.success(courseService.getCourseList(courseBO));
|
|
}
|
|
}
|
|
|
|
|
|
@@ -188,17 +202,18 @@ public class bootACourseController extends BaseController {
|
|
/**
|
|
/**
|
|
* 退票接口
|
|
* 退票接口
|
|
* 用户id, 订单编号,
|
|
* 用户id, 订单编号,
|
|
- * @return
|
|
|
|
- * 1: 订单已核销
|
|
|
|
|
|
+ *
|
|
|
|
+ * @return 1: 订单已核销
|
|
* 2: 退票成功
|
|
* 2: 退票成功
|
|
*/
|
|
*/
|
|
@PostMapping("/remofeCourse")
|
|
@PostMapping("/remofeCourse")
|
|
- public AjaxResult remofeCourse(@RequestBody BootACourseBO courseBo){
|
|
|
|
|
|
+ public AjaxResult remofeCourse(@RequestBody BootACourseBO courseBo) {
|
|
|
|
+ courseBo.setUserId(courseBo.getUserId());
|
|
//通过orderId查询订单信息
|
|
//通过orderId查询订单信息
|
|
BootACourse course = courseService.getCourseInfo(courseBo);
|
|
BootACourse course = courseService.getCourseInfo(courseBo);
|
|
|
|
|
|
//判断最晚退单时间大于当前时间, 并且订单状态为已支付
|
|
//判断最晚退单时间大于当前时间, 并且订单状态为已支付
|
|
- if(course.getRefund().after(new Date()) && "payment_status_have_paid".equals(course.getPaymentStatus())){
|
|
|
|
|
|
+ if (course.getRefund().after(new Date()) && "payment_status_have_paid".equals(course.getPaymentStatus())) {
|
|
//根据订单信息中的会员卡退次数
|
|
//根据订单信息中的会员卡退次数
|
|
//调用会员卡接口减少次数
|
|
//调用会员卡接口减少次数
|
|
MemberStream memberStream = new MemberStream();
|
|
MemberStream memberStream = new MemberStream();
|
|
@@ -220,10 +235,10 @@ public class bootACourseController extends BaseController {
|
|
course.setRefundInstructions(courseBo.getRefundInstructions());
|
|
course.setRefundInstructions(courseBo.getRefundInstructions());
|
|
course.setPaymentStatus("payment_status_refunded");
|
|
course.setPaymentStatus("payment_status_refunded");
|
|
return toAjax(courseService.updateCourse(course));
|
|
return toAjax(courseService.updateCourse(course));
|
|
- }else{
|
|
|
|
- if(course.getRefund().after(new Date())){
|
|
|
|
|
|
+ } else {
|
|
|
|
+ if (course.getRefund().after(new Date())) {
|
|
return AjaxResult.error("当前订单超过最晚退单时间, 不允许退单");
|
|
return AjaxResult.error("当前订单超过最晚退单时间, 不允许退单");
|
|
- }else if("payment_status_verification".equals(course.getPaymentStatus())){
|
|
|
|
|
|
+ } else if ("payment_status_verification".equals(course.getPaymentStatus())) {
|
|
return AjaxResult.error("订单已核销");
|
|
return AjaxResult.error("订单已核销");
|
|
}
|
|
}
|
|
return AjaxResult.error("未知原因退款失败!");
|
|
return AjaxResult.error("未知原因退款失败!");
|
|
@@ -232,7 +247,7 @@ public class bootACourseController extends BaseController {
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
- private Date calculationTime(Map<String, Object> map){
|
|
|
|
|
|
+ private Date calculationTime(Map<String, Object> map) {
|
|
|
|
|
|
String sessionStr = MapUtils.getString(map, "session").split("-")[0]; //12:15
|
|
String sessionStr = MapUtils.getString(map, "session").split("-")[0]; //12:15
|
|
|
|
|