From: Tang Cheng Date: Fri, 18 Oct 2019 02:31:01 +0000 (+0800) Subject: 优化并修改bug X-Git-Url: https://source.supwisdom.com/gerrit/gitweb?a=commitdiff_plain;h=3fabd7a15b139967ce4e2f29434c7fe868d9a854;p=epayment%2Ffood_payapi.git 优化并修改bug --- diff --git a/payapi-sdk/src/test/java/com/supwisdom/dlpay/paysdktest/CitizenCardPayProxyTest.java b/payapi-sdk/src/test/java/com/supwisdom/dlpay/paysdktest/CitizenCardPayProxyTest.java index 29919c58..8a0ad657 100644 --- a/payapi-sdk/src/test/java/com/supwisdom/dlpay/paysdktest/CitizenCardPayProxyTest.java +++ b/payapi-sdk/src/test/java/com/supwisdom/dlpay/paysdktest/CitizenCardPayProxyTest.java @@ -253,6 +253,9 @@ public class CitizenCardPayProxyTest { assertThat("user card biz init " + response.getRetcode() + response.getRetmsg() + response.getException(), response.getRetcode(), equalTo(0)); + System.out.println("biz init accdate " + response.getAccdate() + " , refno " + response.getRefno() + + ", description " + response.getDescription() + " summary " + response.getRetmsg()); + param.setAccdate(response.getAccdate()); param.setRefno(response.getRefno()); response = userProxy.bizConfirm(param); @@ -260,6 +263,9 @@ public class CitizenCardPayProxyTest { assertThat("user card biz confirm " + response.getRetcode() + response.getRetmsg() + response.getException(), response.getRetcode(), equalTo(0)); + System.out.println("biz confirm accdate " + response.getAccdate() + " , refno " + response.getRefno() + + ", description " + response.getDescription() + " summary " + response.getRetmsg()); + } @Test diff --git a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/controller/user_api_controller.kt b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/controller/user_api_controller.kt index 271af870..ef0018a9 100644 --- a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/controller/user_api_controller.kt +++ b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/controller/user_api_controller.kt @@ -174,8 +174,9 @@ class UserAPIController { setTransInfo(request.transdate, request.transtime, TradeCode.TRANSCODE_CARD_BIZ, "balance") setOutTransInfo(request.operid, request.operSeqno) dtltype = "cardservice" - description = request.summary } + val transDesc = arrayListOf() + transDesc.add(request.summary) val result = PublishCardResponse() val user = useService.findAccountByUserid(request.userid, null) @@ -203,12 +204,11 @@ class UserAPIController { TradeErrorCode.INPUT_DATA_ERROR, "交易金额错误") } - if (depositAmount != 0 && request.totalAmount != 0) { + if (request.totalAmount != 0) { if (depositAmount > 0) { - builder.addDebitCreditRecord(capitalSubj.subjno, capitalSubj.subjname, + builder.addDebitCreditRecord(capitalSubj.subjno, capitalSubj.subjno, user.accno, Subject.SUBJNO_PERSONAL_DEPOSIT, request.totalAmount / 100.0, request.summary) } - val transDesc = arrayListOf() if (request.cost > 0) { val subject = accountUtilServcie.readSubject(Subject.SUBJNO_CARD_COST) builder.addDebitCreditRecord(user.accno, Subject.SUBJNO_PERSONAL_DEPOSIT, @@ -231,8 +231,8 @@ class UserAPIController { request.summary) transDesc.add("手续费" + "%.2f".format(request.charge / 100.0) + " 元") } - builder.description += transDesc.joinToString(";") } + builder.description = transDesc.joinToString(";") val transaction = transactionService.init(builder) result.apply { @@ -249,6 +249,7 @@ class UserAPIController { val response = PublishCardResponse().apply { accdate = transaction.accdate refno = transaction.refno + description = transaction.personDtl.transdesc } return ResponseBodyBuilder.successEntity(response, "${request.summary}确认成功") } diff --git a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/transaction_builder.kt b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/transaction_builder.kt index 64f9033a..1b816618 100644 --- a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/transaction_builder.kt +++ b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/transaction_builder.kt @@ -8,6 +8,7 @@ import com.supwisdom.dlpay.framework.domain.TShopacc import com.supwisdom.dlpay.framework.domain.TSubject import com.supwisdom.dlpay.framework.util.TradeDict import com.supwisdom.dlpay.framework.util.TradeErrorCode +import org.apache.commons.lang3.StringUtils import kotlin.math.abs open class SubTransactionBuilder>(val parent: TransactionBuilder) { @@ -217,6 +218,13 @@ class TransactionBuilder { var remark: String = "" var dtltype: String = "" + + private fun checkSubjectNo(subjno: String) { + if (!StringUtils.isNumeric(subjno)) { + throw TransactionCheckException(TradeErrorCode.INPUT_DATA_ERROR, "科目号<$subjno>不合法") + } + } + fun person(): PersonTranactionBuilder { return this.personBuilder } @@ -290,6 +298,8 @@ class TransactionBuilder { fun addDebitCreditRecord(debitAccNo: String, debitSubjNo: String, creditAccNo: String, creditSubjNo: String, amount: Double, summary: String): TransactionBuilder { + checkSubjectNo(debitSubjNo) + checkSubjectNo(creditSubjNo) debitCreditLines.add(DebitCreditLine(debitAccNo, debitSubjNo, creditAccNo, creditSubjNo, amount, summary, debitCreditLines.size + 1))