| | |
| | | import com.ruoyi.user.service.OrderService; |
| | | import com.ruoyi.user.service.RecoveryServePriceService; |
| | | import com.ruoyi.user.service.RecoveryServeService; |
| | | import com.ruoyi.user.service.UserService; |
| | | import com.ruoyi.user.vo.OrderDetailVO; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiImplicitParam; |
| | | import io.swagger.annotations.ApiImplicitParams; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.boot.autoconfigure.kafka.KafkaProperties; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.math.BigDecimal; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.Objects; |
| | | import java.util.Optional; |
| | | import java.util.stream.Collectors; |
| | | |
| | |
| | | Map<Integer, String> map = serveList.stream().collect(Collectors.toMap(RecoveryServe::getId, |
| | | mw -> Optional.ofNullable(mw.getCover()).orElse(""))); |
| | | for (Order order : data.getRecords()) { |
| | | |
| | | Integer serveId = order.getServeId(); |
| | | order.setCover(map.get(serveId)); |
| | | } |
| | |
| | | }) |
| | | public R<BigDecimal> estimate(@RequestParam String orderId, String city) { |
| | | Order order = orderClient.detail(orderId).getData(); |
| | | RecoveryServe recoveryServe = recoveryServeService.lambdaQuery() |
| | | .eq(RecoveryServe::getId, order.getServeId()) |
| | | .eq(RecoveryServe::getIsDelete, 0).one(); |
| | | BigDecimal money = recoveryServe.getDefaultPrice(); |
| | | if (StringUtils.isNotBlank(city)) { |
| | | CityInfoVO info = GaoDeMapUtil.getAddressInfo(city).getDatas(); |
| | | RecoveryServePrice price = recoveryServePriceService.lambdaQuery() |
| | | .eq(RecoveryServePrice::getRecoveryServeId, recoveryServe.getId()) |
| | | .eq(RecoveryServePrice::getCityCode, info.getCode()) |
| | | .eq(RecoveryServePrice::getIsDelete, Constants.ZERO).one(); |
| | | if (null != price) { |
| | | money = price.getRecoveryPrice(); |
| | | } |
| | | } |
| | | return R.ok(money); |
| | | // RecoveryServe recoveryServe = recoveryServeService.lambdaQuery() |
| | | // .eq(RecoveryServe::getId, order.getServeId()) |
| | | // .eq(RecoveryServe::getIsDelete, 0).one(); |
| | | // BigDecimal money = recoveryServe.getDefaultPrice(); |
| | | // if (StringUtils.isNotBlank(city)) { |
| | | // CityInfoVO info = GaoDeMapUtil.getAddressInfo(city).getDatas(); |
| | | // RecoveryServePrice price = recoveryServePriceService.lambdaQuery() |
| | | // .eq(RecoveryServePrice::getRecoveryServeId, recoveryServe.getId()) |
| | | // .eq(RecoveryServePrice::getCity, info.getCode()) |
| | | // .eq(RecoveryServePrice::getIsDelete, Constants.ZERO).one(); |
| | | // if (null != price) { |
| | | // money = price.getRecoveryPrice(); |
| | | // } |
| | | // } |
| | | return R.ok(order.getServePrice()); |
| | | } |
| | | |
| | | @GetMapping("/detail") |
| | |
| | | orderDetail.setPhoto(serveRecord.getPhoto()); |
| | | } |
| | | } |
| | | R<String> workPic = adminClient.getWorkPic(order.getServerId()); |
| | | orderDetail.setWorkPic(workPic.getMsg()); |
| | | return R.ok(orderDetail); |
| | | } |
| | | |
| | |
| | | */ |
| | | @GetMapping("/prizeList") |
| | | @ApiOperation(value = "获取奖品列表", tags = {"用户端-订单"}) |
| | | public R<List<Prize>> prizeList() { |
| | | return R.ok(adminClient.prizeList().getData()); |
| | | public R<List<Prize>> prizeList(@RequestParam("serveId") String serveId) { |
| | | return R.ok(adminClient.prizeList(Integer.valueOf(serveId)).getData()); |
| | | } |
| | | |
| | | /** |
| | |
| | | */ |
| | | @GetMapping("/allowance") |
| | | @ApiOperation(value = "抽奖获取津贴", tags = {"用户端-订单"}) |
| | | public R<Object> obtainAllowance() { |
| | | return R.ok(orderService.obtainAllowance(adminClient.prizeList().getData())); |
| | | public R<Object> obtainAllowance(@RequestParam("serveId") String serveId) { |
| | | return R.ok(orderService.obtainAllowance(adminClient.prizeList(Integer.valueOf(serveId)).getData())); |
| | | } |
| | | |
| | | /** |
| | |
| | | } |
| | | String prizeMoney; |
| | | if (data.getPrizeName().contains(Constants.SUBSIDY_MONEY)) { |
| | | prizeMoney = data.getPrizeName().substring(Constants.ONE); |
| | | } else { |
| | | prizeMoney = "0"; |
| | | } |
| | | return R.ok(orderClient.supplementAllowance(orderId, prizeMoney).getData()); |
| | | } |
| | | |
| | | /** |
| | | * 分享获取津贴 |
| | | * |
| | | * @return 奖品列表 |
| | | */ |
| | | @GetMapping("/shareAllowanceMoney") |
| | | @ApiOperation(value = "分享获取津贴", tags = {"用户端-订单"}) |
| | | public R<Object> shareAllowanceMoney(@RequestParam("orderId") String orderId, @RequestParam("prizeId") String prizeId) { |
| | | Prize data = adminClient.prizeDetail(prizeId).getData(); |
| | | if (null == data) { |
| | | return R.fail(adminClient.prizeDetail(prizeId).getMsg()); |
| | | } |
| | | if(Objects.isNull(data.getPrizeType()) || data.getPrizeType() == 2){ |
| | | return R.fail("该津贴为非补贴金类型"); |
| | | } |
| | | String prizeMoney; |
| | | if (data.getPrizeType()==1) { |
| | | prizeMoney = data.getPrizeName().substring(Constants.ONE); |
| | | } else { |
| | | prizeMoney = "0"; |
| | |
| | | return result ? R.ok() : R.fail(); |
| | | } |
| | | |
| | | /** |
| | | * 领取补贴金 |
| | | * |
| | | */ |
| | | @GetMapping("/receivingSubsidies") |
| | | @ApiOperation(value = "领取补贴金", tags = {"用户端-订单-领取补贴金[2.0]"}) |
| | | public R<Object> receivingSubsidies(@RequestParam("serveId") String serveId,@RequestParam("orderId") String orderId) { |
| | | // 查询补贴金 |
| | | RecoveryServe recoveryServe = recoveryServeService.getById(serveId); |
| | | if (Objects.isNull(recoveryServe)) { |
| | | return R.fail("该服务不存在!"); |
| | | } |
| | | orderClient.receiving(orderId,recoveryServe.getRecycleSubsidy()); |
| | | return R.ok(); |
| | | } |
| | | |
| | | } |