商户收款码根据手机uid查用户信息
diff --git a/config/application-devel-pg-xkx.properties b/config/application-devel-pg-xkx.properties
index 3f78169..16830f5 100644
--- a/config/application-devel-pg-xkx.properties
+++ b/config/application-devel-pg-xkx.properties
@@ -8,15 +8,16 @@
# Postgresql settings
spring.datasource.platform=postgresql
spring.datasource.url=jdbc:postgresql://localhost:15432/payapi
-spring.datasource.username=admin
+spring.datasource.username=supwisdom
spring.datasource.password=123456
database.dbtype=postgresql
logging.level.org.hibernate.SQL=ERROR
# Redis settings
spring.redis.host=localhost
-spring.redis.port=16379
-spring.redis.password=kingstar
+spring.redis.port=6379
+spring.redis.password=
+spring.redis.database=0
# jwt settings
jwt.secret=Zj5taLomEbrM0lk+NMQZbHfSxaDU1wekjT+kiC3YzDw=
# timeout seconds
@@ -24,14 +25,26 @@
# user password
auth.password.bcrypt.seed=
security.request.sign=false
-##################################################
+###################### dev ############################
## quartz task scheduler
shopbalance.updater.cron=-
+download.ynrcc.chkfile.cron =-
+query.third.transdtl.result.cron=-
+dayend.settletask.cron=-
+payapi.sourcetype.checker.scheduler=-
+citizencard.dolosstask.cron=-
+send.delay.notice.task.cron=-
+points.outdate.cron=-
+points.consume.cron=-
+##################################################
#download.ynrcc.chkfile.cron =3 0/2 * * * ?
#query.third.transdtl.result.cron=7 0/1 * * * ?
#dayend.settletask.cron=0 0/2 * * * ?
#payapi.sourcetype.checker.scheduler=0 0/2 * * * ?
-citizencard.dolosstask.cron=3 0/1 * * * ?
+#citizencard.dolosstask.cron=3 0/1 * * * ?
+#send.delay.notice.task.cron=29 0/1 * * * ?
+#points.outdate.cron=0 0 0 * * ?
+#points.consume.cron=0 0 0 * * ?
#############################################
spring.cloud.consul.enabled=false
spring.cloud.consul.host=172.28.201.70
@@ -42,24 +55,24 @@
resttemplate.proxy.port=8087
#============== kafka ===================
-# 指定kafka 代理地址,可以多个
+# \u6307\u5B9Akafka \u4EE3\u7406\u5730\u5740\uFF0C\u53EF\u4EE5\u591A\u4E2A
#spring.kafka.bootstrap-servers=172.28.201.101:9192
#=============== provider =======================
spring.kafka.producer.retries=3
-# 每次批量发送消息的数量
+# \u6BCF\u6B21\u6279\u91CF\u53D1\u9001\u6D88\u606F\u7684\u6570\u91CF
spring.kafka.producer.batch-size=16384
spring.kafka.producer.buffer-memory=33554432
-# 指定消息key和消息体的编解码方式
+# \u6307\u5B9A\u6D88\u606Fkey\u548C\u6D88\u606F\u4F53\u7684\u7F16\u89E3\u7801\u65B9\u5F0F
spring.kafka.producer.key-serializer=org.apache.kafka.common.serialization.StringSerializer
spring.kafka.producer.value-serializer=org.apache.kafka.common.serialization.StringSerializer
#===============kafka consumer =======================
spring.kafka.listen.auto.start=false
-# 指定默认消费者group id
+# \u6307\u5B9A\u9ED8\u8BA4\u6D88\u8D39\u8005group id
spring.kafka.consumer.group-id=epaymessager1
spring.kafka.consumer.auto-offset-reset=earliest
spring.kafka.consumer.enable-auto-commit=true
spring.kafka.consumer.auto-commit-interval=100
-# 指定消息key和消息体的编解码方式
+# \u6307\u5B9A\u6D88\u606Fkey\u548C\u6D88\u606F\u4F53\u7684\u7F16\u89E3\u7801\u65B9\u5F0F
spring.kafka.consumer.key-deserializer=org.apache.kafka.common.serialization.StringDeserializer
spring.kafka.consumer.value-deserializer=org.apache.kafka.common.serialization.StringDeserializer
diff --git a/payapi-sdk/src/main/java/com/supwisdom/dlpay/paysdk/proxy/UserProxy.java b/payapi-sdk/src/main/java/com/supwisdom/dlpay/paysdk/proxy/UserProxy.java
index ac510c5..329c29e 100644
--- a/payapi-sdk/src/main/java/com/supwisdom/dlpay/paysdk/proxy/UserProxy.java
+++ b/payapi-sdk/src/main/java/com/supwisdom/dlpay/paysdk/proxy/UserProxy.java
@@ -75,4 +75,7 @@
@PostMapping("/api/user/consumetask")
ApiResponse consumeTask(@RequestParam("userid") String userid);
+
+ @PostMapping("/api/user/queryCitizenCard")
+ DoorQrcodeResponse queryCitizenCard(@RequestParam("uid") String uid);
}
diff --git a/payapi/src/main/java/com/supwisdom/dlpay/system/service/impl/UserDataServiceImpl.java b/payapi/src/main/java/com/supwisdom/dlpay/system/service/impl/UserDataServiceImpl.java
index e493e5e..5a661b6 100644
--- a/payapi/src/main/java/com/supwisdom/dlpay/system/service/impl/UserDataServiceImpl.java
+++ b/payapi/src/main/java/com/supwisdom/dlpay/system/service/impl/UserDataServiceImpl.java
@@ -313,7 +313,7 @@
if (!StringUtil.isEmpty(cardList)) throw new WebCheckException("物理卡号已经存在!");
TPerson person = personDao.findByIdentity(idtype.trim(), idno.trim());
- if (null != person && username.trim().equals(person.getName()))
+ if (null != person && !username.trim().equals(person.getName()))
throw new WebCheckException("证件号对应的用户已经存在,且姓名不匹配!");
SystemDateTime dt = systemUtilService.getSysdatetime();
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 da943d3..b794c2a 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
@@ -427,4 +427,19 @@
.fail(400,"未完成首次消费任务"))
}
}
+
+ /**
+ * 根据手机用户uid查询市民卡信息
+ * */
+ @PostMapping("/queryCitizenCard")
+ fun queryCitizenCard(uid: String): ResponseEntity<Any> {
+ val ret = mobileApiService.findCardInfoByMobileUid(uid)
+ return if (ret.retcode == 0) {
+ ResponseEntity.ok(ResponseBodyBuilder.create()
+ .success(ret, "成功"))
+ } else {
+ ResponseEntity.ok(ResponseBodyBuilder.create()
+ .fail(ret.retcode, ret.retmsg))
+ }
+ }
}
diff --git a/payapi/src/main/kotlin/com/supwisdom/dlpay/mobile/service/MobileApiService.kt b/payapi/src/main/kotlin/com/supwisdom/dlpay/mobile/service/MobileApiService.kt
index 600f469..3d029aa 100644
--- a/payapi/src/main/kotlin/com/supwisdom/dlpay/mobile/service/MobileApiService.kt
+++ b/payapi/src/main/kotlin/com/supwisdom/dlpay/mobile/service/MobileApiService.kt
@@ -1,6 +1,7 @@
package com.supwisdom.dlpay.mobile.service
import com.supwisdom.dlpay.api.bean.BaseResp
+import com.supwisdom.dlpay.api.bean.DoorQrcodeResponse
import com.supwisdom.dlpay.api.bean.SignBxyParam
import com.supwisdom.dlpay.api.domain.TCard
import com.supwisdom.dlpay.api.domain.TUserSecret
@@ -33,4 +34,6 @@
fun findCardByUseridAndCardphyid(userid: String, cardtype: String, cardphyid: String?): TCard?
fun findUserSecretByUid(uid:String):TUserSecret?
+
+ fun findCardInfoByMobileUid(uid: String): DoorQrcodeResponse
}
\ No newline at end of file
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 e5e6ec6..de74d84 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
@@ -2,8 +2,10 @@
import com.mascloud.sdkclient.Client
import com.supwisdom.dlpay.api.bean.BaseResp
+import com.supwisdom.dlpay.api.bean.DoorQrcodeResponse
import com.supwisdom.dlpay.api.bean.SignBxyParam
import com.supwisdom.dlpay.api.dao.CardDao
+import com.supwisdom.dlpay.api.dao.PersonDao
import com.supwisdom.dlpay.api.dao.UserSecretDao
import com.supwisdom.dlpay.api.domain.TCard
import com.supwisdom.dlpay.api.domain.TUserSecret
@@ -29,6 +31,9 @@
lateinit var cardDao: CardDao
@Autowired
+ lateinit var personDao: PersonDao
+
+ @Autowired
lateinit var pagesDao: PagesDao
@Autowired
@@ -213,4 +218,49 @@
override fun findUserSecretByUid(uid: String): TUserSecret? {
return userSecretDao.getByUid(uid)
}
+
+ override fun findCardInfoByMobileUid(uid: String): DoorQrcodeResponse {
+ val resp = DoorQrcodeResponse()
+ val mobileUser = userSecretDao.getByUid(uid)
+ if (null == mobileUser) {
+ resp.retcode = 1
+ resp.retmsg = "用户不存在!"
+ return resp
+ }
+ val person = personDao.findByUserid(mobileUser.userid)
+ if (null == person) {
+ resp.retcode = 1
+ resp.retmsg = "用户不存在!"
+ return resp
+ }
+ val bankCard = cardDao.findCardByUseridAndCardtype(person.userid, ConstantUtil.CARDTYPE_BANKCARD)
+ if (null == bankCard) {
+ resp.retcode = 1
+ resp.retmsg = "用户未绑定银行卡!"
+ return resp
+ }
+ val cityCard = cardDao.findBankcardByCitizencard(bankCard.userid, ConstantUtil.CARDTYPE_CITIZENCARD, bankCard.cardphyid)
+ if (null == cityCard) {
+ resp.retcode = 1
+ resp.retmsg = "用户市民卡信息错误!"
+ return resp
+ }
+
+ resp.retcode = 0
+ resp.retmsg = "OK"
+ resp.userid = person.userid
+ resp.username = person.name
+ resp.sex = person.sex
+ resp.idtype = person.idtype
+ resp.idno = person.idno
+ resp.phone = person.mobile
+
+ resp.citycardno = cityCard.cardno
+ resp.cardphyid = cityCard.cardphyid
+ resp.expiredate = cityCard.expiredate
+ resp.cardstatus = cityCard.status
+ resp.transstatus = cityCard.transStatus
+ resp.bankcardno = bankCard.cardno
+ return resp
+ }
}
\ No newline at end of file