| | |
| | | import com.dsh.activity.feignclient.course.model.CoursePackage; |
| | | import com.dsh.activity.feignclient.course.model.CoursePackagePaymentConfig; |
| | | import com.dsh.activity.feignclient.model.*; |
| | | import com.dsh.activity.feignclient.other.OperatorClient; |
| | | 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.feignclient.other.model.TOperatorCity; |
| | | import com.dsh.activity.model.CoachChangeStateVO; |
| | | import com.dsh.activity.model.PointMerchandiseIncomeVo; |
| | | import com.dsh.activity.model.PointMerchandiseVo; |
| | |
| | | import com.dsh.activity.util.StrUtils; |
| | | import com.dsh.activity.util.TokenUtil; |
| | | import com.dsh.activity.util.ToolUtil; |
| | | import io.swagger.models.auth.In; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | |
| | | * 门票上下架 state=1 上架 state=2 下架 |
| | | */ |
| | | @RequestMapping("/base/pointMerchars/changeState") |
| | | public Object changeState(@RequestBody CoachChangeStateVO dto){ |
| | | return pmdsService.changeState(dto); |
| | | public void changeState(@RequestBody CoachChangeStateVO dto){ |
| | | |
| | | |
| | | pmdsService.changeState(dto); |
| | | } |
| | | /** |
| | | * 门票核销 |
| | | */ |
| | | |
| | | @RequestMapping("/base/course/changeState") |
| | | @ResponseBody |
| | | public Object changeState(@RequestBody CourseChangeStateDTO dto){ |
| | | return userPointsMerchandiseService.changeState(dto); |
| | | } |
| | | |
| | | |
| | | |
| | | @RequestMapping("/base/pointMerchars/writeOff") |
| | | public Object writeOff(@RequestBody WriteOffDTO dto){ |
| | | UserPointsMerchandise byId = userPointsMerchandiseService.getById(dto.getId()); |
| | |
| | | byId.setVerificationUserId(dto.getVerificationUserId()); |
| | | return userPointsMerchandiseService.updateById(byId); |
| | | } |
| | | @Autowired |
| | | private OperatorClient operatorClient; |
| | | @Resource |
| | | private CouponCityService cityService; |
| | | @ResponseBody |
| | | @PostMapping("/base/pointMerchars/ticketList") |
| | | public List<Map<String,Object>> ticketList(@RequestBody IntegralGoodsOfSearch ofSearch){ |
| | |
| | | } |
| | | result.add(map); |
| | | } |
| | | if (Integer.parseInt(String.valueOf(map.get("useScope"))) == 1){ |
| | | result.add(map); |
| | | } |
| | | if (Integer.parseInt(String.valueOf(map.get("useScope"))) == 2){ |
| | | // 获取到优惠券id 查询这个优惠券指定了哪些城市 |
| | | Integer id1 = Integer.parseInt(String.valueOf(map.get("id"))); |
| | | // 获取到运营商管理的省和市 |
| | | List<TOperatorCity> cityByOperatorId = operatorClient.getCityByOperatorId(ofSearch.getObjId()); |
| | | // 拿到运营商市的code集合 |
| | | List<String> collect1 = cityByOperatorId.stream().filter(t -> t.getPid() != 0) |
| | | .map(tOperatorCity -> Integer.toString(tOperatorCity.getCode())) |
| | | .collect(Collectors.toList()); |
| | | List<CouponCity> couponId = cityService.list(new QueryWrapper<CouponCity>().eq("couponId", id1)); |
| | | // 先判断优惠券管理的市 运营商是否有 |
| | | List<String> collect3 = couponId.stream().map(CouponCity::getCityCode) |
| | | .collect(Collectors.toList()); |
| | | // 优惠券指定的省 |
| | | List<String> collect4 = couponId.stream().map(CouponCity::getCityCode) |
| | | .collect(Collectors.toList()); |
| | | if (!Collections.disjoint(collect3, collect4)){ |
| | | result.add(map); |
| | | }else{ |
| | | // 如果没有交集 那么还需要判断运营商是否管理了整个省 |
| | | |
| | | |
| | | } |
| | | } |
| | | if (Integer.parseInt(String.valueOf(map.get("useScope"))) == 3){ |
| | | // 获取到优惠券id 查询这个优惠券指定了哪些门店 |
| | | Integer id3 = Integer.parseInt(String.valueOf(map.get("id"))); |
| | | // 当前运营商管理的门店ids |
| | | List<Integer> storeIds = ofSearch.getStoreIds(); |
| | | // 优惠券指定的门店 |
| | | List<Integer> collect5 = cstoreService.list(new QueryWrapper<CouponStore>().eq("couponId",id3) |
| | | .in("storeId", storeIds)).stream().map(CouponStore::getStoreId) |
| | | .collect(Collectors.toList()); |
| | | // 判断两个集合是否相交 |
| | | // 比较两个集合中是否有相同的元素;当两个集合中没有相同元素时返回true, |
| | | // 当有相同元素时返回false。 |
| | | if (!Collections.disjoint(collect5, storeIds)){ |
| | | result.add(map); |
| | | } |
| | | } |
| | | } |
| | | } else { |
| | | result=result1; |
| | |
| | | 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)); |
| | | int count2 = upmseService.count(new LambdaQueryWrapper<UserPointsMerchandise>() |
| | | .eq(UserPointsMerchandise::getPointsMerchandiseId, o) |
| | | ); |
| | | stringObjectMap.put("hasExchangeQty",count1); |
| | | stringObjectMap.put("hasPickQty",count2); |
| | | |
| | |
| | | |
| | | @ResponseBody |
| | | @PostMapping("/base/pointMerchars/convertGoods") |
| | | public List<IntegralCommodity> getConvertibleGoods(){ |
| | | public List<IntegralCommodity> getConvertibleGoods(@RequestBody Location location) throws Exception { |
| | | List<IntegralCommodity> commodity = new ArrayList<>(); |
| | | |
| | | Map<String, String> geocode = gdMapGeocodingUtil.geocode(location.getLon(), location.getLat()); |
| | | String provinceCode = geocode.get("provinceCode"); |
| | | String cityCode = geocode.get("cityCode"); |
| | | |
| | | |
| | | List<PointsMerchandiseCity> cityCode1 = pmdsCityService.list(new QueryWrapper<PointsMerchandiseCity>().eq("cityCode", cityCode)); |
| | | List<Integer> cIds = new ArrayList<>(); |
| | | for (PointsMerchandiseCity pointsMerchandiseCity : cityCode1) { |
| | | cIds.add(pointsMerchandiseCity.getPointsMerchandiseId()); |
| | | } |
| | | |
| | | |
| | | List<PointsMerchandise> merchandises = pmdsService.list(new QueryWrapper<PointsMerchandise>() |
| | | .eq("state",1) |
| | | .eq("shelves",1) |
| | | .eq("shelves",1).in("id",cIds) |
| | | .gt("endTime",new Date())); |
| | | if (merchandises.size() > 0){ |
| | | for (PointsMerchandise merchandise : merchandises) { |
| | |
| | | } |
| | | return detailsVo; |
| | | } |
| | | |
| | | |
| | | @Autowired |
| | | private UserCouponService userCouponService; |
| | | @PostMapping("/base/pointMerchars/getGoodDetails") |
| | | public ProductDetailsVo getGoodDetailsWithId(@RequestBody ProductDetailRequest detailRequest){ |
| | | SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); |
| | | ProductDetailsVo detailsVo = new ProductDetailsVo(); |
| | | PointsMerchandise merchandise = pmdsService.getById(detailRequest.getGoodId()); |
| | | |
| | | detailsVo.setCardType(merchandise.getCardType()); |
| | | |
| | | |
| | | if (merchandise!=null) { |
| | | detailsVo.setCardType(merchandise.getCardType()); |
| | | } |
| | | switch (detailRequest.getGoodsType()){ |
| | | case 2: |
| | | // 课包 |
| | | CoursePackage coursePackage = cpClient.queryCoursePackageById(merchandise.getCoursePackageId()); |
| | | |
| | | detailsVo.setGoodId(coursePackage.getId()); |
| | | List<String> list1 = new ArrayList<>(); |
| | | list1.add(coursePackage.getCoverDrawing()); |
| | | list1.addAll(Arrays.asList(StrUtils.splitStr2StrArr(coursePackage.getDetailDrawing(), ","))); |
| | | detailsVo.setPics(list1); |
| | | // detailsVo.setGoodId(coursePackage.getId()); |
| | | detailsVo.setGoodId(merchandise.getId()); |
| | | // List<String> list1 = new ArrayList<>(); |
| | | // list1.add(coursePackage.getCoverDrawing()); |
| | | // list1.addAll(Arrays.asList(StrUtils.splitStr2StrArr(coursePackage.getDetailDrawing(), ","))); |
| | | |
| | | String productImages = merchandise.getProductImages(); |
| | | String[] list1 = productImages.split(","); |
| | | detailsVo.setPics(Arrays.asList(list1)); |
| | | Collections.sort(detailsVo.getPics(), (s1, s2) -> { |
| | | if (s1.equals(coursePackage.getCoverDrawing())) { |
| | | return -1; // s1排在前面 |
| | |
| | | }); |
| | | detailsVo.setGoodName(coupon.getName()); |
| | | detailsVo.setBelongsScope(coupon.getUserPopulation()); |
| | | int couponNums = upmseService.count(new QueryWrapper<UserPointsMerchandise>() |
| | | .eq("pointsMerchandiseId",merchandise.getId() )); |
| | | detailsVo.setRedeemedNum(couponNums); |
| | | detailsVo.setResidueNum(Math.max(coupon.getQuantityIssued() - couponNums, 0)); |
| | | // int couponNums = upmseService.count(new QueryWrapper<UserPointsMerchandise>() |
| | | // .eq("pointsMerchandiseId",merchandise.getId() )); |
| | | |
| | | |
| | | |
| | | int couponCounts = userCouponService.count(new QueryWrapper<UserCoupon>().eq("couponId", coupon.getId())); |
| | | // detailsVo.setRedeemedNum(coupon.getPickUpQuantity()); |
| | | detailsVo.setRedeemedNum(couponCounts); |
| | | |
| | | detailsVo.setResidueNum(Math.max(coupon.getQuantityIssued() - couponCounts, 0)); |
| | | |
| | | detailsVo.setPerLimit(coupon.getPickUpQuantity()); |
| | | detailsVo.setExchangeType(coupon.getRedemptionMethod()); |
| | | if (coupon.getRedemptionMethod() == 1){ |
| | |
| | | } |
| | | |
| | | |
| | | @Autowired |
| | | private ICouponService couponService; |
| | | |
| | | |
| | | @ResponseBody |
| | | @PostMapping("/base/pointMerchars/getDetailsOfExchange") |
| | | public ExchangeDetailsVo getIntegralExchangeDetails(@RequestBody Integer appUserId){ |
| | |
| | | List<ExchangeDetailsResponse> responses = new ArrayList<>(); |
| | | SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); |
| | | List<UserPointsMerchandise> pointsMerchandises = upmseService.list(new QueryWrapper<UserPointsMerchandise>() |
| | | .eq("userId",appUserId )); |
| | | .eq("userId",appUserId ).eq("payStatus",2)); |
| | | |
| | | |
| | | List<Coupon> list1 = couponService.list(); |
| | | List<Integer> ids = new ArrayList<>(); |
| | | for (Coupon coupon : list1) { |
| | | if (coupon.getDistributionMethod()==1) { |
| | | ids.add(coupon.getId()); |
| | | } |
| | | } |
| | | List<UserCoupon> userCoupons = userCouponService.list(new QueryWrapper<UserCoupon>().eq("userId", appUserId).in("couponId",ids)); |
| | | if (pointsMerchandises.size() > 0 ){ |
| | | for (UserPointsMerchandise pointsMerchandise : pointsMerchandises) { |
| | | PointsMerchandise merchandise = pmdsService.getById(pointsMerchandise.getPointsMerchandiseId()); |
| | | if (merchandise==null){ |
| | | continue; |
| | | } |
| | | ExchangeDetailsResponse detailsResponse = new ExchangeDetailsResponse(); |
| | | detailsResponse.setDetailsId(pointsMerchandise.getId()); |
| | | detailsResponse.setGoodName(merchandise.getName()); |
| | | if (merchandise.getRedemptionMethod() == 1){ |
| | | detailsResponse.setExchangeType(1); |
| | | detailsResponse.setIntegral(merchandise.getIntegral()); |
| | | }else { |
| | | }else if (merchandise.getRedemptionMethod() == 2){ |
| | | detailsResponse.setExchangeType(2); |
| | | detailsResponse.setIntegral(merchandise.getIntegral()); |
| | | detailsResponse.setCash(merchandise.getCash()); |
| | | }else if (merchandise.getRedemptionMethod() == 3){ |
| | | detailsResponse.setExchangeType(3); |
| | | detailsResponse.setCash(merchandise.getCash()); |
| | | } |
| | | detailsResponse.setStartTime(simpleDateFormat.format(merchandise.getStartTime())); |
| | |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | if (merchandise.getCardType()==1){ |
| | | SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); |
| | | Calendar calendar = Calendar.getInstance(); |
| | | calendar.setTime(pointsMerchandise.getInsertTime()); |
| | | calendar.add(Calendar.DAY_OF_MONTH, 1); |
| | | Date end = calendar.getTime(); |
| | | String startDate = dateFormat.format(pointsMerchandise.getInsertTime()); |
| | | String endDate = dateFormat.format(end); |
| | | detailsResponse.setStartTime(startDate); |
| | | detailsResponse.setEndTime(startDate); |
| | | |
| | | Date now = new Date(); |
| | | Calendar cal1 = Calendar.getInstance(); |
| | | cal1.setTime(pointsMerchandise.getInsertTime()); |
| | | |
| | | Calendar cal2 = Calendar.getInstance(); |
| | | cal2.setTime(now); |
| | | |
| | | // Compare the year, month, and day of the two Calendar instances |
| | | boolean isSameDate = cal1.get(Calendar.YEAR) == cal2.get(Calendar.YEAR) && |
| | | cal1.get(Calendar.MONTH) == cal2.get(Calendar.MONTH) && |
| | | cal1.get(Calendar.DAY_OF_MONTH) == cal2.get(Calendar.DAY_OF_MONTH); |
| | | |
| | | // Print the result |
| | | if (isSameDate) { |
| | | |
| | | } else { |
| | | System.out.println("The two dates do not have the same date."); |
| | | detailsResponse.setUseStatus(3); |
| | | } |
| | | |
| | | |
| | | } else if (merchandise.getCardType()==2) { |
| | | SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); |
| | | Calendar calendar = Calendar.getInstance(); |
| | | calendar.setTime(pointsMerchandise.getInsertTime()); |
| | | calendar.add(Calendar.DAY_OF_MONTH, 31); |
| | | Date end = calendar.getTime(); |
| | | String startDate = dateFormat.format(pointsMerchandise.getInsertTime()); |
| | | String endDate = dateFormat.format(end); |
| | | detailsResponse.setStartTime(startDate); |
| | | detailsResponse.setEndTime(endDate); |
| | | |
| | | Date now = new Date(); |
| | | if (now.after(end)){ |
| | | detailsResponse.setUseStatus(3); |
| | | } |
| | | |
| | | } else if (merchandise.getCardType()==3) { |
| | | SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); |
| | | Calendar calendar = Calendar.getInstance(); |
| | | calendar.setTime(pointsMerchandise.getInsertTime()); |
| | | calendar.add(Calendar.DAY_OF_MONTH, 93); |
| | | Date end = calendar.getTime(); |
| | | String startDate = dateFormat.format(pointsMerchandise.getInsertTime()); |
| | | String endDate = dateFormat.format(end); |
| | | detailsResponse.setStartTime(startDate); |
| | | detailsResponse.setEndTime(endDate); |
| | | |
| | | Date now = new Date(); |
| | | if (now.after(end)){ |
| | | detailsResponse.setUseStatus(3); |
| | | } |
| | | |
| | | } else if (merchandise.getCardType()==4) { |
| | | SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); |
| | | Calendar calendar = Calendar.getInstance(); |
| | | calendar.setTime(pointsMerchandise.getInsertTime()); |
| | | calendar.add(Calendar.DAY_OF_MONTH, 372); |
| | | Date end = calendar.getTime(); |
| | | String startDate = dateFormat.format(pointsMerchandise.getInsertTime()); |
| | | String endDate = dateFormat.format(end); |
| | | detailsResponse.setStartTime(startDate); |
| | | detailsResponse.setEndTime(endDate); |
| | | |
| | | Date now = new Date(); |
| | | if (now.after(end)){ |
| | | detailsResponse.setUseStatus(3); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | } |
| | | responses.add(detailsResponse); |
| | | } |
| | | detailsVo.setDetailsResponses(responses); |
| | | } |
| | | |
| | | if (userCoupons.size()>0){ |
| | | for (UserCoupon userCoupon : userCoupons) { |
| | | |
| | | Coupon c = couponService.getById(userCoupon.getCouponId()); |
| | | if (c==null|| c.getRedemptionMethod()==null){ |
| | | continue; |
| | | } |
| | | |
| | | ExchangeDetailsResponse detailsResponse = new ExchangeDetailsResponse(); |
| | | detailsResponse.setDetailsId(Long.valueOf(c.getId())); |
| | | detailsResponse.setGoodName(c.getName()); |
| | | if (c.getRedemptionMethod() == 1){ |
| | | detailsResponse.setExchangeType(1); |
| | | detailsResponse.setIntegral(c.getIntegral().intValue()); |
| | | }else { |
| | | detailsResponse.setExchangeType(2); |
| | | detailsResponse.setIntegral(c.getIntegral().intValue()); |
| | | detailsResponse.setCash(c.getCash()); |
| | | } |
| | | detailsResponse.setStartTime(simpleDateFormat.format(c.getStartTime())); |
| | | detailsResponse.setEndTime(simpleDateFormat.format(c.getEndTime())); |
| | | detailsResponse.setUseStatus(userCoupon.getStatus() == 1 ? 2 : 1); |
| | | detailsResponse.setGoodType(4); |
| | | responses.add(detailsResponse); |
| | | |
| | | |
| | | } |
| | | Comparator<ExchangeDetailsResponse> comparator = Comparator.comparing(ExchangeDetailsResponse::getStartTime).reversed(); |
| | | Collections.sort(responses, comparator); |
| | | detailsVo.setDetailsResponses(responses); |
| | | |
| | | } |
| | | return detailsVo; |
| | | } |
| | |
| | | return 0; // 保持原顺序 |
| | | } |
| | | }); |
| | | |
| | | |
| | | |
| | | |
| | | if (pmdsServiceById.getCardType()==1){ |
| | | SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); |
| | | Calendar calendar = Calendar.getInstance(); |
| | | calendar.setTime(byId.getInsertTime()); |
| | | calendar.add(Calendar.DAY_OF_MONTH, 1); |
| | | Date end = calendar.getTime(); |
| | | String startDate = dateFormat.format(byId.getInsertTime()); |
| | | String endDate = dateFormat.format(end); |
| | | detailsVo.setStartTime(startDate); |
| | | detailsVo.setEndTime(startDate); |
| | | |
| | | Date now = new Date(); |
| | | Calendar cal1 = Calendar.getInstance(); |
| | | cal1.setTime(pmdsServiceById.getInsertTime()); |
| | | |
| | | Calendar cal2 = Calendar.getInstance(); |
| | | cal2.setTime(now); |
| | | |
| | | // Compare the year, month, and day of the two Calendar instances |
| | | boolean isSameDate = cal1.get(Calendar.YEAR) == cal2.get(Calendar.YEAR) && |
| | | cal1.get(Calendar.MONTH) == cal2.get(Calendar.MONTH) && |
| | | cal1.get(Calendar.DAY_OF_MONTH) == cal2.get(Calendar.DAY_OF_MONTH); |
| | | |
| | | // Print the result |
| | | if (isSameDate) { |
| | | } else { |
| | | System.out.println("The two dates do not have the same date."); |
| | | detailsVo.setUseType(3); |
| | | } |
| | | |
| | | |
| | | } else if (pmdsServiceById.getCardType()==2) { |
| | | SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); |
| | | Calendar calendar = Calendar.getInstance(); |
| | | calendar.setTime(byId.getInsertTime()); |
| | | calendar.add(Calendar.DAY_OF_MONTH, 31); |
| | | Date end = calendar.getTime(); |
| | | String startDate = dateFormat.format(byId.getInsertTime()); |
| | | String endDate = dateFormat.format(end); |
| | | detailsVo.setStartTime(startDate); |
| | | detailsVo.setEndTime(endDate); |
| | | |
| | | Date now = new Date(); |
| | | if (now.after(end)){ |
| | | detailsVo.setUseType(3); |
| | | } |
| | | |
| | | } else if (pmdsServiceById.getCardType()==3) { |
| | | SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); |
| | | Calendar calendar = Calendar.getInstance(); |
| | | calendar.setTime(byId.getInsertTime()); |
| | | calendar.add(Calendar.DAY_OF_MONTH, 93); |
| | | Date end = calendar.getTime(); |
| | | String startDate = dateFormat.format(byId.getInsertTime()); |
| | | String endDate = dateFormat.format(end); |
| | | detailsVo.setStartTime(startDate); |
| | | detailsVo.setEndTime(endDate); |
| | | |
| | | Date now = new Date(); |
| | | if (now.after(end)){ |
| | | detailsVo.setUseType(3); |
| | | } |
| | | |
| | | } else if (pmdsServiceById.getCardType()==4) { |
| | | SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); |
| | | Calendar calendar = Calendar.getInstance(); |
| | | calendar.setTime(byId.getInsertTime()); |
| | | calendar.add(Calendar.DAY_OF_MONTH, 372); |
| | | Date end = calendar.getTime(); |
| | | String startDate = dateFormat.format(byId.getInsertTime()); |
| | | String endDate = dateFormat.format(end); |
| | | detailsVo.setStartTime(startDate); |
| | | detailsVo.setEndTime(endDate); |
| | | |
| | | Date now = new Date(); |
| | | if (now.after(end)){ |
| | | detailsVo.setUseType(3); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | break; |
| | | case 2: |
| | | CoursePackage coursePackage = cpClient.queryCoursePackageById(pmdsServiceById.getCoursePackageId()); |
| | |
| | | |
| | | detailsVo.setGoodName(pmdsServiceById.getName()); |
| | | // 2.0 |
| | | detailsVo.setStartTime(simpleDateFormat.format(byId.getInsertTime())); |
| | | detailsVo.setEndTime(simpleDateFormat.format(pmdsServiceById.getEndTime())); |
| | | detailsVo.setOrderTime(simpleDateFormat.format(byId.getInsertTime())); |
| | | if (detailsVo.getStartTime()==null) { |
| | | detailsVo.setStartTime(simpleDateFormat.format(byId.getInsertTime())); |
| | | detailsVo.setEndTime(simpleDateFormat.format(pmdsServiceById.getEndTime())); |
| | | detailsVo.setOrderTime(simpleDateFormat.format(byId.getInsertTime())); |
| | | |
| | | } |
| | | if (byId.getStatus() == 1){ |
| | | detailsVo.setUseType(2); |
| | | }else { |
| | |
| | | break; |
| | | } |
| | | detailsVo.setContents(pmdsServiceById.getRedemptionInstructions()); |
| | | }else { |
| | | Coupon coupon = iCouponService.getById(speMercharsId); |
| | | detailsVo.setDetailsId(Long.valueOf(coupon.getId())); |
| | | List<String> list3 = new ArrayList<>(); |
| | | list3.add(ToolUtil.isEmpty(coupon.getCover()) ? "" : coupon.getCover()); |
| | | if (ToolUtil.isNotEmpty(coupon.getProductImages())){ |
| | | list3.addAll(Arrays.asList(StrUtils.splitStr2StrArr(coupon.getProductImages(), ","))); |
| | | } |
| | | detailsVo.setPics(list3); |
| | | Collections.sort(detailsVo.getPics(), (s1, s2) -> { |
| | | if (s1.equals(coupon.getCover())) { |
| | | return -1; // s1排在前面 |
| | | } else if (s2.equals(coupon.getCover())) { |
| | | return 1; // s2排在前面 |
| | | } else { |
| | | return 0; // 保持原顺序 |
| | | } |
| | | }); |
| | | detailsVo.setGoodName(coupon.getName()); |
| | | // detailsVo.setBelongsScope(coupon.getUserPopulation()); |
| | | // int couponNums = upmseService.count(new QueryWrapper<UserPointsMerchandise>() |
| | | // .eq("pointsMerchandiseId",merchandise.getId() )); |
| | | |
| | | |
| | | |
| | | int couponCounts = userCouponService.count(new QueryWrapper<UserCoupon>().eq("couponId", coupon.getId())); |
| | | // detailsVo.setRedeemedNum(coupon.getPickUpQuantity()); |
| | | // detailsVo.setRedeemedNum(couponCounts); |
| | | |
| | | // detailsVo.setResidueNum(Math.max(coupon.getQuantityIssued() - couponCounts, 0)); |
| | | |
| | | // detailsVo.setPerLimit(coupon.getPickUpQuantity()); |
| | | detailsVo.setExchangeType(coupon.getRedemptionMethod()); |
| | | if (coupon.getRedemptionMethod() == 1){ |
| | | detailsVo.setIntegral(coupon.getIntegral().intValue()); |
| | | }else { |
| | | detailsVo.setIntegral(coupon.getIntegral().intValue()); |
| | | detailsVo.setCash(coupon.getCash()); |
| | | } |
| | | // if (coupon.getUseScope() == 1){ |
| | | // detailsVo.setExchangeAddrType(1); |
| | | // detailsVo.setBelongs("全国通用"); |
| | | // }else if (coupon.getUseScope() == 2){ |
| | | // detailsVo.setExchangeAddrType(2); |
| | | // List<CouponCity> list = ccityService.list(new LambdaQueryWrapper<CouponCity>() |
| | | // .eq(CouponCity::getCouponId, coupon.getId())); |
| | | // if (list.size() > 0){ |
| | | // detailsVo.setBelongs(list.get(0).getProvince()+"|"+list.get(0).getCity() + "用户可用"); |
| | | // } |
| | | // }else { |
| | | // detailsVo.setExchangeAddrType(3); |
| | | // List<CouponStore> list = cstoreService.list(new QueryWrapper<CouponStore>() |
| | | // .eq("couponId",coupon.getId() )); |
| | | // StoreDetailOfCourse courseOfStore = stoClient.getCourseOfStore(list.get(0).getStoreId()); |
| | | // detailsVo.setBelongs(courseOfStore.getStoreName()+"可用"); |
| | | // } |
| | | // detailsVo.setStartTime(format.format(coupon.getStartTime())); |
| | | // detailsVo.setEndTime(format.format(coupon.getEndTime())); |
| | | |
| | | detailsVo.setContents(coupon.getIllustrate()); |
| | | detailsVo.setGoodType(4); |
| | | } |
| | | return detailsVo; |
| | | } |
| | |
| | | |
| | | |
| | | @PostMapping("/base/pointMerchars/saveDetailsUserPointMercase") |
| | | public void saveDetailsUserPointMercase(@RequestBody UserPointsMerchandise merchandise){ |
| | | public Long saveDetailsUserPointMercase(@RequestBody UserPointsMerchandise merchandise){ |
| | | merchandise.setInsertTime(new Date()); |
| | | upmseService.save(merchandise); |
| | | return merchandise.getId(); |
| | | } |
| | | |
| | | |
| | | @PostMapping("/base/pointMerchars/updateDetailsUserPointMercase") |
| | | public void updateDetailsUserPointMercase(@RequestBody UserPointsMerchandise merchandise){ |
| | | public void updateDetailsUserPointMercase(@RequestBody UserPointsMerchandise merchandise){ |
| | | merchandise.setUserId(null); |
| | | merchandise.setPointsMerchandiseId(null); |
| | | upmseService.updateById(merchandise); |
| | | } |
| | | |
| | | @ResponseBody |
| | | @PostMapping("/base/pointMerchars/queryUserPointMerchaseByCode") |
| | | public List<UserPointsMerchandise> queryUserPointMerchaseByCode(@RequestBody String code){ |
| | | return upmseService.list(new QueryWrapper<UserPointsMerchandise>() |
| | |
| | | |
| | | } |
| | | |
| | | //拿到积分商品现金的消费记录 |
| | | @ResponseBody |
| | | @PostMapping("/base/pointMerchars/getConsumeDetails") |
| | | public List<ConsumeDetail> getConsumeDetails(@RequestBody BillingDataRequestVo requestVo){ |
| | | return upmseService.getConsumeDetails(requestVo); |
| | | |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | public int dealTimeStatus(String startTime, String endTime){ |
| | |
| | | |
| | | @PostMapping("/base/pointMerchars/queryPointMerchaseById") |
| | | public PointsMerchandise queryPointMerchaseById(@RequestBody Integer id){ |
| | | return pmdsService.getById(id); |
| | | PointsMerchandise byId = pmdsService.getById(id); |
| | | int count1 = upmseService.count(new LambdaQueryWrapper<UserPointsMerchandise>() |
| | | .eq(UserPointsMerchandise::getPointsMerchandiseId, byId.getId()) |
| | | .eq(UserPointsMerchandise::getStatus,2)); |
| | | int count2 = upmseService.count(new LambdaQueryWrapper<UserPointsMerchandise>() |
| | | .eq(UserPointsMerchandise::getPointsMerchandiseId, byId.getId()) |
| | | ); |
| | | byId.setPickUpQuantity3(count2); |
| | | byId.setPickUpQuantity4(count1); |
| | | return byId; |
| | | } |
| | | |
| | | @PostMapping("/base/pointMerchars/getshopName") |
| | |
| | | @PostMapping("/base/pointMerchars/add") |
| | | public Integer add(@RequestBody PointsMerchandise pointsMerchandise){ |
| | | Integer storeId = pointsMerchandise.getShelves(); |
| | | pointsMerchandise.setShelves(2); |
| | | pointsMerchandise.setShelves(1); |
| | | boolean save = pmdsService.save(pointsMerchandise); |
| | | if(save && ToolUtil.isNotEmpty(storeId) && pointsMerchandise.getType()==2){ |
| | | PointsMerchandiseStore pointsMerchandiseStore = new PointsMerchandiseStore(); |