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

Commit 6300b808 authored by jiangxiulong's avatar jiangxiulong

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

parents bb430898 1dd12941
......@@ -3,9 +3,9 @@ package com.liquidnet.service.adam.dto;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import javax.servlet.http.HttpServletRequest;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Map;
@ApiModel(value = "AdamMemberOrderCallbackParam", description = "购买会员或会员码的支付回调")
@Data
......@@ -30,15 +30,15 @@ public class AdamMemberOrderCallbackParam implements Serializable, Cloneable {
}
}
public AdamMemberOrderCallbackParam get(Map mapParameter) {
this.setStatus((Integer) mapParameter.get("status"));
this.setType((String) mapParameter.get("type"));
this.setCode((String) mapParameter.get("code"));
this.setOrderCode((String) mapParameter.get("order_code"));
this.setPrice((BigDecimal) mapParameter.get("price"));
this.setPaymentType((String) mapParameter.get("payment_type"));
this.setPaymentAt((String) mapParameter.get("payment_at"));
this.setPaymentId((String) mapParameter.get("payment_id"));
public AdamMemberOrderCallbackParam get(HttpServletRequest servletRequest) {
this.setStatus(Integer.valueOf(servletRequest.getParameter("status")));
this.setType(servletRequest.getParameter("type"));
this.setCode(servletRequest.getParameter("code"));
this.setOrderCode(servletRequest.getParameter("order_code"));
this.setPrice(BigDecimal.valueOf(Double.parseDouble(servletRequest.getParameter("price"))));
this.setPaymentType(servletRequest.getParameter("payment_type"));
this.setPaymentAt(servletRequest.getParameter("payment_at"));
this.setPaymentId(servletRequest.getParameter("payment_id"));
return this;
}
}
package com.liquidnet.service.adam.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo;
import com.liquidnet.service.adam.dto.vo.AdamCollectBaseVo;
import com.liquidnet.service.adam.dto.vo.AdamCollectVo;
import com.liquidnet.service.adam.entity.AdamCollection;
/**
* <p>
......@@ -14,7 +12,7 @@ import com.liquidnet.service.adam.entity.AdamCollection;
* @author liquidnet
* @since 2021-05-10
*/
public interface IAdamCollectionService extends IService<AdamCollection> {
public interface IAdamCollectionService {
void add(AdamCollectBaseVo collectVo);
......
......@@ -44,6 +44,8 @@ public interface IAdamRdmService {
AdamEntersVo getEntersVoByUidEntersId(String uid, String entersId);
List<AdamEntersVo> getEntersVoByUidEntersIds(String uid, String... entersIds);
void delEntersVoByUid(String uid);
boolean setAddressesVoByUid(String uid, List<AdamAddressesVo> list);
......@@ -76,11 +78,11 @@ public interface IAdamRdmService {
String getMemberAgreement();
boolean setShotMemberOrderVoByOrderNo(String orderNo, AdamMemberOrderVo vo);
boolean setShotMemberOrderVoByOrderNo(String uid, String orderNo, AdamMemberOrderVo vo);
AdamMemberOrderVo getShotMemberOrderVoByOrderNo(String orderNo);
AdamMemberOrderVo getShotMemberOrderVoByOrderNo(String uid, String orderNo);
void delShotMemberOrderVoByOrderNo(String orderNo);
void delShotMemberOrderVoByOrderNo(String uid, String orderNo);
boolean setMemberNoByMemberId(String memberId, long val);
......@@ -92,6 +94,8 @@ public interface IAdamRdmService {
AdamMemberCodeVo getMemberCodeVoByCode(String memberCode);
void delMemberCodeVoByCode(String memberCode);
boolean setTagsForSex(List<AdamTagVo> voList);
List<AdamTagVo> getTagsForSex();
......
......@@ -9,6 +9,7 @@ import com.liquidnet.service.kylin.dao.PerformanceMemberAuditDao;
import com.liquidnet.service.kylin.dao.PerformanceRecommendAdminDao;
import com.liquidnet.service.kylin.dao.PerformanceRecommendDao;
import com.liquidnet.service.kylin.dao.PerformanceTitleDao;
import com.liquidnet.service.kylin.service.admin.IKylinPerformancesAdminService;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
......@@ -30,7 +31,7 @@ public class KylinMemberAuditController extends BaseController {
private String prefix = "zhengzai/kylin/performances/memberAudit";
@Autowired
private KylinPerformancesAdminServiceImpl kylinPerformancesService;
private IKylinPerformancesAdminService kylinPerformancesService;
@RequiresPermissions("kylin:performances:memberAudit")
@GetMapping()
......
......@@ -18,6 +18,8 @@ import com.liquidnet.service.kylin.dto.param.SysDamaiParam;
import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceAgentVo;
import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceDamaiVo;
import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformanceMisVo;
import com.liquidnet.service.kylin.service.admin.IKylinPerformancesAdminService;
import com.liquidnet.service.kylin.service.other.DamaiService;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
......@@ -40,10 +42,10 @@ public class KylinPerformancesController extends BaseController {
private String prefix = "zhengzai/kylin/performances";
@Autowired
private KylinPerformancesAdminServiceImpl kylinPerformancesService;
private IKylinPerformancesAdminService kylinPerformancesService;
@Autowired
private KylinDamaiServiceImpl damaiService;
private DamaiService damaiService;
@RequiresPermissions("kylin:performances:view")
@GetMapping()
......
......@@ -12,6 +12,7 @@ import com.liquidnet.service.kylin.dao.PerformanceTitleDao;
import com.liquidnet.service.kylin.dto.param.PerformanceAdminListParam;
import com.liquidnet.service.kylin.dto.param.PerformanceRecommendAdminParam;
import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformanceMisVo;
import com.liquidnet.service.kylin.service.admin.IKylinPerformancesAdminService;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
......@@ -33,7 +34,7 @@ public class KylinPerformancesRecommendController extends BaseController {
private String prefix = "zhengzai/kylin/performances/recommend";
@Autowired
private KylinPerformancesAdminServiceImpl kylinPerformancesService;
private IKylinPerformancesAdminService kylinPerformancesService;
@RequiresPermissions("kylin:performances:recommend")
@GetMapping()
......
......@@ -14,6 +14,8 @@ import com.liquidnet.service.kylin.dao.RoadShowAdminListDao;
import com.liquidnet.service.kylin.dto.param.CreateRoadShowParam;
import com.liquidnet.service.kylin.dto.vo.admin.KylinRoadShowAdminVo;
import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformanceMisVo;
import com.liquidnet.service.kylin.service.admin.IKylinPerformancesAdminService;
import com.liquidnet.service.kylin.service.admin.IKylinRoadShowsAdminService;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
......@@ -35,9 +37,9 @@ public class KylinRoadShowController extends BaseController {
private String prefix = "zhengzai/kylin/performances/roadShow";
@Autowired
private KylinRoadShowsAdminServiceImpl kylinRoadShowsAdminService;
private IKylinRoadShowsAdminService kylinRoadShowsAdminService;
@Autowired
private KylinPerformancesAdminServiceImpl kylinPerformancesService;
private IKylinPerformancesAdminService kylinPerformancesService;
@RequiresPermissions("kylin:performances:roadShow")
@GetMapping()
......
......@@ -535,6 +535,7 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
public boolean changeSysDamai(List<SysDamaiParam> params) {
try {
LocalDateTime updatedAt = LocalDateTime.now();
String performancesId="";
for (SysDamaiParam item : params) {
if (item.getStatus() != 0 && item.getStatus() != 1) {
return false;
......@@ -546,12 +547,14 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
ticketStatus.setSyncDamai(item.getStatus());
ticketStatusMapper.update(ticketStatus, new UpdateWrapper<KylinTicketStatus>().eq("ticket_id", item.getId()));
} else if (item.getType().equals("performance")) {
performancesId=item.getId();
KylinPerformanceStatus performanceStatus = new KylinPerformanceStatus();
performanceStatus.setUpdatedAt(updatedAt);
performanceStatus.setSyncDamai(item.getStatus());
performanceStatusMapper.update(performanceStatus, new UpdateWrapper<KylinPerformanceStatus>().eq("performance_id", item.getId()));
}
}
dataUtils.updatePerformanceMongo(performancesId);
return true;
} catch (Exception e) {
return false;
......
package com.liquidnet.common.exception;
import com.liquidnet.common.exception.constant.ServiceErrorCode;
/**
* @author AnJiabin <jiabin.an@lightnet.io>
* @version V1.0
......@@ -12,44 +10,46 @@ import com.liquidnet.common.exception.constant.ServiceErrorCode;
* @date 2020/9/21 10:37
*/
public class LiquidnetServiceException extends RuntimeException {
private ServiceErrorCode errorCode;
private static final long serialVersionUID = -4836329430647395511L;
private String code;
private String message;
private String url;
public LiquidnetServiceException() {
}
public LiquidnetServiceException(ServiceErrorCode errorCode) {
this.errorCode = errorCode;
}
private Object data;
public LiquidnetServiceException(String message) {
public LiquidnetServiceException(String code, String message) {
super(message);
this.code = code;
this.message = message;
}
public LiquidnetServiceException(ServiceErrorCode errorCode, String message) {
public LiquidnetServiceException(String code, String message, Object data) {
super(message);
this.errorCode = errorCode;
this.code = code;
this.message = message;
this.data = data;
}
public ServiceErrorCode errorCode() {
return errorCode;
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
@Override
public String getMessage() {
return message;
}
public LiquidnetServiceException(ServiceErrorCode errorCode, String message, String url) {
super(message);
this.errorCode = errorCode;
public void setMessage(String message) {
this.message = message;
this.url = url;
}
public String getUrl() {
return url;
public Object getData() {
return data;
}
public void setData(Object data) {
this.data = data;
}
}
......@@ -33,7 +33,7 @@ public class PageControllerAdviceHandler {
model.addAttribute("msg", exception.getMessage());
if (exception instanceof LiquidnetServiceException) {
LiquidnetServiceException ex = (LiquidnetServiceException) exception;
logger.error("PageController errorCode:{} errorMsg:{}", ex.errorCode(), ex.getMessage());
logger.error("PageErrorController errorCode:{},errorMsg:{}", ex.getCode(), ex.getMessage());
}
return "500";
}
......
......@@ -42,35 +42,34 @@ public class RestControllerAdviceHandler {
logger.error("Ex.Handler.RestController:{},ex:{},request:{},param:{}",
rex.getClass().getSimpleName(), rex.getLocalizedMessage(), req.getRequestURI(), JSON.toJSONString(req.getParameterMap()));
if (rex instanceof MissingServletRequestParameterException) {
MissingServletRequestParameterException ygex = ((MissingServletRequestParameterException) rex);
MissingServletRequestParameterException ygex = (MissingServletRequestParameterException) rex;
String message = ygex.getMessage();
return new ResponseEntity<Error>(new Error(ErrorCode.HTTP_PARAM_ERROR.getCode(), message), HttpStatus.OK);
}
if (rex instanceof ConstraintViolationException) {
ConstraintViolationException ygex = ((ConstraintViolationException) rex);
ConstraintViolationException ygex = (ConstraintViolationException) rex;
ConstraintViolation violation = (ConstraintViolation) ygex.getConstraintViolations().toArray()[0];
String violationNode = violation.getPropertyPath().toString();
String message = violationNode.substring(violationNode.indexOf(".") + 1) + violation.getMessage();
return new ResponseEntity<Error>(new Error(ErrorCode.HTTP_PARAM_ERROR.getCode(), message), HttpStatus.OK);
}
if (rex instanceof MethodArgumentNotValidException) {
MethodArgumentNotValidException ygex = ((MethodArgumentNotValidException) rex);
MethodArgumentNotValidException ygex = (MethodArgumentNotValidException) rex;
FieldError fieldError = ygex.getBindingResult().getFieldErrors().get(0);
String message = fieldError.getField() + fieldError.getDefaultMessage();
return new ResponseEntity<Error>(new Error(ErrorCode.HTTP_PARAM_ERROR.getCode(), message), HttpStatus.OK);
}
if (rex instanceof LiquidnetFeignException) {
LiquidnetFeignException ygex = ((LiquidnetFeignException) rex);
LiquidnetFeignException ygex = (LiquidnetFeignException) rex;
String errorCode = ygex.errorCode().getCode();
String message = ygex.getMessage();
message = message == null ? ygex.errorCode().getMessage() : message;
return new ResponseEntity<Error>(new Error(errorCode, message), HttpStatus.OK);
}
if (rex instanceof LiquidnetServiceException) {
LiquidnetServiceException ygex = ((LiquidnetServiceException) rex);
String errorCode = ygex.errorCode().getCode();
LiquidnetServiceException ygex = (LiquidnetServiceException) rex;
String errorCode = ygex.getCode();
String message = ygex.getMessage();
message = message == null ? ygex.errorCode().getMessage() : message;
return new ResponseEntity<Error>(new Error(errorCode, message), HttpStatus.OK);
} else {
logger.error("Unprocessed exception", rex);
......
......@@ -8,4 +8,29 @@ public class MQConst {
public static final String QUEUES_SQL_MAIN = "queue.sql.main";
//缺票登记
public static final String EXCHANGES_LIQUIDNET_SQL_PERFORMANCE_LACK = "liquidnet.sql.performance.lack";
public static final String ROUTING_KEY_SQL_PERFORMANCE_LACK = "performance.lack";
public static final String QUEUES_SQL_PERFORMANCE_LACK = "queue.sql.performance.lack";
//创建订单
public static final String EXCHANGES_LIQUIDNET_SQL_ORDER_CREADE = "liquidnet.sql.order.create";
public static final String ROUTING_KEY_SQL_ORDER_CREATE = "order.create";
public static final String QUEUES_SQL_ORDER_CREATE = "queue.sql.order.create";
//订单再次支付
public static final String EXCHANGES_LIQUIDNET_SQL_ORDER_AGAIN = "liquidnet.sql.order.again";
public static final String ROUTING_KEY_SQL_ORDER_AGAIN = "order.again";
public static final String QUEUES_SQL_ORDER_AGAIN = "queue.sql.order.again";
//订单关闭
public static final String EXCHANGES_LIQUIDNET_SQL_ORDER_CLOSE = "liquidnet.sql.order.close";
public static final String ROUTING_KEY_SQL_ORDER_CLOSE = "order.close";
public static final String QUEUES_SQL_ORDER_CLOSE = "queue.sql.order.close";
//订单支付
public static final String EXCHANGES_LIQUIDNET_SQL_ORDER_PAY = "liquidnet.sql.order.pay";
public static final String ROUTING_KEY_SQL_ORDER_PAY = "order.pay";
public static final String QUEUES_SQL_ORDER_PAY = "queue.sql.order.pay";
}
......@@ -63,6 +63,39 @@ spring:
password: ${liquidnet.rabbitmq.password}
virtual-host: ${liquidnet.rabbitmq.virtual-host}
connection-timeout: ${liquidnet.rabbitmq.connection-timeout}
redis:
database: 15
port: ${liquidnet.redis.port}
host: ${liquidnet.redis.host}
password: ${liquidnet.redis.password}
lettuce:
pool:
max-active: 8
max-wait: -1
max-idle: 8
min-idle: 0
redisson:
singleServerConfig:
address: redis://${liquidnet.redis.host}:${liquidnet.redis.port}
password: ${liquidnet.redis.password}
clientName: null
database: 7 #选择使用哪个数据库0~15
idleConnectionTimeout: 10000
connectTimeout: 10000
timeout: 3000
retryAttempts: 3
retryInterval: 1500
subscriptionsPerConnection: 5
subscriptionConnectionMinimumIdleSize: 1
subscriptionConnectionPoolSize: 50
connectionMinimumIdleSize: 32
connectionPoolSize: 64
dnsMonitoringInterval: 5000
threads: 16
nettyThreads: 32
codec:
class: "org.redisson.codec.JsonJacksonCodec"
transportMode: "NIO"
datasource:
name: ${liquidnet.mysql.database-name}
url: jdbc:mysql://${liquidnet.mysql.urlHostAndPort}/${liquidnet.mysql.database-name}?serverTimezone=UTC&characterEncoding=utf-8&useSSL=false
......
......@@ -203,7 +203,7 @@ public class KylinOrderTickets implements Serializable {
orderTicketsId, userId, userName, userMobile, performanceTitle, orderCode, qrCode, orderType, orderVersion,
number, price, priceMember, priceTotal, priceVoucher, priceActual, priceExpress, priceRefund, refundNumber,
payType, paymentType, timePay, expressContacts, expressAddress, expressPhone, couponType, getTicketType,
getTicketDescribe, payCountdownMinute, comment, createdAt, updatedAt
getTicketDescribe, payCountdownMinute, comment, createdAt, updatedAt,payCode
};
}
......
......@@ -4,6 +4,7 @@ import com.liquidnet.service.kylin.dao.ChildDetailsDao;
import com.liquidnet.service.kylin.dao.ChildListDao;
import com.liquidnet.service.kylin.entity.KylinCheckUser;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
......@@ -17,7 +18,7 @@ import java.util.List;
*/
public interface KylinCheckUserMapper extends BaseMapper<KylinCheckUser> {
List<ChildListDao> childSimpleList(String merchantId,String mobile);
List<ChildListDao> childSimpleList(@Param("merchantId") String merchantId, @Param("mobile") String mobile);
ChildDetailsDao childDetails(String merchantId, String checkUserId);
ChildDetailsDao childDetails(@Param("merchantId")String merchantId, @Param("merchantId")String checkUserId);
}
......@@ -4,6 +4,7 @@ import com.liquidnet.service.kylin.dao.ChildListDao;
import com.liquidnet.service.kylin.dao.ChildPerformanceDao;
import com.liquidnet.service.kylin.entity.KylinCheckUserPerformances;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
......@@ -17,7 +18,7 @@ import java.util.List;
*/
public interface KylinCheckUserPerformancesMapper extends BaseMapper<KylinCheckUserPerformances> {
List<ChildPerformanceDao> childPerformanceList(String merchantId,String checkUserId,String name);
List<ChildPerformanceDao> childPerformanceList(@Param("merchantId") String merchantId, @Param("checkUserId") String checkUserId, @Param("name") String name);
List<ChildPerformanceDao> unChildPerformanceList(String merchantId,String checkUserId,String name);
List<ChildPerformanceDao> unChildPerformanceList(@Param("merchantId") String merchantId, @Param("checkUserId") String checkUserId, @Param("name") String name);
}
......@@ -28,7 +28,7 @@ public class AdamRedisConst {
public static final String INFO_MEMBER_CODE = INFO.concat("member:code:");
public static final String SHOT = "shot:";
public static final String SHOT_MEMBER_ORDER = SHOT.concat("member:order:");
public static final String SHOT_MEMBER_ORDER = SHOT.concat("morder:");
public static final String INFO_TAGS_SEX = INFO.concat("tags:sex");
public static final String INFO_TAGS_MUSIC = INFO.concat("tags:music");
......
......@@ -3,10 +3,8 @@ package com.liquidnet.service.adam.controller;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.service.adam.dto.AdamEntersParam;
import com.liquidnet.service.adam.dto.vo.AdamEntersVo;
import com.liquidnet.service.adam.entity.AdamEnters;
import com.liquidnet.service.adam.service.IAdamEntersService;
import com.liquidnet.service.adam.service.IAdamRdmService;
import com.liquidnet.service.base.ErrorMapping;
......@@ -15,15 +13,13 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
/**
......@@ -107,10 +103,10 @@ public class AdamEntersController {
@ApiOperationSupport(order = 6)
@ApiOperation(value = "入场人详情")
@PostMapping("query/{entersId}")
public ResponseDto<AdamEntersVo> query(@NotBlank @PathVariable String entersId) {
AdamEntersVo vo = adamRdmService.getEntersVoByUidEntersId(CurrentUtil.getCurrentUid(), entersId);
return null == vo ? ResponseDto.failure(ErrorMapping.get("10105")) : ResponseDto.success(vo);
@PostMapping("query")
public ResponseDto<List<AdamEntersVo>> query(@NotBlank @RequestParam String entersIds) {
List<AdamEntersVo> vos = adamRdmService.getEntersVoByUidEntersIds(CurrentUtil.getCurrentUid(), entersIds.split(","));
return CollectionUtils.isEmpty(vos) ? ResponseDto.failure(ErrorMapping.get("10105")) : ResponseDto.success(vos);
}
@ApiOperationSupport(order = 7)
......
......@@ -270,7 +270,6 @@ public class AdamLoginController {
}
private String ssoProcess(AdamUserInfoVo userInfoVo) {
long startTime = System.currentTimeMillis();
Map<String, Object> claimsMap = new HashMap<>();
claimsMap.put("sub", userInfoVo.getUid());
// TODO: 2021/5/25 修改手机号更新TOKEN
......@@ -285,7 +284,6 @@ public class AdamLoginController {
DigestUtils.md5DigestAsHex(token.getBytes(StandardCharsets.UTF_8)),
jwtValidator.getExpireTtl() * 60
);
log.info(" redis ssoProcess calltime: {}",System.currentTimeMillis() - startTime);
return token;
}
}
......@@ -29,7 +29,6 @@ import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import java.util.Map;
@ApiSupport(order = 10031)
@Api(tags = "购买会员")
......@@ -119,15 +118,16 @@ public class AdamMemberOrderController {
* 通知响应:'success',响应成功,将不再通知客户端
* 通知响应:'fail',响应失败,将不再通知客户端,建议在订单异常的状态下响应失败
*
* @param mapParameter
* @return
*/
@ApiOperationSupport(order = 2)
@ApiOperation(value = "会员支付回调")
@PostMapping("callback")
public String paymentNotifyCallBack(Map<String, Object> mapParameter) {
log.debug("/member/callback.mapParameter:{}, token:{}", JsonUtils.toJson(mapParameter), ServletUtils.getRequest().getHeader("token"));
AdamMemberOrderCallbackParam parameter = AdamMemberOrderCallbackParam.getNew().get(mapParameter);
public String paymentNotifyCallBack() {
log.debug("/member/callback.mapParameter:{}, token:{}", JsonUtils.toJson(ServletUtils.getRequest().getParameterMap()), ServletUtils.getRequest().getHeader("token"));
// TODO: 2021/6/13 验签
AdamMemberOrderCallbackParam parameter = AdamMemberOrderCallbackParam.getNew().get(ServletUtils.getRequest());
if (1 != parameter.getStatus() ||
!parameter.getType().equals("VIP") ||
null == parameter.getOrderCode() ||
......@@ -140,11 +140,11 @@ public class AdamMemberOrderController {
ResponseDto<Object> dto = adamMemberOrderService.paymentNotifyCallBack(parameter);
if (!dto.isSuccess()) {
log.warn("###会员支付回调处理失败:handleDto:{},CallbackParam:{}", JsonUtils.toJson(dto), JsonUtils.toJson(mapParameter));
log.warn("###会员支付回调处理失败:handleDto:{},CallbackParam:{}", JsonUtils.toJson(dto), JsonUtils.toJson(parameter));
return "fail";
}
return "fail";
return "success";
}
@ApiOperationSupport(order = 3)
......@@ -189,14 +189,14 @@ public class AdamMemberOrderController {
@ApiOperation(value = "会员订单详情")
@GetMapping("info/{orderNo}")
public ResponseDto<AdamMemberOrderVo> getMemberOrderList(@NotBlank @PathVariable String orderNo) {
return ResponseDto.success(adamRdmService.getShotMemberOrderVoByOrderNo(orderNo));
return ResponseDto.success(adamRdmService.getShotMemberOrderVoByOrderNo(CurrentUtil.getCurrentUid(), orderNo));
}
@ApiOperationSupport(order = 6)
@ApiOperation(value = "会员订单状态")
@GetMapping("check")
public ResponseDto<Integer> checkOrderResult(@NotBlank @RequestParam String orderNo) {
AdamMemberOrderVo memberOrderInfo = adamRdmService.getShotMemberOrderVoByOrderNo(orderNo);
AdamMemberOrderVo memberOrderInfo = adamRdmService.getShotMemberOrderVoByOrderNo(CurrentUtil.getCurrentUid(), orderNo);
if (null == memberOrderInfo) {
return ResponseDto.failure(ErrorMapping.get("10211"));
}
......
......@@ -57,52 +57,69 @@ public class AdamUserController {
public ResponseDto<AdamUserInfoVo> edit(@Valid @RequestBody AdamUserInfoParam parameter) {
log.debug("parameter:{}", JsonUtils.toJson(parameter));
final AdamTagVo sex = parameter.getSex();
AdamTagVo sex = parameter.getSex();
if (null == sex) {
return ResponseDto.failure(ErrorMapping.get("10011"));
}
List<AdamTagVo> sexList = this.getTagsForSex().getData();
List<AdamTagVo> existSexVoList = sexList.stream().filter(r -> r.getVal().equals(sex.getVal())).collect(Collectors.toList());
if (CollectionUtils.isEmpty(existSexVoList)) {
List<AdamTagVo> allSexTagVos = this.getTagsForSex().getData();
Optional<AdamTagVo> existSexTagVoOptional = allSexTagVos.stream().filter(r -> r.getVal().equals(sex.getVal())).findAny();
if (!existSexTagVoOptional.isPresent()) {
// 已选中的性别标签不在系统性别标签库中
return ResponseDto.failure(ErrorMapping.get("10011"));
}
List<AdamTagParentVo> tagMe = parameter.getTagMe();
if (null == tagMe) {
List<AdamTagParentVo> tagMeVos = parameter.getTagMe();
if (null == tagMeVos) {
return ResponseDto.failure(ErrorMapping.get("10012"));
}
List<String> chooseTagMeParentValList = tagMe.stream().map(AdamTagParentVo::getVal).collect(Collectors.toList());
List<AdamTagParentVo> existParentVoList = this.getTagsForMusic().getData()
.stream().filter(r -> chooseTagMeParentValList.contains(r.getVal())).collect(Collectors.toList());
if (chooseTagMeParentValList.size() != existParentVoList.size()) {
List<String> chooseTagMeParentVals = tagMeVos.stream().map(AdamTagParentVo::getVal).collect(Collectors.toList());
List<AdamTagParentVo> existParentVos = this.getTagsForMusic().getData()
.stream().filter(r -> chooseTagMeParentVals.contains(r.getVal())).collect(Collectors.toList());
if (chooseTagMeParentVals.size() != existParentVos.size()) {
// 已选中的父级标签与系统筛选命中的父级标签数量不同
return ResponseDto.failure(ErrorMapping.get("10012"));
}
for (AdamTagParentVo parentVo : existParentVoList) {
List<AdamTagParentVo> tagMeVoList = new ArrayList<>();
// tagMe子级标签校验处理
for (AdamTagParentVo parentVo : tagMeVos) {
// 系统对应的父级标签
AdamTagParentVo existParentVo = existParentVos.stream().filter(r -> r.getVal().equals(parentVo.getVal())).findAny().get();
List<AdamTagVo> tagVos = parentVo.getTagVos();
List<AdamTagVo> chooseTagVos =
tagMe.stream().filter(r -> r.getVal().equals(parentVo.getVal())).collect(Collectors.toList()).get(0).getTagVos();
// TODO: 2021/6/13 第一版前端没有分级,暂不开启校验
if (CollectionUtils.isEmpty(tagVos)) {
existParentVo.setTagVos(null);
tagMeVoList.add(existParentVo);
continue;
}
List<AdamTagVo> allTagVos = existParentVo.getTagVos();
if (tagVos.size() < chooseTagVos.size()) {
if (CollectionUtils.isEmpty(allTagVos) || tagVos.size() > allTagVos.size()) {
// 已选中的子级标签数量大于系统对应子级标签数量
return ResponseDto.failure(ErrorMapping.get("10012"));
}
List<String> chooseTagVoVals = chooseTagVos.stream().map(AdamTagVo::getVal).collect(Collectors.toList());
// 已选中的子级标签key集合
List<String> chooseTagVoVals = tagVos.stream().map(AdamTagVo::getVal).collect(Collectors.toList());
List<AdamTagVo> existTagVos = tagVos.stream().filter(r -> chooseTagVoVals.contains(r.getVal())).collect(Collectors.toList());
List<AdamTagVo> existTagVos = allTagVos.stream().filter(r -> chooseTagVoVals.contains(r.getVal())).collect(Collectors.toList());
if (chooseTagVoVals.size() != existTagVos.size()) {
return ResponseDto.failure(ErrorMapping.get("10012"));
}
existParentVo.setTagVos(existTagVos);
tagMeVoList.add(existParentVo);
}
AdamUserInfoVo editUserInfoVo = adamRdmService.getUserInfoVoByUid(CurrentUtil.getCurrentUid());
editUserInfoVo.setAvatar(parameter.getAvatar());
editUserInfoVo.setBackground(parameter.getBackground());
editUserInfoVo.setNickname(parameter.getNickname());
editUserInfoVo.setSex(existSexVoList.get(0));
editUserInfoVo.setSex(existSexTagVoOptional.get());
editUserInfoVo.setBirthday(parameter.getBirthday());
editUserInfoVo.setArea(parameter.getArea());
editUserInfoVo.setSignature(parameter.getSignature());
editUserInfoVo.setTagMe(tagMe);
editUserInfoVo.setTagMe(tagMeVoList);
editUserInfoVo.setUpdatedAt(DateUtil.getNowTime());
editUserInfoVo.setIsComplete(1);
......
package com.liquidnet.service.adam.service.impl;
import com.liquidnet.common.exception.LiquidnetServiceException;
import com.liquidnet.common.mq.constant.MQConst;
import com.liquidnet.commons.lang.util.*;
import com.liquidnet.service.adam.dto.AdamAddressesParam;
import com.liquidnet.service.adam.dto.vo.AdamAddressesVo;
import com.liquidnet.service.adam.service.IAdamAddressesService;
import com.liquidnet.service.adam.service.IAdamRdmService;
import com.liquidnet.service.base.ErrorMapping;
import com.liquidnet.service.base.SqlMapping;
import com.mongodb.client.model.FindOneAndUpdateOptions;
import com.mongodb.client.model.ReturnDocument;
......@@ -25,6 +27,7 @@ import org.springframework.util.CollectionUtils;
import java.time.LocalDateTime;
import java.util.LinkedList;
import java.util.List;
import java.util.stream.IntStream;
/**
* <p>
......@@ -70,8 +73,8 @@ public class AdamAddressesServiceImpl implements IAdamAddressesService {
)
);
vos.add(vo);
adamRdmService.setAddressesVoByUid(currentUid, vos);
adamRdmService.delAddressesVoByUid(currentUid);
return vo.getAddressesId();
}
......@@ -96,8 +99,9 @@ public class AdamAddressesServiceImpl implements IAdamAddressesService {
toMqObjs.add(new Object[]{unDeaultVo.getIsDefault(), now, unDefaultVoAfter.getAddressesId()});
vos.removeIf(r -> r.getAddressesId().equals(unDefaultVoAfter.getAddressesId()));
vos.add(unDefaultVoAfter);
// vos.removeIf(r -> r.getAddressesId().equals(unDefaultVoAfter.getAddressesId()));
// vos.add(unDefaultVoAfter);
vos = this.collectionProcess(vos, unDefaultVoAfter.getAddressesId(), unDefaultVoAfter);
}
}
{// 设置新默认
......@@ -114,8 +118,9 @@ public class AdamAddressesServiceImpl implements IAdamAddressesService {
toMqObjs.add(new Object[]{defaultVo.getIsDefault(), now, addressesId});
vos.removeIf(r -> r.getAddressesId().equals(defaultVoAfter.getAddressesId()));
vos.add(defaultVoAfter);
// vos.removeIf(r -> r.getAddressesId().equals(defaultVoAfter.getAddressesId()));
// vos.add(defaultVoAfter);
vos = this.collectionProcess(vos, defaultVoAfter.getAddressesId(), defaultVoAfter);
}
}
if (!CollectionUtils.isEmpty(toMqObjs)) {
......@@ -150,9 +155,9 @@ public class AdamAddressesServiceImpl implements IAdamAddressesService {
String currentUid = CurrentUtil.getCurrentUid();
List<AdamAddressesVo> vos = adamRdmService.getAddressesVoByUid(currentUid);
vos.removeIf(r -> r.getAddressesId().equals(parameter.getAddressesId()));
vos.add(updateVo);
adamRdmService.setAddressesVoByUid(currentUid, vos);
// vos.removeIf(r -> r.getAddressesId().equals(parameter.getAddressesId()));
// vos.add(updateVo);
adamRdmService.setAddressesVoByUid(updateVo.getUid(), this.collectionProcess(vos, parameter.getAddressesId(), updateVo));
}
}
......@@ -200,4 +205,28 @@ public class AdamAddressesServiceImpl implements IAdamAddressesService {
}
return null;
}
/* --------------------------------------------------------------- */
private List<AdamAddressesVo> collectionProcess(List<AdamAddressesVo> vos, String replaceId, AdamAddressesVo updateVo) {
int idx = IntStream.range(0, vos.size())
.filter(i -> vos.get(i).getAddressesId().equals(replaceId))
.findFirst().orElse(-1);
if (idx == -1) {
adamRdmService.delAddressesVoByUid(updateVo.getUid());
List<AdamAddressesVo> addressesVos = adamRdmService.getAddressesVoByUid(updateVo.getUid());
idx = IntStream.range(0, vos.size())
.filter(i -> addressesVos.get(i).getAddressesId().equals(replaceId))
.findFirst().orElse(-1);
if (idx == -1) {
ErrorMapping.ErrorMessage errorMessage = ErrorMapping.get("10018");
throw new LiquidnetServiceException(errorMessage.getCode(), errorMessage.getMessage());
}
}
vos.set(idx, updateVo);
return vos;
}
}
......@@ -4,10 +4,10 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageInfo;
import com.liquidnet.common.mq.constant.MQConst;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.adam.dto.vo.AdamCollectBaseVo;
import com.liquidnet.service.adam.dto.vo.AdamCollectInfoVo;
import com.liquidnet.service.adam.dto.vo.AdamCollectVo;
import com.liquidnet.service.adam.dto.vo.AdamUserInfoVo;
import com.liquidnet.service.adam.entity.AdamCollection;
import com.liquidnet.service.adam.mapper.AdamCollectionMapper;
import com.liquidnet.service.adam.service.IAdamCollectionService;
......@@ -16,9 +16,9 @@ import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.base.SqlMapping;
import com.liquidnet.service.feign.kylin.api.FeignKylinPerformanceClient;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import com.mongodb.BasicDBObject;
import com.mongodb.client.result.UpdateResult;
import lombok.extern.slf4j.Slf4j;
import org.bson.Document;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -32,6 +32,7 @@ import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.LinkedList;
import java.util.List;
/**
......@@ -44,9 +45,7 @@ import java.util.List;
*/
@Slf4j
@Service
public class AdamCollectionServiceImpl extends ServiceImpl<AdamCollectionMapper, AdamCollection> implements IAdamCollectionService {
@Autowired
MongoConverter mongoConverter;
public class AdamCollectionServiceImpl implements IAdamCollectionService {
@Autowired
MongoTemplate mongoTemplate;
@Autowired
......@@ -83,13 +82,25 @@ public class AdamCollectionServiceImpl extends ServiceImpl<AdamCollectionMapper,
@Override
public void del(String uid, String type, String... contentIds) {
LocalDateTime now = LocalDateTime.now();
String nowStr = DateUtil.format(now, DateUtil.Formatter.yyyyMMddHHmmss);
AdamCollectBaseVo delVo = AdamCollectBaseVo.getNew();
delVo.setState(2);
delVo.setUpdatedAt(DateUtil.getNowTime());
delVo.setUpdatedAt(nowStr);
UpdateResult updateResult = mongoTemplate.getCollection(AdamCollectBaseVo.class.getSimpleName()).updateMany(
Query.query(Criteria.where("uid").is(uid).and("type").is(type)
.and("contentId").in(contentIds).and("state").is(1)).getQueryObject(),
new BasicDBObject("$set", mongoConverter.convertToMongoType(delVo)));
new Document("$set", Document.parse(JsonUtils.toJson(delVo))));
if (updateResult.getModifiedCount() > 0) {
LinkedList<Object[]> toMqObjs = new LinkedList<>();
for (String c : contentIds) {
toMqObjs.add(new Object[]{now, uid, c});
}
rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
SqlMapping.get("adam_collection.del", toMqObjs));
}
}
@Override
......
......@@ -3,28 +3,33 @@ package com.liquidnet.service.adam.service.impl;
import com.github.pagehelper.PageInfo;
import com.liquidnet.common.mq.constant.MQConst;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.service.adam.dto.vo.*;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.adam.dto.vo.AdamCollectInfoVo;
import com.liquidnet.service.adam.dto.vo.AdamDisposedBaseVo;
import com.liquidnet.service.adam.dto.vo.AdamDisposedUserVo;
import com.liquidnet.service.adam.dto.vo.AdamDisposedVo;
import com.liquidnet.service.adam.service.IAdamDisposedService;
import com.liquidnet.service.adam.service.IAdamRdmService;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.base.SqlMapping;
import com.liquidnet.service.feign.kylin.api.FeignKylinPerformanceClient;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import com.mongodb.BasicDBObject;
import com.mongodb.client.result.UpdateResult;
import lombok.extern.slf4j.Slf4j;
import org.bson.Document;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Sort;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.convert.MongoConverter;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.time.LocalDateTime;
import java.util.LinkedList;
import java.util.List;
/**
......@@ -38,8 +43,6 @@ import java.util.List;
@Slf4j
@Service
public class AdamDisposedServiceImpl implements IAdamDisposedService {
@Autowired
MongoConverter mongoConverter;
@Autowired
MongoTemplate mongoTemplate;
@Autowired
......@@ -77,13 +80,24 @@ public class AdamDisposedServiceImpl implements IAdamDisposedService {
@Override
public void del(String uid, String type, String... contentIds) {
LocalDateTime now = LocalDateTime.now();
String nowStr = DateUtil.format(now, DateUtil.Formatter.yyyyMMddHHmmss);
AdamDisposedBaseVo delVo = AdamDisposedBaseVo.getNew();
delVo.setState(2);
delVo.setUpdatedAt(DateUtil.getNowTime());
mongoTemplate.getCollection(AdamDisposedBaseVo.class.getSimpleName()).updateMany(
delVo.setUpdatedAt(nowStr);
UpdateResult updateResult = mongoTemplate.getCollection(AdamDisposedBaseVo.class.getSimpleName()).updateMany(
Query.query(Criteria.where("uid").is(uid).and("type").is(type)
.and("contentId").in(contentIds).and("state").is(1)).getQueryObject(),
new BasicDBObject("$set", mongoConverter.convertToMongoType(delVo)));
new Document("$set", Document.parse(JsonUtils.toJson(delVo))));
if (updateResult.getModifiedCount() > 0) {
LinkedList<Object[]> toMqObjs = new LinkedList<>();
for (String c : contentIds) {
toMqObjs.add(new Object[]{now, uid, c});
}
rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
SqlMapping.get("adam_disposed.del", toMqObjs));
}
}
@Override
......
package com.liquidnet.service.adam.service.impl;
import com.liquidnet.common.exception.LiquidnetServiceException;
import com.liquidnet.common.mq.constant.MQConst;
import com.liquidnet.commons.lang.util.*;
import com.liquidnet.service.adam.dto.AdamEntersParam;
import com.liquidnet.service.adam.dto.vo.AdamEntersVo;
import com.liquidnet.service.adam.service.IAdamEntersService;
import com.liquidnet.service.adam.service.IAdamRdmService;
import com.liquidnet.service.base.ErrorMapping;
import com.liquidnet.service.base.SqlMapping;
import com.mongodb.client.model.FindOneAndUpdateOptions;
import com.mongodb.client.model.ReturnDocument;
......@@ -26,6 +28,7 @@ import org.springframework.util.CollectionUtils;
import java.time.LocalDateTime;
import java.util.LinkedList;
import java.util.List;
import java.util.stream.IntStream;
/**
* <p>
......@@ -72,8 +75,8 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
)
);
vos.add(vo);
adamRdmService.setEntersVoByUid(currentUid, vos);
adamRdmService.delEntersVoByUid(currentUid);
return vo.getEntersId();
}
......@@ -99,8 +102,9 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
toMqObjs.add(new Object[]{unDeaultVo.getIsDefault(), now, unDeaultVoAfter.getEntersId()});
vos.removeIf(r -> r.getEntersId().equals(unDeaultVoAfter.getEntersId()));
vos.add(unDeaultVoAfter);
// vos.removeIf(r -> r.getEntersId().equals(unDeaultVoAfter.getEntersId()));
// vos.add(unDeaultVoAfter);
vos = this.collectionProcess(vos, unDeaultVoAfter.getEntersId(), unDeaultVoAfter);
}
}
{// 设置新默认
......@@ -117,9 +121,9 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
toMqObjs.add(new Object[]{defaultVo.getIsDefault(), now, entersId});
vos.removeIf(r -> r.getEntersId().equals(defaultVoAfter.getEntersId()));
vos.add(defaultVoAfter);
// vos.removeIf(r -> r.getEntersId().equals(defaultVoAfter.getEntersId()));
// vos.add(defaultVoAfter);
vos = this.collectionProcess(vos, defaultVoAfter.getEntersId(), defaultVoAfter);
}
}
if (!CollectionUtils.isEmpty(toMqObjs)) {
......@@ -154,9 +158,9 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
String currentUid = CurrentUtil.getCurrentUid();
List<AdamEntersVo> vos = adamRdmService.getEntersVoByUid(currentUid);
vos.removeIf(r -> r.getEntersId().equals(parameter.getEntersId()));
vos.add(updateVo);
adamRdmService.setEntersVoByUid(currentUid, vos);
// vos.removeIf(r -> r.getEntersId().equals(parameter.getEntersId()));
// vos.add(updateVo);
adamRdmService.setEntersVoByUid(currentUid, this.collectionProcess(vos, parameter.getEntersId(), updateVo));
}
}
......@@ -206,4 +210,28 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
}
return null;
}
/* --------------------------------------------------------------- */
private List<AdamEntersVo> collectionProcess(List<AdamEntersVo> vos, String replaceId, AdamEntersVo updateVo) {
int idx = IntStream.range(0, vos.size())
.filter(i -> vos.get(i).getEntersId().equals(replaceId))
.findFirst().orElse(-1);
if (idx == -1) {
adamRdmService.delEntersVoByUid(updateVo.getUid());
List<AdamEntersVo> entersVos = adamRdmService.getEntersVoByUid(updateVo.getUid());
idx = IntStream.range(0, vos.size())
.filter(i -> entersVos.get(i).getEntersId().equals(replaceId))
.findFirst().orElse(-1);
if (idx == -1) {
ErrorMapping.ErrorMessage errorMessage = ErrorMapping.get("10017");
throw new LiquidnetServiceException(errorMessage.getCode(), errorMessage.getMessage());
}
}
vos.set(idx, updateVo);
return vos;
}
}
......@@ -136,7 +136,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
memberOrderVo.setVersion(CurrentUtil.getCliVersion());
memberOrderVo.setSource(CurrentUtil.getCliSource());
if (!adamRdmService.setShotMemberOrderVoByOrderNo(orderNo, memberOrderVo)) {
if (!adamRdmService.setShotMemberOrderVoByOrderNo(memberOrderVo.getUid(), orderNo, memberOrderVo)) {
log.warn("###购买会员创建订单失败[memberOrderVo:{}]", JsonUtils.toJson(memberOrderVo));
return ResponseDto.failure(ErrorMapping.get("10210"));
}
......@@ -157,7 +157,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
return ResponseDto.failure(ErrorMapping.get("10203"));
}
adamRdmService.setShotMemberOrderVoByOrderNo(orderNo, memberOrderVo);
adamRdmService.setShotMemberOrderVoByOrderNo(memberOrderVo.getUid(), orderNo, memberOrderVo);
result.setOrderNo(memberOrderVo.getOrderNo());
result.setShowUrl(param.getShowUrl());
......@@ -167,7 +167,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
@Override
public ResponseDto<Object> paymentNotifyCallBack(AdamMemberOrderCallbackParam parameter) {
AdamMemberOrderVo handleMemberOrderVo = adamRdmService.getShotMemberOrderVoByOrderNo(parameter.getOrderCode());
AdamMemberOrderVo handleMemberOrderVo = adamRdmService.getShotMemberOrderVoByOrderNo(CurrentUtil.getCurrentUid(), parameter.getOrderCode());
// AdamMemberConst.STATUS_*:0-待支付,1-已支付,2-已过期,3-超时付,4-退款中,5-退款完成
if (1 == handleMemberOrderVo.getState() || 3 == handleMemberOrderVo.getState()) {
return ResponseDto.failure(ErrorMapping.get("10502"), parameter);
......@@ -287,7 +287,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
SqlMapping.gets(toMqSqls, operationObjs, updateMemberOrderObjs));
adamRdmService.setShotMemberOrderVoByOrderNo(handleMemberOrderVo.getOrderNo(), handleMemberOrderVo);
adamRdmService.setShotMemberOrderVoByOrderNo(handleMemberOrderVo.getUid(), handleMemberOrderVo.getOrderNo(), handleMemberOrderVo);
return ResponseDto.success();
}
......@@ -379,11 +379,12 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
initUserMemberVo.getState(), initUserMemberVo.getExpiryAt(), initUserMemberVo.getCreatedAt()
});
adamRdmService.setUserMemberVoByUid(initMemberOrderVo.getUid(), initUserMemberVo);
adamRdmService.delMemberCodeVoByCode(memberCodeVo.getCode());
rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
SqlMapping.gets(toMqSqls, updateMemberCodeObjs, initMemberOrderObjs, initUserMemberObjs));
adamRdmService.setUserMemberVoByUid(initMemberOrderVo.getUid(), initUserMemberVo);
AdamMemberOrderResult result = AdamMemberOrderResult.getNew();
result.setOrderNo(initMemberOrderVo.getOrderNo());
return ResponseDto.success(result);
......
......@@ -17,6 +17,7 @@ import org.springframework.util.StringUtils;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
@Slf4j
@Service
......@@ -145,7 +146,8 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
List<AdamEntersVo> entersList = (List<AdamEntersVo>) redisUtil.get(rk);
if (CollectionUtils.isEmpty(entersList)) {
entersList = mongoTemplate.find(
Query.query(Criteria.where("uid").is(uid).and("state").is(1)), AdamEntersVo.class, AdamEntersVo.class.getSimpleName()
Query.query(Criteria.where("uid").is(uid).and("state").is(1)).with(Sort.by(Sort.Direction.DESC, "createdAt")),
AdamEntersVo.class, AdamEntersVo.class.getSimpleName()
);
if (!CollectionUtils.isEmpty(entersList)) redisUtil.set(rk, entersList);
......@@ -158,6 +160,12 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
return this.getEntersVoByUid(uid).stream().filter(r -> r.getEntersId().equals(entersId)).findAny().orElse(null);
}
@Override
public List<AdamEntersVo> getEntersVoByUidEntersIds(String uid, String... entersIds) {
List<String> entersIdList = Arrays.asList(entersIds);
return this.getEntersVoByUid(uid).stream().filter(r -> entersIdList.contains(r.getEntersId())).collect(Collectors.toList());
}
@Override
public void delEntersVoByUid(String uid) {
redisUtil.del(AdamRedisConst.INFO_ENTERS.concat(uid));
......@@ -173,11 +181,14 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
String rk = AdamRedisConst.INFO_ADDRESSES.concat(uid);
List<AdamAddressesVo> list = (List<AdamAddressesVo>) redisUtil.get(rk);
if (CollectionUtils.isEmpty(list)) {
list = mongoTemplate.find(Query.query(Criteria.where("uid").is(uid).and("state").is(1)),
AdamAddressesVo.class, AdamAddressesVo.class.getSimpleName());
list = mongoTemplate.find(
Query.query(Criteria.where("uid").is(uid).and("state").is(1)).with(Sort.by(Sort.Direction.DESC, "createdAt")),
AdamAddressesVo.class, AdamAddressesVo.class.getSimpleName()
);
if (!CollectionUtils.isEmpty(list)) redisUtil.set(rk, list);
}
return list;
}
......@@ -312,17 +323,17 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
}
@Override
public boolean setShotMemberOrderVoByOrderNo(String orderNo, AdamMemberOrderVo vo) {
return redisUtil.set(AdamRedisConst.SHOT_MEMBER_ORDER.concat(orderNo), vo);
public boolean setShotMemberOrderVoByOrderNo(String uid, String orderNo, AdamMemberOrderVo vo) {
return redisUtil.set(AdamRedisConst.SHOT_MEMBER_ORDER + uid + ":" + orderNo, vo);
}
@Override
public AdamMemberOrderVo getShotMemberOrderVoByOrderNo(String orderNo) {
String key = AdamRedisConst.SHOT_MEMBER_ORDER.concat(orderNo);
public AdamMemberOrderVo getShotMemberOrderVoByOrderNo(String uid, String orderNo) {
String key = AdamRedisConst.SHOT_MEMBER_ORDER + uid + ":" + orderNo;
AdamMemberOrderVo vo = (AdamMemberOrderVo) redisUtil.get(key);
if (null == vo) {
vo = mongoTemplate.findOne(
Query.query(Criteria.where("orderNo").is(orderNo)),
Query.query(Criteria.where("orderNo").is(orderNo).and("uid").is(uid)),
AdamMemberOrderVo.class, AdamMemberOrderVo.class.getSimpleName()
);
......@@ -332,8 +343,8 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
}
@Override
public void delShotMemberOrderVoByOrderNo(String orderNo) {
redisUtil.del(AdamRedisConst.SHOT_MEMBER_ORDER.concat(orderNo));
public void delShotMemberOrderVoByOrderNo(String uid, String orderNo) {
redisUtil.del(AdamRedisConst.SHOT_MEMBER_ORDER + uid + ":" + orderNo);
}
@Override
......@@ -370,6 +381,11 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
return vo;
}
@Override
public void delMemberCodeVoByCode(String memberCode) {
redisUtil.del(AdamRedisConst.INFO_MEMBER_CODE.concat(memberCode));
}
@Override
public boolean setTagsForSex(List<AdamTagVo> voList) {
return redisUtil.set(AdamRedisConst.INFO_TAGS_SEX, voList);
......
......@@ -174,11 +174,17 @@ public class AdamUserServiceImpl extends ServiceImpl<AdamUserMapper, AdamUser> i
thirdPartInfoVo.setState(1);// 1-绑定
mongoTemplate.insert(thirdPartInfoVo, AdamThirdPartInfoVo.class.getSimpleName());
// TODO: 2021/5/14 Execute sql to mq
adamRdmService.setUidByPlatformOpenId(param.getPlatform(), param.getOpenId(), uid);
adamRdmService.delThirdPartVoListByUid(uid);
rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
SqlMapping.get(
"adam_third_party.add",
thirdPartInfoVo.getUid(), thirdPartInfoVo.getOpenId(), thirdPartInfoVo.getAvatar(), thirdPartInfoVo.getNickname(), thirdPartInfoVo.getPlatform(), thirdPartInfoVo.getState(), thirdPartInfoVo.getCreatedAt()
)
);
}
@Override
......@@ -196,11 +202,17 @@ public class AdamUserServiceImpl extends ServiceImpl<AdamUserMapper, AdamUser> i
thirdPartInfoVo.setState(1);// 1-绑定
mongoTemplate.insert(thirdPartInfoVo, AdamThirdPartInfoVo.class.getSimpleName());
// TODO: 2021/5/14 Execute sql to mq
adamRdmService.setUidByPlatformOpenId(param.getPlatform(), param.getOpenId(), bindUid);
adamRdmService.delThirdPartVoListByUid(bindUid);
rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
SqlMapping.get(
"adam_third_party.add",
thirdPartInfoVo.getUid(), thirdPartInfoVo.getOpenId(), thirdPartInfoVo.getAvatar(), thirdPartInfoVo.getNickname(), thirdPartInfoVo.getPlatform(), thirdPartInfoVo.getState(), thirdPartInfoVo.getCreatedAt()
)
);
}
/**
......@@ -228,16 +240,14 @@ public class AdamUserServiceImpl extends ServiceImpl<AdamUserMapper, AdamUser> i
}
adamRdmService.delThirdPartVoListByUid(uid);
// rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
// SqlMapping.get("adam_third_party.unbind", now, uid, platform));
rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
SqlMapping.get("adam_third_party.unbind", now, uid, platform));
}
@Override
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public void unBindTpa(String uid, String platform) {
this.unBindTpaProcess(uid, platform);
// TODO: 2021/5/14 Execute sql to mq
}
@Override
......
......@@ -19,6 +19,8 @@
10014=
10015=入场人ID不能为空
10016=收货地址ID不能为空
10017=入场人不存在,请核实
10018=收货地址不存在,请核实
10101=姓名或身份证件号无效
......
......@@ -30,9 +30,11 @@ adam_enters.close=UPDATE adam_enters SET `state`=2, updated_at=?, deleted_at=?,
# ----------------------------------------------------
adam_collection.add=INSERT INTO adam_collection (`uid`, content_id, `type`, `state`, created_at) VALUES (?,?,?,?,?)
adam_collection.del=UPDATE adam_collection SET `state`=2, updated_at=? WHERE `uid`=? AND content_id=?
# ----------------------------------------------------
adam_disposed.add=INSERT into adam_disposed (`uid`, content_id, `type`, `state`, created_at) VALUES ()
adam_disposed.add=INSERT into adam_disposed (`uid`, content_id, `type`, `state`, created_at) VALUES (?,?,?,?,?)
adam_disposed.del=UPDATE adam_collection SET `state`=2, updated_at=? WHERE `uid`=? AND content_id=?
# ----------------------------------------------------
adam_member.add=INSERT INTO adam_member ( `name`, `title`, `sub_title`, `icon`, `avatar`, `start_no`, `type`, `interests_detail`, `notes`, `is_notice`, `notice_info`, `notice_title`, `need_question`, `display_agreement`, `agreement`, `member_id`, `limitation`) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);
......
......@@ -17,7 +17,14 @@
</modules>
<dependencies>
<dependency>
<groupId>com.liquidnet</groupId>
<artifactId>liquidnet-common-swagger</artifactId>
</dependency>
<dependency>
<groupId>com.liquidnet</groupId>
<artifactId>liquidnet-common-web</artifactId>
</dependency>
</dependencies>
......
......@@ -19,13 +19,16 @@
<dependencies>
<dependency>
<groupId>com.liquidnet</groupId>
<artifactId>liquidnet-common-service-base</artifactId>
<artifactId>liquidnet-common-mq</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.liquidnet</groupId>
<artifactId>liquidnet-common-mq</artifactId>
<artifactId>liquidnet-common-web</artifactId>
</dependency>
<dependency>
<groupId>com.liquidnet</groupId>
<artifactId>liquidnet-common-cache-redisson</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
......
......@@ -4,9 +4,11 @@ import com.liquidnet.common.mq.constant.MQConst;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.base.SqlMapping;
import com.liquidnet.service.consumer.service.IBaseDao;
import com.rabbitmq.client.Channel;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;
import org.springframework.amqp.core.Message;
import javax.annotation.Resource;
......@@ -45,4 +47,109 @@ public class ConsumerProcessor {
log.error("error:sqlMessage:{}", JsonUtils.toJson(sqlMessage), e);
}
}
// 订单创建
@RabbitListener(queues = MQConst.QUEUES_SQL_ORDER_CREATE)
public void consumerOrderCreate(Message msg, Channel channel) {
log.info("=== CONSUMER_ORDER_CREATE ===");
SqlMapping.SqlMessage sqlMessage = JsonUtils.fromJson(new String(msg.getBody()), SqlMapping.SqlMessage.class);
log.debug("consumer sql_order_create ==> Preparing:{}", JsonUtils.toJson(sqlMessage.getSqls()));
log.debug("consumer sql_order_create ==> Parameters:{}", JsonUtils.toJson(sqlMessage.getArgs()));
try {
Boolean rstBatchSqls = baseDao.batchSqls(sqlMessage.getSqls(), sqlMessage.getArgs());
log.debug("CONSUMER_ORDER_CREATE result of execution:{}", rstBatchSqls);
if (rstBatchSqls) {
channel.basicAck(msg.getMessageProperties().getDeliveryTag(), true);
} else {
channel.basicReject(msg.getMessageProperties().getDeliveryTag(), true);
}
} catch (Exception e) {
log.error("error:sqlMessage:{}", JsonUtils.toJson(sqlMessage), e);
}
}
//订单再次支付
@RabbitListener(queues = MQConst.QUEUES_SQL_ORDER_AGAIN)
public void consumerOrderPayAgain(Message msg, Channel channel) {
log.info("=== CONSUMER_ORDER_PAY_AGAIN ===");
SqlMapping.SqlMessage sqlMessage = JsonUtils.fromJson(new String(msg.getBody()), SqlMapping.SqlMessage.class);
log.debug("consumer sql_order_create ==> Preparing:{}", JsonUtils.toJson(sqlMessage.getSqls()));
log.debug("consumer sql_order_create ==> Parameters:{}", JsonUtils.toJson(sqlMessage.getArgs()));
try {
Boolean rstBatchSqls = baseDao.batchSqls(sqlMessage.getSqls(), sqlMessage.getArgs());
log.debug("CONSUMER_ORDER_PAY_AGAIN result of execution:{}", rstBatchSqls);
if (rstBatchSqls) {
channel.basicAck(msg.getMessageProperties().getDeliveryTag(), true);
} else {
channel.basicReject(msg.getMessageProperties().getDeliveryTag(), true);
}
} catch (Exception e) {
log.error("error:sqlMessage:{}", JsonUtils.toJson(sqlMessage), e);
}
}
//订单关闭
@RabbitListener(queues = MQConst.QUEUES_SQL_ORDER_CLOSE)
public void consumerOrderClose(Message msg, Channel channel) {
log.info("=== CONSUMER_ORDER_CLOSE ===");
SqlMapping.SqlMessage sqlMessage = JsonUtils.fromJson(new String(msg.getBody()), SqlMapping.SqlMessage.class);
log.debug("consumer sql_order_create ==> Preparing:{}", JsonUtils.toJson(sqlMessage.getSqls()));
log.debug("consumer sql_order_create ==> Parameters:{}", JsonUtils.toJson(sqlMessage.getArgs()));
try {
Boolean rstBatchSqls = baseDao.batchSqls(sqlMessage.getSqls(), sqlMessage.getArgs());
log.debug("CONSUMER_ORDER_CLOSE result of execution:{}", rstBatchSqls);
if (rstBatchSqls) {
channel.basicAck(msg.getMessageProperties().getDeliveryTag(), true);
} else {
channel.basicReject(msg.getMessageProperties().getDeliveryTag(), true);
}
} catch (Exception e) {
log.error("error:sqlMessage:{}", JsonUtils.toJson(sqlMessage), e);
}
}
//订单支付
@RabbitListener(queues = MQConst.QUEUES_SQL_ORDER_PAY)
public void consumerOrderPay(Message msg, Channel channel) {
log.info("=== CONSUMER_ORDER_PAY ===");
SqlMapping.SqlMessage sqlMessage = JsonUtils.fromJson(new String(msg.getBody()), SqlMapping.SqlMessage.class);
log.debug("consumer sql_order_create ==> Preparing:{}", JsonUtils.toJson(sqlMessage.getSqls()));
log.debug("consumer sql_order_create ==> Parameters:{}", JsonUtils.toJson(sqlMessage.getArgs()));
try {
Boolean rstBatchSqls = baseDao.batchSqls(sqlMessage.getSqls(), sqlMessage.getArgs());
log.debug("CONSUMER_ORDER_PAY result of execution:{}", rstBatchSqls);
if (rstBatchSqls) {
channel.basicAck(msg.getMessageProperties().getDeliveryTag(), true);
} else {
channel.basicReject(msg.getMessageProperties().getDeliveryTag(), true);
}
} catch (Exception e) {
log.error("error:sqlMessage:{}", JsonUtils.toJson(sqlMessage), e);
}
}
//缺票登记
@RabbitListener(queues = MQConst.QUEUES_SQL_PERFORMANCE_LACK)
public void consumerPerformanceLack(Message msg, Channel channel) {
log.info("=== CONSUMER_PERFORMANCE_LACK ===");
SqlMapping.SqlMessage sqlMessage = JsonUtils.fromJson(new String(msg.getBody()), SqlMapping.SqlMessage.class);
log.debug("consumer sql_performance_lack ==> Preparing:{}", JsonUtils.toJson(sqlMessage.getSqls()));
log.debug("consumer sql_performance_lack ==> Parameters:{}", JsonUtils.toJson(sqlMessage.getArgs()));
try {
Boolean rstBatchSqls = baseDao.batchSqls(sqlMessage.getSqls(), sqlMessage.getArgs());
log.debug("CONSUMER_PERFORMANCE_LACK result of execution:{}", rstBatchSqls);
if (rstBatchSqls) {
channel.basicAck(msg.getMessageProperties().getDeliveryTag(), true);
} else {
channel.basicReject(msg.getMessageProperties().getDeliveryTag(), true);
}
} catch (Exception e) {
log.error("error:sqlMessage:{}", JsonUtils.toJson(sqlMessage), e);
}
}
}
......@@ -9,6 +9,7 @@ import com.liquidnet.service.kylin.dto.param.SyncOrderParam;
import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderListVo;
import com.liquidnet.service.kylin.dto.vo.returns.OrderDetailsVo;
import com.liquidnet.service.kylin.dto.vo.returns.PayResultVo;
import com.liquidnet.service.kylin.service.IKylinOrderTicketsService;
import com.liquidnet.service.kylin.service.impl.KylinOrderTicketsServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
......@@ -38,7 +39,7 @@ import java.util.List;
public class KylinOrderTicketsController {
@Autowired
private KylinOrderTicketsServiceImpl orderTicketsService;
IKylinOrderTicketsService orderTicketsService;
@PostMapping("pre")
@ApiOperation("下单")
......
......@@ -4,6 +4,7 @@ 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.dto.vo.returns.PayDetailVo;
import com.liquidnet.service.kylin.service.IKylinLackRegistersService;
import com.liquidnet.service.kylin.service.impl.KylinLackRegistersServiceImpl;
import com.liquidnet.service.kylin.service.impl.KylinPerformancesServiceImpl;
import io.swagger.annotations.Api;
......@@ -32,7 +33,7 @@ public class KylinPerformancesController {
@Autowired
private KylinPerformancesServiceImpl kylinPerformancesService;
@Autowired
private KylinLackRegistersServiceImpl kylinLackRegistersService;
private IKylinLackRegistersService kylinLackRegistersService;
@GetMapping("localList")
@ApiOperation("本地演出列表")
......
......@@ -5,6 +5,7 @@ import com.github.pagehelper.PageInfo;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.dto.vo.middle.KylinBuyNoticeVo;
import com.liquidnet.service.kylin.service.impl.partner.KylinBuyNoticePartnerServiceImpl;
import com.liquidnet.service.kylin.service.partner.IKylinBuyNoticePartnerService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
......@@ -25,7 +26,7 @@ import org.springframework.web.bind.annotation.*;
public class KylinBuyNoticeParnterController {
@Autowired
private KylinBuyNoticePartnerServiceImpl buyNoticePartnerService;
private IKylinBuyNoticePartnerService buyNoticePartnerService;
@GetMapping(value = "")
@ApiOperation(value = "购票须知列表",position = 1)
......
......@@ -6,6 +6,7 @@ import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.dao.ChildDetailsDao;
import com.liquidnet.service.kylin.dao.ChildListDao;
import com.liquidnet.service.kylin.service.impl.partner.KylinCheckUserPartnerServiceImpl;
import com.liquidnet.service.kylin.service.partner.IKylinCheckUserPartnerService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
......@@ -32,7 +33,7 @@ import javax.validation.constraints.NotNull;
public class KylinCheckUserPartnerController {
@Autowired
private KylinCheckUserPartnerServiceImpl checkUserPartnerService;
private IKylinCheckUserPartnerService checkUserPartnerService;
@PostMapping(value = "")
@ApiOperation(value = "创建验票账号", position = 1)
......
......@@ -9,6 +9,7 @@ import com.liquidnet.service.kylin.dto.param.CheckUserParam;
import com.liquidnet.service.kylin.mapper.KylinCheckUserPerformancesMapper;
import com.liquidnet.service.kylin.service.impl.partner.KylinCheckUserPerformancesPartnerServiceImpl;
import com.liquidnet.service.kylin.service.impl.partner.KylinTicketsPartnerServiceImpl;
import com.liquidnet.service.kylin.service.partner.IKylinCheckUserPerformancesPartnerService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
......@@ -38,7 +39,7 @@ import java.util.List;
public class KylinCheckUserPerformancesPartnerController {
@Autowired
private KylinCheckUserPerformancesPartnerServiceImpl userPerformancesPartnerService;
private IKylinCheckUserPerformancesPartnerService userPerformancesPartnerService;
@PostMapping(value = "")
@ApiOperation(value = "添加关联关系", position = 1)
......
......@@ -5,6 +5,7 @@ import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.dto.param.CreateTicketTimesParam;
import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketTimesPartnerVo;
import com.liquidnet.service.kylin.service.impl.partner.KylinTicketTimesPartnerServiceImpl;
import com.liquidnet.service.kylin.service.partner.IKylinTicketTimesPartnerService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
......@@ -30,7 +31,7 @@ import javax.validation.constraints.NotNull;
public class KylinTicketTimesPartnerController {
@Autowired
private KylinTicketTimesPartnerServiceImpl ticketTimesPartnerService;
private IKylinTicketTimesPartnerService ticketTimesPartnerService;
@PostMapping(value = "")
@ApiOperation(value = "创建场次",position = 1)
......
......@@ -5,6 +5,7 @@ import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.dto.param.TicketCreateParam;
import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketPartnerVo;
import com.liquidnet.service.kylin.service.impl.partner.KylinTicketsPartnerServiceImpl;
import com.liquidnet.service.kylin.service.partner.IKylinTicketsPartnerService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
......@@ -30,7 +31,7 @@ import javax.validation.constraints.NotNull;
public class KylinTicketsPartnerController {
@Autowired
private KylinTicketsPartnerServiceImpl ticketsPartnerService;
private IKylinTicketsPartnerService ticketsPartnerService;
@PostMapping(value = "")
@ApiOperation(value = "创建票务",position = 1 )
......
......@@ -7,6 +7,7 @@ import com.liquidnet.service.kylin.dto.param.*;
import com.liquidnet.service.kylin.dto.vo.middle.message.MessageConfigVo;
import com.liquidnet.service.kylin.dto.vo.middle.message.MessageDataVo;
import com.liquidnet.service.kylin.service.impl.partner.KylinPerformancesPartnerServiceImpl;
import com.liquidnet.service.kylin.service.partner.IKylinPerformancesPartnerService;
import com.liquidnet.service.kylin.utils.OtherUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
......@@ -29,7 +30,7 @@ public class PerformancePartnerController {
@Autowired
private OtherUtils otherUtils;
@Autowired
private KylinPerformancesPartnerServiceImpl performancesPartnerService;
private IKylinPerformancesPartnerService performancesPartnerService;
@PostMapping(value = "list")
@ApiOperation(value = "演出列表",position = 1)
......
......@@ -36,7 +36,7 @@ public class KylinLackRegistersServiceImpl extends ServiceImpl<KylinLackRegister
lackRegisters.setUserMobile(StringUtils.defaultString(((String) token.get("mobile")), ""));
lackRegisters.setIpAddress(CurrentUtil.getCliIpAddr());
lackRegisters.setCreatedAt(LocalDateTime.now());
rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL_PERFORMANCE_LACK, MQConst.ROUTING_KEY_SQL_PERFORMANCE_LACK,
SqlMapping.get("kylin_lack_register.insert", lackRegisters.getInsertObj()));
return ResponseDto.success("登记成功");
}catch (Exception e){
......
......@@ -38,6 +38,8 @@ public class OtherUtils {
sign = sign.toUpperCase();
httpData.add("sign", sign);
System.out.println("data = = = "+httpData.toString());
String returnData = HttpUtil.post(serviceUrl + "sendSmsMessage", httpData);
JsonNode postResultNew = JsonUtils.fromJson(returnData, JsonNode.class);
if (!postResultNew.get("message").toString().equals("OK")) {
......
kylin_order_ticket_entities.add=INSERT INTO kylin_order_ticket_entities(order_ticket_entities_id ,order_id ,ticket_id ,user_id ,time_id ,performance_id ,enter_type ,enter_name ,enter_mobile,enter_id_code,`status`,sys_damai,check_client,is_payment,`comment`,created_at,updated_at)VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
kylin_order_ticket_entities.synPay=UPDATE kylin_order_ticket_entities SET is_payment = ?,updated_at = ?,sys_damai = 1 WHERE order_id = ?
kylin_order_ticket_entities.updateStatusByStation=UPDATE kylin_order_ticket_status SET `status`=?, updated_at=?, checked_at=?, check_type=?, checkUserId=? WHERE order_ticket_entities_id =?
# ----------------------------------------------------
kylin_order_ticket_relation.add=INSERT INTO kylin_order_ticket_relations(order_ticket_relations_id ,order_id ,transfer_id ,live_id ,agent_id ,is_member ,performance_id ,time_id ,ticket_id ,created_at ,updated_at)VALUES(?,?,?,?,?,?,?,?,?,?,?)
# ------------------------缺票登记(不用考虑并发)----------------------------
kylin_lack_register.insert=INSERT INTO `kylin_lack_registers`(`lack_registers_id` ,`performance_id` ,`ticket_id` ,`user_id` ,`user_name` ,`user_mobile` ,`send_status` ,`ip_address` ,`created_at`)VALUES(? ,? ,? ,? ,? ,? ,? ,? ,?);
# ----------------------------------------------------
# ------------------------创建订单----------------------------
kylin_order_ticket.add=INSERT INTO kylin_order_tickets(order_tickets_id,user_id,user_name,user_mobile,performance_title,order_code,qr_code,order_type,order_version,`number`,price,price_member,price_total,price_voucher,price_actual,price_express,price_refund,refund_number,pay_type,payment_type,time_pay,express_contacts,express_address,express_phone,coupon_type,get_ticket_type,get_ticket_describe,pay_countdown_minute,`comment`,created_at,updated_at,pay_code)VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
kylin_order_ticket_relation.add=INSERT INTO kylin_order_ticket_relations(order_ticket_relations_id ,order_id ,transfer_id ,live_id ,agent_id ,is_member ,performance_id ,time_id ,ticket_id ,created_at ,updated_at)VALUES(?,?,?,?,?,?,?,?,?,?,?)
kylin_order_ticket_status.add=INSERT INTO kylin_order_ticket_status(order_ticket_status_id ,order_id ,express_type ,is_student ,transfer_status ,`status` ,pay_status ,created_at ,updated_at)VALUES(?,?,?,?,?,?,?,?,?)
kylin_order_ticket_status.synPay=UPDATE kylin_order_ticket_status SET `status` = ?,pay_status = ?,updated_at = ? WHERE order_id = ?
kylin_order_ticket_status.close=UPDATE kylin_order_ticket_status SET `status` = ?,updated_at = ? WHERE order_id = ?
kylin_order_ticket_entities.add=INSERT INTO kylin_order_ticket_entities(order_ticket_entities_id ,order_id ,ticket_id ,user_id ,time_id ,performance_id ,enter_type ,enter_name ,enter_mobile,enter_id_code,`status`,sys_damai,check_client,is_payment,`comment`,created_at,updated_at)VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
# ----------------------------------------------------
kylin_order_ticket.add=INSERT INTO kylin_order_tickets(order_tickets_id,user_id,user_name,user_mobile,performance_title,order_code,qr_code,order_type,order_version,`number`,price,price_member,price_total,price_voucher,price_actual,price_express,price_refund,refund_number,pay_type,payment_type,time_pay,express_contacts,express_address,express_phone,coupon_type,get_ticket_type,get_ticket_describe,pay_countdown_minute,`comment`,created_at,updated_at)VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
# ------------------------再次支付----------------------------
kylin_order_ticket.payAgain=UPDATE kylin_order_tickets SET order_type = ? ,order_code = ? , updated_at = ? WHERE order_tickets_id = ?
# ------------------------支付回调----------------------------
kylin_order_ticket.synPay=UPDATE kylin_order_tickets SET payment_type = ? ,pay_code = ? , time_pay = ?, qr_code = ? , updated_at = ? WHERE order_tickets_id = ?
kylin_order_ticket_entities.synPay=UPDATE kylin_order_ticket_entities SET is_payment = ?,updated_at = ?,sys_damai = 1 WHERE order_id = ?
kylin_order_ticket_status.synPay=UPDATE kylin_order_ticket_status SET `status` = ?,pay_status = ?,updated_at = ? WHERE order_id = ?
# ------------------------订单关闭----------------------------
kylin_order_ticket.close=UPDATE kylin_order_tickets SET updated_at = ? WHERE order_tickets_id = ?
kylin_order_ticket_status.close=UPDATE kylin_order_ticket_status SET `status` = ?,updated_at = ? WHERE order_id = ?
# ----------------------------------------------------
kylin_lack_register.insert=INSERT INTO `kylin_lack_registers`(`lack_registers_id` ,`performance_id` ,`ticket_id` ,`user_id` ,`user_name` ,`user_mobile` ,`send_status` ,`ip_address` ,`created_at` ,)VALUES(? ,? ,? ,? ,? ,? ,? ,? ,?);
......@@ -18,7 +18,14 @@
</modules>
<dependencies>
<dependency>
<groupId>com.liquidnet</groupId>
<artifactId>liquidnet-common-swagger</artifactId>
</dependency>
<dependency>
<groupId>com.liquidnet</groupId>
<artifactId>liquidnet-common-web</artifactId>
</dependency>
</dependencies>
</project>
......@@ -109,6 +109,18 @@
<artifactId>aliyun-java-sdk-dypnsapi</artifactId>
<version>1.1.3</version>
</dependency>
<dependency>
<groupId>com.liquidnet</groupId>
<artifactId>liquidnet-common-swagger</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.liquidnet</groupId>
<artifactId>liquidnet-common-web</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
</dependencyManagement>
......@@ -192,10 +204,6 @@
<artifactId>mysql-connector-java</artifactId>
<version>8.0.19</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
......@@ -251,16 +259,5 @@
<version>2.3.30</version>
</dependency>
<dependency>
<groupId>com.liquidnet</groupId>
<artifactId>liquidnet-common-swagger</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.liquidnet</groupId>
<artifactId>liquidnet-common-web</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
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