mitao
2024-05-16 c369ea570f3d6fd628be962c0b40a17a711a5617
提交业务基础代码
9个文件已修改
201个文件已添加
5867 ■■■■■ 已修改文件
ruoyi-common/pom.xml 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/MybatisPlusConfig.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/ServiceNameConstants.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/IDhelper.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/page/ArrayUtils.java 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/page/BeanUtils.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/page/Checker.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/page/CollUtils.java 142 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/page/Convert.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/page/NumberUtils.java 147 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/page/ObjectUtils.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/page/PageDTO.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/ruoyi-common-core/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/ArticleCommentsController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/ArticleController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/SensitiveWordsController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/pojo/Article.java 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/pojo/ArticleComments.java 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/pojo/SensitiveWords.java 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/handler/MyMetaObjectHandler.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/ArticleCommentsMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/ArticleMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/SensitiveWordsMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IArticleCommentsService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IArticleService.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/ISensitiveWordsService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/ArticleCommentsServiceImpl.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/ArticleServiceImpl.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/resources/mapper/article/ArticleCommentsMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/resources/mapper/article/ArticleMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/resources/mapper/article/SensitiveWordsMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-article/src/main/resources/mybatis-config.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/AuctionBidRecordController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/AuctionGoodsController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/AuctionSalesroomController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/AuctionSalesroomGoodsController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/domain/pojo/AuctionBidRecord.java 80 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/domain/pojo/AuctionGoods.java 96 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/domain/pojo/AuctionSalesroom.java 92 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/domain/pojo/AuctionSalesroomGoods.java 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/handler/MyMetaObjectHandler.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/mapper/AuctionBidRecordMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/mapper/AuctionGoodsMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/mapper/AuctionSalesroomGoodsMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/mapper/AuctionSalesroomMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionBidRecordService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionGoodsService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomGoodsService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBidRecordServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/resources/mapper/auction/AuctionBidRecordMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/resources/mapper/auction/AuctionGoodsMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/resources/mapper/auction/AuctionSalesroomGoodsMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/resources/mapper/auction/AuctionSalesroomMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/resources/mybatis-config.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsBrandController.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsCategoryController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsFlavorTypeController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsGroupPurchaseController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsInfoTitleController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsInfoTitleValueController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsSeckillController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsSeriesController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsSkuController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsBrand.java 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsCategory.java 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsFlavorType.java 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsGroupPurchase.java 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsInfoTitle.java 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsInfoTitleValue.java 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsSeckill.java 98 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsSeries.java 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsSku.java 117 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/handler/MyMetaObjectHandler.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsBrandMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsCategoryMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsFlavorTypeMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsGroupPurchaseMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsInfoTitleMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsInfoTitleValueMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeckillMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeriesMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSkuMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsBrandService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsCategoryService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsFlavorTypeService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsGroupPurchaseService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsInfoTitleService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsInfoTitleValueService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeckillService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeriesService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSkuService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsBrandServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsCategoryServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsFlavorTypeServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsInfoTitleServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsInfoTitleValueServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeriesServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSkuServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsBrandMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsCategoryMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsFlavorTypeMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsGroupPurchaseMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsInfoTitleMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsInfoTitleValueMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsSeckillMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsSeriesMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsSkuMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/resources/mybatis-config.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/MemberAddressController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/MemberCollectionController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/MemberController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/MemberLevelController.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/Member.java 98 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/MemberAddress.java 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/MemberCollection.java 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/MemberLevel.java 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/handler/MyMetaObjectHandler.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/MemberAddressMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/MemberCollectionMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/MemberLevelMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/MemberMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/IMemberAddressService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/IMemberCollectionService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/IMemberLevelService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/IMemberService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberAddressServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberCollectionServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberLevelServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberAddressMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberCollectionMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberLevelMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/resources/mybatis-config.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/InvoicingApplicationController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderAuctionBondController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderAuctionController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderMallController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderReturnRequestController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/InvoicingApplication.java 102 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/Order.java 108 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/OrderAuction.java 77 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/OrderAuctionBond.java 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/OrderMall.java 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/OrderReturnRequest.java 80 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/handler/MyMetaObjectHandler.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/InvoicingApplicationMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderAuctionBondMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderAuctionMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderMallMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderReturnRequestMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IInvoicingApplicationService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IOrderAuctionBondService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IOrderAuctionService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IOrderMallService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IOrderReturnRequestService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IOrderService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/InvoicingApplicationServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderAuctionBondServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderAuctionServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderMallServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderReturnRequestServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/InvoicingApplicationMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderAuctionBondMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderAuctionMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMallMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderReturnRequestMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/resources/mybatis-config.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/controller/CouponController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/controller/CouponMemberController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/controller/PromotionBannerController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/controller/PromotionVideoController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/controller/PromotionWishListController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/domain/pojo/Coupon.java 98 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/domain/pojo/CouponMember.java 99 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/domain/pojo/PromotionBanner.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/domain/pojo/PromotionVideo.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/domain/pojo/PromotionWishList.java 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/handler/MyMetaObjectHandler.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/mapper/CouponMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/mapper/CouponMemberMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/mapper/PromotionBannerMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/mapper/PromotionVideoMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/mapper/PromotionWishListMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/ICouponMemberService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/ICouponService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/IPromotionBannerService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/IPromotionVideoService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/IPromotionWishListService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/impl/CouponMemberServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/impl/CouponServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/impl/PromotionBannerServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/impl/PromotionVideoServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/impl/PromotionWishListServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/resources/mapper/promotion/CouponMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/resources/mapper/promotion/CouponMemberMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/resources/mapper/promotion/PromotionBannerMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/resources/mapper/promotion/PromotionVideoMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/resources/mapper/promotion/PromotionWishListMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-promotion/src/main/resources/mybatis-config.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/pom.xml
@@ -25,7 +25,9 @@
    <description>
        ruoyi-common通用模块
    </description>
    <properties>
        <hutool.version>5.7.17</hutool.version>
    </properties>
    <dependencies>
        <!--lombok-->
        <dependency>
@@ -38,5 +40,11 @@
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.5.2</version>
        </dependency>
        <!--hutool工具包-->
        <dependency>
            <groupId>cn.hutool</groupId>
            <artifactId>hutool-all</artifactId>
            <version>${hutool.version}</version>
        </dependency>
    </dependencies>
</project>
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/MybatisPlusConfig.java
New file
@@ -0,0 +1,58 @@
package com.ruoyi.common.core.config;
import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.BlockAttackInnerInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.transaction.annotation.EnableTransactionManagement;
/**
 * Mybatis Plus 配置
 *
 * @author ruoyi
 */
@EnableTransactionManagement(proxyTargetClass = true)
@Configuration
public class MybatisPlusConfig {
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        // 分页插件
        interceptor.addInnerInterceptor(paginationInnerInterceptor());
        // 乐观锁插件
        interceptor.addInnerInterceptor(optimisticLockerInnerInterceptor());
        // 阻断插件
        interceptor.addInnerInterceptor(blockAttackInnerInterceptor());
        return interceptor;
    }
    /**
     * 分页插件,自动识别数据库类型 https://baomidou.com/guide/interceptor-pagination.html
     */
    public PaginationInnerInterceptor paginationInnerInterceptor() {
        PaginationInnerInterceptor paginationInnerInterceptor = new PaginationInnerInterceptor();
        // 设置数据库类型为mysql
        paginationInnerInterceptor.setDbType(DbType.MYSQL);
        // 设置最大单页限制数量,默认 500 条,-1 不受限制
        paginationInnerInterceptor.setMaxLimit(-1L);
        return paginationInnerInterceptor;
    }
    /**
     * 乐观锁插件 https://baomidou.com/guide/interceptor-optimistic-locker.html
     */
    public OptimisticLockerInnerInterceptor optimisticLockerInnerInterceptor() {
        return new OptimisticLockerInnerInterceptor();
    }
    /**
     * 如果是对全表的删除或更新操作,就会终止该操作 https://baomidou.com/guide/interceptor-block-attack.html
     */
    public BlockAttackInnerInterceptor blockAttackInnerInterceptor() {
        return new BlockAttackInnerInterceptor();
    }
}
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/ServiceNameConstants.java
@@ -35,4 +35,9 @@
     * 车辆合同的serviceid
     */
    public static final String CONTRACT_SERVICE = "ruoyi-contract";
    /**
     * 会员模块的serviceid
     */
    public static final String MEMBER_SERVICE = "ruoyi-member";
}
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/IDhelper.java
New file
@@ -0,0 +1,24 @@
package com.ruoyi.common.core.utils;
import com.baomidou.mybatisplus.core.incrementer.DefaultIdentifierGenerator;
import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator;
/**
 * 描述: ID生成
 * 版权: Copyright (c) 2020
 * 公司: XXX
 * 作者: yanghj
 * 版本: 4.0
 * 创建日期: 2020/9/16 9:59
 */
public class IDhelper
{
    //用mybatis-plus生成Long ID
    public  static Long getNextId()
    {
        IdentifierGenerator identifierGenerator=new DefaultIdentifierGenerator();
        Number id=  identifierGenerator.nextId(new Object());
        Long nextid = Long.parseLong(id+"");
        return nextid;
    }
}
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/page/ArrayUtils.java
New file
@@ -0,0 +1,53 @@
package com.ruoyi.common.core.utils.page;
import cn.hutool.core.util.ArrayUtil;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
/**
 * 数组工具类
 * @ClassName ArrayUtils
 * @author wusongsong
 * @since 2022/7/10 12:02
 * @version 1.0.0
 **/
public class ArrayUtils extends ArrayUtil {
    /**
     * 将源数组转换成指定类型的列表
     *
     * @param originList  原始列表
     * @param targetClazz 转换后列表元素的类型
     * @param <R>         原始列表元素的类型
     * @param <T>         目标列表元素的类型
     * @return 目标类型的集合
     */
    public static <R, T> List<T> convert(R[] originList, Class<T> targetClazz) {
       return convert(originList, targetClazz, null);
    }
    /**
     * 将源数组转换成指定类型的列表
     *
     * @param originList  原始列表
     * @param targetClazz 转换后列表元素的类型
     * @param convert     转换特殊字段接口
     * @param <R>         原始列表元素的类型
     * @param <T>         目标列表元素的类型
     * @return 目标类型的集合
     */
    public static <R, T> List<T> convert(R[] originList, Class<T> targetClazz, Convert<R, T> convert) {
        if (isEmpty(originList)) {
            return null;
        }
        return Arrays.stream(originList)
                .map(origin -> BeanUtils.copyBean(origin, targetClazz, convert))
                .collect(Collectors.toList());
    }
}
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/page/BeanUtils.java
New file
@@ -0,0 +1,58 @@
package com.ruoyi.common.core.utils.page;
import cn.hutool.core.bean.BeanUtil;
import java.util.List;
import java.util.stream.Collectors;
/**
 * 继承自 hutool 的BeanUtil,增加了bean转换时自定义转换器的功能
 */
public class BeanUtils extends BeanUtil {
    /**
     * 将原对象转换成目标对象,对于字段不匹配的字段可以使用转换器处理
     *
     * @param source  原对象
     * @param clazz   目标对象的class
     * @param convert 转换器
     * @param <R>     原对象类型
     * @param <T>     目标对象类型
     * @return 目标对象
     */
    public static <R, T> T copyBean(R source, Class<T> clazz, Convert<R, T> convert) {
        T target = copyBean(source, clazz);
        if (convert != null) {
            convert.convert(source, target);
        }
        return target;
    }
    /**
     * 将原对象转换成目标对象,对于字段不匹配的字段可以使用转换器处理
     *
     * @param source  原对象
     * @param clazz   目标对象的class
     * @param <R>     原对象类型
     * @param <T>     目标对象类型
     * @return 目标对象
     */
    public static <R, T> T copyBean(R source, Class<T> clazz){
        if (source == null) {
            return null;
        }
        return toBean(source, clazz);
    }
    public static <R, T> List<T> copyList(List<R> list, Class<T> clazz) {
        if (list == null || list.size() == 0) {
            return CollUtils.emptyList();
        }
        return copyToList(list, clazz);
    }
    public static <R, T> List<T> copyList(List<R> list, Class<T> clazz, Convert<R, T> convert) {
        if (list == null || list.size() == 0) {
            return CollUtils.emptyList();
        }
        return list.stream().map(r -> copyBean(r, clazz, convert)).collect(Collectors.toList());
    }
}
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/page/Checker.java
New file
@@ -0,0 +1,18 @@
package com.ruoyi.common.core.utils.page;
/**
 * 实现后在接口访问时如果接口实现了这个接口
 * 会被自动自行接口check进行校验
 **/
