订单状态和状态日志

时间:2011-06-01 11:55:09

标签: php database database-design e-commerce shopping-cart

我正在开发PHP / MYSQL中的电子商务(在线购物)后端。

我想知道处理订单状态和状态跟踪/日期的最佳方式。

当用户下订单时,tbl_order表上的订单状态将为1(tbl_order.status = 1)。这是最好的方式吗?

以下是订单状态编号:

  • 1 - 新订单
  • 2 - 待定
  • 3 - 已取消
  • 4 - 已完成

当员工在后端登录时,他们可以逐步更改订单状态。

我想跟踪是谁完成的,以及时间,怎么办呢?

2 个答案:

答案 0 :(得分:1)

当前订单状态应按照您的建议存储在订单表中。

但是为了跟踪更改,我建议使用单独的日志表,您可以在其中记录timestamporder_iduser_idold_statusnew_status。这样,您可以随时追溯完整历史记录(与LastUpdate概念相反)。

这个概念可以在订单状态之外进行推广 - 可以通过这种方式跟踪任何字段值更改(尽管许多跟踪日志表的大小会迅速增加)

答案 1 :(得分:0)

这种方法没有任何基本错误。你有一个OrderStatus表来存储它们含义旁边的数字吗?我建议这样做,因为它将允许在将来添加不同的状态,而不用大惊小怪。

关于跟踪更改和时间 - 您通常会有一个“LastUpdated”和“UserId”列,每次修改订单时都会更新(可能使用存储过程来强制执行此操作)。我将这些放在tbl_order表中,以便记录对订单的任何更改。

总的来说,我认为你走的是正确的道路。