use of mingzuozhibi.persist.disc.DiscGroup in project mzzb-server by mingzuozhibi.
the class DiscGroupItemsController method dropDiscs.
@Transactional
@PreAuthorize("hasRole('BASIC')")
@DeleteMapping(value = "/api/discGroups/{id}/discs/{discId}", produces = MEDIA_TYPE)
public synchronized String dropDiscs(@PathVariable("id") Long id, @PathVariable("discId") Long discId) {
DiscGroup discGroup = dao.get(DiscGroup.class, id);
if (discGroup == null) {
if (LOGGER.isWarnEnabled()) {
warnRequest("[从列表移除碟片失败][指定的列表Id不存在][Id={}]", id);
}
return errorMessage("指定的列表Id不存在");
}
Disc disc = discGroup.getDiscs().stream().filter(t -> t.getId().equals(discId)).findFirst().orElse(null);
if (disc == null) {
if (LOGGER.isWarnEnabled()) {
warnRequest("[从列表移除碟片失败][指定的碟片Id不存在于列表][Id={}]", discId);
}
return errorMessage("指定的碟片Id不存在于列表");
}
discGroup.getDiscs().remove(disc);
jmsMessage.info("[用户=%s][移除碟片成功][列表=%s][碟片=%s]", getUserName(), discGroup.getTitle(), disc.getLogName());
return objectResult(disc.toJSON());
}
use of mingzuozhibi.persist.disc.DiscGroup in project mzzb-server by mingzuozhibi.
the class DiscGroupController method findAll.
@Transactional
@GetMapping(value = "/api/discGroups", produces = MEDIA_TYPE)
public String findAll(@RequestParam(defaultValue = "false") boolean hasPrivate) {
Criteria criteria = dao.session().createCriteria(DiscGroup.class);
if (!hasPrivate) {
criteria.add(ne("viewType", ViewType.PrivateList));
}
@SuppressWarnings("unchecked") List<DiscGroup> discGroups = criteria.list();
JSONArray array = discGroups.stream().map(this::toJSON).collect(toJSONArray());
return objectResult(array);
}
Aggregations