| | |
| | | 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.StoreInfoDto; |
| | | 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.response.GoodsInfoOneVo; |
| | | import com.dsh.activity.model.response.StoreVos; |
| | | import com.dsh.activity.service.*; |
| | | import com.dsh.activity.util.GDMapGeocodingUtil; |
| | | import com.dsh.activity.util.StrUtils; |
| | | import com.dsh.activity.util.TokenUtil; |
| | | import com.dsh.activity.util.ToolUtil; |
| | | import com.dsh.activity.util.*; |
| | | import io.swagger.models.auth.In; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | |
| | | pmdsService.changeState(dto); |
| | | } |
| | | /** |
| | | * 门票核销 |
| | | * 根据id查询 |
| | | */ |
| | | |
| | | @RequestMapping("/base/pointMerchars/getById") |
| | | @ResponseBody |
| | | public PointsMerchandise getById(@RequestBody Integer id){ |
| | | return pmdsService.getById(id); |
| | | } |
| | | /** |
| | | * 门票核销 |
| | | */ |
| | | @RequestMapping("/base/course/changeState") |
| | | @ResponseBody |
| | | public Object changeState(@RequestBody CourseChangeStateDTO dto){ |
| | |
| | | } |
| | | |
| | | |
| | | @Resource |
| | | private StoreClient storeClient; |
| | | |
| | | @Autowired |
| | | private PointsMerchandiseStoreService pointsMerchandiseStoreService; |
| | | @ResponseBody |
| | | @PostMapping("/base/pointMerchars/convertGoods") |
| | | public List<IntegralCommodity> getConvertibleGoods(@RequestBody Location location) throws Exception { |
| | |
| | | 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()); |
| | | } |
| | | // if(null != geocode) { |
| | | |
| | | |
| | | List<PointsMerchandise> merchandises = pmdsService.list(new QueryWrapper<PointsMerchandise>() |
| | | .eq("state",1) |
| | | .eq("shelves",1).in("id",cIds) |
| | | .gt("endTime",new Date())); |
| | | if (merchandises.size() > 0){ |
| | | for (PointsMerchandise merchandise : merchandises) { |
| | | IntegralCommodity integralCommodity = new IntegralCommodity(); |
| | | integralCommodity.setCommodityId(merchandise.getId()); |
| | | integralCommodity.setCommodityImg(merchandise.getCover()); |
| | | integralCommodity.setCommodityName(merchandise.getName()); |
| | | integralCommodity.setCommodityPrice(merchandise.getPrice()); |
| | | integralCommodity.setGoodsType(merchandise.getType()); |
| | | commodity.add(integralCommodity); |
| | | List<Store> stores = storeClient.queryStoreList(new QueryStoreList(provinceCode, cityCode)); |
| | | Store s = null; |
| | | Double d = 0D; |
| | | for (Store store : stores) { |
| | | Map<String, Double> distance = GeodesyUtil.getDistance(location.getLon() + "," + location.getLat(), store.getLon() + "," + store.getLat()); |
| | | Double wgs84 = distance.get("WGS84"); |
| | | if (s == null || d > wgs84) { |
| | | s = store; |
| | | d = wgs84; |
| | | } |
| | | } |
| | | // } |
| | | |
| | | // 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<PointsMerchandiseStore> storesids =pointsMerchandiseStoreService.list(new QueryWrapper<PointsMerchandiseStore>().eq("storeId",s.getId())); |
| | | for (PointsMerchandiseStore storesid : storesids) { |
| | | cIds.add(storesid.getPointsMerchandiseId()); |
| | | } |
| | | |
| | | |
| | | // if (cIds.size()>0) { |
| | | |
| | | List<PointsMerchandise> merchandises = pmdsService.list(new QueryWrapper<PointsMerchandise>().in("id",cIds) |
| | | .eq("state", 1) |
| | | .eq("shelves", 1) |
| | | .gt("endTime", new Date()).last("ORDER BY sort desc,insertTime desc")); |
| | | if (merchandises.size() > 0){ |
| | | for (PointsMerchandise merchandise : merchandises) { |
| | | IntegralCommodity integralCommodity = new IntegralCommodity(); |
| | | integralCommodity.setCommodityId(merchandise.getId()); |
| | | integralCommodity.setCommodityImg(merchandise.getCover()); |
| | | integralCommodity.setCommodityName(merchandise.getName()); |
| | | integralCommodity.setCommodityPrice(merchandise.getPrice()); |
| | | integralCommodity.setGoodsType(merchandise.getType()); |
| | | integralCommodity.setSort(merchandise.getSort()); |
| | | commodity.add(integralCommodity); |
| | | } |
| | | // } |
| | | } |
| | | |
| | | System.out.println(commodity); |
| | | return commodity; |
| | | } |
| | |
| | | ids.add(coupon.getId()); |
| | | } |
| | | } |
| | | List<UserCoupon> userCoupons = userCouponService.list(new QueryWrapper<UserCoupon>().eq("userId", appUserId).in("couponId",ids)); |
| | | List<UserCoupon> userCoupons = new ArrayList<>(); |
| | | if (ids.size()>0) { |
| | | 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()); |
| | |
| | | |
| | | // Print the result |
| | | if (isSameDate) { |
| | | |
| | | } else { |
| | | System.out.println("The two dates do not have the same date."); |
| | | detailsResponse.setUseStatus(3); |
| | | |
| | | } |
| | | |
| | | |
| | |
| | | detailsResponse.setUseStatus(3); |
| | | } |
| | | |
| | | } else if (merchandise.getCardType()==3) { |
| | | } else if (merchandise.getCardType()==3){ |
| | | SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); |
| | | Calendar calendar = Calendar.getInstance(); |
| | | calendar.setTime(pointsMerchandise.getInsertTime()); |
| | |
| | | } |
| | | |
| | | |
| | | @Autowired |
| | | private PointsMerchandiseStoreService storeService; |
| | | |
| | | @ResponseBody |
| | | @PostMapping("/base/pointMerchars/getSpecificsOfGoods") |
| | | public PointDetailsVo getSpecificsOfGoods(@RequestBody Long speMercharsId){ |
| | | SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); |
| | | SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); |
| | | PointDetailsVo detailsVo = new PointDetailsVo(); |
| | | UserPointsMerchandise byId = upmseService.getById(speMercharsId); |
| | | |
| | | |
| | | if (ToolUtil.isNotEmpty(byId)){ |
| | | List<PointsMerchandiseStore> stores = storeService.list(new QueryWrapper<PointsMerchandiseStore>().eq("pointsMerchandiseId", byId.getPointsMerchandiseId())); |
| | | |
| | | PointsMerchandise pmdsServiceById = pmdsService.getById(byId.getPointsMerchandiseId()); |
| | | // 2.0 |
| | | detailsVo.setCardType(pmdsServiceById.getCardType()); |
| | | detailsVo.setExchangeAddrType(pmdsServiceById.getUseScope()); |
| | | detailsVo.setExchangeType(pmdsServiceById.getRedemptionMethod()); |
| | | detailsVo.setGoodType(pmdsServiceById.getType()); |
| | | if (pmdsServiceById.getRedemptionMethod() == 1){ |
| | |
| | | case 3: |
| | | List<String> list10 = Arrays.asList(StrUtils.splitStr2StrArr(pmdsServiceById.getProductImages(), ",")); |
| | | ArrayList<String> list2 = new ArrayList<>(list10); |
| | | |
| | | |
| | | SimpleDateFormat dateFormat5 = new SimpleDateFormat("yyyy-MM-dd"); |
| | | |
| | | |
| | | for (PointsMerchandiseStore store : stores) { |
| | | StoreDetailOfCourse courseOfStore = stoClient.getCourseOfStore(store.getStoreId()); |
| | | detailsVo.setBelongs(courseOfStore.getStoreName()); |
| | | } |
| | | |
| | | String format = dateFormat5.format(byId.getInsertTime()); |
| | | detailsVo.setOrderTime(format); |
| | | |
| | | |
| | | |
| | | |
| | | list2.add(pmdsServiceById.getCover()); |
| | | detailsVo.setPics(list2); |
| | | Collections.sort(detailsVo.getPics(), (s1, s2) -> { |
| | |
| | | |
| | | } 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); |
| | |
| | | |
| | | } 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); |
| | |
| | | detailsVo.setUseType(2); |
| | | }else { |
| | | detailsVo.setUseType(1); |
| | | detailsVo.setWriteOffTime(simpleDateFormat.format(byId.getVerificationTime())); |
| | | StoreDetailOfCourse courseOfStore = stoClient.getCourseOfStore(byId.getVerifiStoreId()); |
| | | detailsVo.setWriteOffName(courseOfStore.getStoreName()); |
| | | if (pmdsServiceById.getType()!=2) { |
| | | detailsVo.setWriteOffTime(simpleDateFormat.format(byId.getVerificationTime())); |
| | | } |
| | | if (byId.getStoreId()!=null) { |
| | | StoreDetailOfCourse courseOfStore = stoClient.getCourseOfStore(byId.getStoreId()); |
| | | detailsVo.setWriteOffName(courseOfStore.getStoreName()); |
| | | } |
| | | } |
| | | switch (pmdsServiceById.getUseScope()){ |
| | | case 1: |
| | |
| | | detailsVo.setBelongs(pmdsServiceById.getProvince()+pmdsServiceById.getCity()); |
| | | break; |
| | | case 3: |
| | | StoreDetailOfCourse courseOfStore = stoClient.getCourseOfStore(byId.getStoreId()); |
| | | detailsVo.setBelongs(courseOfStore.getStoreName()+" "+courseOfStore.getStoreAddr()); |
| | | // StoreDetailOfCourse courseOfStore = stoClient.getCourseOfStore(byId.getStoreId()); |
| | | // detailsVo.setBelongs(courseOfStore.getStoreName()+" "+courseOfStore.getStoreAddr()); |
| | | // detailsVo.setBelongs("---------------"); |
| | | break; |
| | | default: |
| | | break; |
| | |
| | | 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())); |
| | | 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()+"可用"); |
| | | } |
| | | SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); |
| | | detailsVo.setStartTime(format.format(coupon.getStartTime())); |
| | | detailsVo.setEndTime(format.format(coupon.getEndTime())); |
| | | |
| | | detailsVo.setContents(coupon.getIllustrate()); |
| | | detailsVo.setGoodType(4); |