This commit is contained in:
雷欧(林平凡)
2025-03-01 19:11:00 +08:00
parent 765abc5889
commit a394f7f268
4 changed files with 339 additions and 5 deletions

View File

@@ -0,0 +1,259 @@
package cn.van.business.model.jd;
import jakarta.persistence.*;
import java.util.Date;
/**
* 实体类,用于存储商品订单信息。
*/
@Entity
@Table(name = "product_order")
public class ProductOrder {
/**
* 主键自增ID。
*/
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private Long id;
/**
* 商品名称。
*/
@Column(name = "sku_name")
private String skuName;
/**
* 商品类型。
*/
@Column(name = "sku_type")
private String skuType;
/**
* 订单号。
*/
@Column(name = "order_id")
private String orderId;
/**
* 下单时间。
*/
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "order_time")
private Date orderTime;
/**
* 下单账号。
*/
@Column(name = "order_account")
private String orderAccount;
/**
* 是否晒图登记。
*/
@Column(name = "is_reviewed")
private Boolean isReviewed;
/**
* 晒图时间。
*/
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "review_time")
private Date reviewTime;
/**
* 是否返现到账。
*/
@Column(name = "is_cashback_received")
private Boolean isCashbackReceived;
/**
* 到账时间。
*/
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "cashback_time")
private Date cashbackTime;
// Getters and Setters
/**
* 获取主键ID。
*
* @return 主键ID
*/
public Long getId() {
return id;
}
/**
* 设置主键ID。
*
* @param id 主键ID
*/
public void setId(Long id) {
this.id = id;
}
/**
* 获取商品名称。
*
* @return 商品名称
*/
public String getSkuName() {
return skuName;
}
/**
* 设置商品名称。
*
* @param skuName 商品名称
*/
public void setSkuName(String skuName) {
this.skuName = skuName;
}
/**
* 获取商品类型。
*
* @return 商品类型
*/
public String getSkuType() {
return skuType;
}
/**
* 设置商品类型。
*
* @param skuType 商品类型
*/
public void setSkuType(String skuType) {
this.skuType = skuType;
}
/**
* 获取订单号。
*
* @return 订单号
*/
public String getOrderId() {
return orderId;
}
/**
* 设置订单号。
*
* @param orderId 订单号
*/
public void setOrderId(String orderId) {
this.orderId = orderId;
}
/**
* 获取下单时间。
*
* @return 下单时间
*/
public Date getOrderTime() {
return orderTime;
}
/**
* 设置下单时间。
*
* @param orderTime 下单时间
*/
public void setOrderTime(Date orderTime) {
this.orderTime = orderTime;
}
/**
* 获取下单账号。
*
* @return 下单账号
*/
public String getOrderAccount() {
return orderAccount;
}
/**
* 设置下单账号。
*
* @param orderAccount 下单账号
*/
public void setOrderAccount(String orderAccount) {
this.orderAccount = orderAccount;
}
/**
* 获取是否晒图登记。
*
* @return 是否晒图登记
*/
public Boolean getIsReviewed() {
return isReviewed;
}
/**
* 设置是否晒图登记。
*
* @param isReviewed 是否晒图登记
*/
public void setIsReviewed(Boolean isReviewed) {
this.isReviewed = isReviewed;
}
/**
* 获取晒图时间。
*
* @return 晒图时间
*/
public Date getReviewTime() {
return reviewTime;
}
/**
* 设置晒图时间。
*
* @param reviewTime 晒图时间
*/
public void setReviewTime(Date reviewTime) {
this.reviewTime = reviewTime;
}
/**
* 获取是否返现到账。
*
* @return 是否返现到账
*/
public Boolean getIsCashbackReceived() {
return isCashbackReceived;
}
/**
* 设置是否返现到账。
*
* @param isCashbackReceived 是否返现到账
*/
public void setIsCashbackReceived(Boolean isCashbackReceived) {
this.isCashbackReceived = isCashbackReceived;
}
/**
* 获取到账时间。
*
* @return 到账时间
*/
public Date getCashbackTime() {
return cashbackTime;
}
/**
* 设置到账时间。
*
* @param cashbackTime 到账时间
*/
public void setCashbackTime(Date cashbackTime) {
this.cashbackTime = cashbackTime;
}
}

