From 9cf0238d11a74ea09103df15c4606654c24874af Mon Sep 17 00:00:00 2001 From: qiaowei Date: Thu, 18 Jul 2019 09:17:38 +0800 Subject: [PATCH] =?utf8?q?=E4=BF=AE=E6=94=B9=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../com/supwisdom/dlpay/mobile/MobileApi.kt | 59 ++++++++++++------- .../service/impl/MobileApiServiceImpl.kt | 4 +- 2 files changed, 40 insertions(+), 23 deletions(-) diff --git a/payapi/src/main/kotlin/com/supwisdom/dlpay/mobile/MobileApi.kt b/payapi/src/main/kotlin/com/supwisdom/dlpay/mobile/MobileApi.kt index bd4eb36d..ff117e4e 100644 --- a/payapi/src/main/kotlin/com/supwisdom/dlpay/mobile/MobileApi.kt +++ b/payapi/src/main/kotlin/com/supwisdom/dlpay/mobile/MobileApi.kt @@ -14,6 +14,7 @@ import com.supwisdom.dlpay.mobile.domain.TBMobileUser import com.supwisdom.dlpay.mobile.service.MobileApiService import com.supwisdom.dlpay.system.service.DictionaryProxy import com.supwisdom.dlpay.util.ConstantUtil +import com.supwisdom.dlpay.util.YnrccUtil import org.apache.commons.lang.StringUtils import org.springframework.beans.factory.annotation.Autowired import org.springframework.data.redis.core.RedisTemplate @@ -29,8 +30,6 @@ import java.util.Calendar import org.bouncycastle.cms.RecipientId.password - - @RestController @RequestMapping("/mobileapi/i") class ApiInit { @@ -306,29 +305,43 @@ class ApiV1 { if (card.userid.isNullOrEmpty() || card.status != TradeDict.STATUS_NORMAL) { return JsonResult.error("银行卡号信息有误") } + val person = userService.findOnePersonByUserid(card.userid) + if (person.name != name) { + return JsonResult.error("绑定信息有误[姓名]") + } + if (person.idtype != idtype || person.idno != idno) { + return JsonResult.error("绑定信息有误[证件类型/证件号]") + } val exsitUser = mobileApiService.findUserById(card.userid) if (exsitUser != null) { return JsonResult.error("该银行卡号已被绑定,如有疑问,请联系客服") } - //TODO call api - //user.bindtime = DateUtil.getNow() - //user.userid = card.userid - //mobileApiService.saveUser(user) - var resp = citizencardPayService.bindCard(cardno,name,idtype,idno,phone); - if(resp.code!="0000"){ + //call api + var resp = citizencardPayService.bindCard(cardno, name, idtype, idno, phone); + if (resp.code != "0000") { return JsonResult.error(resp.message) } - val code = RandomUtils.randomNumber(6) + var signed = "" + if (resp.sinstatus == "1") { + signed = TradeDict.STATUS_YES + card.signed = true + user.signedtime = DateUtil.getNow(); + mobileApiService.saveCard(card) + mobileApiService.saveUser(user) + } + System.out.println(resp.captcha) + var code = if (resp.captcha.isNullOrEmpty()) { + RandomUtils.randomNumber(6) + } else { + resp.captcha + } System.out.println(code) - redisTemplate.opsForValue().set(user.phone, code, Duration.ofMinutes(5)) + redisTemplate.opsForValue().set(user.phone, code, Duration.ofMinutes(10)) var payseted = false if (!user.paypwd.isNullOrEmpty()) { payseted = true } - var signed = "" - if (card.signed) { - signed = TradeDict.STATUS_YES - } + return JsonResult.ok("OK").put("personid", card.userid) ?.put("paypwdset", payseted) ?.put("phonex", StringUtil.phoneReplace(phone)) @@ -441,23 +454,27 @@ class ApiV1 { val p = SecurityContextHolder.getContext().authentication val user = mobileApiService.findUserById(p.name) ?: return JsonResult.error("用户不存在,请注册") - user.issigned = TradeDict.STATUS_YES - user.signedtime = DateUtil.getNow() var signed: String if (!user.userid.isNullOrEmpty()) { var card = mobileApiService.findCardByUserid(user.userid!!) ?: return JsonResult.error("卡片不存在,请重新绑定") if (card.signed) { signed = TradeDict.STATUS_YES - }else{ - //TODO call sign api + } else { + //call sign api + val person = userService.findOnePersonByUserid(card.userid) + var resp = citizencardPayService.signCard(card.cardno, person.name, person.idtype, person.idno, user.phone, YnrccUtil.TRANSTYPE_SIGNCARD) + if (resp.code != "0000") { + return JsonResult.error(resp.message) + } card.signed = true + user.signedtime = DateUtil.getNow(); mobileApiService.saveCard(card) + mobileApiService.saveUser(user) signed = TradeDict.STATUS_YES } - }else{ + } else { return JsonResult.error("请先绑定银行卡") } - mobileApiService.saveUser(user) return JsonResult.ok("ok") .put("signed", signed)!! } @@ -646,7 +663,7 @@ class ApiV1 { mobileApiService.findUserById(p.name) ?: return JsonResult.error("用户不存在,请注册") //TODO cardlost - return JsonResult.ok("ok") + return JsonResult.ok("ok").put("qrcode",p.name)!! } diff --git a/payapi/src/main/kotlin/com/supwisdom/dlpay/mobile/service/impl/MobileApiServiceImpl.kt b/payapi/src/main/kotlin/com/supwisdom/dlpay/mobile/service/impl/MobileApiServiceImpl.kt index 38411cba..e7dee860 100644 --- a/payapi/src/main/kotlin/com/supwisdom/dlpay/mobile/service/impl/MobileApiServiceImpl.kt +++ b/payapi/src/main/kotlin/com/supwisdom/dlpay/mobile/service/impl/MobileApiServiceImpl.kt @@ -43,11 +43,11 @@ class MobileApiServiceImpl : MobileApiService { } override fun findCardByNo(cardno: String): TCard? { - return cardDao.findCardByCardnoAndCardtype(cardno,ConstantUtil.CARDTYPE_CITIZENCARD) + return cardDao.findCardByCardnoAndCardtype(cardno,ConstantUtil.CARDTYPE_BANKCARD) } override fun findCardByUserid(userid: String): TCard? { - return cardDao.findCardByUseridAndCardtype(userid,ConstantUtil.CARDTYPE_CITIZENCARD) + return cardDao.findCardByUseridAndCardtype(userid,ConstantUtil.CARDTYPE_BANKCARD) } override fun saveCard(card: TCard): TCard { -- 2.17.1