|
|
@@ -1,6 +1,7 @@
|
|
|
package com.izouma.nineth.web;
|
|
|
|
|
|
import com.izouma.nineth.config.MetaConstants;
|
|
|
+import com.izouma.nineth.domain.MetaProp;
|
|
|
import com.izouma.nineth.domain.MetaTask;
|
|
|
import com.izouma.nineth.dto.MetaRestResult;
|
|
|
import com.izouma.nineth.dto.PageQuery;
|
|
|
@@ -8,6 +9,7 @@ import com.izouma.nineth.enums.MetaAwardTypeEnum;
|
|
|
import com.izouma.nineth.enums.MetaTaskType;
|
|
|
import com.izouma.nineth.exception.BusinessException;
|
|
|
import com.izouma.nineth.repo.CollectionRepo;
|
|
|
+import com.izouma.nineth.repo.MetaPropRepo;
|
|
|
import com.izouma.nineth.repo.MetaTaskRepo;
|
|
|
import com.izouma.nineth.repo.MetaTaskToUserRepo;
|
|
|
import com.izouma.nineth.service.MetaTaskService;
|
|
|
@@ -21,18 +23,22 @@ import javax.servlet.http.HttpServletResponse;
|
|
|
import java.io.IOException;
|
|
|
import java.util.Arrays;
|
|
|
import java.util.List;
|
|
|
+import java.util.Objects;
|
|
|
|
|
|
@RestController
|
|
|
@RequestMapping("/metaTask")
|
|
|
@AllArgsConstructor
|
|
|
public class MetaTaskController extends BaseController {
|
|
|
private MetaTaskService metaTaskService;
|
|
|
+
|
|
|
private MetaTaskRepo metaTaskRepo;
|
|
|
|
|
|
private MetaTaskToUserRepo metaTaskToUserRepo;
|
|
|
|
|
|
private CollectionRepo collectionRepo;
|
|
|
|
|
|
+ private MetaPropRepo metaPropRepo;
|
|
|
+
|
|
|
//@PreAuthorize("hasRole('ADMIN')")
|
|
|
@PostMapping("/save")
|
|
|
public MetaTask save(@RequestBody MetaTask record) {
|
|
|
@@ -95,6 +101,15 @@ public class MetaTaskController extends BaseController {
|
|
|
@GetMapping("/{userId}/{channelId}/canGet")
|
|
|
public MetaRestResult<List<MetaTask>> canGet(@PathVariable Long userId, @PathVariable Long channelId) {
|
|
|
List<MetaTask> metaTasks = metaTaskRepo.canGet(userId, channelId);
|
|
|
+ metaTasks.forEach(metaTask -> {
|
|
|
+ if (MetaAwardTypeEnum.META_PROP.equals(metaTask.getAwardType()) && Objects.nonNull(metaTask.getMetaPropId())) {
|
|
|
+ MetaProp metaProp = metaPropRepo.findByIdAndDel(metaTask.getMetaPropId(), false);
|
|
|
+ if (Objects.isNull(metaProp)) {
|
|
|
+ throw new BusinessException(String.format("道具[%S]不存在!", metaTask.getMetaPropId()));
|
|
|
+ }
|
|
|
+ metaTask.setMetaProp(metaProp);
|
|
|
+ }
|
|
|
+ });
|
|
|
return MetaRestResult.returnSuccess(metaTasks);
|
|
|
}
|
|
|
|