a.json
@@ -1,13 +1,17 @@ { "total": "总数", "pageSize": "每页大小", "pageNum": "页码", "records": [ "access_token": "90_4PJ8b5aLJa2M7aCtoskALEzfoap1me291Jc3ogi18NGH0Ts-Tol7K3COLLvkQ1JLcouvew11ORqcHf6mH5LA2KSC08NxiDhsjRPKuRh14mpvQRHmeFvwr-wKWjkANLdACAUHF", "order_key": { "order_number_type": 1 }, "logistics_type": 1, "delivery_mode": 1, "shipping_list": [ { "item": "项目名称", "time": "时间", "amount": "变动金额", "type": "加或减标记: 1 加 2 减" "item_desc": "这是一个测试" } ] ], "upload_time": "2022-12-15T13:29:35.120+08:00", "payer": { "openid": "ooOrs63KYDHcyhnUmTFpprHc6sb4" } } ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/factory/OrderClientFallbackFactory.java
@@ -40,6 +40,11 @@ } @Override public R<List<Order>> getRedeemedOrdersByShop(Integer shopId) { return R.fail("获取已核销的订单失败:" + cause.getMessage()); } @Override public R<Order> getOrderById(Long id) { return R.fail("根据id获取订单详情失败:" + cause.getMessage()); } ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/feignClient/OrderClient.java
@@ -54,6 +54,14 @@ @PostMapping("/order/getAppUserByShoppingShop") R<Set<Long>> getAppUserByShoppingShop(@RequestParam("shopId") Integer shopId); /** * 获取指定门店的核销订单 */ @GetMapping("/order/getRedeemedOrdersByShop") R<List<Order>> getRedeemedOrdersByShop(@RequestParam("shopId") Integer shopId); /** * 根据id获取订单详情 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/SysUserFallbackFactory.java
@@ -16,6 +16,7 @@ @Override public R<SysUser> getSysUser(Long userId) { System.out.println(cause.getMessage()); return R.fail("获取用户失败:" + cause.getMessage()); } ruoyi-gateway/src/main/resources/bootstrap.yml
@@ -23,16 +23,16 @@ nacos: discovery: # 服务注册地址 server-addr: 192.168.110.111/:8848 server-addr: 127.0.0.1:8848 service: ruoyi-gateway group: DEFAULT_GROUP namespace: 20c168da-8cf1-4fff-bc38-bc62df656b6a namespace: cdf47c5f-2bf9-4dec-a616-a8dc653aceb9 username: password: config: # 配置中心地址 server-addr: 192.168.110.111/:8848 namespace: 20c168da-8cf1-4fff-bc38-bc62df656b6a server-addr: 127.0.0.1:8848 namespace: cdf47c5f-2bf9-4dec-a616-a8dc653aceb9 username: password: group: DEFAULT_GROUP @@ -52,24 +52,41 @@ discovery: # 服务注册地址 server-addr: 127.0.0.1:8848 service: ruoyi-gateway service: ${spring.application.name} group: DEFAULT_GROUP namespace: cdf47c5f-2bf9-4dec-a616-a8dc653aceb9 username: password: namespace: 20c168da-8cf1-4fff-bc38-bc62df656b6a username: nacos password: nacos config: # 配置中心地址 server-addr: 127.0.0.1:8848 namespace: cdf47c5f-2bf9-4dec-a616-a8dc653aceb9 username: password: namespace: 20c168da-8cf1-4fff-bc38-bc62df656b6a username: nacos password: nacos group: DEFAULT_GROUP name: ruoyi-gateway name: ${spring.application.name} # 配置文件格式 file-extension: yml # 共享配置 shared-configs: - application.${spring.cloud.nacos.config.file-extension} sentinel: # 取消控制台懒加载 eager: true transport: # 控制台地址 dashboard: 192.168.0.137:8718 # nacos配置持久化 datasource: ds1: nacos: server-addr: 127.0.0.1:8848 dataId: sentinel-ruoyi-gateway groupId: DEFAULT_GROUP username: nacos password: nacos data-type: json rule-type: gw-flow --- spring: config: ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java
@@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollectionUtil; import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; @@ -171,7 +172,7 @@ @PostMapping("/getCouponCount") public R<Long> getCouponCount(@RequestParam("userId") Long userId, @RequestParam("couponId") Integer couponId) { LambdaQueryChainWrapper<UserCoupon> chainWrapper = userCouponService.lambdaQuery().eq(UserCoupon::getCouponId, couponId); if(null != userId && -1 == userId){ if(null != userId && -1 != userId){ chainWrapper.eq(UserCoupon::getAppUserId, userId); } Long count = chainWrapper.count(); @@ -688,14 +689,42 @@ return R.ok(list); } @GetMapping("/getUserPointsPage") @ApiOperation(value = "用户列表", tags = {"管理后台"}) public R<IPage<AppUser>> getUserPointsPage(@ApiParam("页码") @RequestParam Integer pageNum, @ApiParam("每一页数据大小") Integer pageSize, AppUser appUser) { Long userId = tokenService.getLoginUser().getUserid(); SysUser data = sysUserClient.getSysUser(userId).getData(); QueryWrapper<AppUser> queryWrapper = new QueryWrapper<>(); if (data.getRoleType() == 2) { Integer shopId = data.getObjectId(); List<Order> orders = orderClient.getRedeemedOrdersByShop(shopId).getData(); List<Long> userIds = orders.stream().map(Order::getAppUserId).collect(Collectors.toList()); queryWrapper.in(!CollectionUtils.isEmpty(userIds), "id", userIds) .like(StringUtils.isNotEmpty( appUser.getName()),"name", appUser.getName()); } queryWrapper.eq("del_flag", 0); queryWrapper.ne("status", 3); List<AppUser> appUserList = appUserService.list(queryWrapper); Page<AppUser> objectPage = Page.of(pageNum, pageSize); objectPage.setRecords(appUserList); return R.ok(objectPage); } /** * 获取用户列表 */ @GetMapping("/getAppuserPage") @ApiOperation(value = "用户列表", tags = {"管理后台"}) public R<IPage<AppUser>> getAppuserPage(@ApiParam("页码") @RequestParam Integer pageNum, @ApiParam("每一页数据大小") Integer pageSize, AppUser appUser) { Long userid = tokenService.getLoginUser().getUserid(); SysUser sysUser = sysUserClient.getSysUser(userid).getData(); Integer shopId = null; @@ -721,6 +750,8 @@ } return R.ok(appuserPage); } @GetMapping("/shop/getAppuserPage") @ApiOperation(value = "用户列表", tags = {"门店后台"}) @@ -1072,22 +1103,46 @@ @GetMapping("/statistics") @ApiOperation(value = "用户统计", tags = {"管理后台-首页统计-用户统计"}) public R<UserStatistics> statistics() { Long userid = tokenService.getLoginUser().getUserid(); SysUser data = sysUserClient.getSysUser(userid).getData(); Integer shopId = null; Set<Long> userId = null; Long userId = tokenService.getLoginUser().getUserid(); SysUser data = sysUserClient.getSysUser(userId).getData(); QueryWrapper<AppUser> queryWrapper = new QueryWrapper<>(); if(data.getRoleType() == 2){ shopId = data.getObjectId(); userId = orderClient.getAppUserByShoppingShop(shopId).getData(); Integer shopId = data.getObjectId(); List<Order> orders = orderClient.getRedeemedOrdersByShop(shopId).getData(); List<Long> userIds = orders.stream().map(Order::getAppUserId).collect(Collectors.toList()); queryWrapper.in(!CollectionUtils.isEmpty(userIds), "id", userIds); // userIds 不为空时,查询 id 在 userIds 中 } UserStatistics userStatistics = appUserMapper.getUserStatistics(shopId, userId); List<Shop> shopList = shopClient.getAllShop().getData(); if (CollectionUtil.isNotEmpty(shopList)){ long count = shopList.stream().map(Shop::getAppUserId).distinct().count(); userStatistics.setShopUser((int) count); }else { userStatistics.setShopUser(0); } queryWrapper.eq("del_flag", 0); queryWrapper.ne("status", 3); List<AppUser> appUserList = appUserService.list(queryWrapper); Map<Integer, Long> vipIdCountMap = appUserList.stream() .collect(Collectors.groupingBy(AppUser::getVipId, Collectors.counting())); UserStatistics userStatistics = new UserStatistics(); userStatistics.setTotalUser(appUserList.size()); userStatistics.setConsumerUser(vipIdCountMap.getOrDefault(0, 0L).intValue() + vipIdCountMap.getOrDefault(1, 0L).intValue() + vipIdCountMap.getOrDefault(2, 0L).intValue() + vipIdCountMap.getOrDefault(3, 0L).intValue()); userStatistics.setCommonUser(vipIdCountMap.getOrDefault(1, 0L).intValue()); userStatistics.setGoldUser(vipIdCountMap.getOrDefault(2, 0L).intValue()); userStatistics.setDiamondUser(vipIdCountMap.getOrDefault(3, 0L).intValue()); userStatistics.setEntrepreneurUser(vipIdCountMap.getOrDefault(4, 0L).intValue() + vipIdCountMap.getOrDefault(5, 0L).intValue() + vipIdCountMap.getOrDefault(6, 0L).intValue() + vipIdCountMap.getOrDefault(7, 0L).intValue()); userStatistics.setProxyUser(vipIdCountMap.getOrDefault(4, 0L).intValue()); userStatistics.setAgentUser(vipIdCountMap.getOrDefault(5, 0L).intValue()); userStatistics.setTotalAgentUser(vipIdCountMap.getOrDefault(6, 0L).intValue()); userStatistics.setPartnerUser(vipIdCountMap.getOrDefault(7, 0L).intValue()); long shopUserCount = appUserList.stream() .filter(appUser -> appUser.getUserType() == 2) .count(); userStatistics.setShopUser((int) shopUserCount); return R.ok(userStatistics); } ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserCouponController.java
@@ -300,9 +300,8 @@ @PostMapping("/getCouponInfo") public R<CouponInfoVo> getCouponInfo(@RequestParam("userCouponId") Long userCouponId){ UserCoupon userCoupon = userCouponService.getById(userCouponId); CouponInfo data = couponClient.detail(userCoupon.getCouponId()).getData(); CouponInfoVo couponInfoVo = new CouponInfoVo(); BeanUtils.copyProperties(data, couponInfoVo); String jsonStr = userCoupon.getCouponInfo(); CouponInfoVo couponInfoVo = JSON.parseObject(jsonStr, CouponInfoVo.class); return R.ok(couponInfoVo); } ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java
@@ -1043,7 +1043,7 @@ Integer online = jsonObject.getInteger("online"); online += 10; //满足一个小时,开始发放积分,计时归0 if(time >= 3600000L && 60 <= online){ if(time >= 60000 && 1 <= online){ jsonObject.put("time", System.currentTimeMillis()); jsonObject.put("online", 0); redisService.setCacheObject("ONLINE_" + userid, jsonObject, 1L, TimeUnit.HOURS); ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/BalanceChangeRecordServiceImpl.java
@@ -98,7 +98,7 @@ BigDecimal beforeAmount = changeRecord.getBeforeAmount(); BigDecimal afterAmount = changeRecord.getAfterAmount(); if (beforeAmount.compareTo(afterAmount) < 0 && changeRecord.getChangeType().equals(2)){ if (beforeAmount.compareTo(afterAmount) > 0){ BigDecimal changeAmount = changeRecord.getChangeAmount(); totalWithdraw = totalWithdraw.add(changeAmount); walletStatisticsDetail.setFlag(2); ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserCouponServiceImpl.java
@@ -1,6 +1,7 @@ package com.ruoyi.account.service.impl; import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.account.api.vo.PaymentUserCouponVo; @@ -46,11 +47,13 @@ public List<PaymentUserCouponVo> getUserCoupon(Long userId, Integer type) { List<UserCoupon> list = this.list(new LambdaQueryWrapper<UserCoupon>().eq(UserCoupon::getAppUserId, userId).eq(UserCoupon::getDelFlag, 0) .isNull(UserCoupon::getUseTime).gt(UserCoupon::getEndTime, LocalDateTime.now()).last(" and now() between start_time and end_time")); List<Integer> couponIds = list.stream().map(UserCoupon::getCouponId).collect(Collectors.toList()); if(couponIds.size() == 0){ return null; List<CouponInfo> couponInfoList = new ArrayList<>(); for (String jsonStr : list.stream().map(UserCoupon::getCouponInfo).collect(Collectors.toList())) { CouponInfo couponInfo = JSONObject.parseObject(jsonStr, CouponInfo.class); couponInfoList.add(couponInfo); } List<CouponInfo> couponInfoList = couponInfoClient.getCouponInfoList(couponIds).getData(); //构建返回数据 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy.MM.dd HH:mm"); List<PaymentUserCouponVo> infoVoList = new ArrayList<>(); ruoyi-service/ruoyi-account/src/main/resources/bootstrap.yml
@@ -23,7 +23,7 @@ nacos: discovery: # 服务注册地址 server-addr: 127.0.0.1:8848 server-addr: 192.168.110.106:8848 service: ${spring.application.name} group: DEFAULT_GROUP namespace: cdf47c5f-2bf9-4dec-a616-a8dc653aceb9 @@ -31,12 +31,12 @@ password: nacos config: # 配置中心地址 server-addr: 127.0.0.1:8848 server-addr: 192.168.110.106:8848 namespace: cdf47c5f-2bf9-4dec-a616-a8dc653aceb9 group: DEFAULT_GROUP name: ${spring.application.name} username: nacos password: nacos group: DEFAULT_GROUP name: ${spring.application.name} # 配置文件格式 file-extension: yml # 共享配置 @@ -54,13 +54,13 @@ server-addr: 127.0.0.1:8848 service: ${spring.application.name} group: DEFAULT_GROUP namespace: cdf47c5f-2bf9-4dec-a616-a8dc653aceb9 namespace: 20c168da-8cf1-4fff-bc38-bc62df656b6a username: nacos password: nacos config: # 配置中心地址 server-addr: 127.0.0.1:8848 namespace: cdf47c5f-2bf9-4dec-a616-a8dc653aceb9 namespace: 20c168da-8cf1-4fff-bc38-bc62df656b6a username: nacos password: nacos group: DEFAULT_GROUP ruoyi-service/ruoyi-account/src/main/resources/mapper/account/UserPointMapper.xml
@@ -31,7 +31,7 @@ t_user_point tup LEFT JOIN t_app_user tau ON tup.app_user_id = tau.id <where> tup.type not in (8, 9, 14) tup.type not in (8, 9, 14) and tau.status != 3 and tau.del_flag = 0 <if test="userPoint.userName != null and userPoint.userName != ''"> AND tau.`name` LIKE concat('%',#{userPoint.userName},'%') </if> ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java
@@ -483,6 +483,16 @@ return R.ok(collect); } /** * 获取指定门店的核销订单 */ @GetMapping("/getRedeemedOrdersByShop") public R<List<Order>> getRedeemedOrdersByShop(@RequestParam("shopId") Integer shopId) { return R.ok(orderService.list(new LambdaQueryWrapper<Order>() .isNotNull(Order::getEndTime) .eq(Order::getShopId, shopId))); } /** * 获取订单快递明细 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
@@ -9,6 +9,7 @@ import com.ruoyi.common.core.constant.ExpressCompanyMap; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.exception.ServiceException; import com.ruoyi.common.core.utils.HttpUtils; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.utils.uuid.QRCodeGenerator; import com.ruoyi.common.core.web.page.PageInfo; @@ -183,9 +184,9 @@ } // 优惠券 String couponJson = order.getCouponJson(); CouponInfo couponInfo = new CouponInfo(); JSONObject jsonObject = new JSONObject(); if (StringUtils.isNotEmpty(couponJson)) { couponInfo = JSONObject.parseObject(couponJson, CouponInfo.class); jsonObject = JSONObject.parseObject(couponJson); } // 参与活动 @@ -208,7 +209,7 @@ orderDetailVO.setOrderNumber(order.getOrderNumber()); orderDetailVO.setCreateTime(order.getCreateTime()); orderDetailVO.setTotalAmount(order.getTotalAmount()); orderDetailVO.setCouponName(couponInfo.getCouponName()); orderDetailVO.setCouponName(jsonObject.getString("couponName")); orderDetailVO.setActivityName(orderActivityInfo.getActivityName()); orderDetailVO.setCouponAmount(order.getDiscountTotalAmount()); orderDetailVO.setExpressAmount(order.getExpressAmount()); @@ -246,6 +247,7 @@ } return orderDetailVO; } @Override public boolean check(Order order, Integer shopId, Long userId) { @@ -1113,9 +1115,38 @@ userAddress.getProvince() + userAddress.getCity()); order.setExpressResult(JSON.toJSONString(mapTrackKD100Vo)); this.updateById(order); String s = HttpUtils.sendGet("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=wxdeed472c98e42a54&secret=c89c697c981452480e0781fb82d4284c"); JSONObject jsonObject2 = JSONObject.parseObject(s); System.out.println(jsonObject.getString("access_token")); return R.ok(); } public static void main(String[] args) { String a = "{\n" + " \"access_token\": \"90_4PJ8b5aLJa2M7aCtoskALEzfoap1me291Jc3ogi18NGH0Ts-Tol7K3COLLvkQ1JLcouvew11ORqcHf6mH5LA2KSC08NxiDhsjRPKuRh14mpvQRHmeFvwr-wKWjkANLdACAUHF\",\n" + " \"order_key\": {\n" + " \"order_number_type\": 1\n" + " },\n" + " \"logistics_type\": 1,\n" + " \"delivery_mode\": 1,\n" + " \"shipping_list\": [\n" + " {\n" + " \"item_desc\": \"这是一个测试\"\n" + " }\n" + " ],\n" + " \"upload_time\": \"2022-12-15T13:29:35.120+08:00\",\n" + " \"payer\": {\n" + " \"openid\": \"ooOrs63KYDHcyhnUmTFpprHc6sb4\"\n" + " }\n" + "}"; JSONObject jsonObject = JSONObject.parseObject(a); System.out.println(jsonObject); } public static void importExpress2(String filePath) throws MalformedURLException { // 从网络地址读取 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java
@@ -1519,6 +1519,9 @@ if(order.getOrderType() == 1 && StringUtils.isEmpty(order.getAddressJson())){ order.setOrderStatus(2); } String r7TrxNo = uniPayCallbackResult.getR7_TrxNo(); order.setSerialNumber(r7TrxNo); orderService.updateById(order); //处理优惠券 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/payment/PaymentUtil.java
@@ -34,7 +34,7 @@ /** * 支付回调地址 */ private static final String callbackUrl = "https://www.qijisheng.top"; private static final String callbackUrl = "http://luodaxia.free.idcfengye.com"; /** ruoyi-service/ruoyi-order/src/main/resources/bootstrap.yml
@@ -23,7 +23,7 @@ nacos: discovery: # 服务注册地址 server-addr: 127.0.0.1:8848 server-addr: 192.168.110.106:8848 service: ${spring.application.name} group: DEFAULT_GROUP namespace: cdf47c5f-2bf9-4dec-a616-a8dc653aceb9 @@ -31,12 +31,12 @@ password: nacos config: # 配置中心地址 server-addr: 127.0.0.1:8848 server-addr: 192.168.110.106:8848 namespace: cdf47c5f-2bf9-4dec-a616-a8dc653aceb9 group: DEFAULT_GROUP name: ${spring.application.name} username: nacos password: nacos group: DEFAULT_GROUP name: ${spring.application.name} # 配置文件格式 file-extension: yml # 共享配置 @@ -60,7 +60,7 @@ config: # 配置中心地址 server-addr: 127.0.0.1:8848 namespace: cdf47c5f-2bf9-4dec-a616-a8dc653aceb9 namespace: 20c168da-8cf1-4fff-bc38-bc62df656b6a username: nacos password: nacos group: DEFAULT_GROUP ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/CouponInfoController.java
@@ -161,6 +161,8 @@ Long userid = tokenService.getLoginUserApplet().getUserid(); AppUser appUserById = appUserClient.getAppUserById(userid); LocalDateTime now = LocalDateTime.now(); //查出全部可领取的优惠劵 List<CouponInfo> list = couponInfoService.lambdaQuery() .le(CouponInfo::getSendStartTime, now) @@ -175,32 +177,46 @@ .apply("FIND_IN_SET('" + appUserById.getId() + "', person_ids)") .list(); //查出指定会员可领取优惠劵 List<CouponInfo> list2 = couponInfoService.lambdaQuery().le(CouponInfo::getSendStartTime, now).ge(CouponInfo::getSendEndTime, now).eq(CouponInfo::getPersonType, 3).apply("FIND_IN_SET('" + appUserById.getVipId() + "', vip_ids)").list(); List<CouponInfo> list2 = couponInfoService.lambdaQuery() .le(CouponInfo::getSendStartTime, now) .ge(CouponInfo::getSendEndTime, now) .eq(CouponInfo::getPersonType, 3) .apply("FIND_IN_SET('" + appUserById.getVipId() + "', vip_ids)").list(); List<CouponInfo> returnList = new ArrayList<>(); count(userid, list, returnList); count(userid, list1, returnList); count(userid, list2, returnList); return R.ok(returnList); returnList.addAll(list); returnList.addAll(list1); returnList.addAll(list2); List<CouponInfo> collect = returnList.stream().filter(couponInfo -> { Integer couponInfoId = couponInfo.getId(); Integer sendNum = couponInfo.getSendNum(); Integer maxNum = couponInfo.getMaxNum(); Long count = appUserClient.getCouponCount(-1L, couponInfoId).getData(); Long count2 = appUserClient.getCouponCount(userid, couponInfoId).getData(); return count < sendNum && count2 < maxNum; }).collect(Collectors.toList()); return R.ok(collect); } private void count(Long userid, List<CouponInfo> list1, List<CouponInfo> returnList) { for (CouponInfo couponInfo : list1) { Long count = appUserClient.getCouponCount(-1L, couponInfo.getId()).getData(); if(count >= couponInfo.getSendNum()){ Integer couponInfoId = couponInfo.getId(); Integer sendNum = couponInfo.getSendNum(); Integer maxNum = couponInfo.getMaxNum(); Long count = appUserClient.getCouponCount(-1L, couponInfoId).getData(); if(count >= sendNum){ continue; } count = appUserClient.getCouponCount(userid, couponInfo.getId()).getData(); couponInfo.setMaxNum(couponInfo.getMaxNum() - count.intValue()); if((couponInfo.getSendNum() - count) >= couponInfo.getMaxNum()){ for (int i = 0; i < couponInfo.getMaxNum(); i++) { returnList.add(couponInfo); } }else{ for (int i = 0; i < (couponInfo.getSendNum() - count); i++) { returnList.add(couponInfo); } } count = appUserClient.getCouponCount(userid, couponInfoId).getData(); couponInfo.setMaxNum(maxNum - count.intValue()); if(count < maxNum){ continue; } for (int i = 0; i < maxNum; i++) { returnList.add(couponInfo); } } } ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShareController.java
@@ -324,7 +324,8 @@ Boolean data = userPointClient.judgmentDailyShare(userid).getData(); if(!data){ AppUser appUser = appUserClient.getAppUserById(userid); PointSetting pointSetting = pointSettingService.getOne(new LambdaQueryWrapper<PointSetting>().eq(PointSetting::getId, appUser.getVipId()).eq(PointSetting::getDelFlag, 0)); PointSetting pointSetting = pointSettingService.getOne(new LambdaQueryWrapper<PointSetting>() .eq(PointSetting::getId, appUser.getVipId()).eq(PointSetting::getDelFlag, 0)); if(null != pointSetting){ Integer everySharePoint = pointSetting.getEverySharePoint(); Integer lavePoint = appUser.getLavePoint(); @@ -336,7 +337,6 @@ appUser.setTotalPoint(appUser.getTotalPoint() + everySharePoint); appUserClient.editAppUserById(appUser); //添加积分流水 if(everySharePoint > 0){ UserPoint userPoint = new UserPoint(); userPoint.setAppUserId(userid); userPoint.setType(4); @@ -347,12 +347,18 @@ userPoint.setAppUserId(appUser.getId()); userPointClient.saveUserPoint(userPoint); } } } } return R.ok(one); } //appUserShare/ @GetMapping("/saveAppUserShare") public R<Share> saveAppUserShare() { return getAppletShare(); } } ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopController.java
@@ -408,6 +408,10 @@ return R.ok(); } public static void main(String[] args) { System.out.println("17780483325".substring(5)); } @PutMapping("/freezingOrThawing") @ApiOperation(value = "门店管理-冻结/解冻门店", tags = {"管理后台-门店管理"}) ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/ShopServiceImpl.java
@@ -134,7 +134,13 @@ } } }); return nearbyShopVOS; return sortByDistance(nearbyShopVOS); } public static List<NearbyShopVO> sortByDistance(List<NearbyShopVO> nearbyShopVOS) { return nearbyShopVOS.stream() .sorted(Comparator.comparingDouble(NearbyShopVO::getDistance)) .collect(Collectors.toList()); } @Override ruoyi-service/ruoyi-other/src/main/resources/bootstrap.yml
@@ -23,16 +23,16 @@ nacos: discovery: # 服务注册地址 server-addr: 192.168.110.111/:8848 server-addr: 192.168.110.106:8848 service: ${spring.application.name} group: DEFAULT_GROUP namespace: 20c168da-8cf1-4fff-bc38-bc62df656b6a namespace: cdf47c5f-2bf9-4dec-a616-a8dc653aceb9 username: password: config: # 配置中心地址 server-addr: 192.168.110.111/:8848 namespace: 20c168da-8cf1-4fff-bc38-bc62df656b6a server-addr: 192.168.110.106:8848 namespace: cdf47c5f-2bf9-4dec-a616-a8dc653aceb9 username: password: group: DEFAULT_GROUP @@ -54,15 +54,15 @@ server-addr: 127.0.0.1:8848 service: ${spring.application.name} group: DEFAULT_GROUP namespace: cdf47c5f-2bf9-4dec-a616-a8dc653aceb9 username: password: namespace: 20c168da-8cf1-4fff-bc38-bc62df656b6a username: nacos password: nacos config: # 配置中心地址 server-addr: 127.0.0.1:8848 namespace: cdf47c5f-2bf9-4dec-a616-a8dc653aceb9 username: password: namespace: 20c168da-8cf1-4fff-bc38-bc62df656b6a username: nacos password: nacos group: DEFAULT_GROUP name: ${spring.application.name} # 配置文件格式