| | |
| | | import cn.stylefeng.guns.modular.business.dto.MentalTestMyTestTopicDTO; |
| | | import cn.stylefeng.guns.modular.business.dto.MentalTestTopicAndRecordDTO; |
| | | import cn.stylefeng.guns.modular.business.entity.MentalTestRecord; |
| | | import cn.stylefeng.guns.modular.business.entity.MentalTestResult; |
| | | import cn.stylefeng.guns.modular.business.entity.MentalTestTopic; |
| | | import cn.stylefeng.guns.modular.business.entity.OrderMentalTest; |
| | | import cn.stylefeng.guns.modular.business.service.*; |
| | |
| | | } |
| | | |
| | | List<Long> topicIdList = list.stream().map(o -> o.getTopicId()).collect(Collectors.toList()); |
| | | List<MentalTestResult> mentalTestResultAll = mentalTestResultService.list( |
| | | Wrappers.<MentalTestResult>lambdaQuery() |
| | | .eq(MentalTestResult::getUserId, userId) |
| | | .in(MentalTestResult::getTopicId, topicIdList) |
| | | .groupBy(MentalTestResult::getTopicId) |
| | | ); |
| | | List<OrderMentalTest> orderMentalTestAll = orderMentalTestService.list( |
| | | Wrappers.<OrderMentalTest>lambdaQuery() |
| | | .eq(OrderMentalTest::getUserId, userId) |
| | | .eq(OrderMentalTest::getStatusFlag, OrderStatusFlagEnum.PAY_SUCCESS.getCode()) |
| | | .in(OrderMentalTest::getGoodsId, topicIdList) |
| | | .groupBy(OrderMentalTest::getGoodsId) |
| | | ); |
| | | |
| | | return new SuccessResponseData(list.stream().map(o -> { |
| | | // 是否测试 |
| | | o.setTestFlag(mentalTestResultAll.stream().filter(oo -> oo.getTopicId().equals(o.getTopicId())).findFirst().isPresent()); |
| | | |
| | | // 是否购买 |
| | | o.setPayFlag(orderMentalTestAll.stream().filter(oo -> oo.getGoodsId().equals(o.getTopicId())).findFirst().isPresent()); |
| | | // 是否后台创建 |
| | | o.setIsBack(orderMentalTestAll.stream().filter(oo -> oo.getOrderNo().equals(o.getOrderNo()) && oo.getIsBack()).findFirst().map(OrderMentalTest::getIsBack).orElse(false)); |
| | | |
| | | return o; |
| | | }).collect(Collectors.toList())); |