好的我有一个预订对象,它存储了预订的事件的所有细节。现在要获得批准的活动,必须由三个不同的用户查看。每次预订时,都应分配这三个。现在,当三个中的任何一个审查预订请求并且给出响应时,必须标记该用户他的响应。
我需要存储以下内容,如
User1 ----> Response & Type & ID
User2 ----> Response & Type & ID
User3 ----> Response & Type & ID
因此,当user1例如审核并接受时,我就这样访问
reservationInstance.approvers.user1.response(true);
只是一个当然的例子,而不是实用的代码。最好的建议是什么?是否可以提供代码进行澄清?我将继续进行自定义
答案 0 :(得分:1)
您的预订不必拥有一个/一组批准者,一个就足够了。既然你提到了:
现在,当三个中的任何一个审核预订请求时,和 给出了响应,必须标记用户他的回复。
预订可以具有“审批者”属性,该属性可以是“类型用户”,用于存储哪个用户已审阅此预留并给出响应。在数据库层中,这可以是User表的外键。
如果您想知道哪个用户(1,2或3)已查看过。只是reservationInstance.getApprover().getUserId()
(假设您的User类具有userId属性。)
修改强>
根据评论说清楚:
你有预订课程:
Reservation:
- Integer id
- User approver
- String content
- List<User> recievers
- String (could be enum) status (created, approved...etc.)
您有用户类
User:
- Integer id
- String name
- String foo
- ...
如果我理解你的要求是正确的:
创建预订实例时,设置了一组用户作为接收者。这意味着,这些用户将收到预订。在你的情况下,可能有3个用户。在这里你发送了电子邮件,传真,短信给他们。
然后,说user2(id = 2),打开它,并批准此预订。 reservation.approver将设置为User对象(id = 2)。此预订的状态(如果有状态要求)将更改为“已批准”或“已回复”......
我不知道你的具体要求是什么,但希望这会有所帮助。