Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
O
order-group
Overview
Overview
Details
Activity
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
order-group-application
order-group
Commits
42fbb9b4
Commit
42fbb9b4
authored
Aug 17, 2023
by
rui.zhu
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feature/售后单记录支付信息' into develop
parents
3d0e2df2
947344c3
Show whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
277 additions
and
169 deletions
+277
-169
assortment-ordercenter-sdk/src/main/java/com/freemud/sdk/api/assortment/order/response/order/MultiOrderRefundResponse.java
+10
-0
order-application-service/src/main/java/cn/freemud/service/impl/PayServiceImpl.java
+2
-13
order-management/src/main/java/cn/freemud/management/adapter/OrderCancelReqAdapter.java
+99
-0
order-management/src/main/java/cn/freemud/management/entities/dto/request/order/RefundSuccessCallbackVo.java
+9
-0
order-management/src/main/java/cn/freemud/management/entities/dto/response/pay/OrderRefundResponse.java
+16
-2
order-management/src/main/java/cn/freemud/management/entities/dto/response/pay/PayRefundData.java
+17
-0
order-management/src/main/java/cn/freemud/management/service/handle/DemoMain.java
+0
-98
order-management/src/main/java/cn/freemud/management/service/handle/MultiRefundService.java
+4
-14
order-management/src/main/java/cn/freemud/management/service/handle/PaymentHandle.java
+7
-42
order-management/src/main/java/cn/freemud/management/service/handle/SaasOrderHandle.java
+3
-0
order-management/src/main/java/cn/freemud/management/service/impl/SaasOrderMangerServiceImpl.java
+6
-0
ordercenter-sdk/src/main/java/com/freemud/application/sdk/api/ordercenter/enums/CashTypeEnum.java
+45
-0
ordercenter-sdk/src/main/java/com/freemud/application/sdk/api/ordercenter/enums/PayMethodEnum.java
+59
-0
No files found.
assortment-ordercenter-sdk/src/main/java/com/freemud/sdk/api/assortment/order/response/order/MultiOrderRefundResponse.java
View file @
42fbb9b4
...
@@ -58,5 +58,14 @@ public class MultiOrderRefundResponse<T> {
...
@@ -58,5 +58,14 @@ public class MultiOrderRefundResponse<T> {
@ApiModelProperty
(
value
=
"业务返回消息"
)
@ApiModelProperty
(
value
=
"业务返回消息"
)
private
String
resultMsg
;
private
String
resultMsg
;
@ApiModelProperty
(
value
=
"支付方式编号"
)
private
String
payMethodCode
;
@ApiModelProperty
(
value
=
"现金类型"
)
private
String
cashType
;
@ApiModelProperty
(
value
=
"支付条码"
)
private
String
uniqueCode
;
}
}
}
}
\ No newline at end of file
order-application-service/src/main/java/cn/freemud/service/impl/PayServiceImpl.java
View file @
42fbb9b4
...
@@ -27,6 +27,7 @@ import cn.freemud.enums.PaySuccessSource;
...
@@ -27,6 +27,7 @@ import cn.freemud.enums.PaySuccessSource;
import
cn.freemud.enums.ResponseResult
;
import
cn.freemud.enums.ResponseResult
;
import
cn.freemud.enums.TradeState
;
import
cn.freemud.enums.TradeState
;
import
cn.freemud.interceptor.ServiceException
;
import
cn.freemud.interceptor.ServiceException
;
import
cn.freemud.management.adapter.OrderCancelReqAdapter
;
import
cn.freemud.management.entities.dto.request.BatchOrderRefundV2Request
;
import
cn.freemud.management.entities.dto.request.BatchOrderRefundV2Request
;
import
cn.freemud.management.entities.dto.request.order.OrderManagerRequest
;
import
cn.freemud.management.entities.dto.request.order.OrderManagerRequest
;
import
cn.freemud.management.entities.dto.request.pay.PayRefundRequestDto
;
import
cn.freemud.management.entities.dto.request.pay.PayRefundRequestDto
;
...
@@ -1445,7 +1446,7 @@ public class PayServiceImpl {
...
@@ -1445,7 +1446,7 @@ public class PayServiceImpl {
refundResponse
.
setMsg
(
refundData
.
getResultMsg
());
refundResponse
.
setMsg
(
refundData
.
getResultMsg
());
refundResponse
.
setRefundAmount
(
refundData
.
getRefundAmount
());
refundResponse
.
setRefundAmount
(
refundData
.
getRefundAmount
());
refundResponse
.
setTotalAmount
(
refundData
.
getTotalAmount
());
refundResponse
.
setTotalAmount
(
refundData
.
getTotalAmount
());
refundResponse
.
setRefundStatus
(
this
.
getRefundStatus
(
refundData
.
getResultCode
()));
refundResponse
.
setRefundStatus
(
OrderCancelReqAdapter
.
getRefundStatus
(
refundData
.
getResultCode
()));
refundResponse
.
setRefundTradeNo
(
refundData
.
getRefundTradeNo
());
refundResponse
.
setRefundTradeNo
(
refundData
.
getRefundTradeNo
());
refundResponse
.
setTradeNo
(
refundData
.
getRefundTradeNo
());
refundResponse
.
setTradeNo
(
refundData
.
getRefundTradeNo
());
refundResponse
.
setThirdPartRefundTradeNo
(
refundData
.
getThirdPartRefundTradeNo
());
refundResponse
.
setThirdPartRefundTradeNo
(
refundData
.
getThirdPartRefundTradeNo
());
...
@@ -1462,20 +1463,8 @@ public class PayServiceImpl {
...
@@ -1462,20 +1463,8 @@ public class PayServiceImpl {
return
ResponseUtils
.
error
(
refundNewResponse
.
getCode
(),
refundNewResponse
.
getMessage
());
return
ResponseUtils
.
error
(
refundNewResponse
.
getCode
(),
refundNewResponse
.
getMessage
());
}
}
}
public
Integer
getRefundStatus
(
Integer
resultCode
)
{
if
(
Objects
.
equals
(
resultCode
,
SUCCESS_RESPONSE_CODE_INT
))
{
return
PaymentRefundStatus
.
PAYMENT_REFUND_STATUS_1
.
getCode
();
}
else
if
(
Objects
.
equals
(
resultCode
,
SUCCESS_RESPONSE_101_CODE_INT
))
{
return
PaymentRefundStatus
.
PAYMENT_REFUND_STATUS_1
.
getCode
();
}
else
{
return
Objects
.
equals
(
resultCode
,
REFUND_RESPONSE_CODE
)
?
PaymentRefundStatus
.
PAYMENT_REFUND_STATUS_4
.
getCode
()
:
PaymentRefundStatus
.
PAYMENT_REFUND_STATUS_2
.
getCode
();
}
}
}
public
com
.
freemud
.
application
.
sdk
.
api
.
base
.
BaseResponse
<
OrderRefundResponse
>
checkParam
(
String
partnerId
,
String
storeId
,
Long
amount
)
{
public
com
.
freemud
.
application
.
sdk
.
api
.
base
.
BaseResponse
<
OrderRefundResponse
>
checkParam
(
String
partnerId
,
String
storeId
,
Long
amount
)
{
if
(
StringUtils
.
isBlank
(
partnerId
))
{
if
(
StringUtils
.
isBlank
(
partnerId
))
{
return
ResponseUtils
.
error
(
"501"
,
"商户号不能为空"
);
return
ResponseUtils
.
error
(
"501"
,
"商户号不能为空"
);
...
...
order-management/src/main/java/cn/freemud/management/adapter/OrderCancelReqAdapter.java
View file @
42fbb9b4
package
cn
.
freemud
.
management
.
adapter
;
package
cn
.
freemud
.
management
.
adapter
;
import
cn.freemud.base.util.DateUtil
;
import
cn.freemud.management.entities.dto.request.order.RefundSuccessCallbackVo
;
import
cn.freemud.management.entities.dto.response.pay.OrderRefundResponse
;
import
cn.freemud.management.entities.dto.response.pay.PayRefundData
;
import
cn.freemud.management.entities.dto.response.pay.PayRefundResponse
;
import
cn.freemud.management.entities.dto.response.pay.PayRefundResponse
;
import
cn.freemud.management.enums.PaymentRefundStatus
;
import
com.freemud.application.sdk.api.ordercenter.enums.CashTypeEnum
;
import
com.freemud.application.sdk.api.ordercenter.enums.PayMethodEnum
;
import
com.freemud.application.sdk.api.ordercenter.request.OrderCancelReq
;
import
com.freemud.application.sdk.api.ordercenter.request.OrderCancelReq
;
import
com.freemud.sdk.api.assortment.order.response.order.MultiOrderRefundResponse
;
import
com.google.common.collect.Lists
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.BeanUtils
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Objects
;
import
java.util.stream.Collectors
;
import
static
cn
.
freemud
.
management
.
service
.
handle
.
PaymentHandle
.*;
/**
/**
* @author Clover.z
* @author Clover.z
...
@@ -27,4 +41,89 @@ public class OrderCancelReqAdapter {
...
@@ -27,4 +41,89 @@ public class OrderCancelReqAdapter {
return
refundItemList
;
return
refundItemList
;
}
}
public
static
PayRefundResponse
.
PayRefundItem
convert
(
OrderRefundResponse
orderRefundData
)
{
PayRefundResponse
.
PayRefundItem
refundItem
=
new
PayRefundResponse
.
PayRefundItem
();
if
(
StringUtils
.
isNotBlank
(
orderRefundData
.
getCashType
()))
{
refundItem
.
setPayChannelType
(
Integer
.
valueOf
(
orderRefundData
.
getCashType
()));
refundItem
.
setPayChannelName
(
CashTypeEnum
.
getByCode
(
orderRefundData
.
getCashType
()).
getDesc
());
}
else
{
refundItem
.
setPayChannelType
(
PayMethodEnum
.
getByCode
(
orderRefundData
.
getPayMethodCode
()).
getIndex
());
refundItem
.
setPayChannelName
(
PayMethodEnum
.
getByCode
(
orderRefundData
.
getPayMethodCode
()).
getDesc
());
}
refundItem
.
setAmount
(
orderRefundData
.
getRefundAmount
().
intValue
());
refundItem
.
setRefundTradeNo
(
orderRefundData
.
getRefundTradeNo
());
refundItem
.
setRefundTime
(
DateUtil
.
convert2Date
(
orderRefundData
.
getRefundTime
(),
"yyyy-MM-dd HH:mm:ss"
).
getTime
());
refundItem
.
setCardCode
(
PayMethodEnum
.
TSVC
.
getCode
().
equals
(
orderRefundData
.
getPayMethodCode
())
?
orderRefundData
.
getUniqueCode
()
:
null
);
return
refundItem
;
}
public
static
List
<
PayRefundResponse
.
PayRefundItem
>
convertMultiRefundItem
(
List
<
MultiOrderRefundResponse
.
RefundPlatformResponse
>
orderRefundList
)
{
return
orderRefundList
.
stream
()
.
map
(
r
->
{
PayRefundResponse
.
PayRefundItem
refundItem
=
new
PayRefundResponse
.
PayRefundItem
();
if
(
StringUtils
.
isNotBlank
(
r
.
getCashType
()))
{
refundItem
.
setPayChannelType
(
Integer
.
valueOf
(
r
.
getCashType
()));
refundItem
.
setPayChannelName
(
CashTypeEnum
.
getByCode
(
r
.
getCashType
()).
getDesc
());
}
else
{
refundItem
.
setPayChannelType
(
PayMethodEnum
.
getByCode
(
r
.
getPayMethodCode
()).
getIndex
());
refundItem
.
setPayChannelName
(
PayMethodEnum
.
getByCode
(
r
.
getPayMethodCode
()).
getDesc
());
}
refundItem
.
setAmount
(
r
.
getSettleRefundAmount
());
refundItem
.
setRefundTradeNo
(
r
.
getRefundTradeNo
());
refundItem
.
setRefundTime
(
DateUtil
.
convert2Date
(
r
.
getRefundTime
(),
"yyyy-MM-dd HH:mm:ss"
).
getTime
());
refundItem
.
setCardCode
(
PayMethodEnum
.
TSVC
.
getCode
().
equals
(
r
.
getPayMethodCode
())
?
r
.
getUniqueCode
()
:
null
);
return
refundItem
;
})
.
collect
(
Collectors
.
toList
());
}
public
static
List
<
PayRefundResponse
.
PayRefundItem
>
convert
(
RefundSuccessCallbackVo
request
)
{
List
<
PayRefundResponse
.
PayRefundItem
>
payRefundItemList
=
Lists
.
newArrayList
();
PayRefundResponse
.
PayRefundItem
payRefundItem
=
new
PayRefundResponse
.
PayRefundItem
();
payRefundItem
.
setRefundTradeNo
(
request
.
getRefundTradeNo
());
if
(
StringUtils
.
isNotBlank
(
request
.
getCashType
()))
{
payRefundItem
.
setPayChannelType
(
Integer
.
valueOf
(
request
.
getCashType
()));
payRefundItem
.
setPayChannelName
(
CashTypeEnum
.
getByCode
(
request
.
getCashType
()).
getDesc
());
}
else
{
payRefundItem
.
setPayChannelType
(
PayMethodEnum
.
getByCode
(
request
.
getPayMethodCode
()).
getIndex
());
payRefundItem
.
setPayChannelName
(
PayMethodEnum
.
getByCode
(
request
.
getPayMethodCode
()).
getDesc
());
}
payRefundItem
.
setAmount
(
request
.
getRefundAmount
());
payRefundItem
.
setRefundTime
(
DateUtil
.
convert2Date
(
request
.
getRefundTime
(),
"yyyy-MM-dd HH:mm:ss"
).
getTime
());
payRefundItem
.
setCardCode
(
PayMethodEnum
.
TSVC
.
getCode
().
equals
(
request
.
getPayMethodCode
())
?
request
.
getUniqueCode
()
:
null
);
payRefundItemList
.
add
(
payRefundItem
);
return
payRefundItemList
;
}
public
static
OrderRefundResponse
convert
(
PayRefundData
refundData
)
{
OrderRefundResponse
refundResponse
=
new
OrderRefundResponse
();
refundResponse
.
setStatusCode
(
refundData
.
getResultCode
());
refundResponse
.
setMsg
(
refundData
.
getResultMsg
());
refundResponse
.
setRefundAmount
(
refundData
.
getRefundAmount
());
refundResponse
.
setTotalAmount
(
refundData
.
getTotalAmount
());
refundResponse
.
setRefundStatus
(
getRefundStatus
(
refundData
.
getResultCode
()));
refundResponse
.
setRefundTradeNo
(
refundData
.
getRefundTradeNo
());
refundResponse
.
setTradeNo
(
refundData
.
getRefundTradeNo
());
refundResponse
.
setThirdPartRefundTradeNo
(
refundData
.
getThirdPartRefundTradeNo
());
refundResponse
.
setThirdPartTradeNo
(
refundData
.
getThirdPartTradeNo
());
refundResponse
.
setTotalAmount
(
refundData
.
getTotalAmount
());
refundResponse
.
setCashType
(
refundData
.
getCashType
());
refundResponse
.
setPayMethodCode
(
refundData
.
getPayMethodCode
());
refundResponse
.
setUniqueCode
(
refundData
.
getUniqueCode
());
refundResponse
.
setRefundTime
(
refundData
.
getRefundTime
());
return
refundResponse
;
}
public
static
Integer
getRefundStatus
(
Integer
resultCode
)
{
if
(
Objects
.
equals
(
resultCode
,
SUCCESS_RESPONSE_CODE_INT
))
{
return
PaymentRefundStatus
.
PAYMENT_REFUND_STATUS_1
.
getCode
();
}
else
if
(
Objects
.
equals
(
resultCode
,
SUCCESS_RESPONSE_101_CODE_INT
))
{
return
PaymentRefundStatus
.
PAYMENT_REFUND_STATUS_1
.
getCode
();
}
else
{
return
Objects
.
equals
(
resultCode
,
REFUND_RESPONSE_CODE
)
?
PaymentRefundStatus
.
PAYMENT_REFUND_STATUS_4
.
getCode
()
:
PaymentRefundStatus
.
PAYMENT_REFUND_STATUS_2
.
getCode
();
}
}
}
}
order-management/src/main/java/cn/freemud/management/entities/dto/request/order/RefundSuccessCallbackVo.java
View file @
42fbb9b4
...
@@ -72,4 +72,13 @@ public class RefundSuccessCallbackVo {
...
@@ -72,4 +72,13 @@ public class RefundSuccessCallbackVo {
@ApiModelProperty
(
value
=
"间联退款单号"
)
@ApiModelProperty
(
value
=
"间联退款单号"
)
private
String
refundEndTransId
;
private
String
refundEndTransId
;
@ApiModelProperty
(
value
=
"支付方式编号"
,
position
=
10
)
private
String
payMethodCode
;
@ApiModelProperty
(
value
=
"现金类型"
,
position
=
11
)
private
String
cashType
;
@ApiModelProperty
(
value
=
"支付条码"
,
position
=
12
)
private
String
uniqueCode
;
}
}
order-management/src/main/java/cn/freemud/management/entities/dto/response/pay/OrderRefundResponse.java
View file @
42fbb9b4
package
cn
.
freemud
.
management
.
entities
.
dto
.
response
.
pay
;
package
cn
.
freemud
.
management
.
entities
.
dto
.
response
.
pay
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.Data
;
@Data
@Data
...
@@ -18,9 +19,22 @@ public class OrderRefundResponse {
...
@@ -18,9 +19,22 @@ public class OrderRefundResponse {
* 退款成功时间
* 退款成功时间
*/
*/
private
String
refundTime
;
private
String
refundTime
;
/**
* 支付方式
* {@link com.freemud.application.sdk.api.ordercenter.enums.PayMethodEnum}
*/
private
String
payMethodCode
;
/**
* 现金类型, 当payMethodCode为其他的时候,存在该值
* {@link com.freemud.application.sdk.api.ordercenter.enums.CashTypeEnum}
*/
private
String
cashType
;
/**
/**
* 支付
渠道编
号
* 支付
条码, 当支付方式为储值卡的时候,该字段为卡
号
*/
*/
private
String
pay
Code
;
private
String
unique
Code
;
}
}
order-management/src/main/java/cn/freemud/management/entities/dto/response/pay/PayRefundData.java
View file @
42fbb9b4
...
@@ -25,4 +25,21 @@ public class PayRefundData {
...
@@ -25,4 +25,21 @@ public class PayRefundData {
* 支付渠道编号
* 支付渠道编号
*/
*/
private
String
payCode
;
private
String
payCode
;
/**
* 支付方式
* {@link com.freemud.application.sdk.api.ordercenter.enums.PayMethodEnum}
*/
private
String
payMethodCode
;
/**
* 现金类型, 当payMethodCode为其他的时候,存在该值
* {@link com.freemud.application.sdk.api.ordercenter.enums.CashTypeEnum}
*/
private
String
cashType
;
/**
* 支付条码, 当支付方式为储值卡的时候,该字段为卡号
*/
private
String
uniqueCode
;
}
}
order-management/src/main/java/cn/freemud/management/service/handle/DemoMain.java
deleted
100644 → 0
View file @
3d0e2df2
package
cn
.
freemud
.
management
.
service
.
handle
;
import
cn.freemud.management.entities.dto.response.pay.OrderRefundResponse
;
import
cn.freemud.management.entities.dto.response.pay.PayRefundData
;
import
cn.freemud.management.enums.PaymentRefundStatus
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.TypeReference
;
import
com.freemud.application.sdk.api.base.BaseResponse
;
import
com.freemud.application.sdk.api.util.ResponseUtils
;
import
com.freemud.sdk.api.assortment.order.enums.PayRefundStatus
;
import
org.apache.commons.lang.ObjectUtils
;
import
java.util.Objects
;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2022/6/13 10:56
* @description :
*/
public
class
DemoMain
{
public
static
void
main
(
String
[]
args
)
{
String
str
=
"{\n"
+
" \"code\": \"100\",\n"
+
" \"data\": {\n"
+
" \"resultCode\": 82004005,\n"
+
" \"resultMsg\": \"当前订单有退款记录没有完成\"\n"
+
" },\n"
+
" \"message\": \"success\"\n"
+
"}"
;
BaseResponse
<
PayRefundData
>
refundNewResponse
=
JSON
.
parseObject
(
str
,
new
TypeReference
<
BaseResponse
<
PayRefundData
>>()
{
});
if
(
Objects
.
equals
(
refundNewResponse
.
getCode
(),
"100"
)
&&
refundNewResponse
.
getData
()
!=
null
)
{
refundNewResponse
.
setCode
(
refundNewResponse
.
getData
().
getResultCode
().
toString
());
refundNewResponse
.
setMessage
(
refundNewResponse
.
getData
().
getResultMsg
());
}
if
(
Objects
.
equals
(
refundNewResponse
.
getCode
(),
"100"
))
{
PayRefundData
refundData
=
refundNewResponse
.
getData
();
if
(
null
!=
refundData
)
{
OrderRefundResponse
refundResponse
=
new
OrderRefundResponse
();
refundResponse
.
setStatusCode
(
refundData
.
getResultCode
());
refundResponse
.
setMsg
(
refundData
.
getResultMsg
());
refundResponse
.
setRefundAmount
(
refundData
.
getRefundAmount
());
refundResponse
.
setTotalAmount
(
refundData
.
getTotalAmount
());
refundResponse
.
setRefundStatus
(
getRefundStatus
(
refundData
.
getResultCode
()));
refundResponse
.
setRefundTradeNo
(
refundData
.
getRefundTradeNo
());
refundResponse
.
setTradeNo
(
refundData
.
getRefundTradeNo
());
refundResponse
.
setThirdPartRefundTradeNo
(
refundData
.
getThirdPartRefundTradeNo
());
refundResponse
.
setThirdPartTradeNo
(
refundData
.
getThirdPartTradeNo
());
refundResponse
.
setTotalAmount
(
refundData
.
getTotalAmount
());
// return ResponseUtils.success(refundResponse);
}
}
BaseResponse
<
OrderRefundResponse
>
orderRefundResponse
=
ResponseUtils
.
error
(
refundNewResponse
.
getCode
(),
refundNewResponse
.
getMessage
());
// Integer refundStatus = PayRefundStatus.SUCCESS;
Integer
refundStatus
=
1
;
if
(
orderRefundResponse
==
null
)
{
// refundStatus = PayRefundStatus.RUNNING;
refundStatus
=
4
;
}
else
{
refundStatus
=
getFinalRefundStatus
(
Integer
.
valueOf
(
orderRefundResponse
.
getCode
()));
}
System
.
out
.
println
(
refundStatus
);
}
private
static
Integer
getFinalRefundStatus
(
Integer
resultCode
)
{
switch
(
resultCode
)
{
// 退款中状态码需要单独处理
case
8200305
:
// return PayRefundStatus.RUNNING;
return
4
;
// 退款成功
case
100
:
// return PayRefundStatus.SUCCESS;
return
1
;
default
:
// return PayRefundStatus.FAIL;
return
2
;
}
}
private
static
final
String
SUCCESS
=
"100"
;
public
static
final
Integer
SUCCESS_RESPONSE_CODE_INT
=
100
;
public
static
final
Integer
SUCCESS_RESPONSE_101_CODE_INT
=
101
;
public
static
final
Integer
REFUND_RESPONSE_CODE
=
8200305
;
public
static
Integer
getRefundStatus
(
Integer
resultCode
)
{
if
(
Objects
.
equals
(
resultCode
,
SUCCESS_RESPONSE_CODE_INT
))
{
return
PaymentRefundStatus
.
PAYMENT_REFUND_STATUS_1
.
getCode
();
}
else
if
(
Objects
.
equals
(
resultCode
,
SUCCESS_RESPONSE_101_CODE_INT
))
{
return
PaymentRefundStatus
.
PAYMENT_REFUND_STATUS_1
.
getCode
();
}
else
{
return
Objects
.
equals
(
resultCode
,
REFUND_RESPONSE_CODE
)
?
PaymentRefundStatus
.
PAYMENT_REFUND_STATUS_4
.
getCode
()
:
PaymentRefundStatus
.
PAYMENT_REFUND_STATUS_2
.
getCode
();
}
}
}
order-management/src/main/java/cn/freemud/management/service/handle/MultiRefundService.java
View file @
42fbb9b4
package
cn
.
freemud
.
management
.
service
.
handle
;
package
cn
.
freemud
.
management
.
service
.
handle
;
import
cn.freemud.base.util.DateUtil
;
import
cn.freemud.base.util.DateUtil
;
import
cn.freemud.management.adapter.OrderCancelReqAdapter
;
import
cn.freemud.management.adapter.PaymentSdkAdapter
;
import
cn.freemud.management.adapter.PaymentSdkAdapter
;
import
cn.freemud.management.entities.dto.request.pay.AgentPayRefundReq
;
import
cn.freemud.management.entities.dto.request.pay.AgentPayRefundReq
;
import
cn.freemud.management.entities.dto.response.pay.AgentPayRefundResp
;
import
cn.freemud.management.entities.dto.response.pay.AgentPayRefundResp
;
...
@@ -8,7 +9,9 @@ import cn.freemud.management.entities.dto.response.pay.PayRefundResponse;
...
@@ -8,7 +9,9 @@ import cn.freemud.management.entities.dto.response.pay.PayRefundResponse;
import
cn.freemud.management.thirdparty.MulitiPaymentClient
;
import
cn.freemud.management.thirdparty.MulitiPaymentClient
;
import
cn.freemud.management.util.RedisUtil
;
import
cn.freemud.management.util.RedisUtil
;
import
cn.freemud.redis.RedisCache
;
import
cn.freemud.redis.RedisCache
;
import
com.freemud.application.sdk.api.ordercenter.enums.CashTypeEnum
;
import
com.freemud.application.sdk.api.ordercenter.enums.PayChannelType
;
import
com.freemud.application.sdk.api.ordercenter.enums.PayChannelType
;
import
com.freemud.application.sdk.api.ordercenter.enums.PayMethodEnum
;
import
com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderPayItemResp
;
import
com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderPayItemResp
;
import
com.freemud.sdk.api.assortment.order.enums.PayRefundStatus
;
import
com.freemud.sdk.api.assortment.order.enums.PayRefundStatus
;
import
com.freemud.sdk.api.assortment.order.request.order.MultiOrderRefundRequest
;
import
com.freemud.sdk.api.assortment.order.request.order.MultiOrderRefundRequest
;
...
@@ -111,20 +114,7 @@ public class MultiRefundService {
...
@@ -111,20 +114,7 @@ public class MultiRefundService {
PayRefundResponse
payRefundResponse
=
handlePayRefundResponse
(
refundStatus
,
req
.
getRefundTradeNo
());
PayRefundResponse
payRefundResponse
=
handlePayRefundResponse
(
refundStatus
,
req
.
getRefundTradeNo
());
if
(
PayRefundStatus
.
SUCCESS
.
equals
(
refundStatus
))
{
if
(
PayRefundStatus
.
SUCCESS
.
equals
(
refundStatus
))
{
List
<
PayRefundResponse
.
PayRefundItem
>
payRefundItemList
=
resp
.
getData
().
getRefundPlatformResponseList
().
stream
()
payRefundResponse
.
setPayRefundItemList
(
OrderCancelReqAdapter
.
convertMultiRefundItem
(
resp
.
getData
().
getRefundPlatformResponseList
()));
.
map
(
r
->
{
PayRefundResponse
.
PayRefundItem
refundItem
=
new
PayRefundResponse
.
PayRefundItem
();
refundItem
.
setPayChannelType
(
Integer
.
valueOf
(
PayChannelType
.
getByEbcode
(
r
.
getEbcode
()).
getIndex
()));
refundItem
.
setPayChannelName
(
PayChannelType
.
getByEbcode
(
r
.
getEbcode
()).
getName
());
refundItem
.
setAmount
(
r
.
getSettleRefundAmount
());
refundItem
.
setRefundTradeNo
(
r
.
getRefundTradeNo
());
refundItem
.
setRefundTime
(
DateUtil
.
convert2Date
(
r
.
getRefundTime
(),
"yyyy-MM-dd HH:mm:ss"
).
getTime
());
//TODO 混合支付储值卡卡号 这里需要跟支付对接,下游设计中
// refundItem.setCardCode("?");
return
refundItem
;
})
.
collect
(
Collectors
.
toList
());
payRefundResponse
.
setPayRefundItemList
(
payRefundItemList
);
}
}
if
(
StringUtils
.
isNotEmpty
(
message
))
{
if
(
StringUtils
.
isNotEmpty
(
message
))
{
payRefundResponse
.
setMessage
(
message
);
payRefundResponse
.
setMessage
(
message
);
...
...
order-management/src/main/java/cn/freemud/management/service/handle/PaymentHandle.java
View file @
42fbb9b4
package
cn
.
freemud
.
management
.
service
.
handle
;
package
cn
.
freemud
.
management
.
service
.
handle
;
import
cn.freemud.base.util.DateUtil
;
import
cn.freemud.base.util.DateUtil
;
import
cn.freemud.management.adapter.OrderCancelReqAdapter
;
import
cn.freemud.management.adapter.PaymentSdkAdapter
;
import
cn.freemud.management.adapter.PaymentSdkAdapter
;
import
cn.freemud.management.entities.dto.request.order.OrderManagerRequest
;
import
cn.freemud.management.entities.dto.request.order.OrderManagerRequest
;
import
cn.freemud.management.entities.dto.request.pay.PayRefundRequestDto
;
import
cn.freemud.management.entities.dto.request.pay.PayRefundRequestDto
;
...
@@ -16,10 +17,12 @@ import cn.freemud.management.thirdparty.OMSPaymentClient;
...
@@ -16,10 +17,12 @@ import cn.freemud.management.thirdparty.OMSPaymentClient;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.freemud.application.sdk.api.base.BaseResponse
;
import
com.freemud.application.sdk.api.base.BaseResponse
;
import
com.freemud.application.sdk.api.log.ApiLog
;
import
com.freemud.application.sdk.api.log.ErrorLog
;
import
com.freemud.application.sdk.api.log.ErrorLog
;
import
com.freemud.application.sdk.api.ordercenter.entities.v1.OrderBeanV1
;
import
com.freemud.application.sdk.api.ordercenter.entities.v1.OrderBeanV1
;
import
com.freemud.application.sdk.api.ordercenter.enums.CashTypeEnum
;
import
com.freemud.application.sdk.api.ordercenter.enums.OrderClientType
;
import
com.freemud.application.sdk.api.ordercenter.enums.OrderClientType
;
import
com.freemud.application.sdk.api.ordercenter.enums.Pay
ChannelType
;
import
com.freemud.application.sdk.api.ordercenter.enums.Pay
MethodEnum
;
import
com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto
;
import
com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto
;
import
com.freemud.application.sdk.api.ordercenter.request.OrderExtendedReq
;
import
com.freemud.application.sdk.api.ordercenter.request.OrderExtendedReq
;
import
com.freemud.application.sdk.api.ordercenter.response.OrderBaseResp
;
import
com.freemud.application.sdk.api.ordercenter.response.OrderBaseResp
;
...
@@ -85,6 +88,7 @@ public class PaymentHandle {
...
@@ -85,6 +88,7 @@ public class PaymentHandle {
PayRefundResponse
multiRefundResponse
=
multiRefundService
.
multiRefund
(
orderBean
.
getCompanyId
(),
orderBean
.
getShopId
(),
orderBean
.
getOid
(),
refundAmount
,
orderBean
.
getOrderPayItem
());
PayRefundResponse
multiRefundResponse
=
multiRefundService
.
multiRefund
(
orderBean
.
getCompanyId
(),
orderBean
.
getShopId
(),
orderBean
.
getOid
(),
refundAmount
,
orderBean
.
getOrderPayItem
());
if
(
multiRefundResponse
!=
null
)
{
if
(
multiRefundResponse
!=
null
)
{
refundResponse
=
multiRefundResponse
;
refundResponse
=
multiRefundResponse
;
ApiLog
.
infoMessage
(
"getCommonPayRefundResponse---1, 返回json:{}"
,
JSONObject
.
toJSONString
(
refundResponse
));
}
else
{
}
else
{
OrderExtendedReq
extended
=
orderBean
.
getOrderExtended
();
OrderExtendedReq
extended
=
orderBean
.
getOrderExtended
();
if
(
StringUtils
.
isNotBlank
(
extended
.
getAgentPayerId
())
&&
!
Objects
.
equals
(
extended
.
getAgentPayerId
(),
orderBean
.
getUserId
()))
{
if
(
StringUtils
.
isNotBlank
(
extended
.
getAgentPayerId
())
&&
!
Objects
.
equals
(
extended
.
getAgentPayerId
(),
orderBean
.
getUserId
()))
{
...
@@ -200,14 +204,7 @@ public class PaymentHandle {
...
@@ -200,14 +204,7 @@ public class PaymentHandle {
}
else
{
}
else
{
refundStatus
=
this
.
getFinalRefundStatus
(
Integer
.
valueOf
(
orderRefundResponse
.
getCode
()));
refundStatus
=
this
.
getFinalRefundStatus
(
Integer
.
valueOf
(
orderRefundResponse
.
getCode
()));
message
=
orderRefundResponse
.
getMessage
();
message
=
orderRefundResponse
.
getMessage
();
OrderRefundResponse
data
=
orderRefundResponse
.
getData
();
refundItemList
.
add
(
OrderCancelReqAdapter
.
convert
(
orderRefundResponse
.
getData
()));
PayRefundResponse
.
PayRefundItem
refundItem
=
new
PayRefundResponse
.
PayRefundItem
();
refundItem
.
setPayChannelType
(
Integer
.
valueOf
(
PayChannelType
.
getByEbcode
(
data
.
getPayCode
()).
getIndex
()));
refundItem
.
setPayChannelName
(
PayChannelType
.
getByEbcode
(
data
.
getPayCode
()).
getName
());
refundItem
.
setAmount
(
data
.
getRefundAmount
().
intValue
());
refundItem
.
setRefundTradeNo
(
data
.
getRefundTradeNo
());
refundItem
.
setRefundTime
(
DateUtil
.
convert2Date
(
data
.
getRefundTime
(),
"yyyy-MM-dd HH:mm:ss"
).
getTime
());
refundItemList
.
add
(
refundItem
);
}
}
PayRefundResponse
payRefundResponse
=
handlePayRefundResponse
(
refundStatus
,
refundReq
.
getRefundId
());
PayRefundResponse
payRefundResponse
=
handlePayRefundResponse
(
refundStatus
,
refundReq
.
getRefundId
());
payRefundResponse
.
setPayRefundItemList
(
refundItemList
);
payRefundResponse
.
setPayRefundItemList
(
refundItemList
);
...
@@ -217,13 +214,6 @@ public class PaymentHandle {
...
@@ -217,13 +214,6 @@ public class PaymentHandle {
return
payRefundResponse
;
return
payRefundResponse
;
}
}
/**
* 代付订单退款
*
*/
private
PayRefundStatus
getFinalRefundStatus
(
Integer
resultCode
)
{
private
PayRefundStatus
getFinalRefundStatus
(
Integer
resultCode
)
{
return
PayRefundStatus
.
getByPayResultCode
(
resultCode
);
return
PayRefundStatus
.
getByPayResultCode
(
resultCode
);
}
}
...
@@ -415,20 +405,7 @@ public class PaymentHandle {
...
@@ -415,20 +405,7 @@ public class PaymentHandle {
if
(
Objects
.
equals
(
refundNewResponse
.
getCode
(),
"100"
))
{
if
(
Objects
.
equals
(
refundNewResponse
.
getCode
(),
"100"
))
{
PayRefundData
refundData
=
refundNewResponse
.
getData
();
PayRefundData
refundData
=
refundNewResponse
.
getData
();
if
(
null
!=
refundData
)
{
if
(
null
!=
refundData
)
{
OrderRefundResponse
refundResponse
=
new
OrderRefundResponse
();
return
ResponseUtils
.
success
(
OrderCancelReqAdapter
.
convert
(
refundData
));
refundResponse
.
setStatusCode
(
refundData
.
getResultCode
());
refundResponse
.
setMsg
(
refundData
.
getResultMsg
());
refundResponse
.
setRefundAmount
(
refundData
.
getRefundAmount
());
refundResponse
.
setTotalAmount
(
refundData
.
getTotalAmount
());
refundResponse
.
setRefundStatus
(
this
.
getRefundStatus
(
refundData
.
getResultCode
()));
refundResponse
.
setRefundTradeNo
(
refundData
.
getRefundTradeNo
());
refundResponse
.
setTradeNo
(
refundData
.
getRefundTradeNo
());
refundResponse
.
setThirdPartRefundTradeNo
(
refundData
.
getThirdPartRefundTradeNo
());
refundResponse
.
setThirdPartTradeNo
(
refundData
.
getThirdPartTradeNo
());
refundResponse
.
setTotalAmount
(
refundData
.
getTotalAmount
());
refundResponse
.
setPayCode
(
refundData
.
getPayCode
());
refundResponse
.
setRefundTime
(
refundData
.
getRefundTime
());
return
ResponseUtils
.
success
(
refundResponse
);
}
}
}
}
return
ResponseUtils
.
error
(
refundNewResponse
.
getCode
(),
refundNewResponse
.
getMessage
());
return
ResponseUtils
.
error
(
refundNewResponse
.
getCode
(),
refundNewResponse
.
getMessage
());
...
@@ -446,16 +423,4 @@ public class PaymentHandle {
...
@@ -446,16 +423,4 @@ public class PaymentHandle {
return
ResponseUtils
.
success
();
return
ResponseUtils
.
success
();
}
}
}
}
private
Integer
getRefundStatus
(
Integer
resultCode
)
{
if
(
Objects
.
equals
(
resultCode
,
SUCCESS_RESPONSE_CODE_INT
))
{
return
PaymentRefundStatus
.
PAYMENT_REFUND_STATUS_1
.
getCode
();
}
else
if
(
Objects
.
equals
(
resultCode
,
SUCCESS_RESPONSE_101_CODE_INT
))
{
return
PaymentRefundStatus
.
PAYMENT_REFUND_STATUS_1
.
getCode
();
}
else
{
return
Objects
.
equals
(
resultCode
,
REFUND_RESPONSE_CODE
)
?
PaymentRefundStatus
.
PAYMENT_REFUND_STATUS_4
.
getCode
()
:
PaymentRefundStatus
.
PAYMENT_REFUND_STATUS_2
.
getCode
();
}
}
}
}
order-management/src/main/java/cn/freemud/management/service/handle/SaasOrderHandle.java
View file @
42fbb9b4
...
@@ -10,6 +10,8 @@ import cn.freemud.management.enums.ResponseResult;
...
@@ -10,6 +10,8 @@ import cn.freemud.management.enums.ResponseResult;
import
cn.freemud.management.intercept.OrderServiceException
;
import
cn.freemud.management.intercept.OrderServiceException
;
import
cn.freemud.management.util.ResponseUtil
;
import
cn.freemud.management.util.ResponseUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.freemud.application.sdk.api.log.ApiLog
;
import
com.freemud.application.sdk.api.log.LogThreadLocal
;
import
com.freemud.application.sdk.api.log.LogThreadLocal
;
import
com.freemud.application.sdk.api.ordercenter.entities.v1.OrderBeanV1
;
import
com.freemud.application.sdk.api.ordercenter.entities.v1.OrderBeanV1
;
import
com.freemud.application.sdk.api.ordercenter.entities.vo.OrderCallBackRequestVo
;
import
com.freemud.application.sdk.api.ordercenter.entities.vo.OrderCallBackRequestVo
;
...
@@ -218,6 +220,7 @@ public class SaasOrderHandle {
...
@@ -218,6 +220,7 @@ public class SaasOrderHandle {
});
});
}
}
cancelOrderRequest
.
setPayRefundItemList
(
refundItemList
);
cancelOrderRequest
.
setPayRefundItemList
(
refundItemList
);
ApiLog
.
infoMessage
(
"orderReject---2, 返回json:{}"
,
JSONObject
.
toJSONString
(
cancelOrderRequest
));
BaseOrderResponse
baseOrderResponse
=
orderCenterSdkService
.
orderReject
(
cancelOrderRequest
);
BaseOrderResponse
baseOrderResponse
=
orderCenterSdkService
.
orderReject
(
cancelOrderRequest
);
if
(
baseOrderResponse
==
null
||
ObjectUtils
.
notEqual
(
ResponseResult
.
SUCCESS
.
getCode
(),
baseOrderResponse
.
getErrcode
().
toString
()))
{
if
(
baseOrderResponse
==
null
||
ObjectUtils
.
notEqual
(
ResponseResult
.
SUCCESS
.
getCode
(),
baseOrderResponse
.
getErrcode
().
toString
()))
{
...
...
order-management/src/main/java/cn/freemud/management/service/impl/SaasOrderMangerServiceImpl.java
View file @
42fbb9b4
package
cn
.
freemud
.
management
.
service
.
impl
;
package
cn
.
freemud
.
management
.
service
.
impl
;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.management.adapter.OrderCancelReqAdapter
;
import
cn.freemud.management.constant.ResponseCodeConstant
;
import
cn.freemud.management.constant.ResponseCodeConstant
;
import
cn.freemud.management.entities.dto.request.console.*
;
import
cn.freemud.management.entities.dto.request.console.*
;
import
cn.freemud.management.entities.dto.request.order.OrderManagerRequest
;
import
cn.freemud.management.entities.dto.request.order.OrderManagerRequest
;
...
@@ -221,6 +222,8 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService {
...
@@ -221,6 +222,8 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService {
}
}
//订单拒单
//订单拒单
ApiLog
.
infoMessage
(
"orderReject---1, 返回json:{}"
,
JSONObject
.
toJSONString
(
refundResponse
));
saasOrderHandle
.
orderReject
(
request
,
refundResponse
,
orderBean
);
saasOrderHandle
.
orderReject
(
request
,
refundResponse
,
orderBean
);
// 推送pos、微信消息中心
// 推送pos、微信消息中心
orderBaseService
.
sendMessage
(
orderBean
,
OperateType
.
ORDER_REJECT
,
request
.
getReason
());
orderBaseService
.
sendMessage
(
orderBean
,
OperateType
.
ORDER_REJECT
,
request
.
getReason
());
...
@@ -394,6 +397,8 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService {
...
@@ -394,6 +397,8 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService {
if
(
PAY_RETURN_FILTER_CODES
.
contains
(
baseResponse
.
getCode
()))
{
if
(
PAY_RETURN_FILTER_CODES
.
contains
(
baseResponse
.
getCode
()))
{
return
ResponseUtil
.
error
(
ResponseResult
.
getResponseResult
(
baseResponse
.
getCode
()));
return
ResponseUtil
.
error
(
ResponseResult
.
getResponseResult
(
baseResponse
.
getCode
()));
}
}
ApiLog
.
infoMessage
(
"商家取消订单失败, 请求json:{} 返回msg:{}"
,
JSONObject
.
toJSONString
(
orderBean
),
baseResponse
.
getMessage
());
emailAlertService
.
sendEmailAlert
(
"商家取消订单失败"
,
"请求json:"
+
JSONObject
.
toJSONString
(
orderBean
)
+
"返回msg:"
+
baseResponse
.
getMessage
());
emailAlertService
.
sendEmailAlert
(
"商家取消订单失败"
,
"请求json:"
+
JSONObject
.
toJSONString
(
orderBean
)
+
"返回msg:"
+
baseResponse
.
getMessage
());
return
ResponseUtil
.
error
(
ResponseResult
.
PARTNER_ORDER_CANCEL_ERROR
);
return
ResponseUtil
.
error
(
ResponseResult
.
PARTNER_ORDER_CANCEL_ERROR
);
}
}
...
@@ -510,6 +515,7 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService {
...
@@ -510,6 +515,7 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService {
}
}
refundResponse
.
setPayRefundStatus
(
payRefundStatus
);
refundResponse
.
setPayRefundStatus
(
payRefundStatus
);
refundResponse
.
setRefundId
(
request
.
getRefundId
());
refundResponse
.
setRefundId
(
request
.
getRefundId
());
refundResponse
.
setPayRefundItemList
(
OrderCancelReqAdapter
.
convert
(
request
));
OrderManagerRequest
omRequest
=
new
OrderManagerRequest
();
OrderManagerRequest
omRequest
=
new
OrderManagerRequest
();
omRequest
.
setReason
(
reason
);
omRequest
.
setReason
(
reason
);
...
...
ordercenter-sdk/src/main/java/com/freemud/application/sdk/api/ordercenter/enums/CashTypeEnum.java
0 → 100644
View file @
42fbb9b4
package
com
.
freemud
.
application
.
sdk
.
api
.
ordercenter
.
enums
;
public
enum
CashTypeEnum
{
HLM
(
"50"
,
"汇来米"
),
SQB
(
"51"
,
"收钱吧"
),
CASH
(
"52"
,
"现金"
);
private
String
code
;
private
String
desc
;
CashTypeEnum
(
String
code
,
String
desc
)
{
this
.
code
=
code
;
this
.
desc
=
desc
;
}
public
static
CashTypeEnum
getByCode
(
String
code
)
{
if
(
code
==
null
)
{
return
null
;
}
for
(
CashTypeEnum
cashTypeEnum
:
values
())
{
if
(
cashTypeEnum
.
getCode
().
equals
(
code
))
{
return
cashTypeEnum
;
}
}
return
null
;
}
public
String
getDesc
()
{
return
desc
;
}
public
void
setDesc
(
String
desc
)
{
this
.
desc
=
desc
;
}
public
String
getCode
()
{
return
code
;
}
public
void
setCode
(
String
code
)
{
this
.
code
=
code
;
}
}
ordercenter-sdk/src/main/java/com/freemud/application/sdk/api/ordercenter/enums/PayMethodEnum.java
0 → 100644
View file @
42fbb9b4
package
com
.
freemud
.
application
.
sdk
.
api
.
ordercenter
.
enums
;
public
enum
PayMethodEnum
{
TZFB
(
"TZFB"
,
"支付宝"
,
2
),
TYL
(
"TYL"
,
"银联"
,
13
),
TWX
(
"TWX"
,
"微信"
,
1
),
TSVC
(
"TSVC"
,
"储值卡"
,
3
),
TOTHER
(
"TOTHER"
,
"其他支付"
,
10
),
TYZF
(
"TYZF"
,
"翼支付"
,
12
),
;
private
String
code
;
private
Integer
index
;
private
String
desc
;
PayMethodEnum
(
String
code
,
String
desc
,
Integer
index
)
{
this
.
code
=
code
;
this
.
desc
=
desc
;
this
.
index
=
index
;
}
public
static
PayMethodEnum
getByCode
(
String
code
)
{
if
(
code
==
null
)
{
return
null
;
}
for
(
PayMethodEnum
payStatus
:
values
())
{
if
(
payStatus
.
getCode
().
equals
(
code
))
{
return
payStatus
;
}
}
return
null
;
}
public
String
getCode
()
{
return
code
;
}
public
void
setCode
(
String
code
)
{
this
.
code
=
code
;
}
public
String
getDesc
()
{
return
desc
;
}
public
void
setDesc
(
String
desc
)
{
this
.
desc
=
desc
;
}
public
Integer
getIndex
()
{
return
index
;
}
public
void
setIndex
(
Integer
index
)
{
this
.
index
=
index
;
}
}
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