Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
mall-server
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
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
yimu
mall-server
Commits
d307d2b4
Commit
d307d2b4
authored
Mar 08, 2022
by
wulixian
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev' into 'test'
积分支付订单时,增加积分使用流水 See merge request
!8
parents
e0484809
a8e5415a
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
270 additions
and
8 deletions
+270
-8
MerchantIntegralMapper.java
.../server/front/merchant/mapper/MerchantIntegralMapper.java
+16
-0
MerchantIntegral.java
...zm/mall/server/front/merchant/model/MerchantIntegral.java
+96
-0
PlatformIntegral.java
...zm/mall/server/front/merchant/model/PlatformIntegral.java
+82
-0
Pay.java
.../main/java/com/fzm/mall/server/front/order/model/Pay.java
+5
-0
IPayService.java
.../com/fzm/mall/server/front/order/service/IPayService.java
+2
-0
OrderServiceImpl.java
...all/server/front/order/service/impl/OrderServiceImpl.java
+37
-8
PayServiceImpl.java
.../mall/server/front/order/service/impl/PayServiceImpl.java
+7
-0
MerchantIntegralMapper.xml
...main/resources/mapper/merchant/MerchantIntegralMapper.xml
+25
-0
No files found.
mall-server-front/src/main/java/com/fzm/mall/server/front/merchant/mapper/MerchantIntegralMapper.java
0 → 100644
View file @
d307d2b4
package
com
.
fzm
.
mall
.
server
.
front
.
merchant
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.fzm.mall.server.front.merchant.model.MerchantIntegral
;
import
org.apache.ibatis.annotations.Mapper
;
/**
* @author wangp
* @date 2021/4/27 15:53
* @description Mapper 接口
* @since JDK 1.8
*/
@Mapper
public
interface
MerchantIntegralMapper
extends
BaseMapper
<
MerchantIntegral
>
{
}
mall-server-front/src/main/java/com/fzm/mall/server/front/merchant/model/MerchantIntegral.java
0 → 100644
View file @
d307d2b4
package
com
.
fzm
.
mall
.
server
.
front
.
merchant
.
model
;
import
com.baomidou.mybatisplus.annotation.*
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
/**
* @author wangp
* @date 2021/4/27 16:06
* @description 积分
* @since JDK 1.8
*/
@Data
@EqualsAndHashCode
(
callSuper
=
false
)
@TableName
(
"merchant_integral"
)
@ApiModel
(
value
=
"MerchantIntegral"
,
description
=
"积分"
)
public
class
MerchantIntegral
extends
PlatformIntegral
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 平台积分
*/
public
static
final
Integer
MERCHAN_TINTEGRAL_TYPE_PLAT
=
2
;
/**
* 5;可用
*/
public
static
final
Integer
MERCHAN_TINTEGRAL_STATUS_EFFECTIVE
=
5
;
@ApiModelProperty
(
value
=
"自增主键"
)
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Long
id
;
@ApiModelProperty
(
value
=
"商户号"
)
private
String
merchantId
;
@ApiModelProperty
(
value
=
"标识"
)
private
String
label
;
@ApiModelProperty
(
value
=
"名称"
)
private
String
name
;
@ApiModelProperty
(
value
=
"标志"
)
private
String
logo
;
@ApiModelProperty
(
value
=
"发行量"
)
private
BigDecimal
issueNum
;
@ApiModelProperty
(
value
=
"余额"
)
private
BigDecimal
balanceNum
;
@ApiModelProperty
(
value
=
"TOKEN发行地址"
)
private
String
issueAddr
;
@ApiModelProperty
(
value
=
"描述"
)
private
String
description
;
@ApiModelProperty
(
value
=
"商户兑换比例基(分子)"
)
private
Integer
merchantRatio
;
@ApiModelProperty
(
value
=
"平台兑换比例基(分母)"
)
private
Integer
baseRatio
;
@ApiModelProperty
(
value
=
"类别(1.商户积分 2.平台积分)"
)
private
Integer
type
;
@ApiModelProperty
(
value
=
"状态(0.删除 1.发行中 2.发行失败 3.待审核 4.审核失败 5.可用 6.禁用)"
)
private
Integer
status
;
@ApiModelProperty
(
value
=
"审核失败原因"
)
private
String
failReason
;
@ApiModelProperty
(
value
=
"发行错误信息"
)
private
String
errMsg
;
@ApiModelProperty
(
value
=
"是否删除(0.否 1.是)"
)
@TableField
(
"is_delete"
)
private
Integer
isDel
;
@ApiModelProperty
(
value
=
"创建时间"
)
@TableField
(
fill
=
FieldFill
.
INSERT
)
private
Long
createTime
;
@ApiModelProperty
(
value
=
"更新时间"
)
@TableField
(
fill
=
FieldFill
.
INSERT_UPDATE
)
private
Long
updateTime
;
}
mall-server-front/src/main/java/com/fzm/mall/server/front/merchant/model/PlatformIntegral.java
0 → 100644
View file @
d307d2b4
package
com
.
fzm
.
mall
.
server
.
front
.
merchant
.
model
;
import
com.baomidou.mybatisplus.annotation.*
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
/**
* <p>
*
* </p>
*
* @author fzm
* @since 2021-05-08
*/
@Data
@EqualsAndHashCode
(
callSuper
=
false
)
@TableName
(
"platform_integral"
)
@ApiModel
(
value
=
"PlatformIntegral对象"
,
description
=
""
)
public
class
PlatformIntegral
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
"自增主键"
)
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Long
id
;
@ApiModelProperty
(
value
=
"标识"
)
private
String
label
;
@ApiModelProperty
(
value
=
"名称"
)
private
String
name
;
@ApiModelProperty
(
value
=
"积分账户"
)
private
String
account
;
@ApiModelProperty
(
value
=
"回收地址"
)
private
String
recoverAddr
;
@ApiModelProperty
(
value
=
"账户私钥"
)
private
String
addrKey
;
@ApiModelProperty
(
value
=
"积分价格"
)
private
BigDecimal
price
;
@ApiModelProperty
(
value
=
"发行量"
)
private
BigDecimal
issueNum
;
@ApiModelProperty
(
value
=
"余额"
)
private
BigDecimal
balanceNum
;
@ApiModelProperty
(
value
=
"类别(1.平台积分 2.平台基础积分)"
)
private
Integer
type
;
@ApiModelProperty
(
value
=
"状态(1.可用 2.禁用)"
)
private
Integer
status
;
@ApiModelProperty
(
value
=
"创建时间"
)
@TableField
(
fill
=
FieldFill
.
INSERT
)
private
Long
createTime
;
@ApiModelProperty
(
value
=
"更新时间"
)
@TableField
(
fill
=
FieldFill
.
INSERT_UPDATE
)
private
Long
updateTime
;
public
PlatformIntegral
()
{
}
public
PlatformIntegral
(
String
label
,
String
name
,
BigDecimal
price
,
BigDecimal
issueNum
,
BigDecimal
balanceNum
,
Integer
type
,
Integer
status
)
{
this
.
label
=
label
;
this
.
name
=
name
;
this
.
price
=
price
;
this
.
issueNum
=
issueNum
;
this
.
balanceNum
=
balanceNum
;
this
.
type
=
type
;
this
.
status
=
status
;
}
}
mall-server-front/src/main/java/com/fzm/mall/server/front/order/model/Pay.java
View file @
d307d2b4
...
...
@@ -31,6 +31,11 @@ public class Pay implements Serializable {
*/
public
static
final
Integer
PAY_STATE_TO_PAY
=
6
;
/**
* 4:积分支付
*/
public
static
final
Integer
PAY_TYPE_INTEGRAL
=
4
;
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
"主键自增编号"
)
...
...
mall-server-front/src/main/java/com/fzm/mall/server/front/order/service/IPayService.java
View file @
d307d2b4
...
...
@@ -25,4 +25,6 @@ public interface IPayService extends IService<Pay> {
int
payRest
(
String
uid
,
PayRestVO
pid
);
String
getGoodsName
(
Pay
payId
);
Pay
readByOid
(
String
oid
);
}
mall-server-front/src/main/java/com/fzm/mall/server/front/order/service/impl/OrderServiceImpl.java
View file @
d307d2b4
...
...
@@ -25,7 +25,9 @@ import com.fzm.mall.server.front.goods.model.*;
import
com.fzm.mall.server.front.goods.model.vo.GoodsVo
;
import
com.fzm.mall.server.front.goods.model.vo.SkuVo
;
import
com.fzm.mall.server.front.goods.service.*
;
import
com.fzm.mall.server.front.merchant.mapper.MerchantIntegralMapper
;
import
com.fzm.mall.server.front.merchant.model.Merchant
;
import
com.fzm.mall.server.front.merchant.model.MerchantIntegral
;
import
com.fzm.mall.server.front.merchant.service.IMerchantService
;
import
com.fzm.mall.server.front.mq.MsgProducer
;
import
com.fzm.mall.server.front.order.mapper.OrderSkuMapper
;
...
...
@@ -105,7 +107,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
private
final
ISpuService
ispuService
;
private
final
IRedisService
redisService
;
private
final
IOrderBindBoxService
orderBindBoxService
;
private
final
MerchantIntegralMapper
merchantIntegralMapper
;
@Autowired
private
ChainUtil
chainUtil
;
...
...
@@ -719,6 +721,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
log
.
error
(
"skuVo+++"
+
skuVo
.
toString
());
//String hash = paraChainUtil.evmTransfer(, null, user.getAddress(), , orderDetail.getCoin());
//String replace = orderDetail.getCoin().replace(MALLGlobalConfig.GOODS_NFT_PREFIX,"");
saveOrderIntegralRecord
(
orderDetail
.
getOid
());
int
commodity
=
spuService
.
getCommodityBySkuId
(
orderDetail
.
getSkuId
());
if
(
commodity
==
1
)
{
//打币
...
...
@@ -794,7 +798,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
TranDto
tranDto
=
new
TranDto
();
tranDto
.
setId
(
userAssetRecord
.
getId
());
tranDto
.
setAmount
(
new
BigDecimal
(
orderDetail
.
getNumber
()));
//tranDto.setCoin(aLong.toString()
);
tranDto
.
setCoin
(
coinName
);
tranDto
.
setFromAddr
(
m
.
getNftAddr
());
tranDto
.
setHash
(
hash
);
tranDto
.
setToAddr
(
user
.
getAddress
());
...
...
@@ -838,7 +842,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
TranDto
tranDto
=
new
TranDto
();
tranDto
.
setId
(
userAssetRecord
.
getId
());
tranDto
.
setAmount
(
new
BigDecimal
(
orderDetail
.
getNumber
()));
//tranDto.setCoin(aLong.toString()
);
tranDto
.
setCoin
(
coinName
);
tranDto
.
setFromAddr
(
m
.
getNftAddr
());
tranDto
.
setHash
(
hash
);
tranDto
.
setToAddr
(
user
.
getAddress
());
...
...
@@ -882,7 +886,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
TranDto
tranDto
=
new
TranDto
();
tranDto
.
setId
(
userAssetRecord
.
getId
());
tranDto
.
setAmount
(
new
BigDecimal
(
orderDetail
.
getNumber
()));
//tranDto.setCoin(aLong
.toString());
tranDto
.
setCoin
(
o
.
toString
());
tranDto
.
setFromAddr
(
m
.
getNftAddr
());
tranDto
.
setHash
(
hash
);
tranDto
.
setToAddr
(
user
.
getAddress
());
...
...
@@ -936,7 +940,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
TranDto
tranDto
=
new
TranDto
();
tranDto
.
setId
(
userAssetRecord
.
getId
());
tranDto
.
setAmount
(
new
BigDecimal
(
orderDetail
.
getNumber
()));
//tranDto.setCoin(aLong.toString()
);
tranDto
.
setCoin
(
coinName
);
tranDto
.
setFromAddr
(
m
.
getNftAddr
());
tranDto
.
setHash
(
hash
);
tranDto
.
setToAddr
(
user
.
getAddress
());
...
...
@@ -1004,7 +1008,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
TranDto
tranDto
=
new
TranDto
();
tranDto
.
setId
(
userAssetRecord
.
getId
());
tranDto
.
setAmount
(
new
BigDecimal
(
orderDetail
.
getNumber
()));
//tranDto.setCoin(aLong.toString()
);
tranDto
.
setCoin
(
coinName
);
tranDto
.
setFromAddr
(
m
.
getNftAddr
());
tranDto
.
setHash
(
hash
);
tranDto
.
setToAddr
(
user
.
getAddress
());
...
...
@@ -1075,7 +1079,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
TranDto
tranDto
=
new
TranDto
();
tranDto
.
setId
(
userAssetRecord
.
getId
());
tranDto
.
setAmount
(
new
BigDecimal
(
orderDetail
.
getNumber
()));
//tranDto.setCoin(aLong.toString()
);
tranDto
.
setCoin
(
coinName
);
tranDto
.
setFromAddr
(
m
.
getNftAddr
());
tranDto
.
setHash
(
hash
);
tranDto
.
setToAddr
(
user
.
getAddress
());
...
...
@@ -1145,7 +1149,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
TranDto
tranDto
=
new
TranDto
();
tranDto
.
setId
(
userAssetRecord
.
getId
());
tranDto
.
setAmount
(
new
BigDecimal
(
orderDetail
.
getNumber
()));
//tranDto.setCoin(aLong
.toString());
tranDto
.
setCoin
(
o
.
toString
());
tranDto
.
setFromAddr
(
m
.
getNftAddr
());
tranDto
.
setHash
(
hash
);
tranDto
.
setToAddr
(
user
.
getAddress
());
...
...
@@ -1197,6 +1201,31 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
}
/**
* 用积分支付时,生成积分支付流水记录
* @param oid
*/
private
void
saveOrderIntegralRecord
(
String
oid
)
{
Pay
pay
=
payService
.
readByOid
(
oid
);
if
(
pay
.
getPayType
()
!=
Pay
.
PAY_TYPE_INTEGRAL
){
return
;
}
/**
* 生成用户资产变更记录-支出
*/
QueryWrapper
<
MerchantIntegral
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
eq
(
"type"
,
MerchantIntegral
.
MERCHAN_TINTEGRAL_TYPE_PLAT
)
.
eq
(
"status"
,
MerchantIntegral
.
MERCHAN_TINTEGRAL_STATUS_EFFECTIVE
);
MerchantIntegral
merchantIntegral
=
merchantIntegralMapper
.
selectOne
(
queryWrapper
);
User
user
=
userService
.
getByUid
(
pay
.
getUid
());
String
hash
=
chainUtil
.
tranToken
(
user
.
getAddress
(),
null
,
merchantIntegral
.
getIssueAddr
(),
pay
.
getPaidAmount
(),
merchantIntegral
.
getLabel
());
UserAssetRecord
record
=
new
UserAssetRecord
();
record
.
init
(
pay
.
getUid
(),
merchantIntegral
.
getLabel
(),
AssetRecordTypeEnum
.
INTEGRAL_DEDUCTION
.
getType
(),
pay
.
getPaidAmount
(),
2
,
"平台"
,
hash
,
pay
.
getPayId
());
userAssetRecordService
.
save
(
record
);
}
@Override
@Transactional
public
void
close
(
Object
oid
)
{
...
...
mall-server-front/src/main/java/com/fzm/mall/server/front/order/service/impl/PayServiceImpl.java
View file @
d307d2b4
...
...
@@ -276,4 +276,11 @@ public class PayServiceImpl extends ServiceImpl<PayMapper, Pay> implements IPayS
return
sb
.
substring
(
0
,
sb
.
length
()-
1
);
}
@Override
public
Pay
readByOid
(
String
oid
)
{
QueryWrapper
<
Pay
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
like
(
"oids_json"
,
oid
);
return
getOne
(
queryWrapper
);
}
}
mall-server-front/src/main/resources/mapper/merchant/MerchantIntegralMapper.xml
0 → 100644
View file @
d307d2b4
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.fzm.mall.server.front.merchant.mapper.MerchantIntegralMapper"
>
<!-- 通用查询映射结果 -->
<resultMap
id=
"BaseResultMap"
type=
"com.fzm.mall.server.front.merchant.model.MerchantIntegral"
>
<id
column=
"id"
property=
"id"
/>
<result
column=
"merchant_id"
property=
"merchantId"
/>
<result
column=
"label"
property=
"label"
/>
<result
column=
"name"
property=
"name"
/>
<result
column=
"logo"
property=
"logo"
/>
<result
column=
"issue_num"
property=
"issueNum"
/>
<result
column=
"balance_num"
property=
"balanceNum"
/>
<result
column=
"issue_addr"
property=
"issueAddr"
/>
<result
column=
"description"
property=
"description"
/>
<result
column=
"type"
property=
"type"
/>
<result
column=
"status"
property=
"status"
/>
<result
column=
"fail_reason"
property=
"failReason"
/>
<result
column=
"err_msg"
property=
"errMsg"
/>
<result
column=
"is_delete"
property=
"idDel"
/>
<result
column=
"create_time"
property=
"createTime"
/>
<result
column=
"update_time"
property=
"updateTime"
/>
</resultMap>
</mapper>
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