public interface Checker<T> {
    /**
     * 用于实现validation不能校验的数据逻辑
     */
    default void check(){
    }
    default void check(T data){
    }
}
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/page/CollUtils.java
New file
@@ -0,0 +1,142 @@
package com.ruoyi.common.core.utils.page;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.collection.IterUtil;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
/**
 * 继承自 hutool 的集合工具类
 */
public class CollUtils extends CollectionUtil {
    public static <T> List<T> emptyList() {
        return Collections.emptyList();
    }
    public static <T> Set<T> emptySet() {
        return Collections.emptySet();
    }
    public static <K,V> Map<K, V> emptyMap() {
        return Collections.emptyMap();
    }
    public static <T> Set<T> singletonSet(T t) {
        return Collections.singleton(t);
    }
    public static <T> List<T> singletonList(T t) {
        return Collections.singletonList(t);
    }
    public static List<Integer> convertToInteger(List<String> originList){
        return CollUtils.isNotEmpty(originList) ? originList.stream().map(NumberUtils::parseInt).collect(Collectors.toList()) : null;
    }
    public static List<Long> convertToLong(List<String> originLIst){
        return CollUtils.isNotEmpty(originLIst) ? originLIst.stream().map(NumberUtils::parseLong).collect(Collectors.toList()) : null;
    }
    /**
     * 以 conjunction 为分隔符将集合转换为字符串 如果集合元素为数组、Iterable或Iterator,则递归组合其为字符串
     * @param collection 集合
     * @param conjunction 分隔符
     * @param <T> 集合元素类型
     * @return 连接后的字符串
     * See Also: IterUtil.join(Iterator, CharSequence)
     */
    public static <T> String join(Collection<T> collection, CharSequence conjunction) {
        if (null == collection || collection.isEmpty()) {
            return null;
        }
        return IterUtil.join(collection.iterator(), conjunction);
    }
    public static <T> String joinIgnoreNull(Collection<T> collection, CharSequence conjunction) {
        if (null == collection || collection.isEmpty()) {
            return null;
        }
        StringBuilder sb = new StringBuilder();
        for (T t : collection) {
            if(t == null) continue;
            sb.append(t).append(",");
        }
        if(sb.length() <= 0){
            return null;
        }
        return sb.deleteCharAt(sb.length() - 1).toString();
    }
    /**
     * 集合校验逻辑
     *
     * @param data 要校验的集合
     * @param checker 校验器
     * @param <T> 集合元素类型
     */
    public static  <T> void  check(List<T> data, Checker<T> checker){
        if(data == null){
            return;
        }
        for (T t : data){
            checker.check(t);
        }
    }
    /**
     * 集合校验逻辑
     *
     * @param data 要校验的集合
     * @param <T> 集合元素类型
     */
    public static  <T extends Checker<T>> void  check(List<T> data){
        if(data == null){
            return;
        }
        for (T t : data){
            t.check();
        }
    }
    /**
     * 将元素加入到集合中,为null的过滤掉
     *
     * @param list 集合
     * @param data 要添加的数据
     * @param <T> 元素类型
     */
    public static <T> void add(Collection<T> list, T... data) {
        if (list == null || ArrayUtils.isEmpty(data)) {
            return;
        }
        for (T t : data) {
            if (ObjectUtils.isNotEmpty(t)) {
                list.add(t);
            }
        }
    }
    //将两个集合出现次数相加
    public static Map<Long, Integer> union(Map<Long, Integer> map1, Map<Long, Integer> map2) {
        if (CollUtils.isEmpty(map1)) {
            return map2;
        } else if (CollUtils.isEmpty(map2)) {
            return map1;
        }
        for (Map.Entry<Long, Integer> entry : map1.entrySet()) {
            Integer num = map2.get(entry.getKey());
            map2.put(entry.getKey(), NumberUtils.null2Zero(num) + entry.getValue());
        }
        return map2;
    }
    public static <T,R> R getFiledOfFirst(List<T> list, Function<T, R> function) {
        if (CollUtils.isEmpty(list)) {
            return null;
        }
        return function.apply(list.get(0));
    }
}
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/page/Convert.java
New file
@@ -0,0 +1,8 @@
package com.ruoyi.common.core.utils.page;
/**
 * 对原对象进行计算,设置到目标对象中
 **/
public interface Convert<R,T>{
    void convert(R origin, T target);
}
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/page/NumberUtils.java
New file
@@ -0,0 +1,147 @@
package com.ruoyi.common.core.utils.page;
import cn.hutool.core.util.NumberUtil;
import java.math.BigDecimal;
import java.util.Comparator;
import java.util.List;
import java.util.stream.Collectors;
public class NumberUtils extends NumberUtil {
    /**
     * 如果number为空,将number转换为0,否则原数字返回
     *
     * @param number 原数值
     * @return 整型数字,0或原数字
     */
    public static Integer null2Zero(Integer number){
        return number == null ? 0 : number;
    }
    /**
     * 如果number为空,将number转换为0,否则原数字返回
     *
     * @param number 原数值
     * @return 整型数字,0或原数字
     */
    public static Double null2Zero(Double number){
        return number == null ? 0 : number;
    }
    /**
     * 如果number为空,将number转换为0L,否则原数字返回
     *
     * @param number  原数值
     * @return 长整型数字,0L或原数字
     */
    public static Long null2Zero(Long number){
        return number == null ? 0L : number;
    }
    public static Double setScale(Double number) {
        return new BigDecimal(number)
                .setScale(2, BigDecimal.ROUND_HALF_UP)
                .doubleValue();
    }
    /**
     * 比较两个数字是否相同,
     * @param number1 数值1
     * @param number2 数值2
     * @return 是否一致
     */
    public static boolean equals(Integer number1, Integer number2) {
        if(number1 == null || number2 == null){
            return false;
        }
        return number1.equals(number2);
    }
    /**
     * 数字除法保留指定小数位
     * @param num1 被除数
     * @param num2 除数
     * @param scale 小数点位数
     * @return 结果
     */
    public static Double divToDouble(Integer num1, Integer num2, int scale){
        if(num2 == null || num2 ==0 || num1 == null || num1 == 0) {
            return 0d;
        }
        return div(num1, num2, scale).doubleValue();
    }
    public static  Double max(List<Double> data){
        if(CollUtils.isEmpty(data)){
            return null;
        }
        return data.stream()
                .max(Comparator.comparingDouble(num -> num))
                .orElse(0d);
    }
    public static  Double min(List<Double> data){
        if(CollUtils.isEmpty(data)){
            return null;
        }
        return data.stream()
                .min(Comparator.comparingDouble(num -> num))
                .orElse(0d);
    }
    public static Double average(List<Double> data){
        if(CollUtils.isEmpty(data)){
            return 0d;
        }
        return data.stream()
                .collect(Collectors.averagingDouble(Double::doubleValue));
    }
    public static Integer toInt(Object obj) {
        return obj == null ? null
                : obj instanceof Integer
                ? (int) obj : null;
    }
    /**
     * 取绝对值,如果为null,返回0
     * @param number 数值
     * @return 绝对值
     */
    public static int abs(Integer number) {
        return number == null
                ? 0
                : Math.abs(number);
    }
    /**
     * 数字格式化字符串,不足位数补0
     *
     * @param originNumber 原始数字
     * @param digit 数字位数
     * @return 字符串
     */
    public static String  repair0(Integer originNumber, Integer digit){
        StringBuilder number = new StringBuilder(originNumber + "");
        while (number.length() < digit) {
            number.insert(0, "0");
        }
        return number.toString();
    }
    public static String scaleToStr(Integer num, int offset) {
        // 1.计算位数
        int m = (int) Math.pow(10, offset);
        // 2.计算商
        int s = num / m;
        // 3.计算余数
        int y = num % m;
        if (y == 0) {
            return Integer.toString(s);
        }
        // 2.计算余数
        return s + "." + y;
    }
}
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/page/ObjectUtils.java
New file
@@ -0,0 +1,84 @@
package com.ruoyi.common.core.utils.page;
import cn.hutool.core.util.ObjectUtil;
import java.lang.reflect.Field;
import java.math.BigDecimal;
/**
 * Object操作工具
 **/
