记得上下班打卡 | git大法好,push需谨慎
Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
liquidnet-bus-v1
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
董敬伟
liquidnet-bus-v1
Commits
08c5ba76
Commit
08c5ba76
authored
Jul 02, 2021
by
胡佳晨
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
第三方演出上架逻辑
parent
baf2157f
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
40 additions
and
503 deletions
+40
-503
KylinOrderTicketsServiceImpl.java
...vice/order/service/impl/KylinOrderTicketsServiceImpl.java
+40
-503
No files found.
liquidnet-bus-service/liquidnet-service-order/liquidnet-service-order-impl/src/main/java/com/liquidnet/service/order/service/impl/KylinOrderTicketsServiceImpl.java
View file @
08c5ba76
...
...
@@ -94,8 +94,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsService {
private
TaobaoTicketUtils
taobaoTicketUtils
;
@Autowired
private
OrderRefundOvertimeServiceImpl
orderRefundsCallbackService
;
@Autowired
private
KylinRefundsStatusServiceImpl
refundsStatusService
;
ArrayList
<
Integer
>
canBuyStatus
=
new
ArrayList
()
{{
...
...
@@ -865,183 +863,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsService {
}
}
@Override
public
PageInfo
<
List
<
KylinOrderListVo
>>
orderList
()
{
//TODO 缺快递
PageInfo
<
List
<
KylinOrderListVo
>>
mPageInfo
=
null
;
String
uid
=
CurrentUtil
.
getCurrentUid
();
// checkOrderTime(uid);
try
{
List
<
KylinOrderListVo
>
voList
=
dataUtils
.
getOrderList
(
uid
);
for
(
int
i
=
0
;
i
<
voList
.
size
();
i
++)
{
KylinOrderListVo
item
=
voList
.
get
(
i
);
//TODO 顺丰快递
Object
expresses
=
null
;
if
(
null
!=
expresses
)
{
item
.
setExpress_number
(
""
);
//expresses.getNumber()
item
.
setExpress_company
(
""
);
//expresses.getName()
item
.
setKuaidi_status
(-
2
);
//expresses.getStatus()
}
else
{
item
.
setExpress_number
(
""
);
item
.
setExpress_company
(
""
);
item
.
setKuaidi_status
(-
2
);
}
if
(
item
.
getStatus
().
equals
(
KylinTableStatusConst
.
ORDER_STATUS0
))
{
try
{
item
.
setRestTime
(
DateUtil
.
intervalSeconds
(
DateUtil
.
parse
(
item
.
getOverdueAt
(),
"yyyy-MM-dd HH:mm:ss"
),
DateUtil
.
parse
(
DateUtil
.
getNowTime
(),
"yyyy-MM-dd HH:mm:ss"
)
));
if
(
item
.
getRestTime
()
<=
0L
)
{
item
.
setRestTime
(
0L
);
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
log
.
debug
(
"item.getOverdueAt() = "
+
item
.
getOverdueAt
());
log
.
debug
(
"DateUtil.getNowTime() = "
+
DateUtil
.
getNowTime
());
log
.
debug
(
"item.getRestTime() = "
+
item
.
getRestTime
());
}
else
{
item
.
setRestTime
(
0L
);
}
if
(
i
>=
40
)
{
break
;
}
}
mPageInfo
=
new
PageInfo
(
voList
);
mPageInfo
.
setTotal
(
voList
.
size
());
log
.
info
(
UserPathDto
.
setData
(
"订单列表"
,
""
,
voList
));
return
mPageInfo
;
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
return
mPageInfo
;
}
}
@Override
public
OrderDetailsVo
orderDetails
(
String
orderId
)
{
OrderDetailsVo
vo
=
new
OrderDetailsVo
();
try
{
String
uid
=
CurrentUtil
.
getCurrentUid
();
// checkOrderTime(uid);
KylinOrderTicketVo
orderTicketVo
=
dataUtils
.
getOrderTicketVo
(
orderId
);
if
(!
orderTicketVo
.
getUserId
().
equals
(
uid
))
{
return
null
;
}
if
(
null
!=
orderTicketVo
)
{
//TODO 顺丰快递
Object
expresses
=
null
;
KylinPerformanceVo
performanceVo
=
dataUtils
.
getPerformanceVo
(
orderTicketVo
.
getPerformanceId
());
List
<
KylinOrderTicketEntitiesVo
>
kylinOrderTicketEntitiesVoList
=
orderTicketVo
.
getEntitiesVoList
();
KylinTicketVo
ticketVo
=
null
;
//获取购票数据
for
(
int
x
=
0
;
x
<
performanceVo
.
getTicketTimeList
().
size
();
x
++)
{
KylinTicketTimesVo
timeItem
=
performanceVo
.
getTicketTimeList
().
get
(
x
);
for
(
int
y
=
0
;
y
<
timeItem
.
getTicketList
().
size
();
y
++)
{
KylinTicketVo
ticketItem
=
timeItem
.
getTicketList
().
get
(
y
);
if
(
ticketItem
.
getTicketsId
().
equals
(
orderTicketVo
.
getTicketId
()))
{
ticketVo
=
ticketItem
;
break
;
}
}
}
orderTicketVo
.
setIsTrueName
(
ticketVo
.
getIsTrueName
());
orderTicketVo
.
setNoticeImage
(
performanceVo
.
getNoticeImage
());
orderTicketVo
.
setNotice
(
performanceVo
.
getNotice
());
orderTicketVo
.
setTicketType
(
ticketVo
.
getType
());
orderTicketVo
.
setFieldName
(
performanceVo
.
getFieldName
());
if
(
ticketVo
.
getIsShowCode
()
==
1
&&
orderTicketVo
.
getStatus
()
!=
0
&&
orderTicketVo
.
getStatus
()
!=
2
&&
orderTicketVo
.
getStatus
()
!=
4
)
{
LocalDateTime
date
=
DateUtil
.
Formatter
.
yyyyMMddHHmmss
.
parse
(
ticketVo
.
getQrCodeShowTime
());
if
(
LocalDateTime
.
now
().
isAfter
(
date
))
{
orderTicketVo
.
setQrCode
(
orderTicketVo
.
getQrCode
());
}
else
{
orderTicketVo
.
setQrCode
(
""
);
}
}
else
{
orderTicketVo
.
setQrCode
(
""
);
}
// 数据脱敏
for
(
KylinOrderTicketEntitiesVo
item
:
kylinOrderTicketEntitiesVoList
)
{
if
(
item
.
getEnterIdCode
().
length
()
==
18
)
{
item
.
setEnterIdCode
(
item
.
getEnterIdCode
().
substring
(
0
,
3
)
+
"*************"
+
item
.
getEnterIdCode
().
substring
(
16
));
}
if
(
item
.
getEnterMobile
().
length
()
==
11
)
{
item
.
setEnterMobile
(
item
.
getEnterMobile
().
substring
(
0
,
3
)
+
"****"
+
item
.
getEnterMobile
().
substring
(
7
));
}
}
//计算 倒计时
Date
nowDate
=
DateUtil
.
parse
(
DateUtil
.
getNowTime
(),
"yyyy-MM-dd HH:mm:ss"
);
if
(
orderTicketVo
.
getStatus
().
equals
(
KylinTableStatusConst
.
ORDER_STATUS0
))
{
vo
.
setRestTime
(
DateUtil
.
intervalSeconds
(
DateUtil
.
parse
(
orderTicketVo
.
getOverdueAt
(),
"yyyy-MM-dd HH:mm:ss"
),
nowDate
));
if
(
vo
.
getRestTime
()
<=
0L
)
{
vo
.
setRestTime
(
0L
);
}
}
else
{
vo
.
setRestTime
(
0L
);
}
//快递
if
(
null
!=
expresses
)
{
vo
.
setExpress_number
(
""
);
//expresses.getNumber()
vo
.
setExpress_company
(
""
);
//expresses.getName()
vo
.
setKuaidi_status
(-
2
);
//expresses.getStatus()
}
else
{
vo
.
setExpress_number
(
""
);
vo
.
setExpress_company
(
""
);
vo
.
setKuaidi_status
(-
2
);
}
if
(
null
!=
performanceVo
.
getIsCanRefund
()
&&
performanceVo
.
getIsCanRefund
()
==
1
)
{
LocalDateTime
refundOpenDate
=
DateUtil
.
Formatter
.
yyyyMMddHHmmss
.
parse
(
performanceVo
.
getRefundOpenTime
());
LocalDateTime
refundCloseDate
=
DateUtil
.
Formatter
.
yyyyMMddHHmmss
.
parse
(
performanceVo
.
getRefundCloseTime
());
if
(
LocalDateTime
.
now
().
isAfter
(
refundOpenDate
)
&&
LocalDateTime
.
now
().
isBefore
(
refundCloseDate
))
{
vo
.
setIsCanRefund
(
1
);
}
else
{
vo
.
setIsCanRefund
(
0
);
}
}
else
{
vo
.
setIsCanRefund
(
0
);
}
List
<
KylinOrderRefundsOrderCodeVo
>
orderRefundsVoBaseList
=
new
ArrayList
<>();
for
(
KylinOrderRefundsVo
item
:
dataUtils
.
getOrderRefundVoByOrderId
(
orderId
))
{
KylinOrderRefundsOrderCodeVo
data
=
new
KylinOrderRefundsOrderCodeVo
();
data
.
setOrderRefundsId
(
item
.
getOrderRefundsId
());
data
.
setOrderRefundCode
(
item
.
getOrderRefundCode
());
data
.
setStatus
(
item
.
getStatus
());
}
List
<
KylinOrderRefundsVo
>
orderRefundsVoList
=
dataUtils
.
getOrderRefundVoByOrderId
(
orderId
);
List
<
OrderRefundListVo
>
orderRefundListVos
=
new
ArrayList
<>();
for
(
KylinOrderRefundsVo
item
:
orderRefundsVoList
)
{
OrderRefundListVo
data
=
new
OrderRefundListVo
();
data
.
setOrderRefundCode
(
item
.
getOrderRefundCode
().
substring
(
item
.
getOrderRefundCode
().
length
()
-
10
));
data
.
setOrderRefundsId
(
item
.
getOrderRefundsId
());
data
.
setStatus
(
item
.
getStatus
());
orderRefundListVos
.
add
(
data
);
}
orderTicketVo
.
setOrderRefundListVos
(
orderRefundListVos
);
orderTicketVo
.
setOrderCode
(
orderTicketVo
.
getOrderCode
().
substring
(
orderTicketVo
.
getOrderCode
().
length
()
-
10
));
vo
.
setOrderRefundsVoList
(
orderRefundsVoBaseList
);
vo
.
setOrderTicketVo
(
orderTicketVo
);
vo
.
setEnterDescribe
(
dataUtils
.
getEnterInfo
(
"1"
));
}
log
.
info
(
UserPathDto
.
setData
(
"订单详情"
,
orderId
,
vo
));
return
vo
;
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
return
vo
;
}
}
@Override
public
ResponseDto
<
Integer
>
checkOrderResult
(
String
orderId
)
{
String
uid
=
CurrentUtil
.
getCurrentUid
();
...
...
@@ -1062,330 +883,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsService {
}
}
@Override
public
ResponseDto
<
Integer
>
orderUnPayCount
()
{
String
uid
=
CurrentUtil
.
getCurrentUid
();
List
<
KylinOrderListVo
>
voList
=
dataUtils
.
getOrderList
(
uid
);
int
unPayCount
=
0
;
for
(
KylinOrderListVo
item
:
voList
)
{
if
(
item
.
getStatus
().
equals
(
KylinTableStatusConst
.
ORDER_STATUS0
))
{
item
.
setRestTime
(
DateUtil
.
intervalSeconds
(
DateUtil
.
parse
(
item
.
getOverdueAt
(),
"yyyy-MM-dd HH:mm:ss"
),
DateUtil
.
parse
(
DateUtil
.
getNowTime
(),
"yyyy-MM-dd HH:mm:ss"
)
));
if
(
item
.
getRestTime
()
<=
0L
)
{
item
.
setRestTime
(
0L
);
}
else
{
unPayCount
+=
1
;
}
}
else
{
item
.
setRestTime
(
0L
);
}
}
return
ResponseDto
.
success
(
unPayCount
);
}
@Override
public
KylinOrderTicketPreVo
toOrderRefundDetails
(
String
orderId
)
{
try
{
KylinOrderTicketPreVo
vo
=
new
KylinOrderTicketPreVo
();
String
uid
=
CurrentUtil
.
getCurrentUid
();
KylinOrderTicketVo
orderTicketVo
=
dataUtils
.
getOrderTicketVo
(
orderId
);
KylinPerformanceVo
performanceVo
=
dataUtils
.
getPerformanceVo
(
orderTicketVo
.
getPerformanceId
());
List
<
KylinOrderRefundsVo
>
kylinOrderRefundsVoBaseList
=
dataUtils
.
getOrderRefundVoByOrderId
(
orderTicketVo
.
getOrderTicketsId
());
if
(!
orderTicketVo
.
getUserId
().
equals
(
uid
))
{
return
null
;
}
List
<
KylinOrderTicketEntitiesVo
>
kylinOrderTicketEntitiesVoList
=
orderTicketVo
.
getEntitiesVoList
();
List
<
KylinOrderTicketEntitiesPreRefundVo
>
kylinOrderTicketEntitiesPreRefundVos
=
new
ArrayList
<>();
// 数据脱敏
for
(
KylinOrderTicketEntitiesVo
item
:
kylinOrderTicketEntitiesVoList
)
{
KylinOrderTicketEntitiesPreRefundVo
refundVo
=
new
KylinOrderTicketEntitiesPreRefundVo
();
if
(
item
.
getEnterIdCode
().
length
()
==
18
)
{
item
.
setEnterIdCode
(
item
.
getEnterIdCode
().
substring
(
0
,
3
)
+
"*************"
+
item
.
getEnterIdCode
().
substring
(
16
));
}
if
(
item
.
getEnterMobile
().
length
()
==
11
)
{
item
.
setEnterMobile
(
item
.
getEnterMobile
().
substring
(
0
,
3
)
+
"****"
+
item
.
getEnterMobile
().
substring
(
7
));
}
item
.
setPriceActual
(
orderTicketVo
.
getPriceActual
().
subtract
(
orderTicketVo
.
getPriceExpress
()).
divide
(
new
BigDecimal
(
orderTicketVo
.
getNumber
())));
item
.
setPriceCanRefund
(
dataUtils
.
getCanRefundOrderEntitiesPrice
(
orderTicketVo
,
kylinOrderRefundsVoBaseList
,
item
.
getOrderTicketEntitiesId
()));
BeanUtils
.
copyProperties
(
item
,
refundVo
);
kylinOrderTicketEntitiesPreRefundVos
.
add
(
refundVo
);
}
orderTicketVo
.
setFieldName
(
performanceVo
.
getFieldName
());
BeanUtils
.
copyProperties
(
orderTicketVo
,
vo
);
vo
.
setIsTrueName
(
performanceVo
.
getIsTrueName
());
vo
.
setEntitiesPreRefundVos
(
kylinOrderTicketEntitiesPreRefundVos
);
return
vo
;
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
return
null
;
}
}
@Override
public
OrderRefundVo
orderRefundDetails
(
String
orderId
,
String
orderRefundId
)
{
OrderRefundVo
vo
=
new
OrderRefundVo
();
String
uid
=
CurrentUtil
.
getCurrentUid
();
KylinOrderTicketVo
orderTicketVo
=
dataUtils
.
getOrderTicketVo
(
orderId
);
KylinPerformanceVo
performanceVo
=
dataUtils
.
getPerformanceVo
(
orderTicketVo
.
getPerformanceId
());
if
(!
orderTicketVo
.
getUserId
().
equals
(
uid
))
{
return
null
;
}
orderTicketVo
.
setFieldName
(
performanceVo
.
getFieldName
());
KylinOrderRefundsVo
kylinOrderRefundsVoBase
=
dataUtils
.
getOrderRefundVo
(
orderRefundId
);
vo
.
setKylinOrderRefundsVoBaseList
(
kylinOrderRefundsVoBase
);
vo
.
setOrderTicketVo
(
orderTicketVo
);
return
vo
;
}
@Override
public
ResponseDto
<
String
>
sendOrderRefund
(
String
orderId
,
String
orderTicketEntitiesId
,
String
reason
,
String
picList
)
{
KylinOrderTicketEntitiesVo
orderTicketEntitiesVo
=
null
;
try
{
String
uid
=
CurrentUtil
.
getCurrentUid
();
KylinOrderTicketVo
orderTicketVo
=
dataUtils
.
getOrderTicketVo
(
orderId
);
List
<
KylinOrderRefundsVo
>
kylinOrderRefundsVoBaseList
=
dataUtils
.
getOrderRefundVoByOrderId
(
orderTicketVo
.
getOrderTicketsId
());
if
(!
orderTicketVo
.
getUserId
().
equals
(
uid
))
{
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"20003"
));
}
List
<
KylinOrderTicketEntitiesVo
>
entitiesVos
=
orderTicketVo
.
getEntitiesVoList
();
for
(
KylinOrderTicketEntitiesVo
item
:
entitiesVos
)
{
if
(
item
.
getOrderTicketEntitiesId
().
equals
(
orderTicketEntitiesId
))
{
orderTicketEntitiesVo
=
item
;
}
}
if
(
null
==
orderTicketEntitiesVo
)
{
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"20004"
));
}
BigDecimal
refundSinglePrice
=
dataUtils
.
getCanRefundOrderEntitiesPrice
(
orderTicketVo
,
kylinOrderRefundsVoBaseList
,
orderTicketEntitiesId
);
if
(
refundSinglePrice
.
doubleValue
()
<=
0
)
{
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"20022"
));
}
Map
token
=
CurrentUtil
.
getTokenClaims
();
String
username
=
StringUtils
.
defaultString
(((
String
)
token
.
get
(
"nickname"
)),
""
);
String
result
=
refundsStatusService
.
userOrderTicketRefunding
(
orderTicketVo
,
refundSinglePrice
.
doubleValue
(),
orderTicketEntitiesId
,
reason
,
picList
,
uid
,
username
,
kylinOrderRefundsVoBaseList
.
size
());
if
(
result
!=
""
)
{
return
ResponseDto
.
success
(
result
);
}
else
{
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"20019"
));
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"20019"
));
}
}
@Override
public
ResponseDto
<
Boolean
>
orderRefundWithdraw
(
String
orderRefundsId
)
{
LinkedList
<
String
>
sqls
=
new
LinkedList
<>();
LinkedList
<
Object
[]>
sqlsDataA
=
new
LinkedList
<>();
LinkedList
<
Object
[]>
sqlsDataB
=
new
LinkedList
<>();
LinkedList
<
Object
[]>
sqlsDataC
=
new
LinkedList
<>();
LocalDateTime
time
=
LocalDateTime
.
now
();
String
strTime
=
DateUtil
.
Formatter
.
yyyyMMddHHmmss
.
format
(
time
);
try
{
KylinOrderRefundsVo
orderRefundsVo
=
dataUtils
.
getOrderRefundVo
(
orderRefundsId
);
if
(!
orderRefundsVo
.
getStatus
().
equals
(
0
))
{
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"20020"
));
}
List
<
KylinOrderRefundEntitiesVo
>
refundEntities
=
orderRefundsVo
.
getOrderRefundEntitiesVoList
();
String
orderTicketsId
=
orderRefundsVo
.
getOrderTicketsId
();
KylinOrderTicketVo
orderTicketVo
=
dataUtils
.
getOrderTicketVo
(
orderTicketsId
);
// 更新数据
// 订单状态表 判断是退到正在退款 已付款 部分退款?(取消,完成,失败)
int
newStatus
;
int
refundingCount
=
0
;
List
<
KylinOrderRefundsVo
>
orderRefundsVoList
=
dataUtils
.
getOrderRefundVoByOrderId
(
orderTicketsId
);
for
(
KylinOrderRefundsVo
item
:
orderRefundsVoList
)
{
int
status
=
item
.
getStatus
();
if
(
status
!=
2
&&
status
!=
4
&&
status
!=
6
&&
!
item
.
getOrderRefundsId
().
equals
(
orderRefundsId
))
{
refundingCount
+=
1
;
}
}
if
(
refundingCount
>
0
)
{
// 存在其他正在退款的订单
newStatus
=
KylinTableStatusConst
.
ORDER_STATUS3
;
}
else
{
if
(
orderTicketVo
.
getPriceRefund
().
doubleValue
()
>
0
)
{
// 已经有退完的 那就是部分退款了
newStatus
=
KylinTableStatusConst
.
ORDER_STATUS6
;
}
else
if
(
orderTicketVo
.
getStatus
()
!=
2
)
{
newStatus
=
KylinTableStatusConst
.
ORDER_STATUS1
;
}
else
{
newStatus
=
KylinTableStatusConst
.
ORDER_STATUS2
;
}
}
KylinOrderTicketStatus
orderStatusTable
=
new
KylinOrderTicketStatus
();
orderStatusTable
.
setStatus
(
newStatus
);
orderStatusTable
.
setUpdatedAt
(
time
);
sqlsDataA
.
add
(
new
Object
[]{
orderStatusTable
.
getStatus
(),
orderStatusTable
.
getUpdatedAt
(),
orderTicketsId
,
orderTicketVo
.
getChangeDate
(),
orderTicketVo
.
getChangeDate
()
});
KylinOrderTicketVo
kylinOrderTicketVo
=
new
KylinOrderTicketVo
();
kylinOrderTicketVo
.
setStatus
(
newStatus
);
kylinOrderTicketVo
.
setUpdatedAt
(
strTime
);
kylinOrderTicketVo
.
setChangeDate
(
time
);
BasicDBObject
orderObject
=
new
BasicDBObject
(
"$set"
,
JSON
.
parse
(
JsonUtils
.
toJson
(
kylinOrderTicketVo
)));
mongoTemplate
.
getCollection
(
KylinOrderTicketVo
.
class
.
getSimpleName
()).
updateOne
(
Query
.
query
(
Criteria
.
where
(
"orderTicketsId"
).
is
(
orderTicketsId
)).
getQueryObject
(),
orderObject
);
dataUtils
.
delOrderTicketRedis
(
orderTicketsId
);
mongoVoUtils
.
resetOrderListVo
(
orderTicketVo
.
getUserId
(),
2
,
orderTicketsId
,
null
);
// 入场人
for
(
KylinOrderRefundEntitiesVo
item
:
refundEntities
)
{
// 订单状态表 判断是退到正在退款 已付款 部分退款?(取消,完成,失败)
int
newIsPayment
=
0
;
int
refundingEntitiesCount
=
0
;
for
(
KylinOrderRefundsVo
item2
:
orderRefundsVoList
)
{
int
status
=
item2
.
getStatus
();
if
(!
item2
.
getOrderRefundsId
().
equals
(
orderRefundsId
)
&&
(
status
!=
2
&&
status
!=
4
&&
status
!=
6
))
{
for
(
KylinOrderRefundEntitiesVo
item3
:
item2
.
getOrderRefundEntitiesVoList
())
{
if
(
item3
.
getOrderTicketEntitiesId
().
equals
(
item
.
getOrderTicketEntitiesId
()))
{
refundingEntitiesCount
+=
1
;
}
}
}
}
KylinOrderTicketEntitiesVo
entitiesVo
=
null
;
for
(
KylinOrderTicketEntitiesVo
entitiesVo1
:
orderTicketVo
.
getEntitiesVoList
())
{
if
(
entitiesVo1
.
getOrderTicketEntitiesId
().
equals
(
item
.
getOrderTicketEntitiesId
()))
{
entitiesVo
=
entitiesVo1
;
break
;
}
}
if
(
refundingEntitiesCount
>
0
)
{
// 存在其他正在退款的该入场人订单
newIsPayment
=
KylinTableStatusConst
.
ENTITIES_IS_PAYMENT2
;
}
else
{
if
(
entitiesVo
.
getRefundPrice
().
doubleValue
()
>
0
)
{
// 已经有退完的 那就是部分退款了
newIsPayment
=
KylinTableStatusConst
.
ENTITIES_IS_PAYMENT4
;
}
else
{
newIsPayment
=
KylinTableStatusConst
.
ENTITIES_IS_PAYMENT1
;
}
}
KylinOrderTicketEntities
entitiesTable
=
new
KylinOrderTicketEntities
();
entitiesTable
.
setIsPayment
(
newIsPayment
);
entitiesTable
.
setUpdatedAt
(
time
);
sqlsDataB
.
add
(
new
Object
[]{
entitiesTable
.
getIsPayment
(),
entitiesTable
.
getUpdatedAt
(),
item
.
getOrderTicketEntitiesId
(),
entitiesVo
.
getChangeDate
(),
entitiesVo
.
getChangeDate
()
});
KylinOrderTicketEntitiesVo
kylinOrderTicketEntitiesVo
=
new
KylinOrderTicketEntitiesVo
();
kylinOrderTicketEntitiesVo
.
setIsPayment
(
newIsPayment
);
kylinOrderTicketEntitiesVo
.
setUpdatedAt
(
strTime
);
kylinOrderTicketEntitiesVo
.
setChangeDate
(
time
);
BasicDBObject
entitiesObject
=
new
BasicDBObject
(
"$set"
,
JSON
.
parse
(
JsonUtils
.
toJson
(
kylinOrderTicketEntitiesVo
)));
mongoTemplate
.
getCollection
(
KylinOrderTicketEntitiesVo
.
class
.
getSimpleName
()).
updateOne
(
Query
.
query
(
Criteria
.
where
(
"orderTicketEntitiesId"
).
is
(
item
.
getOrderTicketEntitiesId
())).
getQueryObject
(),
entitiesObject
);
dataUtils
.
delOrderTicketEntitiesRedis
(
item
.
getOrderTicketEntitiesId
());
}
// 退款细节取消
KylinOrderRefunds
kylinOrderRefunds
=
new
KylinOrderRefunds
();
kylinOrderRefunds
.
setStatus
(
KylinTableStatusConst
.
ORDER_REFUND_STATUS_CANCEL
);
kylinOrderRefunds
.
setUpdatedAt
(
LocalDateTime
.
now
());
KylinOrderRefundsVo
orderRefundsVoBase
=
new
KylinOrderRefundsVo
();
orderRefundsVoBase
.
setStatus
(
KylinTableStatusConst
.
ORDER_REFUND_STATUS_CANCEL
);
orderRefundsVoBase
.
setUpdatedAt
(
time
);
BasicDBObject
refundObject
=
new
BasicDBObject
(
"$set"
,
JSON
.
parse
(
JsonUtils
.
toJson
(
orderRefundsVoBase
)));
mongoTemplate
.
getCollection
(
KylinOrderRefundsVo
.
class
.
getSimpleName
()).
updateOne
(
Query
.
query
(
Criteria
.
where
(
"orderRefundsId"
).
is
(
orderRefundsId
)).
getQueryObject
(),
refundObject
);
sqlsDataC
.
add
(
new
Object
[]{
orderRefundsVoBase
.
getStatus
(),
orderRefundsVoBase
.
getUpdatedAt
(),
orderRefundsId
});
dataUtils
.
delOrderRefundVo
(
orderRefundsId
);
dataUtils
.
delOrderRefundVoByOrderId
(
orderTicketsId
);
sqls
.
add
(
SqlMapping
.
get
(
"kylin_order_ticket_status.withDraw"
));
sqls
.
add
(
SqlMapping
.
get
(
"kylin_order_ticket_entities.withDraw"
));
sqls
.
add
(
SqlMapping
.
get
(
"kylin_order_refund.withDraw"
));
rabbitTemplate
.
convertAndSend
(
MQConst
.
EXCHANGES_LIQUIDNET_SQL_ORDER_WITHDRAW
,
MQConst
.
ROUTING_KEY_SQL_ORDER_WITHDRAW
,
SqlMapping
.
gets
(
sqls
,
sqlsDataA
,
sqlsDataB
,
sqlsDataC
));
return
ResponseDto
.
success
(
true
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"20020"
));
}
}
@Override
public
Boolean
orderRefundAgain
(
String
orderRefundsId
)
{
LocalDateTime
time
=
LocalDateTime
.
now
();
String
strTime
=
DateUtil
.
Formatter
.
yyyyMMddHHmmss
.
format
(
time
);
String
uid
=
CurrentUtil
.
getCurrentUid
();
KylinOrderRefundsVo
orderRefundVo
=
dataUtils
.
getOrderRefundVo
(
orderRefundsId
);
// 订单状态表 MQ
KylinOrderTicketStatus
orderStatusTable
=
new
KylinOrderTicketStatus
();
orderStatusTable
.
setStatus
(
KylinTableStatusConst
.
ORDER_STATUS3
);
orderStatusTable
.
setUpdatedAt
(
time
);
// 订单入场人表 MQ
KylinOrderTicketEntities
entitiesTable
=
new
KylinOrderTicketEntities
();
entitiesTable
.
setIsPayment
(
KylinTableStatusConst
.
ENTITIES_IS_PAYMENT2
);
entitiesTable
.
setUpdatedAt
(
time
);
// 订单退款表
KylinOrderRefunds
orderRefunds
=
new
KylinOrderRefunds
();
orderRefunds
.
setUpdatedAt
(
time
);
orderRefunds
.
setApplicantAt
(
time
);
orderRefunds
.
setStatus
(
KylinTableStatusConst
.
ORDER_REFUND_STATUS_APPLY
);
//订单状态表 MONGO
KylinOrderTicketVo
kylinOrderTicketVo
=
new
KylinOrderTicketVo
();
kylinOrderTicketVo
.
setStatus
(
KylinTableStatusConst
.
ORDER_STATUS3
);
kylinOrderTicketVo
.
setUpdatedAt
(
DateUtil
.
Formatter
.
yyyyMMddHHmmss
.
format
(
time
));
BasicDBObject
orderObject
=
new
BasicDBObject
(
"$set"
,
JSON
.
parse
(
JsonUtils
.
toJson
(
kylinOrderTicketVo
)));
mongoTemplate
.
getCollection
(
KylinOrderTicketVo
.
class
.
getSimpleName
()).
updateOne
(
Query
.
query
(
Criteria
.
where
(
"orderTicketsId"
).
is
(
orderRefundVo
.
getOrderTicketsId
())).
getQueryObject
(),
orderObject
);
dataUtils
.
delOrderTicketRedis
(
orderRefundVo
.
getOrderTicketsId
());
mongoVoUtils
.
resetOrderListVo
(
uid
,
2
,
orderRefundVo
.
getOrderTicketsId
(),
null
);
// 订单入场人表 MONGO
KylinOrderTicketEntitiesVo
kylinOrderTicketEntitiesVo
=
new
KylinOrderTicketEntitiesVo
();
kylinOrderTicketEntitiesVo
.
setIsPayment
(
KylinTableStatusConst
.
ENTITIES_IS_PAYMENT2
);
kylinOrderTicketEntitiesVo
.
setUpdatedAt
(
strTime
);
BasicDBObject
entitiesObject
=
new
BasicDBObject
(
"$set"
,
JSON
.
parse
(
JsonUtils
.
toJson
(
kylinOrderTicketEntitiesVo
)));
mongoTemplate
.
getCollection
(
KylinOrderTicketEntitiesVo
.
class
.
getSimpleName
()).
updateOne
(
Query
.
query
(
Criteria
.
where
(
"orderTicketEntitiesId"
).
is
(
orderRefundVo
.
getOrderRefundEntitiesVoList
().
get
(
0
).
getOrderTicketEntitiesId
())).
getQueryObject
(),
entitiesObject
);
dataUtils
.
delOrderTicketEntitiesRedis
(
orderRefundVo
.
getOrderRefundEntitiesVoList
().
get
(
0
).
getOrderTicketEntitiesId
());
// 订单退款表 MONGO
KylinOrderRefundsVo
orderRefundsVo
=
new
KylinOrderRefundsVo
();
orderRefundsVo
.
setStatus
(
KylinTableStatusConst
.
ORDER_REFUND_STATUS_APPLY
);
orderRefundsVo
.
setUpdatedAt
(
time
);
orderRefundsVo
.
setApplicantAt
(
time
);
BasicDBObject
refundObject
=
new
BasicDBObject
(
"$set"
,
JSON
.
parse
(
JsonUtils
.
toJson
(
orderRefundsVo
)));
mongoTemplate
.
getCollection
(
KylinOrderRefundsVo
.
class
.
getSimpleName
()).
updateOne
(
Query
.
query
(
Criteria
.
where
(
"orderRefundsId"
).
is
(
orderRefundVo
.
getOrderRefundsId
())).
getQueryObject
(),
refundObject
);
return
null
;
}
public
boolean
checkAgent
(
String
agentId
,
KylinTicketVo
ticketData
)
{
boolean
isAgent
=
ticketData
.
getIsAgent
()
==
1
;
if
(
isAgent
)
{
...
...
@@ -1449,4 +946,44 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsService {
return
false
;
}
}
@Override
public
PageInfo
<
List
<
KylinOrderListVo
>>
orderList
()
{
return
null
;
}
@Override
public
OrderDetailsVo
orderDetails
(
String
orderId
)
{
return
null
;
}
@Override
public
ResponseDto
<
Integer
>
orderUnPayCount
()
{
return
null
;
}
@Override
public
KylinOrderTicketPreVo
toOrderRefundDetails
(
String
orderId
)
{
return
null
;
}
@Override
public
OrderRefundVo
orderRefundDetails
(
String
orderId
,
String
orderRefundId
)
{
return
null
;
}
@Override
public
ResponseDto
<
String
>
sendOrderRefund
(
String
orderId
,
String
orderTicketEntitiesId
,
String
reason
,
String
picList
)
{
return
null
;
}
@Override
public
ResponseDto
<
Boolean
>
orderRefundWithdraw
(
String
orderRefundsId
)
{
return
null
;
}
@Override
public
Boolean
orderRefundAgain
(
String
orderRefundsId
)
{
return
null
;
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment