| | |
| | | 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; |
| | |
| | | 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; |
| | | |
| | | /** |
| | | * 红包控制器 |
| | |
| | | |
| | | @Autowired |
| | | private IOrderCrossCityService orderCrossCityService; |
| | | |
| | | @Autowired |
| | | private IOrderLogisticsService orderLogisticsService; |
| | | |
| | | |
| | | /** |
| | |
| | | */ |
| | | @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){ |
| | |
| | | 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(); |
| | |
| | | */ |
| | | @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){ |
| | |
| | | } |
| | | 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){ |
| | |
| | | }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(); |