重构代码
diff --git a/src/main/java/com/supwisdom/dlpay/api/domain/TPointsTransdtl.java b/src/main/java/com/supwisdom/dlpay/api/domain/TPointsTransdtl.java
index 6e6f572..dba4514 100644
--- a/src/main/java/com/supwisdom/dlpay/api/domain/TPointsTransdtl.java
+++ b/src/main/java/com/supwisdom/dlpay/api/domain/TPointsTransdtl.java
@@ -7,7 +7,7 @@
*/
@Entity
@Table(name = "TB_POINTS_TRANSDTL",
- indexes = {@Index(name = "points_transdtl_idx", columnList = "refno")})
+ indexes = {@Index(name = "points_transdtl_idx", columnList = "billno")})
public class TPointsTransdtl {
@Id
@Column(name="REFNO", nullable = false, length = 32)
diff --git a/src/main/java/com/supwisdom/dlpay/api/domain/TSubjectdtl.java b/src/main/java/com/supwisdom/dlpay/api/domain/TSubjectdtl.java
index 3fd3be2..354db9a 100644
--- a/src/main/java/com/supwisdom/dlpay/api/domain/TSubjectdtl.java
+++ b/src/main/java/com/supwisdom/dlpay/api/domain/TSubjectdtl.java
@@ -8,7 +8,7 @@
@Index(name = "subjdtl_subjno", columnList = "subjno")})
public class TSubjectdtl {
@Id
- @Column(name = "refno", length = 32, nullable = false)
+ @Column(name = "billno", length = 32, nullable = false)
private String refno;
@Column(name = "accdate", length = 8, nullable = false)
diff --git a/src/main/java/com/supwisdom/dlpay/api/domain/TTransactionMain.java b/src/main/java/com/supwisdom/dlpay/api/domain/TTransactionMain.java
index bd4a00f..0a76b94 100644
--- a/src/main/java/com/supwisdom/dlpay/api/domain/TTransactionMain.java
+++ b/src/main/java/com/supwisdom/dlpay/api/domain/TTransactionMain.java
@@ -14,7 +14,7 @@
@Index(name = "transmain_outtrade", unique = true, columnList = "outid, outtradeno")})
public class TTransactionMain {
@Id
- @Column(name = "refno", nullable = false, length = 32)
+ @Column(name = "billno", nullable = false, length = 32)
private String refno;
@Column(name = "accdate", nullable = false, length = 8)
@@ -66,19 +66,19 @@
private String reverseFlag = "none"; // 冲正标识, none - 未冲正, reverse - 被撤销, cancel - 被冲正
@OneToOne(targetEntity = TPersondtl.class, fetch = LAZY, cascade = CascadeType.ALL)
- @JoinColumn(name = "refno", referencedColumnName = "refno")
+ @JoinColumn(name = "billno", referencedColumnName = "billno")
private TPersondtl personDtl;
@OneToOne(targetEntity = TShopdtl.class, fetch = LAZY, cascade = CascadeType.ALL)
- @JoinColumn(name = "refno", referencedColumnName = "refno")
+ @JoinColumn(name = "billno", referencedColumnName = "billno")
private TShopdtl shopDtl;
@OneToOne(targetEntity = TSubjectdtl.class, fetch = LAZY, cascade = CascadeType.ALL)
- @JoinColumn(name = "refno", referencedColumnName = "refno")
+ @JoinColumn(name = "billno", referencedColumnName = "billno")
private TSubjectdtl subjectDtl;
@OneToMany(targetEntity = TDebitCreditDtl.class, fetch = LAZY, cascade = CascadeType.ALL)
- @JoinColumn(name = "refno", referencedColumnName = "refno")
+ @JoinColumn(name = "billno", referencedColumnName = "billno")
private List<TDebitCreditDtl> details;
public String getRefno() {
diff --git a/src/main/java/com/supwisdom/dlpay/water/domain/TTransdtl.java b/src/main/java/com/supwisdom/dlpay/water/domain/TTransdtl.java
index d23adf6..bff8cb7 100644
--- a/src/main/java/com/supwisdom/dlpay/water/domain/TTransdtl.java
+++ b/src/main/java/com/supwisdom/dlpay/water/domain/TTransdtl.java
@@ -1,52 +1,82 @@
package com.supwisdom.dlpay.water.domain;
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.Table;
+import javax.persistence.*;
+import javax.validation.constraints.NotNull;
@Entity
-@Table(name = "tb_transdtl")
+@Table(name = "tb_transdtl",
+ indexes = {@Index(name = "trasndtl_userid", columnList = "userid"),
+ @Index(name = "transdtl_status", columnList = "transdate, status"),
+ @Index(name = "transdtl_acc", columnList = "accdate")})
public class TTransdtl {
@Id
+ @Column(name = "billno", length = 32)
private String billno;
+ @Column(name = "transdate", length = 8)
+ @NotNull
private String transDate;
+ @Column(name = "transtime", length = 6)
+ @NotNull
private String transTime;
+ @Column(length = 8)
+ @NotNull
private String deviceno;
+ @Column(length = 32)
+ @NotNull
private String userid;
+ @Column(name = "bankcardno", length = 32)
private String bankCardNo;
+ @Column(length = 20)
+ @NotNull
private String mode;
+ @Column(precision = 10, scale = 2)
private Double amount;
+ @Column(name = "water_in_100ml", precision = 10)
private Integer waterSumHundredLitre;
+ @Column(length = 16)
+ @NotNull
private String status;
+ @Column(name = "uploadtime", length = 14)
private String uploadTime;
- private Integer authStatus;
+ @Column(name = "accdate", length = 8)
+ private String accdate;
- private Integer uploadStatus;
+ @Column(name = "billno", length = 32)
+ private String refno;
- public Integer getUploadStatus() {
+ @Column(name = "accstatus", length = 10)
+ private String accStatus;
+
+ @Column(name = "authstatus")
+ private Boolean authStatus;
+
+ @Column(name = "uploadstatus")
+ private Boolean uploadStatus;
+
+ public Boolean getUploadStatus() {
return uploadStatus;
}
- public void setUploadStatus(Integer uploadStatus) {
+ public void setUploadStatus(Boolean uploadStatus) {
this.uploadStatus = uploadStatus;
}
- public Integer getAuthStatus() {
+ public Boolean getAuthStatus() {
return authStatus;
}
- public void setAuthStatus(Integer authStatus) {
+ public void setAuthStatus(Boolean authStatus) {
this.authStatus = authStatus;
}
@@ -137,4 +167,28 @@
public void setUploadTime(String uploadTime) {
this.uploadTime = uploadTime;
}
+
+ public String getAccdate() {
+ return accdate;
+ }
+
+ public void setAccdate(String accdate) {
+ this.accdate = accdate;
+ }
+
+ public String getRefno() {
+ return refno;
+ }
+
+ public void setRefno(String refno) {
+ this.refno = refno;
+ }
+
+ public String getAccStatus() {
+ return accStatus;
+ }
+
+ public void setAccStatus(String accStatus) {
+ this.accStatus = accStatus;
+ }
}
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 404ab93..6e06756 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
@@ -162,7 +162,7 @@
@Sign
var refno:String?=null //二选一
@Sign
- var billno:String?=null //二选一 (refno+shopaccno) 传billno时,shopaccno必传
+ var billno:String?=null //二选一 (billno+shopaccno) 传billno时,shopaccno必传
@Sign
var shopaccno: String?=null
diff --git a/src/main/kotlin/com/supwisdom/dlpay/water/api_request_param.kt b/src/main/kotlin/com/supwisdom/dlpay/water/api_request_param.kt
index eca960c..ec0f698 100644
--- a/src/main/kotlin/com/supwisdom/dlpay/water/api_request_param.kt
+++ b/src/main/kotlin/com/supwisdom/dlpay/water/api_request_param.kt
@@ -119,7 +119,7 @@
var deviceno: String = ""
@Sign
- var refno: String = ""
+ var billno: String = ""
override fun checkParam(): Boolean {
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 f779f78..714586f 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
@@ -62,7 +62,7 @@
.success())
}
return ResponseEntity.ok(ResponseBodyBuilder.create()
- .fail(WaterErrorCode.DATA_NOTFOUND_ERROR, "没有编号为" + param.deviceno + "的设备"))
+ .fail(WaterErrorCode.DATA_NOTFOUND_ERROR, "没有编号为${param.deviceno}的设备"))
} catch (ex: Exception) {
return ResponseEntity.ok(ResponseBodyBuilder.create()
.exception(WaterErrorCode.PROCESS_ERROR, ex, "系统出错"))
@@ -91,13 +91,13 @@
amount = 0.0
waterSumHundredLitre = 0
status = TradeDict.DTL_STATUS_INIT
- authStatus = 1
- uploadStatus = 0
+ authStatus = true
+ uploadStatus = false
}
val savedTrans = transdtlService.createNewTransdtl(trans)
- //4. 将流水 refno 和费率信息返回给终端
+ //4. 将流水 billno 和费率信息返回给终端
return ResponseEntity.ok(ResponseBodyBuilder.create()
- .data("refno", savedTrans.billno)
+ .data("billno", savedTrans.billno)
.data("feeamount", feeConfig.amount)
.data("waterlimit", feeConfig.maxWaterLitre)
.data("feeunit", 0)
@@ -120,16 +120,16 @@
amount = 0.0
waterSumHundredLitre = 0
status = TradeDict.DTL_STATUS_INIT
- authStatus = 0
- uploadStatus = 0
+ authStatus = false
+ uploadStatus = false
}
val savedTrans = transdtlService.createNewTransdtl(trans)
//2.将流水号及认证地址返回给终端
//将认证url转为短码
val url = ShortURLUtil.doGetSinaShortUrl(
- "http://172.28.43.20:8080/water/api/confirm?refno=" + savedTrans.billno)
+ "http://172.28.43.20:8080/water/api/confirm?billno=" + savedTrans.billno)
return ResponseEntity.ok(ResponseBodyBuilder.create()
- .data("refno", savedTrans.billno)
+ .data("billno", savedTrans.billno)
.data("url", url)
.data("vaildtime", 180)
.success())
@@ -149,7 +149,7 @@
?: return ResponseEntity.ok(ResponseBodyBuilder.create()
.fail(WaterErrorCode.DATA_NOTFOUND_ERROR, "未查询到该流水号"))
return ResponseEntity.ok(ResponseBodyBuilder.create()
- .data("refno", trans.billno)
+ .data("billno", trans.billno)
.data("authstatus", trans.authStatus)
.data("paystatus", 2)
.data("feeamount", feeConfig.amount)
@@ -181,9 +181,9 @@
@PostMapping("/uploadrecord")
fun transdtlUpload(@RequestBody param: UploadRecordRequest): ResponseEntity<Any> {
- // 1. 根据 refno 查询 transdtl , 并加锁
+ // 1. 根据 billno 查询 transdtl , 并加锁
val dtl = transdtlService.saveDeviceDtlData(param)
- return ResponseEntity.ok(ResponseBodyBuilder.create().data("refno", dtl.billno)
+ return ResponseEntity.ok(ResponseBodyBuilder.create().data("billno", dtl.billno)
.success())
}
}
\ No newline at end of file
diff --git a/src/main/kotlin/com/supwisdom/dlpay/water/service/transdtl_service.kt b/src/main/kotlin/com/supwisdom/dlpay/water/service/transdtl_service.kt
index ef2b1d7..e0645b4 100644
--- a/src/main/kotlin/com/supwisdom/dlpay/water/service/transdtl_service.kt
+++ b/src/main/kotlin/com/supwisdom/dlpay/water/service/transdtl_service.kt
@@ -27,27 +27,27 @@
"交易订单号不存在")
if (record.transtatus == "2") {
dtl.status = TradeDict.DTL_STATUS_FAIL
- }else if (record.transtatus == "1") {
+ } else if (record.transtatus == "1") {
dtl.status = TradeDict.DTL_STATUS_WIP
}
dtl.amount = record.amount / 100.0
dtl.waterSumHundredLitre = record.flowsensors
dtl.uploadTime = record.transdate + record.transtime
- dtl.uploadStatus = 1
+ dtl.uploadStatus = true
transdtlDao.save(dtl)
return dtl
}
- override fun queryTrans(param: QrcodeQueryRequest?): TTransdtl {
- return transdtlDao.findByBillnoAndDeviceno(param!!.refno, param.deviceno)
+ override fun queryTrans(param: QrcodeQueryRequest): TTransdtl {
+ return transdtlDao.findByBillnoAndDeviceno(param.billno, param.deviceno)
}
- override fun userAuth(param: UserAuthRequest?): TTransdtl {
- val dtl = transdtlDao.findById(param!!.refno).orElse(null)
+ override fun userAuth(param: UserAuthRequest): TTransdtl {
+ val dtl = transdtlDao.findById(param.refno).orElse(null)
?: throw TransactionProcessException(WaterErrorCode.DATA_NOTFOUND_ERROR,
"交易订单号不存在")
dtl.userid = param.userid
- dtl.authStatus = 1
+ dtl.authStatus = true
transdtlDao.save(dtl)
return dtl
}