| | |
| | | import com.ruoyi.common.core.constant.Constants; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.core.exception.GlobalException; |
| | | import com.ruoyi.common.core.utils.GaoDeMapUtil; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.core.vo.CityInfoVO; |
| | | import com.ruoyi.common.security.service.TokenService; |
| | | import com.ruoyi.order.api.entity.Order; |
| | | import com.ruoyi.order.api.entity.ServeRecord; |
| | |
| | | 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)); |
| | | } |
| | |
| | | @ApiOperation(value = "在线评估", tags = {"用户端-订单"}) |
| | | @ApiImplicitParams({ |
| | | @ApiImplicitParam(value = "回收服务id", name = "orderId", dataType = "Integer", required = true), |
| | | @ApiImplicitParam(value = "所在城市", name = "city", dataType = "String") |
| | | @ApiImplicitParam(value = "所在城市code", name = "city", dataType = "String") |
| | | }) |
| | | 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)) { |
| | | RecoveryServePrice price = recoveryServePriceService.lambdaQuery() |
| | | .eq(RecoveryServePrice::getRecoveryServeId, recoveryServe.getId()) |
| | | .eq(RecoveryServePrice::getCity, city).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())); |
| | | } |
| | | |
| | | /** |
| | |
| | | */ |
| | | @GetMapping("/allowanceMoney") |
| | | @ApiOperation(value = "补充订单津贴金额", tags = {"用户端-订单"}) |
| | | public R<Object> allowanceMoney(@RequestParam("orderId") String orderId, @RequestParam("prizeId") String prizeId) { |
| | | public R<Object> allowanceMoney(@RequestParam("orderId") String orderId, |
| | | @RequestParam("prizeId") String prizeId, |
| | | @RequestParam("serveId") String serveId) { |
| | | Prize data = adminClient.prizeDetail(prizeId).getData(); |
| | | if (null == data) { |
| | | return R.fail("奖品信息获取失败!"); |
| | | return R.fail(adminClient.prizeDetail(prizeId).getMsg()); |
| | | } |
| | | return R.ok(orderClient.supplementAllowance(orderId, data.getPrizeName()).getData()); |
| | | String prizeMoney; |
| | | if (data.getPrizeType() == 1) { |
| | | // 查询服务回收补贴金 |
| | | RecoveryServe recoveryServe = recoveryServeService.getById(serveId); |
| | | prizeMoney = recoveryServe.getRecycleSubsidy().toString(); |
| | | } else { |
| | | prizeMoney = "0"; |
| | | } |
| | | return R.ok(orderClient.supplementAllowance(orderId, prizeMoney).getData()); |
| | | } |
| | | |
| | | @PostMapping("/orderEstimate") |
| | |
| | | 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(); |
| | | } |
| | | |
| | | } |