From f19155dcda0413563963d545eed3045364814c0d Mon Sep 17 00:00:00 2001 From: jiangqs <jiangqs> Date: 星期六, 12 八月 2023 05:14:27 +0800 Subject: [PATCH] bug --- ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsMapper.xml | 1 ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml | 79 ++- ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/goods/GoodsService.java | 3 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/RuoYiGoodsApplication.java | 2 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberSuggestServiceImpl.java | 9 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/RuoYiSystemApplication.java | 2 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteMemberService.java | 12 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponGetVo.java | 4 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MerAgencyPageVo.java | 3 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/MerVerifyPrizeFinalDto.java | 21 + ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteGoodsFallbackFactory.java | 3 ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/controller/SysFileController.java | 4 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MerMemberPageDto.java | 2 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/config/WxPayConfiguration.java | 9 ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/utils/OBSUploadUtils.java | 1 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerOrderTotalVo.java | 14 ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/BrowseRecordMapper.xml | 1 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtOperLogPageVo.java | 10 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/fliter/ParamsAuthFilter.java | 6 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/fliter/ParamsAuthFilter.java | 6 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/staff/StaffTotalController.java | 2 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/BrowseRecordServiceImpl.java | 1 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/OBSUploadUtils.java | 44 ++ ruoyi-modules/ruoyi-goods/src/main/resources/bootstrap.yml | 8 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java | 19 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteShopService.java | 3 ruoyi-modules/ruoyi-member/src/main/resources/mapper/birthday/BirthdayCardMapper.xml | 1 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteMemberFallbackFactory.java | 5 ruoyi-modules/ruoyi-goods/src/main/resources/mapper/activity/ActivityMapper.xml | 10 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/scheduler/ShopScheduler.java | 10 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerMemberOrderVo.java | 17 ruoyi-gateway/src/main/resources/bootstrap.yml | 12 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java | 18 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerVerifyCodeVo.java | 1 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java | 35 + ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/goods/GoodsMapper.java | 2 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java | 16 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberGiftRecordServiceImpl.java | 18 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/fliter/ParamsAuthFilter.java | 6 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java | 41 + ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/MemberTaskServiceImpl.java | 1 ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/PayRecordMapper.xml | 5 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/RuoYiMemberApplication.java | 2 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/GoodsController.java | 5 ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml | 17 ruoyi-modules/ruoyi-file/src/main/resources/bootstrap.yml | 8 ruoyi-modules/ruoyi-gen/src/main/resources/bootstrap.yml | 8 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/business/MerCouponController.java | 7 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/order/PayRecord.java | 2 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerOrderDistributionTotalVo.java | 2 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/OrderService.java | 10 ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml | 6 ruoyi-modules/ruoyi-shop/pom.xml | 7 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MerMemberBrowsePageVo.java | 3 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerGoodsPageVo.java | 6 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java | 10 ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/ShoppingCartMapper.xml | 7 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MerFollowMemberTaskDto.java | 3 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerMemberNoClearOrderVo.java | 16 ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml | 12 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java | 5 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java | 193 +++++---- ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopService.java | 11 ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/ActivityCodeServiceImpl.java | 5 ruoyi-modules/ruoyi-order/src/main/resources/bootstrap.yml | 8 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/fliter/ParamsAuthFilter.java | 6 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopMapper.java | 9 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/MerGoodsPriceListDto.java | 21 + ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteShopFallbackFactory.java | 5 ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java | 17 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/coupon/CouponService.java | 4 ruoyi-modules/ruoyi-member/src/main/resources/bootstrap.yml | 8 ruoyi-auth/src/main/resources/bootstrap.yml | 8 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java | 99 +++- ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteGoodsService.java | 3 ruoyi-modules/ruoyi-shop/src/main/resources/bootstrap.yml | 8 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerVerifyOrderVo.java | 18 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerOrderPageVo.java | 17 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/WechatPayUtils.java | 76 ++- ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/RuoYiOrderApplication.java | 3 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/business/MerOrderController.java | 6 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerTotalOrderVo.java | 9 ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/MemberTaskRecordMapper.xml | 2 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/RuoYiShopApplication.java | 2 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/member/MemberGiftRecordService.java | 10 ruoyi-visual/ruoyi-monitor/src/main/resources/bootstrap.yml | 8 ruoyi-modules/ruoyi-job/src/main/resources/bootstrap.yml | 8 ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/console/MemberController.java | 14 88 files changed, 800 insertions(+), 381 deletions(-) diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/MerGoodsPriceListDto.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/MerGoodsPriceListDto.java new file mode 100644 index 0000000..42f591c --- /dev/null +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/MerGoodsPriceListDto.java @@ -0,0 +1,21 @@ +package com.ruoyi.system.api.domain.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @ClassName MerGoodsPriceListDto + * @Description TODO + * @Author jqs + * @Date 2023/8/10 16:36 + * @Version 1.0 + */ +@Data +public class MerGoodsPriceListDto { + + @ApiModelProperty(value = "商品ids") + private String goodsIds; + + @ApiModelProperty(value = "商户id") + private Long shopId; +} diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/MerVerifyPrizeFinalDto.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/MerVerifyPrizeFinalDto.java new file mode 100644 index 0000000..526f232 --- /dev/null +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/MerVerifyPrizeFinalDto.java @@ -0,0 +1,21 @@ +package com.ruoyi.system.api.domain.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @ClassName MerVerifyPrizeDto + * @Description TODO + * @Author jqs + * @Date 2023/8/11 20:54 + * @Version 1.0 + */ +@Data +public class MerVerifyPrizeFinalDto { + + @ApiModelProperty(value = "奖品id") + private String prizeId; + + @ApiModelProperty(value = "商户id") + private Long shopId; +} diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteGoodsFallbackFactory.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteGoodsFallbackFactory.java index ee644b2..6bfcfa7 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteGoodsFallbackFactory.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteGoodsFallbackFactory.java @@ -3,6 +3,7 @@ import com.ruoyi.common.core.domain.R; import com.ruoyi.system.api.domain.dto.AppShopGoodsGetDto; import com.ruoyi.system.api.domain.dto.GoodsTotalChangeDto; +import com.ruoyi.system.api.domain.dto.MerGoodsPriceListDto; import com.ruoyi.system.api.domain.poji.goods.Goods; import com.ruoyi.system.api.domain.poji.goods.GoodsFile; import com.ruoyi.system.api.domain.poji.goods.ShopGoods; @@ -66,7 +67,7 @@ } @Override - public R<List<MerGoodsPriceListVo>> listGoodsPriceByGoodsId(String goodsIds) { + public R<List<MerGoodsPriceListVo>> listGoodsPriceByGoodsId(MerGoodsPriceListDto merGoodsPriceListDto) { return R.fail("获取商品列表失败:" + throwable.getMessage()); } diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteMemberFallbackFactory.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteMemberFallbackFactory.java index cf6e539..c603c9f 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteMemberFallbackFactory.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteMemberFallbackFactory.java @@ -149,6 +149,11 @@ return R.fail("获取平台生日卡失败:" + throwable.getMessage()); } + @Override + public R verifyPrize(MerVerifyPrizeFinalDto merVerifyPrizeFinalDto) { + return R.fail("核销奖品失败:" + throwable.getMessage()); + } + }; } diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteShopFallbackFactory.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteShopFallbackFactory.java index 14b6f8e..c2996e4 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteShopFallbackFactory.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteShopFallbackFactory.java @@ -120,6 +120,11 @@ public R<ShopProportionVo> getShopProportion(Long shopId) { return R.fail("获取商户分成信息失败:" + throwable.getMessage()); } + + @Override + public R<List<Long>> listShopIdByCityCode(List<String> cityCodes) { + return R.fail("获取商户列表失败:" + throwable.getMessage()); + } }; } } diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteGoodsService.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteGoodsService.java index 97a2254..ca1b977 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteGoodsService.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteGoodsService.java @@ -4,6 +4,7 @@ import com.ruoyi.common.core.domain.R; import com.ruoyi.system.api.domain.dto.AppShopGoodsGetDto; import com.ruoyi.system.api.domain.dto.GoodsTotalChangeDto; +import com.ruoyi.system.api.domain.dto.MerGoodsPriceListDto; import com.ruoyi.system.api.domain.poji.goods.Goods; import com.ruoyi.system.api.domain.poji.goods.GoodsFile; import com.ruoyi.system.api.domain.poji.goods.ShopGoods; @@ -61,7 +62,7 @@ * @return R<List<MerGoodsPriceListVo>> */ @PostMapping("/goods/listGoodsPriceByGoodsId") - public R<List<MerGoodsPriceListVo>> listGoodsPriceByGoodsId(@RequestBody String goodsIds); + public R<List<MerGoodsPriceListVo>> listGoodsPriceByGoodsId(@RequestBody MerGoodsPriceListDto merGoodsPriceListDto); @PostMapping("/goods/changeGoodsTotal") diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteMemberService.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteMemberService.java index f22226e..3eb1215 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteMemberService.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteMemberService.java @@ -191,7 +191,7 @@ /** - * @param verifyPrize + * @param merVerifyPrizeDto * @return R<MemberGiftRecord> * @description 获取核销奖品 * @author jqs @@ -242,4 +242,14 @@ */ @PostMapping("/member/getBirthdayCard") public R<BirthdayCard> getBirthdayCard(); + + /** + * @description 核销奖品 + * @author jqs + * @date 2023/8/10 11:56 + * @param merVerifyPrizeFinalDto + * @return R + */ + @PostMapping("/member/verifyPrize") + public R verifyPrize(@RequestBody MerVerifyPrizeFinalDto merVerifyPrizeFinalDto); } \ No newline at end of file diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteShopService.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteShopService.java index f849c0f..d583428 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteShopService.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteShopService.java @@ -162,4 +162,7 @@ */ @PostMapping("/shop/getShopProportion") R<ShopProportionVo> getShopProportion(@RequestBody Long shopId); + + @PostMapping("/shop/listShopIdByCityCode") + R<List<Long>> listShopIdByCityCode(@RequestBody List<String> cityCodes); } diff --git a/ruoyi-auth/src/main/resources/bootstrap.yml b/ruoyi-auth/src/main/resources/bootstrap.yml index 8439e22..8541c04 100644 --- a/ruoyi-auth/src/main/resources/bootstrap.yml +++ b/ruoyi-auth/src/main/resources/bootstrap.yml @@ -14,12 +14,12 @@ nacos: discovery: # 服务注册地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 config: # 配置中心地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/ruoyi-gateway/src/main/resources/bootstrap.yml b/ruoyi-gateway/src/main/resources/bootstrap.yml index fdae1b6..4a64425 100644 --- a/ruoyi-gateway/src/main/resources/bootstrap.yml +++ b/ruoyi-gateway/src/main/resources/bootstrap.yml @@ -14,12 +14,12 @@ nacos: discovery: # 服务注册地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 config: # 配置中心地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 # 配置文件格式 file-extension: yml # 共享配置 @@ -35,8 +35,8 @@ datasource: ds1: nacos: - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 dataId: sentinel-ruoyi-gateway groupId: DEFAULT_GROUP data-type: json diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/controller/SysFileController.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/controller/SysFileController.java index 1015951..5fe7cba 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/controller/SysFileController.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/controller/SysFileController.java @@ -45,11 +45,11 @@ private final static String PRIVATE_KEY = ""; - private final static String MCH_ID = ""; + private final static String MCH_ID = "1631381314"; private final static String MCH_SERIAL_NO = ""; - private final static String API_V3_KEY = ""; + private final static String API_V3_KEY = "J8v9JDHKJYDHW9bdk30o2bdjy6z9mn1A"; @Autowired diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/ActivityCodeServiceImpl.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/ActivityCodeServiceImpl.java index af15bb8..ccea7ab 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/ActivityCodeServiceImpl.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/ActivityCodeServiceImpl.java @@ -35,9 +35,10 @@ @Override public String createActivityCode(String url, String fileName) throws Exception { File qrCodeFile = new File("/home/image/qrcode.png");// 生成二维码 - QrCodeUtil.generate(url, 200, 200, qrCodeFile); + QrCodeUtil.generate(url, 300, 300, qrCodeFile); InputStream codeStream = new FileInputStream(qrCodeFile); String fileUrl = OBSUploadUtils.uploadInputStream(codeStream,fileName); + codeStream.close(); return fileUrl; } @@ -94,6 +95,8 @@ ); InputStream inputStream = new ByteArrayInputStream(out.toByteArray()); fileUrl = OBSUploadUtils.uploadInputStream(inputStream,activityId); + codeStream.close(); + inputStream.close(); return fileUrl; } } diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/utils/OBSUploadUtils.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/utils/OBSUploadUtils.java index 939dc5e..84a8a4a 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/utils/OBSUploadUtils.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/utils/OBSUploadUtils.java @@ -78,6 +78,7 @@ result = ossClient.putObject(putObjectRequest); // 如果上传成功,则返回200。 System.out.println(fileName + "上传返回" + result.getResponse().getStatusCode()); + inputStream.close(); return result.getResponse().getUri(); } catch (OSSException oe) { System.out.println("Caught an OSSException, which means your request made it to OSS, " diff --git a/ruoyi-modules/ruoyi-file/src/main/resources/bootstrap.yml b/ruoyi-modules/ruoyi-file/src/main/resources/bootstrap.yml index 3345a04..bd0eefb 100644 --- a/ruoyi-modules/ruoyi-file/src/main/resources/bootstrap.yml +++ b/ruoyi-modules/ruoyi-file/src/main/resources/bootstrap.yml @@ -19,12 +19,12 @@ nacos: discovery: # 服务注册地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 config: # 配置中心地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/ruoyi-modules/ruoyi-gen/src/main/resources/bootstrap.yml b/ruoyi-modules/ruoyi-gen/src/main/resources/bootstrap.yml index c1065bc..1367b5d 100644 --- a/ruoyi-modules/ruoyi-gen/src/main/resources/bootstrap.yml +++ b/ruoyi-modules/ruoyi-gen/src/main/resources/bootstrap.yml @@ -14,12 +14,12 @@ nacos: discovery: # 服务注册地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 config: # 配置中心地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/RuoYiGoodsApplication.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/RuoYiGoodsApplication.java index 0f50fb5..62dd43d 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/RuoYiGoodsApplication.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/RuoYiGoodsApplication.java @@ -18,7 +18,7 @@ @EnableCustomSwagger2 @EnableRyFeignClients @SpringBootApplication -//@EnableScheduling +@EnableScheduling @ComponentScans(value = {@ComponentScan("com.ruoyi.system.api"),@ComponentScan("com.ruoyi.common.security.utils")}) public class RuoYiGoodsApplication { diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/GoodsController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/GoodsController.java index 9fcde73..86e94e3 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/GoodsController.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/GoodsController.java @@ -7,6 +7,7 @@ import com.ruoyi.goods.service.goods.ShopGoodsService; import com.ruoyi.system.api.domain.dto.AppShopGoodsGetDto; import com.ruoyi.system.api.domain.dto.GoodsTotalChangeDto; +import com.ruoyi.system.api.domain.dto.MerGoodsPriceListDto; import com.ruoyi.system.api.domain.poji.goods.Goods; import com.ruoyi.system.api.domain.poji.goods.GoodsFile; import com.ruoyi.system.api.domain.poji.goods.ShopGoods; @@ -113,9 +114,9 @@ * @return R<List<MerGoodsPriceListVo>> */ @PostMapping("/listGoodsPriceByGoodsId") - public R<List<MerGoodsPriceListVo>> listGoodsPriceByGoodsId(@RequestBody String goodsIds) + public R<List<MerGoodsPriceListVo>> listGoodsPriceByGoodsId(@RequestBody MerGoodsPriceListDto merGoodsPriceListDto) { - List<MerGoodsPriceListVo> goodsPriceListVoList = goodsService.listGoodsPriceByGoodsId(goodsIds); + List<MerGoodsPriceListVo> goodsPriceListVoList = goodsService.listGoodsPriceByGoodsId(merGoodsPriceListDto); return R.ok(goodsPriceListVoList); } diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/goods/GoodsMapper.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/goods/GoodsMapper.java index d112d3a..5a0555c 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/goods/GoodsMapper.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/goods/GoodsMapper.java @@ -137,7 +137,7 @@ * @param goodsIds * @return List<MerGoodsPriceListVo> */ - List<MerGoodsPriceListVo> listGoodsPriceByGoodsId(@Param("goodsIds")String goodsIds); + List<MerGoodsPriceListVo> listGoodsPriceByGoodsId(@Param("shopId")Long shopId,@Param("goodsIds")String goodsIds); /** diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/goods/GoodsService.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/goods/GoodsService.java index 681a501..d81ac3d 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/goods/GoodsService.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/goods/GoodsService.java @@ -4,6 +4,7 @@ import com.ruoyi.goods.domain.dto.*; import com.ruoyi.goods.domain.vo.*; import com.ruoyi.system.api.domain.dto.AppActivityGoodsPageDto; +import com.ruoyi.system.api.domain.dto.MerGoodsPriceListDto; import com.ruoyi.system.api.domain.dto.MgtBaseGetDto; import com.ruoyi.system.api.domain.poji.goods.Goods; import com.baomidou.mybatisplus.extension.service.IService; @@ -181,7 +182,7 @@ * @param goodsIds * @return List<MerGoodsPriceListVo> */ - List<MerGoodsPriceListVo> listGoodsPriceByGoodsId(String goodsIds); + List<MerGoodsPriceListVo> listGoodsPriceByGoodsId(MerGoodsPriceListDto merGoodsPriceListDto); /** * @description 分页获取活动商品 diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java index 0970e5d..4846aa0 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java @@ -39,10 +39,7 @@ import javax.annotation.Resource; import java.math.BigDecimal; -import java.util.Date; -import java.util.HashSet; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.concurrent.TimeUnit; import java.util.function.Function; import java.util.stream.Collectors; @@ -162,6 +159,18 @@ activity.setUpdateUserId(mgtActivityEditDto.getUserId()); activity.setUpdateTime(nowTime); activity.setRecommendFlag(mgtActivityEditDto.getRecommendFlag()); + if(activity.getAreaFlag()==2&&activity.getShopFlag()==1&&StringUtils.isNotBlank(activity.getDesignatedArea())){ + activity.setApplicableShop(""); + String designatedArea = activity.getDesignatedArea(); + List<String> cityCodes = Arrays.asList(designatedArea.split(",")); + List<Long> shopIdList = remoteShopService.listShopIdByCityCode(cityCodes).getData(); + if(shopIdList!=null&&!shopIdList.isEmpty()){ + String result = shopIdList.stream() + .map(String::valueOf) + .collect(Collectors.joining(",")); + activity.setApplicableShop(result); + } + } this.saveOrUpdate(activity); // 获取活动商品信息 List<MgtActivityGoodsEditDto> mgtActivityGoodsEditDtoList = mgtActivityEditDto.getMgtActivityGoodsEditDtoList(); diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java index 367e791..1cf9812 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java @@ -22,6 +22,7 @@ import com.ruoyi.goods.service.goods.ShopGoodsService; import com.ruoyi.system.api.constant.AppErrorConstant; import com.ruoyi.system.api.domain.dto.AppActivityGoodsPageDto; +import com.ruoyi.system.api.domain.dto.MerGoodsPriceListDto; import com.ruoyi.system.api.domain.dto.MgtBaseGetDto; import com.ruoyi.system.api.domain.dto.MgtClassNumDto; import com.ruoyi.system.api.domain.poji.activity.ActivityGoods; @@ -583,8 +584,8 @@ * @return List<MerGoodsPriceListVo> */ @Override - public List<MerGoodsPriceListVo> listGoodsPriceByGoodsId(String goodsIds){ - return goodsMapper.listGoodsPriceByGoodsId(goodsIds); + public List<MerGoodsPriceListVo> listGoodsPriceByGoodsId(MerGoodsPriceListDto merGoodsPriceListDto){ + return goodsMapper.listGoodsPriceByGoodsId(merGoodsPriceListDto.getShopId(),merGoodsPriceListDto.getGoodsIds()); } diff --git a/ruoyi-modules/ruoyi-goods/src/main/resources/bootstrap.yml b/ruoyi-modules/ruoyi-goods/src/main/resources/bootstrap.yml index b70af9b..91e477e 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/resources/bootstrap.yml +++ b/ruoyi-modules/ruoyi-goods/src/main/resources/bootstrap.yml @@ -14,12 +14,12 @@ nacos: discovery: # 服务注册地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 config: # 配置中心地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/activity/ActivityMapper.xml b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/activity/ActivityMapper.xml index f434890..f751c1b 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/activity/ActivityMapper.xml +++ b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/activity/ActivityMapper.xml @@ -84,7 +84,7 @@ ta.activity_end_time activityEndTime, CASE ta.activity_status WHEN 0 THEN '未开始' - WHEN 1 THEN '进行中' + WHEN 1 THEN '活动中' WHEN 2 THEN '已结束' END activityStatus, ta.propaganda_poster propagandaPoster, @@ -92,7 +92,7 @@ ta.activity_code activityCode FROM t_activity ta LEFT JOIN t_activity_goods ag ON ta.activity_id = ag.activity_id AND ag.del_flag = 0 - WHERE ta.del_flag = 0 AND shop_flag = 1 OR (shop_flag = 2 AND FIND_IN_SET(#{param.shopId}, ta.applicable_shop) > 0) + WHERE ta.del_flag = 0 AND ((ta.shop_flag = 1 AND ta.area_flag = 1) OR (FIND_IN_SET(#{param.shopId}, ta.applicable_shop) > 0)) group by ta.activity_id ORDER BY ta.activity_status ASC,ta.create_time DESC </select> @@ -109,7 +109,7 @@ <select id="getRecommendActivity" resultType="com.ruoyi.goods.domain.pojo.activity.Activity"> SELECT * FROM t_activity WHERE del_flag = 0 AND recommend_flag = 1 AND NOW() BETWEEN activity_start_time AND activity_end_time - AND activity_status = 1 AND (shop_flag = 1 OR (shop_flag = 2 AND FIND_IN_SET(#{shopId}, applicable_shop) > 0)) + AND activity_status = 1 AND ((shop_flag = 1 AND area_flag = 1) OR (FIND_IN_SET(#{shopId}, applicable_shop) > 0)) ORDER BY activity_end_time - NOW() LIMIT 1; </select> @@ -118,7 +118,7 @@ <select id="listActivityIdByShopId" resultType="java.lang.String"> SELECT activity_id FROM t_activity WHERE del_flag = 0 AND activity_status = 1 AND NOW() BETWEEN activity_start_time AND activity_end_time - AND shop_flag = 1 OR (shop_flag = 2 AND FIND_IN_SET(#{shopId}, applicable_shop) > 0) + AND ((shop_flag = 1 AND area_flag = 1) OR (FIND_IN_SET(#{shopId}, applicable_shop) > 0)) </select> <select id="pageAppActivity" resultType="com.ruoyi.goods.domain.vo.AppActivityPageVo"> @@ -135,7 +135,7 @@ ta.propaganda_poster propagandaPoster, ta.activity_introduce activityIntroduce FROM t_activity ta - WHERE ta.del_flag = 0 AND ta.activity_status <=1 AND CURRENT_TIME < ta.activity_end_time AND (ta.shop_flag = 1 OR (ta.shop_flag = 2 AND FIND_IN_SET(#{shopId}, ta.applicable_shop) > 0)) + WHERE ta.del_flag = 0 AND ta.activity_status <=1 AND CURRENT_TIME < ta.activity_end_time AND ((ta.shop_flag = 1 AND ta.area_flag = 1) OR (FIND_IN_SET(#{shopId}, ta.applicable_shop) > 0)) group by ta.activity_id ORDER BY ta.activity_status ASC,ta.create_time DESC </select> diff --git a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsMapper.xml b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsMapper.xml index 1ce072e..a95b1ed 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsMapper.xml +++ b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsMapper.xml @@ -305,6 +305,7 @@ tg.service_num defaultServiceNum, IFNULL(tsg.service_num,tg.service_num) serviceNum FROM t_goods tg + INNER JOIN t_goods_total tgt ON tg.goods_id = tgt.goods_id LEFT JOIN t_goods_file tgf ON tg.goods_id = tgf.goods_id AND tgf.del_flag = 0 AND tgf.file_type = 1 LEFT JOIN t_shop_goods tsg ON tg.goods_id = tsg.goods_id AND tsg.shop_id = #{param.shopId} AND tsg.del_flag = 0 WHERE tg.del_flag = 0 AND tg.goods_status = 1 diff --git a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/ShoppingCartMapper.xml b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/ShoppingCartMapper.xml index 8507e81..743766e 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/ShoppingCartMapper.xml +++ b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/ShoppingCartMapper.xml @@ -86,12 +86,7 @@ tg.goods_name goodsName, tg.goods_introduction goodsIntroduction, tg.goods_type goodsType, - CASE tg.goods_type - WHEN 1 THEN "周期" - WHEN 2 THEN "服务" - WHEN 3 THEN "体验" - WHEN 4 THEN "单品" - END goodsTag, + tg.goods_tags goodsTag, IFNULL(tsg.sales_price,tg.sales_price) salesPrice, tgf.file_url goodsPicture, tg.goods_nurses goodsNurses, diff --git a/ruoyi-modules/ruoyi-job/src/main/resources/bootstrap.yml b/ruoyi-modules/ruoyi-job/src/main/resources/bootstrap.yml index 89bee3a..e2cda09 100644 --- a/ruoyi-modules/ruoyi-job/src/main/resources/bootstrap.yml +++ b/ruoyi-modules/ruoyi-job/src/main/resources/bootstrap.yml @@ -14,12 +14,12 @@ nacos: discovery: # 服务注册地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 config: # 配置中心地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/RuoYiMemberApplication.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/RuoYiMemberApplication.java index bb8fb03..727366a 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/RuoYiMemberApplication.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/RuoYiMemberApplication.java @@ -18,7 +18,7 @@ @EnableCustomSwagger2 @EnableRyFeignClients @SpringBootApplication -//@EnableScheduling +@EnableScheduling @ComponentScans(value = {@ComponentScan("com.ruoyi.system.api"),@ComponentScan("com.ruoyi.common.security.utils")}) public class RuoYiMemberApplication { diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/business/MerCouponController.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/business/MerCouponController.java index 22ef651..0ef60f5 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/business/MerCouponController.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/business/MerCouponController.java @@ -16,7 +16,6 @@ import com.ruoyi.system.api.domain.dto.MerBaseDto; import com.ruoyi.system.api.domain.dto.MerBaseGetDto; import com.ruoyi.system.api.domain.dto.MerPageDto; -import com.ruoyi.system.api.domain.dto.MgtBaseGetDto; import com.ruoyi.system.api.domain.vo.MerMemberCouponVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -74,10 +73,10 @@ @RequestMapping(value = "/getMerCouponVo", method = RequestMethod.POST) @ApiOperation(value = "商户获取优惠券编辑信息") - public R<MerCouponGetVo> getMerCouponVo(@RequestBody MgtBaseGetDto mgtBaseGetDto) { + public R<MerCouponGetVo> getMerCouponVo(@RequestBody MerBaseGetDto merBaseGetDto) { Long userId = SecurityUtils.getUserId(); - mgtBaseGetDto.setUserId(userId); - MerCouponGetVo couponGetVo = couponService.getMerCouponVo(mgtBaseGetDto.getId()); + merBaseGetDto.setUserId(userId); + MerCouponGetVo couponGetVo = couponService.getMerCouponVo(merBaseGetDto); return R.ok(couponGetVo); } diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/console/MemberController.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/console/MemberController.java index a28c80f..130d6df 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/console/MemberController.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/console/MemberController.java @@ -300,6 +300,20 @@ } /** + * @description 核销奖品 + * @author jqs + * @date 2023/8/10 11:56 + * @param merVerifyPrizeFinalDto + * @return R + */ + @PostMapping("/verifyPrize") + public R verifyPrize(@RequestBody MerVerifyPrizeFinalDto merVerifyPrizeFinalDto) + { + memberGiftRecordService.verifyPrize(merVerifyPrizeFinalDto); + return R.ok(); + } + + /** * @description 积分变动 * @author jqs * @date 2023/7/12 17:04 diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MerMemberPageDto.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MerMemberPageDto.java index 4a24054..51b3ab5 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MerMemberPageDto.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MerMemberPageDto.java @@ -24,7 +24,7 @@ private String endMemberDate; @ApiModelProperty(value = "会员类型1.周期2.服务3.体验") - private Integer memberType; + private String memberType; @ApiModelProperty(value = "会员来源") private String memberFrom; diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MerMemberBrowsePageVo.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MerMemberBrowsePageVo.java index 00bad92..55f6c5a 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MerMemberBrowsePageVo.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MerMemberBrowsePageVo.java @@ -18,6 +18,9 @@ @ApiModelProperty(value = "浏览类型1鸿瑞学堂2营销活动3商城商品4关于鸿瑞堂5申请加盟") + private Integer type; + + @ApiModelProperty(value = "浏览类型1鸿瑞学堂2营销活动3商城商品4关于鸿瑞堂5申请加盟") private String browseType; @ApiModelProperty(value = "浏览名称") diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponGetVo.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponGetVo.java index 1828f8f..8a9b600 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponGetVo.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponGetVo.java @@ -1,5 +1,6 @@ package com.ruoyi.member.domain.vo; +import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.system.api.domain.dto.MgtBaseDto; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -37,6 +38,7 @@ private Integer sendTimeType; @ApiModelProperty(value="发送时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date sendTime; @ApiModelProperty(value = "使用范围1.全场2.指定商品") @@ -46,9 +48,11 @@ private Integer validTimeType; @ApiModelProperty(value = "有效开始时间") + @JsonFormat(pattern = "yyyy-MM-dd") private Date validStartTime; @ApiModelProperty(value = "有效截止时间") + @JsonFormat(pattern = "yyyy-MM-dd") private Date validEndTime; @ApiModelProperty(value = "有效期") diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/fliter/ParamsAuthFilter.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/fliter/ParamsAuthFilter.java index b2b0170..f04ddb8 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/fliter/ParamsAuthFilter.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/fliter/ParamsAuthFilter.java @@ -82,7 +82,11 @@ String requestBodyStr = stringBuilder.toString(); log.info("requestBodyStr---"+requestBodyStr); if(StringUtils.isNotBlank(requestBodyStr)){ - return JSONObject.parseObject(stringBuilder.toString(), Map.class); + try { + return JSONObject.parseObject(stringBuilder.toString(), Map.class); + }catch (Exception e){ + e.printStackTrace(); + } } return new HashMap<>(); } diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/coupon/CouponService.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/coupon/CouponService.java index 665b34c..81b5788 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/coupon/CouponService.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/coupon/CouponService.java @@ -44,10 +44,10 @@ * @description 平台获取优惠券编辑信息 * @author jqs * @date 2023/6/13 14:29 - * @param couponId + * @param merBaseGetDto * @return MerCouponGetVo */ - MerCouponGetVo getMerCouponVo(String couponId); + MerCouponGetVo getMerCouponVo(MerBaseGetDto merBaseGetDto); /** * @description 平台编辑优惠券 diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java index bdae81f..a504cac 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java @@ -11,16 +11,18 @@ import com.ruoyi.member.domain.dto.MgtBirthdayEditDto; import com.ruoyi.member.domain.dto.MgtBirthdayGetDto; import com.ruoyi.member.domain.dto.MgtBirthdayGiftDto; -import com.ruoyi.system.api.domain.poji.member.BirthdayCard; import com.ruoyi.member.domain.pojo.birthday.BirthdayGift; import com.ruoyi.member.domain.vo.*; import com.ruoyi.member.mapper.birthday.BirthdayCardMapper; import com.ruoyi.member.service.birthday.BirthdayCardService; import com.ruoyi.member.service.birthday.BirthdayGiftService; import com.ruoyi.member.service.member.MemberGiftRecordService; +import com.ruoyi.member.service.member.MemberService; import com.ruoyi.system.api.constant.AppErrorConstant; import com.ruoyi.system.api.domain.dto.BirthdayGiftSendDto; import com.ruoyi.system.api.domain.dto.MgtBaseBathDto; +import com.ruoyi.system.api.domain.poji.member.BirthdayCard; +import com.ruoyi.system.api.domain.poji.member.Member; import com.ruoyi.system.api.domain.poji.member.MemberGiftRecord; import com.ruoyi.system.api.domain.poji.shop.Shop; import com.ruoyi.system.api.domain.vo.MgtSimpleShopVo; @@ -56,6 +58,10 @@ @Resource private MemberGiftRecordService memberGiftRecordService; + + @Resource + private MemberService memberService; + /** @@ -501,8 +507,23 @@ BirthdayGiftSendDto birthdayGiftSendDto; String prizeId; String currentYear = String.valueOf(LocalDate.now().getYear()); + Member member = memberService.getByUserId(userId); // 获取平台生日卡信息 - BirthdayCard plBirthdayCard = birthdayCardMapper.getPlatformBirthdayCard(shopId); + BirthdayCard plBirthdayCard = this.getBirthdayCard(); + //绑定的时候需要判断范围 + if(member.getBindingFlag()==1){ + //判断指定区域全部店铺 + if(plBirthdayCard.getShopFlag()==1&&plBirthdayCard.getAreaFlag()==2){ + Shop shop = remoteShopService.getShop(member.getRelationShopId()).getData(); + if(!StringUtils.checkString(plBirthdayCard.getDesignatedArea(),shop.getShopCityCode())){ + plBirthdayCard = null; + } + } + //判断指定店铺 + if(plBirthdayCard.getShopFlag()==2&&!StringUtils.checkString(plBirthdayCard.getApplicableShop(),shopId.toString())){ + plBirthdayCard = null; + } + } // 如果生日卡存在 if (plBirthdayCard != null && plBirthdayCard.getCardStatus()==1) { // 获取生日卡对应的生日礼物列表 @@ -574,81 +595,83 @@ } } //获取商户营销开关状态 - Integer marketingStatus = remoteShopService.getShopMarketingStatus(shopId).getData(); - if(marketingStatus>1){ - //获取商户生日卡 - LambdaQueryWrapper<BirthdayCard> queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(BirthdayCard::getDelFlag,0); - queryWrapper.eq(BirthdayCard::getShopId,shopId); - BirthdayCard shopBirthdayCard = this.getOne(queryWrapper,false); - // 如果生日卡存在 - if (shopBirthdayCard != null && shopBirthdayCard.getCardStatus()==1) { - // 获取生日卡对应的生日礼物列表 - List<BirthdayGift> birthdayGiftList = birthdayGiftService.listByCardId(shopBirthdayCard.getCardId()); - if(!birthdayGiftList.isEmpty()){ - // 遍历生日礼物列表 - for (BirthdayGift birthdayGift : birthdayGiftList) { - winningProbability = birthdayGift.getWinningProbability(); - randomProbability = new BigDecimal(new Random().nextInt(100)); - if(winningProbability.compareTo(randomProbability)>0){ - appBirthdayGiftVo = new AppBirthdayGiftVo(); - memberGiftRecord = new MemberGiftRecord(); - birthdayGiftSendDto = new BirthdayGiftSendDto(); - BeanUtils.copyProperties(birthdayGift, memberGiftRecord); - prizeId = IdUtils.simpleUUID(); - memberGiftRecord.setPrizeId(prizeId); - memberGiftRecord.setDelFlag(0); - memberGiftRecord.setVerifyStatus(1); - memberGiftRecord.setGiftFrom(2); - memberGiftRecord.setShopId(shopId); - memberGiftRecord.setGiftYear(currentYear); - memberGiftRecord.setCreateTime(new Date()); - memberGiftRecord.setUserId(userId); - birthdayGiftSendDto.setUserId(userId); - birthdayGiftSendDto.setGiftFrom(2); - birthdayGiftSendDto.setShopId(shopId); - birthdayGiftSendDto.setGiftType(birthdayGift.getGiftType()); - switch (birthdayGift.getGiftType()) { - case 1: - // 礼物类型为1,即优惠券 - appBirthdayGiftVo.setGiftName(birthdayGift.getCouponName()); - appBirthdayGiftVo.setGiftNumber(birthdayGift.getCouponNumber()); - birthdayGiftSendDto.setCouponId(birthdayGift.getCouponId()); - birthdayGiftSendDto.setCouponNumber(birthdayGift.getCouponNumber()); - sendGoodsList.add(birthdayGiftSendDto); - memberGiftRecord.setCouponId(birthdayGift.getCouponId()); - memberGiftRecord.setCouponName(birthdayGift.getCouponName()); - memberGiftRecord.setCouponNumber(birthdayGift.getCouponNumber()); - break; - case 2: - // 礼物类型为2,即商品 - appBirthdayGiftVo.setGiftName(birthdayGift.getGoodsName()); - appBirthdayGiftVo.setGiftNumber(birthdayGift.getGoodsNumber()); - birthdayGiftSendDto.setGoodsId(birthdayGift.getGoodsId()); - birthdayGiftSendDto.setCouponNumber(birthdayGift.getGoodsNumber()); - sendCouponList.add(birthdayGiftSendDto); - memberGiftRecord.setGoodsId(birthdayGift.getGoodsId()); - memberGiftRecord.setGoodsName(birthdayGift.getGoodsName()); - memberGiftRecord.setGoodsNumber(birthdayGift.getGoodsNumber()); - break; - case 3: - // 礼物类型为3,即现金 - appBirthdayGiftVo.setGiftName("现金"); - appBirthdayGiftVo.setGiftNumber(memberGiftRecord.getMoney().doubleValue()); - memberGiftRecord.setMoney(birthdayGift.getMoney()); - break; - case 4: - // 礼物类型为4,即礼品 - appBirthdayGiftVo.setGiftName(birthdayGift.getGiftName()); - appBirthdayGiftVo.setGiftNumber(birthdayGift.getGiftNumber()); - memberGiftRecord.setGiftName(birthdayGift.getGiftName()); - memberGiftRecord.setGiftNumber(birthdayGift.getGiftNumber()); - break; - default: - break; + if(member.getBindingFlag()==1){ + Integer marketingStatus = remoteShopService.getShopMarketingStatus(shopId).getData(); + if(marketingStatus>1){ + //获取商户生日卡 + LambdaQueryWrapper<BirthdayCard> queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BirthdayCard::getDelFlag,0); + queryWrapper.eq(BirthdayCard::getShopId,shopId); + BirthdayCard shopBirthdayCard = this.getOne(queryWrapper,false); + // 如果生日卡存在 + if (shopBirthdayCard != null && shopBirthdayCard.getCardStatus()==1) { + // 获取生日卡对应的生日礼物列表 + List<BirthdayGift> birthdayGiftList = birthdayGiftService.listByCardId(shopBirthdayCard.getCardId()); + if(!birthdayGiftList.isEmpty()){ + // 遍历生日礼物列表 + for (BirthdayGift birthdayGift : birthdayGiftList) { + winningProbability = birthdayGift.getWinningProbability(); + randomProbability = new BigDecimal(new Random().nextInt(100)); + if(winningProbability.compareTo(randomProbability)>0){ + appBirthdayGiftVo = new AppBirthdayGiftVo(); + memberGiftRecord = new MemberGiftRecord(); + birthdayGiftSendDto = new BirthdayGiftSendDto(); + BeanUtils.copyProperties(birthdayGift, memberGiftRecord); + prizeId = IdUtils.simpleUUID(); + memberGiftRecord.setPrizeId(prizeId); + memberGiftRecord.setDelFlag(0); + memberGiftRecord.setVerifyStatus(1); + memberGiftRecord.setGiftFrom(2); + memberGiftRecord.setShopId(shopId); + memberGiftRecord.setGiftYear(currentYear); + memberGiftRecord.setCreateTime(new Date()); + memberGiftRecord.setUserId(userId); + birthdayGiftSendDto.setUserId(userId); + birthdayGiftSendDto.setGiftFrom(2); + birthdayGiftSendDto.setShopId(shopId); + birthdayGiftSendDto.setGiftType(birthdayGift.getGiftType()); + switch (birthdayGift.getGiftType()) { + case 1: + // 礼物类型为1,即优惠券 + appBirthdayGiftVo.setGiftName(birthdayGift.getCouponName()); + appBirthdayGiftVo.setGiftNumber(birthdayGift.getCouponNumber()); + birthdayGiftSendDto.setCouponId(birthdayGift.getCouponId()); + birthdayGiftSendDto.setCouponNumber(birthdayGift.getCouponNumber()); + sendGoodsList.add(birthdayGiftSendDto); + memberGiftRecord.setCouponId(birthdayGift.getCouponId()); + memberGiftRecord.setCouponName(birthdayGift.getCouponName()); + memberGiftRecord.setCouponNumber(birthdayGift.getCouponNumber()); + break; + case 2: + // 礼物类型为2,即商品 + appBirthdayGiftVo.setGiftName(birthdayGift.getGoodsName()); + appBirthdayGiftVo.setGiftNumber(birthdayGift.getGoodsNumber()); + birthdayGiftSendDto.setGoodsId(birthdayGift.getGoodsId()); + birthdayGiftSendDto.setCouponNumber(birthdayGift.getGoodsNumber()); + sendCouponList.add(birthdayGiftSendDto); + memberGiftRecord.setGoodsId(birthdayGift.getGoodsId()); + memberGiftRecord.setGoodsName(birthdayGift.getGoodsName()); + memberGiftRecord.setGoodsNumber(birthdayGift.getGoodsNumber()); + break; + case 3: + // 礼物类型为3,即现金 + appBirthdayGiftVo.setGiftName("现金"); + appBirthdayGiftVo.setGiftNumber(memberGiftRecord.getMoney().doubleValue()); + memberGiftRecord.setMoney(birthdayGift.getMoney()); + break; + case 4: + // 礼物类型为4,即礼品 + appBirthdayGiftVo.setGiftName(birthdayGift.getGiftName()); + appBirthdayGiftVo.setGiftNumber(birthdayGift.getGiftNumber()); + memberGiftRecord.setGiftName(birthdayGift.getGiftName()); + memberGiftRecord.setGiftNumber(birthdayGift.getGiftNumber()); + break; + default: + break; + } + birthdayGiftVoList.add(appBirthdayGiftVo); + memberGiftRecordList.add(memberGiftRecord); } - birthdayGiftVoList.add(appBirthdayGiftVo); - memberGiftRecordList.add(memberGiftRecord); } } } @@ -710,16 +733,22 @@ if (plBirthdayCard == null || plBirthdayCard.getCardStatus()!=1) { platformBirthdayCardOpen = false; }else{ - if(plBirthdayCard.getShopFlag()==2&&plBirthdayCard.getAreaFlag()==1){ - Shop shop = remoteShopService.getShop(shopId).getData(); - if(!StringUtils.checkString(plBirthdayCard.getDesignatedArea(),shop.getShopCityCode())){ + //绑死店铺判断区域和店铺 + if(bindingFlag==1){ + //判断指定区域全部店铺 + if(plBirthdayCard.getShopFlag()==1&&plBirthdayCard.getAreaFlag()==2){ + Shop shop = remoteShopService.getShop(shopId).getData(); + if(!StringUtils.checkString(plBirthdayCard.getDesignatedArea(),shop.getShopCityCode())){ + platformBirthdayCardOpen = false; + } + } + //判断指定店铺 + if(plBirthdayCard.getShopFlag()==2&&!StringUtils.checkString(plBirthdayCard.getApplicableShop(),shopId.toString())){ platformBirthdayCardOpen = false; } } - if(plBirthdayCard.getAreaFlag()==2&&!StringUtils.checkString(plBirthdayCard.getApplicableShop(),shopId.toString())){ - platformBirthdayCardOpen = false; - } } + //判断店铺生日卡 BirthdayCard shopBirthdayCard = birthdayCardMapper.getMerShopBirthdayCard(shopId); // 如果生日卡存在 Boolean shopBirthdayCardOpen = true; diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java index 4205722..f83a967 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java @@ -111,6 +111,7 @@ BigDecimal discountPercent; String useLimit = ""; for(MgtCouponPageVo mgtCouponPageVo : mgtCouponPageVoList){ + useLimit = null; //处理使用限制 couponType = mgtCouponPageVo.getCouponType(); if(couponType.equals("满减")){ @@ -123,7 +124,7 @@ discountPercent = mgtCouponPageVo.getDiscountPercent(); useLimit = discountPercent.toString() + "折"; } - if(couponType.equals("抵扣")){ + if(couponType.equals("代金")){ discountMoney = mgtCouponPageVo.getDiscountMoney(); useLimit = discountMoney.toString(); } @@ -133,7 +134,7 @@ if(validTimeType==1){ validStartTime = mgtCouponPageVo.getValidStartTime(); validEndTime = mgtCouponPageVo.getValidEndTime(); - validTime = DateUtils.dateTime(validStartTime) + '-' + DateUtils.dateTime(validEndTime); + validTime = DateUtils.parseDateToStr("yyyy-MM-dd",validStartTime) + '-' + DateUtils.parseDateToStr("yyyy-MM-dd",validEndTime); }else if(validTimeType==2){ validDay = mgtCouponPageVo.getValidDay(); validTime = "领取之日起" + validDay.toString() + "天"; @@ -209,20 +210,23 @@ * @description 平台获取优惠券编辑信息 * @author jqs * @date 2023/6/13 14:29 - * @param couponId + * @param merBaseGetDto * @return MgtCouponGetVo */ @Override - public MerCouponGetVo getMerCouponVo(String couponId){ + public MerCouponGetVo getMerCouponVo(MerBaseGetDto merBaseGetDto){ MerCouponGetVo merCouponGetVo = new MerCouponGetVo(); - Coupon coupon = this.getById(couponId); + Coupon coupon = this.getById(merBaseGetDto.getId()); BeanUtils.copyProperties(coupon, merCouponGetVo); //判断优惠券是否为指定商品 if(coupon.getUseScope()==2){ String relGoodsIds = coupon.getRelGoodsIds(); if(StringUtils.isNotBlank(relGoodsIds)){ //获取指定商品列表 - List<MerGoodsPriceListVo> goodsList = remoteGoodsService.listGoodsPriceByGoodsId(relGoodsIds).getData(); + MerGoodsPriceListDto merGoodsPriceListDto = new MerGoodsPriceListDto(); + merGoodsPriceListDto.setGoodsIds(relGoodsIds); + merGoodsPriceListDto.setShopId(merBaseGetDto.getShopId()); + List<MerGoodsPriceListVo> goodsList = remoteGoodsService.listGoodsPriceByGoodsId(merGoodsPriceListDto).getData(); if(goodsList!=null&&!goodsList.isEmpty()){ merCouponGetVo.setRelGoodsList(goodsList); } @@ -694,7 +698,7 @@ if(validTimeType==1){ validStartTime = mgtCouponAuditPageVo.getValidStartTime(); validEndTime = mgtCouponAuditPageVo.getValidEndTime(); - validTime = DateUtils.dateTime(validStartTime) + '-' + DateUtils.dateTime(validEndTime); + validTime = DateUtils.parseDateToStr("yyyy-MM-dd",validStartTime) + '-' + DateUtils.parseDateToStr("yyyy-MM-dd",validEndTime); }else if(validTimeType==2){ validDay = mgtCouponAuditPageVo.getValidDay(); validTime = "领取之日起" + validDay.toString() + "天"; diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/BrowseRecordServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/BrowseRecordServiceImpl.java index e6db194..a70a1dd 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/BrowseRecordServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/BrowseRecordServiceImpl.java @@ -95,5 +95,6 @@ browseTime = browseTime + seconds + "秒"; } browseRecord.setBrowseTime(browseTime); + this.saveOrUpdate(browseRecord); } } diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberGiftRecordServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberGiftRecordServiceImpl.java index 7f9f7fe..9395833 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberGiftRecordServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberGiftRecordServiceImpl.java @@ -1,12 +1,14 @@ package com.ruoyi.member.service.impl.member; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.ruoyi.system.api.domain.dto.MerVerifyPrizeFinalDto; import com.ruoyi.system.api.domain.poji.member.MemberGiftRecord; import com.ruoyi.member.mapper.member.MemberGiftRecordMapper; import com.ruoyi.member.service.member.MemberGiftRecordService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; +import java.util.Date; import java.util.List; /** @@ -39,6 +41,20 @@ } - + /** + * @description + * @author jqs + * @date 2023/8/10 11:54 + * @param merVerifyPrizeFinalDto + * @return void + */ + @Override + public void verifyPrize(MerVerifyPrizeFinalDto merVerifyPrizeFinalDto){ + MemberGiftRecord memberGiftRecord = this.getById(merVerifyPrizeFinalDto.getPrizeId()); + memberGiftRecord.setShopId(merVerifyPrizeFinalDto.getShopId()); + memberGiftRecord.setVerifyStatus(2); + memberGiftRecord.setVerifyTime(new Date()); + this.saveOrUpdate(memberGiftRecord); + } } diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java index fe983b2..71b248d 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java @@ -425,10 +425,12 @@ mgtActivenessJudgeVo.setStartDay(DateUtils.addDays(new Date(), -activeness.getEndDay())); mgtActivenessJudgeVo.setEndDay(DateUtils.addDays(new Date(), -activeness.getStartDay())); mgtActivenessJudgeVo.setActivenessName(activeness.getActivenessName()); + mgtActivenessJudgeVoList.add(mgtActivenessJudgeVo); } //活跃度赋值 Date lastPayTime; for (MerMemberPageVo mgtMemberPageVo : merMemberPageVoList) { + //实际是最后服务时间 lastPayTime = mgtMemberPageVo.getLastPayTime(); StringJoiner sj = new StringJoiner(","); if (lastPayTime != null) { @@ -474,7 +476,7 @@ MemberTotal memberTotal = memberTotalService.getById(member.getMemberId()); // 设置MerMemberInfoVo对象的属性值 merMemberInfoVo.setSurpNumber(memberTotal.getUseableServiceCount()); - merMemberInfoVo.setUserNumber(memberTotal.getUsedServiceCount()); + merMemberInfoVo.setUserNumber(memberTotal.getTotalPayCount()); merMemberInfoVo.setPayMoney(memberTotal.getTotalPayMoney()); // 创建MerBaseDto对象 MerBaseDto merBaseDto = new MerBaseDto(); @@ -624,12 +626,13 @@ // Get the sysUser by mobile number SysUser sysUser = sysUserService.getSysUserByMobile(phoneNumber).getData(); // If sysUser does not exist, create a new one - if (sysUser == null) { + if (sysUser == null || !sysUser.getUserType().equals("03")) { String memberId = IdUtils.simpleUUID(); sysUser = new SysUser(); sysUser.setUserName(memberId); sysUser.setUserType("03"); sysUser.setNickName(merMemberAddDto.getRealName()); + sysUser.setPhonenumber(merMemberAddDto.getPhonenumber()); sysUser.setAvatar("https://hongruitang.oss-cn-beijing.aliyuncs.com/default.png"); String password = "hongruitang"; sysUser.setPassword(SecurityUtils.encryptPassword(password)); @@ -646,6 +649,7 @@ member.setNickName(merMemberAddDto.getRealName()); member.setRealName(merMemberAddDto.getRealName()); member.setGender(merMemberAddDto.getGender()); + member.setLevel(merMemberAddDto.getLevel()); member.setMobile(phoneNumber); member.setReferrer(merMemberAddDto.getReferrer()); member.setBirthday(merMemberAddDto.getBirthday()); @@ -660,6 +664,12 @@ member.setRelationShopName(shop.getShopName()); member.setCustomerSource(merMemberAddDto.getCustomerSource()); member.setCreateTime(new Date()); + //调理问题 + List<String> memberNurse = merMemberAddDto.getMemberNurse(); + if(memberNurse!=null&&!memberNurse.isEmpty()){ + String memberNurseString = String.join(",", memberNurse); + member.setMemberNurse(memberNurseString); + } // Save the member and initialize member total this.saveOrUpdate(member); initMemberTotal(memberId); @@ -677,6 +687,8 @@ ).collect(Collectors.toList()); memberArchiveService.saveBatch(memberArchiveList); } + }else{ + throw new ServiceException(AppErrorConstant.MOBILE_USER_DOUBLE); } return sysUser.getUserId(); } diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberSuggestServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberSuggestServiceImpl.java index 80d3eb5..88e9684 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberSuggestServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberSuggestServiceImpl.java @@ -14,12 +14,14 @@ import com.ruoyi.member.domain.vo.MgtMemberSuggestPageVo; import com.ruoyi.member.domain.vo.MgtMemberSuggestTagVo; import com.ruoyi.member.mapper.member.MemberSuggestMapper; +import com.ruoyi.member.service.member.MemberService; import com.ruoyi.member.service.member.MemberSuggestService; import com.ruoyi.system.api.domain.dto.AppSuggestPageDto; import com.ruoyi.system.api.domain.dto.AppUserSuggestDto; import com.ruoyi.system.api.domain.dto.MgtBaseBathDto; import com.ruoyi.system.api.domain.dto.MgtShopIdByCodeDto; import com.ruoyi.system.api.domain.poji.config.SysTag; +import com.ruoyi.system.api.domain.poji.member.Member; import com.ruoyi.system.api.domain.poji.sys.SysUser; import com.ruoyi.system.api.domain.vo.MgtShopIdByCodeVo; import com.ruoyi.system.api.domain.vo.MgtSimpleShopVo; @@ -57,6 +59,9 @@ @Resource private RemoteConfigService remoteConfigService; + @Resource + private MemberService memberService; + /** * * @param page @@ -80,6 +85,10 @@ memberSuggest.setSuggestContent(appUserSuggestDto.getSuggestContent()); memberSuggest.setCreateTime(new Date()); memberSuggest.setSuggestType(appUserSuggestDto.getSuggestType()); + if(appUserSuggestDto.getSuggestType()==2){ + Member member = memberService.getByUserId(appUserSuggestDto.getUserId()); + memberSuggest.setShopId(member.getRelationShopId()); + } memberSuggest.setReplayFlag(0); this.saveOrUpdate(memberSuggest); } diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/member/MemberGiftRecordService.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/member/MemberGiftRecordService.java index 494147d..56fc949 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/member/MemberGiftRecordService.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/member/MemberGiftRecordService.java @@ -1,6 +1,7 @@ package com.ruoyi.member.service.member; import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.system.api.domain.dto.MerVerifyPrizeFinalDto; import com.ruoyi.system.api.domain.poji.member.MemberGiftRecord; import java.util.List; @@ -25,4 +26,13 @@ * @return List<MemberGiftRecord> */ List<MemberGiftRecord> listByUserIdAndYear(Long userId,String giftYear); + + /** + * @description + * @author jqs + * @date 2023/8/10 11:55 + * @param merVerifyPrizeFinalDto + * @return void + */ + void verifyPrize(MerVerifyPrizeFinalDto merVerifyPrizeFinalDto); } diff --git a/ruoyi-modules/ruoyi-member/src/main/resources/bootstrap.yml b/ruoyi-modules/ruoyi-member/src/main/resources/bootstrap.yml index 73eb18f..58dc3e4 100644 --- a/ruoyi-modules/ruoyi-member/src/main/resources/bootstrap.yml +++ b/ruoyi-modules/ruoyi-member/src/main/resources/bootstrap.yml @@ -14,12 +14,12 @@ nacos: discovery: # 服务注册地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 config: # 配置中心地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/birthday/BirthdayCardMapper.xml b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/birthday/BirthdayCardMapper.xml index 26ebb48..0e02a5e 100644 --- a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/birthday/BirthdayCardMapper.xml +++ b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/birthday/BirthdayCardMapper.xml @@ -7,7 +7,6 @@ FROM t_birthday_card WHERE del_flag = 0 AND card_status = 1 AND shop_id = 0 AND (shop_flag = 1 OR (shop_flag = 2 AND FIND_IN_SET(#{shopId}, applicable_shop) > 0)) - </select> <select id="getMerShopBirthdayCard" resultType="com.ruoyi.system.api.domain.poji.member.BirthdayCard"> diff --git a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/BrowseRecordMapper.xml b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/BrowseRecordMapper.xml index 8ffcd59..a0b5c0c 100644 --- a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/BrowseRecordMapper.xml +++ b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/BrowseRecordMapper.xml @@ -30,6 +30,7 @@ <select id="pageMerMemberBrowse" resultType="com.ruoyi.member.domain.vo.MerMemberBrowsePageVo"> SELECT + browse_type type, CASE browse_type WHEN 1 THEN "鸿瑞学堂" WHEN 2 THEN "营销活动" diff --git a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml index aa1d442..743d09f 100644 --- a/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml +++ b/ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml @@ -161,7 +161,7 @@ tm.birthday birthday, tm.user_tags userTags, tm.goods_type goodsType, - tmt.last_pay_time lastPayTime + tmt.last_service_time lastPayTime FROM t_member tm INNER JOIN t_member_total tmt ON tm.member_id = tmt.member_id WHERE tm.relation_shop_id = #{param.shopId} AND tm.binding_flag = 1 @@ -184,7 +184,7 @@ AND tm.customer_source = #{param.memberFrom} </if> <if test="param.memberLevel != null and param.memberLevel != ''"> - AND tm.member_level = #{param.memberLevel} + AND tm.level = #{param.memberLevel} </if> <if test="param.taskStartDate!=null and param.taskStartDate!=''"> AND Date(tmt.next_task_time) >= #{param.taskStartDate} @@ -948,7 +948,7 @@ AND Date(tm.create_time) <= #{param.endDate} </if> GROUP BY tm.customer_source - ORDER BY COUNT(tm.user_id) DESC LIMIT 15 + ORDER BY mapValue DESC LIMIT 10 </select> diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/RuoYiOrderApplication.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/RuoYiOrderApplication.java index 4100c6a..d75a449 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/RuoYiOrderApplication.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/RuoYiOrderApplication.java @@ -7,6 +7,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.ComponentScans; +import org.springframework.scheduling.annotation.EnableScheduling; /** * 系统模块 @@ -16,7 +17,7 @@ @EnableCustomConfig @EnableCustomSwagger2 @EnableRyFeignClients -//@EnableScheduling +@EnableScheduling @SpringBootApplication @ComponentScans(value = {@ComponentScan("com.ruoyi.system.api"),@ComponentScan("com.ruoyi.common.security.utils")}) public class RuoYiOrderApplication diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/business/MerOrderController.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/business/MerOrderController.java index 13bd363..e1047d3 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/business/MerOrderController.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/business/MerOrderController.java @@ -146,13 +146,13 @@ @RequestMapping(value = "/pageMerMemberOrder", method = RequestMethod.POST) @ApiOperation(value = "分页商户端用户收银记录") - public R<Page<MerMemberNoClearOrderVo>> pageMerMemberOrder(@RequestBody MerMemberNoClearOrderDto merMemberNoClearOrderDto) { + public R<Page<MerMemberOrderVo>> pageMerMemberOrder(@RequestBody MerMemberNoClearOrderDto merMemberNoClearOrderDto) { Long userId = SecurityUtils.getUserId(); merMemberNoClearOrderDto.setUserId(userId); - Page<MerMemberNoClearOrderVo> page = new Page<>(); + Page<MerMemberOrderVo> page = new Page<>(); page.setSize(merMemberNoClearOrderDto.getPageSize()); page.setCurrent(merMemberNoClearOrderDto.getPageNum()); - List<MerMemberNoClearOrderVo> merMemberNoClearOrderVoList = orderService.pageMerMemberOrder(page,merMemberNoClearOrderDto); + List<MerMemberOrderVo> merMemberNoClearOrderVoList = orderService.pageMerMemberOrder(page,merMemberNoClearOrderDto); return R.ok(page.setRecords(merMemberNoClearOrderVoList)); } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/staff/StaffTotalController.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/staff/StaffTotalController.java index 4eeac8a..b174c78 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/staff/StaffTotalController.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/staff/StaffTotalController.java @@ -2,6 +2,8 @@ import com.ruoyi.common.core.domain.R; import com.ruoyi.common.security.utils.SecurityUtils; +import com.ruoyi.order.domain.vo.MerOrderDistributionTotalVo; +import com.ruoyi.order.domain.vo.MerOrderTypeTotalVo; import com.ruoyi.order.domain.vo.*; import com.ruoyi.order.service.order.OrderService; import com.ruoyi.system.api.domain.dto.StaffTotalDto; diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/order/PayRecord.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/order/PayRecord.java index 4838d98..347851d 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/order/PayRecord.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/order/PayRecord.java @@ -52,7 +52,7 @@ @TableField("pay_time") private Date payTime; /** - * 支付类型1微信支付2店铺收银 + * 支付类型1微信支付2店铺收银3支付宝 */ @TableField("pay_type") private Integer payType; diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerGoodsPageVo.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerGoodsPageVo.java index d98dbcc..86f4641 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerGoodsPageVo.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerGoodsPageVo.java @@ -1,7 +1,5 @@ package com.ruoyi.order.domain.vo; -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -39,11 +37,11 @@ private String goodsNurses; @ApiModelProperty(value = "商品建议售价") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal suggestSalesPrice;; @ApiModelProperty(value = "商品售价") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal salesPrice;; @ApiModelProperty(value="周期次数标记0否1是") diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerMemberNoClearOrderVo.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerMemberNoClearOrderVo.java index 6879997..9f095b4 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerMemberNoClearOrderVo.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerMemberNoClearOrderVo.java @@ -1,8 +1,6 @@ package com.ruoyi.order.domain.vo; import com.fasterxml.jackson.annotation.JsonFormat; -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -29,31 +27,27 @@ private Integer orderStatus; @ApiModelProperty(value = "商品总价") - @JsonSerialize(using = ToStringSerializer.class) private BigDecimal orderGoodsMoney; @ApiModelProperty(value = "优惠券抵扣") - @JsonSerialize(using = ToStringSerializer.class) private BigDecimal couponDiscount; @ApiModelProperty(value="应收金额") - @JsonSerialize(using = ToStringSerializer.class) private BigDecimal receivableMoney; @ApiModelProperty(value="应收订金") - @JsonSerialize(using = ToStringSerializer.class) private BigDecimal receivableDeposit; - @ApiModelProperty(value="实收金额") - @JsonSerialize(using = ToStringSerializer.class) + @ApiModelProperty(value="订单已收金额") private BigDecimal receiveMoney; - @ApiModelProperty(value="已收金额") - @JsonSerialize(using = ToStringSerializer.class) + @ApiModelProperty(value = "实收金额") + private BigDecimal relReceiveMoney; + + @ApiModelProperty(value="订单实际支付金额") private BigDecimal payMoney; @ApiModelProperty(value="未收金额") - @JsonSerialize(using = ToStringSerializer.class) private BigDecimal unPaidMoney; @ApiModelProperty(value="创建时间") diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerMemberOrderVo.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerMemberOrderVo.java index 3f757c8..a594994 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerMemberOrderVo.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerMemberOrderVo.java @@ -1,8 +1,6 @@ package com.ruoyi.order.domain.vo; import com.fasterxml.jackson.annotation.JsonFormat; -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -29,31 +27,31 @@ private Integer orderStatus; @ApiModelProperty(value = "商品总价") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal orderGoodsMoney; @ApiModelProperty(value = "优惠券抵扣") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal couponDiscount; @ApiModelProperty(value="应付金额") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal receivableMoney; @ApiModelProperty(value="应收订金") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal receivableDeposit; @ApiModelProperty(value="实收金额") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal receiveMoney; @ApiModelProperty(value="已收金额") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal payMoney; @ApiModelProperty(value="未收金额") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal unPaidMoney; @ApiModelProperty(value="收款时间") @@ -61,7 +59,6 @@ private Date receiveMoneyTime; @ApiModelProperty(value="收款金额") - @JsonSerialize(using = ToStringSerializer.class) private BigDecimal thisReceiveMoney; @ApiModelProperty(value="收款方式") diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerOrderDistributionTotalVo.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerOrderDistributionTotalVo.java index fc9e92a..c4ab01d 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerOrderDistributionTotalVo.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerOrderDistributionTotalVo.java @@ -24,7 +24,7 @@ private Integer[] orderTotalValue; @ApiModelProperty(value = "订单金额value") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal[] orderMoneyValue; diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerOrderPageVo.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerOrderPageVo.java index 86efe09..003bdb2 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerOrderPageVo.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerOrderPageVo.java @@ -1,8 +1,6 @@ package com.ruoyi.order.domain.vo; import com.fasterxml.jackson.annotation.JsonFormat; -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -45,31 +43,28 @@ private Integer payType; @ApiModelProperty(value = "商品总价") - @JsonSerialize(using = ToStringSerializer.class) private BigDecimal orderGoodsMoney; @ApiModelProperty(value = "优惠券抵扣") - @JsonSerialize(using = ToStringSerializer.class) private BigDecimal couponDiscount; - @ApiModelProperty(value="应收金额") - @JsonSerialize(using = ToStringSerializer.class) - private BigDecimal receivableMoney; @ApiModelProperty(value="应收订金") - @JsonSerialize(using = ToStringSerializer.class) private BigDecimal receivableDeposit; + @ApiModelProperty(value="应收全额") + private BigDecimal receivableMoney; + @ApiModelProperty(value="订单实际支付金额") - @JsonSerialize(using = ToStringSerializer.class) private BigDecimal payMoney; @ApiModelProperty(value="订单已收金额") - @JsonSerialize(using = ToStringSerializer.class) private BigDecimal receiveMoney; + @ApiModelProperty(value = "实收金额") + private BigDecimal relReceiveMoney; + @ApiModelProperty(value="订单未支付金额") - @JsonSerialize(using = ToStringSerializer.class) private BigDecimal unPaidMoney; @ApiModelProperty(value="订单备注") diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerOrderTotalVo.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerOrderTotalVo.java index 3389f32..7184c63 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerOrderTotalVo.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerOrderTotalVo.java @@ -39,31 +39,31 @@ private Integer serviceTotal; @ApiModelProperty(value = "总订单金额") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal orderMoney; @ApiModelProperty(value = "线上订单金额") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal onlineMoney; @ApiModelProperty(value = "线下订单金额") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal offlineMoney; @ApiModelProperty(value = "活动订单金额") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal activityMoney; @ApiModelProperty(value = "周期订单金额") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal cycleMoney; @ApiModelProperty(value = "体验订单金额") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal experienceMoney; @ApiModelProperty(value = "服务订单金额") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal serviceMoney; diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerTotalOrderVo.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerTotalOrderVo.java index dff0b54..633c01b 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerTotalOrderVo.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerTotalOrderVo.java @@ -1,7 +1,5 @@ package com.ruoyi.order.domain.vo; -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -22,22 +20,17 @@ private Integer orderTotal; @ApiModelProperty(value = "应收金额") - @JsonSerialize(using = ToStringSerializer.class) private BigDecimal receivableMoney; @ApiModelProperty(value = "实收金额") - @JsonSerialize(using = ToStringSerializer.class) private BigDecimal relReceiveMoney; @ApiModelProperty(value = "已收金额") - @JsonSerialize(using = ToStringSerializer.class) private BigDecimal relPayMoney; @ApiModelProperty(value = "未收金额") - @JsonSerialize(using = ToStringSerializer.class) private BigDecimal unpaidMoney; - @ApiModelProperty(value = "总订金") - @JsonSerialize(using = ToStringSerializer.class) + @ApiModelProperty(value = "订金") private BigDecimal receivableDeposit; } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerVerifyCodeVo.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerVerifyCodeVo.java index 45e13e7..d840d98 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerVerifyCodeVo.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerVerifyCodeVo.java @@ -1,6 +1,5 @@ package com.ruoyi.order.domain.vo; -import com.ruoyi.system.api.domain.dto.MerBaseDto; import io.swagger.annotations.ApiModelProperty; import lombok.Data; diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerVerifyOrderVo.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerVerifyOrderVo.java index f8e0f1a..7217d93 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerVerifyOrderVo.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MerVerifyOrderVo.java @@ -1,8 +1,6 @@ package com.ruoyi.order.domain.vo; import com.fasterxml.jackson.annotation.JsonFormat; -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -33,26 +31,26 @@ private Integer orderFrom; @ApiModelProperty(value = "商品总价") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal orderGoodsMoney; @ApiModelProperty(value = "优惠券抵扣") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal couponDiscount; @ApiModelProperty(value="应收金额") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal receivableMoney; @ApiModelProperty(value="应收订金") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal receivableDeposit; @ApiModelProperty(value="订单商品列表") private List<AppUserOrderGoodsPageVo> appUserOrderGoodsPageVoList; @ApiModelProperty(value="订单支付金额") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal payMoney; @ApiModelProperty(value="创建时间") @@ -80,15 +78,15 @@ private String userMobile; @ApiModelProperty(value="实收金额") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal realReceiveMoney; @ApiModelProperty(value="已收金额") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal receiveMoney; @ApiModelProperty(value="未收金额") - @JsonSerialize(using = ToStringSerializer.class) + private BigDecimal unReceiveMoney; @ApiModelProperty(value="支付方式1.全款2订金") diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/fliter/ParamsAuthFilter.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/fliter/ParamsAuthFilter.java index ef00c5e..ac82f81 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/fliter/ParamsAuthFilter.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/fliter/ParamsAuthFilter.java @@ -81,7 +81,11 @@ } String requestBodyStr = stringBuilder.toString(); if(StringUtils.isNotBlank(requestBodyStr)){ - return JSONObject.parseObject(stringBuilder.toString(), Map.class); + try { + return JSONObject.parseObject(stringBuilder.toString(), Map.class); + }catch (Exception e){ + e.printStackTrace(); + } } return new HashMap<>(); } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java index b44c461..fba7330 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java @@ -4,6 +4,10 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.order.domain.dto.*; import com.ruoyi.order.domain.pojo.order.Order; +import com.ruoyi.order.domain.vo.MerMemberNoClearOrderVo; +import com.ruoyi.order.domain.vo.MerOrderPageVo; +import com.ruoyi.order.domain.vo.MerOrderTotalVo; +import com.ruoyi.order.domain.vo.MerTotalOrderVo; import com.ruoyi.order.domain.vo.*; import com.ruoyi.system.api.domain.dto.*; import com.ruoyi.system.api.domain.vo.MerHomeShopTotalVo; @@ -39,7 +43,7 @@ * @param userId * @return */ - List<MerMemberNoClearOrderVo> pageMerMemberNoClearOrder(Page page, @Param("userId") Long userId); + List<MerMemberNoClearOrderVo> pageMerMemberNoClearOrder(Page page, @Param("userId") Long userId); @@ -48,7 +52,7 @@ * @param merOrderPageDto * @return */ - List<MerOrderPageVo> pageMerOrder(Page page,@Param("param") MerOrderPageDto merOrderPageDto); + List<MerOrderPageVo> pageMerOrder(Page page, @Param("param") MerOrderPageDto merOrderPageDto); /** @@ -57,7 +61,7 @@ * @param userId * @return */ - List<MerMemberNoClearOrderVo> pageMerMemberOrder(Page page, @Param("userId") Long userId); + List<MerMemberOrderVo> pageMerMemberOrder(Page page, @Param("userId") Long userId); /** * 获取用户订单统计 diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java index 865eb95..5815a6a 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java @@ -312,15 +312,19 @@ for (AppMemberCouponVo entity : appMemberCouponVoList) { if (StringUtils.isBlank(entity.getRelGoodsIds()) || entity.getRelGoodsIds().contains(sureOrderGoodsVo.getGoodsId())) { if (entity.getCouponType() == 1) { - if (entity.getMoneyThreshold().compareTo(sureOrderGoodsVo.getGoodsTotalPrice()) < 0 && entity.getDiscountMoney().compareTo(sureOrderGoodsVo.getGoodsTotalPrice()) < 0) { + if (entity.getMoneyThreshold().compareTo(sureOrderGoodsVo.getGoodsTotalPrice()) <= 0) { appGoodsMemberCouponVoList.add(entity); } + /*if (entity.getMoneyThreshold().compareTo(sureOrderGoodsVo.getGoodsTotalPrice()) < 0 && entity.getDiscountMoney().compareTo(sureOrderGoodsVo.getGoodsTotalPrice()) < 0) { + appGoodsMemberCouponVoList.add(entity); + }*/ } else if (entity.getCouponType() == 2) { appGoodsMemberCouponVoList.add(entity); } else if (entity.getCouponType() == 3) { - if (entity.getDiscountMoney().compareTo(sureOrderGoodsVo.getGoodsTotalPrice()) < 0) { + appGoodsMemberCouponVoList.add(entity); + /*if (entity.getDiscountMoney().compareTo(sureOrderGoodsVo.getGoodsTotalPrice()) < 0) { appGoodsMemberCouponVoList.add(entity); - } + }*/ } } @@ -616,6 +620,10 @@ goodsRealPrice = goodsTotalPrice.subtract(discountMoney); useCoupon = 1; } + if(goodsRealPrice.compareTo(BigDecimal.ZERO)<0){ + goodsRealPrice = BigDecimal.ZERO; + discountMoney = goodsTotalPrice; + } } memberCouponSJ.add(memberCouponId); } @@ -695,12 +703,14 @@ order.setDiscountMoney(couponDiscount); order.setReceivableMoney(orderPayMoney); order.setReceivableDeposit(orderPayDeposit); + order.setOfflinePayMoney(BigDecimal.ZERO); // 根据支付类型计算支付金额 if (appPlaceOrderDto.getPayType() == 1) { order.setPayMoney(orderPayMoney); order.setOnlinePayMoney(orderPayMoney); appPlaceOrderVo.setPayMoney(orderPayMoney); appPlaceOrderVo.setUnpaidMoney(order.getReceivableMoney().subtract(order.getPayMoney())); + order.setChangeReceivableMoney(orderGoodsMoney.subtract(couponDiscount)); order.setPayType(1); order.setCloseFlag(1); } else if (appPlaceOrderDto.getPayType() == 2) { @@ -708,10 +718,10 @@ order.setOnlinePayMoney(orderPayDeposit); appPlaceOrderVo.setPayMoney(orderPayDeposit); appPlaceOrderVo.setUnpaidMoney(order.getReceivableMoney().subtract(order.getPayMoney())); + order.setChangeReceivableMoney(orderGoodsMoney.subtract(couponDiscount).subtract(orderPayDeposit)); order.setPayType(2); order.setCloseFlag(0); } - order.setChangeReceivableMoney(appPlaceOrderVo.getUnpaidMoney()); order.setOrderRemark(appPlaceOrderDto.getOrderRemark()); order.setGoodsNum(goodsNum); order.setCreateTime(new Date()); @@ -1031,6 +1041,7 @@ order.setReceivableDeposit(orderPayDeposit); order.setActivityId(activityId); order.setActivityName(activityGoodsGetVo.getActivityName()); + order.setOfflinePayMoney(BigDecimal.ZERO); // 根据支付类型设置订单支付金额,在线支付金额,订单支付金额,未支付金额,关闭标志 if (appPlaceActivityDto.getPayType() == 1) { order.setPayMoney(orderPayMoney); @@ -1309,7 +1320,7 @@ merVerifyOrderVo.setCouponDiscount(order.getCouponMoney()); merVerifyOrderVo.setReceivableDeposit(order.getReceivableDeposit()); if(order.getPayType()==1){ - merVerifyOrderVo.setReceivableMoney(order.getOrderMoney().subtract(order.getPayMoney())); + merVerifyOrderVo.setReceivableMoney(order.getReceivableMoney()); }else{ merVerifyOrderVo.setReceivableMoney(order.getOrderMoney().subtract(order.getCouponMoney()).subtract(order.getReceivableDeposit())); } @@ -1669,6 +1680,7 @@ consumerGoods.setSourceFrom(1); consumerGoodsList.add(consumerGoods); } + remoteCouponService.useMemberCoupon(memberCoupon.getId()); consumerGoodsService.saveBatchConsumerGoods(consumerGoodsList); merVerifyCouponVo.setVerifyStatus(2); return merVerifyCouponVo; @@ -1691,10 +1703,38 @@ throw new ServiceException(AppErrorConstant.COUPON_USED); } ShopRelUserVo shopRelUserVo = remoteShopService.getShopByUserId(merVerifyPrizeDto.getUserId()).getData(); - if (!shopRelUserVo.getShopId().equals(memberGiftRecord.getShopId())) { + Shop shop = remoteShopService.getShop(shopRelUserVo.getShopId()).getData(); + if (memberGiftRecord.getGiftFrom() == 1) { + BirthdayCard birthdayCard = remoteMemberService.getBirthdayCard().getData(); + if(birthdayCard!=null){ + //判断指定区域全部店铺 + if(birthdayCard.getAreaFlag()==2&&birthdayCard.getShopFlag()==1&&!StringUtils.checkString(birthdayCard.getDesignatedArea(),shop.getShopCityCode())){ + throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR); + } + //判断指定店铺 + if(birthdayCard.getShopFlag()==2&&!StringUtils.checkString(birthdayCard.getApplicableShop(),shop.getShopId().toString())){ + throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR); + } + }else{ + throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR); + } + } + if (memberGiftRecord.getGiftFrom() == 2 && !memberGiftRecord.getShopId().equals(shop.getShopId())) { throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR); } Member member = remoteMemberService.getMember(memberGiftRecord.getUserId()).getData(); + if(member.getBindingFlag()==0){ + //绑定用户 + if(shop==null){ + shop = remoteShopService.getShop(shop.getShopId()).getData(); + } + AppMemberBindingDto appMemberBindingDto = new AppMemberBindingDto(); + appMemberBindingDto.setBindingFlag(1); + appMemberBindingDto.setShopId(shop.getShopId()); + appMemberBindingDto.setShopName(shop.getShopName()); + appMemberBindingDto.setUserId(memberGiftRecord.getUserId()); + remoteMemberService.updateMemberBinding(appMemberBindingDto); + } merVerifyAwardVo.setUserName(member.getRealName()); merVerifyAwardVo.setUserMobile(member.getMobile()); if (memberGiftRecord.getGiftFrom() == 1) { @@ -1752,13 +1792,14 @@ break; } merVerifyAwardVo.setCreateTime(memberGiftRecord.getCreateTime()); - memberGiftRecord.setVerifyStatus(2); - memberGiftRecord.setVerifyTime(new Date()); + MerVerifyPrizeFinalDto merVerifyPrizeFinalDto = new MerVerifyPrizeFinalDto(); + merVerifyPrizeFinalDto.setPrizeId(memberGiftRecord.getPrizeId()); + merVerifyPrizeFinalDto.setShopId(shop.getShopId()); + remoteMemberService.verifyPrize(merVerifyPrizeFinalDto); if (member.getBindingFlag() != 1) { AppMemberBindingDto appMemberBindingDto = new AppMemberBindingDto(); appMemberBindingDto.setBindingFlag(1); appMemberBindingDto.setShopId(merVerifyPrizeDto.getShopId()); - Shop shop = remoteShopService.getShop(merVerifyPrizeDto.getShopId()).getData(); appMemberBindingDto.setShopName(shop.getShopName()); appMemberBindingDto.setUserId(merVerifyPrizeDto.getUserId()); remoteMemberService.updateMemberBinding(appMemberBindingDto); @@ -1803,9 +1844,9 @@ order.setOffPayTime(new Date()); order.setPayMoney(order.getPayMoney().add(merCloseOrderDto.getPayMoney())); if (order.getPayMoney().compareTo(order.getChangeReceivableMoney()) >= 0) { - order.setCloseFlag(0); - } else { order.setCloseFlag(1); + } else { + order.setCloseFlag(0); } this.saveOrUpdate(order); //创建支付记录 @@ -2028,9 +2069,9 @@ order.setOffPayTime(nowTime); order.setPayType(1); if (order.getPayMoney().compareTo(order.getChangeReceivableMoney()) >= 0) { - order.setCloseFlag(0); - } else { order.setCloseFlag(1); + } else { + order.setCloseFlag(0); } this.save(order); //创建服务 @@ -2117,7 +2158,7 @@ payRecord.setDelFlag(0); payRecord.setOrderId(orderId); payRecord.setPayMoney(order.getPayMoney()); - payRecord.setPayTime(order.getPayTime()); + payRecord.setPayTime(order.getOffPayTime()); payRecord.setPayType(2); payRecordService.save(payRecord); } @@ -2157,7 +2198,6 @@ if (orderFrom == 1) { orderFromDesc = "商城订单"; } else if(orderFrom == 2){ - orderFromDesc = "店铺砍价活动("+merOrderPageVo.getActivityName()+")"; } else { orderFromDesc = "线下创建"; @@ -2166,7 +2206,6 @@ orderFromDesc = "商城订单"; } merOrderPageVo.setOrderFromDesc(orderFromDesc); - merOrderPageVo.setUnPaidMoney(merOrderPageVo.getPayMoney().subtract(merOrderPageVo.getReceiveMoney())); if (merOrderPageVo.getUnPaidMoney() == null) { merOrderPageVo.setUnPaidMoney(zeroBig); } @@ -2195,12 +2234,11 @@ * @return */ @Override - public List<MerMemberNoClearOrderVo> pageMerMemberOrder(Page page, MerMemberNoClearOrderDto merMemberNoClearOrderDto) { - List<MerMemberNoClearOrderVo> merMemberNoClearOrderVoList = orderMapper.pageMerMemberOrder(page, merMemberNoClearOrderDto.getMemberUserId()); + public List<MerMemberOrderVo> pageMerMemberOrder(Page page, MerMemberNoClearOrderDto merMemberNoClearOrderDto) { + List<MerMemberOrderVo> merMemberNoClearOrderVoList = orderMapper.pageMerMemberOrder(page, merMemberNoClearOrderDto.getMemberUserId()); if (merMemberNoClearOrderVoList != null && !merMemberNoClearOrderVoList.isEmpty()) { BigDecimal zeroBig = new BigDecimal("0.00"); - for (MerMemberNoClearOrderVo merMemberNoClearOrderVo : merMemberNoClearOrderVoList) { - merMemberNoClearOrderVo.setUnPaidMoney(merMemberNoClearOrderVo.getReceivableMoney().subtract(merMemberNoClearOrderVo.getPayMoney())); + for (MerMemberOrderVo merMemberNoClearOrderVo : merMemberNoClearOrderVoList) { if (merMemberNoClearOrderVo.getUnPaidMoney() == null) { merMemberNoClearOrderVo.setUnPaidMoney(zeroBig); } @@ -3157,8 +3195,8 @@ merVerifyCouponVo.setUserName(member.getRealName()); merVerifyCouponVo.setUserMobile(member.getMobile()); merVerifyCouponVo.setCouponFrom(verifyCouponGetVo.getCouponFrom()); - merVerifyCouponVo.setCouponName(verifyCouponGetVo.getMemberCoupon().getCouponName()); - merVerifyCouponVo.setCreateTime(verifyCouponGetVo.getMemberCoupon().getReceiveTime()); + merVerifyCouponVo.setCouponName(memberCoupon.getCouponName()); + merVerifyCouponVo.setCreateTime(memberCoupon.getReceiveTime()); // 将goodsList转换为MerCouponGoodsListVo列表,并设置相应属性 List<MerCouponGoodsListVo> merCouponGoodsList = goodsList.stream() .map(goods -> { @@ -3181,6 +3219,7 @@ // 设置merVerifyCouponVo的goodsList属性为merCouponGoodsList merVerifyCouponVo.setGoodsList(merCouponGoodsList); merVerifyCouponVo.setVerifyStatus(1); + merVerifyCouponVo.setMemberCouponId(memberCoupon.getId()); return merVerifyCouponVo; } @@ -3200,6 +3239,7 @@ throw new ServiceException(AppErrorConstant.COUPON_USED); } Shop shop = null; + Member member = remoteMemberService.getMember(memberGiftRecord.getUserId()).getData(); if (memberGiftRecord.getGiftFrom() == 1) { BirthdayCard birthdayCard = remoteMemberService.getBirthdayCard().getData(); if(birthdayCard!=null){ @@ -3219,19 +3259,8 @@ if (memberGiftRecord.getGiftFrom() == 2 && !memberGiftRecord.getShopId().equals(shopId)) { throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR); } - Member member = remoteMemberService.getMember(memberGiftRecord.getUserId()).getData(); - if(member.getBindingFlag()==0){ - //绑定用户 - if(shop==null){ - shop = remoteShopService.getShop(shopId).getData(); - } - AppMemberBindingDto appMemberBindingDto = new AppMemberBindingDto(); - appMemberBindingDto.setBindingFlag(1); - appMemberBindingDto.setShopId(shopId); - appMemberBindingDto.setShopName(shop.getShopName()); - appMemberBindingDto.setUserId(memberGiftRecord.getUserId()); - remoteMemberService.updateMemberBinding(appMemberBindingDto); - } + + merVerifyAwardVo.setUserName(member.getRealName()); merVerifyAwardVo.setUserMobile(member.getMobile()); if (memberGiftRecord.getGiftFrom() == 1) { diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/OrderService.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/OrderService.java index 36c35cc..c1a444f 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/OrderService.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/OrderService.java @@ -5,6 +5,7 @@ import com.github.binarywang.wxpay.bean.ecommerce.PartnerTransactionsResult; import com.github.binarywang.wxpay.bean.ecommerce.RefundNotifyResult; import com.github.binarywang.wxpay.bean.profitsharingV3.ProfitSharingNotifyResult; +import com.ruoyi.order.domain.dto.MerVerifyPrizeDto; import com.ruoyi.order.domain.dto.*; import com.ruoyi.order.domain.pojo.order.Order; import com.ruoyi.order.domain.vo.*; @@ -13,7 +14,6 @@ import com.ruoyi.system.api.domain.vo.MerHomeShopTotalVo; import com.ruoyi.system.api.domain.vo.MgtBulletinBoardVo; import com.ruoyi.system.api.domain.vo.MgtMapIntTotalVo; -import com.wechat.pay.java.service.partnerpayments.jsapi.model.Transaction; import java.math.BigDecimal; import java.util.List; @@ -156,7 +156,7 @@ * @param merOrderPageDto * @return */ - List<MerOrderPageVo> pageMerOrder(Page page,MerOrderPageDto merOrderPageDto); + List<MerOrderPageVo> pageMerOrder(Page page, MerOrderPageDto merOrderPageDto); /** * 分页商户端用户收银记录 @@ -164,7 +164,7 @@ * @param merMemberNoClearOrderDto * @return */ - List<MerMemberNoClearOrderVo> pageMerMemberOrder(Page page, MerMemberNoClearOrderDto merMemberNoClearOrderDto); + List<MerMemberOrderVo> pageMerMemberOrder(Page page, MerMemberNoClearOrderDto merMemberNoClearOrderDto); /** * 获取用户订单统计 @@ -388,7 +388,7 @@ * @description 商户端订单管理统计 * @author jqs * @date 2023/7/4 16:27 - * @param merBaseDto + * @param merOrderPageDto * @return MerTotalOrderVo */ MerTotalOrderVo totalMerOrder(MerOrderPageDto merOrderPageDto); @@ -416,7 +416,7 @@ * @description 订单支付回调 * @author jqs * @date 2023/7/13 17:57 - * @param Transaction transaction + * @param transaction * @return void */ void payBack(PartnerTransactionsResult transaction); diff --git a/ruoyi-modules/ruoyi-order/src/main/resources/bootstrap.yml b/ruoyi-modules/ruoyi-order/src/main/resources/bootstrap.yml index a795433..1bf0074 100644 --- a/ruoyi-modules/ruoyi-order/src/main/resources/bootstrap.yml +++ b/ruoyi-modules/ruoyi-order/src/main/resources/bootstrap.yml @@ -14,12 +14,12 @@ nacos: discovery: # 服务注册地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 config: # 配置中心地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml index 0563902..ee6fb44 100644 --- a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml +++ b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml @@ -61,8 +61,10 @@ <result column="couponDiscount" property="couponDiscount"/> <result column="receivableMoney" property="receivableMoney"/> <result column="receivableDeposit" property="receivableDeposit"/> + <result column="relReceiveMoney" property="relReceiveMoney"/> <result column="payMoney" property="payMoney"/> <result column="receiveMoney" property="receiveMoney"/> + <result column="unPaidMoney" property="unPaidMoney"/> <result column="orderRemark" property="orderRemark" /> <result column="orderFrom" property="orderFrom" /> <result column="createTime" property="createTime" /> @@ -295,11 +297,12 @@ toc.order_status orderStatus, toc.order_money orderGoodsMoney, toc.coupon_money couponDiscount, - toc.receivable_money receivableMoney, + CASE toc.pay_type WHEN 1 THEN toc.online_pay_money WHEN 2 THEN toc.order_money-toc.coupon_money-toc.online_pay_money END receivableMoney, toc.receivable_deposit receivableDeposit, - toc.change_receivable_money receiveMoney, - IFNULL(toc.offline_pay_money,0) payMoney, - toc.change_receivable_money-IFNULL(toc.offline_pay_money,0) unPaidMoney, + toc.pay_money payMoney, + toc.change_receivable_money relReceiveMoney, + CASE toc.pay_type WHEN 1 THEN toc.online_pay_money WHEN 2 THEN IFNULL(toc.offline_pay_money,0) END receiveMoney, + toc.change_receivable_money - (CASE toc.pay_type WHEN 1 THEN toc.online_pay_money WHEN 2 THEN IFNULL(toc.offline_pay_money,0) END) unPaidMoney, toc.create_time createTime FROM t_order toc WHERE toc.del_flag = 0 AND toc.user_id = #{userId} AND toc.order_status >= 2 AND toc.close_flag = 0 @@ -315,10 +318,12 @@ toc.order_status orderStatus, toc.order_money orderGoodsMoney, toc.coupon_money couponDiscount, - toc.receivable_money-toc.online_pay_money receivableMoney, + CASE toc.pay_type WHEN 1 THEN toc.online_pay_money WHEN 2 THEN toc.order_money-toc.coupon_money-toc.online_pay_money END receivableMoney, toc.receivable_deposit receivableDeposit, - toc.change_receivable_money payMoney, - IFNULL(toc.offline_pay_money,0) receiveMoney, + toc.pay_money payMoney, + toc.change_receivable_money relReceiveMoney, + CASE toc.pay_type WHEN 1 THEN toc.online_pay_money WHEN 2 THEN IFNULL(toc.offline_pay_money,0) END receiveMoney, + toc.change_receivable_money - (CASE toc.pay_type WHEN 1 THEN toc.online_pay_money WHEN 2 THEN IFNULL(toc.offline_pay_money,0) END) unPaidMoney, toc.order_remark orderRemark, tog.goods_name goodsName, tog.goods_type goodsType, @@ -363,26 +368,7 @@ ORDER BY toc.create_time DESC </select> - <select id="pageMerMemberOrder" resultType="com.ruoyi.order.domain.vo.MerMemberNoClearOrderVo"> - SELECT - toc.order_id orderId, - toc.order_no orderNo, - toc.order_status orderStatus, - toc.order_money orderGoodsMoney, - toc.coupon_money couponDiscount, - toc.receivable_money-toc.online_pay_money receivableMoney, - toc.receivable_deposit receivableDeposit, - toc.change_receivable_money payMoney, - IFNULL(toc.offline_pay_money,0) receiveMoney, - IFNULL(toc.receivable_money-IFNULL(CASE toc.pay_type WHEN 1 THEN toc.online_pay_money WHEN 2 THEN IFNULL(toc.offline_pay_money,0) END,0),0) unpaidMoney, - tpr.pay_time receiveMoneyTime, - tpr.pay_money thisReceiveMoney, - CASE tpr.pay_type WHEN 1 THEN "微信" WHEN 2 THEN "现金" WHEN 3 THEN "支付宝" END thisReceiveType - FROM t_pay_record tpr - INNER JOIN t_order toc ON tpr.order_id = toc.order_id - WHERE toc.del_flag = 0 AND toc.user_id = #{userId} AND (toc.order_status = 2 OR toc.order_status = 3) - ORDER BY toc.create_time DESC - </select> + <select id="getMgtMemberOrderTotal" resultType="com.ruoyi.order.domain.vo.MgtMemberOrderTotalVo"> SELECT @@ -1353,9 +1339,9 @@ </select> <select id="getMemberUnpaidOrder" resultType="java.math.BigDecimal"> - SELECT IFNULL(SUM(receivable_money-pay_money),0) - FROM t_order - WHERE del_flag = 0 AND user_id = #{param.userId} AND shop_id = #{param.shopId} AND order_status IN (1,2) AND close_flag = 0 + SELECT IFNULL(SUM(toc.change_receivable_money-IFNULL(CASE toc.pay_type WHEN 1 THEN toc.online_pay_money WHEN 2 THEN IFNULL(toc.offline_pay_money,0) END,0)),0) + FROM t_order toc + WHERE toc.del_flag = 0 AND toc.user_id = #{param.userId} AND toc.shop_id = #{param.shopId} AND toc.order_status IN (2,3) AND toc.close_flag = 0 </select> @@ -1499,7 +1485,7 @@ <select id="totalMerOrder" resultType="com.ruoyi.order.domain.vo.MerTotalOrderVo"> SELECT COUNT(toc.order_id) orderTotal, - IFNULL(SUM(toc.receivable_money-IFNULL(toc.online_pay_money,0)),0) receivableMoney, + IFNULL(SUM(CASE toc.pay_type WHEN 1 THEN toc.receivable_money WHEN 2 THEN order_money-coupon_money-online_pay_money END),0) receivableMoney, IFNULL(SUM(toc.change_receivable_money),0) relReceiveMoney, IFNULL(SUM(CASE toc.pay_type WHEN 1 THEN toc.online_pay_money WHEN 2 THEN IFNULL(toc.offline_pay_money,0) END),0) relPayMoney, IFNULL(SUM(toc.change_receivable_money-IFNULL(CASE toc.pay_type WHEN 1 THEN toc.online_pay_money WHEN 2 THEN IFNULL(toc.offline_pay_money,0) END,0)),0) unpaidMoney, @@ -1729,6 +1715,29 @@ ORDER BY toc.create_time DESC </select> + + <select id="pageMerMemberOrder" resultType="com.ruoyi.order.domain.vo.MerMemberOrderVo"> + SELECT + toc.order_id orderId, + toc.order_no orderNo, + toc.order_status orderStatus, + toc.order_money orderGoodsMoney, + toc.coupon_money couponDiscount, + CASE toc.pay_type WHEN 1 THEN toc.online_pay_money WHEN 2 THEN toc.order_money-toc.coupon_money-toc.online_pay_money END receivableMoney, + toc.receivable_deposit receivableDeposit, + toc.pay_money payMoney, + toc.change_receivable_money relReceiveMoney, + CASE toc.pay_type WHEN 1 THEN toc.online_pay_money WHEN 2 THEN IFNULL(toc.offline_pay_money,0) END receiveMoney, + toc.change_receivable_money - (CASE toc.pay_type WHEN 1 THEN toc.online_pay_money WHEN 2 THEN IFNULL(toc.offline_pay_money,0) END) unPaidMoney, + tpr.pay_time receiveMoneyTime, + tpr.pay_money thisReceiveMoney, + CASE tpr.pay_type WHEN 1 THEN "微信" WHEN 2 THEN "现金" WHEN 3 THEN "支付宝" END thisReceiveType + FROM t_pay_record tpr + INNER JOIN t_order toc ON tpr.order_id = toc.order_id + WHERE toc.del_flag = 0 AND toc.user_id = #{userId} AND (toc.order_status = 2 OR toc.order_status = 3) + ORDER BY toc.create_time DESC + </select> + <select id="pageMerMemberPayOrder" resultMap="merOrderResultMap"> SELECT toc.user_id userId, @@ -1738,10 +1747,12 @@ toc.order_status orderStatus, toc.order_money orderGoodsMoney, toc.coupon_money couponDiscount, - toc.receivable_money-toc.online_pay_money receivableMoney, + CASE toc.pay_type WHEN 1 THEN toc.online_pay_money WHEN 2 THEN toc.order_money-toc.coupon_money-toc.online_pay_money END receivableMoney, toc.receivable_deposit receivableDeposit, - toc.change_receivable_money payMoney, - IFNULL(toc.offline_pay_money,0) receiveMoney, + toc.pay_money payMoney, + toc.change_receivable_money relReceiveMoney, + CASE toc.pay_type WHEN 1 THEN toc.online_pay_money WHEN 2 THEN IFNULL(toc.offline_pay_money,0) END receiveMoney, + toc.change_receivable_money - (CASE toc.pay_type WHEN 1 THEN toc.online_pay_money WHEN 2 THEN IFNULL(toc.offline_pay_money,0) END) unPaidMoney, toc.order_remark orderRemark, tog.goods_name goodsName, tog.goods_type goodsType, diff --git a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/PayRecordMapper.xml b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/PayRecordMapper.xml index f3955f1..2f704da 100644 --- a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/PayRecordMapper.xml +++ b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/PayRecordMapper.xml @@ -7,8 +7,9 @@ pay_time payTime, pay_money payMoney, CASE pay_type - WHEN 1 THEN "微信支付" - WHEN 2 THEN "店铺收银" + WHEN 1 THEN "微信" + WHEN 2 THEN "现金" + WHEN 3 THEN "支付宝" END payType FROM t_pay_record WHERE del_flag = 0 AND order_id = #{orderId} diff --git a/ruoyi-modules/ruoyi-shop/pom.xml b/ruoyi-modules/ruoyi-shop/pom.xml index dbbee66..79ac0ce 100644 --- a/ruoyi-modules/ruoyi-shop/pom.xml +++ b/ruoyi-modules/ruoyi-shop/pom.xml @@ -138,6 +138,13 @@ <artifactId>cxf-rt-rs-extension-providers</artifactId> <version>4.0.2</version> </dependency> + + <!-- 阿里云OBS --> + <dependency> + <groupId>com.aliyun.oss</groupId> + <artifactId>aliyun-sdk-oss</artifactId> + <version>3.15.1</version> + </dependency> </dependencies> <build> diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/RuoYiShopApplication.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/RuoYiShopApplication.java index 2511b27..7d44544 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/RuoYiShopApplication.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/RuoYiShopApplication.java @@ -18,7 +18,7 @@ @EnableCustomSwagger2 @EnableRyFeignClients @SpringBootApplication -//@EnableScheduling +@EnableScheduling @ComponentScans(value = {@ComponentScan("com.ruoyi.system.api"),@ComponentScan("com.ruoyi.common.security.utils")}) public class RuoYiShopApplication { diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/config/WxPayConfiguration.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/config/WxPayConfiguration.java index 63df88a..be00d84 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/config/WxPayConfiguration.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/config/WxPayConfiguration.java @@ -1,9 +1,14 @@ package com.ruoyi.shop.config; +import com.github.binarywang.wxpay.config.WxPayConfig; import com.github.binarywang.wxpay.service.WxPayService; +import com.github.binarywang.wxpay.service.impl.WxPayServiceImpl; +import com.ruoyi.common.core.utils.StringUtils; import lombok.AllArgsConstructor; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; +import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; /** @@ -16,7 +21,7 @@ public class WxPayConfiguration { private WxPayProperties properties; - /*@Bean + @Bean @ConditionalOnMissingBean public WxPayService wxService() { WxPayConfig payConfig = new WxPayConfig(); @@ -33,6 +38,6 @@ WxPayService wxPayService = new WxPayServiceImpl(); wxPayService.setConfig(payConfig); return wxPayService; - }*/ + } } diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java index 4b5e9e0..fea4303 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java @@ -329,4 +329,23 @@ shopStaffService.editMgtShopStaff(mgtShopStaffEditDto); return R.ok(); } + + /** + * @description + * @author jqs + * @date 2023/8/10 23:01 + * @param cityCodes + * @return R<List<Long>> + */ + @PostMapping("/listShopIdByCityCode") + R<List<Long>> listShopIdByCityCode(@RequestBody List<String> cityCodes){ + List<Long> shopIdList = shopService.listShopIdByCityCode(cityCodes); + return R.ok(shopIdList); + } + + @PostMapping("/authShop") + R authShop(){ + shopService.authShop(); + return R.ok(); + } } diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MerFollowMemberTaskDto.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MerFollowMemberTaskDto.java index 0234bf7..9422db1 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MerFollowMemberTaskDto.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MerFollowMemberTaskDto.java @@ -25,7 +25,6 @@ @ApiModelProperty(value="自定义跟进类型") private String customeFollowType; - @ApiModelProperty(value="拨打电话") private String callPhone; @@ -47,8 +46,6 @@ @ApiModelProperty(value="下次任务时间") private String nextTaskDate; - @ApiModelProperty(value="下次任务紧急情况") - private String emergencyState;; @ApiModelProperty(value="下次任务内容") private String nextTaskContent; diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MerAgencyPageVo.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MerAgencyPageVo.java index a34d173..f9bd453 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MerAgencyPageVo.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MerAgencyPageVo.java @@ -1,6 +1,5 @@ package com.ruoyi.shop.domain.vo; -import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -36,7 +35,7 @@ private String shopownerPhone; @ApiModelProperty(value="合作期限") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd") private Date cooperationEndTime; diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/fliter/ParamsAuthFilter.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/fliter/ParamsAuthFilter.java index 75055ba..706a5ee 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/fliter/ParamsAuthFilter.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/fliter/ParamsAuthFilter.java @@ -81,7 +81,11 @@ } String requestBodyStr = stringBuilder.toString(); if(StringUtils.isNotBlank(requestBodyStr)){ - return JSONObject.parseObject(stringBuilder.toString(), Map.class); + try { + return JSONObject.parseObject(stringBuilder.toString(), Map.class); + }catch (Exception e){ + e.printStackTrace(); + } } return new HashMap<>(); } diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopMapper.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopMapper.java index 2ccd4a4..290f50a 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopMapper.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopMapper.java @@ -238,4 +238,13 @@ * @return void */ void updateExtendContacts(Shop shop); + + /** + * @description + * @author jqs + * @date 2023/8/10 22:54 + * @param cityCodes + * @return List<Long> + */ + List<Long> listShopIdByCityCode(List<String> cityCodes); } diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/scheduler/ShopScheduler.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/scheduler/ShopScheduler.java index be7a4fa..665acda 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/scheduler/ShopScheduler.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/scheduler/ShopScheduler.java @@ -1,12 +1,8 @@ package com.ruoyi.shop.scheduler; -import com.ruoyi.common.core.utils.bean.BeanUtils; -import com.ruoyi.common.core.utils.uuid.IdUtils; -import com.ruoyi.shop.domain.pojo.shop.ShopAuthentication; import com.ruoyi.shop.service.shop.ShopService; import com.ruoyi.shop.service.task.ShopTaskService; -import com.ruoyi.system.api.domain.poji.shop.Shop; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; @@ -42,10 +38,10 @@ } /** - * 0 0/1 * * * ? - * 定时检查 每分钟检查一次 微信二级商户进件状态 + * 0 0/30 * * * ? + * 定时检查 每30分钟检查一次 微信二级商户进件状态 */ - @Scheduled(cron="0 0/1 * * * ?") + @Scheduled(cron="0 0/30 * * * ?") private void queryEcommerceApplyMentsStatus(){ if(schedulerUtils.getSchedulerRun()) { log.info("--------------------定时检查微信二级商户进件状态任务开始执行--------------------"); diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java index 6f6f916..56ecd43 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.github.binarywang.wxpay.bean.ecommerce.ApplymentsStatusResult; import com.github.binarywang.wxpay.exception.WxPayException; import com.ruoyi.common.core.constant.CacheConstants; import com.ruoyi.common.core.exception.ServiceException; @@ -19,6 +20,7 @@ import com.ruoyi.shop.domain.pojo.shop.*; import com.ruoyi.shop.domain.pojo.task.ShopFile; import com.ruoyi.shop.domain.vo.*; +import com.ruoyi.shop.enums.WxApplyMentStateEnum; import com.ruoyi.shop.mapper.shop.ShopMapper; import com.ruoyi.shop.service.shop.*; import com.ruoyi.shop.service.task.MemberTaskService; @@ -796,6 +798,11 @@ } merHomeShopTotalVo.setShopId(shopId); Shop shop = this.getById(shopId); + if(shop.getFrozenFlag()==1){ + String userKey = SecurityUtils.getUserKey(); + redisService.deleteObject(CacheConstants.LOGIN_TOKEN_KEY+userKey); + throw new ServiceException("商户已被冻结",401); + } merHomeShopTotalVo.setShopType(shop.getShopType()); MerHomeShopTotalVo orderVo = remoteOrderService.getMerHomeTotal(merHomeShopTotalVo).getData(); ShopTotal shopTotal = shopTotalService.getById(shopId); @@ -1361,7 +1368,7 @@ * @param applymentId */ private void queryApplyStatusByApplymentId(String applymentId, Long shopId) { - /*try { + try { if (StringUtils.isNotBlank(applymentId)) { ApplymentsStatusResult result = wechatPayUtils.queryApplyStatusByApplymentId(applymentId); shopAuthenticationService.updateAuditStatusByApplymentId(applymentId, result); @@ -1372,7 +1379,7 @@ } } catch (WxPayException e) { e.printStackTrace(); - }*/ + } } /** @@ -1389,4 +1396,28 @@ .set(Shop::getAuthFlag, 1); this.update(updateWrapper); } + + /** + * @description + * @author jqs + * @date 2023/8/10 22:53 + * @param cityCodes + * @return List<Long> + */ + @Override + public List<Long> listShopIdByCityCode(List<String> cityCodes){ + return shopMapper.listShopIdByCityCode(cityCodes); + } + + @Override + public void authShop(){ + ShopAuthentication shopAuthentication = shopAuthenticationService.getById("8c23fa423beb4673a0edc641a1ca0c23"); + Shop shop = this.getByShopId(shopAuthentication.getShopId()); + try { + wechatPayUtils.ecommerceApply(shopAuthentication,shopAuthentication.getApplyNumber(),shop); + + } catch (Exception e) { + throw new RuntimeException(e); + } + } } diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/MemberTaskServiceImpl.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/MemberTaskServiceImpl.java index 34c5795..a42b60e 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/MemberTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/MemberTaskServiceImpl.java @@ -201,7 +201,6 @@ memberTask.setUserId(oldMemberTask.getUserId()); memberTask.setTaskDate(merFollowMemberTaskDto.getNextTaskDate()); memberTask.setTaskContent(merFollowMemberTaskDto.getNextTaskContent()); - memberTask.setEmergencyState(merFollowMemberTaskDto.getEmergencyState()); int i = merFollowMemberTaskDto.getNextTaskDate().compareTo(nowTimeStr); if(i>0){ memberTask.setTaskStatus(0); diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopService.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopService.java index b84fce1..938e098 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopService.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopService.java @@ -332,4 +332,15 @@ * 微信二级商户进件状态 定时任务检测 */ void queryEcommerceApplyMentsStatus(); + + /** + * @description + * @author jqs + * @date 2023/8/10 22:54 + * @param cityCodes + * @return List<Long> + */ + List<Long> listShopIdByCityCode(List<String> cityCodes); + + void authShop(); } diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/OBSUploadUtils.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/OBSUploadUtils.java new file mode 100644 index 0000000..7fafda0 --- /dev/null +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/OBSUploadUtils.java @@ -0,0 +1,44 @@ +package com.ruoyi.shop.util; + +import com.aliyun.oss.OSS; +import com.aliyun.oss.OSSClientBuilder; +import com.aliyun.oss.model.OSSObject; + +import java.io.InputStream; + +/** + * @author jqs34 + * @version 1.0 + * @classname OBSUploadUtils + * @description: TODO + * @date 2023 2023/5/1 15:40 + */ +public class OBSUploadUtils { + + public static void main(String[] args) throws Exception { + } + + protected static OSS createOss(){ + // Endpoint以华东1(杭州)为例,其它Region请按实际情况填写。 + String endpoint = "https://oss-cn-beijing.aliyuncs.com"; + // 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。 + String accessKeyId = "LTAI5tAfKFuhyKFH12CTkXFj"; + String accessKeySecret = "tIBRuonHuQQPdcYrmlCdXlexOSwVXe"; + // 填写Bucket名称,例如examplebucket。 + String bucketName = "hongruitang"; + OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); + return ossClient; + } + + + + public static InputStream getOSSInputStream(String key) throws Exception { + String bucketName = "hongruitang"; + // 创建OSSClient实例。 + OSS ossClient = createOss(); + OSSObject ossObject = ossClient.getObject(bucketName,key); + InputStream inputStream = ossObject.getObjectContent(); + return inputStream; + } + +} diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/WechatPayUtils.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/WechatPayUtils.java index 45e1ce1..01c24c5 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/WechatPayUtils.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/util/WechatPayUtils.java @@ -1,8 +1,21 @@ package com.ruoyi.shop.util; +import com.github.binarywang.wxpay.bean.ecommerce.ApplymentsRequest; +import com.github.binarywang.wxpay.bean.ecommerce.ApplymentsResult; +import com.github.binarywang.wxpay.bean.ecommerce.ApplymentsStatusResult; +import com.github.binarywang.wxpay.bean.media.ImageUploadResult; import com.github.binarywang.wxpay.exception.WxPayException; +import com.github.binarywang.wxpay.service.EcommerceService; +import com.github.binarywang.wxpay.service.MerchantMediaService; +import com.github.binarywang.wxpay.service.WxPayService; +import com.ruoyi.shop.domain.pojo.shop.ShopAuthentication; +import com.ruoyi.system.api.domain.poji.shop.Shop; import lombok.AllArgsConstructor; import org.springframework.stereotype.Component; + +import java.io.InputStream; +import java.util.ArrayList; +import java.util.List; /** * 微信支付 @@ -11,13 +24,20 @@ @AllArgsConstructor public class WechatPayUtils { - /*private final WxPayService wxService; + private final WxPayService wxService; - *//** - * 电商二级商户进件(提交申请单) - *//* - public ApplymentsResult ecommerceApply(ShopAuthentication shopAuthentication, String applyNumber, Shop shop) throws WxPayException { + /** + * @description 电商二级商户进件(提交申请单) + * @author jqs + * @date 2023/8/11 10:04 + * @param shopAuthentication + * @param applyNumber + * @param shop + * @return ApplymentsResult + */ + public ApplymentsResult ecommerceApply(ShopAuthentication shopAuthentication, String applyNumber, Shop shop) throws Exception { EcommerceService ecommerceService = wxService.getEcommerceService(); + MerchantMediaService merchantMediaService = wxService.getMerchantMediaService(); ApplymentsRequest request = new ApplymentsRequest(); //生成提交类 request.setOutRequestNo(applyNumber); @@ -28,7 +48,10 @@ } //营业执照 ApplymentsRequest.BusinessLicenseInfo business_license_info = new ApplymentsRequest.BusinessLicenseInfo(); - business_license_info.setBusinessLicenseCopy(shopAuthentication.getBlImage()); + InputStream blImageIO = OBSUploadUtils.getOSSInputStream(shopAuthentication.getBlImage()); + ImageUploadResult blImageIR = merchantMediaService.imageUploadV3(blImageIO,applyNumber+"blimage"); + business_license_info.setBusinessLicenseCopy(blImageIR.getMediaId()); + blImageIO.close(); business_license_info.setBusinessLicenseNumber(shopAuthentication.getBlNumber()); business_license_info.setMerchantName(shopAuthentication.getBlShopName()); business_license_info.setLegalPerson(shopAuthentication.getBlCorporateName()); @@ -38,8 +61,14 @@ //法人证件 request.setIdDocType("IDENTIFICATION_TYPE_MAINLAND_IDCARD"); ApplymentsRequest.IdCardInfo id_card_info = new ApplymentsRequest.IdCardInfo(); - id_card_info.setIdCardCopy(shopAuthentication.getLpIcFront()); - id_card_info.setIdCardNational(shopAuthentication.getLpIcBack()); + InputStream lpIcFrontIO = OBSUploadUtils.getOSSInputStream(shopAuthentication.getLpIcFront()); + ImageUploadResult lpIcFrontIR = merchantMediaService.imageUploadV3(lpIcFrontIO,applyNumber+"lpIcFront"); + id_card_info.setIdCardCopy(lpIcFrontIR.getMediaId()); + lpIcFrontIO.close(); + InputStream lpIcBackIO = OBSUploadUtils.getOSSInputStream(shopAuthentication.getLpIcBack()); + ImageUploadResult lpIcBackIR = merchantMediaService.imageUploadV3(lpIcBackIO,applyNumber+"lpIcBack"); + id_card_info.setIdCardNational(lpIcBackIR.getMediaId()); + lpIcBackIO.close(); id_card_info.setIdCardName(shopAuthentication.getLpCorporateName()); id_card_info.setIdCardNumber(shopAuthentication.getLpIdCard()); id_card_info.setIdCardValidTimeBegin(shopAuthentication.getLpIcStartDate()); @@ -55,13 +84,18 @@ List<ApplymentsRequest.UboInfo> ubo_info_list = new ArrayList<>(); ApplymentsRequest.UboInfo uboInfo = new ApplymentsRequest.UboInfo(); uboInfo.setUboIdDocType("IDENTIFICATION_TYPE_MAINLAND_IDCARD"); - uboInfo.setUboIdDocCopy(shopAuthentication.getUboIcFront()); - uboInfo.setUboIdDocCopyBack(shopAuthentication.getUboIcBack()); + InputStream uboIcFrontIO = OBSUploadUtils.getOSSInputStream(shopAuthentication.getUboIcFront()); + ImageUploadResult uboIcFrontIR = merchantMediaService.imageUploadV3(uboIcFrontIO,applyNumber+"uboIcFront"); + uboInfo.setUboIdDocCopy(uboIcFrontIR.getMediaId()); + uboIcFrontIO.close(); + InputStream uboIcBackIO = OBSUploadUtils.getOSSInputStream(shopAuthentication.getUboIcBack()); + ImageUploadResult uboIcBackIR = merchantMediaService.imageUploadV3(uboIcBackIO,applyNumber+"uboIcBack"); + uboInfo.setUboIdDocCopyBack(uboIcBackIR.getMediaId()); + uboIcBackIO.close(); uboInfo.setUboIdDocName(shopAuthentication.getUboName()); uboInfo.setUboIdDocNumber(shopAuthentication.getUboIdCard()); uboInfo.setUboIdDocAddress(shopAuthentication.getUboIcAddress()); uboInfo.setUboIdDocPeriodBegin(shopAuthentication.getUboIcStartDate()); - uboInfo.setUboIdDocCopyBack(shopAuthentication.getUboIcEndDate()); ubo_info_list.add(uboInfo); request.setUboInfoList(ubo_info_list); } @@ -89,25 +123,25 @@ //店铺信息 ApplymentsRequest.SalesSceneInfo salesSceneInfo = new ApplymentsRequest.SalesSceneInfo(); salesSceneInfo.setStoreName(shop.getShopName()); - salesSceneInfo.setStoreUrl(""); - salesSceneInfo.setStoreQrCode(""); + salesSceneInfo.setStoreQrCode("https://wxapp.hhhrt.cn/mini/shop?id="+shop.getShopId()); + salesSceneInfo.setMiniProgramSubAppid("wxb7f0ea286fc4e535"); request.setSalesSceneInfo(salesSceneInfo); request.setMerchantShortname(shop.getShopName()); request.setBusinessAdditionPics(shopAuthentication.getBaPics()); request.setBusinessAdditionDesc(shopAuthentication.getBaDesc()); - return ecommerceService.createApply(request); } - *//** - * 通过查询申请状态API查询二级商户入驻申请结果 - * @param applymentId 微信支付申请单号 - * @return 申请状态 - * @throws WxPayException - *//* + /** + * @description 查询申请审核状态 + * @author jqs + * @date 2023/8/11 10:04 + * @param applymentId + * @return ApplymentsStatusResult + */ public ApplymentsStatusResult queryApplyStatusByApplymentId(String applymentId) throws WxPayException { return wxService.getEcommerceService().queryApplyStatusByApplymentId(applymentId); - }*/ + } } diff --git a/ruoyi-modules/ruoyi-shop/src/main/resources/bootstrap.yml b/ruoyi-modules/ruoyi-shop/src/main/resources/bootstrap.yml index 2181e1e..2709352 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/resources/bootstrap.yml +++ b/ruoyi-modules/ruoyi-shop/src/main/resources/bootstrap.yml @@ -14,12 +14,12 @@ nacos: discovery: # 服务注册地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 config: # 配置中心地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml index 5d77d48..7f3968b 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml +++ b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml @@ -500,7 +500,7 @@ shop_id, shop_name FROM t_shop - WHERE FIND_IN_SET(shop_id,#{shopIds}) > 0 + WHERE del_flag = 0 AND FIND_IN_SET(shop_id,#{shopIds}) > 0 </select> <select id="pageMgtShopByCityCode" resultType="com.ruoyi.system.api.domain.vo.MgtSimpleShopVo"> @@ -900,4 +900,14 @@ <if test="updateUserId != null">update_user_id = #{updateUserId},</if> WHERE shop_id = #{shopId} </update> + + <select id="listShopIdByCityCode" resultType="java.lang.Long"> + SELECT shop_id + FROM t_shop + WHERE del_flag = 0 + AND shop_city_code IN + <foreach item="id" collection="cityCodes" open="(" separator="," close=")"> + #{id} + </foreach> + </select> </mapper> diff --git a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/MemberTaskRecordMapper.xml b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/MemberTaskRecordMapper.xml index e8b6bd4..39bd6df 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/MemberTaskRecordMapper.xml +++ b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/MemberTaskRecordMapper.xml @@ -90,7 +90,7 @@ FROM t_member_task tmt INNER JOIN t_member_task_record tmtr ON tmtr.task_id = tmt.task_id WHERE tmt.del_flag = 0 AND tmt.shop_id = #{param.shopId} AND tmt.user_id = #{param.memberUserId} - ORDER BY tmt.task_date DESC + ORDER BY tmtr.create_time DESC </select> <select id="pageMgtMemberFollow" resultType="com.ruoyi.shop.domain.vo.MgtMemberFollowPageVo"> diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/RuoYiSystemApplication.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/RuoYiSystemApplication.java index 9d5dfbe..e0d4223 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/RuoYiSystemApplication.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/RuoYiSystemApplication.java @@ -16,7 +16,7 @@ @EnableCustomSwagger2 @EnableRyFeignClients @SpringBootApplication -//@EnableScheduling +@EnableScheduling public class RuoYiSystemApplication { public static void main(String[] args) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java index 0e3fce0..2a16ad0 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java @@ -411,14 +411,47 @@ return R.ok(page.setRecords(mgtTagPageVoList)); } - @ApiOperation(value = "导入标签") - @PostMapping("/importData") - public AjaxResult importData(MultipartFile file, Integer tagType) throws Exception + @ApiOperation(value = "导入商品标签") + @PostMapping("/importGoodsTagData") + public AjaxResult importGoodsTagData(@RequestPart("file")MultipartFile file) throws Exception { ExcelUtil<MgtTagImportDto> util = new ExcelUtil<MgtTagImportDto>(MgtTagImportDto.class); List<MgtTagImportDto> tagList = util.importExcel(file.getInputStream()); String operName = SecurityUtils.getUsername(); - String message = sysTagService.importTag(tagList, tagType, operName); + String message = sysTagService.importTag(tagList, 1, operName); + return success(message); + } + + @ApiOperation(value = "导入用户标签") + @PostMapping("/importUserTagData") + public AjaxResult importUserTagData(@RequestPart("file")MultipartFile file) throws Exception + { + ExcelUtil<MgtTagImportDto> util = new ExcelUtil<MgtTagImportDto>(MgtTagImportDto.class); + List<MgtTagImportDto> tagList = util.importExcel(file.getInputStream()); + String operName = SecurityUtils.getUsername(); + String message = sysTagService.importTag(tagList, 2, operName); + return success(message); + } + + @ApiOperation(value = "导入商户标签") + @PostMapping("/importShopTagData") + public AjaxResult importShopTagData(@RequestPart("file")MultipartFile file) throws Exception + { + ExcelUtil<MgtTagImportDto> util = new ExcelUtil<MgtTagImportDto>(MgtTagImportDto.class); + List<MgtTagImportDto> tagList = util.importExcel(file.getInputStream()); + String operName = SecurityUtils.getUsername(); + String message = sysTagService.importTag(tagList, 3, operName); + return success(message); + } + + @ApiOperation(value = "导入建议标签") + @PostMapping("/importSuggestTagData") + public AjaxResult importSuggestTagData(@RequestPart("file")MultipartFile file) throws Exception + { + ExcelUtil<MgtTagImportDto> util = new ExcelUtil<MgtTagImportDto>(MgtTagImportDto.class); + List<MgtTagImportDto> tagList = util.importExcel(file.getInputStream()); + String operName = SecurityUtils.getUsername(); + String message = sysTagService.importTag(tagList, 4, operName); return success(message); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtOperLogPageVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtOperLogPageVo.java index 13454d3..b0eca77 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtOperLogPageVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtOperLogPageVo.java @@ -17,19 +17,19 @@ @Data public class MgtOperLogPageVo { - @Excel(name = "操作内容", width = 30) + @Excel(name = "操作内容", width = 30,sort = 5) @ApiModelProperty(value = "操作内容") private String operContent; - @Excel(name = "操作类型", width = 30) + @Excel(name = "操作类型", width = 30,sort = 2) @ApiModelProperty(value = "操作类型") private String operTitle; - @Excel(name = "操作IP", width = 30) + @Excel(name = "操作IP", width = 30,sort = 4) @ApiModelProperty(value = "操作IP") private String operIp; - @Excel(name = "操作人员", width = 30) + @Excel(name = "操作人员", width = 30,sort = 3) @ApiModelProperty(value = "操作人员") private String operName; - @Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss",sort = 1) @ApiModelProperty(value = "操作时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date operTime; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/fliter/ParamsAuthFilter.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/fliter/ParamsAuthFilter.java index d88dcd8..1848813 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/fliter/ParamsAuthFilter.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/fliter/ParamsAuthFilter.java @@ -81,7 +81,11 @@ } String requestBodyStr = stringBuilder.toString(); if(StringUtils.isNotBlank(requestBodyStr)){ - return JSONObject.parseObject(stringBuilder.toString(), Map.class); + try { + return JSONObject.parseObject(stringBuilder.toString(), Map.class); + }catch (Exception e){ + e.printStackTrace(); + } } return new HashMap<>(); } diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml b/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml index a310a03..d3f6c33 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml @@ -3,7 +3,11 @@ port: 10061 # Spring -spring: +spring: + mvc: + hidden-method: + filter: + enabled: true application: # 应用名称 name: ruoyi-system @@ -14,15 +18,18 @@ nacos: discovery: # 服务注册地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 config: # 配置中心地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 # 配置文件格式 file-extension: yml # 共享配置 shared-configs: - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} + servlet: + multipart: + location: /home/temp diff --git a/ruoyi-visual/ruoyi-monitor/src/main/resources/bootstrap.yml b/ruoyi-visual/ruoyi-monitor/src/main/resources/bootstrap.yml index 16510ce..f9c405e 100644 --- a/ruoyi-visual/ruoyi-monitor/src/main/resources/bootstrap.yml +++ b/ruoyi-visual/ruoyi-monitor/src/main/resources/bootstrap.yml @@ -14,12 +14,12 @@ nacos: discovery: # 服务注册地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 config: # 配置中心地址 - #server-addr: 47.109.78.184:5000 - server-addr: 127.0.0.1:8848 + server-addr: 47.109.78.184:5000 + #server-addr: 127.0.0.1:8848 # 配置文件格式 file-extension: yml # 共享配置 -- Gitblit v1.7.1