Quellcode durchsuchen

creater->creator

以及
订单和订单流转状态
skyfffire vor 2 Monaten
Ursprung
Commit
d53a0ad7a6

+ 12 - 0
src/main/java/common/model/Order.java

@@ -0,0 +1,12 @@
+package common.model;
+
+import common.model.base.BaseOrder;
+
+/**
+ * Generated by JFinal.
+ */
+@SuppressWarnings("serial")
+public class Order extends BaseOrder<Order> {
+	public static final Order dao = new Order().dao();
+}
+

+ 12 - 0
src/main/java/common/model/OrderLog.java

@@ -0,0 +1,12 @@
+package common.model;
+
+import common.model.base.BaseOrderLog;
+
+/**
+ * Generated by JFinal.
+ */
+@SuppressWarnings("serial")
+public class OrderLog extends BaseOrderLog<OrderLog> {
+	public static final OrderLog dao = new OrderLog().dao();
+}
+

+ 2 - 0
src/main/java/common/model/_MappingKit.java

@@ -18,6 +18,8 @@ public class _MappingKit {
 	public static void mapping(ActiveRecordPlugin arp) {
 		arp.addMapping("t_nft", "id", Nft.class);
 		arp.addMapping("t_nftt", "id", Nftt.class);
+		arp.addMapping("t_order", "id", Order.class);
+		arp.addMapping("t_order_log", "id", OrderLog.class);
 		arp.addMapping("t_role", "id", Role.class);
 		arp.addMapping("t_user", "id", User.class);
 	}

+ 4 - 4
src/main/java/common/model/base/BaseNftt.java

@@ -143,15 +143,15 @@ public abstract class BaseNftt<M extends BaseNftt<M>> extends Model<M> implement
 	/**
 	 * 发布者id
 	 */
-	public void setCreaterId(java.lang.Integer createrId) {
-		set("creater_id", createrId);
+	public void setCreatorId(java.lang.Integer creatorId) {
+		set("creator_id", creatorId);
 	}
 	
 	/**
 	 * 发布者id
 	 */
-	public java.lang.Integer getCreaterId() {
-		return getInt("creater_id");
+	public java.lang.Integer getCreatorId() {
+		return getInt("creator_id");
 	}
 	public void setCreateTime(java.lang.Long createTime) {
 		set("create_time", createTime);

+ 341 - 0
src/main/java/common/model/base/BaseOrder.java

@@ -0,0 +1,341 @@
+package common.model.base;
+
+import com.jfinal.plugin.activerecord.Model;
+import com.jfinal.plugin.activerecord.IBean;
+
+/**
+ * Generated by JFinal, do not modify this file.
+ */
+@SuppressWarnings("serial")
+public abstract class BaseOrder<M extends BaseOrder<M>> extends Model<M> implements IBean {
+	/**
+	 * 主键ID,自增
+	 */
+	public void setId(java.lang.Long id) {
+		set("id", id);
+	}
+	
+	/**
+	 * 主键ID,自增
+	 */
+	public java.lang.Long getId() {
+		return getLong("id");
+	}
+	/**
+	 * 订单唯一编号 (如 UUID, 时间戳+随机数), 业务主键
+	 */
+	public void setOrderSn(java.lang.String orderSn) {
+		set("order_sn", orderSn);
+	}
+	
+	/**
+	 * 订单唯一编号 (如 UUID, 时间戳+随机数), 业务主键
+	 */
+	public java.lang.String getOrderSn() {
+		return getStr("order_sn");
+	}
+	/**
+	 * 用户ID,关联t_user表的主键
+	 */
+	public void setUserId(java.lang.Long userId) {
+		set("user_id", userId);
+	}
+	
+	/**
+	 * 用户ID,关联t_user表的主键
+	 */
+	public java.lang.Long getUserId() {
+		return getLong("user_id");
+	}
+	/**
+	 * NFT商品ID,关联t_nftt表的主键
+	 */
+	public void setNfttId(java.lang.Long nfttId) {
+		set("nftt_id", nfttId);
+	}
+	
+	/**
+	 * NFT商品ID,关联t_nftt表的主键
+	 */
+	public java.lang.Long getNfttId() {
+		return getLong("nftt_id");
+	}
+	/**
+	 * 订单状态:0=已取消, 10=待支付, 20=预购待确认, 30=预购成功, 40=已支付, 50=已发货/已确权, 60=已完成, 70=退款中, 80=退款成功, 90=退款失败
+	 */
+	public void setOrderStatus(java.lang.Integer orderStatus) {
+		set("order_status", orderStatus);
+	}
+	
+	/**
+	 * 订单状态:0=已取消, 10=待支付, 20=预购待确认, 30=预购成功, 40=已支付, 50=已发货/已确权, 60=已完成, 70=退款中, 80=退款成功, 90=退款失败
+	 */
+	public java.lang.Integer getOrderStatus() {
+		return getInt("order_status");
+	}
+	/**
+	 * 订单类型:1=正式购买, 2=预购
+	 */
+	public void setOrderType(java.lang.Integer orderType) {
+		set("order_type", orderType);
+	}
+	
+	/**
+	 * 订单类型:1=正式购买, 2=预购
+	 */
+	public java.lang.Integer getOrderType() {
+		return getInt("order_type");
+	}
+	/**
+	 * 购买数量
+	 */
+	public void setQuantity(java.lang.Integer quantity) {
+		set("quantity", quantity);
+	}
+	
+	/**
+	 * 购买数量
+	 */
+	public java.lang.Integer getQuantity() {
+		return getInt("quantity");
+	}
+	/**
+	 * 购买时的商品单价
+	 */
+	public void setUnitPrice(java.math.BigDecimal unitPrice) {
+		set("unit_price", unitPrice);
+	}
+	
+	/**
+	 * 购买时的商品单价
+	 */
+	public java.math.BigDecimal getUnitPrice() {
+		return getBigDecimal("unit_price");
+	}
+	/**
+	 * 订单总价 (quantity * unit_price)
+	 */
+	public void setTotalPrice(java.math.BigDecimal totalPrice) {
+		set("total_price", totalPrice);
+	}
+	
+	/**
+	 * 订单总价 (quantity * unit_price)
+	 */
+	public java.math.BigDecimal getTotalPrice() {
+		return getBigDecimal("total_price");
+	}
+	/**
+	 * 支付方式:1=支付宝, 2=微信支付, 3=数字货币等
+	 */
+	public void setPaymentMethod(java.lang.Integer paymentMethod) {
+		set("payment_method", paymentMethod);
+	}
+	
+	/**
+	 * 支付方式:1=支付宝, 2=微信支付, 3=数字货币等
+	 */
+	public java.lang.Integer getPaymentMethod() {
+		return getInt("payment_method");
+	}
+	/**
+	 * 支付流水号 (第三方支付返回的交易号)
+	 */
+	public void setPaymentSn(java.lang.String paymentSn) {
+		set("payment_sn", paymentSn);
+	}
+	
+	/**
+	 * 支付流水号 (第三方支付返回的交易号)
+	 */
+	public java.lang.String getPaymentSn() {
+		return getStr("payment_sn");
+	}
+	/**
+	 * 支付完成时间戳 (Unix timestamp)
+	 */
+	public void setPayTime(java.lang.Long payTime) {
+		set("pay_time", payTime);
+	}
+	
+	/**
+	 * 支付完成时间戳 (Unix timestamp)
+	 */
+	public java.lang.Long getPayTime() {
+		return getLong("pay_time");
+	}
+	/**
+	 * 交付状态:0=未交付, 1=已交付, 2=交付失败 (针对实物发货或链上确权转移)
+	 */
+	public void setDeliveryStatus(java.lang.Integer deliveryStatus) {
+		set("delivery_status", deliveryStatus);
+	}
+	
+	/**
+	 * 交付状态:0=未交付, 1=已交付, 2=交付失败 (针对实物发货或链上确权转移)
+	 */
+	public java.lang.Integer getDeliveryStatus() {
+		return getInt("delivery_status");
+	}
+	/**
+	 * 交付或确权完成时间戳
+	 */
+	public void setDeliveryTime(java.lang.Long deliveryTime) {
+		set("delivery_time", deliveryTime);
+	}
+	
+	/**
+	 * 交付或确权完成时间戳
+	 */
+	public java.lang.Long getDeliveryTime() {
+		return getLong("delivery_time");
+	}
+	/**
+	 * NFT铸造状态: 0=未铸造, 1=铸造中, 2=铸造成功, 3=铸造失败, 4=已确权转移
+	 */
+	public void setNftMintStatus(java.lang.Integer nftMintStatus) {
+		set("nft_mint_status", nftMintStatus);
+	}
+	
+	/**
+	 * NFT铸造状态: 0=未铸造, 1=铸造中, 2=铸造成功, 3=铸造失败, 4=已确权转移
+	 */
+	public java.lang.Integer getNftMintStatus() {
+		return getInt("nft_mint_status");
+	}
+	/**
+	 * 退款状态:0=无退款, 1=退款中, 2=退款成功, 3=退款失败
+	 */
+	public void setRefundStatus(java.lang.Integer refundStatus) {
+		set("refund_status", refundStatus);
+	}
+	
+	/**
+	 * 退款状态:0=无退款, 1=退款中, 2=退款成功, 3=退款失败
+	 */
+	public java.lang.Integer getRefundStatus() {
+		return getInt("refund_status");
+	}
+	/**
+	 * 退款金额
+	 */
+	public void setRefundAmount(java.math.BigDecimal refundAmount) {
+		set("refund_amount", refundAmount);
+	}
+	
+	/**
+	 * 退款金额
+	 */
+	public java.math.BigDecimal getRefundAmount() {
+		return getBigDecimal("refund_amount");
+	}
+	/**
+	 * 退款原因说明
+	 */
+	public void setRefundReason(java.lang.String refundReason) {
+		set("refund_reason", refundReason);
+	}
+	
+	/**
+	 * 退款原因说明
+	 */
+	public java.lang.String getRefundReason() {
+		return getStr("refund_reason");
+	}
+	/**
+	 * 订单备注或附加信息
+	 */
+	public void setMemo(java.lang.String memo) {
+		set("memo", memo);
+	}
+	
+	/**
+	 * 订单备注或附加信息
+	 */
+	public java.lang.String getMemo() {
+		return getStr("memo");
+	}
+	/**
+	 * 订单取消时间戳
+	 */
+	public void setCancelTime(java.lang.Long cancelTime) {
+		set("cancel_time", cancelTime);
+	}
+	
+	/**
+	 * 订单取消时间戳
+	 */
+	public java.lang.Long getCancelTime() {
+		return getLong("cancel_time");
+	}
+	/**
+	 * 订单完成或关闭时间戳
+	 */
+	public void setClosedTime(java.lang.Long closedTime) {
+		set("closed_time", closedTime);
+	}
+	
+	/**
+	 * 订单完成或关闭时间戳
+	 */
+	public java.lang.Long getClosedTime() {
+		return getLong("closed_time");
+	}
+	/**
+	 * 订单创建时间戳
+	 */
+	public void setCreateTime(java.lang.Long createTime) {
+		set("create_time", createTime);
+	}
+	
+	/**
+	 * 订单创建时间戳
+	 */
+	public java.lang.Long getCreateTime() {
+		return getLong("create_time");
+	}
+	/**
+	 * 订单最后更新时间戳
+	 */
+	public void setUpdateTime(java.lang.Long updateTime) {
+		set("update_time", updateTime);
+	}
+	
+	/**
+	 * 订单最后更新时间戳
+	 */
+	public java.lang.Long getUpdateTime() {
+		return getLong("update_time");
+	}
+	/**
+	 * 软删除标记:0=未删除, 1=已删除
+	 */
+	public void setIsDeleted(java.lang.Boolean isDeleted) {
+		set("is_deleted", isDeleted);
+	}
+	
+	/**
+	 * 软删除标记:0=未删除, 1=已删除
+	 */
+	public java.lang.Boolean getIsDeleted() {
+		return getBoolean("is_deleted");
+	}
+	
+	public boolean save() {
+		set("create_time", System.currentTimeMillis());
+		
+		return super.save();
+	}
+	
+	public boolean update() {
+		set("update_time", System.currentTimeMillis());
+		
+		return super.update();
+	}
+
+	public boolean delete() {
+		set("is_deleted", 1);
+
+		return super.update();
+	}
+}

+ 133 - 0
src/main/java/common/model/base/BaseOrderLog.java

@@ -0,0 +1,133 @@
+package common.model.base;
+
+import com.jfinal.plugin.activerecord.Model;
+import com.jfinal.plugin.activerecord.IBean;
+
+/**
+ * Generated by JFinal, do not modify this file.
+ */
+@SuppressWarnings("serial")
+public abstract class BaseOrderLog<M extends BaseOrderLog<M>> extends Model<M> implements IBean {
+	/**
+	 * 主键ID,自增
+	 */
+	public void setId(java.lang.Long id) {
+		set("id", id);
+	}
+	
+	/**
+	 * 主键ID,自增
+	 */
+	public java.lang.Long getId() {
+		return getLong("id");
+	}
+	/**
+	 * 关联的订单ID,关联t_order表的主键
+	 */
+	public void setOrderId(java.lang.Long orderId) {
+		set("order_id", orderId);
+	}
+	
+	/**
+	 * 关联的订单ID,关联t_order表的主键
+	 */
+	public java.lang.Long getOrderId() {
+		return getLong("order_id");
+	}
+	/**
+	 * 状态变更前:订单的状态码
+	 */
+	public void setFromStatus(java.lang.Integer fromStatus) {
+		set("from_status", fromStatus);
+	}
+	
+	/**
+	 * 状态变更前:订单的状态码
+	 */
+	public java.lang.Integer getFromStatus() {
+		return getInt("from_status");
+	}
+	/**
+	 * 状态变更后:订单的状态码
+	 */
+	public void setToStatus(java.lang.Integer toStatus) {
+		set("to_status", toStatus);
+	}
+	
+	/**
+	 * 状态变更后:订单的状态码
+	 */
+	public java.lang.Integer getToStatus() {
+		return getInt("to_status");
+	}
+	/**
+	 * 操作人ID (用户ID或管理员ID)
+	 */
+	public void setOperatorId(java.lang.Long operatorId) {
+		set("operator_id", operatorId);
+	}
+	
+	/**
+	 * 操作人ID (用户ID或管理员ID)
+	 */
+	public java.lang.Long getOperatorId() {
+		return getLong("operator_id");
+	}
+	/**
+	 * 操作人类型:1=用户, 2=管理员, 3=系统
+	 */
+	public void setOperatorType(java.lang.Integer operatorType) {
+		set("operator_type", operatorType);
+	}
+	
+	/**
+	 * 操作人类型:1=用户, 2=管理员, 3=系统
+	 */
+	public java.lang.Integer getOperatorType() {
+		return getInt("operator_type");
+	}
+	/**
+	 * 状态变更原因或描述
+	 */
+	public void setChangeReason(java.lang.String changeReason) {
+		set("change_reason", changeReason);
+	}
+	
+	/**
+	 * 状态变更原因或描述
+	 */
+	public java.lang.String getChangeReason() {
+		return getStr("change_reason");
+	}
+	/**
+	 * 日志创建时间戳
+	 */
+	public void setCreateTime(java.lang.Long createTime) {
+		set("create_time", createTime);
+	}
+	
+	/**
+	 * 日志创建时间戳
+	 */
+	public java.lang.Long getCreateTime() {
+		return getLong("create_time");
+	}
+	
+	public boolean save() {
+		set("create_time", System.currentTimeMillis());
+		
+		return super.save();
+	}
+	
+	public boolean update() {
+		set("update_time", System.currentTimeMillis());
+		
+		return super.update();
+	}
+
+	public boolean delete() {
+		set("is_deleted", 1);
+
+		return super.update();
+	}
+}

+ 2 - 2
src/main/java/modules/nftt/NfttController.java

@@ -49,14 +49,14 @@ public class NfttController extends MyController {
 
         Nftt nftt = new Nftt(); // 创建 Model 实例
 
-        // 获取当前用户ID作为 creater_id (需要从Session或LoginInterceptor中获取)
+        // 获取当前用户ID作为 creator_id (需要从Session或LoginInterceptor中获取)
         // 假设你在登录成功后将用户ID存储在Session中,键名为 "user_id"
         String currentUserIdStr = getSessionAttr("user_id");
         if (StrKit.isBlank(currentUserIdStr)) {
             renderJson(MyRet.fail("创建失败: 未获取到用户信息,请重新登录"));
             return;
         }
-        nftt.set("creater_id", new Integer(currentUserIdStr));
+        nftt.set("creator_id", new Integer(currentUserIdStr));
 
         try {
             // ** price (decimal) **

+ 41 - 0
src/main/java/modules/order/OrderController.java

@@ -0,0 +1,41 @@
+package modules.order;
+
+import common.utils.http.MyController;
+
+public class OrderController extends MyController {
+    // 订单状态枚举 (建议定义在单独的类或枚举中)
+    public enum OrderStatus {
+        CANCELED(0, "已取消"),
+        PENDING_PAY(10, "待支付"),
+        PREORDER_PENDING_CONFIRM(20, "预购待确认"), // 预购已支付,等待转换为正式销售
+        PREORDER_SUCCESS(30, "预购成功"), // 预购已成功,等待正式销售
+        PAID(40, "已支付"), // 正式购买已支付,等待发货
+        DELIVERED(50, "已发货/已确权"),
+        COMPLETED(60, "已完成"),
+        REFUNDING(70, "退款中"),
+        REFUNDED(80, "退款成功"),
+        REFUND_FAILED(90, "退款失败");
+
+        public final int code;
+        public final String desc;
+
+        OrderStatus(int code, String desc) {
+            this.code = code;
+            this.desc = desc;
+        }
+    }
+
+    // 订单类型枚举
+    public enum OrderType {
+        FORMAL_PURCHASE(1, "正式购买"),
+        PREORDER(2, "预购");
+
+        public final int code;
+        public final String desc;
+
+        OrderType(int code, String desc) {
+            this.code = code;
+            this.desc = desc;
+        }
+    }
+}

+ 1 - 1
src/test/rest/NfttControllerTest.http

@@ -48,7 +48,7 @@ dl-token: {{dl_token_var}}
   ]
 }
 
-### 【超级管理员】获取nftts列表,当前版本没有搜索条件
+### 【审核管理员、超级管理员】获取nftts列表,当前版本没有搜索条件
 POST {{ baseUrl }}/nftt/nftts
 Content-Type: application/json
 dl-token: {{dl_token_var}}