View File

@@ -0,0 +1,32 @@
package cn.van.business.model.jd;
import jakarta.persistence.*;
import java.util.Set;
/**
* sku对应的商品信息
*/
@Entity
@Table(name = "sku_Info")
public class SkuInfo {
/**
* 主键自增ID。
*/
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private Long id;
/**
* 商品类型名称。
*/
@Column(name = "type_name", unique = true, nullable = false)
private String typeName;
@Column(name = "sku", unique = true, nullable = false)
private String sku;
}

View File

@@ -0,0 +1,34 @@
package cn.van.business.model.jd;
import jakarta.persistence.*;
import java.util.Set;
/**
* 实体类,用于存储商品类型信息。
*/
@Entity
@Table(name = "sku_type")
public class SkuType {
/**
* 主键自增ID。
*/
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private Long id;
/**
* 商品类型名称。
*/
@Column(name = "type_name", unique = true, nullable = false)
private String typeName;
/**
* 与该商品类型关联的商品ID集合。
*/
@OneToMany(mappedBy = "sku_id", cascade = CascadeType.ALL, orphanRemoval = true)
private Set<ProductOrder> productOrders;
}

View File

@@ -1165,7 +1165,7 @@ public void sendOrderToWxByOrderDefault(String order, String fromWxid) {
logger.debug("Deleted timeout state for key: {}", key);
}
} catch (Exception e) {
logger.error("Error parsing interaction state: " + e.getMessage());
logger.error("Error parsing interaction state: {}", e.getMessage());
}
});
}
@@ -1189,7 +1189,7 @@ public void sendOrderToWxByOrderDefault(String order, String fromWxid) {
state = new UserInteractionState();
}
} catch (Exception e) {
logger.error("Error parsing interaction state: " + e.getMessage());
logger.error("Error parsing interaction state: {}", e.getMessage());
state = new UserInteractionState();
}
}
@@ -1198,7 +1198,13 @@ public void sendOrderToWxByOrderDefault(String order, String fromWxid) {
switch (state.getCurrentState()) {
case "INIT":
if ("消毒柜".equals(message)) {
wxUtil.sendTextMessage(fromWxid, "1查询消毒柜订单2输入新的订单3修改订单", 1, fromWxid);
//1查询消毒柜订单2输入新的订单3修改订单
String sb = """
请选择您要执行的操作:
1查询消毒柜订单
2输入新的订单
3修改订单""";
wxUtil.sendTextMessage(fromWxid, sb, 1, fromWxid);
state.setCurrentState("DISINFECTANT_CABINET");
logger.debug("User {} entered DISINFECTANT_CABINET state", fromWxid);
}
@@ -1207,7 +1213,10 @@ public void sendOrderToWxByOrderDefault(String order, String fromWxid) {
switch (message) {
case "1":
// 查询消毒柜订单的逻辑
wxUtil.sendTextMessage(fromWxid, "查询消毒柜订单的逻辑", 1, fromWxid);
String sb = "";
wxUtil.sendTextMessage(fromWxid, sb, 1, fromWxid);
state.setCurrentState("INIT");
logger.debug("User {} queried disinfectant cabinet orders", fromWxid);
break;
@@ -1240,7 +1249,7 @@ public void sendOrderToWxByOrderDefault(String order, String fromWxid) {
redisTemplate.opsForValue().set(key, objectMapper.writeValueAsString(state), TIMEOUT_MINUTES, TimeUnit.MINUTES);
logger.debug("Saved interaction state for user {}: {}", fromWxid, state);
} catch (Exception e) {
logger.error("Error saving interaction state: " + e.getMessage());
logger.error("Error saving interaction state: {}", e.getMessage());
}
}