Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
P
payment-ci-test
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
test-ci
payment-ci-test
Commits
ba450561
提交
ba450561
authored
5月 29, 2023
作者:
张小凤
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
payment(add)
上级
7257442b
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
19 个修改的文件
包含
765 行增加
和
266 行删除
+765
-266
pom.xml
pom.xml
+1
-16
BaseController.java
src/main/java/com/mmc/payment/common/BaseController.java
+13
-2
ResultEnum.java
src/main/java/com/mmc/payment/common/ResultEnum.java
+3
-1
Tenant.java
src/main/java/com/mmc/payment/common/Tenant.java
+80
-0
Audience.java
src/main/java/com/mmc/payment/config/Audience.java
+21
-0
AuthHandler.java
src/main/java/com/mmc/payment/config/AuthHandler.java
+0
-0
TenantContext.java
src/main/java/com/mmc/payment/config/TenantContext.java
+64
-0
RepoCashController.java
...n/java/com/mmc/payment/controller/RepoCashController.java
+61
-55
RepoCashDao.java
src/main/java/com/mmc/payment/dao/RepoCashDao.java
+12
-12
OrderInfoDO.java
src/main/java/com/mmc/payment/entity/OrderInfoDO.java
+148
-0
AuthFilter.java
src/main/java/com/mmc/payment/filter/AuthFilter.java
+19
-0
AuthSignatureFilter.java
...main/java/com/mmc/payment/filter/AuthSignatureFilter.java
+148
-0
BaseAccountDTO.java
src/main/java/com/mmc/payment/model/dto/BaseAccountDTO.java
+17
-43
RepoCashVO.java
src/main/java/com/mmc/payment/model/vo/RepoCashVO.java
+39
-25
RepoAccountServiceImpl.java
.../com/mmc/payment/service/Impl/RepoAccountServiceImpl.java
+50
-44
RepoCashServiceImpl.java
...ava/com/mmc/payment/service/Impl/RepoCashServiceImpl.java
+0
-0
RepoCashService.java
src/main/java/com/mmc/payment/service/RepoCashService.java
+16
-16
application-local.yml
src/main/resources/application-local.yml
+4
-0
RepoCashDao.xml
src/main/resources/mapper/RepoCashDao.xml
+69
-52
没有找到文件。
pom.xml
浏览文件 @
ba450561
...
...
@@ -19,11 +19,6 @@
<dependencies>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-web
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-test
</artifactId>
<scope>
test
</scope>
</dependency>
...
...
@@ -76,22 +71,12 @@
<version>
3.0.0
</version>
<!--<scope>compile</scope>-->
</dependency>
<dependency>
<groupId>
com.alibaba
</groupId>
<artifactId>
fastjson
</artifactId>
<version>
2.0.32
</version>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-data-redis
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-web
</artifactId>
</dependency>
</dependencies>
<build>
...
...
src/main/java/com/mmc/payment/common/BaseController.java
浏览文件 @
ba450561
package
com
.
mmc
.
payment
.
common
;
import
com.alibaba.fastjson.JSONObject
;
import
com.mmc.payment.config.AuthHandler
;
import
com.mmc.payment.exception.BizException
;
import
com.mmc.payment.jwt.JwtConstant
;
import
com.mmc.payment.model.dto.BaseAccountDTO
;
import
com.mmc.payment.model.dto.CurrentUserDTO
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
javax.servlet.http.HttpServletRequest
;
...
...
@@ -18,6 +22,8 @@ public abstract class BaseController {
@Autowired
private
AuthHandler
authHandler
;
@Autowired
private
StringRedisTemplate
stringRedisTemplate
;
/**
* 获取当前用户
*
...
...
@@ -35,7 +41,12 @@ public abstract class BaseController {
* 获取当前登录账号信息
*/
public
BaseAccountDTO
getCurrentAccount
(
HttpServletRequest
request
)
{
String
token
=
request
.
getHeader
(
JwtConstant
.
TOKENKEY
);
return
authHandler
.
getCurrentAccount
(
token
);
String
token
=
request
.
getHeader
(
"token"
);
String
json
=
stringRedisTemplate
.
opsForValue
().
get
(
token
);
if
(
StringUtils
.
isBlank
(
json
)){
throw
new
BizException
(
ResultEnum
.
LOGIN_ACCOUNT_STATUS_ERROR
);
}
BaseAccountDTO
baseAccountDTO
=
JSONObject
.
parseObject
(
json
,
BaseAccountDTO
.
class
);
return
baseAccountDTO
;
}
}
src/main/java/com/mmc/payment/common/ResultEnum.java
浏览文件 @
ba450561
...
...
@@ -395,7 +395,9 @@ public enum ResultEnum implements BaseErrorInfoInterface {
HELP_FAIL_ERROR
(
"2009"
,
"不能给自己助力哦!"
),
ALREADY_BINDING_ERROR
(
"2010"
,
"优惠券已被绑定"
),
ALREADY_DIVIDE_ERROR
(
"2011"
,
"订单已分成"
),
DIVIDE_OBJ_NOT_EXIST
(
"2012"
,
"先点击确认添加分成对象"
);
DIVIDE_OBJ_NOT_EXIST
(
"2012"
,
"先点击确认添加分成对象"
),
THE_REQUEST_IS_NOT_AUTHENTICATED
(
"2013"
,
"请求未经过鉴权"
),
THE_TOKEN_IS_INVALID
(
"2014"
,
"token失效"
)
;;
/**
* 错误码
...
...
src/main/java/com/mmc/payment/common/Tenant.java
0 → 100644
浏览文件 @
ba450561
package
com
.
mmc
.
payment
.
common
;
import
lombok.Data
;
import
java.io.Serializable
;
/**
* @Author small
* @Date 2023/5/29 10:38
* @Version 1.0
*/
@Data
public
class
Tenant
implements
Serializable
{
/**
* 用户id
*/
private
Integer
userId
;
/**
* 所在机构id
*/
private
Integer
tenantId
;
/**
* 用户名称
*/
private
String
userName
;
/**
* 管理机构id集合
*/
private
String
tenantIds
;
/**
* 菜单路由路径集合
*/
private
String
token
;
/**
* 角色id
*/
private
Integer
roleId
;
/**
* 角色类型,1超管 2其他角色
*/
private
Integer
roleType
;
public
Tenant
(
String
userName
)
{
this
.
userId
=
userId
;
this
.
tenantId
=
tenantId
;
this
.
userName
=
userName
;
this
.
tenantIds
=
tenantIds
;
this
.
token
=
token
;
this
.
roleId
=
roleId
;
this
.
roleType
=
roleType
;
}
/**
* userid相同,认为是同个用户
*
* @param o
* @return
*/
@Override
public
boolean
equals
(
Object
o
)
{
if
(
this
==
o
)
{
return
true
;
}
if
(
o
instanceof
Tenant
)
{
Tenant
tenant
=
(
Tenant
)
o
;
return
getUserId
().
equals
(
tenant
.
getUserId
());
}
else
{
return
false
;
}
}
@Override
public
int
hashCode
()
{
int
result
=
17
;
result
=
31
*
result
+
getUserId
().
hashCode
();
return
result
;
}
}
src/main/java/com/mmc/payment/config/Audience.java
0 → 100644
浏览文件 @
ba450561
package
com
.
mmc
.
payment
.
config
;
import
lombok.Data
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.stereotype.Component
;
/**
* @Author small
* @Date 2023/5/29 10:39
* @Version 1.0
*/
@Data
@ConfigurationProperties
(
prefix
=
"audience"
)
@Component
public
class
Audience
{
private
String
clientId
;
private
String
base64Secret
;
private
String
name
;
private
long
expiresSecond
;
}
src/main/java/com/mmc/payment/config/AuthHandler.java
浏览文件 @
ba450561
差异被折叠。
点击展开。
src/main/java/com/mmc/payment/config/TenantContext.java
0 → 100644
浏览文件 @
ba450561
package
com
.
mmc
.
payment
.
config
;
import
com.mmc.payment.common.Tenant
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
/**
* @Author small
* @Date 2023/5/29 10:38
* @Version 1.0
*/
@Slf4j
public
class
TenantContext
{
private
static
ThreadLocal
<
Tenant
>
tenantHolder
=
new
ThreadLocal
<>();
public
static
void
setTenant
(
Tenant
tenant
)
{
tenantHolder
.
set
(
tenant
);
}
public
static
Tenant
getTenant
()
{
return
tenantHolder
.
get
();
}
public
static
Integer
getUserId
()
{
return
getTenant
().
getUserId
();
}
public
static
Integer
getTenantId
()
{
return
getTenant
().
getTenantId
();
}
public
static
Integer
getRoleId
()
{
return
getTenant
().
getRoleId
();
}
public
static
boolean
exists
()
{
return
getTenant
()
!=
null
;
}
public
static
void
clear
()
{
tenantHolder
.
remove
();
}
public
static
Tenant
buildTenant
(
String
accountNo
)
{
if
(
StringUtils
.
isBlank
(
accountNo
))
{
log
.
error
(
"登录信息[accountNo]获取异常"
);
return
null
;
}
return
new
Tenant
(
accountNo
);
}
/**
* valid tenantId is correct
*/
private
static
boolean
validNumeric
(
String
number
)
{
return
StringUtils
.
isNotEmpty
(
number
)
&&
StringUtils
.
isNumeric
(
number
);
}
}
src/main/java/com/mmc/payment/controller/RepoCashController.java
浏览文件 @
ba450561
...
...
@@ -14,6 +14,7 @@ import io.swagger.annotations.ApiOperation;
import
io.swagger.annotations.ApiResponse
;
import
io.swagger.annotations.ApiResponses
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
org.springframework.web.bind.annotation.*
;
import
springfox.documentation.annotations.ApiIgnore
;
...
...
@@ -21,72 +22,77 @@ import javax.servlet.http.HttpServletRequest;
import
java.math.BigDecimal
;
/**
* @Author small
* @Date 2023/5/24 9:53
* @Version 1.0
* @Author small @Date 2023/5/24 9:53 @Version 1.0
*/
@Api
(
tags
=
{
"消耗-现金-接口"
})
@Api
(
tags
=
{
"现金管理"
})
@RestController
@RequestMapping
(
"/repocash/"
)
public
class
RepoCashController
{
public
class
RepoCashController
extends
BaseController
{
@Autowired
private
RepoCashService
repoCashService
;
@Autowired
private
RepoCashService
repoCashService
;
@Autowired
private
StringRedisTemplate
stringRedisTemplate
;
@ApiOperation
(
value
=
"支付订单-充值扣款"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
PayCashResultDTO
.
class
)
})
@ApiIgnore
@PostMapping
(
"PayCashOrder"
)
public
PayCashResultDTO
feignPayCashOrder
(
@RequestBody
RepoOrderPayVO
orderPay
)
{
return
repoCashService
.
payCashOrder
(
orderPay
);
}
@ApiOperation
(
value
=
"web-订单支付"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
PayCashResultDTO
.
class
)})
@PostMapping
(
"orderPayment"
)
public
PayCashResultDTO
orderPayment
(
HttpServletRequest
request
,
@RequestParam
String
orderNo
)
{
return
repoCashService
.
orderPayment
(
this
.
getCurrentAccount
(
request
),
orderNo
);
}
@ApiIgnore
@ApiOperation
(
value
=
"当前用户剩余的余额"
)
@GetMapping
(
"RemainingBalance"
)
public
BigDecimal
RemainingBalance
(
@RequestParam
(
value
=
"repoAccountId"
,
required
=
true
)
Integer
repoAccountId
)
{
return
repoCashService
.
RemainingBalance
(
repoAccountId
);
}
@ApiOperation
(
value
=
"支付订单-充值扣款"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
PayCashResultDTO
.
class
)})
@ApiIgnore
@PostMapping
(
"PayCashOrder"
)
public
PayCashResultDTO
feignPayCashOrder
(
@RequestBody
RepoOrderPayVO
orderPay
)
{
return
repoCashService
.
payCashOrder
(
orderPay
);
}
@ApiOperation
(
value
=
"余额变更-分页-列表"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
RepoCashDTO
.
class
)
})
@PostMapping
(
"listPageCash"
)
public
ResultBody
listPageCash
(
@RequestBody
RepoCashQO
param
)
{
return
ResultBody
.
success
(
repoCashService
.
listPageRepoCash
(
param
));
}
@ApiOperation
(
value
=
"当前用户剩余的余额"
)
@GetMapping
(
"RemainingBalance"
)
public
BigDecimal
RemainingBalance
(
@RequestParam
(
value
=
"repoAccountId"
,
required
=
true
)
Integer
repoAccountId
)
{
@ApiOperation
(
value
=
"余额变更-修改备注"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)
})
@GetMapping
(
"updateCashRemark"
)
public
ResultBody
updateCashRemark
(
@RequestParam
Integer
id
,
@RequestParam
()
String
remark
)
{
repoCashService
.
updateCashRemark
(
id
,
remark
);
return
ResultBody
.
success
();
}
String
s
=
stringRedisTemplate
.
opsForValue
().
get
(
"R2023052814538712"
);
return
repoCashService
.
RemainingBalance
(
repoAccountId
);
}
@ApiOperation
(
value
=
"v1.0.1-NO现金-充值"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)
})
@RepeatSubmit
@PostMapping
(
"reqCash"
)
public
ResultBody
reqCash
(
HttpServletRequest
request
,
@RequestBody
RepoCashVO
param
)
{
return
repoCashService
.
reqCash
(
null
,
param
);
//repoCashService.reqCash(this.getCurrentAccount(request), param);
}
@ApiOperation
(
value
=
"余额变更-分页-列表"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
RepoCashDTO
.
class
)})
@PostMapping
(
"listPageCash"
)
public
ResultBody
listPageCash
(
@RequestBody
RepoCashQO
param
)
{
return
ResultBody
.
success
(
repoCashService
.
listPageRepoCash
(
param
));
}
@ApiOperation
(
value
=
"v1.0.1-NO现金-手动扣除"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)
})
@RepeatSubmit
@PostMapping
(
"dedCash"
)
public
ResultBody
dedCash
(
HttpServletRequest
request
,
@RequestBody
RepoCashVO
param
)
{
//repoCashService.dedCash(this.getCurrentAccount(request), param)
return
repoCashService
.
dedCash
(
null
,
param
);
}
@ApiOperation
(
value
=
"余额变更-修改备注"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@GetMapping
(
"updateCashRemark"
)
public
ResultBody
updateCashRemark
(
@RequestParam
Integer
id
,
@RequestParam
()
String
remark
)
{
repoCashService
.
updateCashRemark
(
id
,
remark
);
return
ResultBody
.
success
();
}
@ApiOperation
(
value
=
"feign-查询退款金额"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
RepoCashDTO
.
class
)
})
@GetMapping
(
"feignRefundInfo"
)
public
RepoCashDTO
feignRefundInfo
(
@RequestParam
String
refundNo
)
{
return
repoCashService
.
getRefundInfo
(
refundNo
);
}
@ApiOperation
(
value
=
"v1.0.1Yes-现金-充值"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@RepeatSubmit
@PostMapping
(
"reqCash"
)
public
ResultBody
reqCash
(
HttpServletRequest
request
,
@RequestBody
RepoCashVO
param
)
{
return
repoCashService
.
reqCash
(
this
.
getCurrentAccount
(
request
),
param
);
}
@ApiOperation
(
value
=
"v1.0.1-Yes现金-手动扣除"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@RepeatSubmit
@PostMapping
(
"dedCash"
)
public
ResultBody
dedCash
(
HttpServletRequest
request
,
@RequestBody
RepoCashVO
param
)
{
return
repoCashService
.
dedCash
(
this
.
getCurrentAccount
(
request
),
param
);
}
@ApiIgnore
@ApiOperation
(
value
=
"查询退款金额"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
RepoCashDTO
.
class
)})
@GetMapping
(
"feignRefundInfo"
)
public
RepoCashDTO
feignRefundInfo
(
@RequestParam
String
refundNo
)
{
return
repoCashService
.
getRefundInfo
(
refundNo
);
}
}
src/main/java/com/mmc/payment/dao/RepoCashDao.java
浏览文件 @
ba450561
...
...
@@ -9,27 +9,27 @@ import java.math.BigDecimal;
import
java.util.List
;
/**
* @Author small
* @Date 2023/5/24 10:10
* @Version 1.0
* @Author small @Date 2023/5/24 10:10 @Version 1.0
*/
@Mapper
public
interface
RepoCashDao
{
RepoCashDO
getRefundCashInfo
(
String
refundNo
);
RepoCashDO
getRefundCashInfo
(
String
refundNo
);
void
insertRepoCash
(
RepoCashDO
rc
);
void
insertRepoCash
(
RepoCashDO
rc
);
void
updateCashRemark
(
Integer
id
,
String
remark
);
void
updateCashRemark
(
Integer
id
,
String
remark
);
List
<
RepoCashDO
>
listPagePFRepoCash
(
RepoCashQO
param
);
List
<
RepoCashDO
>
listPagePFRepoCash
(
RepoCashQO
param
);
int
countPagePFRepoCash
(
RepoCashQO
param
);
int
countPagePFRepoCash
(
RepoCashQO
param
);
RepoWalletDO
getRepoWalletInfo
(
Integer
repoAccountId
);
RepoWalletDO
getRepoWalletInfo
(
Integer
repoAccountId
);
void
updateRepoWalletAmt
(
Integer
repoAccountId
,
BigDecimal
chageAmt
);
void
updateRepoWalletAmt
(
Integer
repoAccountId
,
BigDecimal
chageAmt
);
BigDecimal
RemainingBalance
(
Integer
repoAccountId
);
BigDecimal
RemainingBalance
(
Integer
repoAccountId
);
void
updateWalletAmt
(
Integer
repoAccountId
,
BigDecimal
addAmt
,
BigDecimal
addPaid
);
void
updateWalletAmt
(
Integer
repoAccountId
,
BigDecimal
addAmt
,
BigDecimal
addPaid
);
void
orderPayment
(
RepoCashDO
repoCashDO
);
}
src/main/java/com/mmc/payment/entity/OrderInfoDO.java
0 → 100644
浏览文件 @
ba450561
package
com
.
mmc
.
payment
.
entity
;
import
com.mmc.payment.model.dto.KdnExpDTO
;
import
com.mmc.payment.model.dto.OrderReceiptDTO
;
import
com.mmc.payment.model.dto.OrderRefundDTO
;
import
com.mmc.payment.model.dto.OrderVcuDTO
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.List
;
/**
* @Author small @Date 2023/5/29 13:55 @Version 1.0
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
// @ApiModel(value = "com.mmc.csf.model.dto.OrderInfoDTO", description = "云仓订单DTO")
public
class
OrderInfoDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1572467108563651846L
;
@ApiModelProperty
(
value
=
"ID"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"订单编号"
)
private
String
orderNo
;
@ApiModelProperty
(
value
=
"商品ID"
)
private
Integer
wareInfoId
;
@ApiModelProperty
(
value
=
"商品编号"
)
private
String
wareNo
;
@ApiModelProperty
(
value
=
"商品标题"
)
private
String
wareTitle
;
@ApiModelProperty
(
value
=
"商品图片"
)
private
String
wareImg
;
@ApiModelProperty
(
value
=
"套餐(sku)ID"
)
private
Integer
skuInfoId
;
@ApiModelProperty
(
value
=
"套餐(sku)名称"
)
private
String
skuTitle
;
@ApiModelProperty
(
value
=
"购买用户ID"
)
private
Integer
repoAccountId
;
@ApiModelProperty
(
value
=
"用户UID"
)
private
String
uid
;
@ApiModelProperty
(
value
=
"买家name"
)
private
String
buyerName
;
@ApiModelProperty
(
value
=
"买家电话"
)
private
String
buyerPhone
;
@ApiModelProperty
(
value
=
"单价"
)
private
BigDecimal
unitPrice
;
@ApiModelProperty
(
value
=
"购买的商品数量"
)
private
Integer
wareNum
;
@ApiModelProperty
(
value
=
"应付款金额"
)
private
BigDecimal
shouldPay
;
@ApiModelProperty
(
value
=
"实收款金额"
)
private
BigDecimal
actualPay
;
@ApiModelProperty
(
value
=
"订单类型:0租赁 100购买"
)
private
Integer
orderType
;
@ApiModelProperty
(
value
=
"押金"
)
private
BigDecimal
deposit
;
@ApiModelProperty
(
value
=
"租金总金额"
)
private
BigDecimal
rentPrice
;
@ApiModelProperty
(
value
=
"租约开始日"
)
private
Date
startDate
;
@ApiModelProperty
(
value
=
"租约结束日"
)
private
Date
endDate
;
@ApiModelProperty
(
value
=
"付款天数"
)
private
Integer
payDay
;
@ApiModelProperty
(
value
=
"交易状态:查订单状态字典"
)
private
String
tranStatus
;
@ApiModelProperty
(
value
=
"减库方式 0:买家拍下减库存 1:卖家付款减库存"
)
private
Integer
exWare
;
@ApiModelProperty
(
value
=
"用户备注"
)
private
String
remark
;
@ApiModelProperty
(
value
=
"平台人员备注"
)
private
String
pfRemark
;
@ApiModelProperty
(
value
=
"关闭原因"
)
private
String
shutReason
;
@ApiModelProperty
(
value
=
"交易编号"
)
private
String
payNo
;
@ApiModelProperty
(
value
=
"支付时间"
)
private
Date
payTime
;
@ApiModelProperty
(
value
=
"发货时间"
)
private
Date
sendWareTime
;
@ApiModelProperty
(
value
=
"创建时间"
)
private
Date
createTime
;
@ApiModelProperty
(
value
=
"物流信息/收货地址信息"
)
private
OrderReceiptDTO
receipt
;
@ApiModelProperty
(
value
=
"退款单详情信息,无则为null"
)
private
OrderRefundDTO
orderRefund
;
@ApiModelProperty
(
value
=
"发货-物流动态,无则为null"
)
private
KdnExpDTO
express
;
@ApiModelProperty
(
value
=
"退货-物流动态,无则为null"
)
private
KdnExpDTO
refundExpress
;
@ApiModelProperty
(
value
=
"质检详情,无则为null"
)
private
List
<
OrderVcuDTO
>
vcus
;
@ApiModelProperty
(
value
=
"归还时间"
)
private
Date
returnTime
;
@ApiModelProperty
(
value
=
"优惠券id"
,
example
=
"221"
)
private
Integer
couponId
;
@ApiModelProperty
(
value
=
"规格id"
,
example
=
"1"
)
private
Integer
specsId
;
@ApiModelProperty
(
value
=
"余额"
,
example
=
"4"
)
private
BigDecimal
balance
;
}
src/main/java/com/mmc/payment/filter/AuthFilter.java
0 → 100644
浏览文件 @
ba450561
package
com
.
mmc
.
payment
.
filter
;
/**
* @Author small
* @Date 2023/5/29 10:36
* @Version 1.0
*/
import
javax.servlet.Filter
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
/** 登录认证 */
public
interface
AuthFilter
extends
Filter
{
/** 拦截前 */
public
boolean
before
(
HttpServletRequest
request
,
HttpServletResponse
response
);
/** 通过拦截后 */
public
boolean
after
();
}
src/main/java/com/mmc/payment/filter/AuthSignatureFilter.java
0 → 100644
浏览文件 @
ba450561
package
com
.
mmc
.
payment
.
filter
;
import
com.alibaba.fastjson2.JSON
;
import
com.mmc.payment.common.ResultBody
;
import
com.mmc.payment.common.ResultEnum
;
import
com.mmc.payment.common.Tenant
;
import
com.mmc.payment.config.Audience
;
import
com.mmc.payment.config.TenantContext
;
import
com.mmc.payment.model.dto.UserAccountDTO
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.ArrayUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
org.springframework.stereotype.Component
;
import
javax.servlet.*
;
import
javax.servlet.annotation.WebFilter
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
/**
* @Author small
* @Date 2023/5/29 10:36
* @Version 1.0
*/
@Slf4j
@Component
@WebFilter
(
filterName
=
"AuthSignatureFilter"
,
urlPatterns
=
"/*"
)
public
class
AuthSignatureFilter
implements
AuthFilter
{
@Autowired
private
Audience
audience
;
@Autowired
private
StringRedisTemplate
stringRedisTemplate
;
/**
* 无需登录白名单
*/
private
static
final
String
[]
IGNORE_URLS
=
{
"/payment/swagger/swagger-resources"
,
"/payment/swagger/v2/api-docs"
,
"/payment/swagger/doc.html"
};
/*无需加密狗无需登录白名单*/
private
static
final
String
[]
USE_KEY
=
{
"/crm/account/loginByUsbKey"
};
/**
* 请求方式预请求方式值
*/
private
static
final
String
REQUEST_METHOD_OPTIONS_VALUE
=
"OPTIONS"
;
public
static
final
String
SWAGGER_URL_PREFIX
=
"/payment/swagger"
;
@Override
public
void
init
(
FilterConfig
filterConfig
)
{
log
.
info
(
" filter name is 'AuthSignatureFilter' init success"
);
}
/**
* 过滤器前置处理
*
* @param request
* @param response
* @return
*/
@Override
public
boolean
before
(
HttpServletRequest
request
,
HttpServletResponse
response
)
{
String
url
=
request
.
getRequestURI
();
// 忽略以下url请求,白名单路径以及swagger路径
if
(!
ArrayUtils
.
contains
(
IGNORE_URLS
,
url
)
&&
!
ArrayUtils
.
contains
(
USE_KEY
,
url
)
&&
!
url
.
startsWith
(
"/payment/webjars"
)
&&
!
url
.
startsWith
(
SWAGGER_URL_PREFIX
))
{
if
(
REQUEST_METHOD_OPTIONS_VALUE
.
equals
(
request
.
getMethod
()))
{
response
.
setStatus
(
HttpServletResponse
.
SC_OK
);
return
false
;
}
else
{
String
token
=
request
.
getHeader
(
"token"
);
if
(
null
==
token
){
response
(
response
,
ResultBody
.
error
(
ResultEnum
.
THE_REQUEST_IS_NOT_AUTHENTICATED
));
return
false
;
}
String
s
=
stringRedisTemplate
.
opsForValue
().
get
(
token
);
if
(
null
==
s
){
response
(
response
,
ResultBody
.
error
(
ResultEnum
.
THE_TOKEN_IS_INVALID
));
return
false
;
}
UserAccountDTO
userAccountDTO
=
JSON
.
parseObject
(
s
,
UserAccountDTO
.
class
);
try
{
Tenant
tenant
=
TenantContext
.
buildTenant
(
userAccountDTO
.
getAccountNo
());
if
(
tenant
!=
null
){
TenantContext
.
setTenant
(
tenant
);
return
true
;
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
}
}
return
true
;
}
@Override
public
void
doFilter
(
ServletRequest
req
,
ServletResponse
res
,
FilterChain
chain
)
throws
IOException
,
ServletException
{
final
HttpServletRequest
request
=
(
HttpServletRequest
)
req
;
final
HttpServletResponse
response
=
(
HttpServletResponse
)
res
;
if
(!
before
(
request
,
response
))
{
return
;
}
chain
.
doFilter
(
req
,
res
);
after
();
}
/**
* 过滤器后置处理
*
* @return
*/
@Override
public
boolean
after
()
{
TenantContext
.
clear
();
// 上下文清理
return
true
;
}
private
static
final
String
APPLICATION_JSON_UTF8
=
"application/json;charset=UTF-8"
;
public
static
void
response
(
HttpServletResponse
response
,
ResultBody
resultBody
)
{
response
.
setContentType
(
APPLICATION_JSON_UTF8
);
try
{
response
.
getWriter
()
.
write
(
JSON
.
toJSONString
(
ResultBody
.
error
(
resultBody
.
getCode
(),
resultBody
.
getMessage
())));
}
catch
(
IOException
e
)
{
log
.
error
(
e
.
getMessage
());
}
}
private
static
String
toString
(
Object
obj
)
{
if
(
null
==
obj
)
{
return
""
;
}
return
obj
.
toString
();
}
@Override
public
void
destroy
()
{
}
}
src/main/java/com/mmc/payment/model/dto/BaseAccountDTO.java
浏览文件 @
ba450561
package
com
.
mmc
.
payment
.
model
.
dto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
...
...
@@ -10,59 +9,34 @@ import lombok.NoArgsConstructor;
import
java.io.Serializable
;
/**
* @Author small
* @Date 2023/5/23 19:15
* @Version 1.0
* @Author small @Date 2023/5/23 19:15 @Version 1.0
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
//@ApiModel(value = "com.mmc.csf.model.dto.BaseAccountDTO", description = "登录信息DTO")
//
@ApiModel(value = "com.mmc.csf.model.dto.BaseAccountDTO", description = "登录信息DTO")
public
class
BaseAccountDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
2979712090903806216L
;
private
Integer
id
;
private
String
uid
;
private
String
accountPhone
;
private
String
accountNo
;
private
String
accountName
;
private
String
tokenPort
;
@ApiModelProperty
(
value
=
"角色ID"
)
private
Integer
roleId
;
@ApiModelProperty
(
value
=
"是否为管理角色:0否 1是"
)
private
Integer
admin
;
// 是否为管理角色
@ApiModelProperty
(
value
=
"是否为运营角色:0否 1是"
)
private
Integer
operate
;
@ApiModelProperty
(
value
=
"是否PMC发货专员:0否 1是"
)
private
Integer
pmc
;
@ApiModelProperty
(
value
=
"单位信息"
)
private
CompanyCacheDTO
companyInfo
;
// 单位信息
private
static
final
long
serialVersionUID
=
-
2979712090903806216L
;
@ApiModelProperty
(
value
=
"token"
)
private
String
token
;
@ApiModelProperty
(
value
=
"账号id"
)
private
Integer
userAccountId
;
public
BaseAccountDTO
(
RepoAccountDTO
account
)
{
this
.
id
=
account
.
getId
();
this
.
accountName
=
account
.
getAccountName
();
this
.
uid
=
account
.
getUid
();
this
.
accountPhone
=
account
.
getPhoneNum
();
}
@ApiModelProperty
(
value
=
"账号"
)
private
String
accountNo
;
@ApiModelProperty
(
value
=
"账号uid"
)
private
String
uid
;
@ApiModelProperty
(
value
=
"手机号"
)
private
String
phoneNum
;
/**
* 是否为科比特超级管理员单位(是:无单位资源限制 否:只能看当前和下级单位的资源)
* @return
*/
public
boolean
isManage
()
{
if
(
this
.
getCompanyInfo
()==
null
){
return
false
;
}
if
(
this
.
getCompanyInfo
().
getManage
()==
null
){
return
false
;
}
return
this
.
getCompanyInfo
().
getManage
()
==
1
;
}
@ApiModelProperty
(
value
=
"用户名称"
)
private
String
userName
;
@ApiModelProperty
(
value
=
"用户昵称"
)
private
String
nickName
;
}
src/main/java/com/mmc/payment/model/vo/RepoCashVO.java
浏览文件 @
ba450561
...
...
@@ -3,7 +3,6 @@ package com.mmc.payment.model.vo;
import
com.mmc.payment.common.Create
;
import
com.mmc.payment.common.Refund
;
import
com.mmc.payment.common.Share
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
...
...
@@ -16,34 +15,49 @@ import java.math.BigDecimal;
import
java.util.List
;
/**
* @Author small
* @Date 2023/5/24 10:04
* @Version 1.0
* @Author small @Date 2023/5/24 10:04 @Version 1.0
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
//@ApiModel(value = "com.mmc.csf.model.vo.RepoCashVO", description = "现金变更VO")
//
@ApiModel(value = "com.mmc.csf.model.vo.RepoCashVO", description = "现金变更VO")
public
class
RepoCashVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1828354753495845609L
;
@ApiModelProperty
(
value
=
"用户ID"
)
@NotNull
(
message
=
"用户ID不能为空"
,
groups
=
{
Create
.
class
})
private
Integer
repoAccountId
;
@ApiModelProperty
(
value
=
"订单ID"
)
@NotNull
(
message
=
"orderRefundId不能为空"
,
groups
=
{
Refund
.
class
})
private
Integer
orderRefundId
;
@ApiModelProperty
(
value
=
"返租订单ID"
)
@NotNull
(
message
=
"shareOrderId不能为空"
,
groups
=
{
Share
.
class
})
private
Integer
shareOrderId
;
@ApiModelProperty
(
value
=
"变动金额"
)
@NotNull
(
message
=
"变动金额不能为空"
,
groups
=
{
Create
.
class
,
Refund
.
class
})
private
BigDecimal
amtPaid
;
@ApiModelProperty
(
value
=
"凭证图片集合"
)
private
List
<
String
>
voucher
;
@ApiModelProperty
(
value
=
"备注"
)
private
String
remark
;
@ApiModelProperty
(
value
=
"操作人员密码"
)
@NotNull
(
message
=
"变动金额不能为空"
,
groups
=
{
Refund
.
class
,
Share
.
class
})
private
String
authPwd
;
private
static
final
long
serialVersionUID
=
1828354753495845609L
;
/* @ApiModelProperty(value = "用户ID")
@NotNull(
message = "用户ID不能为空",
groups = {Create.class})
private Integer repoAccountId;*/
/* @ApiModelProperty(value = "订单ID")
@NotNull(
message = "orderRefundId不能为空",
groups = {Refund.class})
private Integer orderRefundId;
@ApiModelProperty(value = "返租订单ID")
@NotNull(
message = "shareOrderId不能为空",
groups = {Share.class})
private Integer shareOrderId;*/
@ApiModelProperty
(
value
=
"变动金额"
)
@NotNull
(
message
=
"变动金额不能为空"
,
groups
=
{
Create
.
class
,
Refund
.
class
})
private
BigDecimal
amtPaid
;
@ApiModelProperty
(
value
=
"凭证图片集合"
)
private
List
<
String
>
voucher
;
@ApiModelProperty
(
value
=
"备注"
)
private
String
remark
;
@ApiModelProperty
(
value
=
"操作人员密码"
)
@NotNull
(
message
=
"变动金额不能为空"
,
groups
=
{
Refund
.
class
,
Share
.
class
})
private
String
authPwd
;
}
src/main/java/com/mmc/payment/service/Impl/RepoAccountServiceImpl.java
浏览文件 @
ba450561
...
...
@@ -17,54 +17,60 @@ import java.util.Map;
import
java.util.stream.Collectors
;
/**
* @Author small
* @Date 2023/5/23 19:12
* @Version 1.0
* @Author small @Date 2023/5/23 19:12 @Version 1.0
*/
@Service
public
class
RepoAccountServiceImpl
implements
RepoAccountService
{
@Autowired
private
RepoAccountDao
repoAccountDao
;
@Override
public
PageResult
listPagePayManager
(
RepoAccountQO
param
,
BaseAccountDTO
cuser
)
{
if
(!
cuser
.
isManage
()){
param
.
setCompanys
(
cuser
.
getCompanyInfo
().
getCompanys
());
}
int
count
=
repoAccountDao
.
countPagePayManager
(
param
);
if
(
count
==
0
)
{
return
PageResult
.
buildPage
(
param
.
getPageNo
(),
param
.
getPageSize
(),
count
);
}
Integer
pageNo
=
param
.
getPageNo
();
param
.
buildCurrentPage
();
List
<
RepoAccountDTO
>
data
=
repoAccountDao
.
listPagePayManager
(
param
).
stream
().
map
(
d
->
{
d
.
buildName
();
return
d
.
buildRepoAccountDTO
();
}).
collect
(
Collectors
.
toList
());
List
<
Integer
>
accountIds
=
data
.
stream
().
map
(
RepoAccountDTO:
:
getId
).
collect
(
Collectors
.
toList
());
param
.
setAccountIds
(
accountIds
);
// List<RepoWalletDTO> wallets = repoPayServletClient.feignListWalletInfo(param);
List
<
RepoWalletDTO
>
wallets
=
listWalletInfo
(
param
);
Map
<
Integer
,
RepoWalletDTO
>
mapWallet
=
wallets
.
stream
()
.
collect
(
Collectors
.
toMap
(
RepoWalletDTO:
:
getRepoAccountId
,
wallet
->
wallet
,
(
k1
,
k2
)
->
k2
));
for
(
RepoAccountDTO
ac
:
data
)
{
if
(
mapWallet
.
containsKey
(
ac
.
getId
()))
{
ac
.
setCashAmt
(
mapWallet
.
get
(
ac
.
getId
()).
getCashAmt
());
ac
.
setRemark
(
mapWallet
.
get
(
ac
.
getId
()).
getRemark
());
}
}
return
PageResult
.
buildPage
(
pageNo
,
param
.
getPageSize
(),
count
,
data
);
}
@Autowired
private
RepoAccountDao
repoAccountDao
;
public
List
<
RepoWalletDTO
>
listWalletInfo
(
RepoAccountQO
param
)
{
if
(
CollectionUtils
.
isEmpty
(
param
.
getAccountIds
())
)
{
return
java
.
util
.
Collections
.
emptyList
();
}
List
<
RepoWalletDO
>
wallets
=
repoAccountDao
.
listWalletInfo
(
param
);
return
wallets
.
stream
().
map
(
d
->
{
return
d
.
buildRepoWalletDTO
();
}).
collect
(
Collectors
.
toList
()
);
@Override
public
PageResult
listPagePayManager
(
RepoAccountQO
param
,
BaseAccountDTO
cuser
)
{
/*if(!cuser.isManage()){
param.setCompanys(cuser.getCompanyInfo().getCompanys());
}*/
int
count
=
repoAccountDao
.
countPagePayManager
(
param
);
if
(
count
==
0
)
{
return
PageResult
.
buildPage
(
param
.
getPageNo
(),
param
.
getPageSize
(),
count
);
}
Integer
pageNo
=
param
.
getPageNo
();
param
.
buildCurrentPage
();
List
<
RepoAccountDTO
>
data
=
repoAccountDao
.
listPagePayManager
(
param
).
stream
()
.
map
(
d
->
{
d
.
buildName
();
return
d
.
buildRepoAccountDTO
();
})
.
collect
(
Collectors
.
toList
());
List
<
Integer
>
accountIds
=
data
.
stream
().
map
(
RepoAccountDTO:
:
getId
).
collect
(
Collectors
.
toList
());
param
.
setAccountIds
(
accountIds
);
// List<RepoWalletDTO> wallets = repoPayServletClient.feignListWalletInfo(param);
List
<
RepoWalletDTO
>
wallets
=
listWalletInfo
(
param
);
Map
<
Integer
,
RepoWalletDTO
>
mapWallet
=
wallets
.
stream
()
.
collect
(
Collectors
.
toMap
(
RepoWalletDTO:
:
getRepoAccountId
,
wallet
->
wallet
,
(
k1
,
k2
)
->
k2
));
for
(
RepoAccountDTO
ac
:
data
)
{
if
(
mapWallet
.
containsKey
(
ac
.
getId
()))
{
ac
.
setCashAmt
(
mapWallet
.
get
(
ac
.
getId
()).
getCashAmt
());
ac
.
setRemark
(
mapWallet
.
get
(
ac
.
getId
()).
getRemark
());
}
}
return
PageResult
.
buildPage
(
pageNo
,
param
.
getPageSize
(),
count
,
data
);
}
public
List
<
RepoWalletDTO
>
listWalletInfo
(
RepoAccountQO
param
)
{
if
(
CollectionUtils
.
isEmpty
(
param
.
getAccountIds
()))
{
return
java
.
util
.
Collections
.
emptyList
();
}
List
<
RepoWalletDO
>
wallets
=
repoAccountDao
.
listWalletInfo
(
param
);
return
wallets
.
stream
()
.
map
(
d
->
{
return
d
.
buildRepoWalletDTO
();
})
.
collect
(
Collectors
.
toList
());
}
}
src/main/java/com/mmc/payment/service/Impl/RepoCashServiceImpl.java
浏览文件 @
ba450561
差异被折叠。
点击展开。
src/main/java/com/mmc/payment/service/RepoCashService.java
浏览文件 @
ba450561
...
...
@@ -12,28 +12,28 @@ import com.mmc.payment.model.vo.RepoOrderPayVO;
import
java.math.BigDecimal
;
/**
* @Author small
* @Date 2023/5/24 10:06
* @Version 1.0
* @Author small @Date 2023/5/24 10:06 @Version 1.0
*/
public
interface
RepoCashService
{
PageResult
listPageRepoCash
(
RepoCashQO
param
);
PageResult
listPageRepoCash
(
RepoCashQO
param
);
void
updateCashRemark
(
Integer
id
,
String
remark
);
void
updateCashRemark
(
Integer
id
,
String
remark
);
/**
* 充值
*
* @param cash
* @return
*/
ResultBody
reqCash
(
BaseAccountDTO
cuser
,
RepoCashVO
cash
);
/**
* 充值
*
* @param cash
* @return
*/
ResultBody
reqCash
(
BaseAccountDTO
cuser
,
RepoCashVO
cash
);
ResultBody
dedCash
(
BaseAccountDTO
cuser
,
RepoCashVO
cash
);
ResultBody
dedCash
(
BaseAccountDTO
cuser
,
RepoCashVO
cash
);
RepoCashDTO
getRefundInfo
(
String
refundNo
);
RepoCashDTO
getRefundInfo
(
String
refundNo
);
BigDecimal
RemainingBalance
(
Integer
uid
);
BigDecimal
RemainingBalance
(
Integer
uid
);
PayCashResultDTO
payCashOrder
(
RepoOrderPayVO
orderPay
);
PayCashResultDTO
orderPayment
(
BaseAccountDTO
currentAccount
,
String
orderNo
);
PayCashResultDTO
payCashOrder
(
RepoOrderPayVO
orderPay
);
}
src/main/resources/application-local.yml
浏览文件 @
ba450561
...
...
@@ -34,3 +34,7 @@ mount:
directory
:
D:@javaVolume@
userapp
:
url
:
http://localhost:35150/userapp/
src/main/resources/mapper/RepoCashDao.xml
浏览文件 @
ba450561
...
...
@@ -6,43 +6,43 @@
<resultMap
id=
"repoWalletResultMap"
type=
"com.mmc.payment.entity.RepoWalletDO"
>
<id
property=
"id"
column=
"id"
/>
<result
property=
"repoAccountId"
column=
"repo_account_id"
/>
<result
property=
"cashAmt"
column=
"cash_amt"
/>
<result
property=
"cashPaid"
column=
"cash_paid"
/>
<result
property=
"cashFreeze"
column=
"cash_freeze"
/>
<result
property=
"rcdRebateAmt"
column=
"rcd_rebate_amt"
/>
<result
property=
"rebateWdl"
column=
"rebate_wdl"
/>
<result
property=
"rebateFreeze"
column=
"rebate_freeze"
/>
<result
property=
"remark"
column=
"remark"
/>
<result
property=
"updateTime"
column=
"create_time"
/>
<result
property=
"createTime"
column=
"update_time"
/>
<id
property=
"id"
column=
"id"
/>
<result
property=
"repoAccountId"
column=
"repo_account_id"
/>
<result
property=
"cashAmt"
column=
"cash_amt"
/>
<result
property=
"cashPaid"
column=
"cash_paid"
/>
<result
property=
"cashFreeze"
column=
"cash_freeze"
/>
<result
property=
"rcdRebateAmt"
column=
"rcd_rebate_amt"
/>
<result
property=
"rebateWdl"
column=
"rebate_wdl"
/>
<result
property=
"rebateFreeze"
column=
"rebate_freeze"
/>
<result
property=
"remark"
column=
"remark"
/>
<result
property=
"updateTime"
column=
"create_time"
/>
<result
property=
"createTime"
column=
"update_time"
/>
</resultMap>
<resultMap
id=
"repoCashResultMap"
type=
"com.mmc.payment.entity.RepoCashDO"
>
<id
property=
"id"
column=
"id"
/>
<result
property=
"repoAccountId"
column=
"repo_account_id"
/>
<result
property=
"uid"
column=
"uid"
/>
<result
property=
"accountName"
column=
"account_name"
/>
<result
property=
"orderInfoId"
column=
"order_info_id"
/>
<result
property=
"orderNo"
column=
"order_no"
/>
<result
property=
"skuInfoId"
column=
"sku_info_id"
/>
<result
property=
"skuTitle"
column=
"sku_title"
/>
<result
property=
"wareInfoId"
column=
"ware_info_id"
/>
<result
property=
"wareNo"
column=
"ware_no"
/>
<result
property=
"wareTitle"
column=
"ware_title"
/>
<result
property=
"payNo"
column=
"pay_no"
/>
<result
property=
"payMethod"
column=
"pay_method"
/>
<result
property=
"amtPaid"
column=
"amt_paid"
/>
<result
property=
"cashAmt"
column=
"cash_amt"
/>
<result
property=
"payTime"
column=
"pay_time"
/>
<result
property=
"voucher"
column=
"voucher"
/>
<result
property=
"refundNo"
column=
"refund_no"
/>
<result
property=
"remark"
column=
"remark"
/>
<result
property=
"updateTime"
column=
"update_time"
/>
<result
property=
"updateUser"
column=
"update_user"
/>
<result
property=
"createTime"
column=
"create_time"
/>
<result
property=
"createUser"
column=
"create_user"
/>
<id
property=
"id"
column=
"id"
/>
<result
property=
"repoAccountId"
column=
"repo_account_id"
/>
<result
property=
"uid"
column=
"uid"
/>
<result
property=
"accountName"
column=
"account_name"
/>
<result
property=
"orderInfoId"
column=
"order_info_id"
/>
<result
property=
"orderNo"
column=
"order_no"
/>
<result
property=
"skuInfoId"
column=
"sku_info_id"
/>
<result
property=
"skuTitle"
column=
"sku_title"
/>
<result
property=
"wareInfoId"
column=
"ware_info_id"
/>
<result
property=
"wareNo"
column=
"ware_no"
/>
<result
property=
"wareTitle"
column=
"ware_title"
/>
<result
property=
"payNo"
column=
"pay_no"
/>
<result
property=
"payMethod"
column=
"pay_method"
/>
<result
property=
"amtPaid"
column=
"amt_paid"
/>
<result
property=
"cashAmt"
column=
"cash_amt"
/>
<result
property=
"payTime"
column=
"pay_time"
/>
<result
property=
"voucher"
column=
"voucher"
/>
<result
property=
"refundNo"
column=
"refund_no"
/>
<result
property=
"remark"
column=
"remark"
/>
<result
property=
"updateTime"
column=
"update_time"
/>
<result
property=
"updateUser"
column=
"update_user"
/>
<result
property=
"createTime"
column=
"create_time"
/>
<result
property=
"createUser"
column=
"create_user"
/>
</resultMap>
<select
id=
"getRefundCashInfo"
resultMap=
"repoCashResultMap"
parameterType=
"Integer"
>
...
...
@@ -59,17 +59,13 @@
<insert
id=
"insertRepoCash"
useGeneratedKeys=
"true"
keyProperty=
"id"
parameterType=
"com.mmc.payment.entity.RepoCashDO"
>
insert into repo_cash
(
repo_account_id,uid,account_name,order_info_id,order_no,sku_info_id,sku_title,
ware_info_id,ware_no,ware_title,pay_no,pay_method,amt_paid,cash_amt,pay_time,remark,
voucher,refund_no,update_time,update_user,create_time,create_user
)
values
(
#{repoAccountId},#{uid},#{accountName},#{orderInfoId},#{orderNo},#{skuInfoId},#{skuTitle},
#{wareInfoId},#{wareNo},#{wareTitle},#{payNo},#{payMethod},#{amtPaid},#{cashAmt},#{payTime},#{remark},
#{voucher},#{refundNo},#{updateTime},#{updateUser},#{createTime},#{createUser}
)
(repo_account_id, uid, account_name, order_info_id, order_no, sku_info_id, sku_title,
ware_info_id, ware_no, ware_title, pay_no, pay_method, amt_paid, cash_amt, pay_time, remark,
voucher, refund_no, update_time, update_user, create_time, create_user)
values (#{repoAccountId}, #{uid}, #{accountName}, #{orderInfoId}, #{orderNo}, #{skuInfoId}, #{skuTitle},
#{wareInfoId}, #{wareNo}, #{wareTitle}, #{payNo}, #{payMethod}, #{amtPaid}, #{cashAmt}, #{payTime},
#{remark},
#{voucher}, #{refundNo}, #{updateTime}, #{updateUser}, #{createTime}, #{createUser})
</insert>
<update
id=
"updateCashRemark"
>
...
...
@@ -138,12 +134,18 @@
</select>
<select
id=
"getRepoWalletInfo"
resultMap=
"repoWalletResultMap"
>
select
w.id,w.repo_account_id,w.cash_amt,w.cash_freeze,
w.cash_paid,w.rcd_rebate_amt,w.rebate_wdl,w.rebate_freeze,w.create_time,w.update_time
select w.id,
w.repo_account_id,
w.cash_amt,
w.cash_freeze,
w.cash_paid,
w.rcd_rebate_amt,
w.rebate_wdl,
w.rebate_freeze,
w.create_time,
w.update_time
from repo_wallet w
where
w.repo_account_id = #{repoAccountId}
where w.repo_account_id = #{repoAccountId}
</select>
<update
id=
"updateRepoWalletAmt"
>
...
...
@@ -153,14 +155,29 @@
</update>
<select
id=
"RemainingBalance"
resultType=
"java.math.BigDecimal"
>
select cash_amt from repo_wallet where repo_account_id=#{repoAccountId}
select cash_amt
from repo_wallet
where repo_account_id = #{repoAccountId}
</select>
<update
id=
"updateWalletAmt"
>
update repo_wallet
set cash_amt = cash_amt + #{addAmt},
set cash_amt
= cash_amt + #{addAmt},
cash_paid = cash_paid + #{addPaid}
where repo_account_id = #{repoAccountId}
</update>
<insert
id=
"orderPayment"
useGeneratedKeys=
"true"
keyProperty=
"id"
parameterType=
"com.mmc.payment.entity.RepoCashDO"
>
insert into repo_cash
(repo_account_id, uid, account_name, order_info_id, order_no, sku_info_id, sku_title,
ware_info_id, ware_no, ware_title, pay_no, pay_method, amt_paid, cash_amt, pay_time, remark,
voucher, refund_no, update_time, update_user, create_time, create_user)
values (#{repoAccountId}, #{uid}, #{accountName}, #{orderInfoId}, #{orderNo}, #{skuInfoId}, #{skuTitle},
#{wareInfoId}, #{wareNo}, #{wareTitle}, #{payNo}, #{payMethod}, #{amtPaid}, #{cashAmt}, #{payTime},
#{remark},
#{voucher}, #{refundNo}, #{updateTime}, #{updateUser}, #{createTime}, #{createUser})
</insert>
</mapper>
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论