| | |
| | | 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.SiteClient; |
| | | 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.feignclient.other.model.*; |
| | | import com.dsh.activity.model.CoachChangeStateVO; |
| | | import com.dsh.activity.model.PointMerchandiseIncomeVo; |
| | | import com.dsh.activity.model.PointMerchandiseVo; |
| | |
| | | import com.dsh.activity.util.*; |
| | | import io.swagger.models.auth.In; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.util.StringUtils; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.annotation.Resource; |
| | |
| | | |
| | | @Resource |
| | | private CouponCityService ccityService; |
| | | @Autowired |
| | | private SiteClient siteClient; |
| | | |
| | | |
| | | @Resource |
| | |
| | | String endTime = (String) stringObjectMap.get("endTime"); |
| | | stringObjectMap.put("timeValue", startTime + "至" + endTime); |
| | | int count1 = upmseService.count(new LambdaQueryWrapper<UserPointsMerchandise>() |
| | | .eq(UserPointsMerchandise::getPointsMerchandiseId, o)); |
| | | .eq(UserPointsMerchandise::getPointsMerchandiseId, o) |
| | | .eq(UserPointsMerchandise::getPayStatus, 2).eq(UserPointsMerchandise::getState, 1)); |
| | | int count2 = upmseService.count(new LambdaQueryWrapper<UserPointsMerchandise>() |
| | | .eq(UserPointsMerchandise::getPointsMerchandiseId, o) |
| | | .eq(UserPointsMerchandise::getStatus, 2)); |
| | | .eq(UserPointsMerchandise::getStatus, 2) |
| | | .eq(UserPointsMerchandise::getPayStatus, 2).eq(UserPointsMerchandise::getState, 1)); |
| | | stringObjectMap.put("hasExchangeQty", count1); |
| | | stringObjectMap.put("hasPickQty", count2); |
| | | |
| | |
| | | List<IntegralCommodity> commodity = new ArrayList<>(); |
| | | |
| | | Map<String, String> geocode = gdMapGeocodingUtil.geocode(location.getLon(), location.getLat()); |
| | | if(null == geocode){ |
| | | return new ArrayList<>(); |
| | | } |
| | | String provinceCode = geocode.get("provinceCode"); |
| | | String cityCode = geocode.get("cityCode"); |
| | | |
| | | |
| | | // if(null != geocode) { |
| | | |
| | | List<Store> stores = storeClient.queryStoreList(new QueryStoreList(provinceCode, cityCode)); |
| | | Store s = null; |
| | | Double d = 0D; |
| | |
| | | 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()); |
| | |
| | | QueryWrapper<PointsMerchandise> wrapper = new QueryWrapper<PointsMerchandise>() |
| | | .eq("state", 1) |
| | | .eq("shelves", 1) |
| | | .gt("endTime", new Date()); |
| | | .gt("endTime", new Date()) |
| | | .eq("status", 1); |
| | | if(cIds.size() > 0){ |
| | | wrapper.in("id", cIds); |
| | | } |
| | |
| | | integralCommodity.setCommodityId(merchandise.getId()); |
| | | integralCommodity.setCommodityImg(merchandise.getCover()); |
| | | integralCommodity.setCommodityName(merchandise.getName()); |
| | | integralCommodity.setCommodityPrice(merchandise.getPrice()); |
| | | if(merchandise.getRedemptionMethod() == 1){ |
| | | integralCommodity.setIntegral(merchandise.getIntegral()); |
| | | } |
| | | if(merchandise.getRedemptionMethod() == 2){ |
| | | integralCommodity.setCommodityPrice(merchandise.getPrice()); |
| | | integralCommodity.setIntegral(merchandise.getIntegral()); |
| | | } |
| | | if(merchandise.getRedemptionMethod() == 3){ |
| | | integralCommodity.setCommodityPrice(merchandise.getPrice()); |
| | | } |
| | | integralCommodity.setRedemptionMethod(merchandise.getRedemptionMethod()); |
| | | integralCommodity.setGoodsType(merchandise.getType()); |
| | | integralCommodity.setSort(merchandise.getSort()); |
| | | commodity.add(integralCommodity); |
| | |
| | | storeCoupons.add(couponStore.getCouponId()); |
| | | } |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | QueryWrapper<Coupon> queryWrapper = new QueryWrapper<Coupon>().eq("state", 1).gt("endTime", sdf.format(new Date())); |
| | | QueryWrapper<Coupon> queryWrapper = new QueryWrapper<Coupon>() |
| | | .eq("state", 1).gt("endTime", sdf.format(new Date())); |
| | | if(storeCoupons.size() > 0){ |
| | | queryWrapper.in("id", storeCoupons); |
| | | } |
| | | List<Coupon> list = couponService.list(queryWrapper.last(" ORDER BY insertTime desc")); |
| | | if (!list.isEmpty()){ |
| | | for (Coupon coupon : list) { |
| | | IntegralCommodity integralCommodity = new IntegralCommodity(); |
| | | integralCommodity.setCommodityId(coupon.getId()); |
| | | integralCommodity.setCommodityImg(coupon.getCover()); |
| | | integralCommodity.setCommodityName(coupon.getName()); |
| | | integralCommodity.setCommodityPrice(coupon.getIntegral()); |
| | | integralCommodity.setGoodsType(coupon.getType()); |
| | | // integralCommodity.setSort(coupon.getSort()); |
| | | commodity.add(integralCommodity); |
| | | IntegralCommodity integralCommodity = new IntegralCommodity(); |
| | | integralCommodity.setCommodityId(coupon.getId()); |
| | | integralCommodity.setCommodityImg(coupon.getCover()); |
| | | integralCommodity.setCommodityName(coupon.getName()); |
| | | if(coupon.getRedemptionMethod() == 1){ |
| | | integralCommodity.setIntegral(coupon.getIntegral().intValue()); |
| | | } |
| | | if(coupon.getRedemptionMethod() == 2){ |
| | | integralCommodity.setCommodityPrice(coupon.getCash()); |
| | | integralCommodity.setIntegral(coupon.getIntegral().intValue()); |
| | | } |
| | | integralCommodity.setRedemptionMethod(coupon.getRedemptionMethod()); |
| | | integralCommodity.setGoodsType(4); |
| | | commodity.add(integralCommodity); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | System.out.println(commodity); |
| | | return commodity; |
| | | } |
| | | |
| | |
| | | |
| | | list = pmdsService.list(new QueryWrapper<PointsMerchandise>() |
| | | .eq("state", 1) |
| | | .eq("shelves", 1).le("startTime", new Date()).ge("endTime", new Date())); |
| | | .eq("shelves", 1) |
| | | .le("startTime", new Date()) |
| | | .ge("endTime", new Date()) |
| | | .eq("status", 1) |
| | | ); |
| | | if (list.size() > 0) { |
| | | Iterator<PointsMerchandise> iterator = list.iterator(); |
| | | while (iterator.hasNext()) { |
| | |
| | | detailsVo.setGoodName(coursePackage.getName()); |
| | | detailsVo.setBelongsScope(merchandise.getUserPopulation()); |
| | | int coursePackageNums = upmseService.count(new QueryWrapper<UserPointsMerchandise>() |
| | | .eq("pointsMerchandiseId", merchandise.getId())); |
| | | .eq("pointsMerchandiseId", merchandise.getId()).eq("payStatus", 2).eq("state", 1)); |
| | | detailsVo.setRedeemedNum(coursePackageNums); |
| | | detailsVo.setResidueNum(Math.max(merchandise.getQuantityIssued() - coursePackageNums, 0)); |
| | | detailsVo.setPerLimit(merchandise.getPickUpQuantity()); |
| | |
| | | detailsVo.setGoodName(merchandise.getName()); |
| | | detailsVo.setBelongsScope(merchandise.getUserPopulation()); |
| | | int count = upmseService.count(new QueryWrapper<UserPointsMerchandise>() |
| | | .eq("pointsMerchandiseId", merchandise.getId())); |
| | | .eq("pointsMerchandiseId", merchandise.getId()).eq("payStatus", 2).eq("state", 1)); |
| | | detailsVo.setRedeemedNum(count); |
| | | detailsVo.setResidueNum(Math.max(merchandise.getQuantityIssued() - count, 0)); |
| | | detailsVo.setPerLimit(merchandise.getPickUpQuantity()); |
| | |
| | | detailsVo.setGoodName(coupon.getName()); |
| | | detailsVo.setBelongsScope(coupon.getUserPopulation()); |
| | | int couponNums = upmseService.count(new QueryWrapper<UserPointsMerchandise>() |
| | | .eq("pointsMerchandiseId", merchandise.getId())); |
| | | .eq("pointsMerchandiseId", merchandise.getId()).eq("payStatus", 2).eq("state", 1)); |
| | | detailsVo.setRedeemedNum(couponNums); |
| | | detailsVo.setResidueNum(Math.max(coupon.getQuantityIssued() - couponNums, 0)); |
| | | detailsVo.setPerLimit(coupon.getPickUpQuantity()); |
| | |
| | | detailsVo.setGoodName(coursePackage.getName()); |
| | | detailsVo.setBelongsScope(merchandise.getUserPopulation()); |
| | | int coursePackageNums = upmseService.count(new QueryWrapper<UserPointsMerchandise>() |
| | | .eq("pointsMerchandiseId", merchandise.getId())); |
| | | .eq("pointsMerchandiseId", merchandise.getId()).eq("payStatus", 2).eq("state", 1)); |
| | | detailsVo.setRedeemedNum(coursePackageNums); |
| | | detailsVo.setResidueNum(Math.max(merchandise.getQuantityIssued() - coursePackageNums, 0)); |
| | | detailsVo.setPerLimit(merchandise.getPickUpQuantity()); |
| | |
| | | detailsVo.setGoodName(merchandise.getName()); |
| | | detailsVo.setBelongsScope(merchandise.getUserPopulation()); |
| | | int count = upmseService.count(new QueryWrapper<UserPointsMerchandise>() |
| | | .eq("pointsMerchandiseId", merchandise.getId())); |
| | | .eq("pointsMerchandiseId", merchandise.getId()).eq("payStatus", 2).eq("state", 1)); |
| | | detailsVo.setRedeemedNum(count); |
| | | detailsVo.setResidueNum(Math.max(merchandise.getQuantityIssued() - count, 0)); |
| | | detailsVo.setPerLimit(merchandise.getPickUpQuantity()); |
| | |
| | | list4.add(43); |
| | | detailsResponse.setRid(list4); |
| | | } |
| | | |
| | | } |
| | | } |
| | | //====================================================== |
| | | } |
| | | }else{ |
| | | // todo 返回门店id 和场地id |
| | | // 查询指定场地 |
| | | List<PointsMerchandiseStore> list = pmdstoService.list(new LambdaQueryWrapper<PointsMerchandiseStore>() |
| | | .eq(PointsMerchandiseStore::getPointsMerchandiseId, merchandise.getId())); |
| | | // 门店 |
| | | ArrayList<Integer> list3 = new ArrayList<>(); |
| | | // 场地 |
| | | ArrayList<Integer> list4 = new ArrayList<>(); |
| | | for (PointsMerchandiseStore temp : list) { |
| | | Integer storeId = temp.getStoreId(); |
| | | Integer siteId = temp.getSiteId(); |
| | | list3.add(storeId); |
| | | list4.add(siteId); |
| | | } |
| | | detailsResponse.setRid(list4); |
| | | detailsResponse.setSid(list3); |
| | | } |
| | | |
| | | |
| | |
| | | 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) && |
| | |
| | | @PostMapping("/base/pointMerchars/updateDetailsUserPointMercase") |
| | | public void updateDetailsUserPointMercase(@RequestBody UserPointsMerchandise merchandise) { |
| | | merchandise.setUserId(null); |
| | | merchandise.setPointsMerchandiseId(null); |
| | | upmseService.updateById(merchandise); |
| | | } |
| | | |
| | |
| | | public int queryUserHasGoodsNums(@RequestBody AppUserGoodResp goodResp) { |
| | | int count = upmseService.count(new LambdaQueryWrapper<UserPointsMerchandise>() |
| | | .eq(UserPointsMerchandise::getUserId, goodResp.getAppUserId()) |
| | | .eq(UserPointsMerchandise::getPointsMerchandiseId, goodResp.getGoodId())); |
| | | .eq(UserPointsMerchandise::getPointsMerchandiseId, goodResp.getGoodId()) |
| | | .eq(UserPointsMerchandise::getPayStatus, 2).eq(UserPointsMerchandise::getState, 1)); |
| | | System.out.println(count); |
| | | return count; |
| | | } |
| | |
| | | @PostMapping("/base/pointMerchars/queryUserHasGoodsNums1") |
| | | public int queryUserHasGoodsNums1(@RequestBody AppUserGoodResp goodResp) { |
| | | int count = upmseService.count(new LambdaQueryWrapper<UserPointsMerchandise>() |
| | | .eq(UserPointsMerchandise::getPointsMerchandiseId, goodResp.getGoodId())); |
| | | .eq(UserPointsMerchandise::getPointsMerchandiseId, goodResp.getGoodId()) |
| | | .eq(UserPointsMerchandise::getPayStatus, 2).eq(UserPointsMerchandise::getState, 1)); |
| | | System.out.println(count); |
| | | return count; |
| | | } |
| | |
| | | @PostMapping("/base/pointMerchars/getConsumeDetails") |
| | | public List<ConsumeDetail> getConsumeDetails(@RequestBody BillingDataRequestVo requestVo) { |
| | | return upmseService.getConsumeDetails(requestVo); |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | |
| | | List<Map<String, Object>> mapList = new ArrayList<>(); |
| | | LambdaQueryWrapper<UserPointsMerchandise> userPointsMerchandiseLambdaQueryWrapper = new LambdaQueryWrapper<>(); |
| | | userPointsMerchandiseLambdaQueryWrapper.eq(UserPointsMerchandise::getPointsMerchandiseId, pointMercharsPayedVo.getId()); |
| | | userPointsMerchandiseLambdaQueryWrapper.eq(UserPointsMerchandise::getPayStatus, 2).eq(UserPointsMerchandise::getState, 1); |
| | | if (ToolUtil.isNotEmpty(pointMercharsPayedVo.getStatus())) { |
| | | userPointsMerchandiseLambdaQueryWrapper.eq(UserPointsMerchandise::getStatus, pointMercharsPayedVo.getStatus()); |
| | | } |
| | | List<UserPointsMerchandise> list = upmseService.list(userPointsMerchandiseLambdaQueryWrapper); |
| | | List<UserPointsMerchandise> list = upmseService.list(userPointsMerchandiseLambdaQueryWrapper.orderByDesc(UserPointsMerchandise::getPaymentTime)); |
| | | System.out.println(list); |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | if (list.size() > 0) { |
| | | for (UserPointsMerchandise pointsMerchandise : list) { |
| | | Map<String, Object> map = new HashMap<>(); |
| | | map.put("id", pointsMerchandise.getId()); |
| | | map.put("userId", pointsMerchandise.getUserId()); |
| | | map.put("status", pointsMerchandise.getStatus()); |
| | | map.put("payTime", sdf.format(pointsMerchandise.getPaymentTime())); |
| | | mapList.add(map); |
| | | } |
| | | } |
| | |
| | | case 3: |
| | | infoOneVo.setExchangeArea("指定门店"); |
| | | break; |
| | | case 4: |
| | | infoOneVo.setExchangeArea("指定场地"); |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | |
| | | List<StoreVos> storeVos = new ArrayList<>(); |
| | | List<PointsMerchandiseStore> list = pmdstoService.list(new QueryWrapper<PointsMerchandiseStore>() |
| | | .eq("pointsMerchandiseId", id)); |
| | | if (list.size() > 0) { |
| | | List<Integer> collect = list.stream().map(PointsMerchandiseStore::getStoreId).collect(Collectors.toList()); |
| | | List<Store> stores = stoClient.queryStoreByIds(collect); |
| | | if (stores.size() > 0) { |
| | | for (Store store : stores) { |
| | | StoreVos storeVos1 = new StoreVos(); |
| | | storeVos1.setNum1(store.getProvince() + "省" + store.getCity() + "市"); |
| | | if (store.getOperatorId() == 0) { |
| | | storeVos1.setNum2("平台"); |
| | | } else { |
| | | PointsMerchandise byId = pmdsService.getById(id); |
| | | |
| | | storeVos1.setNum2(store.getOName()); |
| | | if (list.size() > 0) { |
| | | |
| | | if (byId.getUseScope()==3){ |
| | | // 如果是指定门店 |
| | | List<Integer> collect = list.stream().map(PointsMerchandiseStore::getStoreId).collect(Collectors.toList()); |
| | | |
| | | List<Store> stores = stoClient.queryStoreByIds(collect); |
| | | if (stores.size() > 0) { |
| | | int a = 0; |
| | | for (Store store : stores) { |
| | | StoreVos storeVos1 = new StoreVos(); |
| | | storeVos1.setNum1(store.getProvince() + "省" + store.getCity() + "市"); |
| | | if (store.getOperatorId()==null){ |
| | | storeVos1.setNum2("平台"); |
| | | }else if (store.getOperatorId() == 0) { |
| | | storeVos1.setNum2("平台"); |
| | | } else { |
| | | storeVos1.setNum2(store.getOName()); |
| | | } |
| | | storeVos1.setNum3(store.getName()); |
| | | storeVos1.setNum4(store.getIds()); |
| | | storeVos.add(storeVos1); |
| | | } |
| | | storeVos1.setNum3(store.getName()); |
| | | storeVos1.setNum4(store.getIds()); |
| | | storeVos.add(storeVos1); |
| | | } |
| | | }else if (byId.getUseScope()==4){ |
| | | // 如果是指定场地 |
| | | List<Integer> collect1 = list.stream().map(PointsMerchandiseStore::getSiteId).distinct().collect(Collectors.toList()); |
| | | int temp =0; |
| | | List<Integer> collect = list.stream().map(PointsMerchandiseStore::getStoreId).collect(Collectors.toList()); |
| | | List<Store> stores1 = new ArrayList<>(); |
| | | for (Integer integer : collect) { |
| | | List<Integer> list1 = new ArrayList<>(); |
| | | list1.add(integer); |
| | | List<Store> stores = stoClient.queryStoreByIds(list1); |
| | | stores1.addAll(stores); |
| | | } |
| | | List<Store> stores = stoClient.queryStoreByIds(collect); |
| | | while (temp!=collect1.size()){ |
| | | for (Store store : stores1) { |
| | | Integer integer = collect1.get(temp); |
| | | Site site = siteClient.querySiteById(integer); |
| | | StoreVos storeVos1 = new StoreVos(); |
| | | storeVos1.setNum5(site.getName()); |
| | | storeVos1.setNum1(store.getProvince() + "省" + store.getCity() + "市"); |
| | | if (store.getOperatorId()==null){ |
| | | storeVos1.setNum2("平台"); |
| | | }else if (store.getOperatorId() == 0) { |
| | | storeVos1.setNum2("平台"); |
| | | } else { |
| | | storeVos1.setNum2(store.getOName()); |
| | | } |
| | | storeVos1.setNum3(store.getName()); |
| | | storeVos1.setNum4(store.getIds()); |
| | | storeVos.add(storeVos1); |
| | | temp++; |
| | | } |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | } |
| | | return storeVos; |
| | | } |
| | | |
| | | |
| | | |
| | | @ResponseBody |
| | | @PostMapping("/base/pointMerchars/updateGoodsDetail") |
| | | public boolean updateGoodsDetail(@RequestBody Map<String, Object> map) { |
| | | try { |
| | | String name = (String) map.get("name"); |
| | | Integer pointMerchandiseId = (Integer) map.get("pointMerchandiseId"); |
| | | PointsMerchandise byId1 = pmdsService.getById(pointMerchandiseId); |
| | | if (Integer.valueOf(map.get("type").toString()) != 1) { |
| | | byId1.setStatus(2); |
| | | } |
| | | if(StringUtils.hasLength(name)){ |
| | | byId1.setName(name); |
| | | } |
| | | Integer quantityIssued = (Integer) map.get("quantityIssued"); |
| | | Integer pickUpQuantity = (Integer) map.get("pickUpQuantity"); |
| | |
| | | public Boolean addOther(@RequestBody String pam) { |
| | | Boolean save = false; |
| | | String[] split = pam.split("_"); |
| | | if (split.length>2){ |
| | | if (StringUtils.hasLength(split[2])){ |
| | | for (String s : split[2].split(",")) { |
| | | PointsMerchandiseStore pointsMerchandiseStore = new PointsMerchandiseStore(); |
| | | pointsMerchandiseStore.setPointsMerchandiseId(Integer.valueOf(split[0])); |
| | | pointsMerchandiseStore.setSiteId(Integer.valueOf(s)); |
| | | Site site = siteClient.querySiteById(Integer.valueOf(s)); |
| | | pointsMerchandiseStore.setStoreId(site.getStoreId()); |
| | | save = pmdstoService.save(pointsMerchandiseStore); |
| | | } |
| | | // 这个门票是选择的场地 |
| | | return save; |
| | | } |
| | | } |
| | | for (String s : split[1].split(",")) { |
| | | PointsMerchandiseStore pointsMerchandiseStore = new PointsMerchandiseStore(); |
| | | pointsMerchandiseStore.setPointsMerchandiseId(Integer.valueOf(split[0])); |
| | |
| | | } |
| | | return save; |
| | | } |
| | | |
| | | |
| | | @PostMapping("/base/pointMerchars/addCitys") |
| | | public Boolean addCitys(@RequestBody ArrayList<Map<String, String>> objects) { |
| | |
| | | List<Integer> ids = queryDataFee.getIds(); |
| | | if (ids.size() == 0) { |
| | | ids.add(-1); |
| | | }else{ |
| | | |
| | | } |
| | | List<PointsMerchandise> list1 = pmdsService.list(new LambdaQueryWrapper<PointsMerchandise>().eq(PointsMerchandise::getRedemptionMethod, 3)); |
| | | LambdaQueryWrapper<UserPointsMerchandise> vipPaymentLambdaQueryWrapper = new LambdaQueryWrapper<>(); |