记得上下班打卡 | git大法好,push需谨慎

Commit 604ebc72 authored by zhoujianping's avatar zhoujianping

1.预约提醒重构

parent f5ad5b66
......@@ -91,7 +91,7 @@ public class KylinRedisConst {
public static final String REDIS_KEY_KYLIN_PERFORM_SUBSCRIBE = "kylin:performSubscribe:uid:";
public static final String REDIS_KEY_KYLIN_PERFORMANCE_SUBSCRIBE = "kylin:performance:subscribe:"; //演出预约
public static final String REDIS_KEY_KYLIN_PERFORMANCE_SUBSCRIBE_TICKETS = "kylin:performance:subscribe:tickets";//演出票种预约
public static final String REDIS_KEY_KYLIN_PERFORMANCE_SUBSCRIBE_LIST = "kylin:performance:subscribe:list"; //预约列表
public static final String REDIS_KEY_KYLIN_PERFORMANCE_SUBSCRIBE_READ = "kylin:performance:subscribe:read"; //预约列表是否已读
......
......@@ -6,10 +6,12 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.scheduling.support.SimpleTriggerContext;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
/**
* @author zjp
......@@ -45,4 +47,9 @@ public class KylinPerformanceSubscribeParam implements Serializable {
@ApiModelProperty(position = 10,value = "演出图片")
@NotBlank(message = "演出图片不能为空")
private String imgPoster;
@ApiModelProperty(position = 11,value = "会员提前分钟")
private Integer advanceMinuteMember;
@ApiModelProperty(position = 12,value = "本场场次全部的票种id")
private List<String> ticketsIds;
}
......@@ -4,6 +4,7 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.time.LocalDateTime;
......@@ -49,5 +50,7 @@ public class KylinPerformanceSubscribeUpushVo implements Serializable, Cloneable
@ApiModelProperty(value = "场次id")
private String ticketTimesId;
@ApiModelProperty(position = 5,value = "票种id")
private String ticketsId;
}
......@@ -50,7 +50,15 @@ public interface IKylinPerformancesService {
* @return: com.liquidnet.service.base.ResponseDto<java.lang.Integer>
* @date 2024/3/6 14:45
*/
ResponseDto<Integer> performanceIsSubscribe(String performancesId,String ticketTimesId);
void deleteIsSubscribe(String performancesId,String ticketTimesId);
ResponseDto<Integer> performanceIsSubscribe(String performancesId,String ticketTimesId,String ticketsId);
/*
* @description:删除预约演出票种
* @author: zjp
* @date: 2024/5/15 14:10
* @param:
* @return:
**/
void deleteIsSubscribe(String performancesId,String ticketTimesId,String ticketsId);
}
......@@ -34,24 +34,28 @@ public class KylinPerformanceSubscribeController {
return iKylinPerformancesService.performanceSubscribe(request,param);
}
@GetMapping("")
@ApiOperation("是否预约演出")
@ApiOperation("是否预约演出票种")
@ApiImplicitParams({
@ApiImplicitParam(type = "query", dataType = "String", name = "performancesId", value = "演出id", required = true),
@ApiImplicitParam(type = "query", dataType = "String", name = "ticketTimesId", value = "场次id", required = true),
@ApiImplicitParam(type = "query", dataType = "String", name = "ticketsId", value = "票种id", required = true),
})
public ResponseDto<Integer> isSubscribe(@RequestParam("performancesId") String performancesId,
@RequestParam("ticketTimesId") String ticketTimesId) {
return iKylinPerformancesService.performanceIsSubscribe(performancesId, ticketTimesId);
@RequestParam("ticketTimesId") String ticketTimesId,
@RequestParam("ticketsId") String ticketsId) {
return iKylinPerformancesService.performanceIsSubscribe(performancesId, ticketTimesId,ticketsId);
}
@DeleteMapping("")
@ApiOperation("删除演出预约")
@ApiOperation("删除预约演出票种")
@ApiImplicitParams({
@ApiImplicitParam(type = "query", dataType = "String", name = "performancesId", value = "演出id", required = true),
@ApiImplicitParam(type = "query", dataType = "String", name = "ticketTimesId", value = "场次id", required = true),
@ApiImplicitParam(type = "query", dataType = "String", name = "ticketsId", value = "票种id", required = true),
})
public ResponseDto deleteIsSubscribe(@RequestParam("performancesId") String performancesId,
@RequestParam("ticketTimesId") String ticketTimesId) {
iKylinPerformancesService.deleteIsSubscribe(performancesId, ticketTimesId);
@RequestParam("ticketTimesId") String ticketTimesId,
@RequestParam("ticketsId") String ticketsId) {
iKylinPerformancesService.deleteIsSubscribe(performancesId, ticketTimesId,ticketsId);
return ResponseDto.success();
}
......
......@@ -3,6 +3,9 @@ package com.liquidnet.service.kylin.utils;
import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.service.adam.constant.AdamRedisConst;
import com.liquidnet.service.adam.dto.vo.AdamMemberVo;
import com.liquidnet.service.adam.dto.vo.AdamUserMemberVo;
import com.liquidnet.service.goblin.constant.GoblinRedisConst;
import com.liquidnet.service.goblin.dto.manage.vo.GoblinGoodsAnticipateValueVo;
import com.liquidnet.service.goblin.dto.vo.*;
......@@ -1447,13 +1450,13 @@ public class DataUtils {
return (List<String>) obj;
}
}
public void setPerformanceSubscribe(String uid,String performancesId,String ticketTimesId,long expirationTime) {
String redisKey=getPerformanceSubscribeKey(uid,performancesId,ticketTimesId);
public void setPerformanceTicketsSubscribe(String uid,String performancesId,String ticketTimesId,String ticketsId,long expirationTime) {
String redisKey=getPerformanceTicketsSubscribeKey(uid,performancesId,ticketTimesId,ticketsId);
redisUtil.set(redisKey, 1,expirationTime);
}
public Integer getPerformanceSubscribe(String uid,String performancesId,String ticketTimesId) {
String redisKey=getPerformanceSubscribeKey(uid,performancesId,ticketTimesId);
public Integer getPerformanceTicketsSubscribe(String uid,String performancesId,String ticketTimesId,String ticketsId) {
String redisKey=getPerformanceTicketsSubscribeKey(uid,performancesId,ticketTimesId,ticketsId);
Object obj = redisUtil.get(redisKey);
if (obj == null) {
return 0;
......@@ -1461,18 +1464,43 @@ public class DataUtils {
return (Integer) obj;
}
}
public void setPerformanceSubscribe(String uid,String performancesId,long expirationTime) {
String redisKey=getPerformanceSubscribeKey(uid,performancesId);
redisUtil.set(redisKey, 1,expirationTime);
}
public Integer getPerformanceSubscribe(String uid,String performancesId) {
String redisKey=getPerformanceSubscribeKey(uid,performancesId);
Object obj = redisUtil.get(redisKey);
if (obj == null) {
return 0;
} else {
return (Integer) obj;
}
}
public void deleteIsSubscribe(String uid,String performancesId,String ticketTimesId){
String redisKey=getPerformanceSubscribeKey(uid,performancesId,ticketTimesId);
public void deleteIsSubscribe(String uid,String performancesId,String ticketTimesId,String ticketsId){
String redisKey=getPerformanceTicketsSubscribeKey(uid,performancesId,ticketTimesId,ticketsId);
redisUtil.del(redisKey);
}
private String getPerformanceSubscribeKey(String uid,String performancesId,String ticketTimesId){
String redisKey = KylinRedisConst.REDIS_KEY_KYLIN_PERFORMANCE_SUBSCRIBE
private String getPerformanceTicketsSubscribeKey(String uid,String performancesId,String ticketTimesId,String ticketsId){
String redisKey = KylinRedisConst.REDIS_KEY_KYLIN_PERFORMANCE_SUBSCRIBE_TICKETS
.concat(uid)
.concat(":")
.concat(performancesId)
.concat(":")
.concat(ticketTimesId);
.concat(ticketTimesId)
.concat(":")
.concat(ticketsId);
return redisKey;
}
private String getPerformanceSubscribeKey(String uid,String performancesId){
String redisKey = KylinRedisConst.REDIS_KEY_KYLIN_PERFORMANCE_SUBSCRIBE
.concat(uid)
.concat(":")
.concat(performancesId);
return redisKey;
}
public void setPerformanceSubscribeList(String uid, LinkedList<KylinPerformanceSubscribeUpushVo> list) {
......@@ -1535,4 +1563,27 @@ public class DataUtils {
public int incrOrderRefundCode(String orderCode) {
return (int) redisUtil.incr(KylinRedisConst.ORDER_REFUND_TEMP + orderCode,1);
}
//判断是否是会员
public Integer isMemberByUser(String uid) {
Integer isMember=0;
AdamUserMemberVo userMemberVo = getUserMemberVoByUid(uid);
if (null!=isMember && userMemberVo.isActive()){
isMember=1;
}
return isMember;
}
//获取用户信息
public AdamUserMemberVo getUserMemberVoByUid(String uid) {
String rk = AdamRedisConst.INFO_USER_MEMBER.concat(uid);
long s = System.currentTimeMillis();
AdamUserMemberVo vo = (AdamUserMemberVo) redisUtil.get(rk);
if (null != vo) {
vo.setState(vo.getState() == 1 ? (vo.getExpiryAt().isAfter(LocalDateTime.now()) ? 1 : 2) : vo.getState());
}
log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s);
return vo;
}
}
......@@ -41,4 +41,5 @@ kylin_ar_ticket.update =update kylin_ticket_active set state=?,redeem_uid= ?,red
kylin_order_ticket_entities.update_status_bystation_pad=UPDATE kylin_order_ticket_entities SET `status`=?,check_client=?,updated_at=?, comment=? WHERE order_ticket_entities_id=?
# ------------------------ \u6F14\u51FA\u9884\u7EA6 ----------------------------
kylin_performance_subscribe.insert=INSERT INTO kylin_performance_subscribe(performance_id,ticket_times_id,tickets_id,user_id,type,device_tokens,push_range,push_time,push_title,is_push)VALUES(?,?,?,?,?,?,?,?,?,?)
\ No newline at end of file
kylin_performance_subscribe.insert=INSERT INTO kylin_performance_subscribe(performance_id,ticket_times_id,tickets_id,user_id,type,device_tokens,push_range,push_time,push_title,is_push)VALUES(?,?,?,?,?,?,?,?,?,?)
kylin_performance_subscribe.delete=DELETE FROM kylin_performance_subscribe WHERE performance_id= ? and ticket_times_id = ?;
\ No newline at end of file
......@@ -556,7 +556,7 @@ public class PerformanceVoTask {
unicast.setBadge(1);
unicast.setTicker("【正在现场】开票提醒");
unicast.setTitle("【正在现场】开票提醒");
unicast.setText(pushTitle+",10分钟后即将开售,请点击进入详情页购买。");
unicast.setText(pushTitle);
String custom = UpushTargetType.getTypeAction(jumpType);
unicast.goCustomAfterOpen(custom);
unicast.setDisplayType(AndroidNotification.DisplayType.NOTIFICATION);
......@@ -588,7 +588,7 @@ public class PerformanceVoTask {
try {
IOSUnicast unicast = new IOSUnicast(iosAppkey, iosAppMasterSecret);
//alert的值设置为字典
unicast.setAlert("【正在现场】开票提醒", "", pushTitle+",10分钟后即将开售,请点击进入详情页购买。");
unicast.setAlert("【正在现场】开票提醒", "", pushTitle);
unicast.setBadge(1);
unicast.setSound("default");
if (!LnsEnum.ENV.prod.name().equals(environment.getProperty(CurrentUtil.CK_ENV_ACTIVE))) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment