@RestController
class EventController {
@Autowired
private EventJpaRepository eventRepository;
@RequestMapping(value="/allevents", method=RequestMethod.GET)
public List<Event> events() {
return eventRepository.findAll();
}
@RequestMapping(value="/events", method=RequestMethod.GET)
public List<Event> getEventsInRange(@RequestParam(value = "start", required = true) String start,
@RequestParam(value = "end", required = true) String end, @RequestParam(value = "title", required = true) String title) {
Date startDate = null;
Date endDate = null;
SimpleDateFormat inputDateFormat=new SimpleDateFormat("yyyy-MM-dd");
try {
startDate = inputDateFormat.parse(start);
} catch (ParseException e) {
throw new BadDateFormatException("bad start date: " + start);
}
try {
endDate = inputDateFormat.parse(end);
} catch (ParseException e) {
throw new BadDateFormatException("bad end date: " + end);
}
LocalDateTime startDateTime = LocalDateTime.ofInstant(startDate.toInstant(),
ZoneId.systemDefault());
LocalDateTime endDateTime = LocalDateTime.ofInstant(endDate.toInstant(),
ZoneId.systemDefault());
return eventRepository.findByDateBetween(startDateTime, endDateTime);
}
}
@Repository
interface EventJpaRepository extends JpaRepository<Event, Long> {
@Query("select b from Event b where b.start >= ?1 and b.end <= ?2")
public List<Event> findByDateBetween(LocalDateTime start, LocalDateTime end);
}
<script>
document.addEventListener('DOMContentLoaded', function() {
var calendarEl = document.getElementById('calendar');
var calendar = new FullCalendar.Calendar(calendarEl, {
initialView : 'dayGridMonth',
headerToolbar: {
left: 'prev,next today',
center: 'title',
right: 'dayGridMonth,timeGridWeek,timeGridDay'
},
locale: 'it',
editable : false,
eventLimit : true, // allow "more" link when too many events
events : {
url : '/allevents',
type : 'GET',
error : function() {
alert('there was an error while fetching events!');
},
}
});
calendar.render();
});
</script>
您的代码缺少一些东西。现在,查询返回一个时间范围内的所有事件。要将其仅限于登录的用户,您需要将Doctor
表与用户ID联接在查询中。由于不知道会话是如何存储的,也不知道Doctor
表是什么样子,您的查询可能需要进行如下更新:
@Query("select b from Event b join Doctor d on b.doctor_id=d.id where b.doctorId = ?1 AND b.start >= ?2 and b.end <= ?3")
public List<Event> findByDoctorIdAndDateBetween(Long doctorId, LocalDateTime start, LocalDateTime end, String userId);
我还没有测试过,但这应该会让你朝着正确的方向前进。
编辑:对不起,我已经有一段时间没有写JPA了。我已经更新了上面的查询,您将需要一个
@OneToMany(mappedBy="doctorId")
List<Event> events;
@ManyToOne
Long doctorId
使用Firebase.auth(),如果身份验证状态没有改变,如何刷新/重新获取用户? 我有一个使用电话号码进行身份验证的用户。我向点击该链接的用户发送电子邮件验证链接。该链接验证用户电子邮件(更新记录),并显示一个“继续”按钮,该按钮(通过deeplink)返回到应用程序。回到应用后,我想从 Firebase 重新提取用户记录,以便查看用户电子邮件是否已通过验证。我该怎么做?
我的提现记录 功能介绍:推广员获取收益即可申请提现。可选择发放或驳回。 如果你使用的是专业版,此功能则需要开通微信商户平台的企业付款到零钱。 步骤 【财务管理】→【提现管理】→【用户提现记录】。
对用户的识别是构建产品用户画像以及后续分析的关键一步。 identify实现了对产品上注册用户的账号实名制。利用identify接口,您可以把用户的注册账号或其它ID作为对用户的唯一识别,更可以自定义您需要的用户属性完善用户画像。 图例即demo产品中”京北商城“对用户identify后的示例: 我们建议每一个接入诸葛io的客户可以identify你的用户,从而认识它的价值。 一、用户、用户属性
问题内容: 以下是允许用户将数据存储到Firestore中的代码。问题是,登录到该应用程序的所有用户都可以查看上传的数据。我如何才能仅允许当前登录的用户仅存储其帐户的数据? 对于Firebase数据库,我使用以下代码(有效,但不适用于Firestore) FirebaseUser用户= FirebaseAuth.getInstance()。getCurrentUser(); 字符串userId =
我正在使用FireBase实时数据库来设置一个简单的CRUD应用程序。 我正在设置规则,以便只有登录的用户才能写入请求部分。我一定是误会了奥特。uid。 在请求中,我设置了,但我无法写入数据。 我错过了什么?
问题内容: 我想按用户ID显示数据库中的记录。这意味着工作人员必须输入工作人员ID和密码并提出新项目的请求,该请求将保存在数据库中。 该请求工作正常,但是在request.php页面之后,我想显示该工作人员在receive.php中订购的项目。我该怎么办?这是定义表的SQL: 这是receive.php的PHP代码: 我真的希望有人可以检查我的代码。提前致谢。 问题答案: 您可以通过设置会话来做到