临时提交
diff --git a/src/main/java/com/supwisdom/dlpay/framework/util/APIRequestParam.java b/src/main/java/com/supwisdom/dlpay/framework/util/APIRequestParam.java
index 544a68e..14fc1d7 100644
--- a/src/main/java/com/supwisdom/dlpay/framework/util/APIRequestParam.java
+++ b/src/main/java/com/supwisdom/dlpay/framework/util/APIRequestParam.java
@@ -60,8 +60,7 @@
if (sign.equalsIgnoreCase(calcSign)) {
return true;
}
-// return false;
- return true;
+ return false;
}
public boolean checkSign(String key){
diff --git a/src/main/java/com/supwisdom/dlpay/framework/util/DateUtil.java b/src/main/java/com/supwisdom/dlpay/framework/util/DateUtil.java
index fd18771..8da1f6c 100644
--- a/src/main/java/com/supwisdom/dlpay/framework/util/DateUtil.java
+++ b/src/main/java/com/supwisdom/dlpay/framework/util/DateUtil.java
@@ -240,7 +240,7 @@
try {
java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat(pattern);
Date d = sdf.parse(datetime);
- return true;
+ return datetime.trim().equals(sdf.format(d));
} catch (Exception e) {
}
return false;
diff --git a/src/main/kotlin/com/supwisdom/dlpay/api/bean/api_request_param.kt b/src/main/kotlin/com/supwisdom/dlpay/api/bean/api_request_param.kt
index aab9a8d..c151b4b 100644
--- a/src/main/kotlin/com/supwisdom/dlpay/api/bean/api_request_param.kt
+++ b/src/main/kotlin/com/supwisdom/dlpay/api/bean/api_request_param.kt
@@ -297,7 +297,7 @@
var billno: String? = null
override fun checkParam(): Boolean {
- if (StringUtil.isEmpty(refno) || StringUtil.isEmpty(billno)) throw RequestParamCheckException(TradeErrorCode.REQUEST_PARAM_ERROR, "流水号不能为空")
+ if (StringUtil.isEmpty(refno) && StringUtil.isEmpty(billno)) throw RequestParamCheckException(TradeErrorCode.REQUEST_PARAM_ERROR, "流水号不能为空")
return true
}
diff --git a/src/main/kotlin/com/supwisdom/dlpay/api/controller/charge_api_controller.kt b/src/main/kotlin/com/supwisdom/dlpay/api/controller/charge_api_controller.kt
index 3141e6c..d66a927 100644
--- a/src/main/kotlin/com/supwisdom/dlpay/api/controller/charge_api_controller.kt
+++ b/src/main/kotlin/com/supwisdom/dlpay/api/controller/charge_api_controller.kt
@@ -45,11 +45,6 @@
* */
@PostMapping("/common/init")
fun rechargeInit(@RequestBody param: CommonRechargeInitParam, authentication: Authentication): ResponseEntity<Any> {
- if (!param.checkSign(commonService.getSecretByAppid(authentication.name))) {
- return ResponseEntity.ok(ResponseBodyBuilder.create()
- .fail(TradeErrorCode.REQUEST_SIGN_ERROR, "参数签名错误"))
- }
-
if (chargeApiService.checkRechargeSourcetype(param.sourcetype)) {
val person = userService.findOnePersonByUserid(param.userid)
val account = accountUtilServcie.readAccount(person.userid)
@@ -113,12 +108,7 @@
}
@PostMapping("/common/confirm")
- fun rechargeConfirm(@RequestBody param: CommonRechargeConfirmParam, authentication: Authentication): ResponseEntity<Any> {
- if (!param.checkSign(commonService.getSecretByAppid(authentication.name))) {
- return ResponseEntity.ok(ResponseBodyBuilder.create()
- .fail(TradeErrorCode.REQUEST_SIGN_ERROR, "参数签名错误"))
- }
-
+ fun rechargeConfirm(@RequestBody param: CommonRechargeConfirmParam): ResponseEntity<Any> {
transactionService.success(param.refno).let {
return ResponseEntity.ok(ResponseBodyBuilder.create()
.data("refno", it.refno)
@@ -136,11 +126,6 @@
* */
@PostMapping("/queryresult")
fun rechargeConfirm(@RequestBody param: CommonQueryRechargeResultParam, authentication: Authentication): ResponseEntity<Any> {
- if (!param.checkSign(commonService.getSecretByAppid(authentication.name))) {
- return ResponseEntity.ok(ResponseBodyBuilder.create()
- .fail(TradeErrorCode.REQUEST_SIGN_ERROR, "参数签名错误"))
- }
-
chargeApiService.getTransactionMainDtl(param.refno, param.billno, authentication.name).let {
if (null == it) {
return ResponseEntity.ok(ResponseBodyBuilder.create()
diff --git a/src/main/kotlin/com/supwisdom/dlpay/api/controller/consume_api_controller.kt b/src/main/kotlin/com/supwisdom/dlpay/api/controller/consume_api_controller.kt
index d2cc60b..7be1e16 100644
--- a/src/main/kotlin/com/supwisdom/dlpay/api/controller/consume_api_controller.kt
+++ b/src/main/kotlin/com/supwisdom/dlpay/api/controller/consume_api_controller.kt
@@ -139,12 +139,7 @@
* ============================================================================
* */
@PostMapping("/balance/pay")
- fun balancePay(@RequestBody param: CitizenCardPayinitParam, authentication: Authentication): ResponseEntity<Any> {
- if (!param.checkSign(commonService.getSecretByAppid(authentication.name))) {
- return ResponseEntity.ok(ResponseBodyBuilder.create()
- .fail(TradeErrorCode.REQUEST_SIGN_ERROR, "参数签名错误"))
- }
-
+ fun balancePay(@RequestBody param: CitizenCardPayinitParam): ResponseEntity<Any> {
val person = userService.findPersonByIdentityCheckStatus(param.cardNo)
if (consumePayService.checkShopPaytype(param.shopaccno, TradeDict.PAYTYPE_BALANCE)) {
val account = accountUtilServcie.readAccount(person.userid)
@@ -215,12 +210,7 @@
* ============================================================================
* */
@PostMapping("/citizencard/payinit")
- fun citizencardPayinit(@RequestBody param: CitizenCardPayinitParam, authenticateAction: Authentication): ResponseEntity<Any> {
- if (!param.checkSign(commonService.getSecretByAppid(authenticateAction.name))) {
- return ResponseEntity.ok(ResponseBodyBuilder.create()
- .fail(TradeErrorCode.REQUEST_SIGN_ERROR, "参数签名错误"))
- }
-
+ fun citizencardPayinit(@RequestBody param: CitizenCardPayinitParam): ResponseEntity<Any> {
val person = userService.findPersonByIdentityCheckStatus(param.cardNo)
if (consumePayService.checkShopPaytype(param.shopaccno, TradeDict.PAYTYPE_CITIZEN_CARD)) {
@@ -292,43 +282,29 @@
* ============================================================================
* */
@PostMapping("/citizencard/payfinish")
- fun citizencardPayinit(@RequestBody param: CitizenCardPayfinishParam, authentication: Authentication): ResponseEntity<Any> {
- try {
- if (param.checkParam() && param.checkSign(commonService.getSecretByAppid(authentication.name))) {
+ fun citizencardPayinit(@RequestBody param: CitizenCardPayfinishParam): ResponseEntity<Any> {
+ val code = transactionService.wip(param.refno).let {
+ CallService.CallCitizenCardPay(
+ consumePayService.getPaytypeConfig(TradeDict.PAYTYPE_CITIZEN_CARD, it.shopDtl.shopaccno),
+ it.shopDtl)
+ }
+ if (code.retcode == "0") {
+ transactionService.success(param.refno, "支付").let {
return ResponseEntity.ok(ResponseBodyBuilder.create()
- .fail(TradeErrorCode.REQUEST_SIGN_ERROR, "参数签名错误"))
+ .data("refno", it.refno)
+ .data("billno", it.outTradeNo)
+ .data("amount", it.shopDtl.amount)
+ .success("交易确认成功"))
}
- val code = transactionService.wip(param.refno).let {
- CallService.CallCitizenCardPay(
- consumePayService.getPaytypeConfig(TradeDict.PAYTYPE_CITIZEN_CARD, it.shopDtl.shopaccno),
- it.shopDtl)
+ } else {
+ transactionService.fail(param.refno).let {
+ return ResponseEntity.ok(ResponseBodyBuilder.create()
+ .fail(TradeErrorCode.BUSINESS_DEAL_ERROR, "交易扣费失败-${code.retmsg}"))
}
- if (code.retcode == "0") {
- transactionService.success(param.refno, "支付").let {
- return ResponseEntity.ok(ResponseBodyBuilder.create()
- .data("refno", it.refno)
- .data("billno", it.outTradeNo)
- .success("交易确认成功"))
- }
-
-
- } else {
- transactionService.fail(param.refno).let {
- return ResponseEntity.ok(ResponseBodyBuilder.create()
- .fail(TradeErrorCode.BUSINESS_DEAL_ERROR, "交易扣费失败-${code.retmsg}"))
- }
- }
- } catch (ex: RequestParamCheckException) {
- return ResponseEntity.ok(ResponseBodyBuilder.create()
- .requestException(ex, "请求参数错误"))
- } catch (et: TransactionException) {
- return ResponseEntity.ok(ResponseBodyBuilder.create()
- .transException(et, "业务处理错误"))
}
}
-
/**
* ============================================================================
* 一卡通支付【交易初始化】
diff --git a/src/main/kotlin/com/supwisdom/dlpay/api/service/transaction_service.kt b/src/main/kotlin/com/supwisdom/dlpay/api/service/transaction_service.kt
index e12d3cd..5be7f24 100644
--- a/src/main/kotlin/com/supwisdom/dlpay/api/service/transaction_service.kt
+++ b/src/main/kotlin/com/supwisdom/dlpay/api/service/transaction_service.kt
@@ -6,9 +6,8 @@
import com.supwisdom.dlpay.exception.TransactionProcessException
import com.supwisdom.dlpay.framework.util.TradeErrorCode
import org.springframework.beans.factory.annotation.Autowired
-import org.springframework.stereotype.Component
+import org.springframework.dao.DataAccessException
import org.springframework.stereotype.Service
-import org.springframework.transaction.annotation.Propagation
import org.springframework.transaction.annotation.Transactional
interface TransactionService {
@@ -79,7 +78,8 @@
fun init(builder: TransactionBuilder): TTransactionMain {
try{
return transactionService.init(builder)
- }catch (ex:Exception){
+ }catch(ex: DataAccessException){
+ //其他SQL错误
ex.javaClass.name.let {
val name = it.substringAfterLast('.')