From 2d3b7304911a393e73ec0dd48712f22ddfa8053a Mon Sep 17 00:00:00 2001 From: zhibing.pu <393733352@qq.com> Date: 星期五, 19 四月 2024 17:55:11 +0800 Subject: [PATCH] 新增加功能 --- UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/RedEnvelopeController.java | 51 ++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 40 insertions(+), 11 deletions(-) diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/RedEnvelopeController.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/RedEnvelopeController.java index b3ecfe9..62416fd 100644 --- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/RedEnvelopeController.java +++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/RedEnvelopeController.java @@ -1,12 +1,17 @@ package com.stylefeng.guns.modular.api; +import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.stylefeng.guns.modular.crossCity.server.IOrderCrossCityService; +import com.stylefeng.guns.modular.smallLogistics.server.IOrderLogisticsService; import com.stylefeng.guns.modular.specialTrain.server.IOrderPrivateCarService; +import com.stylefeng.guns.modular.system.model.UserRedPacketRecord; import com.stylefeng.guns.modular.system.service.IUserInfoService; import com.stylefeng.guns.modular.system.service.IUserRedPacketRecordService; import com.stylefeng.guns.modular.system.util.ResultUtil; import com.stylefeng.guns.modular.system.warpper.BaseWarpper; +import com.stylefeng.guns.modular.system.warpper.MyRedEnvelope; +import com.stylefeng.guns.modular.system.warpper.TravelRecordListWarpper; import com.stylefeng.guns.modular.system.warpper.TravelRecordWarpper; import com.stylefeng.guns.modular.taxi.service.IOrderTaxiService; import io.swagger.annotations.Api; @@ -20,9 +25,12 @@ import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.HttpServletRequest; +import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; import java.util.Map; +import java.util.Queue; +import java.util.stream.Collectors; /** * 红包控制器 @@ -46,6 +54,9 @@ @Autowired private IOrderCrossCityService orderCrossCityService; + + @Autowired + private IOrderLogisticsService orderLogisticsService; /** @@ -57,13 +68,13 @@ */ @ResponseBody @PostMapping("/queryMyRedEnvelope") - @ApiOperation(value = "获取红包列表", tags = {"用户端-个人中心"}, notes = "") + @ApiOperation(value = "获取红包列表【2.0】", tags = {"用户端-个人中心"}, notes = "") @ApiImplicitParams({ @ApiImplicitParam(value = "页码(首页1)", name = "pageNum", required = true, dataType = "int"), @ApiImplicitParam(value = "页条数", name = "size", required = true, dataType = "int"), @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") }) - public ResultUtil<List<BaseWarpper>> queryMyRedEnvelope(Integer pageNum, Integer size, HttpServletRequest request){ + public ResultUtil<MyRedEnvelope> queryMyRedEnvelope(Integer pageNum, Integer size, HttpServletRequest request){ try { Integer uid = userInfoService.getUserIdFormRedis(request); if(null == uid){ @@ -76,9 +87,18 @@ baseWarpper.setId(null != map.get("id") ? Integer.valueOf(String.valueOf(map.get("id"))) : 0); baseWarpper.setAmount(null != map.get("money") ? Double.valueOf(String.valueOf(map.get("money"))) : 0); baseWarpper.setName(null != map.get("name") ? String.valueOf(map.get("name")) : ""); + baseWarpper.setContent(null != map.get("insertTime") ? String.valueOf(map.get("insertTime")) : ""); baseWarppers.add(baseWarpper); } - return ResultUtil.success(baseWarppers); + MyRedEnvelope myRedEnvelope = new MyRedEnvelope(); + myRedEnvelope.setList(baseWarppers); + List<UserRedPacketRecord> userRedPacketRecords = userRedPacketRecordService.selectList(new EntityWrapper<UserRedPacketRecord>().eq("userId", uid).ne("state", 0)); + List<Double> collect = userRedPacketRecords.stream().map(UserRedPacketRecord::getMoney).collect(Collectors.toList()); + double sum = collect.stream().mapToDouble(Double::doubleValue).sum(); + myRedEnvelope.setTotalAmount(sum); + double sum1 = userRedPacketRecords.stream().filter(v -> v.getRemainingAmount().compareTo(0D) > 0).map(UserRedPacketRecord::getRemainingAmount).mapToDouble(Double::doubleValue).sum(); + myRedEnvelope.setRemainingAmount(sum1); + return ResultUtil.success(myRedEnvelope); }catch (Exception e){ e.printStackTrace(); return ResultUtil.runErr(); @@ -95,13 +115,13 @@ */ @ResponseBody @PostMapping("/queryRedEnvelope") - @ApiOperation(value = "获取红包使用记录", tags = {"用户端-个人中心"}, notes = "") + @ApiOperation(value = "获取红包使用记录【2.0】", tags = {"用户端-个人中心"}, notes = "") @ApiImplicitParams({ @ApiImplicitParam(value = "页码(首页1)", name = "pageNum", required = true, dataType = "int"), @ApiImplicitParam(value = "页条数", name = "size", required = true, dataType = "int"), @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") }) - public ResultUtil<List<TravelRecordWarpper>> queryRedEnvelope(Integer language, Integer pageNum, Integer size, HttpServletRequest request){ + public ResultUtil<TravelRecordWarpper> queryRedEnvelope(Integer language, Integer pageNum, Integer size, HttpServletRequest request){ try { Integer uid = userInfoService.getUserIdFormRedis(request); if(null == uid){ @@ -109,12 +129,18 @@ } pageNum = (pageNum - 1) * size; List<Map<String, Object>> list = orderPrivateCarService.queryRedEnvelope(language, uid);//专车 - List<Map<String, Object>> list1 = orderTaxiService.queryRedEnvelope(language, uid);//出租车 - List<Map<String, Object>> list2 = orderCrossCityService.queryRedEnvelope(language, uid);//跨城 +// List<Map<String, Object>> list1 = orderTaxiService.queryRedEnvelope(language, uid);//出租车 +// List<Map<String, Object>> list2 = orderCrossCityService.queryRedEnvelope(language, uid);//跨城 +// list.addAll(list1); +// list.addAll(list2); + List<Map<String, Object>> list1 = orderLogisticsService.queryRedEnvelope(language, uid); list.addAll(list1); - list.addAll(list2); - - List<TravelRecordWarpper> orderWarpper = TravelRecordWarpper.getTravelRecordWarpper(list); + + List<TravelRecordListWarpper> orderWarpper = TravelRecordListWarpper.getTravelRecordWarpper(list); + BigDecimal toal = BigDecimal.ZERO; + for (TravelRecordListWarpper travelRecordListWarpper : orderWarpper) { + toal = toal.add(new BigDecimal(travelRecordListWarpper.getMoney())); + } //分页 if(orderWarpper.size() >= (pageNum + 1) * size){ @@ -124,7 +150,10 @@ }else{ orderWarpper = new ArrayList<>(); } - return ResultUtil.success(orderWarpper); + TravelRecordWarpper travelRecordWarpper = new TravelRecordWarpper(); + travelRecordWarpper.setList(orderWarpper); + travelRecordWarpper.setTotal(toal.doubleValue()); + return ResultUtil.success(travelRecordWarpper); }catch (Exception e){ e.printStackTrace(); return ResultUtil.runErr(); -- Gitblit v1.7.1