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

Commit 4e78b875 authored by jiangxiulong's avatar jiangxiulong

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

parents 962c7ac9 1d85d266
......@@ -5,32 +5,16 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@ApiModel(value = "KylinStationCheckDataParam", description = "上载验票入参")
@Data
public class KylinStationCheckOrderParam implements Serializable {
private static final long serialVersionUID = 2312115659117282564L;
@ApiModelProperty(position = 10, value = "演出ID[64]")
@ApiModelProperty(position = 11, value = "演出ID[64]")
private String performanceId;
@ApiModelProperty(position = 11, value = "订单号")
private String orderCode;
@ApiModelProperty(position = 12, value = "二维码地址")
private String qrCode;
@ApiModelProperty(position = 13, value = "付款张数")
private Integer number;
@ApiModelProperty(position = 14, value = "退款张数")
private Integer refundNumber;
@ApiModelProperty(position = 16, value = "订单状态:0-待付款,1-已付款,2-已关闭,3-正在退款,4-已退款,5-待关闭,6-部分退款")
private Integer status;
@ApiModelProperty(position = 17, value = "支付状态:0-未支付,1-已支付,2-支付失败")
private Integer payStatus;
@ApiModelProperty(position = 18, value = "是否学生票[1-是,2-否]")
private Integer isStudent;
@ApiModelProperty(position = 19, value = "购买者是否是会员[0-否,1-是]")
private Integer isMember;
@ApiModelProperty(position = 30, value = "*验票张数")
private Integer checkedNumber;
@ApiModelProperty(position = 31, value = "*是否已同步[0-否,1-是]")
private Integer synced;
@ApiModelProperty(position = 13, value = "出票端:(验票app)android/ios")
private String checkClient;
@ApiModelProperty(position = 14, value = "出票`orderTicketEntitiesId`列表")
private List<String> checkedEntitiesIdList;
}
......@@ -18,4 +18,8 @@ public class PayAgainParam {
private String deviceFrom;
@ApiModelProperty(value = "openId")
private String openId;
@ApiModelProperty(value = "showUrl")
private String showUrl;
@ApiModelProperty(value = "returnUrl")
private String returnUrl;
}
......@@ -21,9 +21,9 @@ public class PayOrderParam {
@NotNull(message = "必传")
private Integer number;
@ApiModelProperty(value = "是否学生票")
@NotNull(message = "必传")
private Integer isStudent;
// @ApiModelProperty(value = "是否学生票")
// @NotNull(message = "必传")
// private Integer isStudent;
@ApiModelProperty(value = "是否电子票")
@NotNull(message = "必传")
private Integer isElectronic;
......
......@@ -42,10 +42,16 @@ public class TicketCreateParam implements Serializable {
@NotNull(message = "不能为空")
private Integer isElectronic;
@ApiModelProperty(value = "是否电子票", example = "0")
private String expressDescribes;
@ApiModelProperty(value = "是否快递票", example = "0")
@NotNull(message = "不能为空")
private Integer isExpress;
@ApiModelProperty(value = "是否电子票", example = "0")
private String electronicDescribe;
@ApiModelProperty(value = "价格", example = "100.00")
@NotNull(message = "不能为空")
private BigDecimal price;
......
......@@ -27,4 +27,7 @@ public class KylinOrderTicketEntitiesVo implements Serializable {
private String ticketTitle;
private String useStart;
private String useEnd;
private String createdAt;
private String updatedAt;
}
......@@ -10,33 +10,24 @@ import java.io.Serializable;
@Data
public class KylinStationCheckOrderVo implements Serializable {
private static final long serialVersionUID = 7450966265904643147L;
@ApiModelProperty(position = 10, value = "演出ID[64]")
@ApiModelProperty(position = 10, value = "ID[64]")
private String orderTicketEntitiesId;
@ApiModelProperty(position = 11, value = "演出ID[64]")
private String performanceId;
@ApiModelProperty(position = 11, value = "订单号")
private String orderCode;
@ApiModelProperty(position = 12, value = "二维码地址")
private String qrCode;
@ApiModelProperty(position = 12, value = "订单ID")
private String orderId;
@ApiModelProperty(position = 13, value = "用户昵称")
private String userName;
private String enterName;
@ApiModelProperty(position = 14, value = "用户手机号")
private String userMobile;
@ApiModelProperty(position = 16, value = "付款张数")
private Integer number;
@ApiModelProperty(position = 17, value = "退款张数")
private Integer refundNumber;
@ApiModelProperty(position = 18, value = "订单状态:0-待付款,1-已付款,2-已关闭,3-正在退款,4-已退款,5-待关闭,6-部分退款")
private String enterMobile;
@ApiModelProperty(position = 15, value = "出票状态:0-未出票,1-已出票")
private Integer status;
@ApiModelProperty(position = 19, value = "支付状态:0-未支付,1-已支付,2-支付失败")
private Integer payStatus;
@ApiModelProperty(position = 20, value = "是否学生票[1-是,2-否]")
private Integer isStudent;
@ApiModelProperty(position = 21, value = "购买者是否是会员[0-否,1-是]")
private Integer isMember;
@ApiModelProperty(position = 30, value = "*验票张数")
private Integer checkedNumber;
@ApiModelProperty(position = 31, value = "*是否已同步[0-否,1-是]")
private Integer synced;
@ApiModelProperty(position = 16, value = "支付状态:0-未支付,1-已支付,2-退款中,3-已退款")
private Integer isPayment;
@ApiModelProperty(position = 17, value = "出票端:(验票app)android/ios")
private String checkClient;
@ApiModelProperty(position = 18, value = "二维身份CODE")
private String qrCode;
private static final KylinStationCheckOrderVo obj = new KylinStationCheckOrderVo();
......
package com.liquidnet.service.kylin.dto.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
@ApiModel(value = "KylinStationLoginVo", description = "专业版登录成功响应数据")
@Data
public class KylinStationLoginVo implements Serializable, Cloneable {
private static final long serialVersionUID = 9097515630202255297L;
@ApiModelProperty(position = 10, value = "ID[64]")
private String uid;
@ApiModelProperty(position = 11, value = "手机号[11]")
private String mobile;
@ApiModelProperty(position = 12, value = "姓名[20]")
private String name;
@ApiModelProperty(position = 13, value = "TOKEN[255]")
private String token;
private static final KylinStationLoginVo obj = new KylinStationLoginVo();
public static KylinStationLoginVo getNew() {
try {
return (KylinStationLoginVo) obj.clone();
} catch (CloneNotSupportedException e) {
return new KylinStationLoginVo();
}
}
}
......@@ -12,7 +12,7 @@ import java.util.List;
public class KylinStationPerformanceVo implements Serializable, Cloneable {
private static final long serialVersionUID = -4994363974994478286L;
@ApiModelProperty(position = 10, value = "演出ID[64]")
private String performanceId;
private String performancesId;
@ApiModelProperty(position = 11, value = "类型[101-音乐节,102小型演出(livehouse演出),103巡演]")
private Integer type;
@ApiModelProperty(position = 12, value = "演出标题[255]")
......@@ -21,9 +21,13 @@ public class KylinStationPerformanceVo implements Serializable, Cloneable {
private String timeStart;
@ApiModelProperty(position = 14, value = "结束时间[yyyy/MM/dd]")
private String timeEnd;
@ApiModelProperty(position = 15, value = "票种列表信息")
@ApiModelProperty(position = 15, value = "城市名称")
private String cityName;
@ApiModelProperty(position = 16, value = "场地名称")
private String fieldName;
@ApiModelProperty(position = 17, value = "票种列表信息")
private List<KylinStationTicketVo> ticketVoList;
@ApiModelProperty(position = 16, value = "可下载时间")
@ApiModelProperty(position = 18, value = "可下载时间")
private String canDownTime;
private static final KylinStationPerformanceVo obj = new KylinStationPerformanceVo();
......@@ -38,7 +42,7 @@ public class KylinStationPerformanceVo implements Serializable, Cloneable {
public KylinStationPerformanceVo copy(KylinPerformanceVo source) {
if (null == source) return this;
this.performanceId = source.getPerformancesId();
this.performancesId = source.getPerformancesId();
this.type = source.getType();
this.title = source.getTitle();
this.timeStart = source.getTimeStart();
......
......@@ -12,24 +12,22 @@ import java.math.BigDecimal;
public class KylinStationTicketVo implements Serializable, Cloneable {
private static final long serialVersionUID = 1303234075649915021L;
@ApiModelProperty(position = 10, value = "票种ID[64]")
private String ticketsId;
@ApiModelProperty(position = 11, value = "类型[1-单日票,2-通票]")
private String type;
@ApiModelProperty(position = 12, value = "名称[32]")
private String ticketId;
@ApiModelProperty(position = 11, value = "名称[32]")
private String title;
@ApiModelProperty(position = 13, value = "单价(8,2)")
@ApiModelProperty(position = 12, value = "单价(8,2)")
private BigDecimal price;
@ApiModelProperty(position = 14, value = "适用开始时间")
@ApiModelProperty(position = 13, value = "适用开始时间")
private String useStart;
@ApiModelProperty(position = 15, value = "适用结束时间")
@ApiModelProperty(position = 14, value = "适用结束时间")
private String useEnd;
@ApiModelProperty(position = 16, value = "票房")
@ApiModelProperty(position = 15, value = "票房")
private BigDecimal priceSum;
@ApiModelProperty(position = 17, value = "票量[9]")
@ApiModelProperty(position = 16, value = "票量[9]")
private Integer number;
@ApiModelProperty(position = 18, value = "已验票量[9]")
@ApiModelProperty(position = 17, value = "已验票量[9]")
private Integer checkedNum;
@ApiModelProperty(position = 19, value = "余量[9]")
@ApiModelProperty(position = 18, value = "余量[9]")
private Integer remainderNum;
private static final KylinStationTicketVo obj = new KylinStationTicketVo();
......
......@@ -22,4 +22,6 @@ public class PayDataVo implements Serializable {
private long timestamp;
private String redirect_url;
private String order_str;
}
......@@ -18,6 +18,10 @@ public class PayResultVo implements Serializable {
private String order_id;
private String showUrl;
private String returnUrl;
private BigDecimal price;
private PayDataVo pay_data;
......
......@@ -63,6 +63,12 @@ public class KylinTicketPartnerVo implements Serializable {
@ApiModelProperty(value = "票种说明", example = "这是票种说明")
private String describes;
@ApiModelProperty(value = "快递票种说明", example = "这是票种说明")
private String describesExpress;
@ApiModelProperty(value = "电子票种说明", example = "这是票种说明")
private String describeElectronic;
@ApiModelProperty(value = "票状态 -1删除;0未提交;1审核中;2审核中(自动在售);3审核通过;4审核未通过;6在售;7停售;8售罄;9未开始;10已结束", example = "0")
private Integer status;
......
package com.liquidnet.service.kylin.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.liquidnet.service.kylin.dto.param.KylinStationCheckOrderParam;
import com.liquidnet.service.kylin.entity.KylinOrderTicketEntities;
/**
......@@ -13,4 +14,5 @@ import com.liquidnet.service.kylin.entity.KylinOrderTicketEntities;
*/
public interface IKylinOrderTicketEntitiesService extends IService<KylinOrderTicketEntities> {
void updateByStation(KylinStationCheckOrderParam checkDataParam);
}
......@@ -43,6 +43,10 @@ public interface IKylinOrderTicketsService extends IService<KylinOrderTickets> {
//TASK 倒计时
boolean checkOrderTime(String userId);
//TASK 订单状态
ResponseDto<Integer> checkOrderResult(String orderId);
// 下单接口(无订单->待支付->可支付)
// 删除订单
// 代理票务 可买状态判断
......
......@@ -101,6 +101,17 @@
<artifactId>javax.servlet-api</artifactId>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.0</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.4.0</version>
</dependency>
</dependencies>
</project>
\ No newline at end of file
......@@ -6,6 +6,8 @@ import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import javax.sql.DataSource;
import com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean;
import org.apache.ibatis.io.VFS;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
......@@ -122,7 +124,7 @@ public class MyBatisConfig
typeAliasesPackage = setTypeAliasesPackage(typeAliasesPackage);
VFS.addImplClass(SpringBootVFS.class);
final SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
final MybatisSqlSessionFactoryBean sessionFactory = new MybatisSqlSessionFactoryBean();
sessionFactory.setDataSource(dataSource);
sessionFactory.setTypeAliasesPackage(typeAliasesPackage);
sessionFactory.setMapperLocations(resolveMapperLocations(StringUtils.split(mapperLocations, ",")));
......
......@@ -56,11 +56,19 @@ public class KylinPerformancesController extends BaseController {
return prefix + "/details";
}
@PostMapping(value = "/audit")
@RequiresPermissions("kylin:performances:audit")
@ResponseBody
public AjaxResult performanceAudit(@RequestParam("performancesId") String performancesId, @RequestParam("status") int status, @RequestParam(value = "rejectTxt", required = false) String rejectTxt) {
boolean result = kylinPerformancesService.performanceAudit(performancesId, status, rejectTxt);
return toAjax(result);
}
@RequiresPermissions("kylin:performances:change")
@PostMapping(value = "/isShow")
@ResponseBody
public AjaxResult setIsShow(String performancesId, Integer isShow) {
return toAjax(kylinPerformancesService.setIsShow(performancesId,isShow));
return toAjax(kylinPerformancesService.setIsShow(performancesId, isShow));
}
//
......
......@@ -36,13 +36,13 @@ spring:
uri: mongodb://root:S&y$6d*JwJ@39.106.122.201:27017/?authSource=admin&waitQueueMultiple=100
sslEnabled: false
database: dev_ln_scene
redis:
port: 6379
host: 39.106.122.201
password: 3Xa%8p
lettuce:
pool:
max-active: 8
max-wait: -1
max-idle: 8
min-idle: 0
\ No newline at end of file
redis:
port: 6379
host: 39.106.122.201
password: 3Xa%8p
lettuce:
pool:
max-active: 8
max-wait: -1
max-idle: 8
min-idle: 0
\ No newline at end of file
......@@ -112,6 +112,8 @@
<div th:each="dict : ${kylinPerformanceMisVo.ticketTimes}">
<div th:each="dict2 : ${dict.ticket}">
<br/>
<br/>
<div>
<span>票种名称:</span>
<span th:text="${dict2.title}"></span>
......@@ -130,14 +132,14 @@
<span>票种说明:</span>
<span th:text="${dict2.title}"></span>
</div>
<div>
<span>电子票说明:</span>
<span th:text="${dict2.title}"></span>
</div>
<div>
<span>学生票说明说明:</span>
<span th:text="${dict2.title}"></span>
</div>
<!-- <div>-->
<!-- <span>电子票说明:</span>-->
<!-- <span th:text="${dict2.describeElectronic}"></span>-->
<!-- </div>-->
<!-- <div>-->
<!-- <span>快递票说明:</span>-->
<!-- <span th:text="${dict2.describesExpress}"></span>-->
<!-- </div>-->
<div>
<span>限购:</span>
<span th:text="${dict2.limitCount}"></span>
......@@ -158,19 +160,40 @@
<span>是否学生票:</span>
<span th:text="${dict2.isStudent}"></span>
</div>
<div>
<span>是否显示二维码:</span>
<span th:text="${dict2.isShowCode}"></span>
</div>
<div>
<span>二维码显示时间:</span>
<span th:if="${dict2.isShowCode==1}" th:text="${dict2.qrCodeShowTime}"></span>
</div>
<div>
<span>取票方式:</span>
<span th:text="${dict2.title}"></span>
<span th:text="${dict2.isElectronic}"></span>
<span th:text="${dict2.isExpress}"></span>
</div>
<div>
<span>快递票停售时间:</span>
<span th:text="${dict2.timeEndExpress}"></span>
</div>
</div>
</div>
</form>
</div>
<div class="panel-body" th:width="max" style="margin-top: 10px">
<div class="radio check-box">
<input type="radio" value="1" name="auditCheck"> 同意</label>
</div>
<div class="radio check-box">
<input type="radio" value="0" name="auditCheck"> 拒绝</label>
</div>
<input name="rejectTxt" class="form-control" type="text"/>
<button type="button" class="btn btn-w-m btn-success" name="isShowBtn" style="margin-top: 10px"
onclick="aduitHandler()">审核
</button>
</div>
</div>
<button type="button" class="btn btn-w-m btn-success" name="isShowBtn"
onclick="">审核
</button>
</div>
......@@ -190,15 +213,32 @@
document.getElementsByName("isShowCheck")[1].checked = true;
}
//修改 演出是否显示
function submitHandler() {
var param = {
"isShow": document.getElementsByName("isShowCheck")[0].checked ? 1 : 0,
"isShow": document.getElementsByName("auditCheck")[0].checked ? 1 : 0,
"performancesId": '[[${kylinPerformanceMisVo.performancesId}]]'.replaceAll("\"", "")
};
$.operate.post(prefix + "/isShow", param, function (res) {
});
}
//演出审核
function aduitHandler() {
const auditStatus = document.getElementsByName("isShowCheck")[0].checked ? 3 : 4;
var auditRejectTxt = ""
if(4 === auditStatus){
auditRejectTxt = document.getElementsByName("rejectTxt")[0].textContent;
}
var param = {
"status": auditStatus,
"performancesId": '[[${kylinPerformanceMisVo.performancesId}]]'.replaceAll("\"", ""),
"rejectTxt":auditRejectTxt
};
$.operate.post(prefix + "/audit", param, function (res) {
});
}
//演出信息
const type = document.getElementById("type");
var typeInt = '[[${kylinPerformanceMisVo.type}]]';
......
......@@ -61,9 +61,19 @@ public abstract class DateUtil {
}
public String format(LocalDate localDate) {
if (localDate == null) {
return null;
}
return formatter.format(localDate);
}
public LocalDateTime parse(String str) {
if (null == str || str.trim().length() <= 0) {
return null;
}
return LocalDateTime.parse(str, formatter);
}
}
/**
......
......@@ -26,7 +26,7 @@ liquidnet:
port: 6379
password: 3Xa%8p
mongodb:
host: 39.106.122.201
host: 39.106.122.201:27017
port: 27017
user: root
pwd: S&y$6d*JwJ
......
......@@ -22,12 +22,11 @@ liquidnet:
knife4j:
disable: false
redis:
host: r-2ze7002ckw5u75fgukpd.redis.rds.aliyuncs.com
host: r-2zefzyjbij5vbez65y.redis.rds.aliyuncs.com
port: 6380
password: PO@B!Iud32
mongodb:
host: s-2ze49872ed6aeb14.mongodb.rds.aliyuncs.com
host: s-2zef656730e5a1d4.mongodb.rds.aliyuncs.com:3717,s-2ze49872ed6aeb14.mongodb.rds.aliyuncs.com:3717
port: 3717
user: root
pwd: $hAh4SGcDQ
#application-test-end
\ No newline at end of file
pwd: $hAh4SGcDQ
\ No newline at end of file
......@@ -2,8 +2,8 @@ server:
port: ${liquidnet.info.port}
tomcat:
uri-encoding: UTF-8
maxThreads: 2000 #默认200
minSpareThreads: 100 #默认10
maxThreads: 200 #默认200
minSpareThreads: 30 #默认10
maxConnections: 12000 #默认10000
acceptCount: 5000 #默认100
processorCache: 200 #默认200
......@@ -75,29 +75,9 @@ spring:
password: ${liquidnet.rabbitmq.password}
data:
mongodb:
uri: mongodb://${liquidnet.mongodb.user}:${liquidnet.mongodb.pwd}@${liquidnet.mongodb.host}:${liquidnet.mongodb.port}/?authSource=admin&waitQueueMultiple=100
sslEnabled: false
database: ${spring.data.mongodb.database}
# address: ${liquidnet.mongodb.host}:${liquidnet.mongodb.port}
# username: ${liquidnet.mongodb.user}
# password: ${liquidnet.mongodb.pwd}
# authenticationDatabase: admin #[设置你的认证数据库,如果有的话]
# # 连接池配置
# clientName: ${spring.application.name} # 客户端的标识,用于定位请求来源等
# connectionTimeoutMs: 10000 # TCP连接超时,毫秒
# readTimeoutMs: 15000 # TCP读取超时,毫秒
# poolMaxWaitTimeMs: 3000 #当连接池无可用连接时客户端阻塞等待的时长,单位毫秒
# connectionMaxIdleTimeMs: 60000 #TCP连接闲置时间,单位毫秒
# connectionMaxLifeTimeMs: 120000 #TCP连接最多可以使用多久,单位毫秒
# heartbeatFrequencyMs: 20000 #心跳检测发送频率,单位毫秒
# minHeartbeatFrequencyMs: 8000 #最小的心跳检测发送频率,单位毫秒
# heartbeatConnectionTimeoutMs: 10000 #心跳检测TCP连接超时,单位毫秒
# heartbeatReadTimeoutMs: 15000 #心跳检测TCP连接读取超时,单位毫秒
# connectionsPerHost: 20 # 每个host的TCP连接数
# minConnectionsPerHost: 8 #每个host的最小TCP连接数
# #计算允许多少个线程阻塞等待可用TCP连接时的乘数,算法:threadsAllowedToBlockForConnectionMultiplier*connectionsPerHost,当前配置允许10*20个线程阻塞
# threadsAllowedToBlockForConnectionMultiplier: 10
uri: mongodb://${liquidnet.mongodb.user}:${liquidnet.mongodb.pwd}@${liquidnet.mongodb.host}/?authSource=admin&maxPoolSize=4000&waitQueueMultiple=100
sslEnabled: false
database: ${spring.data.mongodb.database}
datasource:
name: ${liquidnet.mysql.database-name}
url: jdbc:mysql://${liquidnet.mysql.urlHostAndPort}/${liquidnet.mysql.database-name}?serverTimezone=UTC&characterEncoding=utf-8&useSSL=false
......
......@@ -2,8 +2,8 @@ server:
port: ${liquidnet.info.port}
tomcat:
uri-encoding: UTF-8
maxThreads: 2000 #默认200
minSpareThreads: 100 #默认10
maxThreads: 200 #默认200
minSpareThreads: 30 #默认10
maxConnections: 12000 #默认10000
acceptCount: 5000 #默认100
processorCache: 200 #默认200
......@@ -75,8 +75,7 @@ spring:
password: ${liquidnet.rabbitmq.password}
data:
mongodb:
uri: mongodb://${liquidnet.mongodb.user}:${liquidnet.mongodb.pwd}@${liquidnet.mongodb.host}:${liquidnet.mongodb.port}/?authSource=admin&waitQueueMultiple=100
# uri: mongodb://root:S&y$6d*JwJ@39.106.122.201:27017/ln_kylin_mdb
uri: mongodb://${liquidnet.mongodb.user}:${liquidnet.mongodb.pwd}@${liquidnet.mongodb.host}/?authSource=admin&maxPoolSize=4000&waitQueueMultiple=100
sslEnabled: false
database: ${spring.data.mongodb.database}
datasource:
......
......@@ -3,7 +3,7 @@ server:
tomcat:
uri-encoding: UTF-8
maxThreads: 2000 #默认200
minSpareThreads: 500 #默认10
minSpareThreads: 200 #默认10
maxConnections: 20000 #默认10000
acceptCount: 5000 #默认100
processorCache: 1000 #默认200
......@@ -93,7 +93,7 @@ ribbon:
enabled: true # 为Ribbon禁用Eureka
ReadTimeout: 15000
SocketTimeout: 15000
MaxAutoRetries: 1
MaxAutoRetries: 0
MaxAutoRetriesNextServer: 0
#liquidnet-service-sequence:
# ribbon:
......
......@@ -6,7 +6,7 @@ liquidnet:
username: user
password: user123
eureka:
host: 172.17.207.177:7001
host: 172.17.207.177:7001,172.17.121.158:7001,172.17.121.157:7001
# end-test-这里是配置信息基本值
spring:
......
......@@ -6,7 +6,7 @@ liquidnet:
username: user
password: user123
eureka:
host: 172.17.207.177:7001
host: 172.17.207.177:7001,172.17.121.158:7001,172.17.121.157:7001
# end-test-这里是配置信息基本值
spring:
......
......@@ -6,7 +6,7 @@ liquidnet:
username: user
password: user123
eureka:
host: 172.18.0.2:7001
host: 172.17.207.177:7001,172.17.121.158:7001,172.17.121.157:7001
# end-dev-这里是配置信息基本值
spring:
......
......@@ -6,7 +6,7 @@ liquidnet:
username: user
password: user123
eureka:
host: 172.17.207.177:7001
host: 172.17.207.177:7001,172.17.121.158:7001,172.17.121.157:7001
# end-dev-这里是配置信息基本值
spring:
......
......@@ -16,6 +16,7 @@ import io.swagger.annotations.ApiResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.List;
/**
......@@ -70,6 +71,18 @@ public class KylinOrderTicketsController {
return ResponseDto.success(orderTicketsService.orderDetails(orderId));
}
@GetMapping("checkPayment")
@ApiOperation("订单详情")
@ApiResponse(code = 200, message = "接口返回对象参数")
public ResponseDto<HashMap> checkOrderResult(@RequestParam("orderId") String orderId) {
Integer status = orderTicketsService.checkOrderResult(orderId).getData();
HashMap<String,Integer> map = new HashMap<>();
map.put("status",status);
return ResponseDto.success(map);
}
@GetMapping("checkOrderTime")
@ApiOperation("订单过期脚本")
@ApiResponse(code = 200, message = "接口返回对象参数")
......
package com.liquidnet.service.kylin.service.impl;
import com.liquidnet.common.mq.constant.MQConst;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.service.base.SqlMapping;
import com.liquidnet.service.kylin.dto.param.KylinStationCheckOrderParam;
import com.liquidnet.service.kylin.dto.vo.KylinOrderTicketEntitiesVo;
import com.liquidnet.service.kylin.entity.KylinOrderTicketEntities;
import com.liquidnet.service.kylin.mapper.KylinOrderTicketEntitiesMapper;
import com.liquidnet.service.kylin.service.IKylinOrderTicketEntitiesService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.mongodb.BasicDBObject;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
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.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;
/**
* <p>
......@@ -16,5 +35,38 @@ import org.springframework.stereotype.Service;
*/
@Service
public class KylinOrderTicketEntitiesServiceImpl extends ServiceImpl<KylinOrderTicketEntitiesMapper, KylinOrderTicketEntities> implements IKylinOrderTicketEntitiesService {
@Autowired
MongoConverter mongoConverter;
@Autowired
MongoTemplate mongoTemplate;
@Autowired
RabbitTemplate rabbitTemplate;
@Override
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public void updateByStation(KylinStationCheckOrderParam checkDataParam) {
String performanceId = checkDataParam.getPerformanceId();
KylinOrderTicketEntitiesVo updateVo = new KylinOrderTicketEntitiesVo();
updateVo.setCheckClient(checkDataParam.getCheckClient());
updateVo.setUpdatedAt(DateUtil.getNowTime());
updateVo.setStatus(1);// 1-已出票
List<String> checkedEntitiesIdList = checkDataParam.getCheckedEntitiesIdList();
mongoTemplate.getCollection(KylinOrderTicketEntitiesVo.class.getSimpleName()).updateMany(
Query.query(Criteria.where("performanceId").is(performanceId)
.and("orderTicketEntitiesId").in(checkedEntitiesIdList.toArray())
.and("status").is(0)
).getQueryObject(),
new BasicDBObject("$set", mongoConverter.convertToMongoType(updateVo))
);
LocalDateTime nowDt = LocalDateTime.now();
LinkedList<Object[]> paramsList = new LinkedList<>();
for (String id : checkedEntitiesIdList) {
paramsList.add(new Object[]{1, nowDt, id});
}
// rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
// SqlMapping.get("adam_user.add", paramsList));
}
}
......@@ -116,6 +116,12 @@ public class KylinTicketsPartnerServiceImpl extends ServiceImpl<KylinTicketsMapp
kylinTicketPartnerVo.setType(kylinTicketTimesPartnerVo.getType());
kylinTicketPartnerVo.setStatus(0);
kylinTicketPartnerVo.setDefault();
if(ticketCreateParam.getIsExpress()==1){
kylinTicketPartnerVo.setDescribesExpress(ticketCreateParam.getExpressDescribes());
}
if(ticketCreateParam.getIsElectronic()==1){
kylinTicketPartnerVo.setDescribeElectronic(ticketCreateParam.getElectronicDescribe());
}
if (ticketCreateParam.getIsExpress() == 1) {
kylinTicketPartnerVo.setTimeEndExpress(ticketCreateParam.getTimeEndExpress().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
......@@ -156,6 +162,12 @@ public class KylinTicketsPartnerServiceImpl extends ServiceImpl<KylinTicketsMapp
kylinTicketPartnerVo.setUseStart(kylinTicketTimesPartnerVo.getUseStart());
kylinTicketPartnerVo.setUseEnd(kylinTicketTimesPartnerVo.getUseEnd());
kylinTicketPartnerVo.setType(kylinTicketTimesPartnerVo.getType());
if(ticketCreateParam.getIsExpress()==1){
kylinTicketPartnerVo.setDescribesExpress(ticketCreateParam.getExpressDescribes());
}
if(ticketCreateParam.getIsElectronic()==1){
kylinTicketPartnerVo.setDescribeElectronic(ticketCreateParam.getElectronicDescribe());
}
kylinTicketPartnerVo.setStatus(-2);
kylinTicketPartnerVo.setDefault();
......@@ -199,6 +211,13 @@ public class KylinTicketsPartnerServiceImpl extends ServiceImpl<KylinTicketsMapp
kylinTicketPartnerVo.setTimeEnd(ticketCreateParam.getTimeEnd().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
kylinTicketPartnerVo.setTimesId(null);
kylinTicketPartnerVo.setStatus(null);
if(ticketCreateParam.getIsExpress()==1){
kylinTicketPartnerVo.setDescribesExpress(ticketCreateParam.getExpressDescribes());
}
if(ticketCreateParam.getIsElectronic()==1){
kylinTicketPartnerVo.setDescribeElectronic(ticketCreateParam.getElectronicDescribe());
}
kylinTicketPartnerVo.setDefault();
if (ticketCreateParam.getIsExpress() == 1) {
kylinTicketPartnerVo.setTimeEndExpress(ticketCreateParam.getTimeEndExpress().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
......
......@@ -400,6 +400,10 @@ public class PerformanceVoTask {
tickets.setTimeEnd(DateUtil.asLocalDateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(ticketItem.getTimeEnd())));
if (ticketItem.getIsExpress() == 1) {
tickets.setTimeEndExpress(DateUtil.asLocalDateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(ticketItem.getTimeEndExpress())));
tickets.setDescribeExpress(ticketItem.getDescribesExpress());
}
if(ticketItem.getIsElectronic() == 1){
tickets.setDescribeElectronic(ticketItem.getDescribeElectronic());
}
tickets.setUseStart(DateUtil.asLocalDateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(ticketTimeItem.getUseStart())));
tickets.setUseEnd(DateUtil.asLocalDateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(ticketTimeItem.getUseEnd())));
......
package com.liquidnet.service.kylin.utils;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.google.zxing.common.detector.MathUtils;
import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.kylin.constant.KylinRedisConst;
......@@ -64,7 +65,11 @@ public class DataUtils {
* @return 普通剩余库存
*/
public int changeSurplusGeneral(String ticketId, int surplusGeneral) {
return (int) redisUtil.incr(KylinRedisConst.PERFORMANCES_INVENTORY + ticketId + ":" + KylinRedisConst.SURPLUS_GENERAL, surplusGeneral);
if(surplusGeneral>0) {
return (int) redisUtil.incr(KylinRedisConst.PERFORMANCES_INVENTORY + ticketId + ":" + KylinRedisConst.SURPLUS_GENERAL, surplusGeneral);
}else{
return (int) redisUtil.decr(KylinRedisConst.PERFORMANCES_INVENTORY + ticketId + ":" + KylinRedisConst.SURPLUS_GENERAL, Math.abs(surplusGeneral));
}
}
/**
......@@ -95,7 +100,11 @@ public class DataUtils {
* @return 兑换剩余库存
*/
public int changeSurplusExchange(String ticketId, int surplusExchange) {
return (int) redisUtil.incr(KylinRedisConst.PERFORMANCES_INVENTORY + ticketId + ":" + KylinRedisConst.SURPLUS_GENERAL, surplusExchange);
if(surplusExchange>0) {
return (int) redisUtil.incr(KylinRedisConst.PERFORMANCES_INVENTORY + ticketId + ":" + KylinRedisConst.SURPLUS_EXCHANGE, surplusExchange);
}else{
return (int) redisUtil.decr(KylinRedisConst.PERFORMANCES_INVENTORY + ticketId + ":" + KylinRedisConst.SURPLUS_EXCHANGE, Math.abs(surplusExchange));
}
}
/**
......
......@@ -6,7 +6,7 @@ liquidnet:
username: user
password: user123
eureka:
host: 172.17.207.177:7001
host: 172.17.207.177:7001,172.17.121.158:7001,172.17.121.157:7001
# end-dev-这里是配置信息基本值
spring:
......
......@@ -36,4 +36,10 @@
# 专业版APP
20601=账号不存在
20602=密码错误
\ No newline at end of file
20602=密码错误
20603=
20604=
20605=
20606=当前账号无关联演出数据
20607=当前账号未关联当前演出
20608=当前演出还未开放下载
\ No newline at end of file
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_status SET is_payment = ?,updated_at = ? WHERE order_tickets_id = ?
\ No newline at end of file
kylin_order_ticket_entities.synPay=UPDATE kylin_order_ticket_entities SET is_payment = ?,updated_at = ? WHERE order_tickets_id = ?
kylin_order_ticket_entities.updateStatusByStation=UPDATE kylin_order_ticket_status SET `status`=?, updated_at=? WHERE order_ticket_entities_id =?
\ No newline at end of file
......@@ -6,7 +6,7 @@ liquidnet:
username: user
password: user123
eureka:
host: 172.18.0.2:7001
host: 172.17.207.177:7001,172.17.121.158:7001,172.17.121.157:7001
# end-dev-这里是配置信息基本值
spring:
......
......@@ -11,7 +11,7 @@ liquidnet:
path: ./logs
name: support-config
eureka:
host: 172.17.207.177:7001
host: 172.17.207.177:7001,172.17.121.158:7001,172.17.121.157:7001
rabbitmq:
host: 127.0.0.1
port: 5672
......
......@@ -56,4 +56,12 @@
</exclusions>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
......@@ -6,7 +6,7 @@ liquidnet:
username: user
password: user123
eureka:
host: 172.17.207.177:7001
host: 172.17.207.177:7001,172.17.121.158:7001,172.17.121.157:7001
# end-test-这里是配置信息基本值
spring:
......
......@@ -9,14 +9,14 @@
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<modules>
<module>liquidnet-bus-common</module>
<module>liquidnet-bus-do</module>
<module>liquidnet-bus-api</module>
<module>liquidnet-bus-service</module>
<module>liquidnet-bus-support</module>
<module>liquidnet-bus-client</module>
</modules>
<!-- <modules>-->
<!-- <module>liquidnet-bus-common</module>-->
<!-- <module>liquidnet-bus-do</module>-->
<!-- <module>liquidnet-bus-api</module>-->
<!-- <module>liquidnet-bus-service</module>-->
<!-- <module>liquidnet-bus-support</module>-->
<!-- <module>liquidnet-bus-client</module>-->
<!-- </modules>-->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
......
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