首页 > 解决方案 > 如果所有状态都已完成,如何从不同的个人检索状态并将其设置为已完成

问题描述

在本系统中,共有三个用户:admin、负责人、用户

系统流程:

问题:

如何更新主要状态:

标签: phpsql

解决方案


当“负责人”将其状态更新为完成时,您需要检查此投诉 id 的状态是否仍为“未完成”。如果否,您可以将投诉状态更新为“已完成”。

MainComplaint Table
ID | Details | Status     |
1  | Xxxxxx  | Incomplete |

PersonAssign Table
CompaintID | PersonID | Status     |
1         | 1        | Incomplete |
1         | 2        | Incomplete |
1         | 3        | Incomplete |

每当指定人员更新时,都会使用投诉 ID 进行状态检查。

$sql = "UPDATE PersonAssign SET status = 'Completed' 
            WHERE ComplaintID = 1 and PersonID = $logged_user_id";

$sqlCheck = "SELECT status FROM PersonAssign WHERE ComplaintID = 1 and status = 'Incomplete'";
if(number of rows == 0) {
    //means there is no incomplete status
    UPDATE the MainComplain table
}

推荐阅读