public class ObjectUtils extends ObjectUtil {
    /**
     * 为object设置默认值,对target中的基本类型进行默认值初始化,
     * 为null的对象不操作
     *
     * @param target 需要初始化的对象
     */
    public static void setDefault(Object target) {
        if (target == null) {
            return;
        }
        Class<?> clazz = target.getClass();
        Field[] declaredFields = clazz.getDeclaredFields();
        for (Field field : declaredFields) {
            setDefault(field, target);
        }
    }
    /**
     * 给某个字段设置为默认值
     *
     * @param field
     * @param target
     */
    private static void setDefault(Field field, Object target) {
        field.setAccessible(true);
        try {
            Object value = field.get(target);
            if (value != null) {
                return;
            }
            String type = field.getGenericType().toString();
            Object defaultValue;
            switch (type) {
                case "class java.lang.String":
                case "class java.lang.Character":
                    defaultValue = "";
                    break;
                case "class java.lang.Double":
                    defaultValue = 0.0d;
                    break;
                case "class java.lang.Long":
                    defaultValue = 0L;
                    break;
                case "class java.lang.Short":
                    defaultValue = (short) 0;
                    break;
                case "class java.lang.Integer":
                    defaultValue = 0;
                    break;
                case "class java.lang.Float":
                    defaultValue = 0f;
                    break;
                case "class java.lang.Byte":
                    defaultValue = (byte) 0;
                    break;
                case "class java.math.BigDecimal":
                    defaultValue = BigDecimal.ZERO;
                    break;
                case "class java.lang.Boolean":
                    defaultValue = Boolean.FALSE;
                    break;
                default:
                    defaultValue = null;
            }
            field.set(target, defaultValue);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/page/PageDTO.java
New file
@@ -0,0 +1,70 @@
package com.ruoyi.common.core.utils.page;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.util.List;
import java.util.function.Function;
import java.util.stream.Collectors;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@NoArgsConstructor
@AllArgsConstructor
@ApiModel(description = "分页结果")
public class PageDTO<T> {
    @ApiModelProperty("总条数")
    protected Long total;
    @ApiModelProperty("总页码数")
    protected Long pages;
    @ApiModelProperty("当前页数据")
    protected List<T> list;
    public static <T> PageDTO<T> empty(Long total, Long pages) {
        return new PageDTO<>(total, pages, CollUtils.emptyList());
    }
    public static <T> PageDTO<T> empty(Page<?> page) {
        return new PageDTO<>(page.getTotal(), page.getPages(), CollUtils.emptyList());
    }
    public static <T> PageDTO<T> of(Page<T> page) {
        if(page == null){
            return new PageDTO<>();
        }
        if (CollUtils.isEmpty(page.getRecords())) {
            return empty(page);
        }
        return new PageDTO<>(page.getTotal(), page.getPages(), page.getRecords());
    }
    public static <T,R> PageDTO<T> of(Page<R> page, Function<R, T> mapper) {
        if(page == null){
            return new PageDTO<>();
        }
        if (CollUtils.isEmpty(page.getRecords())) {
            return empty(page);
        }
        return new PageDTO<>(page.getTotal(), page.getPages(),
                page.getRecords().stream().map(mapper).collect(Collectors.toList()));
    }
    public static <T> PageDTO<T> of(Page<?> page, List<T> list) {
        return new PageDTO<>(page.getTotal(), page.getPages(), list);
    }
    public static <T, R> PageDTO<T> of(Page<R> page, Class<T> clazz) {
        return new PageDTO<>(page.getTotal(), page.getPages(), BeanUtils.copyList(page.getRecords(), clazz));
    }
    public static <T, R> PageDTO<T> of(Page<R> page, Class<T> clazz, Convert<R, T> convert) {
        return new PageDTO<>(page.getTotal(), page.getPages(), BeanUtils.copyList(page.getRecords(), clazz, convert));
    }
    @ApiModelProperty(hidden = true)
    @JsonIgnore
    public boolean isEmpty(){
        return list == null || list.size() == 0;
    }
}
ruoyi-common/ruoyi-common-core/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -1 +1,2 @@
com.ruoyi.common.core.utils.SpringUtils
com.ruoyi.common.core.utils.SpringUtils
com.ruoyi.common.core.config.MybatisPlusConfig
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/ArticleCommentsController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.article.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 资讯评论回复表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/article-comments")
public class ArticleCommentsController {
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/ArticleController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.article.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 资讯表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/article")
public class ArticleController {
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/controller/SensitiveWordsController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.article.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 敏感词管理 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/sensitive-words")
public class SensitiveWordsController {
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/pojo/Article.java
New file
@@ -0,0 +1,89 @@
package com.ruoyi.article.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 资讯表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_article")
@ApiModel(value = "Article对象", description = "资讯表")
public class Article implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "资讯id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "资讯类型 1=平台发布 2=用户发布")
    private Integer articleType;
    @ApiModelProperty(value = "资讯标题")
    private String title;
    @ApiModelProperty(value = "资讯内容")
    private String content;
    @ApiModelProperty(value = "资讯图片  ['a','b','c','d','e']")
    private String images;
    @ApiModelProperty(value = "资讯视频")
    private String videoUrl;
    @ApiModelProperty(value = "状态 1=待审核 2=已通过 3=已拒绝")
    private Integer status;
    @ApiModelProperty(value = "举报状态 0=正常 1=被举报")
    private Integer reportStatus;
    @ApiModelProperty(value = "举报用户")
    private String reportBy;
    @ApiModelProperty(value = "举报时间")
    private LocalDateTime reportedTime;
    @ApiModelProperty(value = "点赞数")
    private Integer likeCount;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/pojo/ArticleComments.java
New file
@@ -0,0 +1,71 @@
package com.ruoyi.article.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 资讯评论回复表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_article_comments")
@ApiModel(value = "ArticleComments对象", description = "资讯评论回复表")
public class ArticleComments implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "资讯评论id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "资讯id")
    private Long articleId;
    @ApiModelProperty(value = "评论id")
    private Long replyId;
    @ApiModelProperty(value = "会员id")
    private Long memberId;
    @ApiModelProperty(value = "评论")
    private String content;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/domain/pojo/SensitiveWords.java
New file
@@ -0,0 +1,61 @@
package com.ruoyi.article.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 敏感词管理
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_sensitive_words")
@ApiModel(value = "SensitiveWords对象", description = "敏感词管理")
public class SensitiveWords implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "敏感词")
    private String word;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/handler/MyMetaObjectHandler.java
New file
@@ -0,0 +1,46 @@
package com.ruoyi.article.handler;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import com.ruoyi.common.security.utils.SecurityUtils;
import java.time.LocalDateTime;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component;
/**
 * 自动填充处理类
 *
 * @author mitao
 * @date 2024-05-16
 */
@Slf4j
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
    @Override
    public void insertFill(MetaObject metaObject) {
        // 获取当前登录用户
        String userName = SecurityUtils.getUsername();
        fillValue("createBy", userName, metaObject);
        fillValue("createTime", LocalDateTime.now(), metaObject);
    }
    @Override
    public void updateFill(MetaObject metaObject) {
        // 获取当前登录用户
        String userName = SecurityUtils.getUsername();
        fillValue("updateBy", userName, metaObject);
        fillValue("updateTime", LocalDateTime.now(), metaObject);
    }
    private void fillValue(String fieldName, Object data, MetaObject metaObject) {
        if (metaObject.hasSetter(fieldName)) {
            // 值为空时设置默认值
            Object sidObj = getFieldValByName(fieldName, metaObject);
            if (sidObj == null || "updateBy".equals(fieldName) || "updateTime".equals(fieldName)) {
                setFieldValByName(fieldName, data, metaObject);
            }
        }
    }
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/ArticleCommentsMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.article.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.article.domain.pojo.ArticleComments;
/**
 * <p>
 * 资讯评论回复表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface ArticleCommentsMapper extends BaseMapper<ArticleComments> {
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/ArticleMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.article.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.article.domain.pojo.Article;
/**
 * <p>
 * 资讯表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface ArticleMapper extends BaseMapper<Article> {
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/mapper/SensitiveWordsMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.article.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.article.domain.pojo.SensitiveWords;
/**
 * <p>
 * 敏感词管理 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface SensitiveWordsMapper extends BaseMapper<SensitiveWords> {
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IArticleCommentsService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.article.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.article.domain.pojo.ArticleComments;
/**
 * <p>
 * 资讯评论回复表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IArticleCommentsService extends IService<ArticleComments> {
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/IArticleService.java
New file
@@ -0,0 +1,15 @@
package com.ruoyi.article.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.article.domain.pojo.Article;
/**
 * <p>
 * 资讯表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IArticleService extends IService<Article> {
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/ISensitiveWordsService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.article.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.article.domain.pojo.SensitiveWords;
/**
 * <p>
 * 敏感词管理 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface ISensitiveWordsService extends IService<SensitiveWords> {
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/ArticleCommentsServiceImpl.java
New file
@@ -0,0 +1,21 @@
package com.ruoyi.article.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.article.domain.pojo.ArticleComments;
import com.ruoyi.article.mapper.ArticleCommentsMapper;
import com.ruoyi.article.service.IArticleCommentsService;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 资讯评论回复表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class ArticleCommentsServiceImpl extends
        ServiceImpl<ArticleCommentsMapper, ArticleComments> implements IArticleCommentsService {
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/ArticleServiceImpl.java
New file
@@ -0,0 +1,21 @@
package com.ruoyi.article.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.article.domain.pojo.Article;
import com.ruoyi.article.mapper.ArticleMapper;
import com.ruoyi.article.service.IArticleService;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 资讯表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class ArticleServiceImpl extends ServiceImpl<ArticleMapper, Article> implements
        IArticleService {
}
ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/SensitiveWordsServiceImpl.java
New file
@@ -0,0 +1,21 @@
package com.ruoyi.article.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.article.domain.pojo.SensitiveWords;
import com.ruoyi.article.mapper.SensitiveWordsMapper;
import com.ruoyi.article.service.ISensitiveWordsService;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 敏感词管理 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class SensitiveWordsServiceImpl extends
        ServiceImpl<SensitiveWordsMapper, SensitiveWords> implements ISensitiveWordsService {
}
ruoyi-modules/ruoyi-article/src/main/resources/mapper/article/ArticleCommentsMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.article.mapper.ArticleCommentsMapper">
</mapper>
ruoyi-modules/ruoyi-article/src/main/resources/mapper/article/ArticleMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.article.mapper.ArticleMapper">
</mapper>
ruoyi-modules/ruoyi-article/src/main/resources/mapper/article/SensitiveWordsMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.article.mapper.SensitiveWordsMapper">
</mapper>
ruoyi-modules/ruoyi-article/src/main/resources/mybatis-config.xml
@@ -10,7 +10,7 @@
        <setting name="cacheEnabled" value="true"/>
        <!-- 延迟加载的全局开关。当开启时,所有关联对象都会延迟加载。默认 false  -->
        <!-- <setting name="lazyLoadingEnabled" value="true"/> -->
        <setting name="mapUnderscoreToCamelCase" value="false"/><!--是否将map下划线方式转为驼峰式命名-->
        <setting name="mapUnderscoreToCamelCase" value="true"/><!--是否将map下划线方式转为驼峰式命名-->
        <!-- 当开启时,任何方法的调用都会加载该对象的所有属性。默认 false,可通过select标签的 fetchType来覆盖-->
        <!-- <setting name="aggressiveLazyLoading" value="false"/>-->
        <!--  Mybatis 创建具有延迟加载能力的对象所用到的代理工具,默认JAVASSIST -->
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/AuctionBidRecordController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.auction.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 出价记录表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/auction-bid-record")
public class AuctionBidRecordController {
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/AuctionGoodsController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.auction.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 拍卖商品表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/auction-goods")
public class AuctionGoodsController {
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/AuctionSalesroomController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.auction.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 拍卖场表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/auction-salesroom")
public class AuctionSalesroomController {
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/controller/AuctionSalesroomGoodsController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.auction.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 拍卖场商品关系表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/auction-salesroom-goods")
public class AuctionSalesroomGoodsController {
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/domain/pojo/AuctionBidRecord.java
New file
@@ -0,0 +1,80 @@
package com.ruoyi.auction.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 出价记录表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_auction_bid_record")
@ApiModel(value = "AuctionBidRecord对象", description = "出价记录表")
public class AuctionBidRecord implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "出价记录id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "拍卖场id")
    private Long auctionSalesroomId;
    @ApiModelProperty(value = "商品id")
    private Long goodsSkuId;
    @ApiModelProperty(value = "会员id")
    private Long memberId;
    @ApiModelProperty(value = "商品名称")
    private String goodsSkuName;
    @ApiModelProperty(value = "最终出价时间")
    private LocalDateTime lastBidTime;
    @ApiModelProperty(value = "出价次数")
    private Integer bidCount;
    @ApiModelProperty(value = "最终出价金额")
    private BigDecimal lastBidAmount;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/domain/pojo/AuctionGoods.java
New file
@@ -0,0 +1,96 @@
package com.ruoyi.auction.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 拍卖商品表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_auction_goods")
@ApiModel(value = "AuctionGoods对象", description = "拍卖商品表")
public class AuctionGoods implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "拍卖商品id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "商品id")
    private Long goodsSkuId;
    @ApiModelProperty(value = "商品名称")
    private String goodsSkuName;
    @ApiModelProperty(value = "起拍价格")
    private BigDecimal startingPrice;
    @ApiModelProperty(value = "最低加价金额")
    private BigDecimal minimumMarkupAmount;
    @ApiModelProperty(value = "开始时间")
    private LocalDateTime startTime;
    @ApiModelProperty(value = "结束时间")
    private LocalDateTime endTime;
    @ApiModelProperty(value = "拍品数量")
    private Integer quantity;
    @ApiModelProperty(value = "保证金")
    private BigDecimal bond;
    @ApiModelProperty(value = "实名认证 0=不需实名 1=需要实名")
    private Integer authentication;
    @ApiModelProperty(value = "拍品说明")
    private String description;
    @ApiModelProperty(value = "上架状态 0=上架中 1=已下架")
    private Integer listingStatus;
    @ApiModelProperty(value = "开始状态 0=预展中 1=拍卖中 2=已结束")
    private Integer startStatus;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/domain/pojo/AuctionSalesroom.java
New file
@@ -0,0 +1,92 @@
package com.ruoyi.auction.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 拍卖场表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_auction_salesroom")
@ApiModel(value = "AuctionSalesroom对象", description = "拍卖场表")
public class AuctionSalesroom implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "拍卖场名称")
    private String salesroomName;
    @ApiModelProperty(value = "开始时间")
    private LocalDateTime startTime;
    @ApiModelProperty(value = "拍卖时间 0=线下拍卖 1=线上线下结合")
    private Integer type;
    @ApiModelProperty(value = "保证金")
    private BigDecimal bound;
    @ApiModelProperty(value = "实名认证 0=不需认证 1=需要实名")
    private Integer authentication;
    @ApiModelProperty(value = "拍卖场说明")
    private String description;
    @ApiModelProperty(value = "拍卖场封面图")
    private String coverPic;
    @ApiModelProperty(value = "分享标题")
    private String shareTitle;
    @ApiModelProperty(value = "分享图片")
    private String sharePic;
    @ApiModelProperty(value = "拍卖状态 0=预展中 1=拍卖中 2=已结束")
    private Integer status;
    @ApiModelProperty(value = "拍卖场二维码")
    private String auctionSalesroomQrcode;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/domain/pojo/AuctionSalesroomGoods.java
New file
@@ -0,0 +1,90 @@
package com.ruoyi.auction.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 拍卖场商品关系表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_auction_salesroom_goods")
@ApiModel(value = "AuctionSalesroomGoods对象", description = "拍卖场商品关系表")
public class AuctionSalesroomGoods implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "拍卖场商品关系id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "拍卖场id")
    private Long auctionSalesroomId;
    @ApiModelProperty(value = "商品id")
    private Long goodsSkuId;
    @ApiModelProperty(value = "商品名称")
    private String goodsSkuName;
    @ApiModelProperty(value = "起拍价格")
    private BigDecimal startingPrice;
    @ApiModelProperty(value = "最低加价金额")
    private BigDecimal minimumMarkupAmount;
    @ApiModelProperty(value = "拍品数量")
    private Integer itemQuantity;
    @ApiModelProperty(value = "兜底成交个数")
    private Integer guaranteedTradeVolume;
    @ApiModelProperty(value = "拍卖时间(分钟)")
    private Integer listingDuration;
    @ApiModelProperty(value = "设为备选")
    private Boolean backupStatus;
    @ApiModelProperty(value = "状态 0=预展中 1=拍卖中 2=已结束")
    private Integer status;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/handler/MyMetaObjectHandler.java
New file
@@ -0,0 +1,46 @@
package com.ruoyi.auction.handler;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import com.ruoyi.common.security.utils.SecurityUtils;
import java.time.LocalDateTime;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component;
/**
 * 自动填充处理类
 *
 * @author mitao
 * @date 2024-05-16
 */
@Slf4j
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
    @Override
    public void insertFill(MetaObject metaObject) {
        // 获取当前登录用户
        String userName = SecurityUtils.getUsername();
        fillValue("createBy", userName, metaObject);
        fillValue("createTime", LocalDateTime.now(), metaObject);
    }
    @Override
    public void updateFill(MetaObject metaObject) {
        // 获取当前登录用户
        String userName = SecurityUtils.getUsername();
        fillValue("updateBy", userName, metaObject);
        fillValue("updateTime", LocalDateTime.now(), metaObject);
    }
    private void fillValue(String fieldName, Object data, MetaObject metaObject) {
        if (metaObject.hasSetter(fieldName)) {
            // 值为空时设置默认值
            Object sidObj = getFieldValByName(fieldName, metaObject);
            if (sidObj == null || "updateBy".equals(fieldName) || "updateTime".equals(fieldName)) {
                setFieldValByName(fieldName, data, metaObject);
            }
        }
    }
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/mapper/AuctionBidRecordMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.auction.mapper;
import com.ruoyi.auction.domain.pojo.AuctionBidRecord;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 出价记录表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface AuctionBidRecordMapper extends BaseMapper<AuctionBidRecord> {
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/mapper/AuctionGoodsMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.auction.mapper;
import com.ruoyi.auction.domain.pojo.AuctionGoods;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 拍卖商品表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface AuctionGoodsMapper extends BaseMapper<AuctionGoods> {
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/mapper/AuctionSalesroomGoodsMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.auction.mapper;
import com.ruoyi.auction.domain.pojo.AuctionSalesroomGoods;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 拍卖场商品关系表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface AuctionSalesroomGoodsMapper extends BaseMapper<AuctionSalesroomGoods> {
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/mapper/AuctionSalesroomMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.auction.mapper;
import com.ruoyi.auction.domain.pojo.AuctionSalesroom;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 拍卖场表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface AuctionSalesroomMapper extends BaseMapper<AuctionSalesroom> {
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionBidRecordService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.auction.service;
import com.ruoyi.auction.domain.pojo.AuctionBidRecord;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 出价记录表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IAuctionBidRecordService extends IService<AuctionBidRecord> {
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionGoodsService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.auction.service;
import com.ruoyi.auction.domain.pojo.AuctionGoods;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 拍卖商品表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IAuctionGoodsService extends IService<AuctionGoods> {
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomGoodsService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.auction.service;
import com.ruoyi.auction.domain.pojo.AuctionSalesroomGoods;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 拍卖场商品关系表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IAuctionSalesroomGoodsService extends IService<AuctionSalesroomGoods> {
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/IAuctionSalesroomService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.auction.service;
import com.ruoyi.auction.domain.pojo.AuctionSalesroom;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 拍卖场表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IAuctionSalesroomService extends IService<AuctionSalesroom> {
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionBidRecordServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.auction.service.impl;
import com.ruoyi.auction.domain.pojo.AuctionBidRecord;
import com.ruoyi.auction.mapper.AuctionBidRecordMapper;
import com.ruoyi.auction.service.IAuctionBidRecordService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 出价记录表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class AuctionBidRecordServiceImpl extends ServiceImpl<AuctionBidRecordMapper, AuctionBidRecord> implements IAuctionBidRecordService {
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.auction.service.impl;
import com.ruoyi.auction.domain.pojo.AuctionGoods;
import com.ruoyi.auction.mapper.AuctionGoodsMapper;
import com.ruoyi.auction.service.IAuctionGoodsService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 拍卖商品表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class AuctionGoodsServiceImpl extends ServiceImpl<AuctionGoodsMapper, AuctionGoods> implements IAuctionGoodsService {
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.auction.service.impl;
import com.ruoyi.auction.domain.pojo.AuctionSalesroomGoods;
import com.ruoyi.auction.mapper.AuctionSalesroomGoodsMapper;
import com.ruoyi.auction.service.IAuctionSalesroomGoodsService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 拍卖场商品关系表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class AuctionSalesroomGoodsServiceImpl extends ServiceImpl<AuctionSalesroomGoodsMapper, AuctionSalesroomGoods> implements IAuctionSalesroomGoodsService {
}
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.auction.service.impl;
import com.ruoyi.auction.domain.pojo.AuctionSalesroom;
import com.ruoyi.auction.mapper.AuctionSalesroomMapper;
import com.ruoyi.auction.service.IAuctionSalesroomService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 拍卖场表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class AuctionSalesroomServiceImpl extends ServiceImpl<AuctionSalesroomMapper, AuctionSalesroom> implements IAuctionSalesroomService {
}
ruoyi-modules/ruoyi-auction/src/main/resources/mapper/auction/AuctionBidRecordMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.auction.mapper.AuctionBidRecordMapper">
</mapper>
ruoyi-modules/ruoyi-auction/src/main/resources/mapper/auction/AuctionGoodsMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.auction.mapper.AuctionGoodsMapper">
</mapper>
ruoyi-modules/ruoyi-auction/src/main/resources/mapper/auction/AuctionSalesroomGoodsMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.auction.mapper.AuctionSalesroomGoodsMapper">
</mapper>
ruoyi-modules/ruoyi-auction/src/main/resources/mapper/auction/AuctionSalesroomMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.auction.mapper.AuctionSalesroomMapper">
</mapper>
ruoyi-modules/ruoyi-auction/src/main/resources/mybatis-config.xml
@@ -10,7 +10,7 @@
        <setting name="cacheEnabled" value="true"/>
        <!-- 延迟加载的全局开关。当开启时,所有关联对象都会延迟加载。默认 false  -->
        <!-- <setting name="lazyLoadingEnabled" value="true"/> -->
        <setting name="mapUnderscoreToCamelCase" value="false"/><!--是否将map下划线方式转为驼峰式命名-->
        <setting name="mapUnderscoreToCamelCase" value="true"/><!--是否将map下划线方式转为驼峰式命名-->
        <!-- 当开启时,任何方法的调用都会加载该对象的所有属性。默认 false,可通过select标签的 fetchType来覆盖-->
        <!-- <setting name="aggressiveLazyLoading" value="false"/>-->
        <!--  Mybatis 创建具有延迟加载能力的对象所用到的代理工具,默认JAVASSIST -->
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsBrandController.java
New file
@@ -0,0 +1,21 @@
package com.ruoyi.goods.controller;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 品牌表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/goods-brand")
@RequiredArgsConstructor
public class GoodsBrandController {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsCategoryController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.goods.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 商品分类表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/goods-category")
public class GoodsCategoryController {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsFlavorTypeController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.goods.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 香型表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/goods-flavor-type")
public class GoodsFlavorTypeController {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsGroupPurchaseController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.goods.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 商品团购表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/goods-group-purchase")
public class GoodsGroupPurchaseController {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsInfoTitleController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.goods.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 商品信息标题表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/goods-info-title")
public class GoodsInfoTitleController {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsInfoTitleValueController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.goods.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 商品信息标题值表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/goods-info-title-value")
public class GoodsInfoTitleValueController {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsSeckillController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.goods.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 商品秒杀表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/goods-seckill")
public class GoodsSeckillController {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsSeriesController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.goods.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 系列表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/goods-series")
public class GoodsSeriesController {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/GoodsSkuController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.goods.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 商品表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/goods-sku")
public class GoodsSkuController {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsBrand.java
New file
@@ -0,0 +1,63 @@
package com.ruoyi.goods.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 品牌表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_goods_brand")
@ApiModel(value = "GoodsBrand对象", description = "品牌表")
public class GoodsBrand implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "品牌id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "品牌名称")
    @TableField("brand_name")
    private String brandName;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsCategory.java
New file
@@ -0,0 +1,62 @@
package com.ruoyi.goods.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 商品分类表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_goods_category")
@ApiModel(value = "GoodsCategory对象", description = "商品分类表")
public class GoodsCategory implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "商品分类id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "分类名称")
    @TableField("category_name")
    private String categoryName;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsFlavorType.java
New file
@@ -0,0 +1,63 @@
package com.ruoyi.goods.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 香型表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_goods_flavor_type")
@ApiModel(value = "GoodsFlavorType对象", description = "香型表")
public class GoodsFlavorType implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "香型id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "香型名称")
    @TableField("flavor_type_name")
    private String flavorTypeName;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsGroupPurchase.java
New file
@@ -0,0 +1,112 @@
package com.ruoyi.goods.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 商品团购表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_goods_group_purchase")
@ApiModel(value = "GoodsGroupPurchase对象", description = "商品团购表")
public class GoodsGroupPurchase implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "商品团购id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "商品id")
    @TableField("goods_sku_id")
    private Long goodsSkuId;
    @ApiModelProperty(value = "商品名称")
    @TableField("goods_sku_name")
    private String goodsSkuName;
    @ApiModelProperty(value = "分享标题")
    @TableField("share_title")
    private String shareTitle;
    @ApiModelProperty(value = "分享图片")
    @TableField("share_pic")
    private String sharePic;
    @ApiModelProperty(value = "团购价格")
    @TableField("group_purchase_price")
    private BigDecimal groupPurchasePrice;
    @ApiModelProperty(value = "成团人数")
    @TableField("group_size")
    private Integer groupSize;
    @ApiModelProperty(value = "限购数量")
    @TableField("limit_number")
    private Integer limitNumber;
    @ApiModelProperty(value = "团购开始时间")
    @TableField("start_time")
    private LocalDateTime startTime;
    @ApiModelProperty(value = "团购结束时间")
    @TableField("end_time")
    private LocalDateTime endTime;
    @ApiModelProperty(value = "参团说明")
    @TableField("description")
    private String description;
    @ApiModelProperty(value = "开始状态 0=未开始 1=已开始 2=已结束 ")
    @TableField("start_status")
    private Integer startStatus;
    @ApiModelProperty(value = "上架状态 0=已上架 1=已下架")
    @TableField("listing_status")
    private Integer listingStatus;
    @ApiModelProperty(value = "成团状态 0=待成团 1=已成团 2=成团失败")
    @TableField("group_status")
    private Integer groupStatus;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsInfoTitle.java
New file
@@ -0,0 +1,63 @@
package com.ruoyi.goods.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 商品信息标题表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_goods_info_title")
@ApiModel(value = "GoodsInfoTitle对象", description = "商品信息标题表")
public class GoodsInfoTitle implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "商品信息标题id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "标题名称")
    @TableField("title_name")
    private String titleName;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsInfoTitleValue.java
New file
@@ -0,0 +1,75 @@
package com.ruoyi.goods.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 商品信息标题值表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_goods_info_title_value")
@ApiModel(value = "GoodsInfoTitleValue对象", description = "商品信息标题值表")
public class GoodsInfoTitleValue implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "商品信息标题值id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "商品sku id")
    @TableField("goods_sku_id")
    private Long goodsSkuId;
    @ApiModelProperty(value = "商品信息标题id")
    @TableField("goods_info_title_id")
    private Long goodsInfoTitleId;
    @ApiModelProperty(value = "内容")
    @TableField("content")
    private String content;
    @ApiModelProperty(value = "排序")
    @TableField("sort_num")
    private Integer sortNum;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsSeckill.java
New file
@@ -0,0 +1,98 @@
package com.ruoyi.goods.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 商品秒杀表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_goods_seckill")
@ApiModel(value = "GoodsSeckill对象", description = "商品秒杀表")
public class GoodsSeckill implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "商品秒杀id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "商品id")
    private Long goodsSkuId;
    @ApiModelProperty(value = "商品名称")
    private String goodsSkuName;
    @ApiModelProperty(value = "当前库存")
    private Integer currentStock;
    @ApiModelProperty(value = "秒杀价格")
    private BigDecimal seckillPrice;
    @ApiModelProperty(value = "秒杀库存")
    private Integer seckillStock;
    @ApiModelProperty(value = "限购数量")
    private Integer limitNumber;
    @ApiModelProperty(value = "排序")
    private Integer sortNum;
    @ApiModelProperty(value = "分享标题")
    private String shareTitle;
    @ApiModelProperty(value = "分享图片")
    private String sharePic;
    @ApiModelProperty(value = "秒杀开始时间")
    private LocalDateTime startTime;
    @ApiModelProperty(value = "秒杀结束时间")
    private LocalDateTime endTime;
    @ApiModelProperty(value = "开始状态 0=未开始 1= 已开始 2=已结束")
    private Integer startStatus;
    @ApiModelProperty(value = "上架状态 0=已上架 1=已下架")
    private Integer listingStatus;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsSeries.java
New file
@@ -0,0 +1,62 @@
package com.ruoyi.goods.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 系列表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_goods_series")
@ApiModel(value = "GoodsSeries对象", description = "系列表")
public class GoodsSeries implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "系列id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "系列名称")
    private String seriesName;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/GoodsSku.java
New file
@@ -0,0 +1,117 @@
package com.ruoyi.goods.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 商品表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_goods_sku")
@ApiModel(value = "GoodsSku对象", description = "商品表")
public class GoodsSku implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "商品id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "商品名称")
    private String skuName;
    @ApiModelProperty(value = "商品年份")
    private String years;
    @ApiModelProperty(value = "商品分类id")
    private Long categoryId;
    @ApiModelProperty(value = "商品系列id")
    private Long seriesId;
    @ApiModelProperty(value = "商品品牌id")
    private Long brandId;
    @ApiModelProperty(value = "商品香型id")
    private Long flavorTypeId;
    @ApiModelProperty(value = "商品价格")
    private BigDecimal price;
    @ApiModelProperty(value = "库存")
    private Integer stock;
    @ApiModelProperty(value = "单位")
    private String unit;
    @ApiModelProperty(value = "规格")
    private String spec;
    @ApiModelProperty(value = "规格单位")
    private String specUnit;
    @ApiModelProperty(value = "封面图")
    private String coverPic;
    @ApiModelProperty(value = "详情图,不超过五张图片")
    private String alubm;
    @ApiModelProperty(value = "分享标题")
    private String shareTitle;
    @ApiModelProperty(value = "分享图片")
    private String sharePic;
    @ApiModelProperty(value = "商品描述")
    private String description;
    @ApiModelProperty(value = "商品说明")
    private String detail;
    @ApiModelProperty(value = "排序")
    private Integer sortNum;
    @ApiModelProperty(value = "上架状态 0=上架中 1= 已下架")
    private Integer listingStatus;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/handler/MyMetaObjectHandler.java
New file
@@ -0,0 +1,46 @@
package com.ruoyi.goods.handler;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import com.ruoyi.common.security.utils.SecurityUtils;
import java.time.LocalDateTime;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component;
/**
 * 自动填充处理类
 *
 * @author mitao
 * @date 2024-05-16
 */
@Slf4j
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
    @Override
    public void insertFill(MetaObject metaObject) {
        // 获取当前登录用户
        String userName = SecurityUtils.getUsername();
        fillValue("createBy", userName, metaObject);
        fillValue("createTime", LocalDateTime.now(), metaObject);
    }
    @Override
    public void updateFill(MetaObject metaObject) {
        // 获取当前登录用户
        String userName = SecurityUtils.getUsername();
        fillValue("updateBy", userName, metaObject);
        fillValue("updateTime", LocalDateTime.now(), metaObject);
    }
    private void fillValue(String fieldName, Object data, MetaObject metaObject) {
        if (metaObject.hasSetter(fieldName)) {
            // 值为空时设置默认值
            Object sidObj = getFieldValByName(fieldName, metaObject);
            if (sidObj == null || "updateBy".equals(fieldName) || "updateTime".equals(fieldName)) {
                setFieldValByName(fieldName, data, metaObject);
            }
        }
    }
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsBrandMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.goods.mapper;
import com.ruoyi.goods.domain.pojo.GoodsBrand;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 品牌表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface GoodsBrandMapper extends BaseMapper<GoodsBrand> {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsCategoryMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.goods.mapper;
import com.ruoyi.goods.domain.pojo.GoodsCategory;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 商品分类表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface GoodsCategoryMapper extends BaseMapper<GoodsCategory> {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsFlavorTypeMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.goods.mapper;
import com.ruoyi.goods.domain.pojo.GoodsFlavorType;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 香型表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface GoodsFlavorTypeMapper extends BaseMapper<GoodsFlavorType> {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsGroupPurchaseMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.goods.mapper;
import com.ruoyi.goods.domain.pojo.GoodsGroupPurchase;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 商品团购表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface GoodsGroupPurchaseMapper extends BaseMapper<GoodsGroupPurchase> {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsInfoTitleMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.goods.mapper;
import com.ruoyi.goods.domain.pojo.GoodsInfoTitle;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 商品信息标题表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface GoodsInfoTitleMapper extends BaseMapper<GoodsInfoTitle> {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsInfoTitleValueMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.goods.mapper;
import com.ruoyi.goods.domain.pojo.GoodsInfoTitleValue;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 商品信息标题值表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface GoodsInfoTitleValueMapper extends BaseMapper<GoodsInfoTitleValue> {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeckillMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.goods.mapper;
import com.ruoyi.goods.domain.pojo.GoodsSeckill;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 商品秒杀表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface GoodsSeckillMapper extends BaseMapper<GoodsSeckill> {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSeriesMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.goods.mapper;
import com.ruoyi.goods.domain.pojo.GoodsSeries;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 系列表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface GoodsSeriesMapper extends BaseMapper<GoodsSeries> {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/GoodsSkuMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.goods.mapper;
import com.ruoyi.goods.domain.pojo.GoodsSku;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 商品表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface GoodsSkuMapper extends BaseMapper<GoodsSku> {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsBrandService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.goods.service;
import com.ruoyi.goods.domain.pojo.GoodsBrand;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 品牌表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IGoodsBrandService extends IService<GoodsBrand> {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsCategoryService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.goods.service;
import com.ruoyi.goods.domain.pojo.GoodsCategory;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 商品分类表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IGoodsCategoryService extends IService<GoodsCategory> {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsFlavorTypeService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.goods.service;
import com.ruoyi.goods.domain.pojo.GoodsFlavorType;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 香型表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IGoodsFlavorTypeService extends IService<GoodsFlavorType> {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsGroupPurchaseService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.goods.service;
import com.ruoyi.goods.domain.pojo.GoodsGroupPurchase;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 商品团购表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IGoodsGroupPurchaseService extends IService<GoodsGroupPurchase> {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsInfoTitleService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.goods.service;
import com.ruoyi.goods.domain.pojo.GoodsInfoTitle;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 商品信息标题表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IGoodsInfoTitleService extends IService<GoodsInfoTitle> {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsInfoTitleValueService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.goods.service;
import com.ruoyi.goods.domain.pojo.GoodsInfoTitleValue;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 商品信息标题值表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IGoodsInfoTitleValueService extends IService<GoodsInfoTitleValue> {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeckillService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.goods.service;
import com.ruoyi.goods.domain.pojo.GoodsSeckill;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 商品秒杀表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IGoodsSeckillService extends IService<GoodsSeckill> {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeriesService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.goods.service;
import com.ruoyi.goods.domain.pojo.GoodsSeries;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 系列表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IGoodsSeriesService extends IService<GoodsSeries> {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSkuService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.goods.service;
import com.ruoyi.goods.domain.pojo.GoodsSku;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 商品表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IGoodsSkuService extends IService<GoodsSku> {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsBrandServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.goods.service.impl;
import com.ruoyi.goods.domain.pojo.GoodsBrand;
import com.ruoyi.goods.mapper.GoodsBrandMapper;
import com.ruoyi.goods.service.IGoodsBrandService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 品牌表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class GoodsBrandServiceImpl extends ServiceImpl<GoodsBrandMapper, GoodsBrand> implements IGoodsBrandService {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsCategoryServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.goods.service.impl;
import com.ruoyi.goods.domain.pojo.GoodsCategory;
import com.ruoyi.goods.mapper.GoodsCategoryMapper;
import com.ruoyi.goods.service.IGoodsCategoryService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 商品分类表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class GoodsCategoryServiceImpl extends ServiceImpl<GoodsCategoryMapper, GoodsCategory> implements IGoodsCategoryService {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsFlavorTypeServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.goods.service.impl;
import com.ruoyi.goods.domain.pojo.GoodsFlavorType;
import com.ruoyi.goods.mapper.GoodsFlavorTypeMapper;
import com.ruoyi.goods.service.IGoodsFlavorTypeService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 香型表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class GoodsFlavorTypeServiceImpl extends ServiceImpl<GoodsFlavorTypeMapper, GoodsFlavorType> implements IGoodsFlavorTypeService {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.goods.service.impl;
import com.ruoyi.goods.domain.pojo.GoodsGroupPurchase;
import com.ruoyi.goods.mapper.GoodsGroupPurchaseMapper;
import com.ruoyi.goods.service.IGoodsGroupPurchaseService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 商品团购表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class GoodsGroupPurchaseServiceImpl extends ServiceImpl<GoodsGroupPurchaseMapper, GoodsGroupPurchase> implements IGoodsGroupPurchaseService {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsInfoTitleServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.goods.service.impl;
import com.ruoyi.goods.domain.pojo.GoodsInfoTitle;
import com.ruoyi.goods.mapper.GoodsInfoTitleMapper;
import com.ruoyi.goods.service.IGoodsInfoTitleService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 商品信息标题表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class GoodsInfoTitleServiceImpl extends ServiceImpl<GoodsInfoTitleMapper, GoodsInfoTitle> implements IGoodsInfoTitleService {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsInfoTitleValueServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.goods.service.impl;
import com.ruoyi.goods.domain.pojo.GoodsInfoTitleValue;
import com.ruoyi.goods.mapper.GoodsInfoTitleValueMapper;
import com.ruoyi.goods.service.IGoodsInfoTitleValueService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 商品信息标题值表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class GoodsInfoTitleValueServiceImpl extends ServiceImpl<GoodsInfoTitleValueMapper, GoodsInfoTitleValue> implements IGoodsInfoTitleValueService {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.goods.service.impl;
import com.ruoyi.goods.domain.pojo.GoodsSeckill;
import com.ruoyi.goods.mapper.GoodsSeckillMapper;
import com.ruoyi.goods.service.IGoodsSeckillService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 商品秒杀表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class GoodsSeckillServiceImpl extends ServiceImpl<GoodsSeckillMapper, GoodsSeckill> implements IGoodsSeckillService {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeriesServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.goods.service.impl;
import com.ruoyi.goods.domain.pojo.GoodsSeries;
import com.ruoyi.goods.mapper.GoodsSeriesMapper;
import com.ruoyi.goods.service.IGoodsSeriesService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 系列表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class GoodsSeriesServiceImpl extends ServiceImpl<GoodsSeriesMapper, GoodsSeries> implements IGoodsSeriesService {
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSkuServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.goods.service.impl;
import com.ruoyi.goods.domain.pojo.GoodsSku;
import com.ruoyi.goods.mapper.GoodsSkuMapper;
import com.ruoyi.goods.service.IGoodsSkuService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 商品表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class GoodsSkuServiceImpl extends ServiceImpl<GoodsSkuMapper, GoodsSku> implements IGoodsSkuService {
}
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsBrandMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.goods.mapper.GoodsBrandMapper">
</mapper>
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsCategoryMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.goods.mapper.GoodsCategoryMapper">
</mapper>
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsFlavorTypeMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.goods.mapper.GoodsFlavorTypeMapper">
</mapper>
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsGroupPurchaseMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.goods.mapper.GoodsGroupPurchaseMapper">
</mapper>
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsInfoTitleMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.goods.mapper.GoodsInfoTitleMapper">
</mapper>
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsInfoTitleValueMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.goods.mapper.GoodsInfoTitleValueMapper">
</mapper>
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsSeckillMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.goods.mapper.GoodsSeckillMapper">
</mapper>
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsSeriesMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.goods.mapper.GoodsSeriesMapper">
</mapper>
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/GoodsSkuMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.goods.mapper.GoodsSkuMapper">
</mapper>
ruoyi-modules/ruoyi-goods/src/main/resources/mybatis-config.xml
@@ -10,7 +10,7 @@
        <setting name="cacheEnabled" value="true"/>
        <!-- 延迟加载的全局开关。当开启时,所有关联对象都会延迟加载。默认 false  -->
        <!-- <setting name="lazyLoadingEnabled" value="true"/> -->
        <setting name="mapUnderscoreToCamelCase" value="false"/><!--是否将map下划线方式转为驼峰式命名-->
        <setting name="mapUnderscoreToCamelCase" value="true"/><!--是否将map下划线方式转为驼峰式命名-->
        <!-- 当开启时,任何方法的调用都会加载该对象的所有属性。默认 false,可通过select标签的 fetchType来覆盖-->
        <!-- <setting name="aggressiveLazyLoading" value="false"/>-->
        <!--  Mybatis 创建具有延迟加载能力的对象所用到的代理工具,默认JAVASSIST -->
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/MemberAddressController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.member.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 会员地址表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/member-address")
public class MemberAddressController {
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/MemberCollectionController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.member.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 会员收藏表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/member-collection")
public class MemberCollectionController {
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/MemberController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.member.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 会员表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/member")
public class MemberController {
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/MemberLevelController.java
New file
@@ -0,0 +1,21 @@
package com.ruoyi.member.controller;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 会员等级表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/member-level")
@RequiredArgsConstructor
public class MemberLevelController {
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/Member.java
New file
@@ -0,0 +1,98 @@
package com.ruoyi.member.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 会员表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_member")
@ApiModel(value = "Member对象", description = "会员表")
public class Member implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "会员id")
    @TableId(value = "id", type = IdType.INPUT)
    private Long id;
    @ApiModelProperty(value = "会员昵称")
    private String nickname;
    @ApiModelProperty(value = "头像")
    private String avatar;
    @ApiModelProperty(value = "会员姓名")
    private String realName;
    @ApiModelProperty(value = "身份证号")
    private String idNumber;
    @ApiModelProperty(value = "联系电话")
    private String phone;
    @ApiModelProperty(value = "性别 0=女,1=男,2=未知")
    private Integer gender;
    @ApiModelProperty(value = "等级")
    private Integer level;
    @ApiModelProperty(value = "会员积分")
    private Integer totalPoints;
    @ApiModelProperty(value = "已用积分")
    private Integer usedPoints;
    @ApiModelProperty(value = "微信openid")
    private String wxOpenid;
    @ApiModelProperty(value = "小程序openid")
    private String miniOpenid;
    @ApiModelProperty(value = "微信unionid")
    private String wxUnionid;
    @ApiModelProperty(value = "支付宝openid")
    private String zfbOpenid;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/MemberAddress.java
New file
@@ -0,0 +1,74 @@
package com.ruoyi.member.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 会员地址表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_member_address")
@ApiModel(value = "MemberAddress对象", description = "会员地址表")
public class MemberAddress implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "会员地址id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "会员id")
    private Long memberId;
    @ApiModelProperty(value = "收件人姓名")
    private String recipientName;
    @ApiModelProperty(value = "收件人电话")
    private String recipientPhone;
    @ApiModelProperty(value = "城市 省市区")
    private String city;
    @ApiModelProperty(value = "详细地址")
    private String detailedAddress;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_by", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/MemberCollection.java
New file
@@ -0,0 +1,64 @@
package com.ruoyi.member.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 会员收藏表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_member_collection")
@ApiModel(value = "MemberCollection对象", description = "会员收藏表")
public class MemberCollection implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "收藏类型1=商城商品 2=资讯文章 3=普通拍品")
    private Integer collectionType;
    @ApiModelProperty(value = "收藏目标id")
    private Long targetId;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_by", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/pojo/MemberLevel.java
New file
@@ -0,0 +1,66 @@
package com.ruoyi.member.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 会员等级表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_member_level")
@ApiModel(value = "MemberLevel对象", description = "会员等级表")
public class MemberLevel implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "会员等级id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "会员等级")
    private Integer level;
    @ApiModelProperty(value = "累计消费")
    private BigDecimal cumulativeConsumption;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_by", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/handler/MyMetaObjectHandler.java
New file
@@ -0,0 +1,46 @@
package com.ruoyi.member.handler;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import com.ruoyi.common.security.utils.SecurityUtils;
import java.time.LocalDateTime;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component;
/**
 * 自动填充处理类
 *
 * @author mitao
 * @date 2024-05-16
 */
@Slf4j
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
    @Override
    public void insertFill(MetaObject metaObject) {
        // 获取当前登录用户
        String userName = SecurityUtils.getUsername();
        fillValue("createBy", userName, metaObject);
        fillValue("createTime", LocalDateTime.now(), metaObject);
    }
    @Override
    public void updateFill(MetaObject metaObject) {
        // 获取当前登录用户
        String userName = SecurityUtils.getUsername();
        fillValue("updateBy", userName, metaObject);
        fillValue("updateTime", LocalDateTime.now(), metaObject);
    }
    private void fillValue(String fieldName, Object data, MetaObject metaObject) {
        if (metaObject.hasSetter(fieldName)) {
            // 值为空时设置默认值
            Object sidObj = getFieldValByName(fieldName, metaObject);
            if (sidObj == null || "updateBy".equals(fieldName) || "updateTime".equals(fieldName)) {
                setFieldValByName(fieldName, data, metaObject);
            }
        }
    }
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/MemberAddressMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.member.mapper;
import com.ruoyi.member.domain.pojo.MemberAddress;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 会员地址表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface MemberAddressMapper extends BaseMapper<MemberAddress> {
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/MemberCollectionMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.member.mapper;
import com.ruoyi.member.domain.pojo.MemberCollection;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 会员收藏表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface MemberCollectionMapper extends BaseMapper<MemberCollection> {
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/MemberLevelMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.member.mapper;
import com.ruoyi.member.domain.pojo.MemberLevel;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 会员等级表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface MemberLevelMapper extends BaseMapper<MemberLevel> {
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/MemberMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.member.mapper;
import com.ruoyi.member.domain.pojo.Member;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 会员表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface MemberMapper extends BaseMapper<Member> {
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/IMemberAddressService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.member.service;
import com.ruoyi.member.domain.pojo.MemberAddress;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 会员地址表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IMemberAddressService extends IService<MemberAddress> {
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/IMemberCollectionService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.member.service;
import com.ruoyi.member.domain.pojo.MemberCollection;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 会员收藏表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IMemberCollectionService extends IService<MemberCollection> {
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/IMemberLevelService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.member.service;
import com.ruoyi.member.domain.pojo.MemberLevel;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 会员等级表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IMemberLevelService extends IService<MemberLevel> {
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/IMemberService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.member.service;
import com.ruoyi.member.domain.pojo.Member;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 会员表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IMemberService extends IService<Member> {
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberAddressServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.member.service.impl;
import com.ruoyi.member.domain.pojo.MemberAddress;
import com.ruoyi.member.mapper.MemberAddressMapper;
import com.ruoyi.member.service.IMemberAddressService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 会员地址表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class MemberAddressServiceImpl extends ServiceImpl<MemberAddressMapper, MemberAddress> implements IMemberAddressService {
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberCollectionServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.member.service.impl;
import com.ruoyi.member.domain.pojo.MemberCollection;
import com.ruoyi.member.mapper.MemberCollectionMapper;
import com.ruoyi.member.service.IMemberCollectionService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 会员收藏表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class MemberCollectionServiceImpl extends ServiceImpl<MemberCollectionMapper, MemberCollection> implements IMemberCollectionService {
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberLevelServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.member.service.impl;
import com.ruoyi.member.domain.pojo.MemberLevel;
import com.ruoyi.member.mapper.MemberLevelMapper;
import com.ruoyi.member.service.IMemberLevelService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 会员等级表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class MemberLevelServiceImpl extends ServiceImpl<MemberLevelMapper, MemberLevel> implements IMemberLevelService {
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.member.service.impl;
import com.ruoyi.member.domain.pojo.Member;
import com.ruoyi.member.mapper.MemberMapper;
import com.ruoyi.member.service.IMemberService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 会员表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class MemberServiceImpl extends ServiceImpl<MemberMapper, Member> implements IMemberService {
}
ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberAddressMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.member.mapper.MemberAddressMapper">
</mapper>
ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberCollectionMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.member.mapper.MemberCollectionMapper">
</mapper>
ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberLevelMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.member.mapper.MemberLevelMapper">
</mapper>
ruoyi-modules/ruoyi-member/src/main/resources/mybatis-config.xml
@@ -10,7 +10,7 @@
        <setting name="cacheEnabled" value="true"/>
        <!-- 延迟加载的全局开关。当开启时,所有关联对象都会延迟加载。默认 false  -->
        <!-- <setting name="lazyLoadingEnabled" value="true"/> -->
        <setting name="mapUnderscoreToCamelCase" value="false"/><!--是否将map下划线方式转为驼峰式命名-->
        <setting name="mapUnderscoreToCamelCase" value="true"/><!--是否将map下划线方式转为驼峰式命名-->
        <!-- 当开启时,任何方法的调用都会加载该对象的所有属性。默认 false,可通过select标签的 fetchType来覆盖-->
        <!-- <setting name="aggressiveLazyLoading" value="false"/>-->
        <!--  Mybatis 创建具有延迟加载能力的对象所用到的代理工具,默认JAVASSIST -->
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/InvoicingApplicationController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.order.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 开票申请表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/invoicing-application")
public class InvoicingApplicationController {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderAuctionBondController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.order.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 拍卖保证金表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/order-auction-bond")
public class OrderAuctionBondController {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderAuctionController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.order.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 拍卖订单表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/order-auction")
public class OrderAuctionController {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.order.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 订单表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/order")
public class OrderController {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderMallController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.order.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 商城订单表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/order-mall")
public class OrderMallController {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/OrderReturnRequestController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.order.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 售后表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/order-return-request")
public class OrderReturnRequestController {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/InvoicingApplication.java
New file
@@ -0,0 +1,102 @@
package com.ruoyi.order.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 开票申请表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_invoicing_application")
@ApiModel(value = "InvoicingApplication对象", description = "开票申请表")
public class InvoicingApplication implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "开票申请id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "会员id")
    private Long memberId;
    @ApiModelProperty(value = "订单id")
    private Long orderId;
    @ApiModelProperty(value = "申请时间")
    private LocalDateTime applyTime;
    @ApiModelProperty(value = "状态 1=待审核 2=审核通过 3=已拒绝")
    private Integer status;
    @ApiModelProperty(value = "发票类型 1=普票 2=专票")
    private Integer invoiceType;
    @ApiModelProperty(value = "抬头类型 1=企业单位 2=个人/非企业单位")
    private Integer titleType;
    @ApiModelProperty(value = "公司名称")
    private String companyName;
    @ApiModelProperty(value = "公司税号")
    private String companyTaxNumber;
    @ApiModelProperty(value = "公司地址")
    private String companyAddress;
    @ApiModelProperty(value = "公司电话")
    private String companyPhone;
    @ApiModelProperty(value = "公司开户行")
    private String bankName;
    @ApiModelProperty(value = "公司账号")
    private String bankAccount;
    @ApiModelProperty(value = "总金额")
    private BigDecimal totalAmount;
    @ApiModelProperty(value = "公司邮箱")
    private String email;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/Order.java
New file
@@ -0,0 +1,108 @@
package com.ruoyi.order.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 订单表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_order")
@ApiModel(value = "Order对象", description = "订单表")
public class Order implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "订单id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "订单编号")
    private String orderNo;
    @ApiModelProperty(value = "下单时间")
    private LocalDateTime orderTime;
    @ApiModelProperty(value = "订单来源 1=商品订单 2=秒杀订单 3=团购订单 4=保证金 5=拍卖订单")
    private Integer orderFrom;
    @ApiModelProperty(value = "会员id")
    private Long memberId;
    @ApiModelProperty(value = "会员姓名")
    private String memberName;
    @ApiModelProperty(value = "联系方式")
    private String phoneNumber;
    @ApiModelProperty(value = "支付方式 1=微信 2=支付宝")
    private Integer paymentMethod;
    @ApiModelProperty(value = "支付合计")
    private BigDecimal totalAmount;
    @ApiModelProperty(value = "订单状态 1=待发货 2=待收货 3=已完成 4=已取消")
    private Integer orderStatus;
    @ApiModelProperty(value = "支付时间")
    private LocalDateTime payTime;
    @ApiModelProperty(value = "取消时间")
    private LocalDateTime cancelTime;
    @ApiModelProperty(value = "订单备注")
    private String orderRemark;
    @ApiModelProperty(value = "发货时间")
    private LocalDateTime deliveryTime;
    @ApiModelProperty(value = "确认收货时间")
    private LocalDateTime receiveTime;
    @ApiModelProperty(value = "优惠金额")
    private BigDecimal discountMoney;
    @ApiModelProperty(value = "商品数量")
    private Integer goodsQuantity;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_by", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/OrderAuction.java
New file
@@ -0,0 +1,77 @@
package com.ruoyi.order.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 拍卖订单表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_order_auction")
@ApiModel(value = "OrderAuction对象", description = "拍卖订单表")
public class OrderAuction implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "拍卖订单id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "订单id")
    private Long orderId;
    @ApiModelProperty(value = "拍卖场id")
    private Long auctionSalesroomId;
    @ApiModelProperty(value = "商品id")
    private Long goodsSkuId;
    @ApiModelProperty(value = "所属拍卖场")
    private String auctionSaleroomName;
    @ApiModelProperty(value = "商品名称")
    private String goodsSkuName;
    @ApiModelProperty(value = "商品封面图")
    private String goodsCoverPic;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/OrderAuctionBond.java
New file
@@ -0,0 +1,71 @@
package com.ruoyi.order.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 拍卖保证金表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_order_auction_bond")
@ApiModel(value = "OrderAuctionBond对象", description = "拍卖保证金表")
public class OrderAuctionBond implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "拍卖订单id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "订单id")
    private Long orderId;
    @ApiModelProperty(value = "拍卖场id")
    private Long auctionSalesroomId;
    @ApiModelProperty(value = "商品id")
    private Long goodsSkuId;
    @ApiModelProperty(value = "是否缴纳保证金")
    private Boolean boundStatus;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/OrderMall.java
New file
@@ -0,0 +1,73 @@
package com.ruoyi.order.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 商城订单表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_order_mall")
@ApiModel(value = "OrderMall对象", description = "商城订单表")
public class OrderMall implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "商城订单id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "优惠券id")
    private Long couponId;
    @ApiModelProperty(value = "订单id")
    private Long orderId;
    @ApiModelProperty(value = "商品id")
    private Long goodsSkuId;
    @ApiModelProperty(value = "商品名称")
    private String goodsSkuName;
    @ApiModelProperty(value = "商品封面图")
    private String goodsCoverPic;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/pojo/OrderReturnRequest.java
New file
@@ -0,0 +1,80 @@
package com.ruoyi.order.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 售后表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_order_return_request")
@ApiModel(value = "OrderReturnRequest对象", description = "售后表")
public class OrderReturnRequest implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "售后id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "订单id")
    private Long orderId;
    @ApiModelProperty(value = "申请时间")
    private LocalDateTime requestTime;
    @ApiModelProperty(value = "售后类型 1=退款 2=退款退货")
    private Integer requestType;
    @ApiModelProperty(value = "申请原因")
    private String requestReason;
    @ApiModelProperty(value = "售后状态 1=待审核 2=待退货 3=待平台收货 4=已完成 5=已拒绝")
    private Integer status;
    @ApiModelProperty(value = "审核状态 1=待审核 2=已通过 3=已拒绝")
    private Integer auditStatus;
    @ApiModelProperty(value = "拒绝理由")
    private String refuseReason;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/handler/MyMetaObjectHandler.java
New file
@@ -0,0 +1,46 @@
package com.ruoyi.order.handler;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import com.ruoyi.common.security.utils.SecurityUtils;
import java.time.LocalDateTime;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component;
/**
 * 自动填充处理类
 *
 * @author mitao
 * @date 2024-05-16
 */
@Slf4j
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
    @Override
    public void insertFill(MetaObject metaObject) {
        // 获取当前登录用户
        String userName = SecurityUtils.getUsername();
        fillValue("createBy", userName, metaObject);
        fillValue("createTime", LocalDateTime.now(), metaObject);
    }
    @Override
    public void updateFill(MetaObject metaObject) {
        // 获取当前登录用户
        String userName = SecurityUtils.getUsername();
        fillValue("updateBy", userName, metaObject);
        fillValue("updateTime", LocalDateTime.now(), metaObject);
    }
    private void fillValue(String fieldName, Object data, MetaObject metaObject) {
        if (metaObject.hasSetter(fieldName)) {
            // 值为空时设置默认值
            Object sidObj = getFieldValByName(fieldName, metaObject);
            if (sidObj == null || "updateBy".equals(fieldName) || "updateTime".equals(fieldName)) {
                setFieldValByName(fieldName, data, metaObject);
            }
        }
    }
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/InvoicingApplicationMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.order.mapper;
import com.ruoyi.order.domain.pojo.InvoicingApplication;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 开票申请表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface InvoicingApplicationMapper extends BaseMapper<InvoicingApplication> {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderAuctionBondMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.order.mapper;
import com.ruoyi.order.domain.pojo.OrderAuctionBond;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 拍卖保证金表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface OrderAuctionBondMapper extends BaseMapper<OrderAuctionBond> {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderAuctionMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.order.mapper;
import com.ruoyi.order.domain.pojo.OrderAuction;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 拍卖订单表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface OrderAuctionMapper extends BaseMapper<OrderAuction> {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderMallMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.order.mapper;
import com.ruoyi.order.domain.pojo.OrderMall;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 商城订单表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface OrderMallMapper extends BaseMapper<OrderMall> {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.order.mapper;
import com.ruoyi.order.domain.pojo.Order;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 订单表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface OrderMapper extends BaseMapper<Order> {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/OrderReturnRequestMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.order.mapper;
import com.ruoyi.order.domain.pojo.OrderReturnRequest;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 售后表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface OrderReturnRequestMapper extends BaseMapper<OrderReturnRequest> {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IInvoicingApplicationService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.order.service;
import com.ruoyi.order.domain.pojo.InvoicingApplication;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 开票申请表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IInvoicingApplicationService extends IService<InvoicingApplication> {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IOrderAuctionBondService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.order.service;
import com.ruoyi.order.domain.pojo.OrderAuctionBond;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 拍卖保证金表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IOrderAuctionBondService extends IService<OrderAuctionBond> {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IOrderAuctionService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.order.service;
import com.ruoyi.order.domain.pojo.OrderAuction;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 拍卖订单表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IOrderAuctionService extends IService<OrderAuction> {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IOrderMallService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.order.service;
import com.ruoyi.order.domain.pojo.OrderMall;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 商城订单表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IOrderMallService extends IService<OrderMall> {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IOrderReturnRequestService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.order.service;
import com.ruoyi.order.domain.pojo.OrderReturnRequest;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 售后表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IOrderReturnRequestService extends IService<OrderReturnRequest> {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/IOrderService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.order.service;
import com.ruoyi.order.domain.pojo.Order;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 订单表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IOrderService extends IService<Order> {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/InvoicingApplicationServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.order.service.impl;
import com.ruoyi.order.domain.pojo.InvoicingApplication;
import com.ruoyi.order.mapper.InvoicingApplicationMapper;
import com.ruoyi.order.service.IInvoicingApplicationService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 开票申请表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class InvoicingApplicationServiceImpl extends ServiceImpl<InvoicingApplicationMapper, InvoicingApplication> implements IInvoicingApplicationService {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderAuctionBondServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.order.service.impl;
import com.ruoyi.order.domain.pojo.OrderAuctionBond;
import com.ruoyi.order.mapper.OrderAuctionBondMapper;
import com.ruoyi.order.service.IOrderAuctionBondService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 拍卖保证金表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class OrderAuctionBondServiceImpl extends ServiceImpl<OrderAuctionBondMapper, OrderAuctionBond> implements IOrderAuctionBondService {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderAuctionServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.order.service.impl;
import com.ruoyi.order.domain.pojo.OrderAuction;
import com.ruoyi.order.mapper.OrderAuctionMapper;
import com.ruoyi.order.service.IOrderAuctionService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 拍卖订单表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class OrderAuctionServiceImpl extends ServiceImpl<OrderAuctionMapper, OrderAuction> implements IOrderAuctionService {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderMallServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.order.service.impl;
import com.ruoyi.order.domain.pojo.OrderMall;
import com.ruoyi.order.mapper.OrderMallMapper;
import com.ruoyi.order.service.IOrderMallService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 商城订单表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class OrderMallServiceImpl extends ServiceImpl<OrderMallMapper, OrderMall> implements IOrderMallService {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderReturnRequestServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.order.service.impl;
import com.ruoyi.order.domain.pojo.OrderReturnRequest;
import com.ruoyi.order.mapper.OrderReturnRequestMapper;
import com.ruoyi.order.service.IOrderReturnRequestService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 售后表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class OrderReturnRequestServiceImpl extends ServiceImpl<OrderReturnRequestMapper, OrderReturnRequest> implements IOrderReturnRequestService {
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.order.service.impl;
import com.ruoyi.order.domain.pojo.Order;
import com.ruoyi.order.mapper.OrderMapper;
import com.ruoyi.order.service.IOrderService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 订单表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements IOrderService {
}
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/InvoicingApplicationMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.order.mapper.InvoicingApplicationMapper">
</mapper>
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderAuctionBondMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.order.mapper.OrderAuctionBondMapper">
</mapper>
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderAuctionMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.order.mapper.OrderAuctionMapper">
</mapper>
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMallMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.order.mapper.OrderMallMapper">
</mapper>
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.order.mapper.OrderMapper">
</mapper>
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderReturnRequestMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.order.mapper.OrderReturnRequestMapper">
</mapper>
ruoyi-modules/ruoyi-order/src/main/resources/mybatis-config.xml
@@ -10,7 +10,7 @@
        <setting name="cacheEnabled" value="true"/>
        <!-- 延迟加载的全局开关。当开启时,所有关联对象都会延迟加载。默认 false  -->
        <!-- <setting name="lazyLoadingEnabled" value="true"/> -->
        <setting name="mapUnderscoreToCamelCase" value="false"/><!--是否将map下划线方式转为驼峰式命名-->
        <setting name="mapUnderscoreToCamelCase" value="true"/><!--是否将map下划线方式转为驼峰式命名-->
        <!-- 当开启时,任何方法的调用都会加载该对象的所有属性。默认 false,可通过select标签的 fetchType来覆盖-->
        <!-- <setting name="aggressiveLazyLoading" value="false"/>-->
        <!--  Mybatis 创建具有延迟加载能力的对象所用到的代理工具,默认JAVASSIST -->
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/controller/CouponController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.promotion.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 优惠券表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/coupon")
public class CouponController {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/controller/CouponMemberController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.promotion.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 优惠券领取表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/coupon-member")
public class CouponMemberController {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/controller/PromotionBannerController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.promotion.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 轮播图表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/promotion-banner")
public class PromotionBannerController {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/controller/PromotionVideoController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.promotion.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 视频表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/promotion-video")
public class PromotionVideoController {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/controller/PromotionWishListController.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.promotion.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 心愿求购表 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@RestController
@RequestMapping("/promotion-wish-list")
public class PromotionWishListController {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/domain/pojo/Coupon.java
New file
@@ -0,0 +1,98 @@
package com.ruoyi.promotion.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 优惠券表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_coupon")
@ApiModel(value = "Coupon对象", description = "优惠券表")
public class Coupon implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "优惠券名称")
    private String couponName;
    @ApiModelProperty(value = "优惠券类型 1=满减券 2=代金券 3=折扣券")
    private Integer couponType;
    @ApiModelProperty(value = "状态 0=已上架 1=已下架")
    private Integer couponStatus;
    @ApiModelProperty(value = "满减金额,例如:满100元")
    private BigDecimal fullReductionAmount;
    @ApiModelProperty(value = "减少金额,例如:减50元")
    private BigDecimal reductionAmount;
    @ApiModelProperty(value = "代金券金额,例如:50元")
    private BigDecimal voucherAmount;
    @ApiModelProperty(value = "折扣额度,例如:8折")
    private Double discountRate;
    @ApiModelProperty(value = "最高可抵扣金额,例如:200元")
    private BigDecimal maxDiscount;
    @ApiModelProperty(value = "优惠券说明")
    private String description;
    @ApiModelProperty(value = "有效期起")
    private LocalDateTime startDate;
    @ApiModelProperty(value = "有效期止")
    private LocalDateTime endDate;
    @ApiModelProperty(value = "会员等级,多等级以 , 隔开")
    private String memberLevel;
    @ApiModelProperty(value = "发放张数")
    private Integer issuedQuantity;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/domain/pojo/CouponMember.java
New file
@@ -0,0 +1,99 @@
package com.ruoyi.promotion.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 优惠券领取表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_coupon_member")
@ApiModel(value = "CouponMember对象", description = "优惠券领取表")
public class CouponMember implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "优惠券领取id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "优惠券id")
    private Long couponId;
    @ApiModelProperty(value = "会员id")
    private Long memberId;
    @ApiModelProperty(value = "优惠券类型 1=满减券 2=代金券 3=折扣券")
    private Integer couponType;
    @ApiModelProperty(value = "优惠券状态-1删除0已过期1已领取2已使用")
    private Integer couponStatus;
    @ApiModelProperty(value = "优惠券名称")
    private String couponName;
    @ApiModelProperty(value = "满减金额,例如:满100元")
    private BigDecimal fullReductionAmount;
    @ApiModelProperty(value = "减少金额,例如:减50元")
    private BigDecimal reductionAmount;
    @ApiModelProperty(value = "代金券金额,例如:50元")
    private BigDecimal voucherAmount;
    @ApiModelProperty(value = "折扣额度,例如:8折")
    private Integer discountRate;
    @ApiModelProperty(value = "最高可抵扣金额,例如:200元")
    private BigDecimal maxDiscount;
    @ApiModelProperty(value = "优惠券说明")
    private String description;
    @ApiModelProperty(value = "有效期起")
    private LocalDateTime startDate;
    @ApiModelProperty(value = "有效期止")
    private LocalDateTime endDate;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/domain/pojo/PromotionBanner.java
New file
@@ -0,0 +1,70 @@
package com.ruoyi.promotion.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 轮播图表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_promotion_banner")
@ApiModel(value = "PromotionBanner对象", description = "轮播图表")
public class PromotionBanner implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "轮播图id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "轮播图名称")
    private String bannerName;
    @ApiModelProperty(value = "轮播图类型 1=商城首页 2=资讯首页")
    private Integer bannerType;
    @ApiModelProperty(value = "图片")
    private String picUrl;
    @ApiModelProperty(value = "排序 数字越大,权重越大")
    private Integer sortNum;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/domain/pojo/PromotionVideo.java
New file
@@ -0,0 +1,65 @@
package com.ruoyi.promotion.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 视频表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_promotion_video")
@ApiModel(value = "PromotionVideo对象", description = "视频表")
public class PromotionVideo implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "视频id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "视频名称")
    private String videoName;
    @ApiModelProperty(value = "视频链接")
    private String videoUrl;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/domain/pojo/PromotionWishList.java
New file
@@ -0,0 +1,74 @@
package com.ruoyi.promotion.domain.pojo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * <p>
 * 心愿求购表
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_promotion_wish_list")
@ApiModel(value = "PromotionWishList对象", description = "心愿求购表")
public class PromotionWishList implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "心愿求购id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    @ApiModelProperty(value = "商品名称")
    private String goodsName;
    @ApiModelProperty(value = "期望价格")
    private BigDecimal expectedPrice;
    @ApiModelProperty(value = "商品图片 ['a','b','c','d','e']")
    private String goodsImageUrl;
    @ApiModelProperty(value = "备注")
    private String remark;
    @ApiModelProperty(value = "平台回复")
    private String replies;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    @ApiModelProperty(value = "更新者")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)")
    @TableLogic
    private Integer delFlag;
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/handler/MyMetaObjectHandler.java
New file
@@ -0,0 +1,46 @@
package com.ruoyi.promotion.handler;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import com.ruoyi.common.security.utils.SecurityUtils;
import java.time.LocalDateTime;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component;
/**
 * 自动填充处理类
 *
 * @author mitao
 * @date 2024-05-16
 */
@Slf4j
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
    @Override
    public void insertFill(MetaObject metaObject) {
        // 获取当前登录用户
        String userName = SecurityUtils.getUsername();
        fillValue("createBy", userName, metaObject);
        fillValue("createTime", LocalDateTime.now(), metaObject);
    }
    @Override
    public void updateFill(MetaObject metaObject) {
        // 获取当前登录用户
        String userName = SecurityUtils.getUsername();
        fillValue("updateBy", userName, metaObject);
        fillValue("updateTime", LocalDateTime.now(), metaObject);
    }
    private void fillValue(String fieldName, Object data, MetaObject metaObject) {
        if (metaObject.hasSetter(fieldName)) {
            // 值为空时设置默认值
            Object sidObj = getFieldValByName(fieldName, metaObject);
            if (sidObj == null || "updateBy".equals(fieldName) || "updateTime".equals(fieldName)) {
                setFieldValByName(fieldName, data, metaObject);
            }
        }
    }
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/mapper/CouponMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.promotion.mapper;
import com.ruoyi.promotion.domain.pojo.Coupon;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 优惠券表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface CouponMapper extends BaseMapper<Coupon> {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/mapper/CouponMemberMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.promotion.mapper;
import com.ruoyi.promotion.domain.pojo.CouponMember;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 优惠券领取表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface CouponMemberMapper extends BaseMapper<CouponMember> {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/mapper/PromotionBannerMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.promotion.mapper;
import com.ruoyi.promotion.domain.pojo.PromotionBanner;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 轮播图表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface PromotionBannerMapper extends BaseMapper<PromotionBanner> {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/mapper/PromotionVideoMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.promotion.mapper;
import com.ruoyi.promotion.domain.pojo.PromotionVideo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 视频表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface PromotionVideoMapper extends BaseMapper<PromotionVideo> {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/mapper/PromotionWishListMapper.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.promotion.mapper;
import com.ruoyi.promotion.domain.pojo.PromotionWishList;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 心愿求购表 Mapper 接口
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface PromotionWishListMapper extends BaseMapper<PromotionWishList> {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/ICouponMemberService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.promotion.service;
import com.ruoyi.promotion.domain.pojo.CouponMember;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 优惠券领取表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface ICouponMemberService extends IService<CouponMember> {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/ICouponService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.promotion.service;
import com.ruoyi.promotion.domain.pojo.Coupon;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 优惠券表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface ICouponService extends IService<Coupon> {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/IPromotionBannerService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.promotion.service;
import com.ruoyi.promotion.domain.pojo.PromotionBanner;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 轮播图表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IPromotionBannerService extends IService<PromotionBanner> {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/IPromotionVideoService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.promotion.service;
import com.ruoyi.promotion.domain.pojo.PromotionVideo;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 视频表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IPromotionVideoService extends IService<PromotionVideo> {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/IPromotionWishListService.java
New file
@@ -0,0 +1,16 @@
package com.ruoyi.promotion.service;
import com.ruoyi.promotion.domain.pojo.PromotionWishList;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 心愿求购表 服务类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
public interface IPromotionWishListService extends IService<PromotionWishList> {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/impl/CouponMemberServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.promotion.service.impl;
import com.ruoyi.promotion.domain.pojo.CouponMember;
import com.ruoyi.promotion.mapper.CouponMemberMapper;
import com.ruoyi.promotion.service.ICouponMemberService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 优惠券领取表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class CouponMemberServiceImpl extends ServiceImpl<CouponMemberMapper, CouponMember> implements ICouponMemberService {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/impl/CouponServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.promotion.service.impl;
import com.ruoyi.promotion.domain.pojo.Coupon;
import com.ruoyi.promotion.mapper.CouponMapper;
import com.ruoyi.promotion.service.ICouponService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 优惠券表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class CouponServiceImpl extends ServiceImpl<CouponMapper, Coupon> implements ICouponService {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/impl/PromotionBannerServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.promotion.service.impl;
import com.ruoyi.promotion.domain.pojo.PromotionBanner;
import com.ruoyi.promotion.mapper.PromotionBannerMapper;
import com.ruoyi.promotion.service.IPromotionBannerService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 轮播图表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class PromotionBannerServiceImpl extends ServiceImpl<PromotionBannerMapper, PromotionBanner> implements IPromotionBannerService {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/impl/PromotionVideoServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.promotion.service.impl;
import com.ruoyi.promotion.domain.pojo.PromotionVideo;
import com.ruoyi.promotion.mapper.PromotionVideoMapper;
import com.ruoyi.promotion.service.IPromotionVideoService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 视频表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class PromotionVideoServiceImpl extends ServiceImpl<PromotionVideoMapper, PromotionVideo> implements IPromotionVideoService {
}
ruoyi-modules/ruoyi-promotion/src/main/java/com/ruoyi/promotion/service/impl/PromotionWishListServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.promotion.service.impl;
import com.ruoyi.promotion.domain.pojo.PromotionWishList;
import com.ruoyi.promotion.mapper.PromotionWishListMapper;
import com.ruoyi.promotion.service.IPromotionWishListService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 心愿求购表 服务实现类
 * </p>
 *
 * @author mitao
 * @since 2024-05-16
 */
@Service
public class PromotionWishListServiceImpl extends ServiceImpl<PromotionWishListMapper, PromotionWishList> implements IPromotionWishListService {
}
ruoyi-modules/ruoyi-promotion/src/main/resources/mapper/promotion/CouponMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.promotion.mapper.CouponMapper">
</mapper>
ruoyi-modules/ruoyi-promotion/src/main/resources/mapper/promotion/CouponMemberMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.promotion.mapper.CouponMemberMapper">
</mapper>
ruoyi-modules/ruoyi-promotion/src/main/resources/mapper/promotion/PromotionBannerMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.promotion.mapper.PromotionBannerMapper">
</mapper>
ruoyi-modules/ruoyi-promotion/src/main/resources/mapper/promotion/PromotionVideoMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.promotion.mapper.PromotionVideoMapper">
</mapper>
ruoyi-modules/ruoyi-promotion/src/main/resources/mapper/promotion/PromotionWishListMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.promotion.mapper.PromotionWishListMapper">
</mapper>
ruoyi-modules/ruoyi-promotion/src/main/resources/mybatis-config.xml
@@ -10,7 +10,7 @@
        <setting name="cacheEnabled" value="true"/>
        <!-- 延迟加载的全局开关。当开启时,所有关联对象都会延迟加载。默认 false  -->
        <!-- <setting name="lazyLoadingEnabled" value="true"/> -->
        <setting name="mapUnderscoreToCamelCase" value="false"/><!--是否将map下划线方式转为驼峰式命名-->
        <setting name="mapUnderscoreToCamelCase" value="true"/><!--是否将map下划线方式转为驼峰式命名-->
        <!-- 当开启时,任何方法的调用都会加载该对象的所有属性。默认 false,可通过select标签的 fetchType来覆盖-->
        <!-- <setting name="aggressiveLazyLoading" value="false"/>-->
        <!--  Mybatis 创建具有延迟加载能力的对象所用到的代理工具,默认JAVASSIST -->