用户消费时校验眼行卡是否签约
diff --git a/build.gradle b/build.gradle
index 0445199..bed1563 100644
--- a/build.gradle
+++ b/build.gradle
@@ -93,7 +93,7 @@
compileOnly 'org.projectlombok:lombok:1.18.8'
annotationProcessor "org.springframework.boot:spring-boot-configuration-processor"
- compile 'com.supwisdom:payapi-sdk:1.0.10'
+ compile 'com.supwisdom:payapi-sdk:1.0.28-1-g7415df3'
// providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
diff --git a/src/main/java/com/supwisdom/dlpay/util/ConstantUtil.java b/src/main/java/com/supwisdom/dlpay/util/ConstantUtil.java
index a525547..1e55b1c 100644
--- a/src/main/java/com/supwisdom/dlpay/util/ConstantUtil.java
+++ b/src/main/java/com/supwisdom/dlpay/util/ConstantUtil.java
@@ -27,7 +27,8 @@
public static final String FEETYPE_DISCOUNT = "discount";
public static final String[] FEETYPE_DICTS = {"none", "mealer", "discount"}; //联动
-
+ public static final String CARDTYPE_CITIZENCARD = "citizencard";
+ public static final String CARDTYPE_BANKCARD = "bankcard";
/**
* TDictionary的dicttype
* */
diff --git a/src/main/java/com/supwisdom/dlpay/water/service/impl/DeviceServiceImpl.java b/src/main/java/com/supwisdom/dlpay/water/service/impl/DeviceServiceImpl.java
index bc9269c..e41dfae 100644
--- a/src/main/java/com/supwisdom/dlpay/water/service/impl/DeviceServiceImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/water/service/impl/DeviceServiceImpl.java
@@ -206,10 +206,10 @@
@Override
public Map<String, Object> deviceLogin(DeviceLoginParam param) {
- Map<String, Object> result = new HashMap<>();
+ Map<String, Object> result = new HashMap<>(4);
TDevice device = deviceDao.findByDeviceno(param.getDeviceno());
if (device != null) {
- if (device.getDeviceStatus().equals("closed")) {
+ if ("closed".equals(device.getDeviceStatus())) {
result.put("flag", false);
result.put("errorMsg", "本设备已注销,签到失败");
return result;
diff --git a/src/main/kotlin/com/supwisdom/dlpay/water/controller/api_controller.kt b/src/main/kotlin/com/supwisdom/dlpay/water/controller/api_controller.kt
index a68ee5f..e13fdd0 100644
--- a/src/main/kotlin/com/supwisdom/dlpay/water/controller/api_controller.kt
+++ b/src/main/kotlin/com/supwisdom/dlpay/water/controller/api_controller.kt
@@ -1,5 +1,7 @@
package com.supwisdom.dlpay.water.controller
+import com.supwisdom.dlpay.api.bean.JsonResult
+import com.supwisdom.dlpay.api.bean.QueryCardParam
import com.supwisdom.dlpay.api.bean.QueryUserParam
import com.supwisdom.dlpay.framework.ResponseBodyBuilder
import com.supwisdom.dlpay.framework.service.BusinessparaService
@@ -7,6 +9,7 @@
import com.supwisdom.dlpay.framework.util.*
import com.supwisdom.dlpay.paysdk.proxy.UserProxy
import com.supwisdom.dlpay.system.service.UserDataService
+import com.supwisdom.dlpay.util.ConstantUtil
import com.supwisdom.dlpay.water.*
import com.supwisdom.dlpay.water.domain.TCollectdtl
import com.supwisdom.dlpay.water.pay.WaterPayAsyncTask
@@ -112,6 +115,19 @@
return ResponseEntity.ok(ResponseBodyBuilder.create()
.fail(WaterErrorCode.DATA_NOTFOUND_ERROR, "用户消费状态异常"))
}
+ val cardResponse = userProxy.queryCard(QueryCardParam().apply {
+ this.cardno = userInfo.bankcardno
+ this.cardtype = ConstantUtil.CARDTYPE_BANKCARD
+ })
+ if (cardResponse.retcode != 0) {
+ logger.error { "查询卡片[${userInfo.bankcardno}]信息失败:${cardResponse.retmsg}" }
+ return ResponseEntity.ok(ResponseBodyBuilder.create()
+ .fail(WaterErrorCode.DATA_NOTFOUND_ERROR, "银行卡信息异常"))
+ }
+ if (!cardResponse.card.signed) {
+ return ResponseEntity.ok(ResponseBodyBuilder.create()
+ .fail(WaterErrorCode.DATA_NOTFOUND_ERROR, "请签约银行卡"))
+ }
val person = userDataService.savePerson(userInfo)
val localIdentity = userDataService.
getPersonIdentityByThirdUidOrUserid(param.citizenCardno,userInfo.userid)
@@ -327,6 +343,17 @@
if (userInfo.cardstatus != TradeDict.STATUS_NORMAL || userInfo.transstatus != TradeDict.STATUS_NORMAL) {
return ModelAndView("error/500").addObject("errorMsg", "用户消费状态异常")
}
+ val cardResponse = userProxy.queryCard(QueryCardParam().apply {
+ this.cardno = userInfo.bankcardno
+ this.cardtype = ConstantUtil.CARDTYPE_BANKCARD
+ })
+ if (cardResponse.retcode != 0) {
+ logger.error { "查询卡片[${userInfo.bankcardno}]信息失败:${cardResponse.retmsg}" }
+ return ModelAndView("error/500").addObject("errorMsg", "未查询到用户银行卡信息")
+ }
+ if (!cardResponse.card.signed) {
+ return ModelAndView("error/500").addObject("errorMsg", "请先签约银行卡")
+ }
val person = userDataService.savePerson(userInfo)
val localIdentity = userDataService.
getPersonIdentityByThirdUidOrUserid(null,userInfo.userid)