From a02a6e0f7b7404e87b6347a5a7f33b431645634e Mon Sep 17 00:00:00 2001 From: nickchange <126672920+nickchange@users.noreply.github.com> Date: 星期三, 11 十月 2023 15:35:47 +0800 Subject: [PATCH] 10.12 --- cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java | 183 ++++++++++++++++++++++++++++++++++++++------- 1 files changed, 155 insertions(+), 28 deletions(-) diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java index ebb83f8..6569c12 100644 --- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java +++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java @@ -12,7 +12,11 @@ import com.dsh.activity.feignclient.other.StoreClient; import com.dsh.activity.feignclient.other.model.Store; import com.dsh.activity.feignclient.other.model.StoreDetailOfCourse; +import com.dsh.activity.model.CoachChangeStateVO; +import com.dsh.activity.model.PointMerchandiseIncomeVo; import com.dsh.activity.model.PointMerchandiseVo; +import com.dsh.activity.model.WriteOffDTO; +import com.dsh.activity.model.QueryDataFee; import com.dsh.activity.model.request.*; import com.dsh.activity.model.response.GoodsInfoOneVo; import com.dsh.activity.model.response.StoreVos; @@ -77,6 +81,92 @@ @Resource private PointsMerchandiseCityService pmdsCityService; + + @Autowired + private UserPointsMerchandiseService userPointsMerchandiseService; + + /** + * 门票上下架 state=1 上架 state=2 下架 + */ + @RequestMapping("/base/pointMerchars/changeState") + public Object changeState(@RequestBody CoachChangeStateVO dto){ + return pmdsService.changeState(dto); + } + /** + * 门票核销 + */ + @RequestMapping("/base/pointMerchars/writeOff") + public Object writeOff(@RequestBody WriteOffDTO dto){ + UserPointsMerchandise byId = userPointsMerchandiseService.getById(dto.getId()); + byId.setStoreId(dto.getVerifiStoreId()); + byId.setStatus(2); + byId.setVerificationTime(new Date()); + byId.setUserId(null); + byId.setVerificationUserId(dto.getVerificationUserId()); + return userPointsMerchandiseService.updateById(byId); + } + @ResponseBody + @PostMapping("/base/pointMerchars/ticketList") + public List<Map<String,Object>> ticketList(@RequestBody IntegralGoodsOfSearch ofSearch){ + List<Map<String, Object>> result = pmdsService.ticketList(ofSearch); + if (result.size() > 0){ + for (Map<String, Object> stringObjectMap : result) { + Integer o = (Integer) stringObjectMap.get("id"); + String startTime = (String) stringObjectMap.get("startTime"); + String endTime = (String) stringObjectMap.get("endTime"); + stringObjectMap.put("timeValue",startTime + "至"+endTime); + int count1 = upmseService.count(new LambdaQueryWrapper<UserPointsMerchandise>() + .eq(UserPointsMerchandise::getPointsMerchandiseId, o)); + int count2 = upmseService.count(new LambdaQueryWrapper<UserPointsMerchandise>() + .eq(UserPointsMerchandise::getPointsMerchandiseId, o) + .eq(UserPointsMerchandise::getStatus,2)); + stringObjectMap.put("hasExchangeQty",count1); + stringObjectMap.put("hasPickQty",count2); + + stringObjectMap.put("activeStatus",dealTimeStatus(startTime,endTime)); + } + if (ToolUtil.isNotEmpty(ofSearch.getActiveStatus())){ + result = dealTimeData(result,ofSearch.getActiveStatus()); + } + } + return result; + } + @ResponseBody + @PostMapping("/base/pointMerchars/queryGoodsListSearch") + public List<Map<String,Object>> getIntegralGoodsListOfSearch(@RequestBody IntegralGoodsOfSearch ofSearch){ + System.out.println(ofSearch); + List<Map<String, Object>> mapList = pmdsService.queryGoodsListOfSearch(ofSearch); + if (mapList.size() > 0){ + for (Map<String, Object> stringObjectMap : mapList) { + Integer o = (Integer) stringObjectMap.get("id"); + String startTime = (String) stringObjectMap.get("startTime"); + String endTime = (String) stringObjectMap.get("endTime"); + stringObjectMap.put("timeValue",startTime + "至"+endTime); + int count1 = upmseService.count(new LambdaQueryWrapper<UserPointsMerchandise>() + .eq(UserPointsMerchandise::getPointsMerchandiseId, o)); + int count2 = upmseService.count(new LambdaQueryWrapper<UserPointsMerchandise>() + .eq(UserPointsMerchandise::getPointsMerchandiseId, o) + .eq(UserPointsMerchandise::getStatus,2)); + stringObjectMap.put("hasExchangeQty",count1); + stringObjectMap.put("hasPickQty",count2); + + stringObjectMap.put("activeStatus",dealTimeStatus(startTime,endTime)); + } + if (ToolUtil.isNotEmpty(ofSearch.getActiveStatus())){ + mapList = dealTimeData(mapList,ofSearch.getActiveStatus()); + } + } + System.out.println("mapList->"+mapList); + return mapList; + } + /** + * 获取积分商票消费金额 + */ + @ResponseBody + @RequestMapping("/base/pointMerchars/getAmount") + public List<PointMerchandiseIncomeVo> getAmount(){ + return userPointsMerchandiseService.getAmount(); + } @ResponseBody @@ -549,34 +639,6 @@ } - @ResponseBody - @PostMapping("/base/pointMerchars/queryGoodsListSearch") - public List<Map<String,Object>> getIntegralGoodsListOfSearch(@RequestBody IntegralGoodsOfSearch ofSearch){ - System.out.println(ofSearch); - List<Map<String, Object>> mapList = pmdsService.queryGoodsListOfSearch(ofSearch); - if (mapList.size() > 0){ - for (Map<String, Object> stringObjectMap : mapList) { - Integer o = (Integer) stringObjectMap.get("id"); - String startTime = (String) stringObjectMap.get("startTime"); - String endTime = (String) stringObjectMap.get("endTime"); - stringObjectMap.put("timeValue",startTime + "至"+endTime); - int count1 = upmseService.count(new LambdaQueryWrapper<UserPointsMerchandise>() - .eq(UserPointsMerchandise::getPointsMerchandiseId, o)); - int count2 = upmseService.count(new LambdaQueryWrapper<UserPointsMerchandise>() - .eq(UserPointsMerchandise::getPointsMerchandiseId, o) - .eq(UserPointsMerchandise::getStatus,2)); - stringObjectMap.put("hasExchangeQty",count1); - stringObjectMap.put("hasPickQty",count2); - - stringObjectMap.put("activeStatus",dealTimeStatus(startTime,endTime)); - } - if (ToolUtil.isNotEmpty(ofSearch.getActiveStatus())){ - mapList = dealTimeData(mapList,ofSearch.getActiveStatus()); - } - } - System.out.println("mapList->"+mapList); - return mapList; - } public int dealTimeStatus(String startTime, String endTime){ LocalDate now = LocalDate.now(); @@ -970,4 +1032,69 @@ } + + @PostMapping("/base/pointMerchars/queryFee") + @ResponseBody + public HashMap<String, Object> queryFee(@RequestBody QueryDataFee queryDataFee){ + HashMap<String, Object> map = new HashMap<>(); + String data = queryDataFee.getData(); + List<Integer> ids = queryDataFee.getIds(); + if(ids.size()==0){ + ids.add(-1); + } + List<PointsMerchandise> list1 = pmdsService.list(new LambdaQueryWrapper<PointsMerchandise>().eq(PointsMerchandise::getRedemptionMethod, 3)); + LambdaQueryWrapper<UserPointsMerchandise> vipPaymentLambdaQueryWrapper = new LambdaQueryWrapper<>(); + if(ToolUtil.isNotEmpty(data)){ + String stime = data.split(" - ")[0]+" 00:00:00"; + String etime = data.split(" - ")[1]+" 23:59:59"; + vipPaymentLambdaQueryWrapper.between(UserPointsMerchandise::getInsertTime,stime,etime); + } + vipPaymentLambdaQueryWrapper.in(UserPointsMerchandise::getUserId,ids); + List<Integer> collect = list1.stream().map(PointsMerchandise::getId).collect(Collectors.toList()); + if(collect.size()==0){ + collect.add(-1); + } + vipPaymentLambdaQueryWrapper.in(UserPointsMerchandise::getPointsMerchandiseId,collect); + vipPaymentLambdaQueryWrapper.eq(UserPointsMerchandise::getPayStatus,2); + ArrayList<Integer> objects = new ArrayList<>(); + List<UserPointsMerchandise> list = upmseService.list(vipPaymentLambdaQueryWrapper); + + double a =0; + double d =0; + double m =0; + double j =0; + double y =0; + for (UserPointsMerchandise userPointsMerchandise : list) { + for (PointsMerchandise pointsMerchandise : list1) { + if(pointsMerchandise.getId()==userPointsMerchandise.getPointsMerchandiseId()){ + a += pointsMerchandise.getCash().doubleValue(); + } + if(pointsMerchandise.getType()==3){ + if(pointsMerchandise.getCardType()==1){ + d += pointsMerchandise.getCash().doubleValue(); + } + if(pointsMerchandise.getCardType()==2){ + m += pointsMerchandise.getCash().doubleValue(); + } + if(pointsMerchandise.getCardType()==3){ + j += pointsMerchandise.getCash().doubleValue(); + } + if(pointsMerchandise.getCardType()==4){ + y += pointsMerchandise.getCash().doubleValue(); + } + } + } + + } + + map.put("all",a); + map.put("day",d); + map.put("month",m); + map.put("quarter",j); + map.put("year",y); + return map; + + + } + } -- Gitblit v1.7.1