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
cd124985
Commit
cd124985
authored
Dec 28, 2021
by
秦兴亮
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev' of
https://gitlab.33.cn/yimu/mall-server
into dev
parents
77004fe0
ef38da45
Show whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
49 additions
and
82 deletions
+49
-82
GoodsSpuVO.java
.../mall/server/admin/goods_center/entity/vo/GoodsSpuVO.java
+0
-17
SpuMapper.java
.../fzm/mall/server/admin/goods_center/mapper/SpuMapper.java
+0
-4
SpuServiceImpl.java
...erver/admin/goods_center/service/impl/SpuServiceImpl.java
+1
-1
IAssetService.java
...com/fzm/mall/server/admin/user/service/IAssetService.java
+1
-1
AssetServiceImpl.java
...mall/server/admin/user/service/impl/AssetServiceImpl.java
+17
-12
SpuMapper.xml
...dmin/src/main/resources/mapper/goods_center/SpuMapper.xml
+0
-10
UserAssetVo.java
...m/mall/server/front/asset/model/vo/asset/UserAssetVo.java
+2
-0
UserAssetTransferRecordServiceImpl.java
...sset/service/impl/UserAssetTransferRecordServiceImpl.java
+23
-20
GoodSpuMapper.java
...com/fzm/mall/server/front/goods/mapper/GoodSpuMapper.java
+0
-2
SkuMapper.java
...ava/com/fzm/mall/server/front/goods/mapper/SkuMapper.java
+2
-0
Sku.java
.../main/java/com/fzm/mall/server/front/goods/model/Sku.java
+3
-1
TranDto.java
...ava/com/fzm/mall/server/front/order/model/po/TranDto.java
+0
-6
GoodSpuMapper.xml
...r-front/src/main/resources/mapper/goods/GoodSpuMapper.xml
+0
-8
No files found.
mall-server-admin/src/main/java/com/fzm/mall/server/admin/goods_center/entity/vo/GoodsSpuVO.java
View file @
cd124985
package
com
.
fzm
.
mall
.
server
.
admin
.
goods_center
.
entity
.
vo
;
package
com
.
fzm
.
mall
.
server
.
admin
.
goods_center
.
entity
.
vo
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.fzm.mall.server.admin.constant.MALLGlobalConfig
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.Data
;
...
@@ -49,20 +48,4 @@ public class GoodsSpuVO {
...
@@ -49,20 +48,4 @@ public class GoodsSpuVO {
@TableField
(
exist
=
false
)
@TableField
(
exist
=
false
)
private
String
tokenIdStr
;
private
String
tokenIdStr
;
@ApiModelProperty
(
value
=
"1.外部nft;2.内部nft;3.内部普通"
)
@TableField
(
exist
=
false
)
private
Integer
coinType
;
@ApiModelProperty
(
value
=
"nft销售方式(1.原商品销售 2.拷贝销售)"
)
@TableField
(
exist
=
false
)
private
Integer
nftSalesType
;
public
void
initTokenId
()
{
setTokenId
(
Long
.
valueOf
(
getTokenIdStr
().
replace
(
MALLGlobalConfig
.
NFT_PREFIX
,
""
)));
// if (commodityPass.equals(COMMODITY_PASS_OUT)) {
// setTokenId(Long.valueOf(tokenIdStr));
// } else if (commodityPass.equals(COMMODITY_PASS_AUTO) && type == 6) {
// setTokenId(Long.valueOf(getTokenIdStr().replace(MALLGlobalConfig.NFT_PREFIX, "")));
// }
}
}
}
mall-server-admin/src/main/java/com/fzm/mall/server/admin/goods_center/mapper/SpuMapper.java
View file @
cd124985
...
@@ -25,8 +25,4 @@ public interface SpuMapper extends BaseMapper<Spu> {
...
@@ -25,8 +25,4 @@ public interface SpuMapper extends BaseMapper<Spu> {
List
<
GoodsListVO
>
queryByNameOrId
(
@Param
(
"merchantId"
)
String
merchantId
,
List
<
GoodsListVO
>
queryByNameOrId
(
@Param
(
"merchantId"
)
String
merchantId
,
@Param
(
"spuStatusOnSale"
)
Integer
spuStatusOnSale
,
@Param
(
"spuStatusOnSale"
)
Integer
spuStatusOnSale
,
@Param
(
"goods"
)
String
goods
);
@Param
(
"goods"
)
String
goods
);
GoodsSpuVO
readByCoin
(
@Param
(
"merchantId"
)
String
merchantId
,
@Param
(
"coin"
)
String
coin
);
}
}
mall-server-admin/src/main/java/com/fzm/mall/server/admin/goods_center/service/impl/SpuServiceImpl.java
View file @
cd124985
...
@@ -371,7 +371,7 @@ public class SpuServiceImpl extends ServiceImpl<SpuMapper, Spu> implements ISpuS
...
@@ -371,7 +371,7 @@ public class SpuServiceImpl extends ServiceImpl<SpuMapper, Spu> implements ISpuS
//TODO banner 推荐商品是否删除
//TODO banner 推荐商品是否删除
Spu
spu
=
getByGoodsId
(
goodsId
);
Spu
spu
=
getByGoodsId
(
goodsId
);
if
(
spu
.
getCommodityPass
().
equals
(
2
))
{
if
(
!
spu
.
getCommodityPass
().
equals
(
1
))
{
LambdaQueryWrapper
<
Sku
>
qw1
=
new
LambdaQueryWrapper
<>();
LambdaQueryWrapper
<
Sku
>
qw1
=
new
LambdaQueryWrapper
<>();
qw1
.
eq
(
Sku:
:
getGoodsId
,
goodsId
);
qw1
.
eq
(
Sku:
:
getGoodsId
,
goodsId
);
Sku
sku
=
skuService
.
getOne
(
qw1
);
Sku
sku
=
skuService
.
getOne
(
qw1
);
...
...
mall-server-admin/src/main/java/com/fzm/mall/server/admin/user/service/IAssetService.java
View file @
cd124985
...
@@ -33,5 +33,5 @@ public interface IAssetService extends IService<Asset> {
...
@@ -33,5 +33,5 @@ public interface IAssetService extends IService<Asset> {
*/
*/
void
integralDeduction
(
String
oid
,
String
uid
,
BigDecimal
amount
,
String
merchantId
,
List
<
OrderDetail
>
orderDetailList
,
Boolean
isApproved
);
void
integralDeduction
(
String
oid
,
String
uid
,
BigDecimal
amount
,
String
merchantId
,
List
<
OrderDetail
>
orderDetailList
,
Boolean
isApproved
);
void
refundCoinOnChain
(
int
tableType
,
String
tableId
,
String
merchantId
,
String
coin
,
int
number
,
String
serialNo
,
String
fromAddr
,
String
toAddr
);
void
refundCoinOnChain
(
int
tableType
,
String
tableId
,
String
merchantId
,
String
coin
,
String
skuId
,
int
number
,
String
serialNo
,
String
fromAddr
,
String
toAddr
);
}
}
mall-server-admin/src/main/java/com/fzm/mall/server/admin/user/service/impl/AssetServiceImpl.java
View file @
cd124985
...
@@ -11,8 +11,10 @@ import com.fzm.mall.server.admin.constant.MallResponseError;
...
@@ -11,8 +11,10 @@ import com.fzm.mall.server.admin.constant.MallResponseError;
import
com.fzm.mall.server.admin.exception.MyException
;
import
com.fzm.mall.server.admin.exception.MyException
;
import
com.fzm.mall.server.admin.goods_center.entity.vo.GoodsSpuVO
;
import
com.fzm.mall.server.admin.goods_center.entity.vo.GoodsSpuVO
;
import
com.fzm.mall.server.admin.goods_center.mapper.GoodsSkuUsufructMapper
;
import
com.fzm.mall.server.admin.goods_center.mapper.GoodsSkuUsufructMapper
;
import
com.fzm.mall.server.admin.goods_center.mapper.SkuMapper
;
import
com.fzm.mall.server.admin.goods_center.mapper.SpuMapper
;
import
com.fzm.mall.server.admin.goods_center.mapper.SpuMapper
;
import
com.fzm.mall.server.admin.goods_center.model.GoodsSkuUsufruct
;
import
com.fzm.mall.server.admin.goods_center.model.GoodsSkuUsufruct
;
import
com.fzm.mall.server.admin.goods_center.model.Sku
;
import
com.fzm.mall.server.admin.goods_center.model.Spu
;
import
com.fzm.mall.server.admin.goods_center.model.Spu
;
import
com.fzm.mall.server.admin.home_page.model.Merchant
;
import
com.fzm.mall.server.admin.home_page.model.Merchant
;
import
com.fzm.mall.server.admin.home_page.service.IMerchantService
;
import
com.fzm.mall.server.admin.home_page.service.IMerchantService
;
...
@@ -73,6 +75,8 @@ public class AssetServiceImpl extends ServiceImpl<AssetMapper, Asset> implements
...
@@ -73,6 +75,8 @@ public class AssetServiceImpl extends ServiceImpl<AssetMapper, Asset> implements
private
WxPayUtil
wxPayUtil
;
private
WxPayUtil
wxPayUtil
;
@Autowired
@Autowired
private
GoodsSkuUsufructMapper
goodsSkuUsufructMapper
;
private
GoodsSkuUsufructMapper
goodsSkuUsufructMapper
;
@Autowired
private
SkuMapper
skuMapper
;
/**
/**
* 商品订单退款-积分还原,商品币还原
* 商品订单退款-积分还原,商品币还原
...
@@ -107,12 +111,13 @@ public class AssetServiceImpl extends ServiceImpl<AssetMapper, Asset> implements
...
@@ -107,12 +111,13 @@ public class AssetServiceImpl extends ServiceImpl<AssetMapper, Asset> implements
}
}
@Override
@Override
public
void
refundCoinOnChain
(
int
tableType
,
String
tableId
,
String
merchantId
,
String
coin
,
int
number
,
String
serialNo
,
String
fromAddr
,
String
toAddr
)
{
public
void
refundCoinOnChain
(
int
tableType
,
String
tableId
,
String
merchantId
,
String
coin
,
String
skuId
,
int
number
,
String
serialNo
,
String
fromAddr
,
String
toAddr
)
{
//判断商品是否为NFT
QueryWrapper
<
Sku
>
queryWrapper
=
new
QueryWrapper
<>();
GoodsSpuVO
goodsSpu
=
spuMapper
.
readByCoin
(
merchantId
,
coin
);
queryWrapper
.
eq
(
"sku_id"
,
skuId
);
goodsSpu
.
initTokenId
();
Sku
sku
=
skuMapper
.
selectOne
(
queryWrapper
);
boolean
isSalesNFTCopy
=
goodsSpu
.
getNftSalesType
().
equals
(
Spu
.
NFT_SALES_TYPE_COPY
);
boolean
commodityPassAuto
=
goodsSpu
.
getCommodityPass
().
equals
(
Spu
.
COMMODITY_PASS_AUTO
);
boolean
isSalesNFTCopy
=
sku
.
getNftSalesType
().
equals
(
Spu
.
NFT_SALES_TYPE_COPY
);
/**
/**
* 只有订单退款时,买家将商品币退还商家,商家刷一下退回的币的编号为可用
* 只有订单退款时,买家将商品币退还商家,商家刷一下退回的币的编号为可用
*/
*/
...
@@ -131,11 +136,12 @@ public class AssetServiceImpl extends ServiceImpl<AssetMapper, Asset> implements
...
@@ -131,11 +136,12 @@ public class AssetServiceImpl extends ServiceImpl<AssetMapper, Asset> implements
*/
*/
if
(
isSalesNFTCopy
)
{
if
(
isSalesNFTCopy
)
{
serialNoList
.
forEach
(
index
->
{
serialNoList
.
forEach
(
index
->
{
Long
t
okenId
=
Long
.
valueOf
(
index
);
Long
copyT
okenId
=
Long
.
valueOf
(
index
);
payInChain
(
tableType
,
tableId
,
fromAddr
,
toAddr
,
coin
,
1
,
tokenId
,
commodityPassAuto
,
isSalesNFTCopy
);
payInChain
(
tableType
,
tableId
,
fromAddr
,
toAddr
,
coin
,
1
,
copyTokenId
);
});
});
}
else
{
}
else
{
payInChain
(
tableType
,
tableId
,
fromAddr
,
toAddr
,
coin
,
number
,
goodsSpu
.
getTokenId
(),
commodityPassAuto
,
isSalesNFTCopy
);
Long
tokenId
=
Long
.
valueOf
(
coin
.
replace
(
MALLGlobalConfig
.
NFT_PREFIX
,
""
));
payInChain
(
tableType
,
tableId
,
fromAddr
,
toAddr
,
coin
,
number
,
tokenId
);
}
}
}
}
}
}
...
@@ -209,7 +215,7 @@ public class AssetServiceImpl extends ServiceImpl<AssetMapper, Asset> implements
...
@@ -209,7 +215,7 @@ public class AssetServiceImpl extends ServiceImpl<AssetMapper, Asset> implements
if
(
update
==
0
)
{
if
(
update
==
0
)
{
throw
new
MyException
(
MallResponseError
.
UPDATE_FAIL
);
throw
new
MyException
(
MallResponseError
.
UPDATE_FAIL
);
}
}
refundCoinOnChain
(
TranDto
.
TABLE_TYPE_ORDER_INFO
,
orderDetail
.
getOid
(),
merchantId
,
orderDetail
.
getCoin
(),
orderDetail
.
getNumber
(),
orderDetail
.
getSerialNo
(),
user
.
getAddress
(),
merchant
.
getTokenIssueAddr
());
refundCoinOnChain
(
TranDto
.
TABLE_TYPE_ORDER_INFO
,
orderDetail
.
getOid
(),
merchantId
,
orderDetail
.
getCoin
(),
orderDetail
.
get
SkuId
(),
orderDetail
.
get
Number
(),
orderDetail
.
getSerialNo
(),
user
.
getAddress
(),
merchant
.
getTokenIssueAddr
());
});
});
}
else
{
}
else
{
orderDetailList
.
forEach
(
orderDetail
->
{
orderDetailList
.
forEach
(
orderDetail
->
{
...
@@ -231,8 +237,7 @@ public class AssetServiceImpl extends ServiceImpl<AssetMapper, Asset> implements
...
@@ -231,8 +237,7 @@ public class AssetServiceImpl extends ServiceImpl<AssetMapper, Asset> implements
}
}
}
}
private
void
payInChain
(
int
tableType
,
String
tableId
,
String
fromAddr
,
String
toAddr
,
String
coin
,
int
number
,
private
void
payInChain
(
int
tableType
,
String
tableId
,
String
fromAddr
,
String
toAddr
,
String
coin
,
int
number
,
Long
tokenId
)
{
Long
tokenId
,
boolean
commodityPassAuto
,
boolean
isSalesNFTCopy
)
{
TranDto
tranDto
=
new
TranDto
();
TranDto
tranDto
=
new
TranDto
();
tranDto
.
setFromAddr
(
fromAddr
);
tranDto
.
setFromAddr
(
fromAddr
);
tranDto
.
setToAddr
(
toAddr
);
tranDto
.
setToAddr
(
toAddr
);
...
...
mall-server-admin/src/main/resources/mapper/goods_center/SpuMapper.xml
View file @
cd124985
...
@@ -128,14 +128,4 @@
...
@@ -128,14 +128,4 @@
</if>
</if>
</where>
</where>
</select>
</select>
<select
id=
"readByCoin"
resultType=
"com.fzm.mall.server.admin.goods_center.entity.vo.GoodsSpuVO"
>
select sp.type, sp.commodity_pass, IFNULL(n.token_id, t.token_id) tokenIdStr, s.nft_sales_type as nftSalesType
from goods_sku s
left join goods_spu sp on s.goods_id = sp.goods_id
left join goods_nft n on sp.commodity_pass = 1 and sp.type = 6 and sp.goods_id = n.goods_id
left join external_token t on sp.commodity_pass = 2 and s.commodity_pass_id = t.commodity_pass_id
where s.status = 1
and s.coin_name = #{coin} and sp.merchant_id = #{merchantId}
</select>
</mapper>
</mapper>
mall-server-front/src/main/java/com/fzm/mall/server/front/asset/model/vo/asset/UserAssetVo.java
View file @
cd124985
...
@@ -34,4 +34,6 @@ public class UserAssetVo {
...
@@ -34,4 +34,6 @@ public class UserAssetVo {
@ApiModelProperty
(
value
=
"溯源hash"
)
@ApiModelProperty
(
value
=
"溯源hash"
)
@TableField
(
exist
=
false
)
@TableField
(
exist
=
false
)
private
String
hash
;
private
String
hash
;
@ApiModelProperty
(
value
=
"商品币对于skuId"
)
private
String
goodsCoin
;
}
}
mall-server-front/src/main/java/com/fzm/mall/server/front/asset/service/impl/UserAssetTransferRecordServiceImpl.java
View file @
cd124985
...
@@ -13,9 +13,11 @@ import com.fzm.mall.server.front.asset.model.UserAssetTransferRecord;
...
@@ -13,9 +13,11 @@ import com.fzm.mall.server.front.asset.model.UserAssetTransferRecord;
import
com.fzm.mall.server.front.asset.model.dto.UserAssetTransferRecordSaveDTO
;
import
com.fzm.mall.server.front.asset.model.dto.UserAssetTransferRecordSaveDTO
;
import
com.fzm.mall.server.front.asset.model.vo.UserAssetTransferRecordVO
;
import
com.fzm.mall.server.front.asset.model.vo.UserAssetTransferRecordVO
;
import
com.fzm.mall.server.front.asset.service.IUserAssetTransferRecordService
;
import
com.fzm.mall.server.front.asset.service.IUserAssetTransferRecordService
;
import
com.fzm.mall.server.front.constant.MALLGlobalConfig
;
import
com.fzm.mall.server.front.enums.QueueTTLTypeEnum
;
import
com.fzm.mall.server.front.enums.QueueTTLTypeEnum
;
import
com.fzm.mall.server.front.goods.mapper.
GoodSp
uMapper
;
import
com.fzm.mall.server.front.goods.mapper.
Sk
uMapper
;
import
com.fzm.mall.server.front.goods.model.GoodSpu
;
import
com.fzm.mall.server.front.goods.model.GoodSpu
;
import
com.fzm.mall.server.front.goods.model.Sku
;
import
com.fzm.mall.server.front.goods.model.Spu
;
import
com.fzm.mall.server.front.goods.model.Spu
;
import
com.fzm.mall.server.front.mq.MsgProducer
;
import
com.fzm.mall.server.front.mq.MsgProducer
;
import
com.fzm.mall.server.front.order.model.po.TranDto
;
import
com.fzm.mall.server.front.order.model.po.TranDto
;
...
@@ -61,7 +63,7 @@ public class UserAssetTransferRecordServiceImpl extends ServiceImpl<UserAssetTra
...
@@ -61,7 +63,7 @@ public class UserAssetTransferRecordServiceImpl extends ServiceImpl<UserAssetTra
private
UserMapper
userMapper
;
private
UserMapper
userMapper
;
@Autowired
@Autowired
private
GoodSpuMapper
goodSp
uMapper
;
private
SkuMapper
sk
uMapper
;
@Override
@Override
public
void
save
(
UserAssetTransferRecordSaveDTO
saveDTO
)
{
public
void
save
(
UserAssetTransferRecordSaveDTO
saveDTO
)
{
...
@@ -72,9 +74,18 @@ public class UserAssetTransferRecordServiceImpl extends ServiceImpl<UserAssetTra
...
@@ -72,9 +74,18 @@ public class UserAssetTransferRecordServiceImpl extends ServiceImpl<UserAssetTra
User
user
=
userMapper
.
selectOne
(
new
QueryWrapper
<
User
>().
eq
(
"uid"
,
record
.
getUid
()));
User
user
=
userMapper
.
selectOne
(
new
QueryWrapper
<
User
>().
eq
(
"uid"
,
record
.
getUid
()));
User
userRecive
=
userMapper
.
selectOne
(
new
QueryWrapper
<
User
>().
eq
(
"address"
,
record
.
getToAddress
()));
User
userRecive
=
userMapper
.
selectOne
(
new
QueryWrapper
<
User
>().
eq
(
"address"
,
record
.
getToAddress
()));
GoodSpu
goodsSpu
=
goodSpuMapper
.
readByCoin
(
record
.
getCoin
());
QueryWrapper
<
Sku
>
queryWrapper
=
new
QueryWrapper
<>();
goodsSpu
.
initTokenId
();
queryWrapper
.
eq
(
"sku_id"
,
saveDTO
.
getSkuId
());
String
hash
=
logTransferRecord
(
user
,
userRecive
,
amount
,
record
.
getCoin
(),
goodsSpu
);
Sku
sku
=
skuMapper
.
selectOne
(
queryWrapper
);
boolean
isSalesNFTCopy
=
sku
.
getNftSalesType
().
equals
(
GoodSpu
.
NFT_SALES_TYPE_COPY
);
Long
tokenId
;
if
(
isSalesNFTCopy
){
tokenId
=
Long
.
valueOf
(
saveDTO
.
getCoin
());
}
else
{
tokenId
=
Long
.
valueOf
(
saveDTO
.
getCoin
().
replace
(
MALLGlobalConfig
.
GOODS_NFT_PREFIX
,
""
));
}
String
hash
=
logTransferRecord
(
user
,
userRecive
,
amount
,
tokenId
);
record
.
init
(
userRecive
.
getUid
(),
inChain
);
record
.
init
(
userRecive
.
getUid
(),
inChain
);
recordMapper
.
insert
(
record
);
recordMapper
.
insert
(
record
);
...
@@ -85,33 +96,26 @@ public class UserAssetTransferRecordServiceImpl extends ServiceImpl<UserAssetTra
...
@@ -85,33 +96,26 @@ public class UserAssetTransferRecordServiceImpl extends ServiceImpl<UserAssetTra
/**
/**
* 链上转账
* 链上转账
*/
*/
transferInChain
(
user
.
getAddress
(),
record
.
getCoin
(),
record
.
getToAddress
(),
record
.
getNum
(),
record
.
getTransferRecordId
(),
hash
,
goodsSpu
.
getTokenId
(),
goodsSpu
.
getCoinType
()
);
transferInChain
(
user
.
getAddress
(),
record
.
getCoin
(),
record
.
getToAddress
(),
record
.
getNum
(),
record
.
getTransferRecordId
(),
hash
,
tokenId
);
}
}
}
}
private
String
logTransferRecord
(
User
user
,
User
userRecive
,
BigDecimal
amount
,
String
coin
,
GoodSpu
goodSpu
)
{
private
String
logTransferRecord
(
User
user
,
User
userRecive
,
BigDecimal
amount
,
Long
tokenId
)
{
if
(
userRecive
==
null
||
user
.
getAddress
().
equals
(
userRecive
.
getAddress
()))
{
if
(
userRecive
==
null
||
user
.
getAddress
().
equals
(
userRecive
.
getAddress
()))
{
throw
new
RuntimeException
(
"addr_invalid"
);
throw
new
RuntimeException
(
"addr_invalid"
);
}
}
boolean
isSalesNFTCopy
=
goodSpu
.
getNftSalesType
().
equals
(
GoodSpu
.
NFT_SALES_TYPE_COPY
);
boolean
commodityPassAuto
=
goodSpu
.
getCommodityPass
().
equals
(
Spu
.
COMMODITY_PASS_AUTO
);
boolean
doEvmExec
=
true
;
/**
/**
*
商品为外部导入或者NFT销售类型为“原商品销售”,用外部NFT转账合约
*
一幕所有的nft都是内部nft
*/
*/
if
(
commodityPassAuto
||
isSalesNFTCopy
)
{
boolean
doEvmExec
=
false
;
doEvmExec
=
false
;
}
String
hash
;
String
hash
;
if
(
doEvmExec
)
{
if
(
doEvmExec
)
{
long
[]
tokenIds
=
new
long
[]{
goodSpu
.
getTokenId
()
};
long
[]
tokenIds
=
new
long
[]{
tokenId
};
long
[]
amounts
=
new
long
[]{
amount
.
longValue
()};
long
[]
amounts
=
new
long
[]{
amount
.
longValue
()};
hash
=
chainUtil
.
evmExec
(
tokenIds
,
amounts
,
user
.
getAddress
(),
userRecive
.
getAddress
());
hash
=
chainUtil
.
evmExec
(
tokenIds
,
amounts
,
user
.
getAddress
(),
userRecive
.
getAddress
());
goodSpu
.
setCoinType
(
TranDto
.
COIN_TYPE_NFT_OUT
);
}
else
{
}
else
{
hash
=
chainUtil
.
evmTransfer
(
userRecive
.
getAddress
(),
user
.
getAddress
(),
goodSpu
.
getTokenId
(),
amount
.
longValue
());
hash
=
chainUtil
.
evmTransfer
(
userRecive
.
getAddress
(),
user
.
getAddress
(),
tokenId
,
amount
.
longValue
());
goodSpu
.
setCoinType
(
TranDto
.
COIN_TYPE_NFT_IN
);
}
}
return
hash
;
return
hash
;
}
}
...
@@ -123,7 +127,7 @@ public class UserAssetTransferRecordServiceImpl extends ServiceImpl<UserAssetTra
...
@@ -123,7 +127,7 @@ public class UserAssetTransferRecordServiceImpl extends ServiceImpl<UserAssetTra
* @param toAddress
* @param toAddress
* @param num
* @param num
*/
*/
private
void
transferInChain
(
String
fromAddress
,
String
coin
,
String
toAddress
,
Integer
num
,
String
transferRecordId
,
String
hash
,
Long
tokenId
,
Integer
coinType
)
{
private
void
transferInChain
(
String
fromAddress
,
String
coin
,
String
toAddress
,
Integer
num
,
String
transferRecordId
,
String
hash
,
Long
tokenId
)
{
/**
/**
* 如果配置为不走链,则不操作链上资产
* 如果配置为不走链,则不操作链上资产
*/
*/
...
@@ -140,7 +144,6 @@ public class UserAssetTransferRecordServiceImpl extends ServiceImpl<UserAssetTra
...
@@ -140,7 +144,6 @@ public class UserAssetTransferRecordServiceImpl extends ServiceImpl<UserAssetTra
tranDto
.
setTableType
(
TranDto
.
USER_ASSET_TRANSFER
);
tranDto
.
setTableType
(
TranDto
.
USER_ASSET_TRANSFER
);
tranDto
.
setHash
(
hash
);
tranDto
.
setHash
(
hash
);
tranDto
.
setTokenId
(
tokenId
);
tranDto
.
setTokenId
(
tokenId
);
tranDto
.
setCoinType
(
coinType
);
producer
.
sendTTL
(
JSON
.
toJSONString
(
tranDto
),
QueueTTLTypeEnum
.
MALL_USER_ASSET_TRANSFER_TTL
,
5
*
1000
);
producer
.
sendTTL
(
JSON
.
toJSONString
(
tranDto
),
QueueTTLTypeEnum
.
MALL_USER_ASSET_TRANSFER_TTL
,
5
*
1000
);
}
}
...
...
mall-server-front/src/main/java/com/fzm/mall/server/front/goods/mapper/GoodSpuMapper.java
View file @
cd124985
...
@@ -19,8 +19,6 @@ public interface GoodSpuMapper extends BaseMapper<GoodSpu> {
...
@@ -19,8 +19,6 @@ public interface GoodSpuMapper extends BaseMapper<GoodSpu> {
@Select
(
"select template_id from goods_spu where goods_id = #{goodsId}"
)
@Select
(
"select template_id from goods_spu where goods_id = #{goodsId}"
)
String
getTemplateIdByGoodsId
(
@Param
(
"goodsId"
)
String
goodsId
);
String
getTemplateIdByGoodsId
(
@Param
(
"goodsId"
)
String
goodsId
);
GoodSpu
readByCoin
(
@Param
(
"coin"
)
String
coin
);
@Select
(
"select a.commodity_pass from goods_spu a left join goods_sku b on a.goods_id = b.goods_id where b.sku_id = #{skuId} "
)
@Select
(
"select a.commodity_pass from goods_spu a left join goods_sku b on a.goods_id = b.goods_id where b.sku_id = #{skuId} "
)
int
getCommodityBySkuId
(
@Param
(
"skuId"
)
String
skuId
);
int
getCommodityBySkuId
(
@Param
(
"skuId"
)
String
skuId
);
...
...
mall-server-front/src/main/java/com/fzm/mall/server/front/goods/mapper/SkuMapper.java
View file @
cd124985
...
@@ -5,6 +5,7 @@ import com.fzm.mall.server.front.goods.model.Sku;
...
@@ -5,6 +5,7 @@ import com.fzm.mall.server.front.goods.model.Sku;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.fzm.mall.server.front.goods.model.vo.SkuVo
;
import
com.fzm.mall.server.front.goods.model.vo.SkuVo
;
import
com.fzm.mall.server.front.order.model.vo.ShopInfoVo
;
import
com.fzm.mall.server.front.order.model.vo.ShopInfoVo
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Select
;
import
org.apache.ibatis.annotations.Select
;
import
org.apache.ibatis.annotations.Update
;
import
org.apache.ibatis.annotations.Update
;
...
@@ -19,6 +20,7 @@ import java.util.List;
...
@@ -19,6 +20,7 @@ import java.util.List;
* @author fzm
* @author fzm
* @since 2021-03-09
* @since 2021-03-09
*/
*/
@Mapper
public
interface
SkuMapper
extends
BaseMapper
<
Sku
>
{
public
interface
SkuMapper
extends
BaseMapper
<
Sku
>
{
@Select
(
"select * from goods_sku where goods_id = #{goodsId} and status = 1"
)
@Select
(
"select * from goods_sku where goods_id = #{goodsId} and status = 1"
)
List
<
SkuVo
>
getByGoodsIs
(
@Param
(
"goodsId"
)
String
goodsId
);
List
<
SkuVo
>
getByGoodsIs
(
@Param
(
"goodsId"
)
String
goodsId
);
...
...
mall-server-front/src/main/java/com/fzm/mall/server/front/goods/model/Sku.java
View file @
cd124985
...
@@ -75,5 +75,7 @@ public class Sku implements Serializable {
...
@@ -75,5 +75,7 @@ public class Sku implements Serializable {
@TableField
(
fill
=
FieldFill
.
INSERT_UPDATE
)
@TableField
(
fill
=
FieldFill
.
INSERT_UPDATE
)
private
Long
updateTime
;
private
Long
updateTime
;
@ApiModelProperty
(
value
=
"nft销售方式(1.原商品销售 2.拷贝销售)"
)
@TableField
(
"nft_sales_type"
)
private
Integer
nftSalesType
;
}
}
mall-server-front/src/main/java/com/fzm/mall/server/front/order/model/po/TranDto.java
View file @
cd124985
package
com
.
fzm
.
mall
.
server
.
front
.
order
.
model
.
po
;
package
com
.
fzm
.
mall
.
server
.
front
.
order
.
model
.
po
;
import
com.fzm.mall.server.front.constant.MALLGlobalConfig
;
import
lombok.Data
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
...
@@ -59,9 +58,4 @@ public class TranDto {
...
@@ -59,9 +58,4 @@ public class TranDto {
* 1.外部nft;2.内部nft;3.内部普通
* 1.外部nft;2.内部nft;3.内部普通
*/
*/
private
Integer
coinType
;
private
Integer
coinType
;
public
void
initTokenId
(
String
tokenIdStr
)
{
String
tokenId
=
tokenIdStr
.
replace
(
MALLGlobalConfig
.
GOODS_NFT_PREFIX
,
""
);
setTokenId
(
Long
.
valueOf
(
tokenId
));
}
}
}
mall-server-front/src/main/resources/mapper/goods/GoodSpuMapper.xml
View file @
cd124985
...
@@ -2,12 +2,4 @@
...
@@ -2,12 +2,4 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!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.goods.mapper.GoodSpuMapper"
>
<mapper
namespace=
"com.fzm.mall.server.front.goods.mapper.GoodSpuMapper"
>
<select
id=
"readByCoin"
resultType=
"com.fzm.mall.server.front.goods.model.GoodSpu"
>
select sp.type, sp.commodity_pass, IFNULL(n.token_id, t.token_id) tokenIdStr, s.nft_sales_type as nftSalesType
from goods_sku s
left join goods_spu sp on s.goods_id = sp.goods_id
left join goods_nft n on sp.commodity_pass = 1 and sp.type = 6 and sp.goods_id = n.goods_id
left join external_token t on sp.commodity_pass = 2 and s.coin_name = t.label_name
where s.status = 1 and s.coin_name = #{coin}
</select>
</mapper>
</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