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

Commit 16fa571b authored by liuran's avatar liuran

Merge remote-tracking branch 'origin/dev_member_voucher_refund' into dev_member_voucher_refund

parents 364c4d62 e86a2491
......@@ -17,7 +17,7 @@ public class AdamMemberRightsBuildParam implements Serializable {
private String memberId;
@ApiModelProperty(required = false, value = "权益ID[64]")
private String mrightsId;
@ApiModelProperty(required = true, value = "权益状态[0-INIT|1-NORMAL|2-INVALID]")
@ApiModelProperty(required = true, value = "权益状态[1-NORMAL|2-INVALID]")
@NotNull(message = "会员权益状态不能为空")
private Integer state;
......
......@@ -175,9 +175,11 @@ public class AdamMemberAdminController extends BaseController {
@PostMapping("edit_rights")
@ResponseBody
public AjaxResult editRights(@Validated AdamMemberRightsBuildParam parameter) {
if (null == parameter.getState() || parameter.getState() != 2) {
if (parameter.getState() != 2) {
// 这里编辑包含新增、更新、删除分别对应state:1,1,2
parameter.setState(1);
} else if (StringUtils.isBlank(parameter.getMrightsId())) {
return AjaxResult.warn("请指定要删除的权益ID");
}
return this.toAjax(adamMemberRightsAdminService.edit(parameter));
}
......
......@@ -73,6 +73,7 @@ public class CandyMgtCouponAdminController extends BaseController {
@PostMapping("add")
@ResponseBody
public AjaxResult addSave(@RequestBody @Validated CandyMgtCouponBuildParam buildParam) {
logger.info("operator:{},buildParam:{}", ShiroUtils.getLoginName(), buildParam);
switch (buildParam.getCouType()) {
case 1:// 代金券
BigDecimal valFace = buildParam.getValFace();
......@@ -149,7 +150,7 @@ public class CandyMgtCouponAdminController extends BaseController {
}
} else {
if (buildParam.getEventType() == 2) {// 指定用户手机号
if (StringUtils.isEmpty(buildParam.getEventLimit().trim())) {
if (StringUtils.isBlank(buildParam.getEventLimit())) {
return AjaxResult.warn("请指定手机号");
}
}
......
......@@ -178,6 +178,7 @@ public class CandyMgtCouponAdminServiceImpl extends ServiceImpl<CandyMgtCouponMa
@Override
public boolean saveMgtCouponForCouponBuild(CandyMgtCouponBuildParam parameter) {
log.info("parameter:{}", parameter);
String eventAtStr = parameter.getEventAt();
LocalDateTime nowTime = LocalDateTime.now();
LocalDateTime eventAt = StringUtils.isEmpty(eventAtStr.trim()) ? nowTime
......
......@@ -61,6 +61,7 @@ liquidnet:
pay: http://devdragon.zhengzai.tv/dragon/pay/dragonPay
check: http://devdragon.zhengzai.tv/dragon/pay/checkOrder
localUrl: http://devkylin.zhengzai.tv/kylin/order/syncOrder
url: http://devkylin.zhengzai.tv/kylin
order:
adam:
url: http://devadam.zhengzai.tv/adam
......@@ -134,6 +135,14 @@ liquidnet:
android:
appkey: 5c6cf6cbb465f592e4000bae
appMasterSecret: dmsho74wlpd1hp7vrwp9bjehzwo29pza
shumei:
url:
easemob:
api-url: https://a1.easemob.com
org-name: 1106210901175651
app-name: demo
client-id: YXA6x4Xs7cYDQcOv6BPuM3hUDA
client-secret: YXA6olr2qaW65xlkFixS81kiWnplrW4
#application-dev-end
......@@ -61,6 +61,7 @@ liquidnet:
pay: http://testdragon.zhengzai.tv/dragon/pay/dragonPay
check: http://testdragon.zhengzai.tv/dragon/pay/checkOrder
localUrl: http://testkylin.zhengzai.tv/kylin/order/syncOrder
url: http://testkylin.zhengzai.tv/kylin
candy:
url: http://testcandy.zhengzai.tv/candy
order:
......@@ -134,6 +135,14 @@ liquidnet:
android:
appkey: 5c6cf6cbb465f592e4000bae
appMasterSecret: dmsho74wlpd1hp7vrwp9bjehzwo29pza
shumei:
url:
easemob:
api-url: https://a1.easemob.com
org-name: 1106210901175651
app-name: demo
client-id: YXA6x4Xs7cYDQcOv6BPuM3hUDA
client-secret: YXA6olr2qaW65xlkFixS81kiWnplrW4
#application-test-end
package com.liquidnet.service.kylin.controller;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import com.liquidnet.service.kylin.service.impl.KylinPerformancesServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* @author AnJiabin <anjiabin@zhengzai.tv>
* @version V1.0
* @Description: TODO
* @class: KylinMyPerformancesController
* @Package com.liquidnet.service.kylin.controller
* @Copyright: LightNet @ Copyright (c) 2021
* @date 2021/9/12 13:34
*/
@Api(tags = "前端-演出")
@RestController
@RequestMapping("myPerformance")
@Slf4j
public class KylinMyPerformancesController {
@Autowired
private KylinPerformancesServiceImpl kylinPerformancesService;
@GetMapping("performancesList")
@ApiOperation("我的已购票演出列表")
public ResponseDto<List<KylinPerformanceVo>> performancesList() {
List<KylinPerformanceVo> result = kylinPerformancesService.myPerformancesList();
return ResponseDto.success(result);
}
}
......@@ -2,6 +2,7 @@ package com.liquidnet.service.kylin.service.impl;
import com.liquidnet.commons.lang.CommonConst;
import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.DistanceUtil;
import com.liquidnet.service.base.UserPathDto;
......@@ -594,4 +595,13 @@ public class KylinPerformancesServiceImpl implements IKylinPerformancesService {
}
return isMemberStatus;
}
/**
* 获取我的已购票演出列表
* @return
*/
public List<KylinPerformanceVo> myPerformancesList() {
String userId = CurrentUtil.getCurrentUid();
List<KylinPerformanceVo> performanceVoList = dataUtils.myPerformancesList(userId);
return performanceVoList;
}
}
......@@ -549,4 +549,30 @@ public class DataUtils {
}
}
/**
* 获取我的演出列表
*/
public List<KylinPerformanceVo> myPerformancesList(String userId) {
Query queryNew = new Query();
queryNew.addCriteria(Criteria.where("userId").is(userId));
List<String> performanceIdList = mongoTemplate.findDistinct(queryNew, "performanceId", "KylinOrderTicketVo",KylinOrderTicketVo.class, String.class);
log.info("myPerformancesList performanceIdList.size:{}",performanceIdList.size());
// 固定条件
Query query = getCommonWhere();
// 不要查询的字段
query.fields().exclude("details");
query.fields().exclude("noticeImage");
query.fields().exclude("ticketTimeList");
query.fields().exclude("describeElectronic");
//
query.addCriteria(Criteria.where("performancesId").in(performanceIdList));
query.with(Sort.by(
Sort.Order.desc("timeStart")
));
List<KylinPerformanceVo> kylinPerformanceVoList = mongoTemplate.find(query, KylinPerformanceVo.class, KylinPerformanceVo.class.getSimpleName());
return kylinPerformanceVoList;
}
}
......@@ -5,6 +5,7 @@ import com.liquidnet.common.sms.constant.SmsEnum;
import com.liquidnet.commons.lang.util.*;
import com.liquidnet.service.adam.dto.vo.AdamAddressesVo;
import com.liquidnet.service.adam.dto.vo.AdamEntersVo;
import com.liquidnet.service.adam.dto.vo.AdamUserMemberVo;
import com.liquidnet.service.base.*;
import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.kylin.constant.KylinRedisConst;
......@@ -141,7 +142,21 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
String timeStart = ticketData.getTimeStart(); // 普通开售时间
String timeEnd = ticketData.getTimeEnd(); // 购票停售时间
String timeExpressEnd = ticketData.getTimeEndExpress(); // 快递停售时间
boolean isMember = orderUtils.isMember(uid);//feignAdamBaseClient.isMember(uid).getData();//获取是否是会员
AdamUserMemberVo memberData = orderUtils.isMember(uid);
Boolean isMember;
Boolean isOldMember;
if (memberData == null) {
isMember = false;
isOldMember = false;
} else {
isMember = true;
if (memberData.isOldMember()) {
isOldMember = true;
} else {
isOldMember = false;
}
}
int memberType; //会员状态 不需要判断会员 1判断会员逻辑 2会员专属
if (ticketData.getIsExclusive() == 1) {
memberType = 2;
......@@ -179,10 +194,14 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
//通用判断时间
if (payOrderParam.getAdvanceCode() != null) {
advanceMap = orderUtils.useCoupon(payOrderParam.getAdvanceCode(), "购买 "+performanceData.getTitle(), BigDecimal.ZERO,payOrderParam.getPerformanceId(),payOrderParam.getTimeId(),payOrderParam.getTicketId());
Integer typeVoucher = (Integer) advanceMap.get("type");
if (typeVoucher.equals(-1)) {
return ResponseDto.failure("优先券券不可用");
if (isOldMember) {
} else {
advanceMap = orderUtils.useCoupon(payOrderParam.getAdvanceCode(), "购买 " + performanceData.getTitle(), BigDecimal.ZERO, payOrderParam.getPerformanceId(), payOrderParam.getTimeId(), payOrderParam.getTicketId());
Integer typeVoucher = (Integer) advanceMap.get("type");
if (typeVoucher.equals(-1)) {
return ResponseDto.failure("优先券券不可用");
}
}
}
......@@ -205,11 +224,11 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
//快递票判断
if (payOrderParam.getIsExpress() != null) {
if (payOrderParam.getIsExpress() == 1 && DateUtil.compareStrDay(DateUtil.getNowTime(), timeExpressEnd) == 1) {
orderUtils.backAdvanceCoupon(payOrderParam.getAdvanceCode(),uid);
orderUtils.backAdvanceCoupon(payOrderParam.getAdvanceCode(), uid);
return ResponseDto.failure(ErrorMapping.get("20013"));//快递票不卖
}
if (payOrderParam.getIsExpress() == 1 && payOrderParam.getAddressId().isEmpty()) {
orderUtils.backAdvanceCoupon(payOrderParam.getAdvanceCode(),uid);
orderUtils.backAdvanceCoupon(payOrderParam.getAdvanceCode(), uid);
return ResponseDto.failure(ErrorMapping.get("20014"));//快递票未填写收货地址
}
}
......
......@@ -144,13 +144,17 @@ public class OrderUtils {
return surplusGeneral;
}
public boolean isMember(String uid) {
public AdamUserMemberVo isMember(String uid) {
// String resultData = HttpUtil.get("/adam/member/check/depth?uid=" + uid, null);
// AdamUserMemberVo vo = JsonUtils.fromJson(resultData, AdamUserMemberVo.class);
String rk = AdamRedisConst.INFO_USER_MEMBER.concat(uid);
AdamUserMemberVo vo = (AdamUserMemberVo) redisUtil.get(rk);
return null != vo && vo.isActive();
if(null != vo && vo.isActive()){
return vo;
}else{
return null;
}
}
......
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